[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 &ndash; 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,&amp [...]
-<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>-&gt [...]
-<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&#xA;AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK&#xA;DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f&#xA;Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgA9AEAAwER&#xA;AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA&#xA;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<&#8k)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-&#0!=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