Ignore:
Timestamp:
Jul 2, 2015, 7:29:35 PM (4 years ago)
Author:
cameron
Message:

Update to Unicode 8.0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/UCD/precompiled_blk.cpp

    r4515 r4636  
    2222};
    2323
     24  struct Struct_blk_Ahom {
     25  BitBlock cc;
     26};
     27
    2428  struct Struct_blk_Alchemical {
    2529  BitBlock cc;
     
    3034};
    3135
     36  struct Struct_blk_Anatolian_Hieroglyphs {
     37  BitBlock cc;
     38};
     39
    3240  struct Struct_blk_Ancient_Greek_Music {
    3341  BitBlock cc;
     
    162170};
    163171
     172  struct Struct_blk_Cherokee_Sup {
     173  BitBlock cc;
     174};
     175
    164176  struct Struct_blk_CJK {
    165177  BitBlock cc;
     
    198210};
    199211
     212  struct Struct_blk_CJK_Ext_E {
     213  BitBlock cc;
     214};
     215
    200216  struct Struct_blk_CJK_Radicals_Sup {
    201217  BitBlock cc;
     
    302318};
    303319
     320  struct Struct_blk_Early_Dynastic_Cuneiform {
     321  BitBlock cc;
     322};
     323
    304324  struct Struct_blk_Egyptian_Hieroglyphs {
    305325  BitBlock cc;
     
    406426};
    407427
     428  struct Struct_blk_Hatran {
     429  BitBlock cc;
     430};
     431
    408432  struct Struct_blk_Hebrew {
    409433  BitBlock cc;
     
    682706};
    683707
     708  struct Struct_blk_Multani {
     709  BitBlock cc;
     710};
     711
    684712  struct Struct_blk_Music {
    685713  BitBlock cc;
     
    730758};
    731759
     760  struct Struct_blk_Old_Hungarian {
     761  BitBlock cc;
     762};
     763
    732764  struct Struct_blk_Old_Italic {
    733765  BitBlock cc;
     
    906938};
    907939
     940  struct Struct_blk_Sup_Symbols_And_Pictographs {
     941  BitBlock cc;
     942};
     943
    908944  struct Struct_blk_Super_And_Sub {
    909945  BitBlock cc;
    910946};
    911947
     948  struct Struct_blk_Sutton_SignWriting {
     949  BitBlock cc;
     950};
     951
    912952  struct Struct_blk_Syloti_Nagri {
    913953  BitBlock cc;
     
    10341074 }
    10351075  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Ancient_Symbols & struct_blk_Ancient_Symbols) {
    1036                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_f0_ff;
    1037                 BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3, byte_f0;
    1038                 BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_90;
    1039                 BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp7, r10000_10ffff_tmp8;
    1040                 BitBlock r10000_10ffff_tmp9, r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_86;
    1041                 BitBlock sequence_f0_90_adv, sequence_f0_90_86, byte_range_90_bf;
    1042                 BitBlock sequence_f0_90_86_adv, r10000_10ffff_tmp12, r10000_10ffff_tmp13;
    1043                 BitBlock r10000_10ffff_tmp14, byte_87, sequence_f0_90_87, byte_range_80_8f;
    1044                 BitBlock sequence_f0_90_87_adv, r10000_10ffff_tmp15;
     1076                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     1077                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     1078                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     1079                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_90;
     1080                BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
     1081                BitBlock r10000_10ffff_tmp12, r10000_10ffff_tmp13, r10000_10ffff_tmp14;
     1082                BitBlock byte_86, sequence_f0_90_adv, sequence_f0_90_86, byte_range_90_bf;
     1083                BitBlock sequence_f0_90_86_adv, r10000_10ffff_tmp15, r10000_10ffff_tmp16;
     1084                BitBlock r10000_10ffff_tmp17, byte_87, sequence_f0_90_87, byte_range_80_8f;
     1085                BitBlock sequence_f0_90_87_adv, r10000_10ffff_tmp18;
    10451086
    10461087
     
    10501091        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    10511092        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
    1052           r80_10ffff_tmp1 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
    1053           byte_range_f0_ff = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1093          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1094          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1095          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    10541096          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 4))) {
    1055             r10000_10ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1056             r10000_10ffff_tmp2 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1057             r10000_10ffff_tmp3 = simd_or(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
    1058             byte_f0 = simd_andc(byte_range_f0_ff, r10000_10ffff_tmp3);
    1059             r10000_10ffff_tmp4 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1060             r10000_10ffff_tmp5 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
    1061             r10000_10ffff_tmp6 = simd_and(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
    1062             byte_90 = simd_andc(r10000_10ffff_tmp6, r10000_10ffff_tmp3);
     1097            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1098            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1099            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     1100            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1101            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1102            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     1103            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     1104            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1105            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     1106            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     1107            byte_90 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
    10631108            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
    10641109            sequence_f0_90 = simd_and(byte_f0_adv, byte_90);
    1065             r10000_10ffff_tmp7 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
    1066             r10000_10ffff_tmp8 = simd_andc(r10000_10ffff_tmp4, r10000_10ffff_tmp7);
    1067             r10000_10ffff_tmp9 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1068             r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
    1069             r10000_10ffff_tmp11 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp10);
    1070             byte_86 = simd_and(r10000_10ffff_tmp8, r10000_10ffff_tmp11);
     1110            r10000_10ffff_tmp10 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     1111            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
     1112            r10000_10ffff_tmp12 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1113            r10000_10ffff_tmp13 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     1114            r10000_10ffff_tmp14 = simd_and(r10000_10ffff_tmp12, r10000_10ffff_tmp13);
     1115            byte_86 = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp14);
    10711116            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_90, carryQ.get_carry_in(1), sequence_f0_90_adv));
    10721117            sequence_f0_90_86 = simd_and(sequence_f0_90_adv, byte_86);
    1073             byte_range_90_bf = simd_and(r10000_10ffff_tmp4, r10000_10ffff_tmp7);
     1118            byte_range_90_bf = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
    10741119            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_90_86, carryQ.get_carry_in(2), sequence_f0_90_86_adv));
    1075             r10000_10ffff_tmp12 = simd_and(sequence_f0_90_86_adv, byte_range_90_bf);
    1076             struct_blk_Ancient_Symbols.cc = simd_or(struct_blk_Ancient_Symbols.cc, r10000_10ffff_tmp12);
    1077             r10000_10ffff_tmp13 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
    1078             r10000_10ffff_tmp14 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp13);
    1079             byte_87 = simd_and(r10000_10ffff_tmp8, r10000_10ffff_tmp14);
     1120            r10000_10ffff_tmp15 = simd_and(sequence_f0_90_86_adv, byte_range_90_bf);
     1121            struct_blk_Ancient_Symbols.cc = simd_or(struct_blk_Ancient_Symbols.cc, r10000_10ffff_tmp15);
     1122            r10000_10ffff_tmp16 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1123            r10000_10ffff_tmp17 = simd_and(r10000_10ffff_tmp12, r10000_10ffff_tmp16);
     1124            byte_87 = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp17);
    10801125            sequence_f0_90_87 = simd_and(sequence_f0_90_adv, byte_87);
    1081             byte_range_80_8f = r10000_10ffff_tmp8;
     1126            byte_range_80_8f = r10000_10ffff_tmp11;
    10821127            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_90_87, carryQ.get_carry_in(3), sequence_f0_90_87_adv));
    1083             r10000_10ffff_tmp15 = simd_and(sequence_f0_90_87_adv, byte_range_80_8f);
    1084             struct_blk_Ancient_Symbols.cc = simd_or(struct_blk_Ancient_Symbols.cc, r10000_10ffff_tmp15);
     1128            r10000_10ffff_tmp18 = simd_and(sequence_f0_90_87_adv, byte_range_80_8f);
     1129            struct_blk_Ancient_Symbols.cc = simd_or(struct_blk_Ancient_Symbols.cc, r10000_10ffff_tmp18);
    10851130          }
    10861131          else {
     
    11031148 }
    11041149  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Diacriticals_Ext & struct_blk_Diacriticals_Ext) {
    1105                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_e0_ef, r800_ffff_tmp1;
    1106                 BitBlock byte_range_e0_e3, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
    1107                 BitBlock byte_e4, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
    1108                 BitBlock byte_range_80_b7, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
    1109                 BitBlock r800_4dff_tmp1, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     1150                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     1151                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     1152                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     1153                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     1154                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     1155                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     1156                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     1157                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
    11101158                BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, r1000_1fff_tmp3;
    1111                 BitBlock r1000_1fff_tmp4, byte_aa, byte_e1_adv, sequence_e1_aa;
    1112                 BitBlock r1000_1fff_tmp5, byte_range_b0_bf, sequence_e1_aa_adv;
    1113                 BitBlock r1000_1fff_tmp6, r1000_1fff_tmp7, r1000_1fff_tmp8, byte_ab;
    1114                 BitBlock sequence_e1_ab, byte_range_80_bf, sequence_e1_ab_adv, r1000_1fff_tmp9;
     1159                BitBlock r1000_1fff_tmp4, r1000_1fff_tmp5, r1000_1fff_tmp6, r1000_1fff_tmp7;
     1160                BitBlock r1000_1fff_tmp8, r1000_1fff_tmp9, r1000_1fff_tmp10, r1000_1fff_tmp11;
     1161                BitBlock byte_aa, byte_e1_adv, sequence_e1_aa, r1000_1fff_tmp12;
     1162                BitBlock byte_range_b0_bf, sequence_e1_aa_adv, r1000_1fff_tmp13;
     1163                BitBlock r1000_1fff_tmp14, r1000_1fff_tmp15, byte_ab, sequence_e1_ab;
     1164                BitBlock byte_range_80_bf, r1000_1fff_tmp16, sequence_e1_ab_adv;
     1165                BitBlock r1000_1fff_tmp17;
    11151166
    11161167
     
    11201171        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    11211172        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
    1122           r80_10ffff_tmp1 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
    1123           byte_range_e0_ef = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1173          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1174          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1175          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    11241176          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 4))) {
    1125             r800_ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1126             byte_range_e0_e3 = simd_andc(byte_range_e0_ef, r800_ffff_tmp1);
    1127             r800_ffff_tmp2 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1128             r800_ffff_tmp3 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1129             r800_ffff_tmp4 = simd_andc(r800_ffff_tmp2, r800_ffff_tmp3);
    1130             byte_e4 = simd_and(byte_range_e0_ef, r800_ffff_tmp4);
    1131             r800_ffff_tmp5 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1132             r800_ffff_tmp6 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
    1133             r800_ffff_tmp7 = simd_and(basis_bits.bit_2, r800_ffff_tmp6);
    1134             byte_range_80_b7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp7);
    1135             carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp8));
    1136             r800_ffff_tmp9 = simd_and(r800_ffff_tmp8, byte_range_80_b7);
    1137             r800_ffff_tmp10 = simd_or(byte_range_e0_e3, r800_ffff_tmp9);
    1138             if ((bitblock::any(r800_ffff_tmp10) || carryQ.CarryTest(1, 3))) {
    1139               r800_4dff_tmp1 = simd_or(r800_ffff_tmp1, basis_bits.bit_6);
    1140               byte_range_e0_e1 = simd_andc(byte_range_e0_ef, r800_4dff_tmp1);
     1177            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1178            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1179            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     1180            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1181            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     1182            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1183            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1184            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     1185            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     1186            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1187            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1188            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     1189            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     1190            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     1191            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     1192            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     1193            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 3))) {
     1194              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1195              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1196              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     1197              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1198              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     1199              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
    11411200              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 3))) {
    1142                 r800_1fff_tmp1 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
    1143                 r800_1fff_tmp2 = simd_andc(r800_1fff_tmp1, r800_ffff_tmp1);
    1144                 byte_e1 = simd_and(byte_range_e0_ef, r800_1fff_tmp2);
     1201                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1202                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1203                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     1204                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1205                r800_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     1206                r800_1fff_tmp6 = simd_andc(r800_1fff_tmp5, r800_1fff_tmp4);
     1207                byte_e1 = simd_and(r800_1fff_tmp3, r800_1fff_tmp6);
    11451208                if ((bitblock::any(byte_e1) || carryQ.CarryTest(1, 3))) {
    1146                   r1000_1fff_tmp1 = simd_and(r800_ffff_tmp5, r80_10ffff_tmp1);
    1147                   r1000_1fff_tmp2 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
    1148                   r1000_1fff_tmp3 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
    1149                   r1000_1fff_tmp4 = simd_and(r1000_1fff_tmp2, r1000_1fff_tmp3);
    1150                   byte_aa = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp4);
     1209                  r1000_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1210                  r1000_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1211                  r1000_1fff_tmp3 = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp2);
     1212                  r1000_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1213                  r1000_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     1214                  r1000_1fff_tmp6 = simd_andc(r1000_1fff_tmp5, r1000_1fff_tmp4);
     1215                  byte_e1 = simd_and(r1000_1fff_tmp3, r1000_1fff_tmp6);
     1216                  r1000_1fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1217                  r1000_1fff_tmp8 = simd_and(r1000_1fff_tmp7, r1000_1fff_tmp2);
     1218                  r1000_1fff_tmp9 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     1219                  r1000_1fff_tmp10 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     1220                  r1000_1fff_tmp11 = simd_and(r1000_1fff_tmp9, r1000_1fff_tmp10);
     1221                  byte_aa = simd_and(r1000_1fff_tmp8, r1000_1fff_tmp11);
    11511222                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e1, carryQ.get_carry_in(1), byte_e1_adv));
    11521223                  sequence_e1_aa = simd_and(byte_e1_adv, byte_aa);
    1153                   r1000_1fff_tmp5 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
    1154                   byte_range_b0_bf = simd_and(r800_ffff_tmp5, r1000_1fff_tmp5);
     1224                  r1000_1fff_tmp12 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1225                  byte_range_b0_bf = simd_and(r1000_1fff_tmp7, r1000_1fff_tmp12);
    11551226                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_e1_aa, carryQ.get_carry_in(2), sequence_e1_aa_adv));
    1156                   r1000_1fff_tmp6 = simd_and(sequence_e1_aa_adv, byte_range_b0_bf);
    1157                   struct_blk_Diacriticals_Ext.cc = simd_or(struct_blk_Diacriticals_Ext.cc, r1000_1fff_tmp6);
    1158                   r1000_1fff_tmp7 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
    1159                   r1000_1fff_tmp8 = simd_and(r1000_1fff_tmp2, r1000_1fff_tmp7);
    1160                   byte_ab = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp8);
     1227                  r1000_1fff_tmp13 = simd_and(sequence_e1_aa_adv, byte_range_b0_bf);
     1228                  struct_blk_Diacriticals_Ext.cc = simd_or(struct_blk_Diacriticals_Ext.cc, r1000_1fff_tmp13);
     1229                  r1000_1fff_tmp14 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1230                  r1000_1fff_tmp15 = simd_and(r1000_1fff_tmp9, r1000_1fff_tmp14);
     1231                  byte_ab = simd_and(r1000_1fff_tmp8, r1000_1fff_tmp15);
    11611232                  sequence_e1_ab = simd_and(byte_e1_adv, byte_ab);
    1162                   byte_range_80_bf = r800_ffff_tmp5;
     1233                  byte_range_80_bf = r1000_1fff_tmp7;
     1234                  r1000_1fff_tmp16 = simd_and(byte_range_80_bf, r1000_1fff_tmp2);
    11631235                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_e1_ab, carryQ.get_carry_in(3), sequence_e1_ab_adv));
    1164                   r1000_1fff_tmp9 = simd_and(sequence_e1_ab_adv, byte_range_80_bf);
    1165                   struct_blk_Diacriticals_Ext.cc = simd_or(struct_blk_Diacriticals_Ext.cc, r1000_1fff_tmp9);
     1236                  r1000_1fff_tmp17 = simd_and(sequence_e1_ab_adv, byte_range_80_bf);
     1237                  struct_blk_Diacriticals_Ext.cc = simd_or(struct_blk_Diacriticals_Ext.cc, r1000_1fff_tmp17);
    11661238                }
    11671239                else {
     
    11961268 }
    11971269  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Siddham & struct_blk_Siddham) {
    1198                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_f0_ff;
    1199                 BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3, byte_f0;
    1200                 BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6;
    1201                 BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, byte_91, byte_f0_adv;
    1202                 BitBlock sequence_f0_91, r10000_10ffff_tmp9, r10000_10ffff_tmp10;
     1270                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     1271                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     1272                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     1273                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     1274                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_91, byte_f0_adv;
     1275                BitBlock sequence_f0_91, r10000_10ffff_tmp12, r10000_10ffff_tmp13;
    12031276                BitBlock byte_range_96_97, sequence_f0_91_adv, sequence_f0_91_byte_range_96_97;
    12041277                BitBlock byte_range_80_bf, sequence_f0_91_byte_range_96_97_adv;
    1205                 BitBlock sequence_f0_91_byte_range_96_97_sfx;
     1278                BitBlock sequence_f0_91_96_80;
    12061279
    12071280
     
    12111284        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    12121285        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
    1213           r80_10ffff_tmp1 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
    1214           byte_range_f0_ff = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1286          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1287          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1288          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    12151289          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
    1216             r10000_10ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1217             r10000_10ffff_tmp2 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1218             r10000_10ffff_tmp3 = simd_or(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
    1219             byte_f0 = simd_andc(byte_range_f0_ff, r10000_10ffff_tmp3);
    1220             r10000_10ffff_tmp4 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1221             r10000_10ffff_tmp5 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
    1222             r10000_10ffff_tmp6 = simd_and(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
    1223             r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
    1224             r10000_10ffff_tmp8 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp1);
    1225             byte_91 = simd_and(r10000_10ffff_tmp6, r10000_10ffff_tmp8);
     1290            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1291            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1292            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     1293            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1294            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1295            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     1296            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     1297            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1298            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     1299            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     1300            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     1301            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp4);
     1302            byte_91 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
    12261303            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
    12271304            sequence_f0_91 = simd_and(byte_f0_adv, byte_91);
    1228             r10000_10ffff_tmp9 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1229             r10000_10ffff_tmp10 = simd_and(r10000_10ffff_tmp9, basis_bits.bit_6);
    1230             byte_range_96_97 = simd_and(r10000_10ffff_tmp6, r10000_10ffff_tmp10);
     1305            r10000_10ffff_tmp12 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1306            r10000_10ffff_tmp13 = simd_and(r10000_10ffff_tmp12, basis_bits.bit_6);
     1307            byte_range_96_97 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp13);
    12311308            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_91, carryQ.get_carry_in(1), sequence_f0_91_adv));
    12321309            sequence_f0_91_byte_range_96_97 = simd_and(sequence_f0_91_adv, byte_range_96_97);
    1233             byte_range_80_bf = r10000_10ffff_tmp4;
     1310            byte_range_80_bf = r10000_10ffff_tmp7;
    12341311            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_91_byte_range_96_97, carryQ.get_carry_in(2), sequence_f0_91_byte_range_96_97_adv));
    1235             sequence_f0_91_byte_range_96_97_sfx = simd_and(sequence_f0_91_byte_range_96_97_adv, byte_range_80_bf);
    1236             struct_blk_Siddham.cc = simd_or(struct_blk_Siddham.cc, sequence_f0_91_byte_range_96_97_sfx);
     1312            sequence_f0_91_96_80 = simd_and(sequence_f0_91_byte_range_96_97_adv, byte_range_80_bf);
     1313            struct_blk_Siddham.cc = simd_or(struct_blk_Siddham.cc, sequence_f0_91_96_80);
    12371314          }
    12381315          else {
     
    12551332 }
    12561333  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Ol_Chiki & struct_blk_Ol_Chiki) {
    1257                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_e0_ef, r800_ffff_tmp1;
    1258                 BitBlock byte_range_e0_e3, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
    1259                 BitBlock byte_e4, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
    1260                 BitBlock byte_range_80_b7, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
    1261                 BitBlock r800_4dff_tmp1, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
    1262                 BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, byte_b1, byte_e1_adv;
    1263                 BitBlock sequence_e1_b1, r1000_1fff_tmp3, byte_range_90_bf, sequence_e1_b1_adv;
    1264                 BitBlock r1000_1fff_tmp4;
     1334                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     1335                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     1336                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     1337                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     1338                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     1339                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     1340                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     1341                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
     1342                BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, r1000_1fff_tmp3;
     1343                BitBlock r1000_1fff_tmp4, r1000_1fff_tmp5, r1000_1fff_tmp6, r1000_1fff_tmp7;
     1344                BitBlock r1000_1fff_tmp8, r1000_1fff_tmp9, byte_b1, byte_e1_adv;
     1345                BitBlock sequence_e1_b1, r1000_1fff_tmp10, byte_range_90_bf;
     1346                BitBlock sequence_e1_b1_adv, r1000_1fff_tmp11;
    12651347
    12661348
     
    12701352        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    12711353        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
    1272           r80_10ffff_tmp1 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
    1273           byte_range_e0_ef = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1354          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1355          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1356          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    12741357          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
    1275             r800_ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1276             byte_range_e0_e3 = simd_andc(byte_range_e0_ef, r800_ffff_tmp1);
    1277             r800_ffff_tmp2 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1278             r800_ffff_tmp3 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1279             r800_ffff_tmp4 = simd_andc(r800_ffff_tmp2, r800_ffff_tmp3);
    1280             byte_e4 = simd_and(byte_range_e0_ef, r800_ffff_tmp4);
    1281             r800_ffff_tmp5 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1282             r800_ffff_tmp6 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
    1283             r800_ffff_tmp7 = simd_and(basis_bits.bit_2, r800_ffff_tmp6);
    1284             byte_range_80_b7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp7);
    1285             carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp8));
    1286             r800_ffff_tmp9 = simd_and(r800_ffff_tmp8, byte_range_80_b7);
    1287             r800_ffff_tmp10 = simd_or(byte_range_e0_e3, r800_ffff_tmp9);
    1288             if ((bitblock::any(r800_ffff_tmp10) || carryQ.CarryTest(1, 2))) {
    1289               r800_4dff_tmp1 = simd_or(r800_ffff_tmp1, basis_bits.bit_6);
    1290               byte_range_e0_e1 = simd_andc(byte_range_e0_ef, r800_4dff_tmp1);
     1358            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1359            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1360            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     1361            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1362            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     1363            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1364            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1365            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     1366            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     1367            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1368            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1369            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     1370            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     1371            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     1372            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     1373            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     1374            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 2))) {
     1375              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1376              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1377              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     1378              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1379              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     1380              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
    12911381              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 2))) {
    1292                 r800_1fff_tmp1 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
    1293                 r800_1fff_tmp2 = simd_andc(r800_1fff_tmp1, r800_ffff_tmp1);
    1294                 byte_e1 = simd_and(byte_range_e0_ef, r800_1fff_tmp2);
     1382                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1383                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1384                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     1385                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1386                r800_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     1387                r800_1fff_tmp6 = simd_andc(r800_1fff_tmp5, r800_1fff_tmp4);
     1388                byte_e1 = simd_and(r800_1fff_tmp3, r800_1fff_tmp6);
    12951389                if ((bitblock::any(byte_e1) || carryQ.CarryTest(1, 2))) {
    1296                   r1000_1fff_tmp1 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
    1297                   r1000_1fff_tmp2 = simd_and(r800_ffff_tmp5, r1000_1fff_tmp1);
    1298                   byte_b1 = simd_and(r1000_1fff_tmp2, r800_1fff_tmp2);
     1390                  r1000_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1391                  r1000_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1392                  r1000_1fff_tmp3 = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp2);
     1393                  r1000_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1394                  r1000_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     1395                  r1000_1fff_tmp6 = simd_andc(r1000_1fff_tmp5, r1000_1fff_tmp4);
     1396                  byte_e1 = simd_and(r1000_1fff_tmp3, r1000_1fff_tmp6);
     1397                  r1000_1fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1398                  r1000_1fff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1399                  r1000_1fff_tmp9 = simd_and(r1000_1fff_tmp7, r1000_1fff_tmp8);
     1400                  byte_b1 = simd_and(r1000_1fff_tmp9, r1000_1fff_tmp6);
    12991401                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e1, carryQ.get_carry_in(1), byte_e1_adv));
    13001402                  sequence_e1_b1 = simd_and(byte_e1_adv, byte_b1);
    1301                   r1000_1fff_tmp3 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
    1302                   byte_range_90_bf = simd_and(r800_ffff_tmp5, r1000_1fff_tmp3);
     1403                  r1000_1fff_tmp10 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     1404                  byte_range_90_bf = simd_and(r1000_1fff_tmp7, r1000_1fff_tmp10);
    13031405                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_e1_b1, carryQ.get_carry_in(2), sequence_e1_b1_adv));
    1304                   r1000_1fff_tmp4 = simd_and(sequence_e1_b1_adv, byte_range_90_bf);
    1305                   struct_blk_Ol_Chiki.cc = simd_or(struct_blk_Ol_Chiki.cc, r1000_1fff_tmp4);
     1406                  r1000_1fff_tmp11 = simd_and(sequence_e1_b1_adv, byte_range_90_bf);
     1407                  struct_blk_Ol_Chiki.cc = simd_or(struct_blk_Ol_Chiki.cc, r1000_1fff_tmp11);
    13061408                }
    13071409                else {
     
    13361438 }
    13371439  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Phaistos & struct_blk_Phaistos) {
    1338                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_f0_ff;
    1339                 BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3, byte_f0;
    1340                 BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_90;
    1341                 BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp7, r10000_10ffff_tmp8;
    1342                 BitBlock r10000_10ffff_tmp9, r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_87;
    1343                 BitBlock sequence_f0_90_adv, sequence_f0_90_87, byte_range_90_bf;
    1344                 BitBlock sequence_f0_90_87_adv, r10000_10ffff_tmp12;
     1440                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     1441                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     1442                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     1443                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_90;
     1444                BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
     1445                BitBlock r10000_10ffff_tmp12, r10000_10ffff_tmp13, r10000_10ffff_tmp14;
     1446                BitBlock byte_87, sequence_f0_90_adv, sequence_f0_90_87, byte_range_90_bf;
     1447                BitBlock sequence_f0_90_87_adv, r10000_10ffff_tmp15;
    13451448
    13461449
     
    13501453        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    13511454        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
    1352           r80_10ffff_tmp1 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
    1353           byte_range_f0_ff = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1455          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1456          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1457          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    13541458          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
    1355             r10000_10ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1356             r10000_10ffff_tmp2 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1357             r10000_10ffff_tmp3 = simd_or(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
    1358             byte_f0 = simd_andc(byte_range_f0_ff, r10000_10ffff_tmp3);
    1359             r10000_10ffff_tmp4 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1360             r10000_10ffff_tmp5 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
    1361             r10000_10ffff_tmp6 = simd_and(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
    1362             byte_90 = simd_andc(r10000_10ffff_tmp6, r10000_10ffff_tmp3);
     1459            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1460            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1461            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     1462            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1463            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1464            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     1465            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     1466            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1467            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     1468            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     1469            byte_90 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
    13631470            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
    13641471            sequence_f0_90 = simd_and(byte_f0_adv, byte_90);
    1365             r10000_10ffff_tmp7 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
    1366             r10000_10ffff_tmp8 = simd_andc(r10000_10ffff_tmp4, r10000_10ffff_tmp7);
    1367             r10000_10ffff_tmp9 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1368             r10000_10ffff_tmp10 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
    1369             r10000_10ffff_tmp11 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp10);
    1370             byte_87 = simd_and(r10000_10ffff_tmp8, r10000_10ffff_tmp11);
     1472            r10000_10ffff_tmp10 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     1473            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
     1474            r10000_10ffff_tmp12 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1475            r10000_10ffff_tmp13 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1476            r10000_10ffff_tmp14 = simd_and(r10000_10ffff_tmp12, r10000_10ffff_tmp13);
     1477            byte_87 = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp14);
    13711478            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_90, carryQ.get_carry_in(1), sequence_f0_90_adv));
    13721479            sequence_f0_90_87 = simd_and(sequence_f0_90_adv, byte_87);
    1373             byte_range_90_bf = simd_and(r10000_10ffff_tmp4, r10000_10ffff_tmp7);
     1480            byte_range_90_bf = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
    13741481            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_90_87, carryQ.get_carry_in(2), sequence_f0_90_87_adv));
    1375             r10000_10ffff_tmp12 = simd_and(sequence_f0_90_87_adv, byte_range_90_bf);
    1376             struct_blk_Phaistos.cc = simd_or(struct_blk_Phaistos.cc, r10000_10ffff_tmp12);
     1482            r10000_10ffff_tmp15 = simd_and(sequence_f0_90_87_adv, byte_range_90_bf);
     1483            struct_blk_Phaistos.cc = simd_or(struct_blk_Phaistos.cc, r10000_10ffff_tmp15);
    13771484          }
    13781485          else {
     
    13951502 }
    13961503  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Enclosed_Alphanum_Sup & struct_blk_Enclosed_Alphanum_Sup) {
    1397                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_f0_ff;
    1398                 BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3, byte_f0;
    1399                 BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6;
    1400                 BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_9f;
    1401                 BitBlock byte_f0_adv, sequence_f0_9f, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
    1402                 BitBlock r10000_10ffff_tmp12, byte_range_84_87, sequence_f0_9f_adv;
    1403                 BitBlock sequence_f0_9f_byte_range_84_87, byte_range_80_bf;
    1404                 BitBlock sequence_f0_9f_byte_range_84_87_adv;
    1405                 BitBlock sequence_f0_9f_byte_range_84_87_sfx;
     1504                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     1505                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     1506                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     1507                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     1508                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     1509                BitBlock byte_9f, byte_f0_adv, sequence_f0_9f, r10000_10ffff_tmp13;
     1510                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, byte_range_84_87;
     1511                BitBlock sequence_f0_9f_adv, sequence_f0_9f_byte_range_84_87, byte_range_80_bf;
     1512                BitBlock sequence_f0_9f_byte_range_84_87_adv, sequence_f0_9f_84_80;
    14061513
    14071514
     
    14111518        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    14121519        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
    1413           r80_10ffff_tmp1 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
    1414           byte_range_f0_ff = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1520          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1521          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1522          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    14151523          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
    1416             r10000_10ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1417             r10000_10ffff_tmp2 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1418             r10000_10ffff_tmp3 = simd_or(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
    1419             byte_f0 = simd_andc(byte_range_f0_ff, r10000_10ffff_tmp3);
    1420             r10000_10ffff_tmp4 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1421             r10000_10ffff_tmp5 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
    1422             r10000_10ffff_tmp6 = simd_and(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
    1423             r10000_10ffff_tmp7 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
    1424             r10000_10ffff_tmp8 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1524            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1525            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1526            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     1527            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1528            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1529            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     1530            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     1531            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1532            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
    14251533            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
    1426             byte_9f = simd_and(r10000_10ffff_tmp6, r10000_10ffff_tmp9);
     1534            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     1535            r10000_10ffff_tmp11 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1536            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     1537            byte_9f = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
    14271538            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
    14281539            sequence_f0_9f = simd_and(byte_f0_adv, byte_9f);
    1429             r10000_10ffff_tmp10 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
    1430             r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp4, r10000_10ffff_tmp10);
    1431             r10000_10ffff_tmp12 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1432             byte_range_84_87 = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp12);
     1540            r10000_10ffff_tmp13 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     1541            r10000_10ffff_tmp14 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp13);
     1542            r10000_10ffff_tmp15 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1543            byte_range_84_87 = simd_and(r10000_10ffff_tmp14, r10000_10ffff_tmp15);
    14331544            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9f, carryQ.get_carry_in(1), sequence_f0_9f_adv));
    14341545            sequence_f0_9f_byte_range_84_87 = simd_and(sequence_f0_9f_adv, byte_range_84_87);
    1435             byte_range_80_bf = r10000_10ffff_tmp4;
     1546            byte_range_80_bf = r10000_10ffff_tmp7;
    14361547            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9f_byte_range_84_87, carryQ.get_carry_in(2), sequence_f0_9f_byte_range_84_87_adv));
    1437             sequence_f0_9f_byte_range_84_87_sfx = simd_and(sequence_f0_9f_byte_range_84_87_adv, byte_range_80_bf);
    1438             struct_blk_Enclosed_Alphanum_Sup.cc = simd_or(struct_blk_Enclosed_Alphanum_Sup.cc, sequence_f0_9f_byte_range_84_87_sfx);
     1548            sequence_f0_9f_84_80 = simd_and(sequence_f0_9f_byte_range_84_87_adv, byte_range_80_bf);
     1549            struct_blk_Enclosed_Alphanum_Sup.cc = simd_or(struct_blk_Enclosed_Alphanum_Sup.cc, sequence_f0_9f_84_80);
    14391550          }
    14401551          else {
     
    14571568 }
    14581569  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Yi_Syllables & struct_blk_Yi_Syllables) {
    1459                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_e0_ef, r800_ffff_tmp1;
    1460                 BitBlock r800_ffff_tmp2, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
    1461                 BitBlock ra000_ffff_tmp3, byte_ea, ra000_ffff_tmp4, ra000_ffff_tmp5;
    1462                 BitBlock ra000_ffff_tmp6, ra000_ffff_tmp7, ra000_ffff_tmp8, byte_range_80_91;
    1463                 BitBlock byte_ea_adv, byte_ea_byte_range_80_91, byte_range_80_bf;
    1464                 BitBlock byte_ea_byte_range_80_91_adv, byte_ea_byte_range_80_91_sfx;
    1465                 BitBlock ra000_ffff_tmp9, ra000_ffff_tmp10, ra000_ffff_tmp11, byte_92;
    1466                 BitBlock sequence_ea_92, ra000_ffff_tmp12, byte_range_80_8f;
    1467                 BitBlock sequence_ea_92_adv, ra000_ffff_tmp13;
     1570                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     1571                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     1572                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     1573                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     1574                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     1575                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, byte_range_80_91, byte_ea_adv;
     1576                BitBlock byte_ea_byte_range_80_91, byte_range_80_bf;
     1577                BitBlock byte_ea_byte_range_80_91_adv, sequence_ea_80_80, ra000_ffff_tmp12;
     1578                BitBlock ra000_ffff_tmp13, ra000_ffff_tmp14, byte_92, sequence_ea_92;
     1579                BitBlock ra000_ffff_tmp15, byte_range_80_8f, sequence_ea_92_adv;
     1580                BitBlock ra000_ffff_tmp16;
    14681581
    14691582
     
    14731586        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    14741587        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
    1475           r80_10ffff_tmp1 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
    1476           byte_range_e0_ef = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1588          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1589          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1590          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    14771591          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
    1478             r800_ffff_tmp1 = simd_and(byte_range_e0_ef, basis_bits.bit_4);
    1479             r800_ffff_tmp2 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
    1480             byte_range_ea_ef = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     1592            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1593            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1594            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     1595            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     1596            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     1597            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
    14811598            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 3))) {
    1482               ra000_ffff_tmp1 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
    1483               ra000_ffff_tmp2 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     1599              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1600              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
    14841601              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
    1485               byte_ea = simd_and(byte_range_e0_ef, ra000_ffff_tmp3);
    1486               ra000_ffff_tmp4 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1487               ra000_ffff_tmp5 = simd_andc(ra000_ffff_tmp4, basis_bits.bit_2);
    1488               ra000_ffff_tmp6 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1489               ra000_ffff_tmp7 = simd_or(ra000_ffff_tmp6, basis_bits.bit_6);
    1490               ra000_ffff_tmp8 = simd_and(basis_bits.bit_3, ra000_ffff_tmp7);
    1491               byte_range_80_91 = simd_andc(ra000_ffff_tmp5, ra000_ffff_tmp8);
     1602              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     1603              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     1604              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     1605              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     1606              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1607              ra000_ffff_tmp8 = simd_andc(ra000_ffff_tmp7, basis_bits.bit_2);
     1608              ra000_ffff_tmp9 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1609              ra000_ffff_tmp10 = simd_or(ra000_ffff_tmp9, basis_bits.bit_6);
     1610              ra000_ffff_tmp11 = simd_and(basis_bits.bit_3, ra000_ffff_tmp10);
     1611              byte_range_80_91 = simd_andc(ra000_ffff_tmp8, ra000_ffff_tmp11);
    14921612              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
    14931613              byte_ea_byte_range_80_91 = simd_and(byte_ea_adv, byte_range_80_91);
    1494               byte_range_80_bf = ra000_ffff_tmp4;
     1614              byte_range_80_bf = ra000_ffff_tmp7;
    14951615              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_ea_byte_range_80_91, carryQ.get_carry_in(1), byte_ea_byte_range_80_91_adv));
    1496               byte_ea_byte_range_80_91_sfx = simd_and(byte_ea_byte_range_80_91_adv, byte_range_80_bf);
    1497               struct_blk_Yi_Syllables.cc = simd_or(struct_blk_Yi_Syllables.cc, byte_ea_byte_range_80_91_sfx);
    1498               ra000_ffff_tmp9 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
    1499               ra000_ffff_tmp10 = simd_and(byte_range_80_bf, ra000_ffff_tmp9);
    1500               ra000_ffff_tmp11 = simd_andc(ra000_ffff_tmp2, ra000_ffff_tmp6);
    1501               byte_92 = simd_and(ra000_ffff_tmp10, ra000_ffff_tmp11);
     1616              sequence_ea_80_80 = simd_and(byte_ea_byte_range_80_91_adv, byte_range_80_bf);
     1617              struct_blk_Yi_Syllables.cc = simd_or(struct_blk_Yi_Syllables.cc, sequence_ea_80_80);
     1618              ra000_ffff_tmp12 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     1619              ra000_ffff_tmp13 = simd_and(byte_range_80_bf, ra000_ffff_tmp12);
     1620              ra000_ffff_tmp14 = simd_andc(ra000_ffff_tmp5, ra000_ffff_tmp9);
     1621              byte_92 = simd_and(ra000_ffff_tmp13, ra000_ffff_tmp14);
    15021622              sequence_ea_92 = simd_and(byte_ea_adv, byte_92);
    1503               ra000_ffff_tmp12 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
    1504               byte_range_80_8f = simd_andc(byte_range_80_bf, ra000_ffff_tmp12);
     1623              ra000_ffff_tmp15 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     1624              byte_range_80_8f = simd_andc(byte_range_80_bf, ra000_ffff_tmp15);
    15051625              carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_ea_92, carryQ.get_carry_in(2), sequence_ea_92_adv));
    1506               ra000_ffff_tmp13 = simd_and(sequence_ea_92_adv, byte_range_80_8f);
    1507               struct_blk_Yi_Syllables.cc = simd_or(struct_blk_Yi_Syllables.cc, ra000_ffff_tmp13);
     1626              ra000_ffff_tmp16 = simd_and(sequence_ea_92_adv, byte_range_80_8f);
     1627              struct_blk_Yi_Syllables.cc = simd_or(struct_blk_Yi_Syllables.cc, ra000_ffff_tmp16);
    15081628            }
    15091629            else {
     
    15301650 }
    15311651  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Myanmar & struct_blk_Myanmar) {
    1532                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_e0_ef, r800_ffff_tmp1;
    1533                 BitBlock byte_range_e0_e3, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
    1534                 BitBlock byte_e4, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
    1535                 BitBlock byte_range_80_b7, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
    1536                 BitBlock r800_4dff_tmp1, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
    1537                 BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, byte_range_80_81;
     1652                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     1653                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     1654                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     1655                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     1656                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     1657                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     1658                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     1659                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
     1660                BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, r1000_1fff_tmp3;
     1661                BitBlock r1000_1fff_tmp4, r1000_1fff_tmp5, r1000_1fff_tmp6, r1000_1fff_tmp7;
     1662                BitBlock r1000_1fff_tmp8, r1000_1fff_tmp9, r1000_1fff_tmp10, byte_range_80_81;
    15381663                BitBlock byte_e1_adv, byte_e1_byte_range_80_81, byte_range_80_bf;
    1539                 BitBlock byte_e1_byte_range_80_81_adv, byte_e1_byte_range_80_81_sfx;
    1540                 BitBlock r1000_1fff_tmp3, r1000_1fff_tmp4, r1000_1fff_tmp5, byte_82;
    1541                 BitBlock sequence_e1_82, byte_range_80_9f, sequence_e1_82_adv, r1000_1fff_tmp6;
     1664                BitBlock byte_e1_byte_range_80_81_adv, sequence_e1_80_80, r1000_1fff_tmp11;
     1665                BitBlock r1000_1fff_tmp12, r1000_1fff_tmp13, byte_82, sequence_e1_82;
     1666                BitBlock byte_range_80_9f, sequence_e1_82_adv, r1000_1fff_tmp14;
    15421667
    15431668
     
    15471672        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    15481673        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
    1549           r80_10ffff_tmp1 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
    1550           byte_range_e0_ef = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     1674          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1675          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1676          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    15511677          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 4))) {
    1552             r800_ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1553             byte_range_e0_e3 = simd_andc(byte_range_e0_ef, r800_ffff_tmp1);
    1554             r800_ffff_tmp2 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1555             r800_ffff_tmp3 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1556             r800_ffff_tmp4 = simd_andc(r800_ffff_tmp2, r800_ffff_tmp3);
    1557             byte_e4 = simd_and(byte_range_e0_ef, r800_ffff_tmp4);
    1558             r800_ffff_tmp5 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1559             r800_ffff_tmp6 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
    1560             r800_ffff_tmp7 = simd_and(basis_bits.bit_2, r800_ffff_tmp6);
    1561             byte_range_80_b7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp7);
    1562             carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp8));
    1563             r800_ffff_tmp9 = simd_and(r800_ffff_tmp8, byte_range_80_b7);
    1564             r800_ffff_tmp10 = simd_or(byte_range_e0_e3, r800_ffff_tmp9);
    1565             if ((bitblock::any(r800_ffff_tmp10) || carryQ.CarryTest(1, 3))) {
    1566               r800_4dff_tmp1 = simd_or(r800_ffff_tmp1, basis_bits.bit_6);
    1567               byte_range_e0_e1 = simd_andc(byte_range_e0_ef, r800_4dff_tmp1);
     1678            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1679            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1680            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     1681            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1682            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     1683            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1684            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1685            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     1686            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     1687            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1688            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1689            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     1690            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     1691            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     1692            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     1693            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     1694            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 3))) {
     1695              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1696              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1697              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     1698              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1699              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     1700              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
    15681701              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 3))) {
    1569                 r800_1fff_tmp1 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
    1570                 r800_1fff_tmp2 = simd_andc(r800_1fff_tmp1, r800_ffff_tmp1);
    1571                 byte_e1 = simd_and(byte_range_e0_ef, r800_1fff_tmp2);
     1702                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1703                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1704                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     1705                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1706                r800_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     1707                r800_1fff_tmp6 = simd_andc(r800_1fff_tmp5, r800_1fff_tmp4);
     1708                byte_e1 = simd_and(r800_1fff_tmp3, r800_1fff_tmp6);
    15721709                if ((bitblock::any(byte_e1) || carryQ.CarryTest(1, 3))) {
    1573                   r1000_1fff_tmp1 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
    1574                   r1000_1fff_tmp2 = simd_andc(r800_ffff_tmp5, r1000_1fff_tmp1);
    1575                   byte_range_80_81 = simd_andc(r1000_1fff_tmp2, r800_4dff_tmp1);
     1710                  r1000_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1711                  r1000_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1712                  r1000_1fff_tmp3 = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp2);
     1713                  r1000_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1714                  r1000_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     1715                  r1000_1fff_tmp6 = simd_andc(r1000_1fff_tmp5, r1000_1fff_tmp4);
     1716                  byte_e1 = simd_and(r1000_1fff_tmp3, r1000_1fff_tmp6);
     1717                  r1000_1fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1718                  r1000_1fff_tmp8 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     1719                  r1000_1fff_tmp9 = simd_andc(r1000_1fff_tmp7, r1000_1fff_tmp8);
     1720                  r1000_1fff_tmp10 = simd_or(r1000_1fff_tmp4, basis_bits.bit_6);
     1721                  byte_range_80_81 = simd_andc(r1000_1fff_tmp9, r1000_1fff_tmp10);
    15761722                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e1, carryQ.get_carry_in(1), byte_e1_adv));
    15771723                  byte_e1_byte_range_80_81 = simd_and(byte_e1_adv, byte_range_80_81);
    1578                   byte_range_80_bf = r800_ffff_tmp5;
     1724                  byte_range_80_bf = r1000_1fff_tmp7;
    15791725                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e1_byte_range_80_81, carryQ.get_carry_in(2), byte_e1_byte_range_80_81_adv));
    1580                   byte_e1_byte_range_80_81_sfx = simd_and(byte_e1_byte_range_80_81_adv, byte_range_80_bf);
    1581                   struct_blk_Myanmar.cc = simd_or(struct_blk_Myanmar.cc, byte_e1_byte_range_80_81_sfx);
    1582                   r1000_1fff_tmp3 = simd_andc(byte_range_80_bf, r1000_1fff_tmp1);
    1583                   r1000_1fff_tmp4 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
    1584                   r1000_1fff_tmp5 = simd_andc(r1000_1fff_tmp4, r800_ffff_tmp1);
    1585                   byte_82 = simd_and(r1000_1fff_tmp3, r1000_1fff_tmp5);
     1726                  sequence_e1_80_80 = simd_and(byte_e1_byte_range_80_81_adv, byte_range_80_bf);
     1727                  struct_blk_Myanmar.cc = simd_or(struct_blk_Myanmar.cc, sequence_e1_80_80);
     1728                  r1000_1fff_tmp11 = simd_andc(byte_range_80_bf, r1000_1fff_tmp8);
     1729                  r1000_1fff_tmp12 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     1730                  r1000_1fff_tmp13 = simd_andc(r1000_1fff_tmp12, r1000_1fff_tmp4);
     1731                  byte_82 = simd_and(r1000_1fff_tmp11, r1000_1fff_tmp13);
    15861732                  sequence_e1_82 = simd_and(byte_e1_adv, byte_82);
    15871733                  byte_range_80_9f = simd_andc(byte_range_80_bf, basis_bits.bit_2);
    15881734                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_e1_82, carryQ.get_carry_in(3), sequence_e1_82_adv));
    1589                   r1000_1fff_tmp6 = simd_and(sequence_e1_82_adv, byte_range_80_9f);
    1590                   struct_blk_Myanmar.cc = simd_or(struct_blk_Myanmar.cc, r1000_1fff_tmp6);
     1735                  r1000_1fff_tmp14 = simd_and(sequence_e1_82_adv, byte_range_80_9f);
     1736                  struct_blk_Myanmar.cc = simd_or(struct_blk_Myanmar.cc, r1000_1fff_tmp14);
    15911737                }
    15921738                else {
     
    16211767 }
    16221768  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_CJK_Compat & struct_blk_CJK_Compat) {
    1623                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_e0_ef, r800_ffff_tmp1;
    1624                 BitBlock byte_range_e0_e3, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
    1625                 BitBlock byte_e4, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
    1626                 BitBlock byte_range_80_b7, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
    1627                 BitBlock r800_4dff_tmp1, byte_range_e2_e3, r800_4dff_tmp2, r2000_4dff_tmp1;
    1628                 BitBlock r2000_4dff_tmp2, byte_e3, r2000_4dff_tmp3, r3000_4dff_tmp1;
    1629                 BitBlock r3000_4dff_tmp2, r3000_4dff_tmp3, byte_range_8c_8f, byte_e3_adv;
     1769                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     1770                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     1771                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     1772                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     1773                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     1774                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     1775                BitBlock r800_4dff_tmp5, byte_range_e2_e3, r800_4dff_tmp6, r800_4dff_tmp7;
     1776                BitBlock r800_4dff_tmp8, r800_4dff_tmp9, r800_4dff_tmp10, r800_4dff_tmp11;
     1777                BitBlock r800_4dff_tmp12, r800_4dff_tmp13, r800_4dff_tmp14, r2000_4dff_tmp1;
     1778                BitBlock r2000_4dff_tmp2, r2000_4dff_tmp3, r2000_4dff_tmp4, r2000_4dff_tmp5;
     1779                BitBlock r2000_4dff_tmp6, byte_e3, r2000_4dff_tmp7, r2000_4dff_tmp8;
     1780                BitBlock r2000_4dff_tmp9, r2000_4dff_tmp10, r2000_4dff_tmp11, r2000_4dff_tmp12;
     1781                BitBlock r2000_4dff_tmp13, r2000_4dff_tmp14, r2000_4dff_tmp15, r3000_4dff_tmp1;
     1782                BitBlock r3000_4dff_tmp2, r3000_4dff_tmp3, r3000_4dff_tmp4, r3000_4dff_tmp5;
     1783                BitBlock r3000_4dff_tmp6, r3000_4dff_tmp7, r3000_4dff_tmp8, r3000_4dff_tmp9;
     1784                BitBlock r3000_4dff_tmp10, byte_range_8c_8f, byte_e3_adv;
    16301785                BitBlock byte_e3_byte_range_8c_8f, byte_range_80_bf;
    1631                 BitBlock byte_e3_byte_range_8c_8f_adv, byte_e3_byte_range_8c_8f_sfx;
     1786                BitBlock byte_e3_byte_range_8c_8f_adv, sequence_e3_8c_80;
    16321787
    16331788
     
    16361791        struct_blk_CJK_Compat.cc = simd<1>::constant<0>();
    16371792        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1793        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 5))) {
     1794          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1795          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1796          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     1797          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 5))) {
     1798            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1799            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1800            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     1801            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1802            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     1803            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1804            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1805            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     1806            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     1807            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1808            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1809            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     1810            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     1811            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     1812            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     1813            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     1814            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 4))) {
     1815              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1816              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1817              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     1818              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1819              r800_4dff_tmp5 = simd_andc(basis_bits.bit_6, r800_4dff_tmp4);
     1820              byte_range_e2_e3 = simd_and(r800_4dff_tmp3, r800_4dff_tmp5);
     1821              r800_4dff_tmp6 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1822              r800_4dff_tmp7 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1823              r800_4dff_tmp8 = simd_andc(r800_4dff_tmp6, r800_4dff_tmp7);
     1824              byte_e4 = simd_and(r800_4dff_tmp3, r800_4dff_tmp8);
     1825              r800_4dff_tmp9 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1826              r800_4dff_tmp10 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1827              r800_4dff_tmp11 = simd_and(basis_bits.bit_2, r800_4dff_tmp10);
     1828              byte_range_80_b7 = simd_andc(r800_4dff_tmp9, r800_4dff_tmp11);
     1829              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(1), r800_4dff_tmp12));
     1830              r800_4dff_tmp13 = simd_and(r800_4dff_tmp12, byte_range_80_b7);
     1831              r800_4dff_tmp14 = simd_or(byte_range_e2_e3, r800_4dff_tmp13);
     1832              if ((bitblock::any(r800_4dff_tmp14) || carryQ.CarryTest(2, 3))) {
     1833                r2000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1834                r2000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1835                r2000_4dff_tmp3 = simd_and(r2000_4dff_tmp1, r2000_4dff_tmp2);
     1836                r2000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1837                r2000_4dff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1838                r2000_4dff_tmp6 = simd_andc(r2000_4dff_tmp5, r2000_4dff_tmp4);
     1839                byte_e3 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp6);
     1840                r2000_4dff_tmp7 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1841                r2000_4dff_tmp8 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1842                r2000_4dff_tmp9 = simd_andc(r2000_4dff_tmp7, r2000_4dff_tmp8);
     1843                byte_e4 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp9);
     1844                r2000_4dff_tmp10 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1845                r2000_4dff_tmp11 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1846                r2000_4dff_tmp12 = simd_and(basis_bits.bit_2, r2000_4dff_tmp11);
     1847                byte_range_80_b7 = simd_andc(r2000_4dff_tmp10, r2000_4dff_tmp12);
     1848                carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(2), r2000_4dff_tmp13));
     1849                r2000_4dff_tmp14 = simd_and(r2000_4dff_tmp13, byte_range_80_b7);
     1850                r2000_4dff_tmp15 = simd_or(byte_e3, r2000_4dff_tmp14);
     1851                if ((bitblock::any(r2000_4dff_tmp15) || carryQ.CarryTest(3, 2))) {
     1852                  r3000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1853                  r3000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1854                  r3000_4dff_tmp3 = simd_and(r3000_4dff_tmp1, r3000_4dff_tmp2);
     1855                  r3000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1856                  r3000_4dff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1857                  r3000_4dff_tmp6 = simd_andc(r3000_4dff_tmp5, r3000_4dff_tmp4);
     1858                  byte_e3 = simd_and(r3000_4dff_tmp3, r3000_4dff_tmp6);
     1859                  r3000_4dff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1860                  r3000_4dff_tmp8 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     1861                  r3000_4dff_tmp9 = simd_andc(r3000_4dff_tmp7, r3000_4dff_tmp8);
     1862                  r3000_4dff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     1863                  byte_range_8c_8f = simd_and(r3000_4dff_tmp9, r3000_4dff_tmp10);
     1864                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(byte_e3, carryQ.get_carry_in(3), byte_e3_adv));
     1865                  byte_e3_byte_range_8c_8f = simd_and(byte_e3_adv, byte_range_8c_8f);
     1866                  byte_range_80_bf = r3000_4dff_tmp7;
     1867                  carryQ.cq[4] = carryout2carry(pablo_blk_Advance(byte_e3_byte_range_8c_8f, carryQ.get_carry_in(4), byte_e3_byte_range_8c_8f_adv));
     1868                  sequence_e3_8c_80 = simd_and(byte_e3_byte_range_8c_8f_adv, byte_range_80_bf);
     1869                  struct_blk_CJK_Compat.cc = simd_or(struct_blk_CJK_Compat.cc, sequence_e3_8c_80);
     1870                }
     1871                else {
     1872                  carryQ.CarryDequeueEnqueue(3, 2);
     1873                }
     1874              }
     1875              else {
     1876                carryQ.CarryDequeueEnqueue(2, 3);
     1877              }
     1878            }
     1879            else {
     1880              carryQ.CarryDequeueEnqueue(1, 4);
     1881            }
     1882          }
     1883          else {
     1884            carryQ.CarryDequeueEnqueue(0, 5);
     1885          }
     1886        }
     1887        else {
     1888          carryQ.CarryDequeueEnqueue(0, 5);
     1889        }
     1890        carryQ.CarryQ_Adjust(5);
     1891  }
     1892  IDISA_INLINE void clear() {
     1893 }
     1894 
     1895  CarryArray<5, 0> carryQ;
     1896  };
     1897
     1898  struct Property_blk_Kangxi {
     1899  Property_blk_Kangxi() {
     1900 }
     1901  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Kangxi & struct_blk_Kangxi) {
     1902                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     1903                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     1904                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     1905                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     1906                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     1907                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     1908                BitBlock r800_4dff_tmp5, byte_range_e2_e3, r800_4dff_tmp6, r800_4dff_tmp7;
     1909                BitBlock r800_4dff_tmp8, r800_4dff_tmp9, r800_4dff_tmp10, r800_4dff_tmp11;
     1910                BitBlock r800_4dff_tmp12, r800_4dff_tmp13, r800_4dff_tmp14, r2000_4dff_tmp1;
     1911                BitBlock r2000_4dff_tmp2, r2000_4dff_tmp3, r2000_4dff_tmp4, r2000_4dff_tmp5;
     1912                BitBlock r2000_4dff_tmp6, byte_e2, r2000_2fff_tmp1, r2000_2fff_tmp2;
     1913                BitBlock r2000_2fff_tmp3, r2000_2fff_tmp4, r2000_2fff_tmp5, r2000_2fff_tmp6;
     1914                BitBlock r2000_2fff_tmp7, r2000_2fff_tmp8, r2000_2fff_tmp9, r2000_2fff_tmp10;
     1915                BitBlock r2000_2fff_tmp11, r2000_2fff_tmp12, byte_range_bc_be, byte_e2_adv;
     1916                BitBlock byte_e2_byte_range_bc_be, byte_range_80_bf;
     1917                BitBlock byte_e2_byte_range_bc_be_adv, sequence_e2_bc_80, r2000_2fff_tmp13;
     1918                BitBlock r2000_2fff_tmp14, byte_bf, sequence_e2_bf, byte_range_80_9f;
     1919                BitBlock sequence_e2_bf_adv, r2000_2fff_tmp15;
     1920
     1921
     1922
     1923
     1924        struct_blk_Kangxi.cc = simd<1>::constant<0>();
     1925        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1926        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 5))) {
     1927          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1928          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1929          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     1930          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 5))) {
     1931            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1932            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1933            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     1934            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1935            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     1936            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1937            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1938            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     1939            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     1940            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1941            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1942            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     1943            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     1944            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     1945            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     1946            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     1947            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 4))) {
     1948              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1949              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1950              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     1951              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1952              r800_4dff_tmp5 = simd_andc(basis_bits.bit_6, r800_4dff_tmp4);
     1953              byte_range_e2_e3 = simd_and(r800_4dff_tmp3, r800_4dff_tmp5);
     1954              r800_4dff_tmp6 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     1955              r800_4dff_tmp7 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     1956              r800_4dff_tmp8 = simd_andc(r800_4dff_tmp6, r800_4dff_tmp7);
     1957              byte_e4 = simd_and(r800_4dff_tmp3, r800_4dff_tmp8);
     1958              r800_4dff_tmp9 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1959              r800_4dff_tmp10 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     1960              r800_4dff_tmp11 = simd_and(basis_bits.bit_2, r800_4dff_tmp10);
     1961              byte_range_80_b7 = simd_andc(r800_4dff_tmp9, r800_4dff_tmp11);
     1962              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(1), r800_4dff_tmp12));
     1963              r800_4dff_tmp13 = simd_and(r800_4dff_tmp12, byte_range_80_b7);
     1964              r800_4dff_tmp14 = simd_or(byte_range_e2_e3, r800_4dff_tmp13);
     1965              if ((bitblock::any(r800_4dff_tmp14) || carryQ.CarryTest(2, 3))) {
     1966                r2000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1967                r2000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1968                r2000_4dff_tmp3 = simd_and(r2000_4dff_tmp1, r2000_4dff_tmp2);
     1969                r2000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1970                r2000_4dff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     1971                r2000_4dff_tmp6 = simd_andc(r2000_4dff_tmp5, r2000_4dff_tmp4);
     1972                byte_e2 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp6);
     1973                if ((bitblock::any(byte_e2) || carryQ.CarryTest(2, 3))) {
     1974                  r2000_2fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     1975                  r2000_2fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     1976                  r2000_2fff_tmp3 = simd_and(r2000_2fff_tmp1, r2000_2fff_tmp2);
     1977                  r2000_2fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     1978                  r2000_2fff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     1979                  r2000_2fff_tmp6 = simd_andc(r2000_2fff_tmp5, r2000_2fff_tmp4);
     1980                  byte_e2 = simd_and(r2000_2fff_tmp3, r2000_2fff_tmp6);
     1981                  r2000_2fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     1982                  r2000_2fff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     1983                  r2000_2fff_tmp9 = simd_and(r2000_2fff_tmp7, r2000_2fff_tmp8);
     1984                  r2000_2fff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     1985                  r2000_2fff_tmp11 = simd_and(r2000_2fff_tmp9, r2000_2fff_tmp10);
     1986                  r2000_2fff_tmp12 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     1987                  byte_range_bc_be = simd_andc(r2000_2fff_tmp11, r2000_2fff_tmp12);
     1988                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e2, carryQ.get_carry_in(2), byte_e2_adv));
     1989                  byte_e2_byte_range_bc_be = simd_and(byte_e2_adv, byte_range_bc_be);
     1990                  byte_range_80_bf = r2000_2fff_tmp7;
     1991                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(byte_e2_byte_range_bc_be, carryQ.get_carry_in(3), byte_e2_byte_range_bc_be_adv));
     1992                  sequence_e2_bc_80 = simd_and(byte_e2_byte_range_bc_be_adv, byte_range_80_bf);
     1993                  struct_blk_Kangxi.cc = simd_or(struct_blk_Kangxi.cc, sequence_e2_bc_80);
     1994                  r2000_2fff_tmp13 = simd_and(byte_range_80_bf, r2000_2fff_tmp8);
     1995                  r2000_2fff_tmp14 = simd_and(r2000_2fff_tmp10, r2000_2fff_tmp12);
     1996                  byte_bf = simd_and(r2000_2fff_tmp13, r2000_2fff_tmp14);
     1997                  sequence_e2_bf = simd_and(byte_e2_adv, byte_bf);
     1998                  byte_range_80_9f = simd_andc(byte_range_80_bf, basis_bits.bit_2);
     1999                  carryQ.cq[4] = carryout2carry(pablo_blk_Advance(sequence_e2_bf, carryQ.get_carry_in(4), sequence_e2_bf_adv));
     2000                  r2000_2fff_tmp15 = simd_and(sequence_e2_bf_adv, byte_range_80_9f);
     2001                  struct_blk_Kangxi.cc = simd_or(struct_blk_Kangxi.cc, r2000_2fff_tmp15);
     2002                }
     2003                else {
     2004                  carryQ.CarryDequeueEnqueue(2, 3);
     2005                }
     2006              }
     2007              else {
     2008                carryQ.CarryDequeueEnqueue(2, 3);
     2009              }
     2010            }
     2011            else {
     2012              carryQ.CarryDequeueEnqueue(1, 4);
     2013            }
     2014          }
     2015          else {
     2016            carryQ.CarryDequeueEnqueue(0, 5);
     2017          }
     2018        }
     2019        else {
     2020          carryQ.CarryDequeueEnqueue(0, 5);
     2021        }
     2022        carryQ.CarryQ_Adjust(5);
     2023  }
     2024  IDISA_INLINE void clear() {
     2025 }
     2026 
     2027  CarryArray<5, 0> carryQ;
     2028  };
     2029
     2030  struct Property_blk_Latin_1_Sup {
     2031  Property_blk_Latin_1_Sup() {
     2032 }
     2033  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Latin_1_Sup & struct_blk_Latin_1_Sup) {
     2034                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_c0_df, r80_7ff_tmp1;
     2035                BitBlock r80_7ff_tmp2, r80_7ff_tmp3, r80_7ff_tmp4, r80_7ff_tmp5;
     2036                BitBlock byte_range_c2_c3, byte_range_80_bf, byte_range_c2_c3_adv;
     2037                BitBlock sequence_c2_80;
     2038
     2039
     2040
     2041
     2042        struct_blk_Latin_1_Sup.cc = simd<1>::constant<0>();
     2043        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2044        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 1))) {
     2045          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2046          byte_range_c0_df = simd_andc(r80_10ffff_tmp1, basis_bits.bit_2);
     2047          if ((bitblock::any(byte_range_c0_df) || carryQ.CarryTest(0, 1))) {
     2048            r80_7ff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2049            r80_7ff_tmp2 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     2050            r80_7ff_tmp3 = simd_andc(r80_7ff_tmp1, r80_7ff_tmp2);
     2051            r80_7ff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2052            r80_7ff_tmp5 = simd_andc(basis_bits.bit_6, r80_7ff_tmp4);
     2053            byte_range_c2_c3 = simd_and(r80_7ff_tmp3, r80_7ff_tmp5);
     2054            byte_range_80_bf = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2055            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_range_c2_c3, carryQ.get_carry_in(0), byte_range_c2_c3_adv));
     2056            sequence_c2_80 = simd_and(byte_range_c2_c3_adv, byte_range_80_bf);
     2057            struct_blk_Latin_1_Sup.cc = simd_or(struct_blk_Latin_1_Sup.cc, sequence_c2_80);
     2058          }
     2059          else {
     2060            carryQ.CarryDequeueEnqueue(0, 1);
     2061          }
     2062        }
     2063        else {
     2064          carryQ.CarryDequeueEnqueue(0, 1);
     2065        }
     2066        carryQ.CarryQ_Adjust(1);
     2067  }
     2068  IDISA_INLINE void clear() {
     2069 }
     2070 
     2071  CarryArray<1, 0> carryQ;
     2072  };
     2073
     2074  struct Property_blk_Sinhala {
     2075  Property_blk_Sinhala() {
     2076 }
     2077  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Sinhala & struct_blk_Sinhala) {
     2078                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     2079                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     2080                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     2081                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     2082                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     2083                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     2084                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     2085                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
     2086                BitBlock byte_e0, r800_fff_tmp1, r800_fff_tmp2, r800_fff_tmp3, r800_fff_tmp4;
     2087                BitBlock r800_fff_tmp5, r800_fff_tmp6, r800_fff_tmp7, r800_fff_tmp8;
     2088                BitBlock r800_fff_tmp9, r800_fff_tmp10, r800_fff_tmp11, byte_range_b6_b7;
     2089                BitBlock byte_e0_adv, byte_e0_byte_range_b6_b7, byte_range_80_bf;
     2090                BitBlock byte_e0_byte_range_b6_b7_adv, sequence_e0_b6_80;
     2091
     2092
     2093
     2094
     2095        struct_blk_Sinhala.cc = simd<1>::constant<0>();
     2096        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    16382097        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
    1639           r80_10ffff_tmp1 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
    1640           byte_range_e0_ef = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     2098          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2099          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2100          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    16412101          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
    1642             r800_ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1643             byte_range_e0_e3 = simd_andc(byte_range_e0_ef, r800_ffff_tmp1);
    1644             r800_ffff_tmp2 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1645             r800_ffff_tmp3 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1646             r800_ffff_tmp4 = simd_andc(r800_ffff_tmp2, r800_ffff_tmp3);
    1647             byte_e4 = simd_and(byte_range_e0_ef, r800_ffff_tmp4);
    1648             r800_ffff_tmp5 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1649             r800_ffff_tmp6 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
    1650             r800_ffff_tmp7 = simd_and(basis_bits.bit_2, r800_ffff_tmp6);
    1651             byte_range_80_b7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp7);
    1652             carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp8));
    1653             r800_ffff_tmp9 = simd_and(r800_ffff_tmp8, byte_range_80_b7);
    1654             r800_ffff_tmp10 = simd_or(byte_range_e0_e3, r800_ffff_tmp9);
    1655             if ((bitblock::any(r800_ffff_tmp10) || carryQ.CarryTest(1, 2))) {
    1656               r800_4dff_tmp1 = simd_andc(basis_bits.bit_6, r800_ffff_tmp1);
    1657               byte_range_e2_e3 = simd_and(byte_range_e0_ef, r800_4dff_tmp1);
    1658               r800_4dff_tmp2 = simd_or(byte_range_e2_e3, r800_ffff_tmp9);
    1659               if ((bitblock::any(r800_4dff_tmp2) || carryQ.CarryTest(1, 2))) {
    1660                 r2000_4dff_tmp1 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
    1661                 r2000_4dff_tmp2 = simd_andc(r2000_4dff_tmp1, r800_ffff_tmp1);
    1662                 byte_e3 = simd_and(byte_range_e0_ef, r2000_4dff_tmp2);
    1663                 r2000_4dff_tmp3 = simd_or(byte_e3, r800_ffff_tmp9);
    1664                 if ((bitblock::any(r2000_4dff_tmp3) || carryQ.CarryTest(1, 2))) {
    1665                   r3000_4dff_tmp1 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
    1666                   r3000_4dff_tmp2 = simd_andc(r800_ffff_tmp5, r3000_4dff_tmp1);
    1667                   r3000_4dff_tmp3 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
    1668                   byte_range_8c_8f = simd_and(r3000_4dff_tmp2, r3000_4dff_tmp3);
    1669                   carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e3, carryQ.get_carry_in(1), byte_e3_adv));
    1670                   byte_e3_byte_range_8c_8f = simd_and(byte_e3_adv, byte_range_8c_8f);
    1671                   byte_range_80_bf = r800_ffff_tmp5;
    1672                   carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e3_byte_range_8c_8f, carryQ.get_carry_in(2), byte_e3_byte_range_8c_8f_adv));
    1673                   byte_e3_byte_range_8c_8f_sfx = simd_and(byte_e3_byte_range_8c_8f_adv, byte_range_80_bf);
    1674                   struct_blk_CJK_Compat.cc = simd_or(struct_blk_CJK_Compat.cc, byte_e3_byte_range_8c_8f_sfx);
     2102            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2103            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2104            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     2105            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2106            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     2107            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     2108            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2109            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     2110            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     2111            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2112            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     2113            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     2114            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     2115            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     2116            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     2117            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     2118            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 2))) {
     2119              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2120              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2121              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     2122              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2123              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     2124              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
     2125              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 2))) {
     2126                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2127                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2128                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     2129                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2130                r800_1fff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2131                r800_1fff_tmp6 = simd_or(r800_1fff_tmp4, r800_1fff_tmp5);
     2132                byte_e0 = simd_andc(r800_1fff_tmp3, r800_1fff_tmp6);
     2133                if ((bitblock::any(byte_e0) || carryQ.CarryTest(1, 2))) {
     2134                  r800_fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2135                  r800_fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2136                  r800_fff_tmp3 = simd_and(r800_fff_tmp1, r800_fff_tmp2);
     2137                  r800_fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2138                  r800_fff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2139                  r800_fff_tmp6 = simd_or(r800_fff_tmp4, r800_fff_tmp5);
     2140                  byte_e0 = simd_andc(r800_fff_tmp3, r800_fff_tmp6);
     2141                  r800_fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2142                  r800_fff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2143                  r800_fff_tmp9 = simd_and(r800_fff_tmp7, r800_fff_tmp8);
     2144                  r800_fff_tmp10 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     2145                  r800_fff_tmp11 = simd_and(r800_fff_tmp10, basis_bits.bit_6);
     2146                  byte_range_b6_b7 = simd_and(r800_fff_tmp9, r800_fff_tmp11);
     2147                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e0, carryQ.get_carry_in(1), byte_e0_adv));
     2148                  byte_e0_byte_range_b6_b7 = simd_and(byte_e0_adv, byte_range_b6_b7);
     2149                  byte_range_80_bf = r800_fff_tmp7;
     2150                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e0_byte_range_b6_b7, carryQ.get_carry_in(2), byte_e0_byte_range_b6_b7_adv));
     2151                  sequence_e0_b6_80 = simd_and(byte_e0_byte_range_b6_b7_adv, byte_range_80_bf);
     2152                  struct_blk_Sinhala.cc = simd_or(struct_blk_Sinhala.cc, sequence_e0_b6_80);
    16752153                }
    16762154                else {
     
    17012179  };
    17022180
    1703   struct Property_blk_Kangxi {
    1704   Property_blk_Kangxi() {
    1705  }
    1706   IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Kangxi & struct_blk_Kangxi) {
    1707                 BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_e0_ef, r800_ffff_tmp1;
    1708                 BitBlock byte_range_e0_e3, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
    1709                 BitBlock byte_e4, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
    1710                 BitBlock byte_range_80_b7, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
    1711                 BitBlock r800_4dff_tmp1, byte_range_e2_e3, r800_4dff_tmp2, r2000_4dff_tmp1;
    1712                 BitBlock r2000_4dff_tmp2, byte_e2, r2000_2fff_tmp1, r2000_2fff_tmp2;
    1713                 BitBlock r2000_2fff_tmp3, r2000_2fff_tmp4, r2000_2fff_tmp5, byte_range_bc_be;
    1714                 BitBlock byte_e2_adv, byte_e2_byte_range_bc_be, byte_range_80_bf;
    1715                 BitBlock byte_e2_byte_range_bc_be_adv, byte_e2_byte_range_bc_be_sfx;
    1716                 BitBlock r2000_2fff_tmp6, r2000_2fff_tmp7, byte_bf, sequence_e2_bf;
    1717                 BitBlock byte_range_80_9f, sequence_e2_bf_adv, r2000_2fff_tmp8;
    1718 
    1719 
    1720 
    1721 
    1722         struct_blk_Kangxi.cc = simd<1>::constant<0>();
     2181  struct Property_blk_Ethiopic_Ext_A {
     2182  Property_blk_Ethiopic_Ext_A() {
     2183 }
     2184  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Ethiopic_Ext_A & struct_blk_Ethiopic_Ext_A) {
     2185                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     2186                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     2187                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     2188                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     2189                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     2190                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, byte_ac, byte_ea_adv;
     2191                BitBlock sequence_ea_ac, ra000_ffff_tmp12, byte_range_80_af;
     2192                BitBlock sequence_ea_ac_adv, ra000_ffff_tmp13;
     2193
     2194
     2195
     2196
     2197        struct_blk_Ethiopic_Ext_A.cc = simd<1>::constant<0>();
     2198        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2199        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 2))) {
     2200          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2201          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2202          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2203          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 2))) {
     2204            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2205            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2206            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     2207            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     2208            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     2209            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     2210            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 2))) {
     2211              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2212              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2213              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     2214              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     2215              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     2216              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     2217              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     2218              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2219              ra000_ffff_tmp8 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp2);
     2220              ra000_ffff_tmp9 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     2221              ra000_ffff_tmp10 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2222              ra000_ffff_tmp11 = simd_andc(ra000_ffff_tmp9, ra000_ffff_tmp10);
     2223              byte_ac = simd_and(ra000_ffff_tmp8, ra000_ffff_tmp11);
     2224              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
     2225              sequence_ea_ac = simd_and(byte_ea_adv, byte_ac);
     2226              ra000_ffff_tmp12 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2227              byte_range_80_af = simd_andc(ra000_ffff_tmp7, ra000_ffff_tmp12);
     2228              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ea_ac, carryQ.get_carry_in(1), sequence_ea_ac_adv));
     2229              ra000_ffff_tmp13 = simd_and(sequence_ea_ac_adv, byte_range_80_af);
     2230              struct_blk_Ethiopic_Ext_A.cc = simd_or(struct_blk_Ethiopic_Ext_A.cc, ra000_ffff_tmp13);
     2231            }
     2232            else {
     2233              carryQ.CarryDequeueEnqueue(0, 2);
     2234            }
     2235          }
     2236          else {
     2237            carryQ.CarryDequeueEnqueue(0, 2);
     2238          }
     2239        }
     2240        else {
     2241          carryQ.CarryDequeueEnqueue(0, 2);
     2242        }
     2243        carryQ.CarryQ_Adjust(2);
     2244  }
     2245  IDISA_INLINE void clear() {
     2246 }
     2247 
     2248  CarryArray<2, 0> carryQ;
     2249  };
     2250
     2251  struct Property_blk_Latin_Ext_D {
     2252  Property_blk_Latin_Ext_D() {
     2253 }
     2254  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Latin_Ext_D & struct_blk_Latin_Ext_D) {
     2255                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     2256                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     2257                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     2258                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     2259                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     2260                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, ra000_ffff_tmp12, byte_9c;
     2261                BitBlock byte_ea_adv, sequence_ea_9c, byte_range_a0_bf, sequence_ea_9c_adv;
     2262                BitBlock ra000_ffff_tmp13, ra000_ffff_tmp14, byte_range_9d_9f;
     2263                BitBlock byte_ea_byte_range_9d_9f, byte_range_80_bf;
     2264                BitBlock byte_ea_byte_range_9d_9f_adv, sequence_ea_9d_80;
     2265
     2266
     2267
     2268
     2269        struct_blk_Latin_Ext_D.cc = simd<1>::constant<0>();
     2270        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2271        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     2272          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2273          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2274          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2275          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     2276            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2277            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2278            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     2279            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     2280            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     2281            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     2282            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 3))) {
     2283              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2284              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2285              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     2286              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     2287              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     2288              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     2289              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     2290              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2291              ra000_ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     2292              ra000_ffff_tmp9 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp8);
     2293              ra000_ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     2294              ra000_ffff_tmp11 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2295              ra000_ffff_tmp12 = simd_andc(ra000_ffff_tmp10, ra000_ffff_tmp11);
     2296              byte_9c = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp12);
     2297              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
     2298              sequence_ea_9c = simd_and(byte_ea_adv, byte_9c);
     2299              byte_range_a0_bf = simd_and(ra000_ffff_tmp7, basis_bits.bit_2);
     2300              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ea_9c, carryQ.get_carry_in(1), sequence_ea_9c_adv));
     2301              ra000_ffff_tmp13 = simd_and(sequence_ea_9c_adv, byte_range_a0_bf);
     2302              struct_blk_Latin_Ext_D.cc = simd_or(struct_blk_Latin_Ext_D.cc, ra000_ffff_tmp13);
     2303              ra000_ffff_tmp14 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp10);
     2304              byte_range_9d_9f = simd_and(ra000_ffff_tmp14, ra000_ffff_tmp11);
     2305              byte_ea_byte_range_9d_9f = simd_and(byte_ea_adv, byte_range_9d_9f);
     2306              byte_range_80_bf = ra000_ffff_tmp7;
     2307              carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_ea_byte_range_9d_9f, carryQ.get_carry_in(2), byte_ea_byte_range_9d_9f_adv));
     2308              sequence_ea_9d_80 = simd_and(byte_ea_byte_range_9d_9f_adv, byte_range_80_bf);
     2309              struct_blk_Latin_Ext_D.cc = simd_or(struct_blk_Latin_Ext_D.cc, sequence_ea_9d_80);
     2310            }
     2311            else {
     2312              carryQ.CarryDequeueEnqueue(0, 3);
     2313            }
     2314          }
     2315          else {
     2316            carryQ.CarryDequeueEnqueue(0, 3);
     2317          }
     2318        }
     2319        else {
     2320          carryQ.CarryDequeueEnqueue(0, 3);
     2321        }
     2322        carryQ.CarryQ_Adjust(3);
     2323  }
     2324  IDISA_INLINE void clear() {
     2325 }
     2326 
     2327  CarryArray<3, 0> carryQ;
     2328  };
     2329
     2330  struct Property_blk_Cuneiform_Numbers {
     2331  Property_blk_Cuneiform_Numbers() {
     2332 }
     2333  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Cuneiform_Numbers & struct_blk_Cuneiform_Numbers) {
     2334                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     2335                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     2336                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     2337                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     2338                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_92, byte_f0_adv;
     2339                BitBlock sequence_f0_92, r10000_10ffff_tmp12, byte_range_90_91;
     2340                BitBlock sequence_f0_92_adv, sequence_f0_92_byte_range_90_91, byte_range_80_bf;
     2341                BitBlock sequence_f0_92_byte_range_90_91_adv, sequence_f0_92_90_80;
     2342
     2343
     2344
     2345
     2346        struct_blk_Cuneiform_Numbers.cc = simd<1>::constant<0>();
     2347        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2348        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     2349          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2350          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2351          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2352          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     2353            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2354            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2355            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     2356            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2357            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2358            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     2359            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     2360            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2361            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     2362            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     2363            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     2364            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp4);
     2365            byte_92 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     2366            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     2367            sequence_f0_92 = simd_and(byte_f0_adv, byte_92);
     2368            r10000_10ffff_tmp12 = simd_or(r10000_10ffff_tmp4, basis_bits.bit_6);
     2369            byte_range_90_91 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     2370            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_92, carryQ.get_carry_in(1), sequence_f0_92_adv));
     2371            sequence_f0_92_byte_range_90_91 = simd_and(sequence_f0_92_adv, byte_range_90_91);
     2372            byte_range_80_bf = r10000_10ffff_tmp7;
     2373            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_92_byte_range_90_91, carryQ.get_carry_in(2), sequence_f0_92_byte_range_90_91_adv));
     2374            sequence_f0_92_90_80 = simd_and(sequence_f0_92_byte_range_90_91_adv, byte_range_80_bf);
     2375            struct_blk_Cuneiform_Numbers.cc = simd_or(struct_blk_Cuneiform_Numbers.cc, sequence_f0_92_90_80);
     2376          }
     2377          else {
     2378            carryQ.CarryDequeueEnqueue(0, 3);
     2379          }
     2380        }
     2381        else {
     2382          carryQ.CarryDequeueEnqueue(0, 3);
     2383        }
     2384        carryQ.CarryQ_Adjust(3);
     2385  }
     2386  IDISA_INLINE void clear() {
     2387 }
     2388 
     2389  CarryArray<3, 0> carryQ;
     2390  };
     2391
     2392  struct Property_blk_Multani {
     2393  Property_blk_Multani() {
     2394 }
     2395  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Multani & struct_blk_Multani) {
     2396                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     2397                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     2398                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     2399                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     2400                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_91, byte_f0_adv;
     2401                BitBlock sequence_f0_91, r10000_10ffff_tmp12, r10000_10ffff_tmp13;
     2402                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, r10000_10ffff_tmp16;
     2403                BitBlock byte_8a, sequence_f0_91_adv, sequence_f0_91_8a, byte_range_80_af;
     2404                BitBlock sequence_f0_91_8a_adv, r10000_10ffff_tmp17;
     2405
     2406
     2407
     2408
     2409        struct_blk_Multani.cc = simd<1>::constant<0>();
     2410        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2411        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     2412          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2413          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2414          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2415          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     2416            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2417            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2418            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     2419            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2420            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2421            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     2422            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     2423            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2424            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     2425            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     2426            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     2427            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp4);
     2428            byte_91 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     2429            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     2430            sequence_f0_91 = simd_and(byte_f0_adv, byte_91);
     2431            r10000_10ffff_tmp12 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     2432            r10000_10ffff_tmp13 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp12);
     2433            r10000_10ffff_tmp14 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     2434            r10000_10ffff_tmp15 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     2435            r10000_10ffff_tmp16 = simd_and(r10000_10ffff_tmp14, r10000_10ffff_tmp15);
     2436            byte_8a = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp16);
     2437            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_91, carryQ.get_carry_in(1), sequence_f0_91_adv));
     2438            sequence_f0_91_8a = simd_and(sequence_f0_91_adv, byte_8a);
     2439            byte_range_80_af = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp2);
     2440            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_91_8a, carryQ.get_carry_in(2), sequence_f0_91_8a_adv));
     2441            r10000_10ffff_tmp17 = simd_and(sequence_f0_91_8a_adv, byte_range_80_af);
     2442            struct_blk_Multani.cc = simd_or(struct_blk_Multani.cc, r10000_10ffff_tmp17);
     2443          }
     2444          else {
     2445            carryQ.CarryDequeueEnqueue(0, 3);
     2446          }
     2447        }
     2448        else {
     2449          carryQ.CarryDequeueEnqueue(0, 3);
     2450        }
     2451        carryQ.CarryQ_Adjust(3);
     2452  }
     2453  IDISA_INLINE void clear() {
     2454 }
     2455 
     2456  CarryArray<3, 0> carryQ;
     2457  };
     2458
     2459  struct Property_blk_Low_Surrogates {
     2460  Property_blk_Low_Surrogates() {
     2461 }
     2462  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Low_Surrogates & struct_blk_Low_Surrogates) {
     2463                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     2464                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     2465                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     2466                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     2467                BitBlock byte_ed, ra000_ffff_tmp7, ra000_ffff_tmp8, byte_range_b0_bf;
     2468                BitBlock byte_ed_adv, byte_ed_byte_range_b0_bf, byte_range_80_bf;
     2469                BitBlock byte_ed_byte_range_b0_bf_adv, sequence_ed_b0_80;
     2470
     2471
     2472
     2473
     2474        struct_blk_Low_Surrogates.cc = simd<1>::constant<0>();
     2475        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2476        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 2))) {
     2477          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2478          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2479          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2480          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 2))) {
     2481            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2482            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2483            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     2484            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     2485            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     2486            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     2487            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 2))) {
     2488              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2489              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2490              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     2491              ra000_ffff_tmp4 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     2492              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     2493              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     2494              byte_ed = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     2495              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2496              ra000_ffff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2497              byte_range_b0_bf = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp8);
     2498              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ed, carryQ.get_carry_in(0), byte_ed_adv));
     2499              byte_ed_byte_range_b0_bf = simd_and(byte_ed_adv, byte_range_b0_bf);
     2500              byte_range_80_bf = ra000_ffff_tmp7;
     2501              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_ed_byte_range_b0_bf, carryQ.get_carry_in(1), byte_ed_byte_range_b0_bf_adv));
     2502              sequence_ed_b0_80 = simd_and(byte_ed_byte_range_b0_bf_adv, byte_range_80_bf);
     2503              struct_blk_Low_Surrogates.cc = simd_or(struct_blk_Low_Surrogates.cc, sequence_ed_b0_80);
     2504            }
     2505            else {
     2506              carryQ.CarryDequeueEnqueue(0, 2);
     2507            }
     2508          }
     2509          else {
     2510            carryQ.CarryDequeueEnqueue(0, 2);
     2511          }
     2512        }
     2513        else {
     2514          carryQ.CarryDequeueEnqueue(0, 2);
     2515        }
     2516        carryQ.CarryQ_Adjust(2);
     2517  }
     2518  IDISA_INLINE void clear() {
     2519 }
     2520 
     2521  CarryArray<2, 0> carryQ;
     2522  };
     2523
     2524  struct Property_blk_Kaithi {
     2525  Property_blk_Kaithi() {
     2526 }
     2527  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Kaithi & struct_blk_Kaithi) {
     2528                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     2529                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     2530                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     2531                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     2532                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_91, byte_f0_adv;
     2533                BitBlock sequence_f0_91, r10000_10ffff_tmp12, r10000_10ffff_tmp13;
     2534                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, byte_82, sequence_f0_91_adv;
     2535                BitBlock sequence_f0_91_82, byte_range_80_bf, r10000_10ffff_tmp16;
     2536                BitBlock r10000_10ffff_tmp17, sequence_f0_91_82_adv, r10000_10ffff_tmp18;
     2537                BitBlock r10000_10ffff_tmp19, r10000_10ffff_tmp20, byte_83, sequence_f0_91_83;
     2538                BitBlock byte_range_80_8f, sequence_f0_91_83_adv, r10000_10ffff_tmp21;
     2539
     2540
     2541
     2542
     2543        struct_blk_Kaithi.cc = simd<1>::constant<0>();
    17232544        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
    17242545        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
    1725           r80_10ffff_tmp1 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
    1726           byte_range_e0_ef = simd_and(byte_range_c0_ff, r80_10ffff_tmp1);
     2546          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2547          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2548          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2549          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 4))) {
     2550            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2551            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2552            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     2553            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2554            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2555            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     2556            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     2557            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2558            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     2559            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     2560            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     2561            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp4);
     2562            byte_91 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     2563            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     2564            sequence_f0_91 = simd_and(byte_f0_adv, byte_91);
     2565            r10000_10ffff_tmp12 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     2566            r10000_10ffff_tmp13 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp12);
     2567            r10000_10ffff_tmp14 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     2568            r10000_10ffff_tmp15 = simd_andc(r10000_10ffff_tmp14, r10000_10ffff_tmp4);
     2569            byte_82 = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp15);
     2570            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_91, carryQ.get_carry_in(1), sequence_f0_91_adv));
     2571            sequence_f0_91_82 = simd_and(sequence_f0_91_adv, byte_82);
     2572            byte_range_80_bf = r10000_10ffff_tmp7;
     2573            r10000_10ffff_tmp16 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     2574            r10000_10ffff_tmp17 = simd_andc(byte_range_80_bf, r10000_10ffff_tmp12);
     2575            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_91_82, carryQ.get_carry_in(2), sequence_f0_91_82_adv));
     2576            r10000_10ffff_tmp18 = simd_and(sequence_f0_91_82_adv, byte_range_80_bf);
     2577            struct_blk_Kaithi.cc = simd_or(struct_blk_Kaithi.cc, r10000_10ffff_tmp18);
     2578            r10000_10ffff_tmp19 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     2579            r10000_10ffff_tmp20 = simd_andc(r10000_10ffff_tmp19, r10000_10ffff_tmp4);
     2580            byte_83 = simd_and(r10000_10ffff_tmp17, r10000_10ffff_tmp20);
     2581            sequence_f0_91_83 = simd_and(sequence_f0_91_adv, byte_83);
     2582            byte_range_80_8f = r10000_10ffff_tmp17;
     2583            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_91_83, carryQ.get_carry_in(3), sequence_f0_91_83_adv));
     2584            r10000_10ffff_tmp21 = simd_and(sequence_f0_91_83_adv, byte_range_80_8f);
     2585            struct_blk_Kaithi.cc = simd_or(struct_blk_Kaithi.cc, r10000_10ffff_tmp21);
     2586          }
     2587          else {
     2588            carryQ.CarryDequeueEnqueue(0, 4);
     2589          }
     2590        }
     2591        else {
     2592          carryQ.CarryDequeueEnqueue(0, 4);
     2593        }
     2594        carryQ.CarryQ_Adjust(4);
     2595  }
     2596  IDISA_INLINE void clear() {
     2597 }
     2598 
     2599  CarryArray<4, 0> carryQ;
     2600  };
     2601
     2602  struct Property_blk_Batak {
     2603  Property_blk_Batak() {
     2604 }
     2605  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Batak & struct_blk_Batak) {
     2606                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     2607                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     2608                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     2609                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     2610                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     2611                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     2612                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     2613                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
     2614                BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, r1000_1fff_tmp3;
     2615                BitBlock r1000_1fff_tmp4, r1000_1fff_tmp5, r1000_1fff_tmp6, r1000_1fff_tmp7;
     2616                BitBlock r1000_1fff_tmp8, r1000_1fff_tmp9, r1000_1fff_tmp10, r1000_1fff_tmp11;
     2617                BitBlock byte_af, byte_e1_adv, sequence_e1_af, byte_range_80_bf;
     2618                BitBlock r1000_1fff_tmp12, sequence_e1_af_adv, r1000_1fff_tmp13;
     2619
     2620
     2621
     2622
     2623        struct_blk_Batak.cc = simd<1>::constant<0>();
     2624        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2625        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     2626          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2627          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2628          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2629          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     2630            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2631            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2632            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     2633            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2634            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     2635            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     2636            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2637            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     2638            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     2639            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2640            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     2641            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     2642            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     2643            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     2644            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     2645            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     2646            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 2))) {
     2647              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2648              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2649              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     2650              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2651              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     2652              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
     2653              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 2))) {
     2654                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2655                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2656                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     2657                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2658                r800_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     2659                r800_1fff_tmp6 = simd_andc(r800_1fff_tmp5, r800_1fff_tmp4);
     2660                byte_e1 = simd_and(r800_1fff_tmp3, r800_1fff_tmp6);
     2661                if ((bitblock::any(byte_e1) || carryQ.CarryTest(1, 2))) {
     2662                  r1000_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2663                  r1000_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2664                  r1000_1fff_tmp3 = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp2);
     2665                  r1000_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2666                  r1000_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     2667                  r1000_1fff_tmp6 = simd_andc(r1000_1fff_tmp5, r1000_1fff_tmp4);
     2668                  byte_e1 = simd_and(r1000_1fff_tmp3, r1000_1fff_tmp6);
     2669                  r1000_1fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2670                  r1000_1fff_tmp8 = simd_and(r1000_1fff_tmp7, r1000_1fff_tmp2);
     2671                  r1000_1fff_tmp9 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     2672                  r1000_1fff_tmp10 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     2673                  r1000_1fff_tmp11 = simd_and(r1000_1fff_tmp9, r1000_1fff_tmp10);
     2674                  byte_af = simd_and(r1000_1fff_tmp8, r1000_1fff_tmp11);
     2675                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e1, carryQ.get_carry_in(1), byte_e1_adv));
     2676                  sequence_e1_af = simd_and(byte_e1_adv, byte_af);
     2677                  byte_range_80_bf = r1000_1fff_tmp7;
     2678                  r1000_1fff_tmp12 = simd_and(byte_range_80_bf, r1000_1fff_tmp2);
     2679                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_e1_af, carryQ.get_carry_in(2), sequence_e1_af_adv));
     2680                  r1000_1fff_tmp13 = simd_and(sequence_e1_af_adv, byte_range_80_bf);
     2681                  struct_blk_Batak.cc = simd_or(struct_blk_Batak.cc, r1000_1fff_tmp13);
     2682                }
     2683                else {
     2684                  carryQ.CarryDequeueEnqueue(1, 2);
     2685                }
     2686              }
     2687              else {
     2688                carryQ.CarryDequeueEnqueue(1, 2);
     2689              }
     2690            }
     2691            else {
     2692              carryQ.CarryDequeueEnqueue(1, 2);
     2693            }
     2694          }
     2695          else {
     2696            carryQ.CarryDequeueEnqueue(0, 3);
     2697          }
     2698        }
     2699        else {
     2700          carryQ.CarryDequeueEnqueue(0, 3);
     2701        }
     2702        carryQ.CarryQ_Adjust(3);
     2703  }
     2704  IDISA_INLINE void clear() {
     2705 }
     2706 
     2707  CarryArray<3, 0> carryQ;
     2708  };
     2709
     2710  struct Property_blk_Yi_Radicals {
     2711  Property_blk_Yi_Radicals() {
     2712 }
     2713  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Yi_Radicals & struct_blk_Yi_Radicals) {
     2714                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     2715                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     2716                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     2717                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     2718                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     2719                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, byte_92, byte_ea_adv;
     2720                BitBlock sequence_ea_92, ra000_ffff_tmp12, byte_range_90_bf;
     2721                BitBlock sequence_ea_92_adv, ra000_ffff_tmp13, ra000_ffff_tmp14;
     2722                BitBlock ra000_ffff_tmp15, byte_93, sequence_ea_93, byte_range_80_8f;
     2723                BitBlock sequence_ea_93_adv, ra000_ffff_tmp16;
     2724
     2725
     2726
     2727
     2728        struct_blk_Yi_Radicals.cc = simd<1>::constant<0>();
     2729        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2730        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     2731          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2732          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2733          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2734          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     2735            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2736            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2737            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     2738            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     2739            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     2740            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     2741            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 3))) {
     2742              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2743              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2744              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     2745              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     2746              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     2747              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     2748              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     2749              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2750              ra000_ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     2751              ra000_ffff_tmp9 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp8);
     2752              ra000_ffff_tmp10 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2753              ra000_ffff_tmp11 = simd_andc(ra000_ffff_tmp5, ra000_ffff_tmp10);
     2754              byte_92 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp11);
     2755              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
     2756              sequence_ea_92 = simd_and(byte_ea_adv, byte_92);
     2757              ra000_ffff_tmp12 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     2758              byte_range_90_bf = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp12);
     2759              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ea_92, carryQ.get_carry_in(1), sequence_ea_92_adv));
     2760              ra000_ffff_tmp13 = simd_and(sequence_ea_92_adv, byte_range_90_bf);
     2761              struct_blk_Yi_Radicals.cc = simd_or(struct_blk_Yi_Radicals.cc, ra000_ffff_tmp13);
     2762              ra000_ffff_tmp14 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     2763              ra000_ffff_tmp15 = simd_andc(ra000_ffff_tmp14, ra000_ffff_tmp10);
     2764              byte_93 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp15);
     2765              sequence_ea_93 = simd_and(byte_ea_adv, byte_93);
     2766              byte_range_80_8f = simd_andc(ra000_ffff_tmp7, ra000_ffff_tmp12);
     2767              carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_ea_93, carryQ.get_carry_in(2), sequence_ea_93_adv));
     2768              ra000_ffff_tmp16 = simd_and(sequence_ea_93_adv, byte_range_80_8f);
     2769              struct_blk_Yi_Radicals.cc = simd_or(struct_blk_Yi_Radicals.cc, ra000_ffff_tmp16);
     2770            }
     2771            else {
     2772              carryQ.CarryDequeueEnqueue(0, 3);
     2773            }
     2774          }
     2775          else {
     2776            carryQ.CarryDequeueEnqueue(0, 3);
     2777          }
     2778        }
     2779        else {
     2780          carryQ.CarryDequeueEnqueue(0, 3);
     2781        }
     2782        carryQ.CarryQ_Adjust(3);
     2783  }
     2784  IDISA_INLINE void clear() {
     2785 }
     2786 
     2787  CarryArray<3, 0> carryQ;
     2788  };
     2789
     2790  struct Property_blk_Small_Forms {
     2791  Property_blk_Small_Forms() {
     2792 }
     2793  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Small_Forms & struct_blk_Small_Forms) {
     2794                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     2795                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     2796                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     2797                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     2798                BitBlock byte_ef, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     2799                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, ra000_ffff_tmp12, byte_b9;
     2800                BitBlock byte_ef_adv, sequence_ef_b9, ra000_ffff_tmp13, byte_range_90_af;
     2801                BitBlock sequence_ef_b9_adv, ra000_ffff_tmp14;
     2802
     2803
     2804
     2805
     2806        struct_blk_Small_Forms.cc = simd<1>::constant<0>();
     2807        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2808        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 2))) {
     2809          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2810          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2811          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2812          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 2))) {
     2813            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2814            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2815            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     2816            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     2817            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     2818            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     2819            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 2))) {
     2820              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2821              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2822              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     2823              ra000_ffff_tmp4 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     2824              ra000_ffff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     2825              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     2826              byte_ef = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     2827              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2828              ra000_ffff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2829              ra000_ffff_tmp9 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp8);
     2830              ra000_ffff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     2831              ra000_ffff_tmp11 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     2832              ra000_ffff_tmp12 = simd_and(ra000_ffff_tmp10, ra000_ffff_tmp11);
     2833              byte_b9 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp12);
     2834              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ef, carryQ.get_carry_in(0), byte_ef_adv));
     2835              sequence_ef_b9 = simd_and(byte_ef_adv, byte_b9);
     2836              ra000_ffff_tmp13 = simd_xor(basis_bits.bit_2, basis_bits.bit_3);
     2837              byte_range_90_af = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp13);
     2838              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ef_b9, carryQ.get_carry_in(1), sequence_ef_b9_adv));
     2839              ra000_ffff_tmp14 = simd_and(sequence_ef_b9_adv, byte_range_90_af);
     2840              struct_blk_Small_Forms.cc = simd_or(struct_blk_Small_Forms.cc, ra000_ffff_tmp14);
     2841            }
     2842            else {
     2843              carryQ.CarryDequeueEnqueue(0, 2);
     2844            }
     2845          }
     2846          else {
     2847            carryQ.CarryDequeueEnqueue(0, 2);
     2848          }
     2849        }
     2850        else {
     2851          carryQ.CarryDequeueEnqueue(0, 2);
     2852        }
     2853        carryQ.CarryQ_Adjust(2);
     2854  }
     2855  IDISA_INLINE void clear() {
     2856 }
     2857 
     2858  CarryArray<2, 0> carryQ;
     2859  };
     2860
     2861  struct Property_blk_Tai_Xuan_Jing {
     2862  Property_blk_Tai_Xuan_Jing() {
     2863 }
     2864  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Tai_Xuan_Jing & struct_blk_Tai_Xuan_Jing) {
     2865                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     2866                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     2867                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     2868                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     2869                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     2870                BitBlock byte_9d, byte_f0_adv, sequence_f0_9d, r10000_10ffff_tmp13;
     2871                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, byte_8c, sequence_f0_9d_adv;
     2872                BitBlock sequence_f0_9d_8c, byte_range_80_bf, r10000_10ffff_tmp16;
     2873                BitBlock r10000_10ffff_tmp17, sequence_f0_9d_8c_adv, r10000_10ffff_tmp18;
     2874                BitBlock byte_8d, sequence_f0_9d_8d, byte_range_80_9f, sequence_f0_9d_8d_adv;
     2875                BitBlock r10000_10ffff_tmp19;
     2876
     2877
     2878
     2879
     2880        struct_blk_Tai_Xuan_Jing.cc = simd<1>::constant<0>();
     2881        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2882        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     2883          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2884          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2885          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2886          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 4))) {
     2887            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2888            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2889            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     2890            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2891            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2892            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     2893            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     2894            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2895            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     2896            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     2897            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     2898            r10000_10ffff_tmp11 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     2899            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     2900            byte_9d = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     2901            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     2902            sequence_f0_9d = simd_and(byte_f0_adv, byte_9d);
     2903            r10000_10ffff_tmp13 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     2904            r10000_10ffff_tmp14 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp13);
     2905            r10000_10ffff_tmp15 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp5);
     2906            byte_8c = simd_and(r10000_10ffff_tmp14, r10000_10ffff_tmp15);
     2907            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9d, carryQ.get_carry_in(1), sequence_f0_9d_adv));
     2908            sequence_f0_9d_8c = simd_and(sequence_f0_9d_adv, byte_8c);
     2909            byte_range_80_bf = r10000_10ffff_tmp7;
     2910            r10000_10ffff_tmp16 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     2911            r10000_10ffff_tmp17 = simd_andc(byte_range_80_bf, r10000_10ffff_tmp13);
     2912            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9d_8c, carryQ.get_carry_in(2), sequence_f0_9d_8c_adv));
     2913            r10000_10ffff_tmp18 = simd_and(sequence_f0_9d_8c_adv, byte_range_80_bf);
     2914            struct_blk_Tai_Xuan_Jing.cc = simd_or(struct_blk_Tai_Xuan_Jing.cc, r10000_10ffff_tmp18);
     2915            byte_8d = simd_and(r10000_10ffff_tmp17, r10000_10ffff_tmp12);
     2916            sequence_f0_9d_8d = simd_and(sequence_f0_9d_adv, byte_8d);
     2917            byte_range_80_9f = simd_andc(byte_range_80_bf, basis_bits.bit_2);
     2918            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_9d_8d, carryQ.get_carry_in(3), sequence_f0_9d_8d_adv));
     2919            r10000_10ffff_tmp19 = simd_and(sequence_f0_9d_8d_adv, byte_range_80_9f);
     2920            struct_blk_Tai_Xuan_Jing.cc = simd_or(struct_blk_Tai_Xuan_Jing.cc, r10000_10ffff_tmp19);
     2921          }
     2922          else {
     2923            carryQ.CarryDequeueEnqueue(0, 4);
     2924          }
     2925        }
     2926        else {
     2927          carryQ.CarryDequeueEnqueue(0, 4);
     2928        }
     2929        carryQ.CarryQ_Adjust(4);
     2930  }
     2931  IDISA_INLINE void clear() {
     2932 }
     2933 
     2934  CarryArray<4, 0> carryQ;
     2935  };
     2936
     2937  struct Property_blk_CJK_Ext_C {
     2938  Property_blk_CJK_Ext_C() {
     2939 }
     2940  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_CJK_Ext_C & struct_blk_CJK_Ext_C) {
     2941                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     2942                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     2943                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     2944                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     2945                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     2946                BitBlock byte_aa, byte_f0_adv, sequence_f0_aa, r10000_10ffff_tmp13;
     2947                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, byte_range_9c_bf;
     2948                BitBlock sequence_f0_aa_adv, sequence_f0_aa_byte_range_9c_bf, byte_range_80_bf;
     2949                BitBlock sequence_f0_aa_byte_range_9c_bf_adv, sequence_f0_aa_9c_80;
     2950                BitBlock r10000_10ffff_tmp16, r10000_10ffff_tmp17, r10000_10ffff_tmp18;
     2951                BitBlock byte_ab, sequence_f0_ab, r10000_10ffff_tmp19, r10000_10ffff_tmp20;
     2952                BitBlock r10000_10ffff_tmp21, byte_range_80_9c, sequence_f0_ab_adv;
     2953                BitBlock sequence_f0_ab_byte_range_80_9c, sequence_f0_ab_byte_range_80_9c_adv;
     2954                BitBlock sequence_f0_ab_80_80;
     2955
     2956
     2957
     2958
     2959        struct_blk_CJK_Ext_C.cc = simd<1>::constant<0>();
     2960        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2961        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 5))) {
     2962          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2963          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2964          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     2965          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 5))) {
     2966            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     2967            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     2968            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     2969            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     2970            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     2971            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     2972            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     2973            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     2974            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     2975            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     2976            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     2977            r10000_10ffff_tmp11 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     2978            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     2979            byte_aa = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     2980            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     2981            sequence_f0_aa = simd_and(byte_f0_adv, byte_aa);
     2982            r10000_10ffff_tmp13 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     2983            r10000_10ffff_tmp14 = simd_and(basis_bits.bit_3, r10000_10ffff_tmp13);
     2984            r10000_10ffff_tmp15 = simd_or(basis_bits.bit_2, r10000_10ffff_tmp14);
     2985            byte_range_9c_bf = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp15);
     2986            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_aa, carryQ.get_carry_in(1), sequence_f0_aa_adv));
     2987            sequence_f0_aa_byte_range_9c_bf = simd_and(sequence_f0_aa_adv, byte_range_9c_bf);
     2988            byte_range_80_bf = r10000_10ffff_tmp7;
     2989            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_aa_byte_range_9c_bf, carryQ.get_carry_in(2), sequence_f0_aa_byte_range_9c_bf_adv));
     2990            sequence_f0_aa_9c_80 = simd_and(sequence_f0_aa_byte_range_9c_bf_adv, byte_range_80_bf);
     2991            struct_blk_CJK_Ext_C.cc = simd_or(struct_blk_CJK_Ext_C.cc, sequence_f0_aa_9c_80);
     2992            r10000_10ffff_tmp16 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     2993            r10000_10ffff_tmp17 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     2994            r10000_10ffff_tmp18 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp17);
     2995            byte_ab = simd_and(r10000_10ffff_tmp16, r10000_10ffff_tmp18);
     2996            sequence_f0_ab = simd_and(byte_f0_adv, byte_ab);
     2997            r10000_10ffff_tmp19 = simd_andc(byte_range_80_bf, basis_bits.bit_2);
     2998            r10000_10ffff_tmp20 = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp5);
     2999            r10000_10ffff_tmp21 = simd_and(basis_bits.bit_3, r10000_10ffff_tmp20);
     3000            byte_range_80_9c = simd_andc(r10000_10ffff_tmp19, r10000_10ffff_tmp21);
     3001            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_ab, carryQ.get_carry_in(3), sequence_f0_ab_adv));
     3002            sequence_f0_ab_byte_range_80_9c = simd_and(sequence_f0_ab_adv, byte_range_80_9c);
     3003            carryQ.cq[4] = carryout2carry(pablo_blk_Advance(sequence_f0_ab_byte_range_80_9c, carryQ.get_carry_in(4), sequence_f0_ab_byte_range_80_9c_adv));
     3004            sequence_f0_ab_80_80 = simd_and(sequence_f0_ab_byte_range_80_9c_adv, byte_range_80_bf);
     3005            struct_blk_CJK_Ext_C.cc = simd_or(struct_blk_CJK_Ext_C.cc, sequence_f0_ab_80_80);
     3006          }
     3007          else {
     3008            carryQ.CarryDequeueEnqueue(0, 5);
     3009          }
     3010        }
     3011        else {
     3012          carryQ.CarryDequeueEnqueue(0, 5);
     3013        }
     3014        carryQ.CarryQ_Adjust(5);
     3015  }
     3016  IDISA_INLINE void clear() {
     3017 }
     3018 
     3019  CarryArray<5, 0> carryQ;
     3020  };
     3021
     3022  struct Property_blk_CJK_Ext_B {
     3023  Property_blk_CJK_Ext_B() {
     3024 }
     3025  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_CJK_Ext_B & struct_blk_CJK_Ext_B) {
     3026                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3027                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3028                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3029                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     3030                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_range_a0_a9;
     3031                BitBlock byte_f0_adv, byte_f0_byte_range_a0_a9, byte_range_80_bf;
     3032                BitBlock byte_f0_byte_range_a0_a9_adv, sequence_f0_a0_80;
     3033                BitBlock sequence_f0_a0_80_adv, sequence_f0_a0_80_80, r10000_10ffff_tmp12;
     3034                BitBlock r10000_10ffff_tmp13, r10000_10ffff_tmp14, r10000_10ffff_tmp15;
     3035                BitBlock byte_aa, sequence_f0_aa, r10000_10ffff_tmp16, r10000_10ffff_tmp17;
     3036                BitBlock r10000_10ffff_tmp18, r10000_10ffff_tmp19, r10000_10ffff_tmp20;
     3037                BitBlock byte_range_80_9a, sequence_f0_aa_adv, sequence_f0_aa_byte_range_80_9a;
     3038                BitBlock sequence_f0_aa_byte_range_80_9a_adv, sequence_f0_aa_80_80;
     3039                BitBlock r10000_10ffff_tmp21, r10000_10ffff_tmp22, r10000_10ffff_tmp23;
     3040                BitBlock byte_9b, sequence_f0_aa_9b, byte_range_80_9f, sequence_f0_aa_9b_adv;
     3041                BitBlock r10000_10ffff_tmp24;
     3042
     3043
     3044
     3045
     3046        struct_blk_CJK_Ext_B.cc = simd<1>::constant<0>();
     3047        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3048        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 6))) {
     3049          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3050          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3051          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3052          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 6))) {
     3053            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3054            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3055            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3056            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3057            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3058            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3059            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3060            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3061            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3062            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3063            r10000_10ffff_tmp10 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     3064            r10000_10ffff_tmp11 = simd_and(basis_bits.bit_4, r10000_10ffff_tmp10);
     3065            byte_range_a0_a9 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     3066            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3067            byte_f0_byte_range_a0_a9 = simd_and(byte_f0_adv, byte_range_a0_a9);
     3068            byte_range_80_bf = r10000_10ffff_tmp7;
     3069            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_f0_byte_range_a0_a9, carryQ.get_carry_in(1), byte_f0_byte_range_a0_a9_adv));
     3070            sequence_f0_a0_80 = simd_and(byte_f0_byte_range_a0_a9_adv, byte_range_80_bf);
     3071            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_a0_80, carryQ.get_carry_in(2), sequence_f0_a0_80_adv));
     3072            sequence_f0_a0_80_80 = simd_and(sequence_f0_a0_80_adv, byte_range_80_bf);
     3073            struct_blk_CJK_Ext_B.cc = simd_or(struct_blk_CJK_Ext_B.cc, sequence_f0_a0_80_80);
     3074            r10000_10ffff_tmp12 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     3075            r10000_10ffff_tmp13 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     3076            r10000_10ffff_tmp14 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     3077            r10000_10ffff_tmp15 = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp14);
     3078            byte_aa = simd_and(r10000_10ffff_tmp12, r10000_10ffff_tmp15);
     3079            sequence_f0_aa = simd_and(byte_f0_adv, byte_aa);
     3080            r10000_10ffff_tmp16 = simd_andc(byte_range_80_bf, basis_bits.bit_2);
     3081            r10000_10ffff_tmp17 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3082            r10000_10ffff_tmp18 = simd_or(basis_bits.bit_5, r10000_10ffff_tmp17);
     3083            r10000_10ffff_tmp19 = simd_and(basis_bits.bit_4, r10000_10ffff_tmp18);
     3084            r10000_10ffff_tmp20 = simd_and(basis_bits.bit_3, r10000_10ffff_tmp19);
     3085            byte_range_80_9a = simd_andc(r10000_10ffff_tmp16, r10000_10ffff_tmp20);
     3086            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_aa, carryQ.get_carry_in(3), sequence_f0_aa_adv));
     3087            sequence_f0_aa_byte_range_80_9a = simd_and(sequence_f0_aa_adv, byte_range_80_9a);
     3088            carryQ.cq[4] = carryout2carry(pablo_blk_Advance(sequence_f0_aa_byte_range_80_9a, carryQ.get_carry_in(4), sequence_f0_aa_byte_range_80_9a_adv));
     3089            sequence_f0_aa_80_80 = simd_and(sequence_f0_aa_byte_range_80_9a_adv, byte_range_80_bf);
     3090            struct_blk_CJK_Ext_B.cc = simd_or(struct_blk_CJK_Ext_B.cc, sequence_f0_aa_80_80);
     3091            r10000_10ffff_tmp21 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3092            r10000_10ffff_tmp22 = simd_and(byte_range_80_bf, r10000_10ffff_tmp21);
     3093            r10000_10ffff_tmp23 = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp17);
     3094            byte_9b = simd_and(r10000_10ffff_tmp22, r10000_10ffff_tmp23);
     3095            sequence_f0_aa_9b = simd_and(sequence_f0_aa_adv, byte_9b);
     3096            byte_range_80_9f = r10000_10ffff_tmp16;
     3097            carryQ.cq[5] = carryout2carry(pablo_blk_Advance(sequence_f0_aa_9b, carryQ.get_carry_in(5), sequence_f0_aa_9b_adv));
     3098            r10000_10ffff_tmp24 = simd_and(sequence_f0_aa_9b_adv, byte_range_80_9f);
     3099            struct_blk_CJK_Ext_B.cc = simd_or(struct_blk_CJK_Ext_B.cc, r10000_10ffff_tmp24);
     3100          }
     3101          else {
     3102            carryQ.CarryDequeueEnqueue(0, 6);
     3103          }
     3104        }
     3105        else {
     3106          carryQ.CarryDequeueEnqueue(0, 6);
     3107        }
     3108        carryQ.CarryQ_Adjust(6);
     3109  }
     3110  IDISA_INLINE void clear() {
     3111 }
     3112 
     3113  CarryArray<6, 0> carryQ;
     3114  };
     3115
     3116  struct Property_blk_CJK_Ext_A {
     3117  Property_blk_CJK_Ext_A() {
     3118 }
     3119  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_CJK_Ext_A & struct_blk_CJK_Ext_A) {
     3120                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     3121                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     3122                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     3123                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     3124                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     3125                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     3126                BitBlock r800_4dff_tmp5, byte_range_e2_e3, r800_4dff_tmp6, r800_4dff_tmp7;
     3127                BitBlock r800_4dff_tmp8, r800_4dff_tmp9, r800_4dff_tmp10, r800_4dff_tmp11;
     3128                BitBlock r800_4dff_tmp12, r800_4dff_tmp13, r800_4dff_tmp14, r2000_4dff_tmp1;
     3129                BitBlock r2000_4dff_tmp2, r2000_4dff_tmp3, r2000_4dff_tmp4, r2000_4dff_tmp5;
     3130                BitBlock r2000_4dff_tmp6, byte_e3, r2000_4dff_tmp7, r2000_4dff_tmp8;
     3131                BitBlock r2000_4dff_tmp9, r2000_4dff_tmp10, r2000_4dff_tmp11, r2000_4dff_tmp12;
     3132                BitBlock r2000_4dff_tmp13, r2000_4dff_tmp14, r2000_4dff_tmp15, r3000_4dff_tmp1;
     3133                BitBlock r3000_4dff_tmp2, r3000_4dff_tmp3, r3000_4dff_tmp4, r3000_4dff_tmp5;
     3134                BitBlock r3000_4dff_tmp6, r3000_4dff_tmp7, r3000_4dff_tmp8, byte_range_90_bf;
     3135                BitBlock byte_e3_adv, byte_e3_byte_range_90_bf, byte_range_80_bf;
     3136                BitBlock byte_e3_byte_range_90_bf_adv, sequence_e3_90_80, r3000_4dff_tmp9;
     3137                BitBlock r3000_4dff_tmp10, r3000_4dff_tmp11, r3000_4dff_tmp12;
     3138                BitBlock r3000_4dff_tmp13, r3000_4dff_tmp14, r3000_4dff_tmp15;
     3139                BitBlock byte_range_80_b6, byte_e4_adv, byte_e4_byte_range_80_b6;
     3140                BitBlock byte_e4_byte_range_80_b6_adv, sequence_e4_80_80;
     3141
     3142
     3143
     3144
     3145        struct_blk_CJK_Ext_A.cc = simd<1>::constant<0>();
     3146        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3147        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 7))) {
     3148          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3149          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3150          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3151          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 7))) {
     3152            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3153            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3154            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     3155            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3156            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     3157            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3158            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3159            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     3160            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     3161            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3162            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     3163            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     3164            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     3165            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     3166            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     3167            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     3168            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 6))) {
     3169              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3170              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3171              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     3172              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3173              r800_4dff_tmp5 = simd_andc(basis_bits.bit_6, r800_4dff_tmp4);
     3174              byte_range_e2_e3 = simd_and(r800_4dff_tmp3, r800_4dff_tmp5);
     3175              r800_4dff_tmp6 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3176              r800_4dff_tmp7 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3177              r800_4dff_tmp8 = simd_andc(r800_4dff_tmp6, r800_4dff_tmp7);
     3178              byte_e4 = simd_and(r800_4dff_tmp3, r800_4dff_tmp8);
     3179              r800_4dff_tmp9 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3180              r800_4dff_tmp10 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     3181              r800_4dff_tmp11 = simd_and(basis_bits.bit_2, r800_4dff_tmp10);
     3182              byte_range_80_b7 = simd_andc(r800_4dff_tmp9, r800_4dff_tmp11);
     3183              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(1), r800_4dff_tmp12));
     3184              r800_4dff_tmp13 = simd_and(r800_4dff_tmp12, byte_range_80_b7);
     3185              r800_4dff_tmp14 = simd_or(byte_range_e2_e3, r800_4dff_tmp13);
     3186              if ((bitblock::any(r800_4dff_tmp14) || carryQ.CarryTest(2, 5))) {
     3187                r2000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3188                r2000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3189                r2000_4dff_tmp3 = simd_and(r2000_4dff_tmp1, r2000_4dff_tmp2);
     3190                r2000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3191                r2000_4dff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3192                r2000_4dff_tmp6 = simd_andc(r2000_4dff_tmp5, r2000_4dff_tmp4);
     3193                byte_e3 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp6);
     3194                r2000_4dff_tmp7 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3195                r2000_4dff_tmp8 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3196                r2000_4dff_tmp9 = simd_andc(r2000_4dff_tmp7, r2000_4dff_tmp8);
     3197                byte_e4 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp9);
     3198                r2000_4dff_tmp10 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3199                r2000_4dff_tmp11 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     3200                r2000_4dff_tmp12 = simd_and(basis_bits.bit_2, r2000_4dff_tmp11);
     3201                byte_range_80_b7 = simd_andc(r2000_4dff_tmp10, r2000_4dff_tmp12);
     3202                carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(2), r2000_4dff_tmp13));
     3203                r2000_4dff_tmp14 = simd_and(r2000_4dff_tmp13, byte_range_80_b7);
     3204                r2000_4dff_tmp15 = simd_or(byte_e3, r2000_4dff_tmp14);
     3205                if ((bitblock::any(r2000_4dff_tmp15) || carryQ.CarryTest(3, 4))) {
     3206                  r3000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3207                  r3000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3208                  r3000_4dff_tmp3 = simd_and(r3000_4dff_tmp1, r3000_4dff_tmp2);
     3209                  r3000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3210                  r3000_4dff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3211                  r3000_4dff_tmp6 = simd_andc(r3000_4dff_tmp5, r3000_4dff_tmp4);
     3212                  byte_e3 = simd_and(r3000_4dff_tmp3, r3000_4dff_tmp6);
     3213                  r3000_4dff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3214                  r3000_4dff_tmp8 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     3215                  byte_range_90_bf = simd_and(r3000_4dff_tmp7, r3000_4dff_tmp8);
     3216                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(byte_e3, carryQ.get_carry_in(3), byte_e3_adv));
     3217                  byte_e3_byte_range_90_bf = simd_and(byte_e3_adv, byte_range_90_bf);
     3218                  byte_range_80_bf = r3000_4dff_tmp7;
     3219                  carryQ.cq[4] = carryout2carry(pablo_blk_Advance(byte_e3_byte_range_90_bf, carryQ.get_carry_in(4), byte_e3_byte_range_90_bf_adv));
     3220                  sequence_e3_90_80 = simd_and(byte_e3_byte_range_90_bf_adv, byte_range_80_bf);
     3221                  struct_blk_CJK_Ext_A.cc = simd_or(struct_blk_CJK_Ext_A.cc, sequence_e3_90_80);
     3222                  r3000_4dff_tmp9 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3223                  r3000_4dff_tmp10 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3224                  r3000_4dff_tmp11 = simd_andc(r3000_4dff_tmp9, r3000_4dff_tmp10);
     3225                  byte_e4 = simd_and(r3000_4dff_tmp3, r3000_4dff_tmp11);
     3226                  r3000_4dff_tmp12 = simd_and(basis_bits.bit_5, r3000_4dff_tmp5);
     3227                  r3000_4dff_tmp13 = simd_or(basis_bits.bit_4, r3000_4dff_tmp12);
     3228                  r3000_4dff_tmp14 = simd_and(basis_bits.bit_3, r3000_4dff_tmp13);
     3229                  r3000_4dff_tmp15 = simd_and(basis_bits.bit_2, r3000_4dff_tmp14);
     3230                  byte_range_80_b6 = simd_andc(byte_range_80_bf, r3000_4dff_tmp15);
     3231                  carryQ.cq[5] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(5), byte_e4_adv));
     3232                  byte_e4_byte_range_80_b6 = simd_and(byte_e4_adv, byte_range_80_b6);
     3233                  carryQ.cq[6] = carryout2carry(pablo_blk_Advance(byte_e4_byte_range_80_b6, carryQ.get_carry_in(6), byte_e4_byte_range_80_b6_adv));
     3234                  sequence_e4_80_80 = simd_and(byte_e4_byte_range_80_b6_adv, byte_range_80_bf);
     3235                  struct_blk_CJK_Ext_A.cc = simd_or(struct_blk_CJK_Ext_A.cc, sequence_e4_80_80);
     3236                }
     3237                else {
     3238                  carryQ.CarryDequeueEnqueue(3, 4);
     3239                }
     3240              }
     3241              else {
     3242                carryQ.CarryDequeueEnqueue(2, 5);
     3243              }
     3244            }
     3245            else {
     3246              carryQ.CarryDequeueEnqueue(1, 6);
     3247            }
     3248          }
     3249          else {
     3250            carryQ.CarryDequeueEnqueue(0, 7);
     3251          }
     3252        }
     3253        else {
     3254          carryQ.CarryDequeueEnqueue(0, 7);
     3255        }
     3256        carryQ.CarryQ_Adjust(7);
     3257  }
     3258  IDISA_INLINE void clear() {
     3259 }
     3260 
     3261  CarryArray<7, 0> carryQ;
     3262  };
     3263
     3264  struct Property_blk_Coptic_Epact_Numbers {
     3265  Property_blk_Coptic_Epact_Numbers() {
     3266 }
     3267  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Coptic_Epact_Numbers & struct_blk_Coptic_Epact_Numbers) {
     3268                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3269                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3270                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3271                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_90;
     3272                BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
     3273                BitBlock r10000_10ffff_tmp12, r10000_10ffff_tmp13, r10000_10ffff_tmp14;
     3274                BitBlock byte_8b, sequence_f0_90_adv, sequence_f0_90_8b, byte_range_a0_bf;
     3275                BitBlock sequence_f0_90_8b_adv, r10000_10ffff_tmp15;
     3276
     3277
     3278
     3279
     3280        struct_blk_Coptic_Epact_Numbers.cc = simd<1>::constant<0>();
     3281        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3282        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     3283          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3284          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3285          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3286          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     3287            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3288            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3289            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3290            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3291            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3292            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3293            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3294            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3295            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3296            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3297            byte_90 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
     3298            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3299            sequence_f0_90 = simd_and(byte_f0_adv, byte_90);
     3300            r10000_10ffff_tmp10 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     3301            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
     3302            r10000_10ffff_tmp12 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     3303            r10000_10ffff_tmp13 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3304            r10000_10ffff_tmp14 = simd_and(r10000_10ffff_tmp12, r10000_10ffff_tmp13);
     3305            byte_8b = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp14);
     3306            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_90, carryQ.get_carry_in(1), sequence_f0_90_adv));
     3307            sequence_f0_90_8b = simd_and(sequence_f0_90_adv, byte_8b);
     3308            byte_range_a0_bf = simd_and(r10000_10ffff_tmp7, basis_bits.bit_2);
     3309            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_90_8b, carryQ.get_carry_in(2), sequence_f0_90_8b_adv));
     3310            r10000_10ffff_tmp15 = simd_and(sequence_f0_90_8b_adv, byte_range_a0_bf);
     3311            struct_blk_Coptic_Epact_Numbers.cc = simd_or(struct_blk_Coptic_Epact_Numbers.cc, r10000_10ffff_tmp15);
     3312          }
     3313          else {
     3314            carryQ.CarryDequeueEnqueue(0, 3);
     3315          }
     3316        }
     3317        else {
     3318          carryQ.CarryDequeueEnqueue(0, 3);
     3319        }
     3320        carryQ.CarryQ_Adjust(3);
     3321  }
     3322  IDISA_INLINE void clear() {
     3323 }
     3324 
     3325  CarryArray<3, 0> carryQ;
     3326  };
     3327
     3328  struct Property_blk_CJK_Ext_E {
     3329  Property_blk_CJK_Ext_E() {
     3330 }
     3331  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_CJK_Ext_E & struct_blk_CJK_Ext_E) {
     3332                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3333                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3334                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3335                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     3336                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     3337                BitBlock byte_ab, byte_f0_adv, sequence_f0_ab, byte_a0, sequence_f0_ab_adv;
     3338                BitBlock sequence_f0_ab_a0, byte_range_a0_bf, sequence_f0_ab_a0_adv;
     3339                BitBlock r10000_10ffff_tmp13, r10000_10ffff_tmp14, byte_range_a1_bf;
     3340                BitBlock sequence_f0_ab_byte_range_a1_bf, byte_range_80_bf;
     3341                BitBlock sequence_f0_ab_byte_range_a1_bf_adv, sequence_f0_ab_a1_80;
     3342                BitBlock r10000_10ffff_tmp15, r10000_10ffff_tmp16, r10000_10ffff_tmp17;
     3343                BitBlock byte_ac, sequence_f0_ac, r10000_10ffff_tmp18, r10000_10ffff_tmp19;
     3344                BitBlock r10000_10ffff_tmp20, r10000_10ffff_tmp21, byte_range_80_b9;
     3345                BitBlock sequence_f0_ac_adv, sequence_f0_ac_byte_range_80_b9;
     3346                BitBlock sequence_f0_ac_byte_range_80_b9_adv, sequence_f0_ac_80_80;
     3347                BitBlock r10000_10ffff_tmp22, r10000_10ffff_tmp23, r10000_10ffff_tmp24;
     3348                BitBlock byte_ba, sequence_f0_ac_ba, byte_range_80_af, sequence_f0_ac_ba_adv;
     3349                BitBlock r10000_10ffff_tmp25;
     3350
     3351
     3352
     3353
     3354        struct_blk_CJK_Ext_E.cc = simd<1>::constant<0>();
     3355        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3356        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 7))) {
     3357          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3358          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3359          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3360          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 7))) {
     3361            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3362            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3363            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3364            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3365            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3366            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3367            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3368            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3369            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3370            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3371            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     3372            r10000_10ffff_tmp11 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3373            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     3374            byte_ab = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     3375            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3376            sequence_f0_ab = simd_and(byte_f0_adv, byte_ab);
     3377            byte_a0 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
     3378            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_ab, carryQ.get_carry_in(1), sequence_f0_ab_adv));
     3379            sequence_f0_ab_a0 = simd_and(sequence_f0_ab_adv, byte_a0);
     3380            byte_range_a0_bf = simd_and(r10000_10ffff_tmp7, basis_bits.bit_2);
     3381            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_ab_a0, carryQ.get_carry_in(2), sequence_f0_ab_a0_adv));
     3382            r10000_10ffff_tmp13 = simd_and(sequence_f0_ab_a0_adv, byte_range_a0_bf);
     3383            struct_blk_CJK_Ext_E.cc = simd_or(struct_blk_CJK_Ext_E.cc, r10000_10ffff_tmp13);
     3384            r10000_10ffff_tmp14 = simd_or(basis_bits.bit_3, r10000_10ffff_tmp6);
     3385            byte_range_a1_bf = simd_and(byte_range_a0_bf, r10000_10ffff_tmp14);
     3386            sequence_f0_ab_byte_range_a1_bf = simd_and(sequence_f0_ab_adv, byte_range_a1_bf);
     3387            byte_range_80_bf = r10000_10ffff_tmp7;
     3388            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_ab_byte_range_a1_bf, carryQ.get_carry_in(3), sequence_f0_ab_byte_range_a1_bf_adv));
     3389            sequence_f0_ab_a1_80 = simd_and(sequence_f0_ab_byte_range_a1_bf_adv, byte_range_80_bf);
     3390            struct_blk_CJK_Ext_E.cc = simd_or(struct_blk_CJK_Ext_E.cc, sequence_f0_ab_a1_80);
     3391            r10000_10ffff_tmp15 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     3392            r10000_10ffff_tmp16 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     3393            r10000_10ffff_tmp17 = simd_andc(r10000_10ffff_tmp16, r10000_10ffff_tmp5);
     3394            byte_ac = simd_and(r10000_10ffff_tmp15, r10000_10ffff_tmp17);
     3395            sequence_f0_ac = simd_and(byte_f0_adv, byte_ac);
     3396            r10000_10ffff_tmp18 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     3397            r10000_10ffff_tmp19 = simd_and(basis_bits.bit_4, r10000_10ffff_tmp18);
     3398            r10000_10ffff_tmp20 = simd_and(basis_bits.bit_3, r10000_10ffff_tmp19);
     3399            r10000_10ffff_tmp21 = simd_and(basis_bits.bit_2, r10000_10ffff_tmp20);
     3400            byte_range_80_b9 = simd_andc(byte_range_80_bf, r10000_10ffff_tmp21);
     3401            carryQ.cq[4] = carryout2carry(pablo_blk_Advance(sequence_f0_ac, carryQ.get_carry_in(4), sequence_f0_ac_adv));
     3402            sequence_f0_ac_byte_range_80_b9 = simd_and(sequence_f0_ac_adv, byte_range_80_b9);
     3403            carryQ.cq[5] = carryout2carry(pablo_blk_Advance(sequence_f0_ac_byte_range_80_b9, carryQ.get_carry_in(5), sequence_f0_ac_byte_range_80_b9_adv));
     3404            sequence_f0_ac_80_80 = simd_and(sequence_f0_ac_byte_range_80_b9_adv, byte_range_80_bf);
     3405            struct_blk_CJK_Ext_E.cc = simd_or(struct_blk_CJK_Ext_E.cc, sequence_f0_ac_80_80);
     3406            r10000_10ffff_tmp22 = simd_and(byte_range_80_bf, r10000_10ffff_tmp2);
     3407            r10000_10ffff_tmp23 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     3408            r10000_10ffff_tmp24 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp23);
     3409            byte_ba = simd_and(r10000_10ffff_tmp22, r10000_10ffff_tmp24);
     3410            sequence_f0_ac_ba = simd_and(sequence_f0_ac_adv, byte_ba);
     3411            byte_range_80_af = simd_andc(byte_range_80_bf, r10000_10ffff_tmp2);
     3412            carryQ.cq[6] = carryout2carry(pablo_blk_Advance(sequence_f0_ac_ba, carryQ.get_carry_in(6), sequence_f0_ac_ba_adv));
     3413            r10000_10ffff_tmp25 = simd_and(sequence_f0_ac_ba_adv, byte_range_80_af);
     3414            struct_blk_CJK_Ext_E.cc = simd_or(struct_blk_CJK_Ext_E.cc, r10000_10ffff_tmp25);
     3415          }
     3416          else {
     3417            carryQ.CarryDequeueEnqueue(0, 7);
     3418          }
     3419        }
     3420        else {
     3421          carryQ.CarryDequeueEnqueue(0, 7);
     3422        }
     3423        carryQ.CarryQ_Adjust(7);
     3424  }
     3425  IDISA_INLINE void clear() {
     3426 }
     3427 
     3428  CarryArray<7, 0> carryQ;
     3429  };
     3430
     3431  struct Property_blk_CJK_Ext_D {
     3432  Property_blk_CJK_Ext_D() {
     3433 }
     3434  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_CJK_Ext_D & struct_blk_CJK_Ext_D) {
     3435                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3436                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3437                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3438                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     3439                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     3440                BitBlock byte_ab, byte_f0_adv, sequence_f0_ab, r10000_10ffff_tmp13;
     3441                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, r10000_10ffff_tmp16;
     3442                BitBlock byte_range_9d_9f, sequence_f0_ab_adv, sequence_f0_ab_byte_range_9d_9f;
     3443                BitBlock byte_range_80_bf, sequence_f0_ab_byte_range_9d_9f_adv;
     3444                BitBlock sequence_f0_ab_9d_80, r10000_10ffff_tmp17, byte_a0, sequence_f0_ab_a0;
     3445                BitBlock byte_range_80_9f, sequence_f0_ab_a0_adv, r10000_10ffff_tmp18;
     3446
     3447
     3448
     3449
     3450        struct_blk_CJK_Ext_D.cc = simd<1>::constant<0>();
     3451        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3452        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     3453          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3454          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3455          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3456          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 4))) {
     3457            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3458            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3459            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3460            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3461            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3462            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3463            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3464            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3465            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3466            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3467            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     3468            r10000_10ffff_tmp11 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3469            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     3470            byte_ab = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     3471            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3472            sequence_f0_ab = simd_and(byte_f0_adv, byte_ab);
     3473            r10000_10ffff_tmp13 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3474            r10000_10ffff_tmp14 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp13);
     3475            r10000_10ffff_tmp15 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     3476            r10000_10ffff_tmp16 = simd_and(r10000_10ffff_tmp14, r10000_10ffff_tmp15);
     3477            byte_range_9d_9f = simd_and(r10000_10ffff_tmp16, r10000_10ffff_tmp5);
     3478            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_ab, carryQ.get_carry_in(1), sequence_f0_ab_adv));
     3479            sequence_f0_ab_byte_range_9d_9f = simd_and(sequence_f0_ab_adv, byte_range_9d_9f);
     3480            byte_range_80_bf = r10000_10ffff_tmp7;
     3481            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_ab_byte_range_9d_9f, carryQ.get_carry_in(2), sequence_f0_ab_byte_range_9d_9f_adv));
     3482            sequence_f0_ab_9d_80 = simd_and(sequence_f0_ab_byte_range_9d_9f_adv, byte_range_80_bf);
     3483            struct_blk_CJK_Ext_D.cc = simd_or(struct_blk_CJK_Ext_D.cc, sequence_f0_ab_9d_80);
     3484            r10000_10ffff_tmp17 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     3485            byte_a0 = simd_andc(r10000_10ffff_tmp17, r10000_10ffff_tmp6);
     3486            sequence_f0_ab_a0 = simd_and(sequence_f0_ab_adv, byte_a0);
     3487            byte_range_80_9f = simd_andc(byte_range_80_bf, basis_bits.bit_2);
     3488            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_ab_a0, carryQ.get_carry_in(3), sequence_f0_ab_a0_adv));
     3489            r10000_10ffff_tmp18 = simd_and(sequence_f0_ab_a0_adv, byte_range_80_9f);
     3490            struct_blk_CJK_Ext_D.cc = simd_or(struct_blk_CJK_Ext_D.cc, r10000_10ffff_tmp18);
     3491          }
     3492          else {
     3493            carryQ.CarryDequeueEnqueue(0, 4);
     3494          }
     3495        }
     3496        else {
     3497          carryQ.CarryDequeueEnqueue(0, 4);
     3498        }
     3499        carryQ.CarryQ_Adjust(4);
     3500  }
     3501  IDISA_INLINE void clear() {
     3502 }
     3503 
     3504  CarryArray<4, 0> carryQ;
     3505  };
     3506
     3507  struct Property_blk_Sup_Symbols_And_Pictographs {
     3508  Property_blk_Sup_Symbols_And_Pictographs() {
     3509 }
     3510  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Sup_Symbols_And_Pictographs & struct_blk_Sup_Symbols_And_Pictographs) {
     3511                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3512                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3513                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3514                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     3515                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     3516                BitBlock byte_9f, byte_f0_adv, sequence_f0_9f, r10000_10ffff_tmp13;
     3517                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, byte_range_a4_a7;
     3518                BitBlock sequence_f0_9f_adv, sequence_f0_9f_byte_range_a4_a7, byte_range_80_bf;
     3519                BitBlock sequence_f0_9f_byte_range_a4_a7_adv, sequence_f0_9f_a4_80;
     3520
     3521
     3522
     3523
     3524        struct_blk_Sup_Symbols_And_Pictographs.cc = simd<1>::constant<0>();
     3525        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3526        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     3527          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3528          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3529          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3530          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     3531            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3532            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3533            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3534            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3535            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3536            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3537            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3538            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3539            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3540            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3541            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     3542            r10000_10ffff_tmp11 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3543            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     3544            byte_9f = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     3545            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3546            sequence_f0_9f = simd_and(byte_f0_adv, byte_9f);
     3547            r10000_10ffff_tmp13 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3548            r10000_10ffff_tmp14 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp13);
     3549            r10000_10ffff_tmp15 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3550            byte_range_a4_a7 = simd_and(r10000_10ffff_tmp14, r10000_10ffff_tmp15);
     3551            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9f, carryQ.get_carry_in(1), sequence_f0_9f_adv));
     3552            sequence_f0_9f_byte_range_a4_a7 = simd_and(sequence_f0_9f_adv, byte_range_a4_a7);
     3553            byte_range_80_bf = r10000_10ffff_tmp7;
     3554            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9f_byte_range_a4_a7, carryQ.get_carry_in(2), sequence_f0_9f_byte_range_a4_a7_adv));
     3555            sequence_f0_9f_a4_80 = simd_and(sequence_f0_9f_byte_range_a4_a7_adv, byte_range_80_bf);
     3556            struct_blk_Sup_Symbols_And_Pictographs.cc = simd_or(struct_blk_Sup_Symbols_And_Pictographs.cc, sequence_f0_9f_a4_80);
     3557          }
     3558          else {
     3559            carryQ.CarryDequeueEnqueue(0, 3);
     3560          }
     3561        }
     3562        else {
     3563          carryQ.CarryDequeueEnqueue(0, 3);
     3564        }
     3565        carryQ.CarryQ_Adjust(3);
     3566  }
     3567  IDISA_INLINE void clear() {
     3568 }
     3569 
     3570  CarryArray<3, 0> carryQ;
     3571  };
     3572
     3573  struct Property_blk_Arabic_Math {
     3574  Property_blk_Arabic_Math() {
     3575 }
     3576  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Arabic_Math & struct_blk_Arabic_Math) {
     3577                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3578                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3579                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3580                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     3581                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     3582                BitBlock byte_9e, byte_f0_adv, sequence_f0_9e, r10000_10ffff_tmp13;
     3583                BitBlock r10000_10ffff_tmp14, byte_range_b8_bb, sequence_f0_9e_adv;
     3584                BitBlock sequence_f0_9e_byte_range_b8_bb, byte_range_80_bf;
     3585                BitBlock sequence_f0_9e_byte_range_b8_bb_adv, sequence_f0_9e_b8_80;
     3586
     3587
     3588
     3589
     3590        struct_blk_Arabic_Math.cc = simd<1>::constant<0>();
     3591        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3592        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     3593          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3594          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3595          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3596          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     3597            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3598            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3599            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3600            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3601            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3602            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3603            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3604            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3605            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3606            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3607            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     3608            r10000_10ffff_tmp11 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     3609            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     3610            byte_9e = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     3611            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3612            sequence_f0_9e = simd_and(byte_f0_adv, byte_9e);
     3613            r10000_10ffff_tmp13 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp2);
     3614            r10000_10ffff_tmp14 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     3615            byte_range_b8_bb = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp14);
     3616            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9e, carryQ.get_carry_in(1), sequence_f0_9e_adv));
     3617            sequence_f0_9e_byte_range_b8_bb = simd_and(sequence_f0_9e_adv, byte_range_b8_bb);
     3618            byte_range_80_bf = r10000_10ffff_tmp7;
     3619            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9e_byte_range_b8_bb, carryQ.get_carry_in(2), sequence_f0_9e_byte_range_b8_bb_adv));
     3620            sequence_f0_9e_b8_80 = simd_and(sequence_f0_9e_byte_range_b8_bb_adv, byte_range_80_bf);
     3621            struct_blk_Arabic_Math.cc = simd_or(struct_blk_Arabic_Math.cc, sequence_f0_9e_b8_80);
     3622          }
     3623          else {
     3624            carryQ.CarryDequeueEnqueue(0, 3);
     3625          }
     3626        }
     3627        else {
     3628          carryQ.CarryDequeueEnqueue(0, 3);
     3629        }
     3630        carryQ.CarryQ_Adjust(3);
     3631  }
     3632  IDISA_INLINE void clear() {
     3633 }
     3634 
     3635  CarryArray<3, 0> carryQ;
     3636  };
     3637
     3638  struct Property_blk_Math_Alphanum {
     3639  Property_blk_Math_Alphanum() {
     3640 }
     3641  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Math_Alphanum & struct_blk_Math_Alphanum) {
     3642                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3643                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3644                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3645                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     3646                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     3647                BitBlock byte_9d, byte_f0_adv, sequence_f0_9d, byte_range_90_9f;
     3648                BitBlock sequence_f0_9d_adv, sequence_f0_9d_byte_range_90_9f, byte_range_80_bf;
     3649                BitBlock sequence_f0_9d_byte_range_90_9f_adv, sequence_f0_9d_90_80;
     3650
     3651
     3652
     3653
     3654        struct_blk_Math_Alphanum.cc = simd<1>::constant<0>();
     3655        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3656        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     3657          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3658          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3659          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3660          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     3661            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3662            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3663            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3664            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3665            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3666            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3667            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3668            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3669            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3670            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3671            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     3672            r10000_10ffff_tmp11 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     3673            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     3674            byte_9d = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     3675            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3676            sequence_f0_9d = simd_and(byte_f0_adv, byte_9d);
     3677            byte_range_90_9f = r10000_10ffff_tmp9;
     3678            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9d, carryQ.get_carry_in(1), sequence_f0_9d_adv));
     3679            sequence_f0_9d_byte_range_90_9f = simd_and(sequence_f0_9d_adv, byte_range_90_9f);
     3680            byte_range_80_bf = r10000_10ffff_tmp7;
     3681            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9d_byte_range_90_9f, carryQ.get_carry_in(2), sequence_f0_9d_byte_range_90_9f_adv));
     3682            sequence_f0_9d_90_80 = simd_and(sequence_f0_9d_byte_range_90_9f_adv, byte_range_80_bf);
     3683            struct_blk_Math_Alphanum.cc = simd_or(struct_blk_Math_Alphanum.cc, sequence_f0_9d_90_80);
     3684          }
     3685          else {
     3686            carryQ.CarryDequeueEnqueue(0, 3);
     3687          }
     3688        }
     3689        else {
     3690          carryQ.CarryDequeueEnqueue(0, 3);
     3691        }
     3692        carryQ.CarryQ_Adjust(3);
     3693  }
     3694  IDISA_INLINE void clear() {
     3695 }
     3696 
     3697  CarryArray<3, 0> carryQ;
     3698  };
     3699
     3700  struct Property_blk_Brahmi {
     3701  Property_blk_Brahmi() {
     3702 }
     3703  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Brahmi & struct_blk_Brahmi) {
     3704                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3705                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3706                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3707                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     3708                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_91, byte_f0_adv;
     3709                BitBlock sequence_f0_91, r10000_10ffff_tmp12, r10000_10ffff_tmp13;
     3710                BitBlock r10000_10ffff_tmp14, byte_range_80_81, sequence_f0_91_adv;
     3711                BitBlock sequence_f0_91_byte_range_80_81, byte_range_80_bf;
     3712                BitBlock sequence_f0_91_byte_range_80_81_adv, sequence_f0_91_80_80;
     3713
     3714
     3715
     3716
     3717        struct_blk_Brahmi.cc = simd<1>::constant<0>();
     3718        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3719        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     3720          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3721          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3722          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3723          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     3724            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3725            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3726            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3727            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3728            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3729            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3730            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3731            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3732            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3733            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3734            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     3735            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp4);
     3736            byte_91 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     3737            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3738            sequence_f0_91 = simd_and(byte_f0_adv, byte_91);
     3739            r10000_10ffff_tmp12 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     3740            r10000_10ffff_tmp13 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp12);
     3741            r10000_10ffff_tmp14 = simd_or(r10000_10ffff_tmp4, basis_bits.bit_6);
     3742            byte_range_80_81 = simd_andc(r10000_10ffff_tmp13, r10000_10ffff_tmp14);
     3743            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_91, carryQ.get_carry_in(1), sequence_f0_91_adv));
     3744            sequence_f0_91_byte_range_80_81 = simd_and(sequence_f0_91_adv, byte_range_80_81);
     3745            byte_range_80_bf = r10000_10ffff_tmp7;
     3746            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_91_byte_range_80_81, carryQ.get_carry_in(2), sequence_f0_91_byte_range_80_81_adv));
     3747            sequence_f0_91_80_80 = simd_and(sequence_f0_91_byte_range_80_81_adv, byte_range_80_bf);
     3748            struct_blk_Brahmi.cc = simd_or(struct_blk_Brahmi.cc, sequence_f0_91_80_80);
     3749          }
     3750          else {
     3751            carryQ.CarryDequeueEnqueue(0, 3);
     3752          }
     3753        }
     3754        else {
     3755          carryQ.CarryDequeueEnqueue(0, 3);
     3756        }
     3757        carryQ.CarryQ_Adjust(3);
     3758  }
     3759  IDISA_INLINE void clear() {
     3760 }
     3761 
     3762  CarryArray<3, 0> carryQ;
     3763  };
     3764
     3765  struct Property_blk_Georgian_Sup {
     3766  Property_blk_Georgian_Sup() {
     3767 }
     3768  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Georgian_Sup & struct_blk_Georgian_Sup) {
     3769                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     3770                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     3771                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     3772                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     3773                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     3774                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     3775                BitBlock r800_4dff_tmp5, byte_range_e2_e3, r800_4dff_tmp6, r800_4dff_tmp7;
     3776                BitBlock r800_4dff_tmp8, r800_4dff_tmp9, r800_4dff_tmp10, r800_4dff_tmp11;
     3777                BitBlock r800_4dff_tmp12, r800_4dff_tmp13, r800_4dff_tmp14, r2000_4dff_tmp1;
     3778                BitBlock r2000_4dff_tmp2, r2000_4dff_tmp3, r2000_4dff_tmp4, r2000_4dff_tmp5;
     3779                BitBlock r2000_4dff_tmp6, byte_e2, r2000_2fff_tmp1, r2000_2fff_tmp2;
     3780                BitBlock r2000_2fff_tmp3, r2000_2fff_tmp4, r2000_2fff_tmp5, r2000_2fff_tmp6;
     3781                BitBlock r2000_2fff_tmp7, r2000_2fff_tmp8, r2000_2fff_tmp9, r2000_2fff_tmp10;
     3782                BitBlock r2000_2fff_tmp11, r2000_2fff_tmp12, byte_b4, byte_e2_adv;
     3783                BitBlock sequence_e2_b4, byte_range_80_af, sequence_e2_b4_adv;
     3784                BitBlock r2000_2fff_tmp13;
     3785
     3786
     3787
     3788
     3789        struct_blk_Georgian_Sup.cc = simd<1>::constant<0>();
     3790        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3791        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     3792          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3793          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3794          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
    17273795          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 4))) {
    1728             r800_ffff_tmp1 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
    1729             byte_range_e0_e3 = simd_andc(byte_range_e0_ef, r800_ffff_tmp1);
    1730             r800_ffff_tmp2 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
    1731             r800_ffff_tmp3 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
    1732             r800_ffff_tmp4 = simd_andc(r800_ffff_tmp2, r800_ffff_tmp3);
    1733             byte_e4 = simd_and(byte_range_e0_ef, r800_ffff_tmp4);
    1734             r800_ffff_tmp5 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
    1735             r800_ffff_tmp6 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
    1736             r800_ffff_tmp7 = simd_and(basis_bits.bit_2, r800_ffff_tmp6);
    1737             byte_range_80_b7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp7);
    1738             carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp8));
    1739             r800_ffff_tmp9 = simd_and(r800_ffff_tmp8, byte_range_80_b7);
    1740             r800_ffff_tmp10 = simd_or(byte_range_e0_e3, r800_ffff_tmp9);
    1741             if ((bitblock::any(r800_ffff_tmp10) || carryQ.CarryTest(1, 3))) {
    1742               r800_4dff_tmp1 = simd_andc(basis_bits.bit_6, r800_ffff_tmp1);
    1743               byte_range_e2_e3 = simd_and(byte_range_e0_ef, r800_4dff_tmp1);
    1744               r800_4dff_tmp2 = simd_or(byte_range_e2_e3, r800_ffff_tmp9);
    1745               if ((bitblock::any(r800_4dff_tmp2) || carryQ.CarryTest(1, 3))) {
    1746                 r2000_4dff_tmp1 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
    1747                 r2000_4dff_tmp2 = simd_andc(r2000_4dff_tmp1, r800_ffff_tmp1);
    1748                 byte_e2 = simd_and(byte_range_e0_ef, r2000_4dff_tmp2);
    1749                 if ((bitblock::any(byte_e2) || carryQ.CarryTest(1, 3))) {
    1750                   r2000_2fff_tmp1 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
    1751                   r2000_2fff_tmp2 = simd_and(r800_ffff_tmp5, r2000_2fff_tmp1);
    1752                   r2000_2fff_tmp3 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
    1753                   r2000_2fff_tmp4 = simd_and(r2000_2fff_tmp2, r2000_2fff_tmp3);
    1754                   r2000_2fff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
    1755                   byte_range_bc_be = simd_andc(r2000_2fff_tmp4, r2000_2fff_tmp5);
    1756                   carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e2, carryQ.get_carry_in(1), byte_e2_adv));
    1757                   byte_e2_byte_range_bc_be = simd_and(byte_e2_adv, byte_range_bc_be);
    1758                   byte_range_80_bf = r800_ffff_tmp5;
    1759                   carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e2_byte_range_bc_be, carryQ.get_carry_in(2), byte_e2_byte_range_bc_be_adv));
    1760                   byte_e2_byte_range_bc_be_sfx = simd_and(byte_e2_byte_range_bc_be_adv, byte_range_80_bf);
    1761                   struct_blk_Kangxi.cc = simd_or(struct_blk_Kangxi.cc, byte_e2_byte_range_bc_be_sfx);
    1762                   r2000_2fff_tmp6 = simd_and(byte_range_80_bf, r2000_2fff_tmp1);
    1763                   r2000_2fff_tmp7 = simd_and(r2000_2fff_tmp3, r2000_2fff_tmp5);
    1764                   byte_bf = simd_and(r2000_2fff_tmp6, r2000_2fff_tmp7);
     3796            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3797            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3798            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     3799            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3800            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     3801            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3802            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3803            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     3804            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     3805            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3806            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     3807            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     3808            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     3809            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     3810            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     3811            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     3812            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 3))) {
     3813              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3814              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3815              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     3816              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3817              r800_4dff_tmp5 = simd_andc(basis_bits.bit_6, r800_4dff_tmp4);
     3818              byte_range_e2_e3 = simd_and(r800_4dff_tmp3, r800_4dff_tmp5);
     3819              r800_4dff_tmp6 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3820              r800_4dff_tmp7 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3821              r800_4dff_tmp8 = simd_andc(r800_4dff_tmp6, r800_4dff_tmp7);
     3822              byte_e4 = simd_and(r800_4dff_tmp3, r800_4dff_tmp8);
     3823              r800_4dff_tmp9 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3824              r800_4dff_tmp10 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     3825              r800_4dff_tmp11 = simd_and(basis_bits.bit_2, r800_4dff_tmp10);
     3826              byte_range_80_b7 = simd_andc(r800_4dff_tmp9, r800_4dff_tmp11);
     3827              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(1), r800_4dff_tmp12));
     3828              r800_4dff_tmp13 = simd_and(r800_4dff_tmp12, byte_range_80_b7);
     3829              r800_4dff_tmp14 = simd_or(byte_range_e2_e3, r800_4dff_tmp13);
     3830              if ((bitblock::any(r800_4dff_tmp14) || carryQ.CarryTest(2, 2))) {
     3831                r2000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3832                r2000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3833                r2000_4dff_tmp3 = simd_and(r2000_4dff_tmp1, r2000_4dff_tmp2);
     3834                r2000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3835                r2000_4dff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     3836                r2000_4dff_tmp6 = simd_andc(r2000_4dff_tmp5, r2000_4dff_tmp4);
     3837                byte_e2 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp6);
     3838                if ((bitblock::any(byte_e2) || carryQ.CarryTest(2, 2))) {
     3839                  r2000_2fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3840                  r2000_2fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3841                  r2000_2fff_tmp3 = simd_and(r2000_2fff_tmp1, r2000_2fff_tmp2);
     3842                  r2000_2fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3843                  r2000_2fff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     3844                  r2000_2fff_tmp6 = simd_andc(r2000_2fff_tmp5, r2000_2fff_tmp4);
     3845                  byte_e2 = simd_and(r2000_2fff_tmp3, r2000_2fff_tmp6);
     3846                  r2000_2fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3847                  r2000_2fff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3848                  r2000_2fff_tmp9 = simd_and(r2000_2fff_tmp7, r2000_2fff_tmp8);
     3849                  r2000_2fff_tmp10 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     3850                  r2000_2fff_tmp11 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3851                  r2000_2fff_tmp12 = simd_andc(r2000_2fff_tmp10, r2000_2fff_tmp11);
     3852                  byte_b4 = simd_and(r2000_2fff_tmp9, r2000_2fff_tmp12);
     3853                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e2, carryQ.get_carry_in(2), byte_e2_adv));
     3854                  sequence_e2_b4 = simd_and(byte_e2_adv, byte_b4);
     3855                  byte_range_80_af = simd_andc(r2000_2fff_tmp7, r2000_2fff_tmp8);
     3856                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_e2_b4, carryQ.get_carry_in(3), sequence_e2_b4_adv));
     3857                  r2000_2fff_tmp13 = simd_and(sequence_e2_b4_adv, byte_range_80_af);
     3858                  struct_blk_Georgian_Sup.cc = simd_or(struct_blk_Georgian_Sup.cc, r2000_2fff_tmp13);
     3859                }
     3860                else {
     3861                  carryQ.CarryDequeueEnqueue(2, 2);
     3862                }
     3863              }
     3864              else {
     3865                carryQ.CarryDequeueEnqueue(2, 2);
     3866              }
     3867            }
     3868            else {
     3869              carryQ.CarryDequeueEnqueue(1, 3);
     3870            }
     3871          }
     3872          else {
     3873            carryQ.CarryDequeueEnqueue(0, 4);
     3874          }
     3875        }
     3876        else {
     3877          carryQ.CarryDequeueEnqueue(0, 4);
     3878        }
     3879        carryQ.CarryQ_Adjust(4);
     3880  }
     3881  IDISA_INLINE void clear() {
     3882 }
     3883 
     3884  CarryArray<4, 0> carryQ;
     3885  };
     3886
     3887  struct Property_blk_Old_Italic {
     3888  Property_blk_Old_Italic() {
     3889 }
     3890  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Old_Italic & struct_blk_Old_Italic) {
     3891                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     3892                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     3893                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     3894                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_90;
     3895                BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
     3896                BitBlock r10000_10ffff_tmp12, r10000_10ffff_tmp13, byte_8c, sequence_f0_90_adv;
     3897                BitBlock sequence_f0_90_8c, byte_range_80_af, sequence_f0_90_8c_adv;
     3898                BitBlock r10000_10ffff_tmp14;
     3899
     3900
     3901
     3902
     3903        struct_blk_Old_Italic.cc = simd<1>::constant<0>();
     3904        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3905        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     3906          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3907          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3908          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3909          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     3910            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3911            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3912            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     3913            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     3914            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3915            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     3916            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     3917            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3918            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     3919            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     3920            byte_90 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
     3921            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     3922            sequence_f0_90 = simd_and(byte_f0_adv, byte_90);
     3923            r10000_10ffff_tmp10 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     3924            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
     3925            r10000_10ffff_tmp12 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     3926            r10000_10ffff_tmp13 = simd_andc(r10000_10ffff_tmp12, r10000_10ffff_tmp5);
     3927            byte_8c = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp13);
     3928            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_90, carryQ.get_carry_in(1), sequence_f0_90_adv));
     3929            sequence_f0_90_8c = simd_and(sequence_f0_90_adv, byte_8c);
     3930            byte_range_80_af = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp2);
     3931            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_90_8c, carryQ.get_carry_in(2), sequence_f0_90_8c_adv));
     3932            r10000_10ffff_tmp14 = simd_and(sequence_f0_90_8c_adv, byte_range_80_af);
     3933            struct_blk_Old_Italic.cc = simd_or(struct_blk_Old_Italic.cc, r10000_10ffff_tmp14);
     3934          }
     3935          else {
     3936            carryQ.CarryDequeueEnqueue(0, 3);
     3937          }
     3938        }
     3939        else {
     3940          carryQ.CarryDequeueEnqueue(0, 3);
     3941        }
     3942        carryQ.CarryQ_Adjust(3);
     3943  }
     3944  IDISA_INLINE void clear() {
     3945 }
     3946 
     3947  CarryArray<3, 0> carryQ;
     3948  };
     3949
     3950  struct Property_blk_VS {
     3951  Property_blk_VS() {
     3952 }
     3953  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_VS & struct_blk_VS) {
     3954                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     3955                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     3956                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     3957                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     3958                BitBlock byte_ef, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     3959                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, ra000_ffff_tmp12, byte_b8;
     3960                BitBlock byte_ef_adv, sequence_ef_b8, ra000_ffff_tmp13, byte_range_80_8f;
     3961                BitBlock sequence_ef_b8_adv, ra000_ffff_tmp14;
     3962
     3963
     3964
     3965
     3966        struct_blk_VS.cc = simd<1>::constant<0>();
     3967        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3968        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 2))) {
     3969          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3970          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3971          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     3972          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 2))) {
     3973            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3974            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3975            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     3976            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     3977            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     3978            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     3979            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 2))) {
     3980              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     3981              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     3982              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     3983              ra000_ffff_tmp4 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     3984              ra000_ffff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     3985              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     3986              byte_ef = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     3987              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     3988              ra000_ffff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     3989              ra000_ffff_tmp9 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp8);
     3990              ra000_ffff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     3991              ra000_ffff_tmp11 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     3992              ra000_ffff_tmp12 = simd_andc(ra000_ffff_tmp10, ra000_ffff_tmp11);
     3993              byte_b8 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp12);
     3994              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ef, carryQ.get_carry_in(0), byte_ef_adv));
     3995              sequence_ef_b8 = simd_and(byte_ef_adv, byte_b8);
     3996              ra000_ffff_tmp13 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     3997              byte_range_80_8f = simd_andc(ra000_ffff_tmp7, ra000_ffff_tmp13);
     3998              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ef_b8, carryQ.get_carry_in(1), sequence_ef_b8_adv));
     3999              ra000_ffff_tmp14 = simd_and(sequence_ef_b8_adv, byte_range_80_8f);
     4000              struct_blk_VS.cc = simd_or(struct_blk_VS.cc, ra000_ffff_tmp14);
     4001            }
     4002            else {
     4003              carryQ.CarryDequeueEnqueue(0, 2);
     4004            }
     4005          }
     4006          else {
     4007            carryQ.CarryDequeueEnqueue(0, 2);
     4008          }
     4009        }
     4010        else {
     4011          carryQ.CarryDequeueEnqueue(0, 2);
     4012        }
     4013        carryQ.CarryQ_Adjust(2);
     4014  }
     4015  IDISA_INLINE void clear() {
     4016 }
     4017 
     4018  CarryArray<2, 0> carryQ;
     4019  };
     4020
     4021  struct Property_blk_Lao {
     4022  Property_blk_Lao() {
     4023 }
     4024  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Lao & struct_blk_Lao) {
     4025                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     4026                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     4027                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     4028                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     4029                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     4030                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     4031                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     4032                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
     4033                BitBlock byte_e0, r800_fff_tmp1, r800_fff_tmp2, r800_fff_tmp3, r800_fff_tmp4;
     4034                BitBlock r800_fff_tmp5, r800_fff_tmp6, r800_fff_tmp7, r800_fff_tmp8;
     4035                BitBlock r800_fff_tmp9, r800_fff_tmp10, r800_fff_tmp11, byte_range_ba_bb;
     4036                BitBlock byte_e0_adv, byte_e0_byte_range_ba_bb, byte_range_80_bf;
     4037                BitBlock byte_e0_byte_range_ba_bb_adv, sequence_e0_ba_80;
     4038
     4039
     4040
     4041
     4042        struct_blk_Lao.cc = simd<1>::constant<0>();
     4043        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4044        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4045          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4046          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4047          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4048          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     4049            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4050            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4051            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     4052            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4053            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     4054            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     4055            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4056            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     4057            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     4058            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4059            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     4060            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     4061            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     4062            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     4063            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     4064            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     4065            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 2))) {
     4066              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4067              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4068              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     4069              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4070              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     4071              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
     4072              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 2))) {
     4073                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4074                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4075                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     4076                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4077                r800_1fff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4078                r800_1fff_tmp6 = simd_or(r800_1fff_tmp4, r800_1fff_tmp5);
     4079                byte_e0 = simd_andc(r800_1fff_tmp3, r800_1fff_tmp6);
     4080                if ((bitblock::any(byte_e0) || carryQ.CarryTest(1, 2))) {
     4081                  r800_fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4082                  r800_fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4083                  r800_fff_tmp3 = simd_and(r800_fff_tmp1, r800_fff_tmp2);
     4084                  r800_fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4085                  r800_fff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4086                  r800_fff_tmp6 = simd_or(r800_fff_tmp4, r800_fff_tmp5);
     4087                  byte_e0 = simd_andc(r800_fff_tmp3, r800_fff_tmp6);
     4088                  r800_fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4089                  r800_fff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4090                  r800_fff_tmp9 = simd_and(r800_fff_tmp7, r800_fff_tmp8);
     4091                  r800_fff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     4092                  r800_fff_tmp11 = simd_and(r800_fff_tmp10, basis_bits.bit_6);
     4093                  byte_range_ba_bb = simd_and(r800_fff_tmp9, r800_fff_tmp11);
     4094                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e0, carryQ.get_carry_in(1), byte_e0_adv));
     4095                  byte_e0_byte_range_ba_bb = simd_and(byte_e0_adv, byte_range_ba_bb);
     4096                  byte_range_80_bf = r800_fff_tmp7;
     4097                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e0_byte_range_ba_bb, carryQ.get_carry_in(2), byte_e0_byte_range_ba_bb_adv));
     4098                  sequence_e0_ba_80 = simd_and(byte_e0_byte_range_ba_bb_adv, byte_range_80_bf);
     4099                  struct_blk_Lao.cc = simd_or(struct_blk_Lao.cc, sequence_e0_ba_80);
     4100                }
     4101                else {
     4102                  carryQ.CarryDequeueEnqueue(1, 2);
     4103                }
     4104              }
     4105              else {
     4106                carryQ.CarryDequeueEnqueue(1, 2);
     4107              }
     4108            }
     4109            else {
     4110              carryQ.CarryDequeueEnqueue(1, 2);
     4111            }
     4112          }
     4113          else {
     4114            carryQ.CarryDequeueEnqueue(0, 3);
     4115          }
     4116        }
     4117        else {
     4118          carryQ.CarryDequeueEnqueue(0, 3);
     4119        }
     4120        carryQ.CarryQ_Adjust(3);
     4121  }
     4122  IDISA_INLINE void clear() {
     4123 }
     4124 
     4125  CarryArray<3, 0> carryQ;
     4126  };
     4127
     4128  struct Property_blk_Ethiopic_Sup {
     4129  Property_blk_Ethiopic_Sup() {
     4130 }
     4131  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Ethiopic_Sup & struct_blk_Ethiopic_Sup) {
     4132                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     4133                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     4134                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     4135                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     4136                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     4137                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     4138                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     4139                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
     4140                BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, r1000_1fff_tmp3;
     4141                BitBlock r1000_1fff_tmp4, r1000_1fff_tmp5, r1000_1fff_tmp6, r1000_1fff_tmp7;
     4142                BitBlock r1000_1fff_tmp8, r1000_1fff_tmp9, r1000_1fff_tmp10, r1000_1fff_tmp11;
     4143                BitBlock r1000_1fff_tmp12, byte_8e, byte_e1_adv, sequence_e1_8e;
     4144                BitBlock byte_range_80_9f, sequence_e1_8e_adv, r1000_1fff_tmp13;
     4145
     4146
     4147
     4148
     4149        struct_blk_Ethiopic_Sup.cc = simd<1>::constant<0>();
     4150        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4151        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4152          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4153          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4154          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4155          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     4156            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4157            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4158            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     4159            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4160            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     4161            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     4162            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4163            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     4164            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     4165            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4166            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     4167            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     4168            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     4169            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     4170            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     4171            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     4172            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 2))) {
     4173              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4174              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4175              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     4176              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4177              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     4178              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
     4179              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 2))) {
     4180                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4181                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4182                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     4183                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4184                r800_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4185                r800_1fff_tmp6 = simd_andc(r800_1fff_tmp5, r800_1fff_tmp4);
     4186                byte_e1 = simd_and(r800_1fff_tmp3, r800_1fff_tmp6);
     4187                if ((bitblock::any(byte_e1) || carryQ.CarryTest(1, 2))) {
     4188                  r1000_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4189                  r1000_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4190                  r1000_1fff_tmp3 = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp2);
     4191                  r1000_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4192                  r1000_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4193                  r1000_1fff_tmp6 = simd_andc(r1000_1fff_tmp5, r1000_1fff_tmp4);
     4194                  byte_e1 = simd_and(r1000_1fff_tmp3, r1000_1fff_tmp6);
     4195                  r1000_1fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4196                  r1000_1fff_tmp8 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4197                  r1000_1fff_tmp9 = simd_andc(r1000_1fff_tmp7, r1000_1fff_tmp8);
     4198                  r1000_1fff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     4199                  r1000_1fff_tmp11 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     4200                  r1000_1fff_tmp12 = simd_and(r1000_1fff_tmp10, r1000_1fff_tmp11);
     4201                  byte_8e = simd_and(r1000_1fff_tmp9, r1000_1fff_tmp12);
     4202                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e1, carryQ.get_carry_in(1), byte_e1_adv));
     4203                  sequence_e1_8e = simd_and(byte_e1_adv, byte_8e);
     4204                  byte_range_80_9f = simd_andc(r1000_1fff_tmp7, basis_bits.bit_2);
     4205                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_e1_8e, carryQ.get_carry_in(2), sequence_e1_8e_adv));
     4206                  r1000_1fff_tmp13 = simd_and(sequence_e1_8e_adv, byte_range_80_9f);
     4207                  struct_blk_Ethiopic_Sup.cc = simd_or(struct_blk_Ethiopic_Sup.cc, r1000_1fff_tmp13);
     4208                }
     4209                else {
     4210                  carryQ.CarryDequeueEnqueue(1, 2);
     4211                }
     4212              }
     4213              else {
     4214                carryQ.CarryDequeueEnqueue(1, 2);
     4215              }
     4216            }
     4217            else {
     4218              carryQ.CarryDequeueEnqueue(1, 2);
     4219            }
     4220          }
     4221          else {
     4222            carryQ.CarryDequeueEnqueue(0, 3);
     4223          }
     4224        }
     4225        else {
     4226          carryQ.CarryDequeueEnqueue(0, 3);
     4227        }
     4228        carryQ.CarryQ_Adjust(3);
     4229  }
     4230  IDISA_INLINE void clear() {
     4231 }
     4232 
     4233  CarryArray<3, 0> carryQ;
     4234  };
     4235
     4236  struct Property_blk_Phoenician {
     4237  Property_blk_Phoenician() {
     4238 }
     4239  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Phoenician & struct_blk_Phoenician) {
     4240                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     4241                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     4242                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     4243                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_90;
     4244                BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
     4245                BitBlock r10000_10ffff_tmp12, r10000_10ffff_tmp13, byte_a4, sequence_f0_90_adv;
     4246                BitBlock sequence_f0_90_a4, byte_range_80_9f, sequence_f0_90_a4_adv;
     4247                BitBlock r10000_10ffff_tmp14;
     4248
     4249
     4250
     4251
     4252        struct_blk_Phoenician.cc = simd<1>::constant<0>();
     4253        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4254        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4255          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4256          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4257          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4258          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     4259            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4260            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4261            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     4262            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4263            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4264            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     4265            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     4266            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4267            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     4268            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     4269            byte_90 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
     4270            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     4271            sequence_f0_90 = simd_and(byte_f0_adv, byte_90);
     4272            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4273            r10000_10ffff_tmp11 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
     4274            r10000_10ffff_tmp12 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     4275            r10000_10ffff_tmp13 = simd_andc(r10000_10ffff_tmp12, r10000_10ffff_tmp5);
     4276            byte_a4 = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp13);
     4277            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_90, carryQ.get_carry_in(1), sequence_f0_90_adv));
     4278            sequence_f0_90_a4 = simd_and(sequence_f0_90_adv, byte_a4);
     4279            byte_range_80_9f = simd_andc(r10000_10ffff_tmp7, basis_bits.bit_2);
     4280            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_90_a4, carryQ.get_carry_in(2), sequence_f0_90_a4_adv));
     4281            r10000_10ffff_tmp14 = simd_and(sequence_f0_90_a4_adv, byte_range_80_9f);
     4282            struct_blk_Phoenician.cc = simd_or(struct_blk_Phoenician.cc, r10000_10ffff_tmp14);
     4283          }
     4284          else {
     4285            carryQ.CarryDequeueEnqueue(0, 3);
     4286          }
     4287        }
     4288        else {
     4289          carryQ.CarryDequeueEnqueue(0, 3);
     4290        }
     4291        carryQ.CarryQ_Adjust(3);
     4292  }
     4293  IDISA_INLINE void clear() {
     4294 }
     4295 
     4296  CarryArray<3, 0> carryQ;
     4297  };
     4298
     4299  struct Property_blk_Ahom {
     4300  Property_blk_Ahom() {
     4301 }
     4302  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Ahom & struct_blk_Ahom) {
     4303                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     4304                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     4305                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     4306                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     4307                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_91, byte_f0_adv;
     4308                BitBlock sequence_f0_91, r10000_10ffff_tmp12, r10000_10ffff_tmp13, byte_9c;
     4309                BitBlock sequence_f0_91_adv, sequence_f0_91_9c, byte_range_80_bf;
     4310                BitBlock r10000_10ffff_tmp14, sequence_f0_91_9c_adv, r10000_10ffff_tmp15;
     4311
     4312
     4313
     4314
     4315        struct_blk_Ahom.cc = simd<1>::constant<0>();
     4316        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4317        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4318          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4319          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4320          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4321          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     4322            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4323            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4324            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     4325            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4326            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4327            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     4328            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     4329            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4330            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     4331            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     4332            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4333            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp4);
     4334            byte_91 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     4335            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     4336            sequence_f0_91 = simd_and(byte_f0_adv, byte_91);
     4337            r10000_10ffff_tmp12 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     4338            r10000_10ffff_tmp13 = simd_andc(r10000_10ffff_tmp12, r10000_10ffff_tmp5);
     4339            byte_9c = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp13);
     4340            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_91, carryQ.get_carry_in(1), sequence_f0_91_adv));
     4341            sequence_f0_91_9c = simd_and(sequence_f0_91_adv, byte_9c);
     4342            byte_range_80_bf = r10000_10ffff_tmp7;
     4343            r10000_10ffff_tmp14 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     4344            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_91_9c, carryQ.get_carry_in(2), sequence_f0_91_9c_adv));
     4345            r10000_10ffff_tmp15 = simd_and(sequence_f0_91_9c_adv, byte_range_80_bf);
     4346            struct_blk_Ahom.cc = simd_or(struct_blk_Ahom.cc, r10000_10ffff_tmp15);
     4347          }
     4348          else {
     4349            carryQ.CarryDequeueEnqueue(0, 3);
     4350          }
     4351        }
     4352        else {
     4353          carryQ.CarryDequeueEnqueue(0, 3);
     4354        }
     4355        carryQ.CarryQ_Adjust(3);
     4356  }
     4357  IDISA_INLINE void clear() {
     4358 }
     4359 
     4360  CarryArray<3, 0> carryQ;
     4361  };
     4362
     4363  struct Property_blk_Syloti_Nagri {
     4364  Property_blk_Syloti_Nagri() {
     4365 }
     4366  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Syloti_Nagri & struct_blk_Syloti_Nagri) {
     4367                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     4368                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     4369                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     4370                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     4371                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     4372                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, byte_a0, byte_ea_adv;
     4373                BitBlock sequence_ea_a0, ra000_ffff_tmp12, byte_range_80_af;
     4374                BitBlock sequence_ea_a0_adv, ra000_ffff_tmp13;
     4375
     4376
     4377
     4378
     4379        struct_blk_Syloti_Nagri.cc = simd<1>::constant<0>();
     4380        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4381        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 2))) {
     4382          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4383          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4384          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4385          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 2))) {
     4386            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4387            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4388            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     4389            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     4390            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     4391            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     4392            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 2))) {
     4393              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4394              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4395              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     4396              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     4397              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     4398              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     4399              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     4400              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4401              ra000_ffff_tmp8 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp2);
     4402              ra000_ffff_tmp9 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4403              ra000_ffff_tmp10 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4404              ra000_ffff_tmp11 = simd_or(ra000_ffff_tmp9, ra000_ffff_tmp10);
     4405              byte_a0 = simd_andc(ra000_ffff_tmp8, ra000_ffff_tmp11);
     4406              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
     4407              sequence_ea_a0 = simd_and(byte_ea_adv, byte_a0);
     4408              ra000_ffff_tmp12 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4409              byte_range_80_af = simd_andc(ra000_ffff_tmp7, ra000_ffff_tmp12);
     4410              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ea_a0, carryQ.get_carry_in(1), sequence_ea_a0_adv));
     4411              ra000_ffff_tmp13 = simd_and(sequence_ea_a0_adv, byte_range_80_af);
     4412              struct_blk_Syloti_Nagri.cc = simd_or(struct_blk_Syloti_Nagri.cc, ra000_ffff_tmp13);
     4413            }
     4414            else {
     4415              carryQ.CarryDequeueEnqueue(0, 2);
     4416            }
     4417          }
     4418          else {
     4419            carryQ.CarryDequeueEnqueue(0, 2);
     4420          }
     4421        }
     4422        else {
     4423          carryQ.CarryDequeueEnqueue(0, 2);
     4424        }
     4425        carryQ.CarryQ_Adjust(2);
     4426  }
     4427  IDISA_INLINE void clear() {
     4428 }
     4429 
     4430  CarryArray<2, 0> carryQ;
     4431  };
     4432
     4433  struct Property_blk_Math_Operators {
     4434  Property_blk_Math_Operators() {
     4435 }
     4436  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Math_Operators & struct_blk_Math_Operators) {
     4437                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     4438                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     4439                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     4440                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     4441                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     4442                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     4443                BitBlock r800_4dff_tmp5, byte_range_e2_e3, r800_4dff_tmp6, r800_4dff_tmp7;
     4444                BitBlock r800_4dff_tmp8, r800_4dff_tmp9, r800_4dff_tmp10, r800_4dff_tmp11;
     4445                BitBlock r800_4dff_tmp12, r800_4dff_tmp13, r800_4dff_tmp14, r2000_4dff_tmp1;
     4446                BitBlock r2000_4dff_tmp2, r2000_4dff_tmp3, r2000_4dff_tmp4, r2000_4dff_tmp5;
     4447                BitBlock r2000_4dff_tmp6, byte_e2, r2000_2fff_tmp1, r2000_2fff_tmp2;
     4448                BitBlock r2000_2fff_tmp3, r2000_2fff_tmp4, r2000_2fff_tmp5, r2000_2fff_tmp6;
     4449                BitBlock r2000_2fff_tmp7, r2000_2fff_tmp8, r2000_2fff_tmp9, r2000_2fff_tmp10;
     4450                BitBlock byte_range_88_8b, byte_e2_adv, byte_e2_byte_range_88_8b;
     4451                BitBlock byte_range_80_bf, byte_e2_byte_range_88_8b_adv, sequence_e2_88_80;
     4452
     4453
     4454
     4455
     4456        struct_blk_Math_Operators.cc = simd<1>::constant<0>();
     4457        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4458        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     4459          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4460          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4461          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4462          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 4))) {
     4463            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4464            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4465            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     4466            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4467            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     4468            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     4469            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4470            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     4471            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     4472            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4473            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     4474            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     4475            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     4476            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     4477            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     4478            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     4479            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 3))) {
     4480              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4481              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4482              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     4483              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4484              r800_4dff_tmp5 = simd_andc(basis_bits.bit_6, r800_4dff_tmp4);
     4485              byte_range_e2_e3 = simd_and(r800_4dff_tmp3, r800_4dff_tmp5);
     4486              r800_4dff_tmp6 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     4487              r800_4dff_tmp7 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4488              r800_4dff_tmp8 = simd_andc(r800_4dff_tmp6, r800_4dff_tmp7);
     4489              byte_e4 = simd_and(r800_4dff_tmp3, r800_4dff_tmp8);
     4490              r800_4dff_tmp9 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4491              r800_4dff_tmp10 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     4492              r800_4dff_tmp11 = simd_and(basis_bits.bit_2, r800_4dff_tmp10);
     4493              byte_range_80_b7 = simd_andc(r800_4dff_tmp9, r800_4dff_tmp11);
     4494              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(1), r800_4dff_tmp12));
     4495              r800_4dff_tmp13 = simd_and(r800_4dff_tmp12, byte_range_80_b7);
     4496              r800_4dff_tmp14 = simd_or(byte_range_e2_e3, r800_4dff_tmp13);
     4497              if ((bitblock::any(r800_4dff_tmp14) || carryQ.CarryTest(2, 2))) {
     4498                r2000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4499                r2000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4500                r2000_4dff_tmp3 = simd_and(r2000_4dff_tmp1, r2000_4dff_tmp2);
     4501                r2000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4502                r2000_4dff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     4503                r2000_4dff_tmp6 = simd_andc(r2000_4dff_tmp5, r2000_4dff_tmp4);
     4504                byte_e2 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp6);
     4505                if ((bitblock::any(byte_e2) || carryQ.CarryTest(2, 2))) {
     4506                  r2000_2fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4507                  r2000_2fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4508                  r2000_2fff_tmp3 = simd_and(r2000_2fff_tmp1, r2000_2fff_tmp2);
     4509                  r2000_2fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4510                  r2000_2fff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     4511                  r2000_2fff_tmp6 = simd_andc(r2000_2fff_tmp5, r2000_2fff_tmp4);
     4512                  byte_e2 = simd_and(r2000_2fff_tmp3, r2000_2fff_tmp6);
     4513                  r2000_2fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4514                  r2000_2fff_tmp8 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4515                  r2000_2fff_tmp9 = simd_andc(r2000_2fff_tmp7, r2000_2fff_tmp8);
     4516                  r2000_2fff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     4517                  byte_range_88_8b = simd_and(r2000_2fff_tmp9, r2000_2fff_tmp10);
     4518                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e2, carryQ.get_carry_in(2), byte_e2_adv));
     4519                  byte_e2_byte_range_88_8b = simd_and(byte_e2_adv, byte_range_88_8b);
     4520                  byte_range_80_bf = r2000_2fff_tmp7;
     4521                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(byte_e2_byte_range_88_8b, carryQ.get_carry_in(3), byte_e2_byte_range_88_8b_adv));
     4522                  sequence_e2_88_80 = simd_and(byte_e2_byte_range_88_8b_adv, byte_range_80_bf);
     4523                  struct_blk_Math_Operators.cc = simd_or(struct_blk_Math_Operators.cc, sequence_e2_88_80);
     4524                }
     4525                else {
     4526                  carryQ.CarryDequeueEnqueue(2, 2);
     4527                }
     4528              }
     4529              else {
     4530                carryQ.CarryDequeueEnqueue(2, 2);
     4531              }
     4532            }
     4533            else {
     4534              carryQ.CarryDequeueEnqueue(1, 3);
     4535            }
     4536          }
     4537          else {
     4538            carryQ.CarryDequeueEnqueue(0, 4);
     4539          }
     4540        }
     4541        else {
     4542          carryQ.CarryDequeueEnqueue(0, 4);
     4543        }
     4544        carryQ.CarryQ_Adjust(4);
     4545  }
     4546  IDISA_INLINE void clear() {
     4547 }
     4548 
     4549  CarryArray<4, 0> carryQ;
     4550  };
     4551
     4552  struct Property_blk_Warang_Citi {
     4553  Property_blk_Warang_Citi() {
     4554 }
     4555  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Warang_Citi & struct_blk_Warang_Citi) {
     4556                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     4557                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     4558                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     4559                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     4560                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, byte_91, byte_f0_adv;
     4561                BitBlock sequence_f0_91, r10000_10ffff_tmp12, r10000_10ffff_tmp13;
     4562                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, byte_a2, sequence_f0_91_adv;
     4563                BitBlock sequence_f0_91_a2, byte_range_a0_bf, sequence_f0_91_a2_adv;
     4564                BitBlock r10000_10ffff_tmp16, r10000_10ffff_tmp17, r10000_10ffff_tmp18;
     4565                BitBlock byte_a3, sequence_f0_91_a3, byte_range_80_bf, r10000_10ffff_tmp19;
     4566                BitBlock r10000_10ffff_tmp20, sequence_f0_91_a3_adv, r10000_10ffff_tmp21;
     4567
     4568
     4569
     4570
     4571        struct_blk_Warang_Citi.cc = simd<1>::constant<0>();
     4572        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4573        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     4574          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4575          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4576          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4577          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 4))) {
     4578            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4579            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4580            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     4581            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4582            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4583            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     4584            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     4585            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4586            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     4587            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     4588            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4589            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp4);
     4590            byte_91 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     4591            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     4592            sequence_f0_91 = simd_and(byte_f0_adv, byte_91);
     4593            r10000_10ffff_tmp12 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4594            r10000_10ffff_tmp13 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp12);
     4595            r10000_10ffff_tmp14 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     4596            r10000_10ffff_tmp15 = simd_andc(r10000_10ffff_tmp14, r10000_10ffff_tmp4);
     4597            byte_a2 = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp15);
     4598            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_91, carryQ.get_carry_in(1), sequence_f0_91_adv));
     4599            sequence_f0_91_a2 = simd_and(sequence_f0_91_adv, byte_a2);
     4600            byte_range_a0_bf = simd_and(r10000_10ffff_tmp7, basis_bits.bit_2);
     4601            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_91_a2, carryQ.get_carry_in(2), sequence_f0_91_a2_adv));
     4602            r10000_10ffff_tmp16 = simd_and(sequence_f0_91_a2_adv, byte_range_a0_bf);
     4603            struct_blk_Warang_Citi.cc = simd_or(struct_blk_Warang_Citi.cc, r10000_10ffff_tmp16);
     4604            r10000_10ffff_tmp17 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     4605            r10000_10ffff_tmp18 = simd_andc(r10000_10ffff_tmp17, r10000_10ffff_tmp4);
     4606            byte_a3 = simd_and(r10000_10ffff_tmp13, r10000_10ffff_tmp18);
     4607            sequence_f0_91_a3 = simd_and(sequence_f0_91_adv, byte_a3);
     4608            byte_range_80_bf = r10000_10ffff_tmp7;
     4609            r10000_10ffff_tmp19 = simd_and(byte_range_80_bf, r10000_10ffff_tmp8);
     4610            r10000_10ffff_tmp20 = simd_and(byte_range_80_bf, r10000_10ffff_tmp12);
     4611            carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_f0_91_a3, carryQ.get_carry_in(3), sequence_f0_91_a3_adv));
     4612            r10000_10ffff_tmp21 = simd_and(sequence_f0_91_a3_adv, byte_range_80_bf);
     4613            struct_blk_Warang_Citi.cc = simd_or(struct_blk_Warang_Citi.cc, r10000_10ffff_tmp21);
     4614          }
     4615          else {
     4616            carryQ.CarryDequeueEnqueue(0, 4);
     4617          }
     4618        }
     4619        else {
     4620          carryQ.CarryDequeueEnqueue(0, 4);
     4621        }
     4622        carryQ.CarryQ_Adjust(4);
     4623  }
     4624  IDISA_INLINE void clear() {
     4625 }
     4626 
     4627  CarryArray<4, 0> carryQ;
     4628  };
     4629
     4630  struct Property_blk_Elbasan {
     4631  Property_blk_Elbasan() {
     4632 }
     4633  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Elbasan & struct_blk_Elbasan) {
     4634                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     4635                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     4636                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     4637                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_90;
     4638                BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
     4639                BitBlock byte_94, sequence_f0_90_adv, sequence_f0_90_94, byte_range_80_af;
     4640                BitBlock sequence_f0_90_94_adv, r10000_10ffff_tmp12;
     4641
     4642
     4643
     4644
     4645        struct_blk_Elbasan.cc = simd<1>::constant<0>();
     4646        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4647        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4648          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4649          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4650          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4651          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     4652            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4653            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4654            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     4655            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4656            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4657            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     4658            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     4659            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4660            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     4661            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     4662            byte_90 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
     4663            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     4664            sequence_f0_90 = simd_and(byte_f0_adv, byte_90);
     4665            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     4666            r10000_10ffff_tmp11 = simd_andc(r10000_10ffff_tmp10, r10000_10ffff_tmp5);
     4667            byte_94 = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp11);
     4668            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_90, carryQ.get_carry_in(1), sequence_f0_90_adv));
     4669            sequence_f0_90_94 = simd_and(sequence_f0_90_adv, byte_94);
     4670            byte_range_80_af = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp2);
     4671            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_90_94, carryQ.get_carry_in(2), sequence_f0_90_94_adv));
     4672            r10000_10ffff_tmp12 = simd_and(sequence_f0_90_94_adv, byte_range_80_af);
     4673            struct_blk_Elbasan.cc = simd_or(struct_blk_Elbasan.cc, r10000_10ffff_tmp12);
     4674          }
     4675          else {
     4676            carryQ.CarryDequeueEnqueue(0, 3);
     4677          }
     4678        }
     4679        else {
     4680          carryQ.CarryDequeueEnqueue(0, 3);
     4681        }
     4682        carryQ.CarryQ_Adjust(3);
     4683  }
     4684  IDISA_INLINE void clear() {
     4685 }
     4686 
     4687  CarryArray<3, 0> carryQ;
     4688  };
     4689
     4690  struct Property_blk_Music {
     4691  Property_blk_Music() {
     4692 }
     4693  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Music & struct_blk_Music) {
     4694                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     4695                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     4696                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     4697                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     4698                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     4699                BitBlock byte_9d, byte_f0_adv, sequence_f0_9d, r10000_10ffff_tmp13;
     4700                BitBlock r10000_10ffff_tmp14, r10000_10ffff_tmp15, byte_range_84_87;
     4701                BitBlock sequence_f0_9d_adv, sequence_f0_9d_byte_range_84_87, byte_range_80_bf;
     4702                BitBlock sequence_f0_9d_byte_range_84_87_adv, sequence_f0_9d_84_80;
     4703
     4704
     4705
     4706
     4707        struct_blk_Music.cc = simd<1>::constant<0>();
     4708        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4709        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4710          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4711          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4712          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4713          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     4714            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4715            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4716            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     4717            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4718            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4719            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     4720            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     4721            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4722            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     4723            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     4724            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     4725            r10000_10ffff_tmp11 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4726            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     4727            byte_9d = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     4728            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     4729            sequence_f0_9d = simd_and(byte_f0_adv, byte_9d);
     4730            r10000_10ffff_tmp13 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4731            r10000_10ffff_tmp14 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp13);
     4732            r10000_10ffff_tmp15 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     4733            byte_range_84_87 = simd_and(r10000_10ffff_tmp14, r10000_10ffff_tmp15);
     4734            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9d, carryQ.get_carry_in(1), sequence_f0_9d_adv));
     4735            sequence_f0_9d_byte_range_84_87 = simd_and(sequence_f0_9d_adv, byte_range_84_87);
     4736            byte_range_80_bf = r10000_10ffff_tmp7;
     4737            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9d_byte_range_84_87, carryQ.get_carry_in(2), sequence_f0_9d_byte_range_84_87_adv));
     4738            sequence_f0_9d_84_80 = simd_and(sequence_f0_9d_byte_range_84_87_adv, byte_range_80_bf);
     4739            struct_blk_Music.cc = simd_or(struct_blk_Music.cc, sequence_f0_9d_84_80);
     4740          }
     4741          else {
     4742            carryQ.CarryDequeueEnqueue(0, 3);
     4743          }
     4744        }
     4745        else {
     4746          carryQ.CarryDequeueEnqueue(0, 3);
     4747        }
     4748        carryQ.CarryQ_Adjust(3);
     4749  }
     4750  IDISA_INLINE void clear() {
     4751 }
     4752 
     4753  CarryArray<3, 0> carryQ;
     4754  };
     4755
     4756  struct Property_blk_Inscriptional_Pahlavi {
     4757  Property_blk_Inscriptional_Pahlavi() {
     4758 }
     4759  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Inscriptional_Pahlavi & struct_blk_Inscriptional_Pahlavi) {
     4760                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     4761                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     4762                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     4763                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9, byte_90;
     4764                BitBlock byte_f0_adv, sequence_f0_90, r10000_10ffff_tmp10, r10000_10ffff_tmp11;
     4765                BitBlock r10000_10ffff_tmp12, r10000_10ffff_tmp13, r10000_10ffff_tmp14;
     4766                BitBlock byte_ad, sequence_f0_90_adv, sequence_f0_90_ad, byte_range_a0_bf;
     4767                BitBlock sequence_f0_90_ad_adv, r10000_10ffff_tmp15;
     4768
     4769
     4770
     4771
     4772        struct_blk_Inscriptional_Pahlavi.cc = simd<1>::constant<0>();
     4773        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4774        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4775          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4776          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4777          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4778          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     4779            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4780            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4781            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     4782            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4783            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4784            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     4785            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     4786            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4787            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     4788            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     4789            byte_90 = simd_andc(r10000_10ffff_tmp9, r10000_10ffff_tmp6);
     4790            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     4791            sequence_f0_90 = simd_and(byte_f0_adv, byte_90);
     4792            r10000_10ffff_tmp10 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     4793            r10000_10ffff_tmp11 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp10);
     4794            r10000_10ffff_tmp12 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     4795            r10000_10ffff_tmp13 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4796            r10000_10ffff_tmp14 = simd_and(r10000_10ffff_tmp12, r10000_10ffff_tmp13);
     4797            byte_ad = simd_and(r10000_10ffff_tmp11, r10000_10ffff_tmp14);
     4798            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_90, carryQ.get_carry_in(1), sequence_f0_90_adv));
     4799            sequence_f0_90_ad = simd_and(sequence_f0_90_adv, byte_ad);
     4800            byte_range_a0_bf = simd_and(r10000_10ffff_tmp7, basis_bits.bit_2);
     4801            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_90_ad, carryQ.get_carry_in(2), sequence_f0_90_ad_adv));
     4802            r10000_10ffff_tmp15 = simd_and(sequence_f0_90_ad_adv, byte_range_a0_bf);
     4803            struct_blk_Inscriptional_Pahlavi.cc = simd_or(struct_blk_Inscriptional_Pahlavi.cc, r10000_10ffff_tmp15);
     4804          }
     4805          else {
     4806            carryQ.CarryDequeueEnqueue(0, 3);
     4807          }
     4808        }
     4809        else {
     4810          carryQ.CarryDequeueEnqueue(0, 3);
     4811        }
     4812        carryQ.CarryQ_Adjust(3);
     4813  }
     4814  IDISA_INLINE void clear() {
     4815 }
     4816 
     4817  CarryArray<3, 0> carryQ;
     4818  };
     4819
     4820  struct Property_blk_Counting_Rod {
     4821  Property_blk_Counting_Rod() {
     4822 }
     4823  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Counting_Rod & struct_blk_Counting_Rod) {
     4824                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     4825                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     4826                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     4827                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     4828                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     4829                BitBlock byte_9d, byte_f0_adv, sequence_f0_9d, r10000_10ffff_tmp13;
     4830                BitBlock r10000_10ffff_tmp14, byte_8d, sequence_f0_9d_adv, sequence_f0_9d_8d;
     4831                BitBlock byte_range_a0_bf, sequence_f0_9d_8d_adv, r10000_10ffff_tmp15;
     4832
     4833
     4834
     4835
     4836        struct_blk_Counting_Rod.cc = simd<1>::constant<0>();
     4837        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4838        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     4839          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4840          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4841          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     4842          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     4843            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4844            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     4845            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     4846            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4847            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4848            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     4849            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     4850            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4851            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     4852            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     4853            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     4854            r10000_10ffff_tmp11 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4855            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     4856            byte_9d = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     4857            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     4858            sequence_f0_9d = simd_and(byte_f0_adv, byte_9d);
     4859            r10000_10ffff_tmp13 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4860            r10000_10ffff_tmp14 = simd_andc(r10000_10ffff_tmp7, r10000_10ffff_tmp13);
     4861            byte_8d = simd_and(r10000_10ffff_tmp14, r10000_10ffff_tmp12);
     4862            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9d, carryQ.get_carry_in(1), sequence_f0_9d_adv));
     4863            sequence_f0_9d_8d = simd_and(sequence_f0_9d_adv, byte_8d);
     4864            byte_range_a0_bf = simd_and(r10000_10ffff_tmp7, basis_bits.bit_2);
     4865            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9d_8d, carryQ.get_carry_in(2), sequence_f0_9d_8d_adv));
     4866            r10000_10ffff_tmp15 = simd_and(sequence_f0_9d_8d_adv, byte_range_a0_bf);
     4867            struct_blk_Counting_Rod.cc = simd_or(struct_blk_Counting_Rod.cc, r10000_10ffff_tmp15);
     4868          }
     4869          else {
     4870            carryQ.CarryDequeueEnqueue(0, 3);
     4871          }
     4872        }
     4873        else {
     4874          carryQ.CarryDequeueEnqueue(0, 3);
     4875        }
     4876        carryQ.CarryQ_Adjust(3);
     4877  }
     4878  IDISA_INLINE void clear() {
     4879 }
     4880 
     4881  CarryArray<3, 0> carryQ;
     4882  };
     4883
     4884  struct Property_blk_Latin_Ext_B {
     4885  Property_blk_Latin_Ext_B() {
     4886 }
     4887  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Latin_Ext_B & struct_blk_Latin_Ext_B) {
     4888                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, byte_range_c0_df, r80_7ff_tmp1;
     4889                BitBlock r80_7ff_tmp2, r80_7ff_tmp3, r80_7ff_tmp4, byte_range_c4_cf;
     4890                BitBlock r100_3ff_tmp1, r100_3ff_tmp2, r100_3ff_tmp3, r100_3ff_tmp4;
     4891                BitBlock byte_range_c4_cb, r100_2ff_tmp1, r100_2ff_tmp2, r100_2ff_tmp3;
     4892                BitBlock r100_2ff_tmp4, r100_2ff_tmp5, r100_2ff_tmp6, r100_2ff_tmp7;
     4893                BitBlock byte_range_c4_c8, r100_2ff_tmp8, r100_2ff_tmp9, r100_2ff_tmp10;
     4894                BitBlock byte_c9, r100_2ff_tmp11, byte_range_80_8f, r100_2ff_tmp12;
     4895                BitBlock r100_2ff_tmp13, r100_2ff_tmp14, r100_24f_tmp1, r100_24f_tmp2;
     4896                BitBlock r100_24f_tmp3, r100_24f_tmp4, r100_24f_tmp5, r100_24f_tmp6;
     4897                BitBlock r100_24f_tmp7, r100_24f_tmp8, byte_range_c6_c8, r100_24f_tmp9;
     4898                BitBlock r100_24f_tmp10, r100_24f_tmp11, r100_24f_tmp12, r100_24f_tmp13;
     4899                BitBlock r100_24f_tmp14, r100_24f_tmp15, r180_24f_tmp1, r180_24f_tmp2;
     4900                BitBlock r180_24f_tmp3, r180_24f_tmp4, r180_24f_tmp5, r180_24f_tmp6;
     4901                BitBlock r180_24f_tmp7, r180_24f_tmp8, byte_range_80_bf, byte_range_c6_c8_adv;
     4902                BitBlock sequence_c6_80, r180_24f_tmp9, r180_24f_tmp10, r180_24f_tmp11;
     4903                BitBlock byte_c9_adv, r180_24f_tmp12;
     4904
     4905
     4906
     4907
     4908        struct_blk_Latin_Ext_B.cc = simd<1>::constant<0>();
     4909        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4910        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     4911          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4912          byte_range_c0_df = simd_andc(r80_10ffff_tmp1, basis_bits.bit_2);
     4913          if ((bitblock::any(byte_range_c0_df) || carryQ.CarryTest(0, 4))) {
     4914            r80_7ff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4915            r80_7ff_tmp2 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4916            r80_7ff_tmp3 = simd_andc(r80_7ff_tmp1, r80_7ff_tmp2);
     4917            r80_7ff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     4918            byte_range_c4_cf = simd_and(r80_7ff_tmp3, r80_7ff_tmp4);
     4919            if ((bitblock::any(byte_range_c4_cf) || carryQ.CarryTest(0, 4))) {
     4920              r100_3ff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4921              r100_3ff_tmp2 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4922              r100_3ff_tmp3 = simd_andc(r100_3ff_tmp1, r100_3ff_tmp2);
     4923              r100_3ff_tmp4 = simd_xor(basis_bits.bit_4, basis_bits.bit_5);
     4924              byte_range_c4_cb = simd_and(r100_3ff_tmp3, r100_3ff_tmp4);
     4925              if ((bitblock::any(byte_range_c4_cb) || carryQ.CarryTest(0, 4))) {
     4926                r100_2ff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4927                r100_2ff_tmp2 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4928                r100_2ff_tmp3 = simd_andc(r100_2ff_tmp1, r100_2ff_tmp2);
     4929                r100_2ff_tmp4 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4930                r100_2ff_tmp5 = simd_or(basis_bits.bit_5, r100_2ff_tmp4);
     4931                r100_2ff_tmp6 = simd_not(r100_2ff_tmp5);
     4932                r100_2ff_tmp7 = simd_or(simd_and(basis_bits.bit_4, r100_2ff_tmp6), simd_andc(basis_bits.bit_5, basis_bits.bit_4));
     4933                byte_range_c4_c8 = simd_and(r100_2ff_tmp3, r100_2ff_tmp7);
     4934                r100_2ff_tmp8 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     4935                r100_2ff_tmp9 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4936                r100_2ff_tmp10 = simd_and(r100_2ff_tmp8, r100_2ff_tmp9);
     4937                byte_c9 = simd_and(r100_2ff_tmp3, r100_2ff_tmp10);
     4938                r100_2ff_tmp11 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4939                byte_range_80_8f = simd_andc(r100_2ff_tmp11, r100_2ff_tmp2);
     4940                carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_c9, carryQ.get_carry_in(0), r100_2ff_tmp12));
     4941                r100_2ff_tmp13 = simd_and(r100_2ff_tmp12, byte_range_80_8f);
     4942                r100_2ff_tmp14 = simd_or(byte_range_c4_c8, r100_2ff_tmp13);
     4943                if ((bitblock::any(r100_2ff_tmp14) || carryQ.CarryTest(1, 3))) {
     4944                  r100_24f_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4945                  r100_24f_tmp2 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4946                  r100_24f_tmp3 = simd_andc(r100_24f_tmp1, r100_24f_tmp2);
     4947                  r100_24f_tmp4 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4948                  r100_24f_tmp5 = simd_or(basis_bits.bit_5, r100_24f_tmp4);
     4949                  r100_24f_tmp6 = simd_not(r100_24f_tmp5);
     4950                  r100_24f_tmp7 = simd_and(basis_bits.bit_5, basis_bits.bit_6);
     4951                  r100_24f_tmp8 = simd_or(simd_and(basis_bits.bit_4, r100_24f_tmp6), simd_andc(r100_24f_tmp7, basis_bits.bit_4));
     4952                  byte_range_c6_c8 = simd_and(r100_24f_tmp3, r100_24f_tmp8);
     4953                  r100_24f_tmp9 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     4954                  r100_24f_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4955                  r100_24f_tmp11 = simd_and(r100_24f_tmp9, r100_24f_tmp10);
     4956                  byte_c9 = simd_and(r100_24f_tmp3, r100_24f_tmp11);
     4957                  r100_24f_tmp12 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4958                  byte_range_80_8f = simd_andc(r100_24f_tmp12, r100_24f_tmp2);
     4959                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_c9, carryQ.get_carry_in(1), r100_24f_tmp13));
     4960                  r100_24f_tmp14 = simd_and(r100_24f_tmp13, byte_range_80_8f);
     4961                  r100_24f_tmp15 = simd_or(byte_range_c6_c8, r100_24f_tmp14);
     4962                  if ((bitblock::any(r100_24f_tmp15) || carryQ.CarryTest(2, 2))) {
     4963                    r180_24f_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     4964                    r180_24f_tmp2 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     4965                    r180_24f_tmp3 = simd_andc(r180_24f_tmp1, r180_24f_tmp2);
     4966                    r180_24f_tmp4 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     4967                    r180_24f_tmp5 = simd_or(basis_bits.bit_5, r180_24f_tmp4);
     4968                    r180_24f_tmp6 = simd_not(r180_24f_tmp5);
     4969                    r180_24f_tmp7 = simd_and(basis_bits.bit_5, basis_bits.bit_6);
     4970                    r180_24f_tmp8 = simd_or(simd_and(basis_bits.bit_4, r180_24f_tmp6), simd_andc(r180_24f_tmp7, basis_bits.bit_4));
     4971                    byte_range_c6_c8 = simd_and(r180_24f_tmp3, r180_24f_tmp8);
     4972                    byte_range_80_bf = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     4973                    carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_range_c6_c8, carryQ.get_carry_in(2), byte_range_c6_c8_adv));
     4974                    sequence_c6_80 = simd_and(byte_range_c6_c8_adv, byte_range_80_bf);
     4975                    struct_blk_Latin_Ext_B.cc = simd_or(struct_blk_Latin_Ext_B.cc, sequence_c6_80);
     4976                    r180_24f_tmp9 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     4977                    r180_24f_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     4978                    r180_24f_tmp11 = simd_and(r180_24f_tmp9, r180_24f_tmp10);
     4979                    byte_c9 = simd_and(r180_24f_tmp3, r180_24f_tmp11);
     4980                    byte_range_80_8f = simd_andc(byte_range_80_bf, r180_24f_tmp2);
     4981                    carryQ.cq[3] = carryout2carry(pablo_blk_Advance(byte_c9, carryQ.get_carry_in(3), byte_c9_adv));
     4982                    r180_24f_tmp12 = simd_and(byte_c9_adv, byte_range_80_8f);
     4983                    struct_blk_Latin_Ext_B.cc = simd_or(struct_blk_Latin_Ext_B.cc, r180_24f_tmp12);
     4984                  }
     4985                  else {
     4986                    carryQ.CarryDequeueEnqueue(2, 2);
     4987                  }
     4988                }
     4989                else {
     4990                  carryQ.CarryDequeueEnqueue(1, 3);
     4991                }
     4992              }
     4993              else {
     4994                carryQ.CarryDequeueEnqueue(0, 4);
     4995              }
     4996            }
     4997            else {
     4998              carryQ.CarryDequeueEnqueue(0, 4);
     4999            }
     5000          }
     5001          else {
     5002            carryQ.CarryDequeueEnqueue(0, 4);
     5003          }
     5004        }
     5005        else {
     5006          carryQ.CarryDequeueEnqueue(0, 4);
     5007        }
     5008        carryQ.CarryQ_Adjust(4);
     5009  }
     5010  IDISA_INLINE void clear() {
     5011 }
     5012 
     5013  CarryArray<4, 0> carryQ;
     5014  };
     5015
     5016  struct Property_blk_Jamo_Ext_A {
     5017  Property_blk_Jamo_Ext_A() {
     5018 }
     5019  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Jamo_Ext_A & struct_blk_Jamo_Ext_A) {
     5020                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5021                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5022                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     5023                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     5024                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     5025                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, byte_a5, byte_ea_adv;
     5026                BitBlock sequence_ea_a5, byte_range_a0_bf, sequence_ea_a5_adv;
     5027                BitBlock ra000_ffff_tmp12;
     5028
     5029
     5030
     5031
     5032        struct_blk_Jamo_Ext_A.cc = simd<1>::constant<0>();
     5033        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5034        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 2))) {
     5035          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5036          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5037          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5038          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 2))) {
     5039            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5040            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5041            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5042            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     5043            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     5044            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     5045            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 2))) {
     5046              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5047              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5048              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     5049              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     5050              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     5051              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     5052              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     5053              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5054              ra000_ffff_tmp8 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp2);
     5055              ra000_ffff_tmp9 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5056              ra000_ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     5057              ra000_ffff_tmp11 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp10);
     5058              byte_a5 = simd_and(ra000_ffff_tmp8, ra000_ffff_tmp11);
     5059              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
     5060              sequence_ea_a5 = simd_and(byte_ea_adv, byte_a5);
     5061              byte_range_a0_bf = simd_and(ra000_ffff_tmp7, basis_bits.bit_2);
     5062              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ea_a5, carryQ.get_carry_in(1), sequence_ea_a5_adv));
     5063              ra000_ffff_tmp12 = simd_and(sequence_ea_a5_adv, byte_range_a0_bf);
     5064              struct_blk_Jamo_Ext_A.cc = simd_or(struct_blk_Jamo_Ext_A.cc, ra000_ffff_tmp12);
     5065            }
     5066            else {
     5067              carryQ.CarryDequeueEnqueue(0, 2);
     5068            }
     5069          }
     5070          else {
     5071            carryQ.CarryDequeueEnqueue(0, 2);
     5072          }
     5073        }
     5074        else {
     5075          carryQ.CarryDequeueEnqueue(0, 2);
     5076        }
     5077        carryQ.CarryQ_Adjust(2);
     5078  }
     5079  IDISA_INLINE void clear() {
     5080 }
     5081 
     5082  CarryArray<2, 0> carryQ;
     5083  };
     5084
     5085  struct Property_blk_Sup_Arrows_B {
     5086  Property_blk_Sup_Arrows_B() {
     5087 }
     5088  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Sup_Arrows_B & struct_blk_Sup_Arrows_B) {
     5089                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5090                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5091                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     5092                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     5093                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     5094                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     5095                BitBlock r800_4dff_tmp5, byte_range_e2_e3, r800_4dff_tmp6, r800_4dff_tmp7;
     5096                BitBlock r800_4dff_tmp8, r800_4dff_tmp9, r800_4dff_tmp10, r800_4dff_tmp11;
     5097                BitBlock r800_4dff_tmp12, r800_4dff_tmp13, r800_4dff_tmp14, r2000_4dff_tmp1;
     5098                BitBlock r2000_4dff_tmp2, r2000_4dff_tmp3, r2000_4dff_tmp4, r2000_4dff_tmp5;
     5099                BitBlock r2000_4dff_tmp6, byte_e2, r2000_2fff_tmp1, r2000_2fff_tmp2;
     5100                BitBlock r2000_2fff_tmp3, r2000_2fff_tmp4, r2000_2fff_tmp5, r2000_2fff_tmp6;
     5101                BitBlock r2000_2fff_tmp7, r2000_2fff_tmp8, r2000_2fff_tmp9, r2000_2fff_tmp10;
     5102                BitBlock byte_range_a4_a5, byte_e2_adv, byte_e2_byte_range_a4_a5;
     5103                BitBlock byte_range_80_bf, byte_e2_byte_range_a4_a5_adv, sequence_e2_a4_80;
     5104
     5105
     5106
     5107
     5108        struct_blk_Sup_Arrows_B.cc = simd<1>::constant<0>();
     5109        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5110        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     5111          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5112          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5113          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5114          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 4))) {
     5115            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5116            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5117            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5118            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5119            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     5120            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5121            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     5122            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     5123            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     5124            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5125            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     5126            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     5127            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     5128            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     5129            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     5130            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     5131            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 3))) {
     5132              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5133              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5134              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     5135              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5136              r800_4dff_tmp5 = simd_andc(basis_bits.bit_6, r800_4dff_tmp4);
     5137              byte_range_e2_e3 = simd_and(r800_4dff_tmp3, r800_4dff_tmp5);
     5138              r800_4dff_tmp6 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5139              r800_4dff_tmp7 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     5140              r800_4dff_tmp8 = simd_andc(r800_4dff_tmp6, r800_4dff_tmp7);
     5141              byte_e4 = simd_and(r800_4dff_tmp3, r800_4dff_tmp8);
     5142              r800_4dff_tmp9 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5143              r800_4dff_tmp10 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     5144              r800_4dff_tmp11 = simd_and(basis_bits.bit_2, r800_4dff_tmp10);
     5145              byte_range_80_b7 = simd_andc(r800_4dff_tmp9, r800_4dff_tmp11);
     5146              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(1), r800_4dff_tmp12));
     5147              r800_4dff_tmp13 = simd_and(r800_4dff_tmp12, byte_range_80_b7);
     5148              r800_4dff_tmp14 = simd_or(byte_range_e2_e3, r800_4dff_tmp13);
     5149              if ((bitblock::any(r800_4dff_tmp14) || carryQ.CarryTest(2, 2))) {
     5150                r2000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5151                r2000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5152                r2000_4dff_tmp3 = simd_and(r2000_4dff_tmp1, r2000_4dff_tmp2);
     5153                r2000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5154                r2000_4dff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     5155                r2000_4dff_tmp6 = simd_andc(r2000_4dff_tmp5, r2000_4dff_tmp4);
     5156                byte_e2 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp6);
     5157                if ((bitblock::any(byte_e2) || carryQ.CarryTest(2, 2))) {
     5158                  r2000_2fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5159                  r2000_2fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5160                  r2000_2fff_tmp3 = simd_and(r2000_2fff_tmp1, r2000_2fff_tmp2);
     5161                  r2000_2fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5162                  r2000_2fff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     5163                  r2000_2fff_tmp6 = simd_andc(r2000_2fff_tmp5, r2000_2fff_tmp4);
     5164                  byte_e2 = simd_and(r2000_2fff_tmp3, r2000_2fff_tmp6);
     5165                  r2000_2fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5166                  r2000_2fff_tmp8 = simd_and(r2000_2fff_tmp7, r2000_2fff_tmp2);
     5167                  r2000_2fff_tmp9 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5168                  r2000_2fff_tmp10 = simd_andc(r2000_2fff_tmp9, basis_bits.bit_6);
     5169                  byte_range_a4_a5 = simd_and(r2000_2fff_tmp8, r2000_2fff_tmp10);
     5170                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e2, carryQ.get_carry_in(2), byte_e2_adv));
     5171                  byte_e2_byte_range_a4_a5 = simd_and(byte_e2_adv, byte_range_a4_a5);
     5172                  byte_range_80_bf = r2000_2fff_tmp7;
     5173                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(byte_e2_byte_range_a4_a5, carryQ.get_carry_in(3), byte_e2_byte_range_a4_a5_adv));
     5174                  sequence_e2_a4_80 = simd_and(byte_e2_byte_range_a4_a5_adv, byte_range_80_bf);
     5175                  struct_blk_Sup_Arrows_B.cc = simd_or(struct_blk_Sup_Arrows_B.cc, sequence_e2_a4_80);
     5176                }
     5177                else {
     5178                  carryQ.CarryDequeueEnqueue(2, 2);
     5179                }
     5180              }
     5181              else {
     5182                carryQ.CarryDequeueEnqueue(2, 2);
     5183              }
     5184            }
     5185            else {
     5186              carryQ.CarryDequeueEnqueue(1, 3);
     5187            }
     5188          }
     5189          else {
     5190            carryQ.CarryDequeueEnqueue(0, 4);
     5191          }
     5192        }
     5193        else {
     5194          carryQ.CarryDequeueEnqueue(0, 4);
     5195        }
     5196        carryQ.CarryQ_Adjust(4);
     5197  }
     5198  IDISA_INLINE void clear() {
     5199 }
     5200 
     5201  CarryArray<4, 0> carryQ;
     5202  };
     5203
     5204  struct Property_blk_Latin_Ext_E {
     5205  Property_blk_Latin_Ext_E() {
     5206 }
     5207  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Latin_Ext_E & struct_blk_Latin_Ext_E) {
     5208                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5209                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5210                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     5211                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     5212                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     5213                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, byte_ac, byte_ea_adv;
     5214                BitBlock sequence_ea_ac, ra000_ffff_tmp12, byte_range_b0_bf;
     5215                BitBlock sequence_ea_ac_adv, ra000_ffff_tmp13, ra000_ffff_tmp14;
     5216                BitBlock ra000_ffff_tmp15, byte_ad, sequence_ea_ad, byte_range_80_af;
     5217                BitBlock sequence_ea_ad_adv, ra000_ffff_tmp16;
     5218
     5219
     5220
     5221
     5222        struct_blk_Latin_Ext_E.cc = simd<1>::constant<0>();
     5223        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5224        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     5225          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5226          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5227          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5228          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     5229            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5230            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5231            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5232            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     5233            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     5234            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     5235            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 3))) {
     5236              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5237              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5238              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     5239              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     5240              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     5241              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     5242              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     5243              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5244              ra000_ffff_tmp8 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp2);
     5245              ra000_ffff_tmp9 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     5246              ra000_ffff_tmp10 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     5247              ra000_ffff_tmp11 = simd_andc(ra000_ffff_tmp9, ra000_ffff_tmp10);
     5248              byte_ac = simd_and(ra000_ffff_tmp8, ra000_ffff_tmp11);
     5249              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
     5250              sequence_ea_ac = simd_and(byte_ea_adv, byte_ac);
     5251              ra000_ffff_tmp12 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     5252              byte_range_b0_bf = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp12);
     5253              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ea_ac, carryQ.get_carry_in(1), sequence_ea_ac_adv));
     5254              ra000_ffff_tmp13 = simd_and(sequence_ea_ac_adv, byte_range_b0_bf);
     5255              struct_blk_Latin_Ext_E.cc = simd_or(struct_blk_Latin_Ext_E.cc, ra000_ffff_tmp13);
     5256              ra000_ffff_tmp14 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     5257              ra000_ffff_tmp15 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp14);
     5258              byte_ad = simd_and(ra000_ffff_tmp8, ra000_ffff_tmp15);
     5259              sequence_ea_ad = simd_and(byte_ea_adv, byte_ad);
     5260              byte_range_80_af = simd_andc(ra000_ffff_tmp7, ra000_ffff_tmp12);
     5261              carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_ea_ad, carryQ.get_carry_in(2), sequence_ea_ad_adv));
     5262              ra000_ffff_tmp16 = simd_and(sequence_ea_ad_adv, byte_range_80_af);
     5263              struct_blk_Latin_Ext_E.cc = simd_or(struct_blk_Latin_Ext_E.cc, ra000_ffff_tmp16);
     5264            }
     5265            else {
     5266              carryQ.CarryDequeueEnqueue(0, 3);
     5267            }
     5268          }
     5269          else {
     5270            carryQ.CarryDequeueEnqueue(0, 3);
     5271          }
     5272        }
     5273        else {
     5274          carryQ.CarryDequeueEnqueue(0, 3);
     5275        }
     5276        carryQ.CarryQ_Adjust(3);
     5277  }
     5278  IDISA_INLINE void clear() {
     5279 }
     5280 
     5281  CarryArray<3, 0> carryQ;
     5282  };
     5283
     5284  struct Property_blk_Alchemical {
     5285  Property_blk_Alchemical() {
     5286 }
     5287  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Alchemical & struct_blk_Alchemical) {
     5288                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_f0_ff;
     5289                BitBlock r10000_10ffff_tmp1, r10000_10ffff_tmp2, r10000_10ffff_tmp3;
     5290                BitBlock r10000_10ffff_tmp4, r10000_10ffff_tmp5, r10000_10ffff_tmp6, byte_f0;
     5291                BitBlock r10000_10ffff_tmp7, r10000_10ffff_tmp8, r10000_10ffff_tmp9;
     5292                BitBlock r10000_10ffff_tmp10, r10000_10ffff_tmp11, r10000_10ffff_tmp12;
     5293                BitBlock byte_9f, byte_f0_adv, sequence_f0_9f, r10000_10ffff_tmp13;
     5294                BitBlock byte_range_9c_9d, sequence_f0_9f_adv, sequence_f0_9f_byte_range_9c_9d;
     5295                BitBlock byte_range_80_bf, sequence_f0_9f_byte_range_9c_9d_adv;
     5296                BitBlock sequence_f0_9f_9c_80;
     5297
     5298
     5299
     5300
     5301        struct_blk_Alchemical.cc = simd<1>::constant<0>();
     5302        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5303        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     5304          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5305          r80_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     5306          byte_range_f0_ff = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5307          if ((bitblock::any(byte_range_f0_ff) || carryQ.CarryTest(0, 3))) {
     5308            r10000_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5309            r10000_10ffff_tmp2 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     5310            r10000_10ffff_tmp3 = simd_and(r10000_10ffff_tmp1, r10000_10ffff_tmp2);
     5311            r10000_10ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5312            r10000_10ffff_tmp5 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     5313            r10000_10ffff_tmp6 = simd_or(r10000_10ffff_tmp4, r10000_10ffff_tmp5);
     5314            byte_f0 = simd_andc(r10000_10ffff_tmp3, r10000_10ffff_tmp6);
     5315            r10000_10ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5316            r10000_10ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     5317            r10000_10ffff_tmp9 = simd_and(r10000_10ffff_tmp7, r10000_10ffff_tmp8);
     5318            r10000_10ffff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     5319            r10000_10ffff_tmp11 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     5320            r10000_10ffff_tmp12 = simd_and(r10000_10ffff_tmp10, r10000_10ffff_tmp11);
     5321            byte_9f = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp12);
     5322            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_f0, carryQ.get_carry_in(0), byte_f0_adv));
     5323            sequence_f0_9f = simd_and(byte_f0_adv, byte_9f);
     5324            r10000_10ffff_tmp13 = simd_andc(r10000_10ffff_tmp10, basis_bits.bit_6);
     5325            byte_range_9c_9d = simd_and(r10000_10ffff_tmp9, r10000_10ffff_tmp13);
     5326            carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_f0_9f, carryQ.get_carry_in(1), sequence_f0_9f_adv));
     5327            sequence_f0_9f_byte_range_9c_9d = simd_and(sequence_f0_9f_adv, byte_range_9c_9d);
     5328            byte_range_80_bf = r10000_10ffff_tmp7;
     5329            carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_f0_9f_byte_range_9c_9d, carryQ.get_carry_in(2), sequence_f0_9f_byte_range_9c_9d_adv));
     5330            sequence_f0_9f_9c_80 = simd_and(sequence_f0_9f_byte_range_9c_9d_adv, byte_range_80_bf);
     5331            struct_blk_Alchemical.cc = simd_or(struct_blk_Alchemical.cc, sequence_f0_9f_9c_80);
     5332          }
     5333          else {
     5334            carryQ.CarryDequeueEnqueue(0, 3);
     5335          }
     5336        }
     5337        else {
     5338          carryQ.CarryDequeueEnqueue(0, 3);
     5339        }
     5340        carryQ.CarryQ_Adjust(3);
     5341  }
     5342  IDISA_INLINE void clear() {
     5343 }
     5344 
     5345  CarryArray<3, 0> carryQ;
     5346  };
     5347
     5348  struct Property_blk_Arabic_PF_B {
     5349  Property_blk_Arabic_PF_B() {
     5350 }
     5351  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Arabic_PF_B & struct_blk_Arabic_PF_B) {
     5352                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5353                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5354                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     5355                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     5356                BitBlock byte_ef, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     5357                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, ra000_ffff_tmp12, byte_b9;
     5358                BitBlock byte_ef_adv, sequence_ef_b9, byte_range_b0_bf, sequence_ef_b9_adv;
     5359                BitBlock ra000_ffff_tmp13, ra000_ffff_tmp14, byte_range_ba_bb;
     5360                BitBlock byte_ef_byte_range_ba_bb, byte_range_80_bf;
     5361                BitBlock byte_ef_byte_range_ba_bb_adv, sequence_ef_ba_80;
     5362
     5363
     5364
     5365
     5366        struct_blk_Arabic_PF_B.cc = simd<1>::constant<0>();
     5367        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5368        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     5369          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5370          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5371          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5372          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     5373            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5374            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5375            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5376            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     5377            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     5378            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     5379            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 3))) {
     5380              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5381              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5382              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     5383              ra000_ffff_tmp4 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     5384              ra000_ffff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     5385              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     5386              byte_ef = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     5387              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5388              ra000_ffff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     5389              ra000_ffff_tmp9 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp8);
     5390              ra000_ffff_tmp10 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     5391              ra000_ffff_tmp11 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     5392              ra000_ffff_tmp12 = simd_and(ra000_ffff_tmp10, ra000_ffff_tmp11);
     5393              byte_b9 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp12);
     5394              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ef, carryQ.get_carry_in(0), byte_ef_adv));
     5395              sequence_ef_b9 = simd_and(byte_ef_adv, byte_b9);
     5396              byte_range_b0_bf = ra000_ffff_tmp9;
     5397              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ef_b9, carryQ.get_carry_in(1), sequence_ef_b9_adv));
     5398              ra000_ffff_tmp13 = simd_and(sequence_ef_b9_adv, byte_range_b0_bf);
     5399              struct_blk_Arabic_PF_B.cc = simd_or(struct_blk_Arabic_PF_B.cc, ra000_ffff_tmp13);
     5400              ra000_ffff_tmp14 = simd_and(ra000_ffff_tmp10, basis_bits.bit_6);
     5401              byte_range_ba_bb = simd_and(byte_range_b0_bf, ra000_ffff_tmp14);
     5402              byte_ef_byte_range_ba_bb = simd_and(byte_ef_adv, byte_range_ba_bb);
     5403              byte_range_80_bf = ra000_ffff_tmp7;
     5404              carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_ef_byte_range_ba_bb, carryQ.get_carry_in(2), byte_ef_byte_range_ba_bb_adv));
     5405              sequence_ef_ba_80 = simd_and(byte_ef_byte_range_ba_bb_adv, byte_range_80_bf);
     5406              struct_blk_Arabic_PF_B.cc = simd_or(struct_blk_Arabic_PF_B.cc, sequence_ef_ba_80);
     5407            }
     5408            else {
     5409              carryQ.CarryDequeueEnqueue(0, 3);
     5410            }
     5411          }
     5412          else {
     5413            carryQ.CarryDequeueEnqueue(0, 3);
     5414          }
     5415        }
     5416        else {
     5417          carryQ.CarryDequeueEnqueue(0, 3);
     5418        }
     5419        carryQ.CarryQ_Adjust(3);
     5420  }
     5421  IDISA_INLINE void clear() {
     5422 }
     5423 
     5424  CarryArray<3, 0> carryQ;
     5425  };
     5426
     5427  struct Property_blk_Cyrillic_Ext_B {
     5428  Property_blk_Cyrillic_Ext_B() {
     5429 }
     5430  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Cyrillic_Ext_B & struct_blk_Cyrillic_Ext_B) {
     5431                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5432                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5433                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     5434                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     5435                BitBlock byte_ea, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     5436                BitBlock ra000_ffff_tmp10, ra000_ffff_tmp11, byte_99, byte_ea_adv;
     5437                BitBlock sequence_ea_99, byte_range_80_bf, ra000_ffff_tmp12;
     5438                BitBlock sequence_ea_99_adv, ra000_ffff_tmp13, byte_9a, sequence_ea_9a;
     5439                BitBlock byte_range_80_9f, sequence_ea_9a_adv, ra000_ffff_tmp14;
     5440
     5441
     5442
     5443
     5444        struct_blk_Cyrillic_Ext_B.cc = simd<1>::constant<0>();
     5445        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5446        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     5447          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5448          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5449          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5450          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     5451            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5452            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5453            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5454            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     5455            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     5456            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     5457            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 3))) {
     5458              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5459              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5460              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     5461              ra000_ffff_tmp4 = simd_andc(basis_bits.bit_4, basis_bits.bit_5);
     5462              ra000_ffff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     5463              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     5464              byte_ea = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     5465              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5466              ra000_ffff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     5467              ra000_ffff_tmp9 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp8);
     5468              ra000_ffff_tmp10 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     5469              ra000_ffff_tmp11 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp10);
     5470              byte_99 = simd_and(ra000_ffff_tmp9, ra000_ffff_tmp11);
     5471              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ea, carryQ.get_carry_in(0), byte_ea_adv));
     5472              sequence_ea_99 = simd_and(byte_ea_adv, byte_99);
     5473              byte_range_80_bf = ra000_ffff_tmp7;
     5474              ra000_ffff_tmp12 = simd_and(byte_range_80_bf, ra000_ffff_tmp8);
     5475              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ea_99, carryQ.get_carry_in(1), sequence_ea_99_adv));
     5476              ra000_ffff_tmp13 = simd_and(sequence_ea_99_adv, byte_range_80_bf);
     5477              struct_blk_Cyrillic_Ext_B.cc = simd_or(struct_blk_Cyrillic_Ext_B.cc, ra000_ffff_tmp13);
     5478              byte_9a = simd_and(ra000_ffff_tmp12, ra000_ffff_tmp6);
     5479              sequence_ea_9a = simd_and(byte_ea_adv, byte_9a);
     5480              byte_range_80_9f = simd_andc(byte_range_80_bf, basis_bits.bit_2);
     5481              carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_ea_9a, carryQ.get_carry_in(2), sequence_ea_9a_adv));
     5482              ra000_ffff_tmp14 = simd_and(sequence_ea_9a_adv, byte_range_80_9f);
     5483              struct_blk_Cyrillic_Ext_B.cc = simd_or(struct_blk_Cyrillic_Ext_B.cc, ra000_ffff_tmp14);
     5484            }
     5485            else {
     5486              carryQ.CarryDequeueEnqueue(0, 3);
     5487            }
     5488          }
     5489          else {
     5490            carryQ.CarryDequeueEnqueue(0, 3);
     5491          }
     5492        }
     5493        else {
     5494          carryQ.CarryDequeueEnqueue(0, 3);
     5495        }
     5496        carryQ.CarryQ_Adjust(3);
     5497  }
     5498  IDISA_INLINE void clear() {
     5499 }
     5500 
     5501  CarryArray<3, 0> carryQ;
     5502  };
     5503
     5504  struct Property_blk_Cyrillic_Ext_A {
     5505  Property_blk_Cyrillic_Ext_A() {
     5506 }
     5507  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Cyrillic_Ext_A & struct_blk_Cyrillic_Ext_A) {
     5508                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5509                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5510                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     5511                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     5512                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     5513                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     5514                BitBlock r800_4dff_tmp5, byte_range_e2_e3, r800_4dff_tmp6, r800_4dff_tmp7;
     5515                BitBlock r800_4dff_tmp8, r800_4dff_tmp9, r800_4dff_tmp10, r800_4dff_tmp11;
     5516                BitBlock r800_4dff_tmp12, r800_4dff_tmp13, r800_4dff_tmp14, r2000_4dff_tmp1;
     5517                BitBlock r2000_4dff_tmp2, r2000_4dff_tmp3, r2000_4dff_tmp4, r2000_4dff_tmp5;
     5518                BitBlock r2000_4dff_tmp6, byte_e2, r2000_2fff_tmp1, r2000_2fff_tmp2;
     5519                BitBlock r2000_2fff_tmp3, r2000_2fff_tmp4, r2000_2fff_tmp5, r2000_2fff_tmp6;
     5520                BitBlock r2000_2fff_tmp7, r2000_2fff_tmp8, r2000_2fff_tmp9, r2000_2fff_tmp10;
     5521                BitBlock r2000_2fff_tmp11, r2000_2fff_tmp12, byte_b7, byte_e2_adv;
     5522                BitBlock sequence_e2_b7, byte_range_a0_bf, sequence_e2_b7_adv;
     5523                BitBlock r2000_2fff_tmp13;
     5524
     5525
     5526
     5527
     5528        struct_blk_Cyrillic_Ext_A.cc = simd<1>::constant<0>();
     5529        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5530        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 4))) {
     5531          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5532          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5533          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5534          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 4))) {
     5535            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5536            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5537            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5538            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5539            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     5540            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5541            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     5542            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     5543            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     5544            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5545            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     5546            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     5547            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     5548            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     5549            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     5550            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     5551            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 3))) {
     5552              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5553              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5554              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     5555              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5556              r800_4dff_tmp5 = simd_andc(basis_bits.bit_6, r800_4dff_tmp4);
     5557              byte_range_e2_e3 = simd_and(r800_4dff_tmp3, r800_4dff_tmp5);
     5558              r800_4dff_tmp6 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5559              r800_4dff_tmp7 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     5560              r800_4dff_tmp8 = simd_andc(r800_4dff_tmp6, r800_4dff_tmp7);
     5561              byte_e4 = simd_and(r800_4dff_tmp3, r800_4dff_tmp8);
     5562              r800_4dff_tmp9 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5563              r800_4dff_tmp10 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     5564              r800_4dff_tmp11 = simd_and(basis_bits.bit_2, r800_4dff_tmp10);
     5565              byte_range_80_b7 = simd_andc(r800_4dff_tmp9, r800_4dff_tmp11);
     5566              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(1), r800_4dff_tmp12));
     5567              r800_4dff_tmp13 = simd_and(r800_4dff_tmp12, byte_range_80_b7);
     5568              r800_4dff_tmp14 = simd_or(byte_range_e2_e3, r800_4dff_tmp13);
     5569              if ((bitblock::any(r800_4dff_tmp14) || carryQ.CarryTest(2, 2))) {
     5570                r2000_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5571                r2000_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5572                r2000_4dff_tmp3 = simd_and(r2000_4dff_tmp1, r2000_4dff_tmp2);
     5573                r2000_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5574                r2000_4dff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     5575                r2000_4dff_tmp6 = simd_andc(r2000_4dff_tmp5, r2000_4dff_tmp4);
     5576                byte_e2 = simd_and(r2000_4dff_tmp3, r2000_4dff_tmp6);
     5577                if ((bitblock::any(byte_e2) || carryQ.CarryTest(2, 2))) {
     5578                  r2000_2fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5579                  r2000_2fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5580                  r2000_2fff_tmp3 = simd_and(r2000_2fff_tmp1, r2000_2fff_tmp2);
     5581                  r2000_2fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5582                  r2000_2fff_tmp5 = simd_andc(basis_bits.bit_6, basis_bits.bit_7);
     5583                  r2000_2fff_tmp6 = simd_andc(r2000_2fff_tmp5, r2000_2fff_tmp4);
     5584                  byte_e2 = simd_and(r2000_2fff_tmp3, r2000_2fff_tmp6);
     5585                  r2000_2fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5586                  r2000_2fff_tmp8 = simd_and(basis_bits.bit_2, basis_bits.bit_3);
     5587                  r2000_2fff_tmp9 = simd_and(r2000_2fff_tmp7, r2000_2fff_tmp8);
     5588                  r2000_2fff_tmp10 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5589                  r2000_2fff_tmp11 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     5590                  r2000_2fff_tmp12 = simd_and(r2000_2fff_tmp10, r2000_2fff_tmp11);
     5591                  byte_b7 = simd_and(r2000_2fff_tmp9, r2000_2fff_tmp12);
     5592                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_e2, carryQ.get_carry_in(2), byte_e2_adv));
     5593                  sequence_e2_b7 = simd_and(byte_e2_adv, byte_b7);
     5594                  byte_range_a0_bf = simd_and(r2000_2fff_tmp7, basis_bits.bit_2);
     5595                  carryQ.cq[3] = carryout2carry(pablo_blk_Advance(sequence_e2_b7, carryQ.get_carry_in(3), sequence_e2_b7_adv));
     5596                  r2000_2fff_tmp13 = simd_and(sequence_e2_b7_adv, byte_range_a0_bf);
     5597                  struct_blk_Cyrillic_Ext_A.cc = simd_or(struct_blk_Cyrillic_Ext_A.cc, r2000_2fff_tmp13);
     5598                }
     5599                else {
     5600                  carryQ.CarryDequeueEnqueue(2, 2);
     5601                }
     5602              }
     5603              else {
     5604                carryQ.CarryDequeueEnqueue(2, 2);
     5605              }
     5606            }
     5607            else {
     5608              carryQ.CarryDequeueEnqueue(1, 3);
     5609            }
     5610          }
     5611          else {
     5612            carryQ.CarryDequeueEnqueue(0, 4);
     5613          }
     5614        }
     5615        else {
     5616          carryQ.CarryDequeueEnqueue(0, 4);
     5617        }
     5618        carryQ.CarryQ_Adjust(4);
     5619  }
     5620  IDISA_INLINE void clear() {
     5621 }
     5622 
     5623  CarryArray<4, 0> carryQ;
     5624  };
     5625
     5626  struct Property_blk_Arabic_PF_A {
     5627  Property_blk_Arabic_PF_A() {
     5628 }
     5629  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Arabic_PF_A & struct_blk_Arabic_PF_A) {
     5630                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5631                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5632                BitBlock r800_ffff_tmp5, byte_range_ea_ef, ra000_ffff_tmp1, ra000_ffff_tmp2;
     5633                BitBlock ra000_ffff_tmp3, ra000_ffff_tmp4, ra000_ffff_tmp5, ra000_ffff_tmp6;
     5634                BitBlock byte_ef, ra000_ffff_tmp7, ra000_ffff_tmp8, ra000_ffff_tmp9;
     5635                BitBlock ra000_ffff_tmp10, byte_ad, byte_ef_adv, sequence_ef_ad;
     5636                BitBlock ra000_ffff_tmp11, byte_range_90_bf, sequence_ef_ad_adv;
     5637                BitBlock ra000_ffff_tmp12, ra000_ffff_tmp13, ra000_ffff_tmp14;
     5638                BitBlock ra000_ffff_tmp15, ra000_ffff_tmp16, byte_range_ae_b7;
     5639                BitBlock byte_ef_byte_range_ae_b7, byte_range_80_bf;
     5640                BitBlock byte_ef_byte_range_ae_b7_adv, sequence_ef_ae_80;
     5641
     5642
     5643
     5644
     5645        struct_blk_Arabic_PF_A.cc = simd<1>::constant<0>();
     5646        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5647        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     5648          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5649          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5650          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5651          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     5652            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5653            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5654            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5655            r800_ffff_tmp4 = simd_and(r800_ffff_tmp3, basis_bits.bit_4);
     5656            r800_ffff_tmp5 = simd_or(basis_bits.bit_5, basis_bits.bit_6);
     5657            byte_range_ea_ef = simd_and(r800_ffff_tmp4, r800_ffff_tmp5);
     5658            if ((bitblock::any(byte_range_ea_ef) || carryQ.CarryTest(0, 3))) {
     5659              ra000_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5660              ra000_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5661              ra000_ffff_tmp3 = simd_and(ra000_ffff_tmp1, ra000_ffff_tmp2);
     5662              ra000_ffff_tmp4 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     5663              ra000_ffff_tmp5 = simd_and(basis_bits.bit_6, basis_bits.bit_7);
     5664              ra000_ffff_tmp6 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp5);
     5665              byte_ef = simd_and(ra000_ffff_tmp3, ra000_ffff_tmp6);
     5666              ra000_ffff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5667              ra000_ffff_tmp8 = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp2);
     5668              ra000_ffff_tmp9 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     5669              ra000_ffff_tmp10 = simd_and(ra000_ffff_tmp4, ra000_ffff_tmp9);
     5670              byte_ad = simd_and(ra000_ffff_tmp8, ra000_ffff_tmp10);
     5671              carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_ef, carryQ.get_carry_in(0), byte_ef_adv));
     5672              sequence_ef_ad = simd_and(byte_ef_adv, byte_ad);
     5673              ra000_ffff_tmp11 = simd_or(basis_bits.bit_2, basis_bits.bit_3);
     5674              byte_range_90_bf = simd_and(ra000_ffff_tmp7, ra000_ffff_tmp11);
     5675              carryQ.cq[1] = carryout2carry(pablo_blk_Advance(sequence_ef_ad, carryQ.get_carry_in(1), sequence_ef_ad_adv));
     5676              ra000_ffff_tmp12 = simd_and(sequence_ef_ad_adv, byte_range_90_bf);
     5677              struct_blk_Arabic_PF_A.cc = simd_or(struct_blk_Arabic_PF_A.cc, ra000_ffff_tmp12);
     5678              ra000_ffff_tmp13 = simd_and(ra000_ffff_tmp7, basis_bits.bit_2);
     5679              ra000_ffff_tmp14 = simd_not(basis_bits.bit_4);
     5680              ra000_ffff_tmp15 = simd_and(ra000_ffff_tmp4, basis_bits.bit_6);
     5681              ra000_ffff_tmp16 = simd_or(simd_and(basis_bits.bit_3, ra000_ffff_tmp14), simd_andc(ra000_ffff_tmp15, basis_bits.bit_3));
     5682              byte_range_ae_b7 = simd_and(ra000_ffff_tmp13, ra000_ffff_tmp16);
     5683              byte_ef_byte_range_ae_b7 = simd_and(byte_ef_adv, byte_range_ae_b7);
     5684              byte_range_80_bf = ra000_ffff_tmp7;
     5685              carryQ.cq[2] = carryout2carry(pablo_blk_Advance(byte_ef_byte_range_ae_b7, carryQ.get_carry_in(2), byte_ef_byte_range_ae_b7_adv));
     5686              sequence_ef_ae_80 = simd_and(byte_ef_byte_range_ae_b7_adv, byte_range_80_bf);
     5687              struct_blk_Arabic_PF_A.cc = simd_or(struct_blk_Arabic_PF_A.cc, sequence_ef_ae_80);
     5688            }
     5689            else {
     5690              carryQ.CarryDequeueEnqueue(0, 3);
     5691            }
     5692          }
     5693          else {
     5694            carryQ.CarryDequeueEnqueue(0, 3);
     5695          }
     5696        }
     5697        else {
     5698          carryQ.CarryDequeueEnqueue(0, 3);
     5699        }
     5700        carryQ.CarryQ_Adjust(3);
     5701  }
     5702  IDISA_INLINE void clear() {
     5703 }
     5704 
     5705  CarryArray<3, 0> carryQ;
     5706  };
     5707
     5708  struct Property_blk_Tagbanwa {
     5709  Property_blk_Tagbanwa() {
     5710 }
     5711  IDISA_INLINE void do_block(Basis_bits & basis_bits, Struct_blk_Tagbanwa & struct_blk_Tagbanwa) {
     5712                BitBlock byte_range_c0_ff, r80_10ffff_tmp1, r80_10ffff_tmp2, byte_range_e0_ef;
     5713                BitBlock r800_ffff_tmp1, r800_ffff_tmp2, r800_ffff_tmp3, r800_ffff_tmp4;
     5714                BitBlock byte_range_e0_e3, r800_ffff_tmp5, r800_ffff_tmp6, r800_ffff_tmp7;
     5715                BitBlock byte_e4, r800_ffff_tmp8, r800_ffff_tmp9, r800_ffff_tmp10;
     5716                BitBlock byte_range_80_b7, r800_ffff_tmp11, r800_ffff_tmp12, r800_ffff_tmp13;
     5717                BitBlock r800_4dff_tmp1, r800_4dff_tmp2, r800_4dff_tmp3, r800_4dff_tmp4;
     5718                BitBlock r800_4dff_tmp5, byte_range_e0_e1, r800_1fff_tmp1, r800_1fff_tmp2;
     5719                BitBlock r800_1fff_tmp3, r800_1fff_tmp4, r800_1fff_tmp5, r800_1fff_tmp6;
     5720                BitBlock byte_e1, r1000_1fff_tmp1, r1000_1fff_tmp2, r1000_1fff_tmp3;
     5721                BitBlock r1000_1fff_tmp4, r1000_1fff_tmp5, r1000_1fff_tmp6, r1000_1fff_tmp7;
     5722                BitBlock r1000_1fff_tmp8, r1000_1fff_tmp9, r1000_1fff_tmp10, r1000_1fff_tmp11;
     5723                BitBlock byte_9d, byte_e1_adv, sequence_e1_9d, byte_range_a0_bf;
     5724                BitBlock sequence_e1_9d_adv, r1000_1fff_tmp12;
     5725
     5726
     5727
     5728
     5729        struct_blk_Tagbanwa.cc = simd<1>::constant<0>();
     5730        byte_range_c0_ff = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5731        if ((bitblock::any(byte_range_c0_ff) || carryQ.CarryTest(0, 3))) {
     5732          r80_10ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5733          r80_10ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5734          byte_range_e0_ef = simd_and(r80_10ffff_tmp1, r80_10ffff_tmp2);
     5735          if ((bitblock::any(byte_range_e0_ef) || carryQ.CarryTest(0, 3))) {
     5736            r800_ffff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5737            r800_ffff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5738            r800_ffff_tmp3 = simd_and(r800_ffff_tmp1, r800_ffff_tmp2);
     5739            r800_ffff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5740            byte_range_e0_e3 = simd_andc(r800_ffff_tmp3, r800_ffff_tmp4);
     5741            r800_ffff_tmp5 = simd_andc(basis_bits.bit_5, basis_bits.bit_4);
     5742            r800_ffff_tmp6 = simd_or(basis_bits.bit_6, basis_bits.bit_7);
     5743            r800_ffff_tmp7 = simd_andc(r800_ffff_tmp5, r800_ffff_tmp6);
     5744            byte_e4 = simd_and(r800_ffff_tmp3, r800_ffff_tmp7);
     5745            r800_ffff_tmp8 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5746            r800_ffff_tmp9 = simd_and(basis_bits.bit_3, basis_bits.bit_4);
     5747            r800_ffff_tmp10 = simd_and(basis_bits.bit_2, r800_ffff_tmp9);
     5748            byte_range_80_b7 = simd_andc(r800_ffff_tmp8, r800_ffff_tmp10);
     5749            carryQ.cq[0] = carryout2carry(pablo_blk_Advance(byte_e4, carryQ.get_carry_in(0), r800_ffff_tmp11));
     5750            r800_ffff_tmp12 = simd_and(r800_ffff_tmp11, byte_range_80_b7);
     5751            r800_ffff_tmp13 = simd_or(byte_range_e0_e3, r800_ffff_tmp12);
     5752            if ((bitblock::any(r800_ffff_tmp13) || carryQ.CarryTest(1, 2))) {
     5753              r800_4dff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5754              r800_4dff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5755              r800_4dff_tmp3 = simd_and(r800_4dff_tmp1, r800_4dff_tmp2);
     5756              r800_4dff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5757              r800_4dff_tmp5 = simd_or(r800_4dff_tmp4, basis_bits.bit_6);
     5758              byte_range_e0_e1 = simd_andc(r800_4dff_tmp3, r800_4dff_tmp5);
     5759              if ((bitblock::any(byte_range_e0_e1) || carryQ.CarryTest(1, 2))) {
     5760                r800_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5761                r800_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5762                r800_1fff_tmp3 = simd_and(r800_1fff_tmp1, r800_1fff_tmp2);
     5763                r800_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5764                r800_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     5765                r800_1fff_tmp6 = simd_andc(r800_1fff_tmp5, r800_1fff_tmp4);
     5766                byte_e1 = simd_and(r800_1fff_tmp3, r800_1fff_tmp6);
     5767                if ((bitblock::any(byte_e1) || carryQ.CarryTest(1, 2))) {
     5768                  r1000_1fff_tmp1 = simd_and(basis_bits.bit_0, basis_bits.bit_1);
     5769                  r1000_1fff_tmp2 = simd_andc(basis_bits.bit_2, basis_bits.bit_3);
     5770                  r1000_1fff_tmp3 = simd_and(r1000_1fff_tmp1, r1000_1fff_tmp2);
     5771                  r1000_1fff_tmp4 = simd_or(basis_bits.bit_4, basis_bits.bit_5);
     5772                  r1000_1fff_tmp5 = simd_andc(basis_bits.bit_7, basis_bits.bit_6);
     5773                  r1000_1fff_tmp6 = simd_andc(r1000_1fff_tmp5, r1000_1fff_tmp4);
     5774                  byte_e1 = simd_and(r1000_1fff_tmp3, r1000_1fff_tmp6);
     5775                  r1000_1fff_tmp7 = simd_andc(basis_bits.bit_0, basis_bits.bit_1);
     5776                  r1000_1fff_tmp8 = simd_andc(basis_bits.bit_3, basis_bits.bit_2);
     5777                  r1000_1fff_tmp9 = simd_and(r1000_1fff_tmp7, r1000_1fff_tmp8);
     5778                  r1000_1fff_tmp10 = simd_and(basis_bits.bit_4, basis_bits.bit_5);
     5779                  r1000_1fff_tmp11 = simd_and(r1000_1fff_tmp10, r1000_1fff_tmp5);
     5780                  byte_9d = simd_and(r1000_1fff_tmp9, r1000_1fff_tmp11);
     5781                  carryQ.cq[1] = carryout2carry(pablo_blk_Advance(byte_e1, carryQ.get_carry_in(1), byte_e1_adv));
     5782                  sequence_e1_9d = simd_and(byte_e1_adv, byte_9d);
     5783                  byte_range_a0_bf = simd_and(r1000_1fff_tmp7, basis_bits.bit_2);
     5784                  carryQ.cq[2] = carryout2carry(pablo_blk_Advance(sequence_e1_9d, carryQ.get_carry_in(2), sequence_e1_9d_adv));
     5785                  r1000_1fff_tmp12 = simd_and(sequence_e1_9d_adv, byte_range_a0_bf);
     5786                  struct_blk_Tagbanwa.cc = simd_or(struct_blk_Tagbanwa.cc, r1000_1fff_tmp12);
     5787                }
     5788                else {
     5789                  carryQ.CarryDequeueEnqueue(1, 2);
     5790                }
     5791              }
     5792              else {
     5793                carryQ.CarryDequeueEnqueue(1, 2);
     5794              }
     5795            }
     5796            else {
     5797              carryQ.CarryDequeueEnqueue(1, 2);
     5798            }
     5799          }
     5800          else {
     5801    &n