# cython: language_level=3
# distutils: language = c++

cimport libc.math as cmath
from libcpp cimport bool
cimport libcpp.complex as ccomplex



cdef class BaseModesCalculation:
    cdef void _initialize(self)
    cdef void _compute(self)
    cpdef ccomplex.complex[double] get(self, int l, int m)



cdef class hlm_ecc_corr_NS_v5EHM_v1_flags(BaseModesCalculation):

    cdef:
        bool _initialized

    cdef:
        ccomplex.complex[double] _gr_k_0
        ccomplex.complex[double] _gr_k_1
        ccomplex.complex[double] _gr_k_2
        double _gr_k_3
        double _gr_k_4
        double _gr_k_5
        double _gr_k_6
        ccomplex.complex[double] _gr_k_7
        ccomplex.complex[double] _gr_k_8
        ccomplex.complex[double] _gr_k_9
        ccomplex.complex[double] _gr_k_10
        ccomplex.complex[double] _gr_k_11
        ccomplex.complex[double] _gr_k_12
        ccomplex.complex[double] _gr_k_13
        ccomplex.complex[double] _gr_k_14
        ccomplex.complex[double] _gr_k_15
        ccomplex.complex[double] _gr_k_16
        ccomplex.complex[double] _gr_k_17
        ccomplex.complex[double] _gr_k_18
        ccomplex.complex[double] _gr_k_19
        ccomplex.complex[double] _gr_k_20
        ccomplex.complex[double] _gr_k_21
        double _gr_k_22
        double _gr_k_23
        double _gr_k_24
        double _gr_k_25
        double _gr_k_26
        int _gr_k_27
        int _gr_k_28
        ccomplex.complex[double] _gr_k_29
        double _gr_k_30
        ccomplex.complex[double] _gr_k_31
        ccomplex.complex[double] _gr_k_32
        ccomplex.complex[double] _gr_k_33
        ccomplex.complex[double] _gr_k_34
        double _gr_k_35
        ccomplex.complex[double] _gr_k_36
        ccomplex.complex[double] _gr_k_37
        ccomplex.complex[double] _gr_k_38
        ccomplex.complex[double] _gr_k_39
        double _gr_k_40
        double _gr_k_41
        double _gr_k_42
        double _gr_k_43
        double _gr_k_44
        double _gr_k_45
        double _gr_k_46
        double _gr_k_47
        double _gr_k_48
        double _gr_k_49
        double _gr_k_50
        double _gr_k_51
        double _gr_k_52
        double _gr_k_53
        double _gr_k_54
        double _gr_k_55
        double _gr_k_56
        double _gr_k_57
        double _gr_k_58
        double _gr_k_59
        double _gr_k_60
        double _gr_k_61
        double _gr_k_62
        double _gr_k_63
        double _gr_k_64
        double _gr_k_65
        double _gr_k_66
        double _gr_k_67
        double _gr_k_68
        double _gr_k_69
        double _gr_k_70
        double _gr_k_71
        double _gr_k_72
        double _gr_k_73
        double _gr_k_74
        double _gr_k_75
        double _gr_k_76
        double _gr_k_77
        double _gr_k_78
        double _gr_k_79
        double _gr_k_80
        double _gr_k_81
        double _gr_k_82
        double _gr_k_83
        double _gr_k_84
        double _gr_k_85
        double _gr_k_86
        double _gr_k_87
        double _gr_k_88
        ccomplex.complex[double] _gr_k_89
        ccomplex.complex[double] _gr_k_90
        ccomplex.complex[double] _gr_k_91
        ccomplex.complex[double] _gr_k_92
        ccomplex.complex[double] _gr_k_93
        ccomplex.complex[double] _gr_k_94
        ccomplex.complex[double] _gr_k_95
        ccomplex.complex[double] _gr_k_96
        ccomplex.complex[double] _gr_k_97
        ccomplex.complex[double] _gr_k_98
        double _gr_k_99
        ccomplex.complex[double] _gr_k_100
        ccomplex.complex[double] _gr_k_101
        ccomplex.complex[double] _gr_k_102
        ccomplex.complex[double] _gr_k_103
        ccomplex.complex[double] _gr_k_104
        ccomplex.complex[double] _gr_k_105
        ccomplex.complex[double] _gr_k_106
        double _gr_k_107
        ccomplex.complex[double] _gr_k_108
        ccomplex.complex[double] _gr_k_109
        ccomplex.complex[double] _gr_k_110
        ccomplex.complex[double] _gr_k_111
        double _gr_k_112
        double _gr_k_113
        double _gr_k_114
        double _gr_k_115
        double _gr_k_116
        double _gr_k_117
        double _gr_k_118
        double _gr_k_119
        double _gr_k_120
        ccomplex.complex[double] _gr_k_121
        ccomplex.complex[double] _gr_k_122
        double _gr_k_123
        double _gr_k_124
        ccomplex.complex[double] _gr_k_125
        double _gr_k_126
        double _gr_k_127
        double _gr_k_128
        ccomplex.complex[double] _gr_k_129
        double _gr_k_130
        ccomplex.complex[double] _gr_k_131
        ccomplex.complex[double] _gr_k_132
        ccomplex.complex[double] _gr_k_133
        ccomplex.complex[double] _gr_k_134
        ccomplex.complex[double] _gr_k_135
        double _gr_k_136
        double _gr_k_137
        double _gr_k_138
        double _gr_k_139
        double _gr_k_140
        double _gr_k_141
        double _gr_k_142
        double _gr_k_143
        double _gr_k_144
        double _gr_k_145
        double _gr_k_146
        double _gr_k_147
        ccomplex.complex[double] _gr_k_148
        ccomplex.complex[double] _gr_k_149
        ccomplex.complex[double] _gr_k_150
        ccomplex.complex[double] _gr_k_151
        ccomplex.complex[double] _gr_k_152
        double _gr_k_153
        double _gr_k_154
        double _gr_k_155
        double _gr_k_156
        double _gr_k_157
        double _gr_k_158
        double _gr_k_159
        double _gr_k_160
        ccomplex.complex[double] _gr_k_161
        ccomplex.complex[double] _gr_k_162
        double _gr_k_163
        double _gr_k_164
        double _gr_k_165
        double _gr_k_166
        double _gr_k_167
        double _gr_k_168
        double _gr_k_169
        double _gr_k_170
        double _gr_k_171
        double _gr_k_172
        double _gr_k_173
        double _gr_k_174
        double _gr_k_175
        double _gr_k_176
        double _gr_k_177
        ccomplex.complex[double] _gr_k_178
        double _gr_k_179
        double _gr_k_180
        double _gr_k_181
        double _gr_k_182
        double _gr_k_183
        double _gr_k_184
        double _gr_k_185
        double _gr_k_186
        double _gr_k_187
        double _gr_k_188
        double _gr_k_189
        double _gr_k_190
        double _gr_k_191
        double _gr_k_192
        double _gr_k_193
        double _gr_k_194
        double _gr_k_195
        double _gr_k_196
        double _gr_k_197
        double _gr_k_198
        double _gr_k_199
        ccomplex.complex[double] _gr_k_200
        double _gr_k_201
        double _gr_k_202
        double _gr_k_203
        double _gr_k_204
        double _gr_k_205
        double _gr_k_206
        double _gr_k_207
        double _gr_k_208
        double _gr_k_209
        double _gr_k_210
        double _gr_k_211
        ccomplex.complex[double] _gr_k_212
        ccomplex.complex[double] _gr_k_213
        ccomplex.complex[double] _gr_k_214
        ccomplex.complex[double] _gr_k_215
        ccomplex.complex[double] _gr_k_216
        ccomplex.complex[double] _gr_k_217
        ccomplex.complex[double] _gr_k_218
        ccomplex.complex[double] _gr_k_219
        ccomplex.complex[double] _gr_k_220
        ccomplex.complex[double] _gr_k_221
        ccomplex.complex[double] _gr_k_222
        ccomplex.complex[double] _gr_k_223
        ccomplex.complex[double] _gr_k_224
        ccomplex.complex[double] _gr_k_225
        ccomplex.complex[double] _gr_k_226
        ccomplex.complex[double] _gr_k_227
        ccomplex.complex[double] _gr_k_228
        double _gr_k_229
        ccomplex.complex[double] _gr_k_230
        double _gr_k_231
        double _gr_k_232
        double _gr_k_233
        double _gr_k_234
        double _gr_k_235
        double _gr_k_236
        double _gr_k_237
        double _gr_k_238
        double _gr_k_239
        double _gr_k_240
        ccomplex.complex[double] _gr_k_241
        ccomplex.complex[double] _gr_k_242
        ccomplex.complex[double] _gr_k_243
        ccomplex.complex[double] _gr_k_244
        double _gr_k_245
        double _gr_k_246
        double _gr_k_247
        double _gr_k_248
        double _gr_k_249
        ccomplex.complex[double] _gr_k_250
        double _gr_k_251
        ccomplex.complex[double] _gr_k_252
        ccomplex.complex[double] _gr_k_253
        double _gr_k_254
        ccomplex.complex[double] _gr_k_255
        double _gr_k_256
        double _gr_k_257
        double _gr_k_258
        double _gr_k_259
        double _gr_k_260
        double _gr_k_261
        double _gr_k_262
        double _gr_k_263
        double _gr_k_264
        double _gr_k_265
        double _gr_k_266
        double _gr_k_267
        double _gr_k_268
        double _gr_k_269
        double _gr_k_270
        double _gr_k_271
        double _gr_k_272
        double _gr_k_273
        double _gr_k_274
        double _gr_k_275
        double _gr_k_276
        double _gr_k_277
        double _gr_k_278
        double _gr_k_279
        double _gr_k_280
        double _gr_k_281
        ccomplex.complex[double] _gr_k_282
        ccomplex.complex[double] _gr_k_283
        double _gr_k_284
        ccomplex.complex[double] _gr_k_285
        ccomplex.complex[double] _gr_k_286
        double _gr_k_287
        double _gr_k_288
        double _gr_k_289
        double _gr_k_290
        double _gr_k_291
        double _gr_k_292
        double _gr_k_293
        double _gr_k_294
        double _gr_k_295
        double _gr_k_296
        double _gr_k_297
        double _gr_k_298
        double _gr_k_299
        double _gr_k_300
        double _gr_k_301
        double _gr_k_302
        double _gr_k_303
        double _gr_k_304
        double _gr_k_305
        ccomplex.complex[double] _gr_k_306
        ccomplex.complex[double] _gr_k_307
        ccomplex.complex[double] _gr_k_308
        ccomplex.complex[double] _gr_k_309
        ccomplex.complex[double] _gr_k_310
        ccomplex.complex[double] _gr_k_311
        ccomplex.complex[double] _gr_k_312
        ccomplex.complex[double] _gr_k_313
        ccomplex.complex[double] _gr_k_314
        ccomplex.complex[double] _gr_k_315
        ccomplex.complex[double] _gr_k_316
        ccomplex.complex[double] _gr_k_317
        ccomplex.complex[double] _gr_k_318
        ccomplex.complex[double] _gr_k_319
        ccomplex.complex[double] _gr_k_320
        ccomplex.complex[double] _gr_k_321
        ccomplex.complex[double] _gr_k_322
        ccomplex.complex[double] _gr_k_323
        ccomplex.complex[double] _gr_k_324
        ccomplex.complex[double] _gr_k_325
        ccomplex.complex[double] _gr_k_326
        ccomplex.complex[double] _gr_k_327
        ccomplex.complex[double] _gr_k_328
        ccomplex.complex[double] _gr_k_329
        ccomplex.complex[double] _gr_k_330
        ccomplex.complex[double] _gr_k_331
        ccomplex.complex[double] _gr_k_332
        ccomplex.complex[double] _gr_k_333
        ccomplex.complex[double] _gr_k_334
        ccomplex.complex[double] _gr_k_335
        ccomplex.complex[double] _gr_k_336
        ccomplex.complex[double] _gr_k_337
        double _gr_k_338
        ccomplex.complex[double] _gr_k_339
        double _gr_k_340
        ccomplex.complex[double] _gr_k_341
        ccomplex.complex[double] _gr_k_342
        ccomplex.complex[double] _gr_k_343
        ccomplex.complex[double] _gr_k_344
        ccomplex.complex[double] _gr_k_345
        ccomplex.complex[double] _gr_k_346
        ccomplex.complex[double] _gr_k_347
        ccomplex.complex[double] _gr_k_348
        double _gr_k_349
        double _gr_k_350
        ccomplex.complex[double] _gr_k_351
        ccomplex.complex[double] _gr_k_352
        ccomplex.complex[double] _gr_k_353
        ccomplex.complex[double] _gr_k_354
        ccomplex.complex[double] _gr_k_355
        ccomplex.complex[double] _gr_k_356
        ccomplex.complex[double] _gr_k_357
        double _gr_k_358
        ccomplex.complex[double] _gr_k_359
        ccomplex.complex[double] _gr_k_360
        ccomplex.complex[double] _gr_k_361
        ccomplex.complex[double] _gr_k_362
        double _gr_k_363
        ccomplex.complex[double] _gr_k_364
        ccomplex.complex[double] _gr_k_365
        ccomplex.complex[double] _gr_k_366
        ccomplex.complex[double] _gr_k_367
        ccomplex.complex[double] _gr_k_368
        double _gr_k_369
        double _gr_k_370
        double _gr_k_371
        double _gr_k_372
        double _gr_k_373
        double _gr_k_374
        double _gr_k_375
        double _gr_k_376
        double _gr_k_377
        double _gr_k_378
        double _gr_k_379
        double _gr_k_380
        double _gr_k_381
        double _gr_k_382
        double _gr_k_383
        double _gr_k_384
        ccomplex.complex[double] _gr_k_385
        ccomplex.complex[double] _gr_k_386
        ccomplex.complex[double] _gr_k_387
        ccomplex.complex[double] _gr_k_388
        ccomplex.complex[double] _gr_k_389
        ccomplex.complex[double] _gr_k_390
        ccomplex.complex[double] _gr_k_391
        ccomplex.complex[double] _gr_k_392
        ccomplex.complex[double] _gr_k_393
        ccomplex.complex[double] _gr_k_394
        ccomplex.complex[double] _gr_k_395
        double _gr_k_396
        double _gr_k_397
        double _gr_k_398
        ccomplex.complex[double] _gr_k_399
        ccomplex.complex[double] _gr_k_400
        ccomplex.complex[double] _gr_k_401
        ccomplex.complex[double] _gr_k_402
        ccomplex.complex[double] _gr_k_403
        ccomplex.complex[double] _gr_k_404
        ccomplex.complex[double] _gr_k_405
        ccomplex.complex[double] _gr_k_406
        ccomplex.complex[double] _gr_k_407
        ccomplex.complex[double] _gr_k_408
        ccomplex.complex[double] _gr_k_409
        double _gr_k_410
        double _gr_k_411
        ccomplex.complex[double] _gr_k_412
        ccomplex.complex[double] _gr_k_413
        ccomplex.complex[double] _gr_k_414
        ccomplex.complex[double] _gr_k_415
        ccomplex.complex[double] _gr_k_416
        ccomplex.complex[double] _gr_k_417
        double _gr_k_418
        ccomplex.complex[double] _gr_k_419
        double _gr_k_420
        double _gr_k_421
        double _gr_k_422
        double _gr_k_423
        ccomplex.complex[double] _gr_k_424
        ccomplex.complex[double] _gr_k_425
        ccomplex.complex[double] _gr_k_426
        ccomplex.complex[double] _gr_k_427
        ccomplex.complex[double] _gr_k_428
        ccomplex.complex[double] _gr_k_429
        ccomplex.complex[double] _gr_k_430
        ccomplex.complex[double] _gr_k_431
        ccomplex.complex[double] _gr_k_432
        ccomplex.complex[double] _gr_k_433
        ccomplex.complex[double] _gr_k_434
        double _gr_k_435
        double _gr_k_436
        double _gr_k_437
        double _gr_k_438
        double _gr_k_439
        double _gr_k_440
        double _gr_k_441
        double _gr_k_442
        double _gr_k_443
        double _gr_k_444
        ccomplex.complex[double] _gr_k_445
        double _gr_k_446
        double _gr_k_447
        double _gr_k_448
        ccomplex.complex[double] _gr_k_449
        ccomplex.complex[double] _gr_k_450
        ccomplex.complex[double] _gr_k_451
        ccomplex.complex[double] _gr_k_452
        double _gr_k_453
        double _gr_k_454
        double _gr_k_455
        double _gr_k_456
        double _gr_k_457
        double _gr_k_458
        double _gr_k_459
        ccomplex.complex[double] _gr_k_460
        ccomplex.complex[double] _gr_k_461
        ccomplex.complex[double] _gr_k_462
        ccomplex.complex[double] _gr_k_463
        ccomplex.complex[double] _gr_k_464
        ccomplex.complex[double] _gr_k_465
        ccomplex.complex[double] _gr_k_466
        ccomplex.complex[double] _gr_k_467
        ccomplex.complex[double] _gr_k_468
        ccomplex.complex[double] _gr_k_469
        ccomplex.complex[double] _gr_k_470
        ccomplex.complex[double] _gr_k_471
        ccomplex.complex[double] _gr_k_472
        ccomplex.complex[double] _gr_k_473
        ccomplex.complex[double] _gr_k_474
        ccomplex.complex[double] _gr_k_475
        ccomplex.complex[double] _gr_k_476
        double _gr_k_477
        double _gr_k_478
        double _gr_k_479
        double _gr_k_480
        double _gr_k_481
        double _gr_k_482
        double _gr_k_483
        double _gr_k_484
        double _gr_k_485
        double _gr_k_486
        double _gr_k_487
        double _gr_k_488
        ccomplex.complex[double] _gr_k_489
        ccomplex.complex[double] _gr_k_490
        double _gr_k_491
        ccomplex.complex[double] _gr_k_492
        ccomplex.complex[double] _gr_k_493
        ccomplex.complex[double] _gr_k_494
        double _gr_k_495
        double _gr_k_496
        double _gr_k_497
        double _gr_k_498
        double _gr_k_499
        double _gr_k_500
        double _gr_k_501
        double _gr_k_502
        double _gr_k_503
        ccomplex.complex[double] _gr_k_504
        ccomplex.complex[double] _gr_k_505
        double _gr_k_506
        double _gr_k_507
        double _gr_k_508
        double _gr_k_509
        double _gr_k_510
        double _gr_k_511
        ccomplex.complex[double] _gr_k_512
        ccomplex.complex[double] _gr_k_513
        ccomplex.complex[double] _gr_k_514
        double _gr_k_515
        ccomplex.complex[double] _gr_k_516
        ccomplex.complex[double] _gr_k_517
        ccomplex.complex[double] _gr_k_518
        ccomplex.complex[double] _gr_k_519
        ccomplex.complex[double] _gr_k_520
        ccomplex.complex[double] _gr_k_521
        ccomplex.complex[double] _gr_k_522
        ccomplex.complex[double] _gr_k_523
        ccomplex.complex[double] _gr_k_524
        ccomplex.complex[double] _gr_k_525
        ccomplex.complex[double] _gr_k_526
        ccomplex.complex[double] _gr_k_527
        ccomplex.complex[double] _gr_k_528
        ccomplex.complex[double] _gr_k_529
        ccomplex.complex[double] _gr_k_530
        ccomplex.complex[double] _gr_k_531
        ccomplex.complex[double] _gr_k_532
        double _gr_k_533
        double _gr_k_534
        double _gr_k_535
        double _gr_k_536
        double _gr_k_537
        double _gr_k_538
        double _gr_k_539
        double _gr_k_540
        double _gr_k_541
        double _gr_k_542
        double _gr_k_543
        double _gr_k_544
        double _gr_k_545
        double _gr_k_546
        double _gr_k_547
        double _gr_k_548
        double _gr_k_549
        ccomplex.complex[double] _gr_k_550
        double _gr_k_551
        ccomplex.complex[double] _gr_k_552
        ccomplex.complex[double] _gr_k_553
        ccomplex.complex[double] _gr_k_554
        ccomplex.complex[double] _gr_k_555
        double _gr_k_556
        double _gr_k_557
        double _gr_k_558
        double _gr_k_559
        double _gr_k_560
        double _gr_k_561
        double _gr_k_562
        double _gr_k_563
        double _gr_k_564
        double _gr_k_565
        double _gr_k_566
        double _gr_k_567
        double _gr_k_568
        double _gr_k_569
        double _gr_k_570
        double _gr_k_571
        double _gr_k_572
        double _gr_k_573
        double _gr_k_574
        double _gr_k_575
        double _gr_k_576
        double _gr_k_577
        double _gr_k_578
        double _gr_k_579
        double _gr_k_580
        double _gr_k_581
        double _gr_k_582
        double _gr_k_583
        double _gr_k_584
        double _gr_k_585
        double _gr_k_586
        ccomplex.complex[double] _gr_k_587
        ccomplex.complex[double] _gr_k_588
        double _gr_k_589
        ccomplex.complex[double] _gr_k_590
        ccomplex.complex[double] _gr_k_591
        double _gr_k_592
        double _gr_k_593
        double _gr_k_594
        double _gr_k_595
        double _gr_k_596
        double _gr_k_597
        double _gr_k_598
        double _gr_k_599
        double _gr_k_600
        double _gr_k_601
        double _gr_k_602
        double _gr_k_603
        double _gr_k_604
        double _gr_k_605
        double _gr_k_606
        double _gr_k_607
        double _gr_k_608
        double _gr_k_609
        double _gr_k_610
        double _gr_k_611
        double _gr_k_612
        double _gr_k_613
        double _gr_k_614
        double _gr_k_615
        double _gr_k_616
        double _gr_k_617
        double _gr_k_618
        double _gr_k_619
        double _gr_k_620
        double _gr_k_621
        double _gr_k_622
        double _gr_k_623
        double _gr_k_624
        double _gr_k_625
        double _gr_k_626
        double _gr_k_627
        double _gr_k_628
        double _gr_k_629
        double _gr_k_630
        double _gr_k_631
        double _gr_k_632
        double _gr_k_633
        double _gr_k_634
        double _gr_k_635
        double _gr_k_636
        double _gr_k_637
        double _gr_k_638
        double _gr_k_639
        double _gr_k_640
        double _gr_k_641
        double _gr_k_642
        double _gr_k_643
        double _gr_k_644
        double _gr_k_645
        double _gr_k_646
        double _gr_k_647
        double _gr_k_648
        double _gr_k_649
        double _gr_k_650
        double _gr_k_651
        double _gr_k_652
        double _gr_k_653
        double _gr_k_654
        double _gr_k_655
        double _gr_k_656
        double _gr_k_657
        double _gr_k_658
        double _gr_k_659
        double _gr_k_660
        double _gr_k_661
        double _gr_k_662
        double _gr_k_663
        double _gr_k_664
        double _gr_k_665
        double _gr_k_666
        double _gr_k_667
        double _gr_k_668
        double _gr_k_669
        double _gr_k_670
        double _gr_k_671
        double _gr_k_672
        double _gr_k_673
        double _gr_k_674
        double _gr_k_675
        double _gr_k_676
        double _gr_k_677
        double _gr_k_678
        double _gr_k_679
        double _gr_k_680
        double _gr_k_681
        double _gr_k_682
        double _gr_k_683
        double _gr_k_684
        double _gr_k_685
        double _gr_k_686
        double _gr_k_687
        double _gr_k_688
        double _gr_k_689
        double _gr_k_690
        double _gr_k_691
        double _gr_k_692
        double _gr_k_693
        double _gr_k_694
        double _gr_k_695
        double _gr_k_696
        double _gr_k_697
        double _gr_k_698
        double _gr_k_699
        double _gr_k_700
        double _gr_k_701
        double _gr_k_702
        double _gr_k_703
        double _gr_k_704
        double _gr_k_705
        double _gr_k_706
        double _gr_k_707
        double _gr_k_708
        double _gr_k_709
        double _gr_k_710
        double _gr_k_711
        double _gr_k_712
        double _gr_k_713
        double _gr_k_714
        double _gr_k_715
        double _gr_k_716
        double _gr_k_717
        double _gr_k_718
        double _gr_k_719
        double _gr_k_720
        double _gr_k_721
        double _gr_k_722
        double _gr_k_723
        double _gr_k_724
        double _gr_k_725
        double _gr_k_726
        double _gr_k_727
        double _gr_k_728
        double _gr_k_729
        double _gr_k_730
        double _gr_k_731
        double _gr_k_732
        double _gr_k_733
        double _gr_k_734
        double _gr_k_735
        double _gr_k_736
        double _gr_k_737
        double _gr_k_738
        double _gr_k_739
        double _gr_k_740
        double _gr_k_741
        double _gr_k_742
        double _gr_k_743
        double _gr_k_744
        double _gr_k_745
        double _gr_k_746
        double _gr_k_747
        double _gr_k_748
        double _gr_k_749
        double _gr_k_750
        double _gr_k_751
        double _gr_k_752
        double _gr_k_753
        double _gr_k_754
        double _gr_k_755
        double _gr_k_756
        double _gr_k_757
        double _gr_k_758
        double _gr_k_759
        double _gr_k_760
        double _gr_k_761
        double _gr_k_762
        double _gr_k_763
        double _gr_k_764
        double _gr_k_765
        double _gr_k_766
        double _gr_k_767
        double _gr_k_768
        double _gr_k_769
        double _gr_k_770
        double _gr_k_771
        double _gr_k_772
        double _gr_k_773
        double _gr_k_774
        double _gr_k_775
        double _gr_k_776
        double _gr_k_777
        double _gr_k_778
        double _gr_k_779
        double _gr_k_780
        double _gr_k_781
        double _gr_k_782
        double _gr_k_783
        double _gr_k_784
        double _gr_k_785
        double _gr_k_786
        double _gr_k_787
        double _gr_k_788
        double _gr_k_789
        double _gr_k_790
        double _gr_k_791
        double _gr_k_792
        double _gr_k_793
        double _gr_k_794
        double _gr_k_795
        double _gr_k_796
        double _gr_k_797
        double _gr_k_798
        double _gr_k_799
        double _gr_k_800
        double _gr_k_801
        double _gr_k_802
        double _gr_k_803
        double _gr_k_804
        double _gr_k_805
        double _gr_k_806
        double _gr_k_807
        double _gr_k_808
        double _gr_k_809
        double _gr_k_810
        double _gr_k_811
        double _gr_k_812
        double _gr_k_813
        double _gr_k_814
        double _gr_k_815
        double _gr_k_816
        double _gr_k_817
        double _gr_k_818
        double _gr_k_819
        double _gr_k_820
        double _gr_k_821
        double _gr_k_822
        double _gr_k_823
        double _gr_k_824
        double _gr_k_825
        double _gr_k_826
        double _gr_k_827
        double _gr_k_828
        double _gr_k_829
        double _gr_k_830
        double _gr_k_831
        double _gr_k_832
        double _gr_k_833
        double _gr_k_834
        double _gr_k_835
        double _gr_k_836
        double _gr_k_837
        double _gr_k_838
        double _gr_k_839
        double _gr_k_840
        double _gr_k_841
        double _gr_k_842
        double _gr_k_843
        double _gr_k_844
        double _gr_k_845
        double _gr_k_846
        double _gr_k_847
        double _gr_k_848
        double _gr_k_849
        double _gr_k_850
        double _gr_k_851
        double _gr_k_852
        double _gr_k_853
        double _gr_k_854
        double _gr_k_855
        double _gr_k_856
        double _gr_k_857
        double _gr_k_858
        double _gr_k_859
        double _gr_k_860
        double _gr_k_861
        double _gr_k_862
        double _gr_k_863
        double _gr_k_864
        double _gr_k_865
        ccomplex.complex[double] _gr_k_866
        ccomplex.complex[double] _gr_k_867
        double _gr_k_868
        double _gr_k_869
        double _gr_k_870
        ccomplex.complex[double] _gr_k_871
        ccomplex.complex[double] _gr_k_872
        double _gr_k_873
        double _gr_k_874
        double _gr_k_875
        double _gr_k_876
        double _gr_k_877
        ccomplex.complex[double] _gr_k_878
        double _gr_k_879
        double _gr_k_880
        ccomplex.complex[double] _gr_k_881
        double _gr_k_882
        double _gr_k_883
        double _gr_k_884
        ccomplex.complex[double] _gr_k_885
        ccomplex.complex[double] _gr_k_886
        double _gr_k_887
        ccomplex.complex[double] _gr_k_888
        double _gr_k_889
        double _gr_k_890
        double _gr_k_891
        double _gr_k_892
        double _gr_k_893
        double _gr_k_894
        double _gr_k_895
        double _gr_k_896
        double _gr_k_897
        double _gr_k_898
        double _gr_k_899
        double _gr_k_900
        double _gr_k_901
        double _gr_k_902
        ccomplex.complex[double] _gr_k_903
        double _gr_k_904
        ccomplex.complex[double] _gr_k_905
        double _gr_k_906
        ccomplex.complex[double] _gr_k_907
        double _gr_k_908
        ccomplex.complex[double] _gr_k_909
        ccomplex.complex[double] _gr_k_910
        ccomplex.complex[double] _gr_k_911
        ccomplex.complex[double] _gr_k_912
        double _gr_k_913
        double _gr_k_914
        double _gr_k_915
        double _gr_k_916
        double _gr_k_917
        ccomplex.complex[double] _gr_k_918
        ccomplex.complex[double] _gr_k_919
        double _gr_k_920
        double _gr_k_921
        double _gr_k_922
        double _gr_k_923
        double _gr_k_924
        double _gr_k_925
        double _gr_k_926
        double _gr_k_927
        double _gr_k_928
        double _gr_k_929
        double _gr_k_930
        double _gr_k_931
        double _gr_k_932
        double _gr_k_933
        double _gr_k_934
        double _gr_k_935
        double _gr_k_936
        double _gr_k_937
        double _gr_k_938
        double _gr_k_939
        double _gr_k_940
        double _gr_k_941
        double _gr_k_942
        double _gr_k_943
        double _gr_k_944
        double _gr_k_945
        double _gr_k_946
        double _gr_k_947
        double _gr_k_948
        double _gr_k_949
        double _gr_k_950
        double _gr_k_951
        double _gr_k_952
        double _gr_k_953
        double _gr_k_954
        double _gr_k_955
        double _gr_k_956
        double _gr_k_957
        double _gr_k_958
        double _gr_k_959
        double _gr_k_960
        double _gr_k_961
        double _gr_k_962
        double _gr_k_963
        double _gr_k_964
        double _gr_k_965
        double _gr_k_966
        double _gr_k_967
        double _gr_k_968
        double _gr_k_969
        ccomplex.complex[double] _gr_k_970
        double _gr_k_971
        ccomplex.complex[double] _gr_k_972
        ccomplex.complex[double] _gr_k_973
        ccomplex.complex[double] _gr_k_974
        ccomplex.complex[double] _gr_k_975
        ccomplex.complex[double] _gr_k_976
        ccomplex.complex[double] _gr_k_977
        double _gr_k_978
        double _gr_k_979
        double _gr_k_980
        double _gr_k_981
        double _gr_k_982
        double _gr_k_983
        double _gr_k_984
        double _gr_k_985
        double _gr_k_986
        double _gr_k_987
        double _gr_k_988
        double _gr_k_989
        double _gr_k_990
        double _gr_k_991
        double _gr_k_992
        double _gr_k_993
        double _gr_k_994
        double _gr_k_995
        double _gr_k_996
        double _gr_k_997
        double _gr_k_998
        double _gr_k_999
        double _gr_k_1000
        double _gr_k_1001
        double _gr_k_1002
        double _gr_k_1003
        double _gr_k_1004
        double _gr_k_1005
        double _gr_k_1006
        ccomplex.complex[double] _gr_k_1007
        double _gr_k_1008
        double _gr_k_1009
        double _gr_k_1010
        double _gr_k_1011
        double _gr_k_1012
        double _gr_k_1013
        double _gr_k_1014
        double _gr_k_1015
        double _gr_k_1016
        double _gr_k_1017
        double _gr_k_1018
        double _gr_k_1019
        ccomplex.complex[double] _gr_k_1020
        double _gr_k_1021
        double _gr_k_1022
        double _gr_k_1023
        double _gr_k_1024
        double _gr_k_1025
        double _gr_k_1026
        double _gr_k_1027
        double _gr_k_1028
        double _gr_k_1029
        double _gr_k_1030
        double _gr_k_1031
        double _gr_k_1032
        double _gr_k_1033
        double _gr_k_1034
        double _gr_k_1035
        double _gr_k_1036
        double _gr_k_1037
        double _gr_k_1038
        double _gr_k_1039
        double _gr_k_1040
        double _gr_k_1041
        double _gr_k_1042
        double _gr_k_1043
        double _gr_k_1044
        double _gr_k_1045
        double _gr_k_1046
        double _gr_k_1047
        double _gr_k_1048
        double _gr_k_1049
        double _gr_k_1050
        double _gr_k_1051
        double _gr_k_1052
        double _gr_k_1053
        double _gr_k_1054
        double _gr_k_1055
        double _gr_k_1056
        double _gr_k_1057
        double _gr_k_1058
        double _gr_k_1059
        double _gr_k_1060
        double _gr_k_1061
        double _gr_k_1062
        double _gr_k_1063
        double _gr_k_1064
        double _gr_k_1065
        double _gr_k_1066
        ccomplex.complex[double] _gr_k_1067
        double _gr_k_1068
        double _gr_k_1069
        double _gr_k_1070
        double _gr_k_1071
        double _gr_k_1072
        double _gr_k_1073
        double _gr_k_1074
        double _gr_k_1075
        double _gr_k_1076
        double _gr_k_1077
        double _gr_k_1078
        double _gr_k_1079
        double _gr_k_1080
        double _gr_k_1081
        double _gr_k_1082
        double _gr_k_1083
        double _gr_k_1084
        double _gr_k_1085
        double _gr_k_1086
        double _gr_k_1087
        double _gr_k_1088
        double _gr_k_1089
        double _gr_k_1090
        double _gr_k_1091
        double _gr_k_1092
        double _gr_k_1093
        double _gr_k_1094
        double _gr_k_1095
        double _gr_k_1096
        double _gr_k_1097
        double _gr_k_1098
        double _gr_k_1099
        double _gr_k_1100
        double _gr_k_1101
        double _gr_k_1102
        double _gr_k_1103
        double _gr_k_1104
        double _gr_k_1105
        double _gr_k_1106
        double _gr_k_1107
        double _gr_k_1108
        double _gr_k_1109
        double _gr_k_1110
        double _gr_k_1111
        double _gr_k_1112
        double _gr_k_1113
        ccomplex.complex[double] _gr_k_1114
        double _gr_k_1115
        double _gr_k_1116
        double _gr_k_1117
        double _gr_k_1118
        double _gr_k_1119
        double _gr_k_1120
        ccomplex.complex[double] _gr_k_1121
        ccomplex.complex[double] _gr_k_1122
        double _gr_k_1123
        double _gr_k_1124
        double _gr_k_1125
        double _gr_k_1126
        double _gr_k_1127
        double _gr_k_1128
        double _gr_k_1129
        double _gr_k_1130
        double _gr_k_1131
        double _gr_k_1132
        double _gr_k_1133
        double _gr_k_1134
        double _gr_k_1135
        double _gr_k_1136
        double _gr_k_1137
        double _gr_k_1138
        double _gr_k_1139
        double _gr_k_1140
        double _gr_k_1141
        double _gr_k_1142
        double _gr_k_1143
        double _gr_k_1144
        double _gr_k_1145
        double _gr_k_1146
        ccomplex.complex[double] _gr_k_1147
        double _gr_k_1148
        double _gr_k_1149
        double _gr_k_1150
        double _gr_k_1151
        double _gr_k_1152
        double _gr_k_1153
        double _gr_k_1154
        double _gr_k_1155
        double _gr_k_1156
        double _gr_k_1157
        double _gr_k_1158
        double _gr_k_1159
        double _gr_k_1160
        double _gr_k_1161
        double _gr_k_1162
        double _gr_k_1163
        double _gr_k_1164
        double _gr_k_1165
        ccomplex.complex[double] _gr_k_1166
        ccomplex.complex[double] _gr_k_1167
        ccomplex.complex[double] _gr_k_1168
        ccomplex.complex[double] _gr_k_1169

    cdef:
        readonly ccomplex.complex[double] h21EccCorrResum
        readonly ccomplex.complex[double] h22EccCorrResum
        readonly ccomplex.complex[double] h31EccCorrResum
        readonly ccomplex.complex[double] h32EccCorrResum
        readonly ccomplex.complex[double] h33EccCorrResum
        readonly ccomplex.complex[double] h41EccCorrResum
        readonly ccomplex.complex[double] h42EccCorrResum
        readonly ccomplex.complex[double] h43EccCorrResum
        readonly ccomplex.complex[double] h44EccCorrResum
        readonly ccomplex.complex[double] h51EccCorrResum
        readonly ccomplex.complex[double] h52EccCorrResum
        readonly ccomplex.complex[double] h53EccCorrResum
        readonly ccomplex.complex[double] h54EccCorrResum
        readonly ccomplex.complex[double] h55EccCorrResum
        readonly ccomplex.complex[double] h61EccCorrResum
        readonly ccomplex.complex[double] h62EccCorrResum
        readonly ccomplex.complex[double] h63EccCorrResum
        readonly ccomplex.complex[double] h64EccCorrResum
        readonly ccomplex.complex[double] h65EccCorrResum
        readonly ccomplex.complex[double] h66EccCorrResum
        readonly ccomplex.complex[double] h71EccCorrResum
        readonly ccomplex.complex[double] h72EccCorrResum
        readonly ccomplex.complex[double] h73EccCorrResum
        readonly ccomplex.complex[double] h74EccCorrResum
        readonly ccomplex.complex[double] h75EccCorrResum
        readonly ccomplex.complex[double] h76EccCorrResum
        readonly ccomplex.complex[double] h77EccCorrResum
        readonly double h81EccCorrResum
        readonly ccomplex.complex[double] h82EccCorrResum
        readonly double h83EccCorrResum
        readonly ccomplex.complex[double] h84EccCorrResum
        readonly double h85EccCorrResum
        readonly ccomplex.complex[double] h86EccCorrResum
        readonly double h87EccCorrResum
        readonly ccomplex.complex[double] h88EccCorrResum

    cdef void _initialize(self
        , int flagMemory=*
        , int flagPA=*
        , int flagPN1=*
        , int flagPN12=*
        , int flagPN2=*
        , int flagPN3=*
        , int flagPN32=*
        , int flagPN52=*
        , int flagTail=*
        , double nu=*
    )

    cdef void _compute(self
        , double e=*
        , double x=*
        , double z=*
    )

    cpdef void compute(self
        , double e
        , double x
        , double z
    )

    cpdef ccomplex.complex[double] get(self, int l, int m)
