122    const auto p80{
true};
 
  132        const MHz_u width{20};
 
  133        const uint8_t p20Index = 0;
 
  136        for (std::size_t idx = 1; idx <= 9; idx++)
 
  141        for (std::size_t idx = 1; idx <= 4; idx++)
 
  146        for (std::size_t idx = 1; idx <= 2; idx++)
 
  160    for (uint8_t p20Index = 0; p20Index < 2; p20Index++)
 
  162        const MHz_u width{20};
 
  165        for (std::size_t idx = 1; idx <= 9; idx++)
 
  170        for (std::size_t idx = 1; idx <= 4; idx++)
 
  175        for (std::size_t idx = 1; idx <= 2; idx++)
 
  184    for (uint8_t p20Index = 0; p20Index < 2; p20Index++)
 
  186        const MHz_u width{40};
 
  189        for (std::size_t idx = 1; idx <= 9; idx++)
 
  194        for (std::size_t idx = 10; idx <= 18; idx++)
 
  199        for (std::size_t idx = 1; idx <= 4; idx++)
 
  204        for (std::size_t idx = 5; idx <= 8; idx++)
 
  209        for (std::size_t idx = 1; idx <= 2; idx++)
 
  214        for (std::size_t idx = 3; idx <= 4; idx++)
 
  232    for (uint8_t p20Index = 0; p20Index < 4; p20Index++)
 
  234        const MHz_u width{20};
 
  237        for (std::size_t idx = 1; idx <= 9; idx++)
 
  242        for (std::size_t idx = 1; idx <= 4; idx++)
 
  247        for (std::size_t idx = 1; idx <= 2; idx++)
 
  256    for (uint8_t p20Index = 0; p20Index < 4; p20Index++)
 
  258        const MHz_u width{40};
 
  260        const uint8_t p40Index = p20Index / 2;
 
  262        const uint8_t ch20Index0 = p40Index * 2;
 
  263        const uint8_t ch20Index1 = p40Index * 2 + 1;
 
  266        for (std::size_t idx = 1; idx <= 9; idx++)
 
  271        for (std::size_t idx = 10; idx <= 18; idx++)
 
  276        for (std::size_t idx = 1; idx <= 4; idx++)
 
  281        for (std::size_t idx = 5; idx <= 8; idx++)
 
  286        for (std::size_t idx = 1; idx <= 2; idx++)
 
  291        for (std::size_t idx = 3; idx <= 4; idx++)
 
  303               {ch20Index0, ch20Index1});
 
  307    for (uint8_t p20Index = 0; p20Index < 4; p20Index++)
 
  309        const MHz_u width{80};
 
  312        for (std::size_t idx = 1; idx <= 9; idx++)
 
  317        for (std::size_t idx = 10; idx <= 18; idx++)
 
  327        for (std::size_t idx = 20; idx <= 28; idx++)
 
  332        for (std::size_t idx = 29; idx <= 37; idx++)
 
  337        for (std::size_t idx = 1; idx <= 4; idx++)
 
  342        for (std::size_t idx = 5; idx <= 8; idx++)
 
  347        for (std::size_t idx = 9; idx <= 12; idx++)
 
  352        for (std::size_t idx = 13; idx <= 16; idx++)
 
  357        for (std::size_t idx = 1; idx <= 2; idx++)
 
  362        for (std::size_t idx = 3; idx <= 4; idx++)
 
  367        for (std::size_t idx = 5; idx <= 6; idx++)
 
  372        for (std::size_t idx = 7; idx <= 8; idx++)
 
  398    for (uint8_t p20Index = 0; p20Index < 8; p20Index++)
 
  400        const MHz_u width{20};
 
  403        for (std::size_t idx = 1; idx <= 9; idx++)
 
  408        for (std::size_t idx = 1; idx <= 4; idx++)
 
  413        for (std::size_t idx = 1; idx <= 2; idx++)
 
  422    for (uint8_t p20Index = 0; p20Index < 8; p20Index++)
 
  424        const MHz_u width{40};
 
  426        const uint8_t p40Index = p20Index / 2;
 
  428        const uint8_t ch20Index0 = p40Index * 2;
 
  429        const uint8_t ch20Index1 = p40Index * 2 + 1;
 
  432        for (std::size_t idx = 1; idx <= 9; idx++)
 
  437        for (std::size_t idx = 10; idx <= 18; idx++)
 
  442        for (std::size_t idx = 1; idx <= 4; idx++)
 
  447        for (std::size_t idx = 5; idx <= 8; idx++)
 
  452        for (std::size_t idx = 1; idx <= 2; idx++)
 
  457        for (std::size_t idx = 3; idx <= 4; idx++)
 
  469               {ch20Index0, ch20Index1});
 
  473    for (uint8_t p20Index = 0; p20Index < 8; p20Index++)
 
  475        const MHz_u width{80};
 
  477        const uint8_t p80Index = p20Index / 4;
 
  479        const uint8_t ch20Index0 = p80Index * 4;
 
  480        const uint8_t ch20Index1 = p80Index * 4 + 1;
 
  481        const uint8_t ch20Index2 = p80Index * 4 + 2;
 
  482        const uint8_t ch20Index3 = p80Index * 4 + 3;
 
  485        for (std::size_t idx = 1; idx <= 9; idx++)
 
  490        for (std::size_t idx = 10; idx <= 18; idx++)
 
  500                   {ch20Index1, ch20Index2});
 
  503        for (std::size_t idx = 20; idx <= 28; idx++)
 
  508        for (std::size_t idx = 29; idx <= 37; idx++)
 
  513        for (std::size_t idx = 1; idx <= 4; idx++)
 
  518        for (std::size_t idx = 5; idx <= 8; idx++)
 
  523        for (std::size_t idx = 9; idx <= 12; idx++)
 
  528        for (std::size_t idx = 13; idx <= 16; idx++)
 
  533        for (std::size_t idx = 1; idx <= 2; idx++)
 
  538        for (std::size_t idx = 3; idx <= 4; idx++)
 
  543        for (std::size_t idx = 5; idx <= 6; idx++)
 
  548        for (std::size_t idx = 7; idx <= 8; idx++)
 
  564               {ch20Index0, ch20Index1});
 
  569               {ch20Index2, ch20Index3});
 
  574               {ch20Index0, ch20Index1, ch20Index2, ch20Index3});
 
  578    for (uint8_t p20Index = 0; p20Index < 8; p20Index++)
 
  580        const MHz_u width{160};
 
  582        for (
auto primary80 : {
true, 
false})
 
  586            const uint8_t p80Index = (primary80 == (p20Index < 4)) ? 0 : 1;
 
  587            const uint8_t ch20Index0 = p80Index * 4;
 
  588            const uint8_t ch20Index1 = p80Index * 4 + 1;
 
  589            const uint8_t ch20Index2 = p80Index * 4 + 2;
 
  590            const uint8_t ch20Index3 = p80Index * 4 + 3;
 
  593            std::size_t startIdx = 1;
 
  594            std::size_t stopIdx = startIdx + 8;
 
  595            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  603            startIdx = stopIdx + 1;
 
  604            stopIdx = startIdx + 8;
 
  605            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  618                       {ch20Index1, ch20Index2});
 
  621            startIdx = stopIdx + 2;
 
  622            stopIdx = startIdx + 8;
 
  623            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  631            startIdx = stopIdx + 1;
 
  632            stopIdx = startIdx + 8;
 
  633            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  642            stopIdx = startIdx + 3;
 
  643            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  651            startIdx = stopIdx + 1;
 
  652            stopIdx = startIdx + 3;
 
  653            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  661            startIdx = stopIdx + 1;
 
  662            stopIdx = startIdx + 3;
 
  663            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  671            startIdx = stopIdx + 1;
 
  672            stopIdx = startIdx + 3;
 
  673            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  682            stopIdx = startIdx + 1;
 
  683            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  691            startIdx = stopIdx + 1;
 
  692            stopIdx = startIdx + 1;
 
  693            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  701            startIdx = stopIdx + 1;
 
  702            stopIdx = startIdx + 1;
 
  703            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  711            startIdx = stopIdx + 1;
 
  712            stopIdx = startIdx + 1;
 
  713            for (std::size_t idx = startIdx; idx <= stopIdx; idx++)
 
  746                   {ch20Index0, ch20Index1});
 
  751                   {ch20Index2, ch20Index3});
 
  757                   {ch20Index0, ch20Index1, ch20Index2, ch20Index3});
 
  763               {0, 1, 2, 3, 4, 5, 6, 7});
 
 
 2383    const std::map<BwTonesPair, std::vector<SubcarrierGroup>> expectedHeRuSubcarrierGroups = {
 
 2389           {{-16, -4}, {4, 16}},
 
 2459           {{-16, -4}, {4, 16}},
 
 2532           {{{-528, -516}, {-508, -496}}},
 
 2569           {{496, 508}, {516, 528}},
 
 2653         { {{-1012, -515}, {-509, -12}},
 
 2654           {{12, 509}, {515, 1012}}}},
 
 2656         { {{-1012, -515}, {-509, -12}, {12, 509}, {515, 1012}}}},
 
 2659    const std::map<BwTonesPair, std::vector<SubcarrierGroup>> expectedEhtRuSubcarrierGroups = {
 
 2665           {{-16, -4}, {4, 16}},
 
 2786         { {{-500, -259}, {-253, -12}},
 
 2787           {{12, 253}, {259, 500}}}},
 
 2924         { {{-1012, -771}, {-765, -524}},
 
 2925           {{-500, -259}, {-253, -12}},
 
 2926           {{12, 253}, {259, 500}},
 
 2927           {{524, 765}, {771, 1012}}}},
 
 2929         { {{-1012, -515}, {-509, -12}},
 
 2930           {{12, 509}, {515, 1012}}}},
 
 2932         { {{-1012, -515}, {-509, -12}, {12, 509}, {515, 1012}}}},
 
 3198         { {{-2036, -1795}, {-1789, -1548}},
 
 3199           {{-1524, -1283}, {-1277, -1036}},
 
 3200           {{-1012, -771}, {-765, -524}},
 
 3201           {{-500, -259}, {-253, -12}},
 
 3202           {{12, 253}, {259, 500}},
 
 3203           {{524, 765}, {771, 1012}},
 
 3204           {{1036, 1277}, {1283, 1524}},
 
 3205           {{1548, 1789}, {1795, 2036}}}},
 
 3207         { {{-2036, -1539}, {-1533, -1036}},
 
 3208           {{-1012, -515}, {-509, -12}},
 
 3209           {{12, 509}, {515, 1012}},
 
 3210           {{1036, 1533}, {1539, 2036}}}},
 
 3212         { {{-2036, -1539}, {-1533, -1036}, {-1012, -515}, {-509, -12}},
 
 3213           {{12, 509}, {515, 1012}, {1036, 1533}, {1539, 2036}}}},
 
 3226                                                 ? expectedHeRuSubcarrierGroups
 
 3227                                                 : expectedEhtRuSubcarrierGroups;
 
 3228    for (
const auto& [bwTonesPair, ruSubcarrierGroups] : expectedRuSubcarrierGroups)
 
 3230        std::size_t phyIndex = 1;
 
 3231        for (
const auto& subcarrierGroups : ruSubcarrierGroups)
 
 3233            RunOne(bwTonesPair.first, bwTonesPair.second, phyIndex++, subcarrierGroups);
 
 
 3330    const auto p160{
true};
 
 3331    const auto s160{
false};
 
 3332    const auto p80OrLower80{
true};
 
 3333    const auto s80OrHigher80{
false};
 
 3342        for (uint8_t p20Index = 0; p20Index < p20IdxMax; p20Index++)
 
 3344            std::size_t numRusPer20MHz = 9;
 
 3345            std::size_t startPhyIdx = p20Index * numRusPer20MHz;
 
 3348            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer20MHz; phyIdx++)
 
 3354            startPhyIdx = p20Index * numRusPer20MHz;
 
 3357            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer20MHz; phyIdx++)
 
 3363            startPhyIdx = p20Index * numRusPer20MHz;
 
 3366            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer20MHz; phyIdx++)
 
 3372            startPhyIdx = p20Index * numRusPer20MHz;
 
 3375            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer20MHz; phyIdx++)
 
 3386        for (uint8_t p20Index = 0; p20Index < p20IdxMax; p20Index++)
 
 3388            std::size_t numRusPer40MHz = 18;
 
 3389            std::size_t startPhyIdx = (p20Index / 2) * numRusPer40MHz;
 
 3392            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer40MHz; phyIdx++)
 
 3398            startPhyIdx = (p20Index / 2) * numRusPer40MHz;
 
 3401            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer40MHz; phyIdx++)
 
 3407            startPhyIdx = (p20Index / 2) * numRusPer40MHz;
 
 3410            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer40MHz; phyIdx++)
 
 3416            startPhyIdx = (p20Index / 2) * numRusPer40MHz;
 
 3419            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer40MHz; phyIdx++)
 
 3425            startPhyIdx = (p20Index / 2) * numRusPer40MHz;
 
 3428            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer40MHz; phyIdx++)
 
 3439        for (uint8_t p20Index = 0; p20Index < p20IdxMax; p20Index++)
 
 3441            std::size_t numRusPer80MHz = 37;
 
 3442            std::size_t startPhyIdx = (p20Index / 4) * numRusPer80MHz;
 
 3445            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3455            numRusPer80MHz = 16;
 
 3456            startPhyIdx = (p20Index / 4) * numRusPer80MHz;
 
 3459            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3465            startPhyIdx = (p20Index / 4) * numRusPer80MHz;
 
 3468            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3474            startPhyIdx = (p20Index / 4) * numRusPer80MHz;
 
 3477            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3483            startPhyIdx = (p20Index / 4) * numRusPer80MHz;
 
 3486            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3492            startPhyIdx = (p20Index / 4) * numRusPer80MHz;
 
 3495            for (std::size_t phyIdx = startPhyIdx; phyIdx <= startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3504        const MHz_u bw{160};
 
 3506        for (uint8_t p20Index = 0; p20Index < p20IdxMax; p20Index++)
 
 3508            const uint8_t p80Index = p20Index / 4;
 
 3509            const uint8_t s80Index = (p80Index % 2 == 0) ? (p80Index + 1) : (p80Index - 1);
 
 3512            std::size_t numRusPer80MHz = 37;
 
 3513            std::size_t numRusPer160MHz = 2 * numRusPer80MHz;
 
 3514            std::size_t startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3515            std::size_t idxIn80MHz = 1;
 
 3516            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3527            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3529            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3540            numRusPer80MHz = 16;
 
 3541            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3542            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3544            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3550            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3552            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3559            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3560            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3562            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3568            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3570            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3583            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3584            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3586            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3592            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3594            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3607            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3608            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3610            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3616            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3618            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3631            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3632            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3634            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3640            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer160MHz) + 1;
 
 3642            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3661        const MHz_u bw{320};
 
 3663        for (uint8_t p20Index = 0; p20Index < p20IdxMax; p20Index++)
 
 3665            const uint8_t p160Index = p20Index / 8;
 
 3666            const uint8_t s160Index = (p160Index % 2 == 0) ? (p160Index + 1) : (p160Index - 1);
 
 3667            const uint8_t p80Index = p20Index / 4;
 
 3668            const uint8_t s80Index = (p80Index % 2 == 0) ? (p80Index + 1) : (p80Index - 1);
 
 3671            std::size_t numRusPer80MHz = 37;
 
 3672            std::size_t numRusPer320MHz = 4 * numRusPer80MHz;
 
 3673            std::size_t startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3674            std::size_t idxIn80MHz = 1;
 
 3675            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3686            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3688            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3699            std::size_t numRusPer160MHz = 2 * numRusPer80MHz;
 
 3700            startPhyIdx = ((s160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3703            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3713            startPhyIdx += numRusPer80MHz;
 
 3715            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3726            numRusPer80MHz = 16;
 
 3727            numRusPer320MHz = 4 * numRusPer80MHz;
 
 3728            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3730            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3736            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3738            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3744            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3745            startPhyIdx = ((s160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3748            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3753            startPhyIdx += numRusPer80MHz;
 
 3755            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3762            numRusPer320MHz = 4 * numRusPer80MHz;
 
 3763            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3765            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3771            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3773            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3785            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3786            startPhyIdx = ((s160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3789            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3794            startPhyIdx += numRusPer80MHz;
 
 3796            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3809            numRusPer320MHz = 4 * numRusPer80MHz;
 
 3810            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3812            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3818            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3820            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3832            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3833            startPhyIdx = ((s160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3836            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3841            startPhyIdx += numRusPer80MHz;
 
 3843            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3856            numRusPer320MHz = 4 * numRusPer80MHz;
 
 3857            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3859            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3865            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3867            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3879            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3880            startPhyIdx = ((s160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3883            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3888            startPhyIdx += numRusPer80MHz;
 
 3890            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3903            numRusPer320MHz = 4 * numRusPer80MHz;
 
 3904            startPhyIdx = ((p80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3906            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3912            startPhyIdx = ((s80Index * numRusPer80MHz) % numRusPer320MHz) + 1;
 
 3914            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3926            numRusPer160MHz = 2 * numRusPer80MHz;
 
 3927            startPhyIdx = ((s160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3930            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3935            startPhyIdx += numRusPer80MHz;
 
 3937            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer80MHz; phyIdx++)
 
 3949            numRusPer160MHz = 1;
 
 3950            numRusPer320MHz = 2 * numRusPer160MHz;
 
 3951            startPhyIdx = ((p160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3953            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer160MHz; phyIdx++)
 
 3965            startPhyIdx = ((s160Index * numRusPer160MHz) % numRusPer320MHz) + 1;
 
 3967            for (std::size_t phyIdx = startPhyIdx; phyIdx < startPhyIdx + numRusPer160MHz; phyIdx++)