2592    const auto p80OrLow80 = 
true;
 
 2593    const auto s80OrHigh80 = 
false;
 
 2594    for (
const auto p160 :
 
 2595         std::initializer_list<std::optional<bool>>{std::nullopt ,
 
 2596                                                    std::optional(
true) })
 
 2601                                   {
MakeRuSpec(RuType::RU_106_TONE, 2, p80OrLow80, p160), 10, 4}},
 
 2607                                  std::make_pair(2, 0), 
 
 2609            TestCase::Duration::QUICK);
 
 2613                        {{
MakeRuSpec(RuType::RU_106_TONE, 1, p80OrLow80, p160), 11, 1}, 
 
 2614                         {
MakeRuSpec(RuType::RU_106_TONE, 2, p80OrLow80, p160), 10, 4}, 
 
 2615                         {
MakeRuSpec(RuType::RU_52_TONE, 5, p80OrLow80, p160), 4, 1},   
 
 2616                         {
MakeRuSpec(RuType::RU_52_TONE, 6, p80OrLow80, p160), 6, 2},   
 
 2617                         {
MakeRuSpec(RuType::RU_52_TONE, 7, p80OrLow80, p160), 5, 3},   
 
 2618                         {
MakeRuSpec(RuType::RU_52_TONE, 8, p80OrLow80, p160), 6, 2}},  
 
 2624                        std::make_pair(2, 4), 
 
 2627                    TestCase::Duration::QUICK);
 
 2631                        {{
MakeRuSpec(RuType::RU_106_TONE, 1, p80OrLow80, p160), 11, 1}, 
 
 2632                         {
MakeRuSpec(RuType::RU_106_TONE, 2, p80OrLow80, p160), 10, 4}, 
 
 2633                         {
MakeRuSpec(RuType::RU_52_TONE, 5, p80OrLow80, p160), 4, 1},   
 
 2634                         {
MakeRuSpec(RuType::RU_52_TONE, 6, p80OrLow80, p160), 6, 2},   
 
 2635                         {
MakeRuSpec(RuType::RU_52_TONE, 7, p80OrLow80, p160), 5, 3},   
 
 2636                         {
MakeRuSpec(RuType::RU_52_TONE, 8, p80OrLow80, p160), 6, 2},   
 
 2637                         {
MakeRuSpec(RuType::RU_26_TONE, 14, p80OrLow80, p160), 3, 1}}, 
 
 2643                        std::make_pair(2, 5), 
 
 2646                    TestCase::Duration::QUICK);
 
 2650                        {{
MakeRuSpec(RuType::RU_106_TONE, 1, p80OrLow80, p160), 11, 1}, 
 
 2651                         {
MakeRuSpec(RuType::RU_106_TONE, 2, p80OrLow80, p160), 10, 4}, 
 
 2652                         {
MakeRuSpec(RuType::RU_52_TONE, 5, p80OrLow80, p160), 4, 1},   
 
 2653                         {
MakeRuSpec(RuType::RU_52_TONE, 6, p80OrLow80, p160), 6, 2},   
 
 2654                         {
MakeRuSpec(RuType::RU_52_TONE, 7, p80OrLow80, p160), 5, 3},   
 
 2655                         {
MakeRuSpec(RuType::RU_52_TONE, 8, p80OrLow80, p160), 6, 2},   
 
 2656                         {
MakeRuSpec(RuType::RU_26_TONE, 14, p80OrLow80, p160), 3, 1},  
 
 2657                         {
MakeRuSpec(RuType::RU_242_TONE, 3, p80OrLow80, p160), 1, 1},  
 
 2658                         {
MakeRuSpec(RuType::RU_242_TONE, 4, p80OrLow80, p160), 4, 1}}, 
 
 2663                        (p160 == std::nullopt) ? 
RuAllocation{96, 15, 192, 192}
 
 2665                        std::make_pair(3, 6), 
 
 2668                    TestCase::Duration::QUICK);
 
 2672                        {{
MakeRuSpec(RuType::RU_26_TONE, 1, p80OrLow80, p160), 8, 1},   
 
 2673                         {
MakeRuSpec(RuType::RU_26_TONE, 2, p80OrLow80, p160), 8, 1},   
 
 2674                         {
MakeRuSpec(RuType::RU_26_TONE, 3, p80OrLow80, p160), 8, 1},   
 
 2675                         {
MakeRuSpec(RuType::RU_26_TONE, 4, p80OrLow80, p160), 8, 1},   
 
 2676                         {
MakeRuSpec(RuType::RU_26_TONE, 5, p80OrLow80, p160), 8, 1},   
 
 2677                         {
MakeRuSpec(RuType::RU_26_TONE, 6, p80OrLow80, p160), 8, 1},   
 
 2678                         {
MakeRuSpec(RuType::RU_26_TONE, 7, p80OrLow80, p160), 8, 1},   
 
 2679                         {
MakeRuSpec(RuType::RU_26_TONE, 8, p80OrLow80, p160), 8, 1},   
 
 2680                         {
MakeRuSpec(RuType::RU_26_TONE, 9, p80OrLow80, p160), 8, 1},   
 
 2681                         {
MakeRuSpec(RuType::RU_26_TONE, 10, p80OrLow80, p160), 8, 1},  
 
 2682                         {
MakeRuSpec(RuType::RU_26_TONE, 11, p80OrLow80, p160), 8, 1},  
 
 2683                         {
MakeRuSpec(RuType::RU_26_TONE, 12, p80OrLow80, p160), 8, 1},  
 
 2684                         {
MakeRuSpec(RuType::RU_26_TONE, 13, p80OrLow80, p160), 8, 1},  
 
 2685                         {
MakeRuSpec(RuType::RU_26_TONE, 14, p80OrLow80, p160), 8, 1},  
 
 2686                         {
MakeRuSpec(RuType::RU_26_TONE, 15, p80OrLow80, p160), 8, 1},  
 
 2687                         {
MakeRuSpec(RuType::RU_26_TONE, 16, p80OrLow80, p160), 8, 1},  
 
 2688                         {
MakeRuSpec(RuType::RU_26_TONE, 17, p80OrLow80, p160), 8, 1},  
 
 2689                         {
MakeRuSpec(RuType::RU_26_TONE, 18, p80OrLow80, p160), 8, 1},  
 
 2690                         {
MakeRuSpec(RuType::RU_26_TONE, 20, p80OrLow80, p160), 8, 1},  
 
 2691                         {
MakeRuSpec(RuType::RU_26_TONE, 21, p80OrLow80, p160), 8, 1},  
 
 2692                         {
MakeRuSpec(RuType::RU_26_TONE, 22, p80OrLow80, p160), 8, 1},  
 
 2693                         {
MakeRuSpec(RuType::RU_26_TONE, 23, p80OrLow80, p160), 8, 1},  
 
 2694                         {
MakeRuSpec(RuType::RU_26_TONE, 24, p80OrLow80, p160), 8, 1},  
 
 2695                         {
MakeRuSpec(RuType::RU_26_TONE, 25, p80OrLow80, p160), 8, 1},  
 
 2696                         {
MakeRuSpec(RuType::RU_26_TONE, 26, p80OrLow80, p160), 8, 1},  
 
 2697                         {
MakeRuSpec(RuType::RU_26_TONE, 27, p80OrLow80, p160), 8, 1},  
 
 2698                         {
MakeRuSpec(RuType::RU_26_TONE, 28, p80OrLow80, p160), 8, 1},  
 
 2699                         {
MakeRuSpec(RuType::RU_26_TONE, 29, p80OrLow80, p160), 8, 1},  
 
 2700                         {
MakeRuSpec(RuType::RU_26_TONE, 30, p80OrLow80, p160), 8, 1},  
 
 2701                         {
MakeRuSpec(RuType::RU_26_TONE, 31, p80OrLow80, p160), 8, 1},  
 
 2702                         {
MakeRuSpec(RuType::RU_26_TONE, 32, p80OrLow80, p160), 8, 1},  
 
 2703                         {
MakeRuSpec(RuType::RU_26_TONE, 33, p80OrLow80, p160), 8, 1},  
 
 2704                         {
MakeRuSpec(RuType::RU_26_TONE, 34, p80OrLow80, p160), 8, 1},  
 
 2705                         {
MakeRuSpec(RuType::RU_26_TONE, 35, p80OrLow80, p160), 8, 1},  
 
 2706                         {
MakeRuSpec(RuType::RU_26_TONE, 36, p80OrLow80, p160), 8, 1},  
 
 2707                         {
MakeRuSpec(RuType::RU_26_TONE, 37, p80OrLow80, p160), 8, 1}}, 
 
 2713                        std::make_pair(18, 18), 
 
 2715                    TestCase::Duration::QUICK);
 
 2719                        {{
MakeRuSpec(RuType::RU_106_TONE, 1, p80OrLow80, p160), 11, 1}, 
 
 2720                         {
MakeRuSpec(RuType::RU_106_TONE, 2, p80OrLow80, p160), 10, 4}, 
 
 2721                         {
MakeRuSpec(RuType::RU_52_TONE, 5, p80OrLow80, p160), 4, 1},   
 
 2722                         {
MakeRuSpec(RuType::RU_52_TONE, 6, p80OrLow80, p160), 6, 2},   
 
 2723                         {
MakeRuSpec(RuType::RU_52_TONE, 7, p80OrLow80, p160), 5, 3},   
 
 2724                         {
MakeRuSpec(RuType::RU_52_TONE, 8, p80OrLow80, p160), 6, 2},   
 
 2725                         {
MakeRuSpec(RuType::RU_26_TONE, 14, p80OrLow80, p160), 3, 1},  
 
 2726                         {
MakeRuSpec(RuType::RU_242_TONE, 3, p80OrLow80, p160), 1, 1},  
 
 2727                         {
MakeRuSpec(RuType::RU_242_TONE, 4, p80OrLow80, p160), 4, 1},  
 
 2728                         {
MakeRuSpec(RuType::RU_996_TONE, 1, s80OrHigh80, p160),
 
 2735                        (p160 == std::nullopt) ? 
RuAllocation{96, 15, 192, 192, 208, 115, 208, 115}
 
 2737                        std::make_pair(4, 6), 
 
 2740                    TestCase::Duration::QUICK);
 
 2745                {{
MakeRuSpec(RuType::RU_26_TONE, 1, p80OrLow80, p160), 11, 1},  
 
 2746                 {
MakeRuSpec(RuType::RU_26_TONE, 2, p80OrLow80, p160), 11, 1},  
 
 2747                 {
MakeRuSpec(RuType::RU_26_TONE, 3, p80OrLow80, p160), 11, 1},  
 
 2748                 {
MakeRuSpec(RuType::RU_26_TONE, 4, p80OrLow80, p160), 11, 1},  
 
 2749                 {
MakeRuSpec(RuType::RU_26_TONE, 6, p80OrLow80, p160), 11, 1},  
 
 2750                 {
MakeRuSpec(RuType::RU_26_TONE, 7, p80OrLow80, p160), 11, 1},  
 
 2751                 {
MakeRuSpec(RuType::RU_26_TONE, 8, p80OrLow80, p160), 11, 1},  
 
 2752                 {
MakeRuSpec(RuType::RU_26_TONE, 9, p80OrLow80, p160), 11, 1}}, 
 
 2758                std::make_pair(9, 0), 
 
 2760            TestCase::Duration::QUICK);
 
 2766                {{
MakeRuSpec(RuType::RU_52_TONE, 2, p80OrLow80, p160), 10, 1},  
 
 2767                 {
MakeRuSpec(RuType::RU_52_TONE, 3, p80OrLow80, p160), 10, 2},  
 
 2768                 {
MakeRuSpec(RuType::RU_52_TONE, 5, p80OrLow80, p160), 11, 1},  
 
 2769                 {
MakeRuSpec(RuType::RU_52_TONE, 8, p80OrLow80, p160), 11, 2}}, 
 
 2778            TestCase::Duration::QUICK);
 
 2784                {{
MakeRuSpec(RuType::RU_52_TONE, 1, p80OrLow80, p160), 10, 1},  
 
 2785                 {
MakeRuSpec(RuType::RU_52_TONE, 2, p80OrLow80, p160), 10, 2},  
 
 2786                 {
MakeRuSpec(RuType::RU_52_TONE, 3, p80OrLow80, p160), 11, 1},  
 
 2787                 {
MakeRuSpec(RuType::RU_52_TONE, 5, p80OrLow80, p160), 11, 2},  
 
 2788                 {
MakeRuSpec(RuType::RU_52_TONE, 6, p80OrLow80, p160), 11, 3}}, 
 
 2798            TestCase::Duration::QUICK);
 
 2849                TestCase::Duration::QUICK);
 
 2869                                      {96, 15, 192, 192, 208, 115, 208, 115},
 
 2870                                      std::make_pair(5, 6), 
 
 2873                TestCase::Duration::QUICK);
 
 2890                              {96, 96, 192, 192, 200, 114, 114, 200},
 
 2891                              std::make_pair(4, 5), 
 
 2894        TestCase::Duration::QUICK);
 
 2912                              {96, 96, 192, 192, 200, 114, 114, 200},
 
 2913                              std::make_pair(5, 5), 
 
 2916        TestCase::Duration::QUICK);
 
 2997                                      {0, 0, 0, 0, 0, 0, 0, 0},
 
 3002                TestCase::Duration::QUICK);
 
 3123                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 10, 
false, 
false}, 8, 1},  
 
 3124                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 11, 
false, 
false}, 8, 1},  
 
 3125                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 12, 
false, 
false}, 8, 1},  
 
 3126                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 13, 
false, 
false}, 8, 1},  
 
 3127                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 14, 
false, 
false}, 8, 1},  
 
 3128                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 15, 
false, 
false}, 8, 1},  
 
 3129                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 16, 
false, 
false}, 8, 1},  
 
 3130                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 17, 
false, 
false}, 8, 1},  
 
 3131                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 18, 
false, 
false}, 8, 1},  
 
 3132                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 20, 
false, 
false}, 8, 1},  
 
 3133                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 21, 
false, 
false}, 8, 1},  
 
 3134                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 22, 
false, 
false}, 8, 1},  
 
 3135                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 23, 
false, 
false}, 8, 1},  
 
 3136                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 24, 
false, 
false}, 8, 1},  
 
 3137                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 25, 
false, 
false}, 8, 1},  
 
 3138                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 26, 
false, 
false}, 8, 1},  
 
 3139                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 27, 
false, 
false}, 8, 1},  
 
 3140                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 28, 
false, 
false}, 8, 1},  
 
 3141                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 29, 
false, 
false}, 8, 1},  
 
 3142                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 30, 
false, 
false}, 8, 1},  
 
 3143                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 31, 
false, 
false}, 8, 1},  
 
 3144                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 32, 
false, 
false}, 8, 1},  
 
 3145                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 33, 
false, 
false}, 8, 1},  
 
 3146                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 34, 
false, 
false}, 8, 1},  
 
 3147                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 35, 
false, 
false}, 8, 1},  
 
 3148                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 36, 
false, 
false}, 8, 1},  
 
 3149                               {
EhtRu::RuSpec{RuType::RU_26_TONE, 37, 
false, 
false}, 8, 1}}, 
 
 3154                              {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
 
 3158        TestCase::Duration::QUICK);
 
 3167                              {208, 208, 208, 208, 208, 208, 208, 208},
 
 3168                              std::make_pair(1, 0), 
 
 3170        TestCase::Duration::QUICK);
 
 3180                              {208, 115, 208, 115, 115, 208, 115, 208},
 
 3181                              std::make_pair(1, 1), 
 
 3183        TestCase::Duration::QUICK);
 
 3193                              std::make_pair(0, 1), 
 
 3195        TestCase::Duration::QUICK);
 
 3205                                      std::make_pair(2, 0), 
 
 3207                TestCase::Duration::QUICK);
 
 3218                                      std::make_pair(3, 0), 
 
 3220                TestCase::Duration::QUICK);
 
 3232                                      std::make_pair(4, 0), 
 
 3234                TestCase::Duration::QUICK);
 
 3248                                      std::make_pair(6, 0), 
 
 3250                TestCase::Duration::QUICK);
 
 3266                                      std::make_pair(8, 0), 
 
 3268                TestCase::Duration::QUICK);
 
 3279                    std::make_pair(1, 1), 
 
 3281                TestCase::Duration::QUICK);
 
 3294            std::make_pair(2, 1), 
 
 3296        TestCase::Duration::QUICK);
 
 3309                    std::make_pair(2, 2), 
 
 3311                TestCase::Duration::QUICK);
 
 3326                    std::make_pair(3, 3), 
 
 3328                TestCase::Duration::QUICK);
 
 3345                    std::make_pair(4, 4), 
 
 3347                TestCase::Duration::QUICK);
 
 3357                    {208, 208, 208, 208},
 
 3358                    std::make_pair(1, 1), 
 
 3360                TestCase::Duration::QUICK);
 
 3372            {208, 208, 208, 208},
 
 3373            std::make_pair(2, 1), 
 
 3375        TestCase::Duration::QUICK);
 
 3387                    {208, 208, 208, 208},
 
 3388                    std::make_pair(2, 2), 
 
 3390                TestCase::Duration::QUICK);
 
 3404                    {208, 208, 208, 208},
 
 3405                    std::make_pair(3, 3), 
 
 3407                TestCase::Duration::QUICK);
 
 3423                    {208, 208, 208, 208},
 
 3424                    std::make_pair(4, 4), 
 
 3426                TestCase::Duration::QUICK);
 
 3430                    {{
HeRu::RuSpec{RuType::RU_2x996_TONE, 1, 
true}, 11, 1},  
 
 3431                     {
HeRu::RuSpec{RuType::RU_2x996_TONE, 1, 
true}, 10, 4}}, 
 
 3436                    {208, 208, 208, 208, 208, 208, 208, 208},
 
 3437                    std::make_pair(1, 1), 
 
 3439                TestCase::Duration::QUICK);
 
 3451            {208, 208, 208, 208, 208, 208, 208, 208},
 
 3452            std::make_pair(2, 1), 
 
 3454        TestCase::Duration::QUICK);
 
 3466                    {208, 208, 208, 208, 208, 208, 208, 208},
 
 3467                    std::make_pair(2, 2), 
 
 3469                TestCase::Duration::QUICK);
 
 3483                    {208, 208, 208, 208, 208, 208, 208, 208},
 
 3484                    std::make_pair(3, 3), 
 
 3486                TestCase::Duration::QUICK);
 
 3497                     {
HeRu::RuSpec{RuType::RU_2x996_TONE, 1, 
true}, 11, 1}}, 
 
 3502                    {208, 208, 208, 208, 208, 208, 208, 208},
 
 3503                    std::make_pair(4, 4), 
 
 3505                TestCase::Duration::QUICK);