github.com/shadialtarsha/go-pcre@v0.0.0-20220904164957-b4f1834ceecc/lib/pcre2_darwin_arm64.go (about)

     1  // Code generated by 'ccgo -o pcre2_darwin_arm64.go -pkgname lib -trace-translation-units -export-externs X -export-defines D -export-fields F -export-structs S -export-typedefs T pcre.json .libs/libpcre2-8.a', DO NOT EDIT.
     2  
     3  package lib
     4  
     5  import (
     6  	"math"
     7  	"reflect"
     8  	"sync/atomic"
     9  	"unsafe"
    10  
    11  	"modernc.org/libc"
    12  	"modernc.org/libc/sys/types"
    13  )
    14  
    15  var _ = math.Pi
    16  var _ reflect.Kind
    17  var _ atomic.Value
    18  var _ unsafe.Pointer
    19  var _ *libc.TLS
    20  var _ types.Size_t
    21  
    22  const (
    23  	DBIG_ENDIAN                                      = 4321                 // endian.h:96:1:
    24  	DBSR_DEFAULT                                     = 1                    // pcre2_internal.h:243:1:
    25  	DBUFSIZ                                          = 1024                 // stdio.h:103:1:
    26  	DBUS_ADRALN                                      = 1                    // signal.h:241:1:
    27  	DBUS_ADRERR                                      = 2                    // signal.h:242:1:
    28  	DBUS_NOOP                                        = 0                    // signal.h:239:1:
    29  	DBUS_OBJERR                                      = 3                    // signal.h:243:1:
    30  	DBYTE_ORDER                                      = 1234                 // endian.h:99:1:
    31  	DCHAR_0                                          = 48                   // pcre2_internal.h:999:1:
    32  	DCHAR_1                                          = 49                   // pcre2_internal.h:1000:1:
    33  	DCHAR_2                                          = 50                   // pcre2_internal.h:1001:1:
    34  	DCHAR_3                                          = 51                   // pcre2_internal.h:1002:1:
    35  	DCHAR_4                                          = 52                   // pcre2_internal.h:1003:1:
    36  	DCHAR_5                                          = 53                   // pcre2_internal.h:1004:1:
    37  	DCHAR_6                                          = 54                   // pcre2_internal.h:1005:1:
    38  	DCHAR_7                                          = 55                   // pcre2_internal.h:1006:1:
    39  	DCHAR_8                                          = 56                   // pcre2_internal.h:1007:1:
    40  	DCHAR_9                                          = 57                   // pcre2_internal.h:1008:1:
    41  	DCHAR_A                                          = 65                   // pcre2_internal.h:1016:1:
    42  	DCHAR_AMPERSAND                                  = 38                   // pcre2_internal.h:989:1:
    43  	DCHAR_APOSTROPHE                                 = 39                   // pcre2_internal.h:990:1:
    44  	DCHAR_ASTERISK                                   = 42                   // pcre2_internal.h:993:1:
    45  	DCHAR_B                                          = 66                   // pcre2_internal.h:1017:1:
    46  	DCHAR_BACKSLASH                                  = 92                   // pcre2_internal.h:1043:1:
    47  	DCHAR_BEL                                        = 7                    // pcre2_internal.h:978:1:
    48  	DCHAR_BIT                                        = 8                    // limits.h:63:1:
    49  	DCHAR_BS                                         = 8                    // pcre2_internal.h:977:1:
    50  	DCHAR_C                                          = 67                   // pcre2_internal.h:1018:1:
    51  	DCHAR_CIRCUMFLEX_ACCENT                          = 94                   // pcre2_internal.h:1045:1:
    52  	DCHAR_COLON                                      = 58                   // pcre2_internal.h:1009:1:
    53  	DCHAR_COMMA                                      = 44                   // pcre2_internal.h:995:1:
    54  	DCHAR_COMMERCIAL_AT                              = 64                   // pcre2_internal.h:1015:1:
    55  	DCHAR_CR                                         = 13                   // pcre2_internal.h:973:1:
    56  	DCHAR_D                                          = 68                   // pcre2_internal.h:1019:1:
    57  	DCHAR_DEL                                        = 127                  // pcre2_internal.h:980:1:
    58  	DCHAR_DOLLAR_SIGN                                = 36                   // pcre2_internal.h:987:1:
    59  	DCHAR_DOT                                        = 46                   // pcre2_internal.h:997:1:
    60  	DCHAR_E                                          = 69                   // pcre2_internal.h:1020:1:
    61  	DCHAR_EQUALS_SIGN                                = 61                   // pcre2_internal.h:1012:1:
    62  	DCHAR_ESC                                        = 27                   // pcre2_internal.h:979:1:
    63  	DCHAR_EXCLAMATION_MARK                           = 33                   // pcre2_internal.h:984:1:
    64  	DCHAR_F                                          = 70                   // pcre2_internal.h:1021:1:
    65  	DCHAR_FF                                         = 12                   // pcre2_internal.h:972:1:
    66  	DCHAR_G                                          = 71                   // pcre2_internal.h:1022:1:
    67  	DCHAR_GRAVE_ACCENT                               = 96                   // pcre2_internal.h:1047:1:
    68  	DCHAR_GREATER_THAN_SIGN                          = 62                   // pcre2_internal.h:1013:1:
    69  	DCHAR_H                                          = 72                   // pcre2_internal.h:1023:1:
    70  	DCHAR_HT                                         = 9                    // pcre2_internal.h:970:1:
    71  	DCHAR_I                                          = 73                   // pcre2_internal.h:1024:1:
    72  	DCHAR_J                                          = 74                   // pcre2_internal.h:1025:1:
    73  	DCHAR_K                                          = 75                   // pcre2_internal.h:1026:1:
    74  	DCHAR_L                                          = 76                   // pcre2_internal.h:1027:1:
    75  	DCHAR_LEFT_CURLY_BRACKET                         = 123                  // pcre2_internal.h:1074:1:
    76  	DCHAR_LEFT_PARENTHESIS                           = 40                   // pcre2_internal.h:991:1:
    77  	DCHAR_LEFT_SQUARE_BRACKET                        = 91                   // pcre2_internal.h:1042:1:
    78  	DCHAR_LESS_THAN_SIGN                             = 60                   // pcre2_internal.h:1011:1:
    79  	DCHAR_LF                                         = 10                   // pcre2_internal.h:974:1:
    80  	DCHAR_M                                          = 77                   // pcre2_internal.h:1028:1:
    81  	DCHAR_MAX                                        = 127                  // limits.h:70:1:
    82  	DCHAR_MIN                                        = -128                 // limits.h:69:1:
    83  	DCHAR_MINUS                                      = 45                   // pcre2_internal.h:996:1:
    84  	DCHAR_N                                          = 78                   // pcre2_internal.h:1029:1:
    85  	DCHAR_NL                                         = 10                   // pcre2_internal.h:975:1:
    86  	DCHAR_NUL                                        = 0                    // pcre2_internal.h:982:1:
    87  	DCHAR_NUMBER_SIGN                                = 35                   // pcre2_internal.h:986:1:
    88  	DCHAR_O                                          = 79                   // pcre2_internal.h:1030:1:
    89  	DCHAR_P                                          = 80                   // pcre2_internal.h:1031:1:
    90  	DCHAR_PERCENT_SIGN                               = 37                   // pcre2_internal.h:988:1:
    91  	DCHAR_PLUS                                       = 43                   // pcre2_internal.h:994:1:
    92  	DCHAR_Q                                          = 81                   // pcre2_internal.h:1032:1:
    93  	DCHAR_QUESTION_MARK                              = 63                   // pcre2_internal.h:1014:1:
    94  	DCHAR_QUOTATION_MARK                             = 34                   // pcre2_internal.h:985:1:
    95  	DCHAR_R                                          = 82                   // pcre2_internal.h:1033:1:
    96  	DCHAR_RIGHT_CURLY_BRACKET                        = 125                  // pcre2_internal.h:1076:1:
    97  	DCHAR_RIGHT_PARENTHESIS                          = 41                   // pcre2_internal.h:992:1:
    98  	DCHAR_RIGHT_SQUARE_BRACKET                       = 93                   // pcre2_internal.h:1044:1:
    99  	DCHAR_S                                          = 83                   // pcre2_internal.h:1034:1:
   100  	DCHAR_SEMICOLON                                  = 59                   // pcre2_internal.h:1010:1:
   101  	DCHAR_SLASH                                      = 47                   // pcre2_internal.h:998:1:
   102  	DCHAR_SPACE                                      = 32                   // pcre2_internal.h:983:1:
   103  	DCHAR_T                                          = 84                   // pcre2_internal.h:1035:1:
   104  	DCHAR_TILDE                                      = 126                  // pcre2_internal.h:1077:1:
   105  	DCHAR_U                                          = 85                   // pcre2_internal.h:1036:1:
   106  	DCHAR_UNDERSCORE                                 = 95                   // pcre2_internal.h:1046:1:
   107  	DCHAR_V                                          = 86                   // pcre2_internal.h:1037:1:
   108  	DCHAR_VERTICAL_LINE                              = 124                  // pcre2_internal.h:1075:1:
   109  	DCHAR_VT                                         = 11                   // pcre2_internal.h:971:1:
   110  	DCHAR_W                                          = 87                   // pcre2_internal.h:1038:1:
   111  	DCHAR_X                                          = 88                   // pcre2_internal.h:1039:1:
   112  	DCHAR_Y                                          = 89                   // pcre2_internal.h:1040:1:
   113  	DCHAR_Z                                          = 90                   // pcre2_internal.h:1041:1:
   114  	DCHAR_a                                          = 97                   // pcre2_internal.h:1048:1:
   115  	DCHAR_b                                          = 98                   // pcre2_internal.h:1049:1:
   116  	DCHAR_c                                          = 99                   // pcre2_internal.h:1050:1:
   117  	DCHAR_d                                          = 100                  // pcre2_internal.h:1051:1:
   118  	DCHAR_e                                          = 101                  // pcre2_internal.h:1052:1:
   119  	DCHAR_f                                          = 102                  // pcre2_internal.h:1053:1:
   120  	DCHAR_g                                          = 103                  // pcre2_internal.h:1054:1:
   121  	DCHAR_h                                          = 104                  // pcre2_internal.h:1055:1:
   122  	DCHAR_i                                          = 105                  // pcre2_internal.h:1056:1:
   123  	DCHAR_j                                          = 106                  // pcre2_internal.h:1057:1:
   124  	DCHAR_k                                          = 107                  // pcre2_internal.h:1058:1:
   125  	DCHAR_l                                          = 108                  // pcre2_internal.h:1059:1:
   126  	DCHAR_m                                          = 109                  // pcre2_internal.h:1060:1:
   127  	DCHAR_n                                          = 110                  // pcre2_internal.h:1061:1:
   128  	DCHAR_o                                          = 111                  // pcre2_internal.h:1062:1:
   129  	DCHAR_p                                          = 112                  // pcre2_internal.h:1063:1:
   130  	DCHAR_q                                          = 113                  // pcre2_internal.h:1064:1:
   131  	DCHAR_r                                          = 114                  // pcre2_internal.h:1065:1:
   132  	DCHAR_s                                          = 115                  // pcre2_internal.h:1066:1:
   133  	DCHAR_t                                          = 116                  // pcre2_internal.h:1067:1:
   134  	DCHAR_u                                          = 117                  // pcre2_internal.h:1068:1:
   135  	DCHAR_v                                          = 118                  // pcre2_internal.h:1069:1:
   136  	DCHAR_w                                          = 119                  // pcre2_internal.h:1070:1:
   137  	DCHAR_x                                          = 120                  // pcre2_internal.h:1071:1:
   138  	DCHAR_y                                          = 121                  // pcre2_internal.h:1072:1:
   139  	DCHAR_z                                          = 122                  // pcre2_internal.h:1073:1:
   140  	DCLD_CONTINUED                                   = 6                    // signal.h:258:1:
   141  	DCLD_DUMPED                                      = 3                    // signal.h:255:1:
   142  	DCLD_EXITED                                      = 1                    // signal.h:253:1:
   143  	DCLD_KILLED                                      = 2                    // signal.h:254:1:
   144  	DCLD_NOOP                                        = 0                    // signal.h:251:1:
   145  	DCLD_STOPPED                                     = 5                    // signal.h:257:1:
   146  	DCLD_TRAPPED                                     = 4                    // signal.h:256:1:
   147  	DCOMPILE_ERROR_BASE                              = 100                  // pcre2_internal.h:221:1:
   148  	DCPUMON_MAKE_FATAL                               = 0x1000               // resource.h:439:1:
   149  	DDFA_START_RWS_SIZE                              = 30720                // pcre2_internal.h:236:1:
   150  	DEOF                                             = -1                   // stdio.h:104:1:
   151  	DEXIT_FAILURE                                    = 1                    // stdlib.h:102:1:
   152  	DEXIT_SUCCESS                                    = 0                    // stdlib.h:103:1:
   153  	DFALSE                                           = 0                    // pcre2_internal.h:69:1:
   154  	DFILENAME_MAX                                    = 1024                 // stdio.h:108:1:
   155  	DFOOTPRINT_INTERVAL_RESET                        = 0x1                  // resource.h:444:1:
   156  	DFOPEN_MAX                                       = 20                   // stdio.h:107:1:
   157  	DFPE_FLTDIV                                      = 1                    // signal.h:221:1:
   158  	DFPE_FLTINV                                      = 5                    // signal.h:225:1:
   159  	DFPE_FLTOVF                                      = 2                    // signal.h:222:1:
   160  	DFPE_FLTRES                                      = 4                    // signal.h:224:1:
   161  	DFPE_FLTSUB                                      = 6                    // signal.h:226:1:
   162  	DFPE_FLTUND                                      = 3                    // signal.h:223:1:
   163  	DFPE_INTDIV                                      = 7                    // signal.h:227:1:
   164  	DFPE_INTOVF                                      = 8                    // signal.h:228:1:
   165  	DFPE_NOOP                                        = 0                    // signal.h:219:1:
   166  	DFP_CHOP                                         = 3                    // _structs.h:114:1:
   167  	DFP_PREC_24B                                     = 0                    // _structs.h:105:1:
   168  	DFP_PREC_53B                                     = 2                    // _structs.h:106:1:
   169  	DFP_PREC_64B                                     = 3                    // _structs.h:107:1:
   170  	DFP_RND_DOWN                                     = 1                    // _structs.h:112:1:
   171  	DFP_RND_NEAR                                     = 0                    // _structs.h:111:1:
   172  	DFP_RND_UP                                       = 2                    // _structs.h:113:1:
   173  	DFP_STATE_BYTES                                  = 512                  // _structs.h:278:1:
   174  	DHAVE_ATTRIBUTE_UNINITIALIZED                    = 1                    // config.h:57:1:
   175  	DHAVE_BCOPY                                      = 1                    // config.h:60:1:
   176  	DHAVE_BZLIB_H                                    = 1                    // config.h:63:1:
   177  	DHAVE_CONFIG_H                                   = 1                    // <defines>:1:1:
   178  	DHAVE_DIRENT_H                                   = 1                    // config.h:66:1:
   179  	DHAVE_DLFCN_H                                    = 1                    // config.h:69:1:
   180  	DHAVE_INTTYPES_H                                 = 1                    // config.h:78:1:
   181  	DHAVE_LIMITS_H                                   = 1                    // config.h:81:1:
   182  	DHAVE_MEMMOVE                                    = 1                    // config.h:87:1:
   183  	DHAVE_MKOSTEMP                                   = 1                    // config.h:93:1:
   184  	DHAVE_REALPATH                                   = 1                    // config.h:111:1:
   185  	DHAVE_STDINT_H                                   = 1                    // config.h:117:1:
   186  	DHAVE_STDIO_H                                    = 1                    // config.h:120:1:
   187  	DHAVE_STDLIB_H                                   = 1                    // config.h:123:1:
   188  	DHAVE_STRERROR                                   = 1                    // config.h:126:1:
   189  	DHAVE_STRINGS_H                                  = 1                    // config.h:129:1:
   190  	DHAVE_STRING_H                                   = 1                    // config.h:132:1:
   191  	DHAVE_SYS_STAT_H                                 = 1                    // config.h:135:1:
   192  	DHAVE_SYS_TYPES_H                                = 1                    // config.h:138:1:
   193  	DHAVE_SYS_WAIT_H                                 = 1                    // config.h:141:1:
   194  	DHAVE_UNISTD_H                                   = 1                    // config.h:144:1:
   195  	DHAVE_VISIBILITY                                 = 1                    // config.h:147:1:
   196  	DHAVE_WCHAR_H                                    = 1                    // config.h:150:1:
   197  	DHAVE_ZLIB_H                                     = 1                    // config.h:156:1:
   198  	DHEAP_LIMIT                                      = 20000000             // config.h:161:1:
   199  	DILL_BADSTK                                      = 8                    // signal.h:215:1:
   200  	DILL_COPROC                                      = 7                    // signal.h:214:1:
   201  	DILL_ILLADR                                      = 5                    // signal.h:212:1:
   202  	DILL_ILLOPC                                      = 1                    // signal.h:208:1:
   203  	DILL_ILLOPN                                      = 4                    // signal.h:211:1:
   204  	DILL_ILLTRP                                      = 2                    // signal.h:209:1:
   205  	DILL_NOOP                                        = 0                    // signal.h:206:1:
   206  	DILL_PRVOPC                                      = 3                    // signal.h:210:1:
   207  	DILL_PRVREG                                      = 6                    // signal.h:213:1:
   208  	DIMM2_SIZE                                       = 2                    // pcre2_intmodedep.h:193:1:
   209  	DINT16_MAX                                       = 32767                // stdint.h:599:1:
   210  	DINT16_MIN                                       = -32768               // stdint.h:600:1:
   211  	DINT32_MAX                                       = 2147483647           // stdint.h:555:1:
   212  	DINT32_MIN                                       = -2147483648          // stdint.h:556:1:
   213  	DINT64_MAX                                       = 9223372036854775807  // stdint.h:461:1:
   214  	DINT64_MIN                                       = -9223372036854775808 // stdint.h:462:1:
   215  	DINT8_MAX                                        = 127                  // stdint.h:621:1:
   216  	DINT8_MIN                                        = -128                 // stdint.h:622:1:
   217  	DINTMAX_MAX                                      = 9223372036854775807  // stdint.h:663:1:
   218  	DINTMAX_MIN                                      = -9223372036854775808 // stdint.h:662:1:
   219  	DINTPTR_MAX                                      = 9223372036854775807  // stdint.h:649:1:
   220  	DINTPTR_MIN                                      = -9223372036854775808 // stdint.h:648:1:
   221  	DINT_FAST16_MAX                                  = 32767                // stdint.h:615:1:
   222  	DINT_FAST16_MIN                                  = -32768               // stdint.h:614:1:
   223  	DINT_FAST32_MAX                                  = 2147483647           // stdint.h:574:1:
   224  	DINT_FAST32_MIN                                  = -2147483648          // stdint.h:573:1:
   225  	DINT_FAST64_MAX                                  = 9223372036854775807  // stdint.h:483:1:
   226  	DINT_FAST64_MIN                                  = -9223372036854775808 // stdint.h:482:1:
   227  	DINT_FAST8_MAX                                   = 127                  // stdint.h:634:1:
   228  	DINT_FAST8_MIN                                   = -128                 // stdint.h:633:1:
   229  	DINT_LEAST16_MAX                                 = 32767                // stdint.h:612:1:
   230  	DINT_LEAST16_MIN                                 = -32768               // stdint.h:611:1:
   231  	DINT_LEAST32_MAX                                 = 2147483647           // stdint.h:571:1:
   232  	DINT_LEAST32_MIN                                 = -2147483648          // stdint.h:570:1:
   233  	DINT_LEAST64_MAX                                 = 9223372036854775807  // stdint.h:480:1:
   234  	DINT_LEAST64_MIN                                 = -9223372036854775808 // stdint.h:479:1:
   235  	DINT_LEAST8_MAX                                  = 127                  // stdint.h:631:1:
   236  	DINT_LEAST8_MIN                                  = -128                 // stdint.h:630:1:
   237  	DINT_MAX                                         = 2147483647           // limits.h:46:1:
   238  	DINT_MIN                                         = -2147483648          // limits.h:51:1:
   239  	DIOPOL_APPLICATION                               = 5                    // resource.h:478:1:
   240  	DIOPOL_ATIME_UPDATES_DEFAULT                     = 0                    // resource.h:482:1:
   241  	DIOPOL_ATIME_UPDATES_OFF                         = 1                    // resource.h:483:1:
   242  	DIOPOL_DEFAULT                                   = 0                    // resource.h:470:1:
   243  	DIOPOL_IMPORTANT                                 = 1                    // resource.h:471:1:
   244  	DIOPOL_MATERIALIZE_DATALESS_FILES_DEFAULT        = 0                    // resource.h:485:1:
   245  	DIOPOL_MATERIALIZE_DATALESS_FILES_OFF            = 1                    // resource.h:486:1:
   246  	DIOPOL_MATERIALIZE_DATALESS_FILES_ON             = 2                    // resource.h:487:1:
   247  	DIOPOL_NORMAL                                    = 1                    // resource.h:479:1:
   248  	DIOPOL_PASSIVE                                   = 2                    // resource.h:472:1:
   249  	DIOPOL_SCOPE_DARWIN_BG                           = 2                    // resource.h:467:1:
   250  	DIOPOL_SCOPE_PROCESS                             = 0                    // resource.h:465:1:
   251  	DIOPOL_SCOPE_THREAD                              = 1                    // resource.h:466:1:
   252  	DIOPOL_STANDARD                                  = 5                    // resource.h:475:1:
   253  	DIOPOL_THROTTLE                                  = 3                    // resource.h:473:1:
   254  	DIOPOL_TYPE_DISK                                 = 0                    // resource.h:454:1:
   255  	DIOPOL_TYPE_VFS_ALLOW_LOW_SPACE_WRITES           = 9                    // resource.h:462:1:
   256  	DIOPOL_TYPE_VFS_ATIME_UPDATES                    = 2                    // resource.h:455:1:
   257  	DIOPOL_TYPE_VFS_IGNORE_CONTENT_PROTECTION        = 6                    // resource.h:459:1:
   258  	DIOPOL_TYPE_VFS_IGNORE_PERMISSIONS               = 7                    // resource.h:460:1:
   259  	DIOPOL_TYPE_VFS_MATERIALIZE_DATALESS_FILES       = 3                    // resource.h:456:1:
   260  	DIOPOL_TYPE_VFS_SKIP_MTIME_UPDATE                = 8                    // resource.h:461:1:
   261  	DIOPOL_TYPE_VFS_STATFS_NO_DATA_VOLUME            = 4                    // resource.h:457:1:
   262  	DIOPOL_TYPE_VFS_TRIGGER_RESOLVE                  = 5                    // resource.h:458:1:
   263  	DIOPOL_UTILITY                                   = 4                    // resource.h:474:1:
   264  	DIOPOL_VFS_ALLOW_LOW_SPACE_WRITES_OFF            = 0                    // resource.h:504:1:
   265  	DIOPOL_VFS_ALLOW_LOW_SPACE_WRITES_ON             = 1                    // resource.h:505:1:
   266  	DIOPOL_VFS_CONTENT_PROTECTION_DEFAULT            = 0                    // resource.h:495:1:
   267  	DIOPOL_VFS_CONTENT_PROTECTION_IGNORE             = 1                    // resource.h:496:1:
   268  	DIOPOL_VFS_IGNORE_PERMISSIONS_OFF                = 0                    // resource.h:498:1:
   269  	DIOPOL_VFS_IGNORE_PERMISSIONS_ON                 = 1                    // resource.h:499:1:
   270  	DIOPOL_VFS_SKIP_MTIME_UPDATE_OFF                 = 0                    // resource.h:501:1:
   271  	DIOPOL_VFS_SKIP_MTIME_UPDATE_ON                  = 1                    // resource.h:502:1:
   272  	DIOPOL_VFS_STATFS_FORCE_NO_DATA_VOLUME           = 1                    // resource.h:490:1:
   273  	DIOPOL_VFS_STATFS_NO_DATA_VOLUME_DEFAULT         = 0                    // resource.h:489:1:
   274  	DIOPOL_VFS_TRIGGER_RESOLVE_DEFAULT               = 0                    // resource.h:492:1:
   275  	DIOPOL_VFS_TRIGGER_RESOLVE_OFF                   = 1                    // resource.h:493:1:
   276  	DLINK_SIZE                                       = 2                    // config.h:168:1:
   277  	DLITTLE_ENDIAN                                   = 1234                 // endian.h:95:1:
   278  	DLLONG_MAX                                       = 9223372036854775807  // limits.h:82:1:
   279  	DLLONG_MIN                                       = -9223372036854775808 // limits.h:83:1:
   280  	DLONG_LONG_MAX                                   = 9223372036854775807  // limits.h:97:1:
   281  	DLONG_LONG_MIN                                   = -9223372036854775808 // limits.h:98:1:
   282  	DLONG_MAX                                        = 9223372036854775807  // limits.h:47:1:
   283  	DLONG_MIN                                        = -9223372036854775808 // limits.h:52:1:
   284  	DLOOKBEHIND_MAX                                  = 65535                // pcre2_intmodedep.h:616:1:
   285  	DLT_OBJDIR                                       = ".libs/"             // config.h:171:1:
   286  	DL_ctermid                                       = 1024                 // stdio.h:202:1:
   287  	DL_tmpnam                                        = 1024                 // stdio.h:114:1:
   288  	DMAC_OS_VERSION_11_0                             = 110000               // AvailabilityVersions.h:231:1:
   289  	DMAC_OS_VERSION_12_0                             = 120000               // AvailabilityVersions.h:232:1:
   290  	DMAC_OS_X_VERSION_10_0                           = 1000                 // AvailabilityVersions.h:199:1:
   291  	DMAC_OS_X_VERSION_10_1                           = 1010                 // AvailabilityVersions.h:200:1:
   292  	DMAC_OS_X_VERSION_10_10                          = 101000               // AvailabilityVersions.h:209:1:
   293  	DMAC_OS_X_VERSION_10_10_2                        = 101002               // AvailabilityVersions.h:210:1:
   294  	DMAC_OS_X_VERSION_10_10_3                        = 101003               // AvailabilityVersions.h:211:1:
   295  	DMAC_OS_X_VERSION_10_11                          = 101100               // AvailabilityVersions.h:212:1:
   296  	DMAC_OS_X_VERSION_10_11_2                        = 101102               // AvailabilityVersions.h:213:1:
   297  	DMAC_OS_X_VERSION_10_11_3                        = 101103               // AvailabilityVersions.h:214:1:
   298  	DMAC_OS_X_VERSION_10_11_4                        = 101104               // AvailabilityVersions.h:215:1:
   299  	DMAC_OS_X_VERSION_10_12                          = 101200               // AvailabilityVersions.h:216:1:
   300  	DMAC_OS_X_VERSION_10_12_1                        = 101201               // AvailabilityVersions.h:217:1:
   301  	DMAC_OS_X_VERSION_10_12_2                        = 101202               // AvailabilityVersions.h:218:1:
   302  	DMAC_OS_X_VERSION_10_12_4                        = 101204               // AvailabilityVersions.h:219:1:
   303  	DMAC_OS_X_VERSION_10_13                          = 101300               // AvailabilityVersions.h:220:1:
   304  	DMAC_OS_X_VERSION_10_13_1                        = 101301               // AvailabilityVersions.h:221:1:
   305  	DMAC_OS_X_VERSION_10_13_2                        = 101302               // AvailabilityVersions.h:222:1:
   306  	DMAC_OS_X_VERSION_10_13_4                        = 101304               // AvailabilityVersions.h:223:1:
   307  	DMAC_OS_X_VERSION_10_14                          = 101400               // AvailabilityVersions.h:224:1:
   308  	DMAC_OS_X_VERSION_10_14_1                        = 101401               // AvailabilityVersions.h:225:1:
   309  	DMAC_OS_X_VERSION_10_14_4                        = 101404               // AvailabilityVersions.h:226:1:
   310  	DMAC_OS_X_VERSION_10_14_6                        = 101406               // AvailabilityVersions.h:227:1:
   311  	DMAC_OS_X_VERSION_10_15                          = 101500               // AvailabilityVersions.h:228:1:
   312  	DMAC_OS_X_VERSION_10_15_1                        = 101501               // AvailabilityVersions.h:229:1:
   313  	DMAC_OS_X_VERSION_10_16                          = 101600               // AvailabilityVersions.h:230:1:
   314  	DMAC_OS_X_VERSION_10_2                           = 1020                 // AvailabilityVersions.h:201:1:
   315  	DMAC_OS_X_VERSION_10_3                           = 1030                 // AvailabilityVersions.h:202:1:
   316  	DMAC_OS_X_VERSION_10_4                           = 1040                 // AvailabilityVersions.h:203:1:
   317  	DMAC_OS_X_VERSION_10_5                           = 1050                 // AvailabilityVersions.h:204:1:
   318  	DMAC_OS_X_VERSION_10_6                           = 1060                 // AvailabilityVersions.h:205:1:
   319  	DMAC_OS_X_VERSION_10_7                           = 1070                 // AvailabilityVersions.h:206:1:
   320  	DMAC_OS_X_VERSION_10_8                           = 1080                 // AvailabilityVersions.h:207:1:
   321  	DMAC_OS_X_VERSION_10_9                           = 1090                 // AvailabilityVersions.h:208:1:
   322  	DMAGIC_NUMBER                                    = 0x50435245           // pcre2_internal.h:547:1:
   323  	DMATCH_LIMIT                                     = 10000000             // config.h:180:1:
   324  	DMATCH_LIMIT_DEPTH                               = 10000000             // config.h:192:1:
   325  	DMAX_MARK                                        = 255                  // pcre2_intmodedep.h:213:1:
   326  	DMAX_NAME_COUNT                                  = 10000                // config.h:197:1:
   327  	DMAX_NAME_SIZE                                   = 32                   // config.h:202:1:
   328  	DMAX_NON_UTF_CHAR                                = 255                  // pcre2_internal.h:1894:1:
   329  	DMAX_PATTERN_SIZE                                = 65536                // pcre2_intmodedep.h:110:1:
   330  	DMAX_UTF_CODE_POINT                              = 0x10ffff             // pcre2_internal.h:209:1:
   331  	DMAX_UTF_SINGLE_CU                               = 127                  // pcre2_intmodedep.h:282:1:
   332  	DMAYBE_UTF_MULTI                                 = 0                    // pcre2_intmodedep.h:278:1:
   333  	DMB_LEN_MAX                                      = 1                    // limits.h:60:1:
   334  	DMINSIGSTKSZ                                     = 32768                // signal.h:340:1:
   335  	DNEWLINE_DEFAULT                                 = 2                    // config.h:211:1:
   336  	DNLTYPE_ANY                                      = 1                    // pcre2_internal.h:474:1:
   337  	DNLTYPE_ANYCRLF                                  = 2                    // pcre2_internal.h:475:1:
   338  	DNLTYPE_FIXED                                    = 0                    // pcre2_internal.h:473:1:
   339  	DNOTACHAR                                        = 0xffffffff           // pcre2_internal.h:205:1:
   340  	DNSIG                                            = 32                   // signal.h:79:1:
   341  	DPACKAGE                                         = "pcre2"              // config.h:214:1:
   342  	DPACKAGE_BUGREPORT                               = ""                   // config.h:217:1:
   343  	DPACKAGE_NAME                                    = "PCRE2"              // config.h:220:1:
   344  	DPACKAGE_STRING                                  = "PCRE2 10.40"        // config.h:223:1:
   345  	DPACKAGE_TARNAME                                 = "pcre2"              // config.h:226:1:
   346  	DPACKAGE_URL                                     = ""                   // config.h:229:1:
   347  	DPACKAGE_VERSION                                 = "10.40"              // config.h:232:1:
   348  	DPARENS_NEST_LIMIT                               = 250                  // config.h:237:1:
   349  	DPCRE2GREP_BUFSIZE                               = 20480                // config.h:245:1:
   350  	DPCRE2GREP_MAX_BUFSIZE                           = 1048576              // config.h:251:1:
   351  	DPCRE2_ALLOW_EMPTY_CLASS                         = 0x00000001           // pcre2.h:119:1:
   352  	DPCRE2_ALT_BSUX                                  = 0x00000002           // pcre2.h:120:1:
   353  	DPCRE2_ALT_CIRCUMFLEX                            = 0x00200000           // pcre2.h:140:1:
   354  	DPCRE2_ALT_VERBNAMES                             = 0x00400000           // pcre2.h:141:1:
   355  	DPCRE2_ANCHORED                                  = 0x80000000           // pcre2.h:105:1:
   356  	DPCRE2_AUTO_CALLOUT                              = 0x00000004           // pcre2.h:121:1:
   357  	DPCRE2_BSR_ANYCRLF                               = 2                    // pcre2.h:211:1:
   358  	DPCRE2_BSR_SET                                   = 0x00004000           // pcre2_internal.h:522:1:
   359  	DPCRE2_BSR_UNICODE                               = 1                    // pcre2.h:210:1:
   360  	DPCRE2_CALLOUT_BACKTRACK                         = 0x00000002           // pcre2.h:513:1:
   361  	DPCRE2_CALLOUT_STARTMATCH                        = 0x00000001           // pcre2.h:512:1:
   362  	DPCRE2_CALL_CONVENTION                           = 0                    // pcre2.h:81:1:
   363  	DPCRE2_CASELESS                                  = 0x00000008           // pcre2.h:122:1:
   364  	DPCRE2_CODE_UNIT_WIDTH                           = 8                    // <defines>:2:1:
   365  	DPCRE2_CONFIG_BSR                                = 0                    // pcre2.h:437:1:
   366  	DPCRE2_CONFIG_COMPILED_WIDTHS                    = 14                   // pcre2.h:452:1:
   367  	DPCRE2_CONFIG_DEPTHLIMIT                         = 7                    // pcre2.h:444:1:
   368  	DPCRE2_CONFIG_HEAPLIMIT                          = 12                   // pcre2.h:450:1:
   369  	DPCRE2_CONFIG_JIT                                = 1                    // pcre2.h:438:1:
   370  	DPCRE2_CONFIG_JITTARGET                          = 2                    // pcre2.h:439:1:
   371  	DPCRE2_CONFIG_LINKSIZE                           = 3                    // pcre2.h:440:1:
   372  	DPCRE2_CONFIG_MATCHLIMIT                         = 4                    // pcre2.h:441:1:
   373  	DPCRE2_CONFIG_NEVER_BACKSLASH_C                  = 13                   // pcre2.h:451:1:
   374  	DPCRE2_CONFIG_NEWLINE                            = 5                    // pcre2.h:442:1:
   375  	DPCRE2_CONFIG_PARENSLIMIT                        = 6                    // pcre2.h:443:1:
   376  	DPCRE2_CONFIG_RECURSIONLIMIT                     = 7                    // pcre2.h:445:1:
   377  	DPCRE2_CONFIG_STACKRECURSE                       = 8                    // pcre2.h:446:1:
   378  	DPCRE2_CONFIG_TABLES_LENGTH                      = 15                   // pcre2.h:453:1:
   379  	DPCRE2_CONFIG_UNICODE                            = 9                    // pcre2.h:447:1:
   380  	DPCRE2_CONFIG_UNICODE_VERSION                    = 10                   // pcre2.h:448:1:
   381  	DPCRE2_CONFIG_VERSION                            = 11                   // pcre2.h:449:1:
   382  	DPCRE2_CONVERT_GLOB                              = 0x00000010           // pcre2.h:195:1:
   383  	DPCRE2_CONVERT_GLOB_NO_STARSTAR                  = 0x00000050           // pcre2.h:197:1:
   384  	DPCRE2_CONVERT_GLOB_NO_WILD_SEPARATOR            = 0x00000030           // pcre2.h:196:1:
   385  	DPCRE2_CONVERT_NO_UTF_CHECK                      = 0x00000002           // pcre2.h:192:1:
   386  	DPCRE2_CONVERT_POSIX_BASIC                       = 0x00000004           // pcre2.h:193:1:
   387  	DPCRE2_CONVERT_POSIX_EXTENDED                    = 0x00000008           // pcre2.h:194:1:
   388  	DPCRE2_CONVERT_UTF                               = 0x00000001           // pcre2.h:191:1:
   389  	DPCRE2_COPY_MATCHED_SUBJECT                      = 0x00004000           // pcre2.h:184:1:
   390  	DPCRE2_DATE                                      = 2004                 // pcre2.h:47:1:
   391  	DPCRE2_DEREF_TABLES                              = 0x00040000           // pcre2_internal.h:526:1:
   392  	DPCRE2_DFA_RESTART                               = 0x00000040           // pcre2.h:176:1:
   393  	DPCRE2_DFA_SHORTEST                              = 0x00000080           // pcre2.h:177:1:
   394  	DPCRE2_DOLLAR_ENDONLY                            = 0x00000010           // pcre2.h:123:1:
   395  	DPCRE2_DOTALL                                    = 0x00000020           // pcre2.h:124:1:
   396  	DPCRE2_DUPCAPUSED                                = 0x00200000           // pcre2_internal.h:529:1:
   397  	DPCRE2_DUPNAMES                                  = 0x00000040           // pcre2.h:125:1:
   398  	DPCRE2_ENDANCHORED                               = 0x20000000           // pcre2.h:107:1:
   399  	DPCRE2_ERROR_ALPHA_ASSERTION_UNKNOWN             = 195                  // pcre2.h:311:1:
   400  	DPCRE2_ERROR_BACKSLASH_C_CALLER_DISABLED         = 183                  // pcre2.h:299:1:
   401  	DPCRE2_ERROR_BACKSLASH_C_LIBRARY_DISABLED        = 185                  // pcre2.h:301:1:
   402  	DPCRE2_ERROR_BACKSLASH_C_SYNTAX                  = 168                  // pcre2.h:284:1:
   403  	DPCRE2_ERROR_BACKSLASH_G_SYNTAX                  = 157                  // pcre2.h:272:1:
   404  	DPCRE2_ERROR_BACKSLASH_K_IN_LOOKAROUND           = 199                  // pcre2.h:315:1:
   405  	DPCRE2_ERROR_BACKSLASH_K_SYNTAX                  = 169                  // pcre2.h:285:1:
   406  	DPCRE2_ERROR_BACKSLASH_N_IN_CLASS                = 171                  // pcre2.h:287:1:
   407  	DPCRE2_ERROR_BACKSLASH_O_MISSING_BRACE           = 155                  // pcre2.h:270:1:
   408  	DPCRE2_ERROR_BACKSLASH_U_CODE_POINT_TOO_BIG      = 177                  // pcre2.h:293:1:
   409  	DPCRE2_ERROR_BADDATA                             = -29                  // pcre2.h:363:1:
   410  	DPCRE2_ERROR_BADMAGIC                            = -31                  // pcre2.h:365:1:
   411  	DPCRE2_ERROR_BADMODE                             = -32                  // pcre2.h:366:1:
   412  	DPCRE2_ERROR_BADOFFSET                           = -33                  // pcre2.h:367:1:
   413  	DPCRE2_ERROR_BADOFFSETLIMIT                      = -56                  // pcre2.h:391:1:
   414  	DPCRE2_ERROR_BADOPTION                           = -34                  // pcre2.h:368:1:
   415  	DPCRE2_ERROR_BADREPESCAPE                        = -57                  // pcre2.h:392:1:
   416  	DPCRE2_ERROR_BADREPLACEMENT                      = -35                  // pcre2.h:369:1:
   417  	DPCRE2_ERROR_BADSERIALIZEDDATA                   = -62                  // pcre2.h:397:1:
   418  	DPCRE2_ERROR_BADSUBSPATTERN                      = -60                  // pcre2.h:395:1:
   419  	DPCRE2_ERROR_BADSUBSTITUTION                     = -59                  // pcre2.h:394:1:
   420  	DPCRE2_ERROR_BADUTFOFFSET                        = -36                  // pcre2.h:370:1:
   421  	DPCRE2_ERROR_BAD_LITERAL_OPTIONS                 = 192                  // pcre2.h:308:1:
   422  	DPCRE2_ERROR_BAD_OPTIONS                         = 117                  // pcre2.h:232:1:
   423  	DPCRE2_ERROR_BAD_RELATIVE_REFERENCE              = 129                  // pcre2.h:244:1:
   424  	DPCRE2_ERROR_BAD_SUBPATTERN_REFERENCE            = 115                  // pcre2.h:230:1:
   425  	DPCRE2_ERROR_CALLOUT                             = -37                  // pcre2.h:371:1:
   426  	DPCRE2_ERROR_CALLOUT_BAD_STRING_DELIMITER        = 182                  // pcre2.h:298:1:
   427  	DPCRE2_ERROR_CALLOUT_NO_STRING_DELIMITER         = 181                  // pcre2.h:297:1:
   428  	DPCRE2_ERROR_CALLOUT_NUMBER_TOO_BIG              = 138                  // pcre2.h:253:1:
   429  	DPCRE2_ERROR_CALLOUT_STRING_TOO_LONG             = 172                  // pcre2.h:288:1:
   430  	DPCRE2_ERROR_CLASS_INVALID_RANGE                 = 150                  // pcre2.h:265:1:
   431  	DPCRE2_ERROR_CLASS_RANGE_ORDER                   = 108                  // pcre2.h:223:1:
   432  	DPCRE2_ERROR_CODE_POINT_TOO_BIG                  = 134                  // pcre2.h:249:1:
   433  	DPCRE2_ERROR_CONDITION_ASSERTION_EXPECTED        = 128                  // pcre2.h:243:1:
   434  	DPCRE2_ERROR_CONDITION_ATOMIC_ASSERTION_EXPECTED = 198                  // pcre2.h:314:1:
   435  	DPCRE2_ERROR_CONVERT_SYNTAX                      = -64                  // pcre2.h:399:1:
   436  	DPCRE2_ERROR_DEFINE_TOO_MANY_BRANCHES            = 154                  // pcre2.h:269:1:
   437  	DPCRE2_ERROR_DEPTHLIMIT                          = -53                  // pcre2.h:387:1:
   438  	DPCRE2_ERROR_DFA_BADRESTART                      = -38                  // pcre2.h:372:1:
   439  	DPCRE2_ERROR_DFA_RECURSE                         = -39                  // pcre2.h:373:1:
   440  	DPCRE2_ERROR_DFA_UCOND                           = -40                  // pcre2.h:374:1:
   441  	DPCRE2_ERROR_DFA_UFUNC                           = -41                  // pcre2.h:375:1:
   442  	DPCRE2_ERROR_DFA_UINVALID_UTF                    = -66                  // pcre2.h:401:1:
   443  	DPCRE2_ERROR_DFA_UITEM                           = -42                  // pcre2.h:376:1:
   444  	DPCRE2_ERROR_DFA_WSSIZE                          = -43                  // pcre2.h:377:1:
   445  	DPCRE2_ERROR_DUPLICATE_SUBPATTERN_NAME           = 143                  // pcre2.h:258:1:
   446  	DPCRE2_ERROR_END_BACKSLASH                       = 101                  // pcre2.h:216:1:
   447  	DPCRE2_ERROR_END_BACKSLASH_C                     = 102                  // pcre2.h:217:1:
   448  	DPCRE2_ERROR_ESCAPE_INVALID_IN_CLASS             = 107                  // pcre2.h:222:1:
   449  	DPCRE2_ERROR_ESCAPE_INVALID_IN_VERB              = 140                  // pcre2.h:255:1:
   450  	DPCRE2_ERROR_HEAPLIMIT                           = -63                  // pcre2.h:398:1:
   451  	DPCRE2_ERROR_HEAP_FAILED                         = 121                  // pcre2.h:236:1:
   452  	DPCRE2_ERROR_INTERNAL                            = -44                  // pcre2.h:378:1:
   453  	DPCRE2_ERROR_INTERNAL_BAD_CODE                   = 189                  // pcre2.h:305:1:
   454  	DPCRE2_ERROR_INTERNAL_BAD_CODE_AUTO_POSSESS      = 180                  // pcre2.h:296:1:
   455  	DPCRE2_ERROR_INTERNAL_BAD_CODE_IN_SKIP           = 190                  // pcre2.h:306:1:
   456  	DPCRE2_ERROR_INTERNAL_BAD_CODE_LOOKBEHINDS       = 170                  // pcre2.h:286:1:
   457  	DPCRE2_ERROR_INTERNAL_CODE_OVERFLOW              = 123                  // pcre2.h:238:1:
   458  	DPCRE2_ERROR_INTERNAL_DUPMATCH                   = -65                  // pcre2.h:400:1:
   459  	DPCRE2_ERROR_INTERNAL_MISSING_SUBPATTERN         = 153                  // pcre2.h:268:1:
   460  	DPCRE2_ERROR_INTERNAL_OVERRAN_WORKSPACE          = 152                  // pcre2.h:267:1:
   461  	DPCRE2_ERROR_INTERNAL_PARSED_OVERFLOW            = 163                  // pcre2.h:279:1:
   462  	DPCRE2_ERROR_INTERNAL_STUDY_ERROR                = 131                  // pcre2.h:246:1:
   463  	DPCRE2_ERROR_INTERNAL_UNEXPECTED_REPEAT          = 110                  // pcre2.h:225:1:
   464  	DPCRE2_ERROR_INTERNAL_UNKNOWN_NEWLINE            = 156                  // pcre2.h:271:1:
   465  	DPCRE2_ERROR_INVALID_AFTER_PARENS_QUERY          = 111                  // pcre2.h:226:1:
   466  	DPCRE2_ERROR_INVALID_HEXADECIMAL                 = 167                  // pcre2.h:283:1:
   467  	DPCRE2_ERROR_INVALID_HYPHEN_IN_OPTIONS           = 194                  // pcre2.h:310:1:
   468  	DPCRE2_ERROR_INVALID_OCTAL                       = 164                  // pcre2.h:280:1:
   469  	DPCRE2_ERROR_INVALID_SUBPATTERN_NAME             = 144                  // pcre2.h:259:1:
   470  	DPCRE2_ERROR_JIT_BADOPTION                       = -45                  // pcre2.h:379:1:
   471  	DPCRE2_ERROR_JIT_STACKLIMIT                      = -46                  // pcre2.h:380:1:
   472  	DPCRE2_ERROR_LOOKBEHIND_INVALID_BACKSLASH_C      = 136                  // pcre2.h:251:1:
   473  	DPCRE2_ERROR_LOOKBEHIND_NOT_FIXED_LENGTH         = 125                  // pcre2.h:240:1:
   474  	DPCRE2_ERROR_LOOKBEHIND_TOO_COMPLICATED          = 135                  // pcre2.h:250:1:
   475  	DPCRE2_ERROR_LOOKBEHIND_TOO_LONG                 = 187                  // pcre2.h:303:1:
   476  	DPCRE2_ERROR_MALFORMED_UNICODE_PROPERTY          = 146                  // pcre2.h:261:1:
   477  	DPCRE2_ERROR_MARK_MISSING_ARGUMENT               = 166                  // pcre2.h:282:1:
   478  	DPCRE2_ERROR_MATCHLIMIT                          = -47                  // pcre2.h:381:1:
   479  	DPCRE2_ERROR_MISSING_CALLOUT_CLOSING             = 139                  // pcre2.h:254:1:
   480  	DPCRE2_ERROR_MISSING_CLOSING_PARENTHESIS         = 114                  // pcre2.h:229:1:
   481  	DPCRE2_ERROR_MISSING_COMMENT_CLOSING             = 118                  // pcre2.h:233:1:
   482  	DPCRE2_ERROR_MISSING_CONDITION_CLOSING           = 124                  // pcre2.h:239:1:
   483  	DPCRE2_ERROR_MISSING_NAME_TERMINATOR             = 142                  // pcre2.h:257:1:
   484  	DPCRE2_ERROR_MISSING_OCTAL_OR_HEX_DIGITS         = 178                  // pcre2.h:294:1:
   485  	DPCRE2_ERROR_MISSING_SQUARE_BRACKET              = 106                  // pcre2.h:221:1:
   486  	DPCRE2_ERROR_MIXEDTABLES                         = -30                  // pcre2.h:364:1:
   487  	DPCRE2_ERROR_NOMATCH                             = -1                   // pcre2.h:320:1:
   488  	DPCRE2_ERROR_NOMEMORY                            = -48                  // pcre2.h:382:1:
   489  	DPCRE2_ERROR_NOSUBSTRING                         = -49                  // pcre2.h:383:1:
   490  	DPCRE2_ERROR_NOUNIQUESUBSTRING                   = -50                  // pcre2.h:384:1:
   491  	DPCRE2_ERROR_NO_SURROGATES_IN_UTF16              = 191                  // pcre2.h:307:1:
   492  	DPCRE2_ERROR_NULL                                = -51                  // pcre2.h:385:1:
   493  	DPCRE2_ERROR_NULL_PATTERN                        = 116                  // pcre2.h:231:1:
   494  	DPCRE2_ERROR_OCTAL_BYTE_TOO_BIG                  = 151                  // pcre2.h:266:1:
   495  	DPCRE2_ERROR_PARENS_QUERY_R_MISSING_CLOSING      = 158                  // pcre2.h:273:1:
   496  	DPCRE2_ERROR_PARENTHESES_NEST_TOO_DEEP           = 119                  // pcre2.h:234:1:
   497  	DPCRE2_ERROR_PARENTHESES_STACK_CHECK             = 133                  // pcre2.h:248:1:
   498  	DPCRE2_ERROR_PARTIAL                             = -2                   // pcre2.h:321:1:
   499  	DPCRE2_ERROR_PATTERN_STRING_TOO_LONG             = 188                  // pcre2.h:304:1:
   500  	DPCRE2_ERROR_PATTERN_TOO_COMPLICATED             = 186                  // pcre2.h:302:1:
   501  	DPCRE2_ERROR_PATTERN_TOO_LARGE                   = 120                  // pcre2.h:235:1:
   502  	DPCRE2_ERROR_POSIX_CLASS_NOT_IN_CLASS            = 112                  // pcre2.h:227:1:
   503  	DPCRE2_ERROR_POSIX_NO_SUPPORT_COLLATING          = 113                  // pcre2.h:228:1:
   504  	DPCRE2_ERROR_QUANTIFIER_INVALID                  = 109                  // pcre2.h:224:1:
   505  	DPCRE2_ERROR_QUANTIFIER_OUT_OF_ORDER             = 104                  // pcre2.h:219:1:
   506  	DPCRE2_ERROR_QUANTIFIER_TOO_BIG                  = 105                  // pcre2.h:220:1:
   507  	DPCRE2_ERROR_QUERY_BARJX_NEST_TOO_DEEP           = 184                  // pcre2.h:300:1:
   508  	DPCRE2_ERROR_RECURSELOOP                         = -52                  // pcre2.h:386:1:
   509  	DPCRE2_ERROR_RECURSIONLIMIT                      = -53                  // pcre2.h:388:1:
   510  	DPCRE2_ERROR_REPMISSINGBRACE                     = -58                  // pcre2.h:393:1:
   511  	DPCRE2_ERROR_SCRIPT_RUN_NOT_AVAILABLE            = 196                  // pcre2.h:312:1:
   512  	DPCRE2_ERROR_SUBPATTERN_NAMES_MISMATCH           = 165                  // pcre2.h:281:1:
   513  	DPCRE2_ERROR_SUBPATTERN_NAME_EXPECTED            = 162                  // pcre2.h:278:1:
   514  	DPCRE2_ERROR_SUBPATTERN_NAME_TOO_LONG            = 148                  // pcre2.h:263:1:
   515  	DPCRE2_ERROR_SUBPATTERN_NUMBER_TOO_BIG           = 161                  // pcre2.h:277:1:
   516  	DPCRE2_ERROR_SUPPORTED_ONLY_IN_UNICODE           = 193                  // pcre2.h:309:1:
   517  	DPCRE2_ERROR_TOOMANYREPLACE                      = -61                  // pcre2.h:396:1:
   518  	DPCRE2_ERROR_TOO_MANY_CAPTURES                   = 197                  // pcre2.h:313:1:
   519  	DPCRE2_ERROR_TOO_MANY_CONDITION_BRANCHES         = 127                  // pcre2.h:242:1:
   520  	DPCRE2_ERROR_TOO_MANY_NAMED_SUBPATTERNS          = 149                  // pcre2.h:264:1:
   521  	DPCRE2_ERROR_UCP_IS_DISABLED                     = 175                  // pcre2.h:291:1:
   522  	DPCRE2_ERROR_UNAVAILABLE                         = -54                  // pcre2.h:389:1:
   523  	DPCRE2_ERROR_UNICODE_DISALLOWED_CODE_POINT       = 173                  // pcre2.h:289:1:
   524  	DPCRE2_ERROR_UNICODE_NOT_SUPPORTED               = 132                  // pcre2.h:247:1:
   525  	DPCRE2_ERROR_UNICODE_PROPERTIES_UNAVAILABLE      = 145                  // pcre2.h:260:1:
   526  	DPCRE2_ERROR_UNKNOWN_ESCAPE                      = 103                  // pcre2.h:218:1:
   527  	DPCRE2_ERROR_UNKNOWN_POSIX_CLASS                 = 130                  // pcre2.h:245:1:
   528  	DPCRE2_ERROR_UNKNOWN_UNICODE_PROPERTY            = 147                  // pcre2.h:262:1:
   529  	DPCRE2_ERROR_UNMATCHED_CLOSING_PARENTHESIS       = 122                  // pcre2.h:237:1:
   530  	DPCRE2_ERROR_UNRECOGNIZED_AFTER_QUERY_P          = 141                  // pcre2.h:256:1:
   531  	DPCRE2_ERROR_UNSET                               = -55                  // pcre2.h:390:1:
   532  	DPCRE2_ERROR_UNSUPPORTED_ESCAPE_SEQUENCE         = 137                  // pcre2.h:252:1:
   533  	DPCRE2_ERROR_UTF16_ERR1                          = -24                  // pcre2.h:349:1:
   534  	DPCRE2_ERROR_UTF16_ERR2                          = -25                  // pcre2.h:350:1:
   535  	DPCRE2_ERROR_UTF16_ERR3                          = -26                  // pcre2.h:351:1:
   536  	DPCRE2_ERROR_UTF32_ERR1                          = -27                  // pcre2.h:355:1:
   537  	DPCRE2_ERROR_UTF32_ERR2                          = -28                  // pcre2.h:356:1:
   538  	DPCRE2_ERROR_UTF8_ERR1                           = -3                   // pcre2.h:325:1:
   539  	DPCRE2_ERROR_UTF8_ERR10                          = -12                  // pcre2.h:334:1:
   540  	DPCRE2_ERROR_UTF8_ERR11                          = -13                  // pcre2.h:335:1:
   541  	DPCRE2_ERROR_UTF8_ERR12                          = -14                  // pcre2.h:336:1:
   542  	DPCRE2_ERROR_UTF8_ERR13                          = -15                  // pcre2.h:337:1:
   543  	DPCRE2_ERROR_UTF8_ERR14                          = -16                  // pcre2.h:338:1:
   544  	DPCRE2_ERROR_UTF8_ERR15                          = -17                  // pcre2.h:339:1:
   545  	DPCRE2_ERROR_UTF8_ERR16                          = -18                  // pcre2.h:340:1:
   546  	DPCRE2_ERROR_UTF8_ERR17                          = -19                  // pcre2.h:341:1:
   547  	DPCRE2_ERROR_UTF8_ERR18                          = -20                  // pcre2.h:342:1:
   548  	DPCRE2_ERROR_UTF8_ERR19                          = -21                  // pcre2.h:343:1:
   549  	DPCRE2_ERROR_UTF8_ERR2                           = -4                   // pcre2.h:326:1:
   550  	DPCRE2_ERROR_UTF8_ERR20                          = -22                  // pcre2.h:344:1:
   551  	DPCRE2_ERROR_UTF8_ERR21                          = -23                  // pcre2.h:345:1:
   552  	DPCRE2_ERROR_UTF8_ERR3                           = -5                   // pcre2.h:327:1:
   553  	DPCRE2_ERROR_UTF8_ERR4                           = -6                   // pcre2.h:328:1:
   554  	DPCRE2_ERROR_UTF8_ERR5                           = -7                   // pcre2.h:329:1:
   555  	DPCRE2_ERROR_UTF8_ERR6                           = -8                   // pcre2.h:330:1:
   556  	DPCRE2_ERROR_UTF8_ERR7                           = -9                   // pcre2.h:331:1:
   557  	DPCRE2_ERROR_UTF8_ERR8                           = -10                  // pcre2.h:332:1:
   558  	DPCRE2_ERROR_UTF8_ERR9                           = -11                  // pcre2.h:333:1:
   559  	DPCRE2_ERROR_UTF_IS_DISABLED                     = 174                  // pcre2.h:290:1:
   560  	DPCRE2_ERROR_VERB_ARGUMENT_NOT_ALLOWED           = 159                  // pcre2.h:275:1:
   561  	DPCRE2_ERROR_VERB_NAME_TOO_LONG                  = 176                  // pcre2.h:292:1:
   562  	DPCRE2_ERROR_VERB_UNKNOWN                        = 160                  // pcre2.h:276:1:
   563  	DPCRE2_ERROR_VERSION_CONDITION_SYNTAX            = 179                  // pcre2.h:295:1:
   564  	DPCRE2_ERROR_ZERO_RELATIVE_REFERENCE             = 126                  // pcre2.h:241:1:
   565  	DPCRE2_EXTENDED                                  = 0x00000080           // pcre2.h:126:1:
   566  	DPCRE2_EXTENDED_MORE                             = 0x01000000           // pcre2.h:143:1:
   567  	DPCRE2_EXTRA_ALLOW_LOOKAROUND_BSK                = 0x00000040           // pcre2.h:155:1:
   568  	DPCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES             = 0x00000001           // pcre2.h:149:1:
   569  	DPCRE2_EXTRA_ALT_BSUX                            = 0x00000020           // pcre2.h:154:1:
   570  	DPCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL               = 0x00000002           // pcre2.h:150:1:
   571  	DPCRE2_EXTRA_ESCAPED_CR_IS_LF                    = 0x00000010           // pcre2.h:153:1:
   572  	DPCRE2_EXTRA_MATCH_LINE                          = 0x00000008           // pcre2.h:152:1:
   573  	DPCRE2_EXTRA_MATCH_WORD                          = 0x00000004           // pcre2.h:151:1:
   574  	DPCRE2_FIRSTCASELESS                             = 0x00000020           // pcre2_internal.h:513:1:
   575  	DPCRE2_FIRSTLINE                                 = 0x00000100           // pcre2.h:127:1:
   576  	DPCRE2_FIRSTMAPSET                               = 0x00000040           // pcre2_internal.h:514:1:
   577  	DPCRE2_FIRSTSET                                  = 0x00000010           // pcre2_internal.h:512:1:
   578  	DPCRE2_HASACCEPT                                 = 0x00800000           // pcre2_internal.h:531:1:
   579  	DPCRE2_HASBKC                                    = 0x00400000           // pcre2_internal.h:530:1:
   580  	DPCRE2_HASBKPORX                                 = 0x00100000           // pcre2_internal.h:528:1:
   581  	DPCRE2_HASCRORLF                                 = 0x00000800           // pcre2_internal.h:519:1:
   582  	DPCRE2_HASTHEN                                   = 0x00001000           // pcre2_internal.h:520:1:
   583  	DPCRE2_H_IDEMPOTENT_GUARD                        = 0                    // pcre2.h:40:1:
   584  	DPCRE2_INFO_ALLOPTIONS                           = 0                    // pcre2.h:406:1:
   585  	DPCRE2_INFO_ARGOPTIONS                           = 1                    // pcre2.h:407:1:
   586  	DPCRE2_INFO_BACKREFMAX                           = 2                    // pcre2.h:408:1:
   587  	DPCRE2_INFO_BSR                                  = 3                    // pcre2.h:409:1:
   588  	DPCRE2_INFO_CAPTURECOUNT                         = 4                    // pcre2.h:410:1:
   589  	DPCRE2_INFO_DEPTHLIMIT                           = 21                   // pcre2.h:427:1:
   590  	DPCRE2_INFO_EXTRAOPTIONS                         = 26                   // pcre2.h:433:1:
   591  	DPCRE2_INFO_FIRSTBITMAP                          = 7                    // pcre2.h:413:1:
   592  	DPCRE2_INFO_FIRSTCODETYPE                        = 6                    // pcre2.h:412:1:
   593  	DPCRE2_INFO_FIRSTCODEUNIT                        = 5                    // pcre2.h:411:1:
   594  	DPCRE2_INFO_FRAMESIZE                            = 24                   // pcre2.h:431:1:
   595  	DPCRE2_INFO_HASBACKSLASHC                        = 23                   // pcre2.h:430:1:
   596  	DPCRE2_INFO_HASCRORLF                            = 8                    // pcre2.h:414:1:
   597  	DPCRE2_INFO_HEAPLIMIT                            = 25                   // pcre2.h:432:1:
   598  	DPCRE2_INFO_JCHANGED                             = 9                    // pcre2.h:415:1:
   599  	DPCRE2_INFO_JITSIZE                              = 10                   // pcre2.h:416:1:
   600  	DPCRE2_INFO_LASTCODETYPE                         = 12                   // pcre2.h:418:1:
   601  	DPCRE2_INFO_LASTCODEUNIT                         = 11                   // pcre2.h:417:1:
   602  	DPCRE2_INFO_MATCHEMPTY                           = 13                   // pcre2.h:419:1:
   603  	DPCRE2_INFO_MATCHLIMIT                           = 14                   // pcre2.h:420:1:
   604  	DPCRE2_INFO_MAXLOOKBEHIND                        = 15                   // pcre2.h:421:1:
   605  	DPCRE2_INFO_MINLENGTH                            = 16                   // pcre2.h:422:1:
   606  	DPCRE2_INFO_NAMECOUNT                            = 17                   // pcre2.h:423:1:
   607  	DPCRE2_INFO_NAMEENTRYSIZE                        = 18                   // pcre2.h:424:1:
   608  	DPCRE2_INFO_NAMETABLE                            = 19                   // pcre2.h:425:1:
   609  	DPCRE2_INFO_NEWLINE                              = 20                   // pcre2.h:426:1:
   610  	DPCRE2_INFO_RECURSIONLIMIT                       = 21                   // pcre2.h:428:1:
   611  	DPCRE2_INFO_SIZE                                 = 22                   // pcre2.h:429:1:
   612  	DPCRE2_INTERNAL_H_IDEMPOTENT_GUARD               = 0                    // pcre2_internal.h:42:1:
   613  	DPCRE2_JCHANGED                                  = 0x00000400           // pcre2_internal.h:518:1:
   614  	DPCRE2_JIT_COMPLETE                              = 0x00000001           // pcre2.h:159:1:
   615  	DPCRE2_JIT_INVALID_UTF                           = 0x00000100           // pcre2.h:162:1:
   616  	DPCRE2_JIT_PARTIAL_HARD                          = 0x00000004           // pcre2.h:161:1:
   617  	DPCRE2_JIT_PARTIAL_SOFT                          = 0x00000002           // pcre2.h:160:1:
   618  	DPCRE2_LASTCASELESS                              = 0x00000100           // pcre2_internal.h:516:1:
   619  	DPCRE2_LASTSET                                   = 0x00000080           // pcre2_internal.h:515:1:
   620  	DPCRE2_LITERAL                                   = 0x02000000           // pcre2.h:144:1:
   621  	DPCRE2_MAJOR                                     = 10                   // pcre2.h:44:1:
   622  	DPCRE2_MATCH_EMPTY                               = 0x00002000           // pcre2_internal.h:521:1:
   623  	DPCRE2_MATCH_INVALID_UTF                         = 0x04000000           // pcre2.h:145:1:
   624  	DPCRE2_MATCH_UNSET_BACKREF                       = 0x00000200           // pcre2.h:128:1:
   625  	DPCRE2_MD_COPIED_SUBJECT                         = 0x01                 // pcre2_internal.h:543:1:
   626  	DPCRE2_MINOR                                     = 40                   // pcre2.h:45:1:
   627  	DPCRE2_MODE16                                    = 0x00000002           // pcre2_internal.h:510:1:
   628  	DPCRE2_MODE32                                    = 0x00000004           // pcre2_internal.h:511:1:
   629  	DPCRE2_MODE8                                     = 0x00000001           // pcre2_internal.h:509:1:
   630  	DPCRE2_MODE_MASK                                 = 7                    // pcre2_internal.h:533:1:
   631  	DPCRE2_MULTILINE                                 = 0x00000400           // pcre2.h:129:1:
   632  	DPCRE2_NEVER_BACKSLASH_C                         = 0x00100000           // pcre2.h:139:1:
   633  	DPCRE2_NEVER_UCP                                 = 0x00000800           // pcre2.h:130:1:
   634  	DPCRE2_NEVER_UTF                                 = 0x00001000           // pcre2.h:131:1:
   635  	DPCRE2_NEWLINE_ANY                               = 4                    // pcre2.h:206:1:
   636  	DPCRE2_NEWLINE_ANYCRLF                           = 5                    // pcre2.h:207:1:
   637  	DPCRE2_NEWLINE_CR                                = 1                    // pcre2.h:203:1:
   638  	DPCRE2_NEWLINE_CRLF                              = 3                    // pcre2.h:205:1:
   639  	DPCRE2_NEWLINE_LF                                = 2                    // pcre2.h:204:1:
   640  	DPCRE2_NEWLINE_NUL                               = 6                    // pcre2.h:208:1:
   641  	DPCRE2_NE_ATST_SET                               = 0x00020000           // pcre2_internal.h:525:1:
   642  	DPCRE2_NL_SET                                    = 0x00008000           // pcre2_internal.h:523:1:
   643  	DPCRE2_NOJIT                                     = 0x00080000           // pcre2_internal.h:527:1:
   644  	DPCRE2_NOTBOL                                    = 0x00000001           // pcre2.h:170:1:
   645  	DPCRE2_NOTEMPTY                                  = 0x00000004           // pcre2.h:172:1:
   646  	DPCRE2_NOTEMPTY_ATSTART                          = 0x00000008           // pcre2.h:173:1:
   647  	DPCRE2_NOTEMPTY_SET                              = 0x00010000           // pcre2_internal.h:524:1:
   648  	DPCRE2_NOTEOL                                    = 0x00000002           // pcre2.h:171:1:
   649  	DPCRE2_NO_AUTO_CAPTURE                           = 0x00002000           // pcre2.h:132:1:
   650  	DPCRE2_NO_AUTO_POSSESS                           = 0x00004000           // pcre2.h:133:1:
   651  	DPCRE2_NO_DOTSTAR_ANCHOR                         = 0x00008000           // pcre2.h:134:1:
   652  	DPCRE2_NO_JIT                                    = 0x00002000           // pcre2.h:183:1:
   653  	DPCRE2_NO_START_OPTIMIZE                         = 0x00010000           // pcre2.h:135:1:
   654  	DPCRE2_NO_UTF_CHECK                              = 0x40000000           // pcre2.h:106:1:
   655  	DPCRE2_PARTIAL_HARD                              = 0x00000020           // pcre2.h:175:1:
   656  	DPCRE2_PARTIAL_SOFT                              = 0x00000010           // pcre2.h:174:1:
   657  	DPCRE2_PRERELEASE                                = 0                    // pcre2.h:46:1:
   658  	DPCRE2_SIZE_MAX                                  = 18446744073709551615 // pcre2.h:472:1:
   659  	DPCRE2_STARTLINE                                 = 0x00000200           // pcre2_internal.h:517:1:
   660  	DPCRE2_SUBSTITUTE_EXTENDED                       = 0x00000200           // pcre2.h:179:1:
   661  	DPCRE2_SUBSTITUTE_GLOBAL                         = 0x00000100           // pcre2.h:178:1:
   662  	DPCRE2_SUBSTITUTE_LITERAL                        = 0x00008000           // pcre2.h:185:1:
   663  	DPCRE2_SUBSTITUTE_MATCHED                        = 0x00010000           // pcre2.h:186:1:
   664  	DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH                = 0x00001000           // pcre2.h:182:1:
   665  	DPCRE2_SUBSTITUTE_REPLACEMENT_ONLY               = 0x00020000           // pcre2.h:187:1:
   666  	DPCRE2_SUBSTITUTE_UNKNOWN_UNSET                  = 0x00000800           // pcre2.h:181:1:
   667  	DPCRE2_SUBSTITUTE_UNSET_EMPTY                    = 0x00000400           // pcre2.h:180:1:
   668  	DPCRE2_UCP                                       = 0x00020000           // pcre2.h:136:1:
   669  	DPCRE2_UCP_H_IDEMPOTENT_GUARD                    = 0                    // pcre2_ucp.h:46:1:
   670  	DPCRE2_UNGREEDY                                  = 0x00040000           // pcre2.h:137:1:
   671  	DPCRE2_USE_OFFSET_LIMIT                          = 0x00800000           // pcre2.h:142:1:
   672  	DPCRE2_UTF                                       = 0x00080000           // pcre2.h:138:1:
   673  	DPDP_ENDIAN                                      = 3412                 // endian.h:97:1:
   674  	DPOLL_ERR                                        = 4                    // signal.h:264:1:
   675  	DPOLL_HUP                                        = 6                    // signal.h:266:1:
   676  	DPOLL_IN                                         = 1                    // signal.h:261:1:
   677  	DPOLL_MSG                                        = 3                    // signal.h:263:1:
   678  	DPOLL_OUT                                        = 2                    // signal.h:262:1:
   679  	DPOLL_PRI                                        = 5                    // signal.h:265:1:
   680  	DPRIO_DARWIN_BG                                  = 0x1000               // resource.h:120:1:
   681  	DPRIO_DARWIN_NONUI                               = 0x1001               // resource.h:126:1:
   682  	DPRIO_DARWIN_PROCESS                             = 4                    // resource.h:106:1:
   683  	DPRIO_DARWIN_THREAD                              = 3                    // resource.h:105:1:
   684  	DPRIO_MAX                                        = 20                   // resource.h:113:1:
   685  	DPRIO_MIN                                        = -20                  // resource.h:112:1:
   686  	DPRIO_PGRP                                       = 1                    // resource.h:101:1:
   687  	DPRIO_PROCESS                                    = 0                    // resource.h:100:1:
   688  	DPRIO_USER                                       = 2                    // resource.h:102:1:
   689  	DPRIX16                                          = "hX"                 // inttypes.h:52:1:
   690  	DPRIX32                                          = "X"                  // inttypes.h:59:1:
   691  	DPRIXPTR                                         = "lX"                 // inttypes.h:130:1:
   692  	DPRId16                                          = "hd"                 // inttypes.h:47:1:
   693  	DPRId32                                          = "d"                  // inttypes.h:54:1:
   694  	DPRIdPTR                                         = "ld"                 // inttypes.h:125:1:
   695  	DPRIi16                                          = "hi"                 // inttypes.h:48:1:
   696  	DPRIi32                                          = "i"                  // inttypes.h:55:1:
   697  	DPRIiPTR                                         = "li"                 // inttypes.h:126:1:
   698  	DPRIo16                                          = "ho"                 // inttypes.h:49:1:
   699  	DPRIo32                                          = "o"                  // inttypes.h:56:1:
   700  	DPRIoPTR                                         = "lo"                 // inttypes.h:127:1:
   701  	DPRIu16                                          = "hu"                 // inttypes.h:50:1:
   702  	DPRIu32                                          = "u"                  // inttypes.h:57:1:
   703  	DPRIuPTR                                         = "lu"                 // inttypes.h:128:1:
   704  	DPRIx16                                          = "hx"                 // inttypes.h:51:1:
   705  	DPRIx32                                          = "x"                  // inttypes.h:58:1:
   706  	DPRIxPTR                                         = "lx"                 // inttypes.h:129:1:
   707  	DPTRDIFF_MAX                                     = 9223372036854775807  // stdint.h:652:1:
   708  	DPTRDIFF_MIN                                     = -9223372036854775808 // stdint.h:651:1:
   709  	DPT_ALNUM                                        = 6                    // pcre2_internal.h:1282:1:
   710  	DPT_ANY                                          = 0                    // pcre2_internal.h:1276:1:
   711  	DPT_BIDICL                                       = 12                   // pcre2_internal.h:1288:1:
   712  	DPT_BOOL                                         = 13                   // pcre2_internal.h:1289:1:
   713  	DPT_CLIST                                        = 10                   // pcre2_internal.h:1286:1:
   714  	DPT_GC                                           = 2                    // pcre2_internal.h:1278:1:
   715  	DPT_LAMP                                         = 1                    // pcre2_internal.h:1277:1:
   716  	DPT_NOTSCRIPT                                    = 255                  // pcre2_internal.h:1305:1:
   717  	DPT_PC                                           = 3                    // pcre2_internal.h:1279:1:
   718  	DPT_PXGRAPH                                      = 14                   // pcre2_internal.h:1298:1:
   719  	DPT_PXPRINT                                      = 15                   // pcre2_internal.h:1299:1:
   720  	DPT_PXPUNCT                                      = 16                   // pcre2_internal.h:1300:1:
   721  	DPT_PXSPACE                                      = 8                    // pcre2_internal.h:1284:1:
   722  	DPT_SC                                           = 4                    // pcre2_internal.h:1280:1:
   723  	DPT_SCX                                          = 5                    // pcre2_internal.h:1281:1:
   724  	DPT_SPACE                                        = 7                    // pcre2_internal.h:1283:1:
   725  	DPT_TABSIZE                                      = 14                   // pcre2_internal.h:1290:1:
   726  	DPT_UCNC                                         = 11                   // pcre2_internal.h:1287:1:
   727  	DPT_WORD                                         = 9                    // pcre2_internal.h:1285:1:
   728  	DP_tmpdir                                        = "/var/tmp/"          // stdio.h:112:1:
   729  	DRAND_MAX                                        = 0x7fffffff           // stdlib.h:105:1:
   730  	DRENAME_EXCL                                     = 0x00000004           // stdio.h:45:1:
   731  	DRENAME_SECLUDE                                  = 0x00000001           // stdio.h:43:1:
   732  	DRENAME_SWAP                                     = 0x00000002           // stdio.h:44:1:
   733  	DREQ_CU_MAX                                      = 5000                 // pcre2_internal.h:555:1:
   734  	DRLIMIT_AS                                       = 5                    // resource.h:395:1:
   735  	DRLIMIT_CORE                                     = 4                    // resource.h:394:1:
   736  	DRLIMIT_CPU                                      = 0                    // resource.h:390:1:
   737  	DRLIMIT_CPU_USAGE_MONITOR                        = 0x2                  // resource.h:423:1:
   738  	DRLIMIT_DATA                                     = 2                    // resource.h:392:1:
   739  	DRLIMIT_FOOTPRINT_INTERVAL                       = 0x4                  // resource.h:425:1:
   740  	DRLIMIT_FSIZE                                    = 1                    // resource.h:391:1:
   741  	DRLIMIT_MEMLOCK                                  = 6                    // resource.h:398:1:
   742  	DRLIMIT_NOFILE                                   = 8                    // resource.h:401:1:
   743  	DRLIMIT_NPROC                                    = 7                    // resource.h:399:1:
   744  	DRLIMIT_RSS                                      = 5                    // resource.h:397:1:
   745  	DRLIMIT_STACK                                    = 3                    // resource.h:393:1:
   746  	DRLIMIT_THREAD_CPULIMITS                         = 0x3                  // resource.h:424:1:
   747  	DRLIMIT_WAKEUPS_MONITOR                          = 0x1                  // resource.h:422:1:
   748  	DRLIM_NLIMITS                                    = 9                    // resource.h:403:1:
   749  	DRREF_ANY                                        = 0xffff               // pcre2_internal.h:1783:1:
   750  	DRSIZE_MAX                                       = 9223372036854775807  // stdint.h:658:1:
   751  	DRUSAGE_CHILDREN                                 = -1                   // resource.h:141:1:
   752  	DRUSAGE_INFO_CURRENT                             = 5                    // resource.h:192:1:
   753  	DRUSAGE_INFO_V0                                  = 0                    // resource.h:186:1:
   754  	DRUSAGE_INFO_V1                                  = 1                    // resource.h:187:1:
   755  	DRUSAGE_INFO_V2                                  = 2                    // resource.h:188:1:
   756  	DRUSAGE_INFO_V3                                  = 3                    // resource.h:189:1:
   757  	DRUSAGE_INFO_V4                                  = 4                    // resource.h:190:1:
   758  	DRUSAGE_INFO_V5                                  = 5                    // resource.h:191:1:
   759  	DRUSAGE_SELF                                     = 0                    // resource.h:140:1:
   760  	DRU_PROC_RUNS_RESLIDE                            = 0x00000001           // resource.h:197:1:
   761  	DSA_64REGSET                                     = 0x0200               // signal.h:308:1:
   762  	DSA_NOCLDSTOP                                    = 0x0008               // signal.h:301:1:
   763  	DSA_NOCLDWAIT                                    = 0x0020               // signal.h:303:1:
   764  	DSA_NODEFER                                      = 0x0010               // signal.h:302:1:
   765  	DSA_ONSTACK                                      = 0x0001               // signal.h:298:1:
   766  	DSA_RESETHAND                                    = 0x0004               // signal.h:300:1:
   767  	DSA_RESTART                                      = 0x0002               // signal.h:299:1:
   768  	DSA_SIGINFO                                      = 0x0040               // signal.h:304:1:
   769  	DSA_USERSPACE_MASK                               = 127                  // signal.h:314:1:
   770  	DSA_USERTRAMP                                    = 0x0100               // signal.h:306:1:
   771  	DSCHAR_MAX                                       = 127                  // limits.h:44:1:
   772  	DSCHAR_MIN                                       = -128                 // limits.h:49:1:
   773  	DSCNd16                                          = "hd"                 // inttypes.h:145:1:
   774  	DSCNd32                                          = "d"                  // inttypes.h:151:1:
   775  	DSCNdPTR                                         = "ld"                 // inttypes.h:211:1:
   776  	DSCNi16                                          = "hi"                 // inttypes.h:146:1:
   777  	DSCNi32                                          = "i"                  // inttypes.h:152:1:
   778  	DSCNiPTR                                         = "li"                 // inttypes.h:212:1:
   779  	DSCNo16                                          = "ho"                 // inttypes.h:147:1:
   780  	DSCNo32                                          = "o"                  // inttypes.h:153:1:
   781  	DSCNoPTR                                         = "lo"                 // inttypes.h:213:1:
   782  	DSCNu16                                          = "hu"                 // inttypes.h:148:1:
   783  	DSCNu32                                          = "u"                  // inttypes.h:154:1:
   784  	DSCNuPTR                                         = "lu"                 // inttypes.h:214:1:
   785  	DSCNx16                                          = "hx"                 // inttypes.h:149:1:
   786  	DSCNx32                                          = "x"                  // inttypes.h:155:1:
   787  	DSCNxPTR                                         = "lx"                 // inttypes.h:215:1:
   788  	DSEEK_CUR                                        = 1                    // stdio.h:121:1:
   789  	DSEEK_END                                        = 2                    // stdio.h:124:1:
   790  	DSEEK_SET                                        = 0                    // stdio.h:118:1:
   791  	DSEGV_ACCERR                                     = 2                    // signal.h:235:1:
   792  	DSEGV_MAPERR                                     = 1                    // signal.h:234:1:
   793  	DSEGV_NOOP                                       = 0                    // signal.h:232:1:
   794  	DSHRT_MAX                                        = 32767                // limits.h:45:1:
   795  	DSHRT_MIN                                        = -32768               // limits.h:50:1:
   796  	DSIGABRT                                         = 6                    // signal.h:89:1:
   797  	DSIGALRM                                         = 14                   // signal.h:102:1:
   798  	DSIGBUS                                          = 10                   // signal.h:98:1:
   799  	DSIGCHLD                                         = 20                   // signal.h:108:1:
   800  	DSIGCONT                                         = 19                   // signal.h:107:1:
   801  	DSIGEMT                                          = 7                    // signal.h:94:1:
   802  	DSIGEV_NONE                                      = 0                    // signal.h:164:1:
   803  	DSIGEV_SIGNAL                                    = 1                    // signal.h:165:1:
   804  	DSIGEV_THREAD                                    = 3                    // signal.h:166:1:
   805  	DSIGFPE                                          = 8                    // signal.h:96:1:
   806  	DSIGHUP                                          = 1                    // signal.h:84:1:
   807  	DSIGILL                                          = 4                    // signal.h:87:1:
   808  	DSIGINFO                                         = 29                   // signal.h:120:1:
   809  	DSIGINT                                          = 2                    // signal.h:85:1:
   810  	DSIGIO                                           = 23                   // signal.h:112:1:
   811  	DSIGIOT                                          = 6                    // signal.h:93:1:
   812  	DSIGKILL                                         = 9                    // signal.h:97:1:
   813  	DSIGPIPE                                         = 13                   // signal.h:101:1:
   814  	DSIGPROF                                         = 27                   // signal.h:117:1:
   815  	DSIGQUIT                                         = 3                    // signal.h:86:1:
   816  	DSIGSEGV                                         = 11                   // signal.h:99:1:
   817  	DSIGSTKSZ                                        = 131072               // signal.h:341:1:
   818  	DSIGSTOP                                         = 17                   // signal.h:105:1:
   819  	DSIGSYS                                          = 12                   // signal.h:100:1:
   820  	DSIGTERM                                         = 15                   // signal.h:103:1:
   821  	DSIGTRAP                                         = 5                    // signal.h:88:1:
   822  	DSIGTSTP                                         = 18                   // signal.h:106:1:
   823  	DSIGTTIN                                         = 21                   // signal.h:109:1:
   824  	DSIGTTOU                                         = 22                   // signal.h:110:1:
   825  	DSIGURG                                          = 16                   // signal.h:104:1:
   826  	DSIGUSR1                                         = 30                   // signal.h:122:1:
   827  	DSIGUSR2                                         = 31                   // signal.h:123:1:
   828  	DSIGVTALRM                                       = 26                   // signal.h:116:1:
   829  	DSIGWINCH                                        = 28                   // signal.h:119:1:
   830  	DSIGXCPU                                         = 24                   // signal.h:114:1:
   831  	DSIGXFSZ                                         = 25                   // signal.h:115:1:
   832  	DSIG_ATOMIC_MAX                                  = 2147483647           // stdint.h:668:1:
   833  	DSIG_ATOMIC_MIN                                  = -2147483648          // stdint.h:667:1:
   834  	DSIG_BLOCK                                       = 1                    // signal.h:319:1:
   835  	DSIG_SETMASK                                     = 3                    // signal.h:321:1:
   836  	DSIG_UNBLOCK                                     = 2                    // signal.h:320:1:
   837  	DSIZE_MAX                                        = 18446744073709551615 // stdint.h:653:1:
   838  	DSI_ASYNCIO                                      = 0x10004              // signal.h:327:1:
   839  	DSI_MESGQ                                        = 0x10005              // signal.h:328:1:
   840  	DSI_QUEUE                                        = 0x10002              // signal.h:325:1:
   841  	DSI_TIMER                                        = 0x10003              // signal.h:326:1:
   842  	DSI_USER                                         = 0x10001              // signal.h:324:1:
   843  	DSS_DISABLE                                      = 0x0004               // signal.h:339:1:
   844  	DSS_ONSTACK                                      = 0x0001               // signal.h:338:1:
   845  	DSTART_FRAMES_SIZE                               = 20480                // pcre2_internal.h:231:1:
   846  	DSTDC_HEADERS                                    = 1                    // config.h:292:1:
   847  	DSTR_0                                           = "\060"               // pcre2_internal.h:1106:1:
   848  	DSTR_1                                           = "\061"               // pcre2_internal.h:1107:1:
   849  	DSTR_2                                           = "\062"               // pcre2_internal.h:1108:1:
   850  	DSTR_3                                           = "\063"               // pcre2_internal.h:1109:1:
   851  	DSTR_4                                           = "\064"               // pcre2_internal.h:1110:1:
   852  	DSTR_5                                           = "\065"               // pcre2_internal.h:1111:1:
   853  	DSTR_6                                           = "\066"               // pcre2_internal.h:1112:1:
   854  	DSTR_7                                           = "\067"               // pcre2_internal.h:1113:1:
   855  	DSTR_8                                           = "\070"               // pcre2_internal.h:1114:1:
   856  	DSTR_9                                           = "\071"               // pcre2_internal.h:1115:1:
   857  	DSTR_A                                           = "\101"               // pcre2_internal.h:1123:1:
   858  	DSTR_AMPERSAND                                   = "\046"               // pcre2_internal.h:1096:1:
   859  	DSTR_APOSTROPHE                                  = "\047"               // pcre2_internal.h:1097:1:
   860  	DSTR_ASTERISK                                    = "\052"               // pcre2_internal.h:1100:1:
   861  	DSTR_B                                           = "\102"               // pcre2_internal.h:1124:1:
   862  	DSTR_BACKSLASH                                   = "\134"               // pcre2_internal.h:1150:1:
   863  	DSTR_BEL                                         = "\007"               // pcre2_internal.h:1086:1:
   864  	DSTR_BS                                          = "\010"               // pcre2_internal.h:1085:1:
   865  	DSTR_C                                           = "\103"               // pcre2_internal.h:1125:1:
   866  	DSTR_CIRCUMFLEX_ACCENT                           = "\136"               // pcre2_internal.h:1152:1:
   867  	DSTR_COLON                                       = "\072"               // pcre2_internal.h:1116:1:
   868  	DSTR_COMMA                                       = "\054"               // pcre2_internal.h:1102:1:
   869  	DSTR_COMMERCIAL_AT                               = "\100"               // pcre2_internal.h:1122:1:
   870  	DSTR_CR                                          = "\015"               // pcre2_internal.h:1083:1:
   871  	DSTR_D                                           = "\104"               // pcre2_internal.h:1126:1:
   872  	DSTR_DEL                                         = "\177"               // pcre2_internal.h:1088:1:
   873  	DSTR_DOLLAR_SIGN                                 = "\044"               // pcre2_internal.h:1094:1:
   874  	DSTR_DOT                                         = "\056"               // pcre2_internal.h:1104:1:
   875  	DSTR_E                                           = "\105"               // pcre2_internal.h:1127:1:
   876  	DSTR_EQUALS_SIGN                                 = "\075"               // pcre2_internal.h:1119:1:
   877  	DSTR_ESC                                         = "\033"               // pcre2_internal.h:1087:1:
   878  	DSTR_EXCLAMATION_MARK                            = "\041"               // pcre2_internal.h:1091:1:
   879  	DSTR_F                                           = "\106"               // pcre2_internal.h:1128:1:
   880  	DSTR_FF                                          = "\014"               // pcre2_internal.h:1082:1:
   881  	DSTR_G                                           = "\107"               // pcre2_internal.h:1129:1:
   882  	DSTR_GRAVE_ACCENT                                = "\140"               // pcre2_internal.h:1154:1:
   883  	DSTR_GREATER_THAN_SIGN                           = "\076"               // pcre2_internal.h:1120:1:
   884  	DSTR_H                                           = "\110"               // pcre2_internal.h:1130:1:
   885  	DSTR_HT                                          = "\011"               // pcre2_internal.h:1080:1:
   886  	DSTR_I                                           = "\111"               // pcre2_internal.h:1131:1:
   887  	DSTR_J                                           = "\112"               // pcre2_internal.h:1132:1:
   888  	DSTR_K                                           = "\113"               // pcre2_internal.h:1133:1:
   889  	DSTR_L                                           = "\114"               // pcre2_internal.h:1134:1:
   890  	DSTR_LEFT_CURLY_BRACKET                          = "\173"               // pcre2_internal.h:1181:1:
   891  	DSTR_LEFT_PARENTHESIS                            = "\050"               // pcre2_internal.h:1098:1:
   892  	DSTR_LEFT_SQUARE_BRACKET                         = "\133"               // pcre2_internal.h:1149:1:
   893  	DSTR_LESS_THAN_SIGN                              = "\074"               // pcre2_internal.h:1118:1:
   894  	DSTR_M                                           = "\115"               // pcre2_internal.h:1135:1:
   895  	DSTR_MINUS                                       = "\055"               // pcre2_internal.h:1103:1:
   896  	DSTR_N                                           = "\116"               // pcre2_internal.h:1136:1:
   897  	DSTR_NL                                          = "\012"               // pcre2_internal.h:1084:1:
   898  	DSTR_NUMBER_SIGN                                 = "\043"               // pcre2_internal.h:1093:1:
   899  	DSTR_O                                           = "\117"               // pcre2_internal.h:1137:1:
   900  	DSTR_P                                           = "\120"               // pcre2_internal.h:1138:1:
   901  	DSTR_PERCENT_SIGN                                = "\045"               // pcre2_internal.h:1095:1:
   902  	DSTR_PLUS                                        = "\053"               // pcre2_internal.h:1101:1:
   903  	DSTR_Q                                           = "\121"               // pcre2_internal.h:1139:1:
   904  	DSTR_QUESTION_MARK                               = "\077"               // pcre2_internal.h:1121:1:
   905  	DSTR_QUOTATION_MARK                              = "\042"               // pcre2_internal.h:1092:1:
   906  	DSTR_R                                           = "\122"               // pcre2_internal.h:1140:1:
   907  	DSTR_RIGHT_CURLY_BRACKET                         = "\175"               // pcre2_internal.h:1183:1:
   908  	DSTR_RIGHT_PARENTHESIS                           = "\051"               // pcre2_internal.h:1099:1:
   909  	DSTR_RIGHT_SQUARE_BRACKET                        = "\135"               // pcre2_internal.h:1151:1:
   910  	DSTR_S                                           = "\123"               // pcre2_internal.h:1141:1:
   911  	DSTR_SEMICOLON                                   = "\073"               // pcre2_internal.h:1117:1:
   912  	DSTR_SLASH                                       = "\057"               // pcre2_internal.h:1105:1:
   913  	DSTR_SPACE                                       = "\040"               // pcre2_internal.h:1090:1:
   914  	DSTR_T                                           = "\124"               // pcre2_internal.h:1142:1:
   915  	DSTR_TILDE                                       = "\176"               // pcre2_internal.h:1184:1:
   916  	DSTR_U                                           = "\125"               // pcre2_internal.h:1143:1:
   917  	DSTR_UNDERSCORE                                  = "\137"               // pcre2_internal.h:1153:1:
   918  	DSTR_V                                           = "\126"               // pcre2_internal.h:1144:1:
   919  	DSTR_VERTICAL_LINE                               = "\174"               // pcre2_internal.h:1182:1:
   920  	DSTR_VT                                          = "\013"               // pcre2_internal.h:1081:1:
   921  	DSTR_W                                           = "\127"               // pcre2_internal.h:1145:1:
   922  	DSTR_X                                           = "\130"               // pcre2_internal.h:1146:1:
   923  	DSTR_Y                                           = "\131"               // pcre2_internal.h:1147:1:
   924  	DSTR_Z                                           = "\132"               // pcre2_internal.h:1148:1:
   925  	DSTR_a                                           = "\141"               // pcre2_internal.h:1155:1:
   926  	DSTR_b                                           = "\142"               // pcre2_internal.h:1156:1:
   927  	DSTR_c                                           = "\143"               // pcre2_internal.h:1157:1:
   928  	DSTR_d                                           = "\144"               // pcre2_internal.h:1158:1:
   929  	DSTR_e                                           = "\145"               // pcre2_internal.h:1159:1:
   930  	DSTR_f                                           = "\146"               // pcre2_internal.h:1160:1:
   931  	DSTR_g                                           = "\147"               // pcre2_internal.h:1161:1:
   932  	DSTR_h                                           = "\150"               // pcre2_internal.h:1162:1:
   933  	DSTR_i                                           = "\151"               // pcre2_internal.h:1163:1:
   934  	DSTR_j                                           = "\152"               // pcre2_internal.h:1164:1:
   935  	DSTR_k                                           = "\153"               // pcre2_internal.h:1165:1:
   936  	DSTR_l                                           = "\154"               // pcre2_internal.h:1166:1:
   937  	DSTR_m                                           = "\155"               // pcre2_internal.h:1167:1:
   938  	DSTR_n                                           = "\156"               // pcre2_internal.h:1168:1:
   939  	DSTR_o                                           = "\157"               // pcre2_internal.h:1169:1:
   940  	DSTR_p                                           = "\160"               // pcre2_internal.h:1170:1:
   941  	DSTR_q                                           = "\161"               // pcre2_internal.h:1171:1:
   942  	DSTR_r                                           = "\162"               // pcre2_internal.h:1172:1:
   943  	DSTR_s                                           = "\163"               // pcre2_internal.h:1173:1:
   944  	DSTR_t                                           = "\164"               // pcre2_internal.h:1174:1:
   945  	DSTR_u                                           = "\165"               // pcre2_internal.h:1175:1:
   946  	DSTR_v                                           = "\166"               // pcre2_internal.h:1176:1:
   947  	DSTR_w                                           = "\167"               // pcre2_internal.h:1177:1:
   948  	DSTR_x                                           = "\170"               // pcre2_internal.h:1178:1:
   949  	DSTR_y                                           = "\171"               // pcre2_internal.h:1179:1:
   950  	DSTR_z                                           = "\172"               // pcre2_internal.h:1180:1:
   951  	DSUPPORT_PCRE2GREP_CALLOUT                       = 0                    // config.h:312:1:
   952  	DSUPPORT_PCRE2GREP_CALLOUT_FORK                  = 0                    // config.h:317:1:
   953  	DSUPPORT_PCRE2_8                                 = 0                    // config.h:330:1:
   954  	DSUPPORT_UNICODE                                 = 0                    // config.h:336:1:
   955  	DSUPPORT_WIDE_CHARS                              = 0                    // pcre2_intmodedep.h:216:1:
   956  	DSV_INTERRUPT                                    = 2                    // signal.h:355:1:
   957  	DSV_NOCLDSTOP                                    = 8                    // signal.h:358:1:
   958  	DSV_NODEFER                                      = 16                   // signal.h:357:1:
   959  	DSV_ONSTACK                                      = 1                    // signal.h:354:1:
   960  	DSV_RESETHAND                                    = 4                    // signal.h:356:1:
   961  	DSV_SIGINFO                                      = 64                   // signal.h:359:1:
   962  	DTABLES_LENGTH                                   = 1088                 // pcre2_internal.h:593:1:
   963  	DTMP_MAX                                         = 308915776            // stdio.h:115:1:
   964  	DTRAP_BRKPT                                      = 1                    // signal.h:246:1:
   965  	DTRAP_TRACE                                      = 2                    // signal.h:247:1:
   966  	DTRUE                                            = 1                    // pcre2_internal.h:70:1:
   967  	DUCD_BIDICLASS_SHIFT                             = 11                   // pcre2_internal.h:1844:1:
   968  	DUCD_BLOCK_SIZE                                  = 128                  // pcre2_internal.h:1831:1:
   969  	DUCD_BPROPS_MASK                                 = 0xfff                // pcre2_internal.h:1845:1:
   970  	DUCD_SCRIPTX_MASK                                = 0x3ff                // pcre2_internal.h:1843:1:
   971  	DUCHAR_MAX                                       = 255                  // limits.h:54:1:
   972  	DUINT16_MAX                                      = 65535                // stdint.h:601:1:
   973  	DUINT32_MAX                                      = 4294967295           // stdint.h:557:1:
   974  	DUINT64_MAX                                      = 18446744073709551615 // stdint.h:463:1:
   975  	DUINT8_MAX                                       = 255                  // stdint.h:623:1:
   976  	DUINTMAX_MAX                                     = 18446744073709551615 // stdint.h:664:1:
   977  	DUINTPTR_MAX                                     = 18446744073709551615 // stdint.h:650:1:
   978  	DUINT_FAST16_MAX                                 = 65535                // stdint.h:616:1:
   979  	DUINT_FAST32_MAX                                 = 4294967295           // stdint.h:575:1:
   980  	DUINT_FAST64_MAX                                 = 18446744073709551615 // stdint.h:484:1:
   981  	DUINT_FAST8_MAX                                  = 255                  // stdint.h:635:1:
   982  	DUINT_LEAST16_MAX                                = 65535                // stdint.h:613:1:
   983  	DUINT_LEAST32_MAX                                = 4294967295           // stdint.h:572:1:
   984  	DUINT_LEAST64_MAX                                = 18446744073709551615 // stdint.h:481:1:
   985  	DUINT_LEAST8_MAX                                 = 255                  // stdint.h:632:1:
   986  	DUINT_MAX                                        = 4294967295           // limits.h:56:1:
   987  	DULLONG_MAX                                      = 18446744073709551615 // limits.h:84:1:
   988  	DULONG_LONG_MAX                                  = 18446744073709551615 // limits.h:99:1:
   989  	DULONG_MAX                                       = 18446744073709551615 // limits.h:57:1:
   990  	DUSHRT_MAX                                       = 65535                // limits.h:55:1:
   991  	DVERSION                                         = "10.40"              // config.h:430:1:
   992  	DWAIT_ANY                                        = -1                   // wait.h:183:1:
   993  	DWAIT_MYPGRP                                     = 0                    // wait.h:184:1:
   994  	DWAKEMON_DISABLE                                 = 0x02                 // resource.h:431:1:
   995  	DWAKEMON_ENABLE                                  = 0x01                 // resource.h:430:1:
   996  	DWAKEMON_GET_PARAMS                              = 0x04                 // resource.h:432:1:
   997  	DWAKEMON_MAKE_FATAL                              = 0x10                 // resource.h:434:1:
   998  	DWAKEMON_SET_DEFAULTS                            = 0x08                 // resource.h:433:1:
   999  	DWCHAR_MAX                                       = 2147483647           // stdint.h:678:1:
  1000  	DWCHAR_MIN                                       = -2147483648          // stdint.h:682:1:
  1001  	DWCONTINUED                                      = 0x00000010           // wait.h:173:1:
  1002  	DWCOREFLAG                                       = 0200                 // wait.h:132:1:
  1003  	DWEXITED                                         = 0x00000004           // wait.h:168:1:
  1004  	DWINT_MAX                                        = 2147483647           // stdint.h:674:1:
  1005  	DWINT_MIN                                        = -2147483648          // stdint.h:673:1:
  1006  	DWNOHANG                                         = 0x00000001           // wait.h:121:1:
  1007  	DWNOWAIT                                         = 0x00000020           // wait.h:174:1:
  1008  	DWSTOPPED                                        = 0x00000008           // wait.h:171:1:
  1009  	DWUNTRACED                                       = 0x00000002           // wait.h:122:1:
  1010  	DXCL_END                                         = 0                    // pcre2_internal.h:1314:1:
  1011  	DXCL_HASPROP                                     = 0x04                 // pcre2_internal.h:1312:1:
  1012  	DXCL_MAP                                         = 0x02                 // pcre2_internal.h:1311:1:
  1013  	DXCL_NOT                                         = 0x01                 // pcre2_internal.h:1310:1:
  1014  	DXCL_NOTPROP                                     = 4                    // pcre2_internal.h:1318:1:
  1015  	DXCL_PROP                                        = 3                    // pcre2_internal.h:1317:1:
  1016  	DXCL_RANGE                                       = 2                    // pcre2_internal.h:1316:1:
  1017  	DXCL_SINGLE                                      = 1                    // pcre2_internal.h:1315:1:
  1018  	D_ALLOCA_H_                                      = 0                    // alloca.h:25:1:
  1019  	D_ALL_SOURCE                                     = 1                    // config.h:343:1:
  1020  	D_BSD_I386__TYPES_H_                             = 0                    // _types.h:29:1:
  1021  	D_BSD_MACHINE_ENDIAN_H_                          = 0                    // endian.h:32:1:
  1022  	D_BSD_MACHINE_SIGNAL_H_                          = 0                    // signal.h:29:1:
  1023  	D_BSD_MACHINE_TYPES_H_                           = 0                    // types.h:32:1:
  1024  	D_BSD_MACHINE__MCONTEXT_H_                       = 0                    // _mcontext.h:29:1:
  1025  	D_BSD_MACHINE__TYPES_H_                          = 0                    // _types.h:29:1:
  1026  	D_CACHED_RUNES                                   = 256                  // runetype.h:54:1:
  1027  	D_CDEFS_H_                                       = 0                    // cdefs.h:68:1:
  1028  	D_CRMASK                                         = -256                 // runetype.h:55:1:
  1029  	D_CTERMID_H_                                     = 0                    // _ctermid.h:25:1:
  1030  	D_CTYPE_A                                        = 0x00000100           // _ctype.h:72:1:
  1031  	D_CTYPE_B                                        = 0x00020000           // _ctype.h:81:1:
  1032  	D_CTYPE_C                                        = 0x00000200           // _ctype.h:73:1:
  1033  	D_CTYPE_D                                        = 0x00000400           // _ctype.h:74:1:
  1034  	D_CTYPE_G                                        = 0x00000800           // _ctype.h:75:1:
  1035  	D_CTYPE_H_                                       = 0                    // ctype.h:67:1:
  1036  	D_CTYPE_I                                        = 0x00080000           // _ctype.h:83:1:
  1037  	D_CTYPE_L                                        = 0x00001000           // _ctype.h:76:1:
  1038  	D_CTYPE_P                                        = 0x00002000           // _ctype.h:77:1:
  1039  	D_CTYPE_Q                                        = 0x00200000           // _ctype.h:85:1:
  1040  	D_CTYPE_R                                        = 0x00040000           // _ctype.h:82:1:
  1041  	D_CTYPE_S                                        = 0x00004000           // _ctype.h:78:1:
  1042  	D_CTYPE_SW0                                      = 0x20000000           // _ctype.h:86:1:
  1043  	D_CTYPE_SW1                                      = 0x40000000           // _ctype.h:87:1:
  1044  	D_CTYPE_SW2                                      = 0x80000000           // _ctype.h:88:1:
  1045  	D_CTYPE_SW3                                      = 0xc0000000           // _ctype.h:89:1:
  1046  	D_CTYPE_SWM                                      = 0xe0000000           // _ctype.h:90:1:
  1047  	D_CTYPE_SWS                                      = 30                   // _ctype.h:91:1:
  1048  	D_CTYPE_T                                        = 0x00100000           // _ctype.h:84:1:
  1049  	D_CTYPE_U                                        = 0x00008000           // _ctype.h:79:1:
  1050  	D_CTYPE_X                                        = 0x00010000           // _ctype.h:80:1:
  1051  	D_CT_RUNE_T                                      = 0                    // _ct_rune_t.h:30:1:
  1052  	D_DARWIN_C_SOURCE                                = 1                    // config.h:347:1:
  1053  	D_DARWIN_FEATURE_64_BIT_INODE                    = 1                    // cdefs.h:772:1:
  1054  	D_DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE           = 1                    // cdefs.h:798:1:
  1055  	D_DARWIN_FEATURE_UNIX_CONFORMANCE                = 3                    // cdefs.h:806:1:
  1056  	D_DEV_T                                          = 0                    // _dev_t.h:29:1:
  1057  	D_ERRNO_T                                        = 0                    // _errno_t.h:29:1:
  1058  	D_FILE_OFFSET_BITS                               = 64                   // <builtin>:25:1:
  1059  	D_FORTIFY_SOURCE                                 = 2                    // _types.h:65:1:
  1060  	D_FSTDIO                                         = 0                    // _stdio.h:83:1:
  1061  	D_GCC_LIMITS_H_                                  = 0                    // limits.h:15:1:
  1062  	D_GNU_SOURCE                                     = 1                    // config.h:355:1:
  1063  	D_HPUX_ALT_XOPEN_SOCKET_API                      = 1                    // config.h:360:1:
  1064  	D_I386_MACHTYPES_H_                              = 0                    // types.h:67:1:
  1065  	D_I386_SIGNAL_H_                                 = 1                    // signal.h:34:1:
  1066  	D_I386__ENDIAN_H_                                = 0                    // endian.h:67:1:
  1067  	D_ID_T                                           = 0                    // _id_t.h:29:1:
  1068  	D_INT16_T                                        = 0                    // _int16_t.h:29:1:
  1069  	D_INT32_T                                        = 0                    // _int32_t.h:29:1:
  1070  	D_INT64_T                                        = 0                    // _int64_t.h:29:1:
  1071  	D_INT8_T                                         = 0                    // _int8_t.h:29:1:
  1072  	D_INTPTR_T                                       = 0                    // _intptr_t.h:29:1:
  1073  	D_INTTYPES_H_                                    = 0                    // inttypes.h:32:1:
  1074  	D_IOFBF                                          = 0                    // stdio.h:99:1:
  1075  	D_IOLBF                                          = 1                    // stdio.h:100:1:
  1076  	D_IONBF                                          = 2                    // stdio.h:101:1:
  1077  	D_LP64                                           = 1                    // <predefined>:1:1:
  1078  	D_MACHTYPES_H_                                   = 0                    // types.h:68:1:
  1079  	D_MACH_I386__STRUCTS_H_                          = 0                    // _structs.h:33:1:
  1080  	D_MACH_MACHINE__STRUCTS_H_                       = 0                    // _structs.h:30:1:
  1081  	D_MALLOC_UNDERSCORE_MALLOC_H_                    = 0                    // _malloc.h:25:1:
  1082  	D_MCONTEXT_T                                     = 0                    // _mcontext.h:204:1:
  1083  	D_MODE_T                                         = 0                    // _mode_t.h:29:1:
  1084  	D_NETBSD_SOURCE                                  = 1                    // config.h:371:1:
  1085  	D_Nonnull                                        = 0                    // cdefs.h:268:1:
  1086  	D_Null_unspecified                               = 0                    // cdefs.h:271:1:
  1087  	D_Nullable                                       = 0                    // cdefs.h:265:1:
  1088  	D_OFF_T                                          = 0                    // _off_t.h:29:1:
  1089  	D_OPENBSD_SOURCE                                 = 1                    // config.h:376:1:
  1090  	D_OS__OSBYTEORDERI386_H                          = 0                    // _OSByteOrder.h:30:1:
  1091  	D_OS__OSBYTEORDER_H                              = 0                    // _OSByteOrder.h:30:1:
  1092  	D_PID_T                                          = 0                    // _pid_t.h:29:1:
  1093  	D_POSIX_PTHREAD_SEMANTICS                        = 1                    // config.h:388:1:
  1094  	D_PTHREAD_ATTR_T                                 = 0                    // _pthread_attr_t.h:29:1:
  1095  	D_PTRDIFF_T                                      = 0                    // stddef.h:33:1:
  1096  	D_QUAD_HIGHWORD                                  = 1                    // endian.h:80:1:
  1097  	D_QUAD_LOWWORD                                   = 0                    // endian.h:81:1:
  1098  	D_RLIMIT_POSIX_FLAG                              = 0x1000               // resource.h:405:1:
  1099  	D_RSIZE_T                                        = 0                    // stddef.h:58:1:
  1100  	D_RUNETYPE_H_                                    = 0                    // runetype.h:40:1:
  1101  	D_RUNE_MAGIC_A                                   = "RuneMagA"           // runetype.h:108:1:
  1102  	D_RUNE_T                                         = 0                    // _rune_t.h:29:1:
  1103  	D_SECURE__COMMON_H_                              = 0                    // _common.h:25:1:
  1104  	D_SECURE__STDIO_H_                               = 0                    // _stdio.h:29:1:
  1105  	D_SECURE__STRINGS_H_                             = 0                    // _strings.h:29:1:
  1106  	D_SECURE__STRING_H_                              = 0                    // _string.h:29:1:
  1107  	D_SIGSET_T                                       = 0                    // _sigset_t.h:29:1:
  1108  	D_SIZE_T                                         = 0                    // _size_t.h:29:1:
  1109  	D_SSIZE_T                                        = 0                    // _ssize_t.h:29:1:
  1110  	D_STDIO_H_                                       = 0                    // stdio.h:62:1:
  1111  	D_STDLIB_H_                                      = 0                    // stdlib.h:59:1:
  1112  	D_STRINGS_H_                                     = 0                    // strings.h:59:1:
  1113  	D_STRING_H_                                      = 0                    // string.h:59:1:
  1114  	D_SYS_RESOURCE_H_                                = 0                    // resource.h:65:1:
  1115  	D_SYS_SIGNAL_H_                                  = 0                    // signal.h:70:1:
  1116  	D_SYS_STDIO_H_                                   = 0                    // stdio.h:30:1:
  1117  	D_SYS_WAIT_H_                                    = 0                    // wait.h:65:1:
  1118  	D_SYS__ENDIAN_H_                                 = 0                    // _endian.h:91:1:
  1119  	D_SYS__PTHREAD_TYPES_H_                          = 0                    // _pthread_types.h:30:1:
  1120  	D_SYS__TYPES_H_                                  = 0                    // _types.h:30:1:
  1121  	D_TANDEM_SOURCE                                  = 1                    // config.h:420:1:
  1122  	D_UID_T                                          = 0                    // _uid_t.h:29:1:
  1123  	D_UINT32_T                                       = 0                    // _uint32_t.h:30:1:
  1124  	D_UINTPTR_T                                      = 0                    // _uintptr_t.h:29:1:
  1125  	D_USE_FORTIFY_LEVEL                              = 2                    // _common.h:30:1:
  1126  	D_U_INT16_T                                      = 0                    // _u_int16_t.h:29:1:
  1127  	D_U_INT32_T                                      = 0                    // _u_int32_t.h:29:1:
  1128  	D_U_INT64_T                                      = 0                    // _u_int64_t.h:29:1:
  1129  	D_U_INT8_T                                       = 0                    // _u_int8_t.h:29:1:
  1130  	D_VA_LIST_T                                      = 0                    // _va_list.h:30:1:
  1131  	D_WCHAR_T                                        = 0                    // _wchar_t.h:32:1:
  1132  	D_WINT_T                                         = 0                    // _wint_t.h:30:1:
  1133  	D_WSTOPPED                                       = 0177                 // wait.h:137:1:
  1134  	D_X86_INSTRUCTION_STATE_CACHELINE_SIZE           = 64                   // _structs.h:621:1:
  1135  	D_X86_INSTRUCTION_STATE_MAX_INSN_BYTES           = 2380                 // _structs.h:619:1:
  1136  	Dcbit_cntrl                                      = 288                  // pcre2_internal.h:573:1:
  1137  	Dcbit_digit                                      = 64                   // pcre2_internal.h:566:1:
  1138  	Dcbit_graph                                      = 192                  // pcre2_internal.h:570:1:
  1139  	Dcbit_length                                     = 320                  // pcre2_internal.h:574:1:
  1140  	Dcbit_lower                                      = 128                  // pcre2_internal.h:568:1:
  1141  	Dcbit_print                                      = 224                  // pcre2_internal.h:571:1:
  1142  	Dcbit_punct                                      = 256                  // pcre2_internal.h:572:1:
  1143  	Dcbit_space                                      = 0                    // pcre2_internal.h:564:1:
  1144  	Dcbit_upper                                      = 96                   // pcre2_internal.h:567:1:
  1145  	Dcbit_word                                       = 160                  // pcre2_internal.h:569:1:
  1146  	Dcbit_xdigit                                     = 32                   // pcre2_internal.h:565:1:
  1147  	Dcbits_offset                                    = 512                  // pcre2_internal.h:591:1:
  1148  	Dctype_digit                                     = 0x08                 // pcre2_internal.h:583:1:
  1149  	Dctype_lcletter                                  = 0x04                 // pcre2_internal.h:582:1:
  1150  	Dctype_letter                                    = 0x02                 // pcre2_internal.h:581:1:
  1151  	Dctype_space                                     = 0x01                 // pcre2_internal.h:580:1:
  1152  	Dctype_word                                      = 0x10                 // pcre2_internal.h:584:1:
  1153  	Dctypes_offset                                   = 832                  // pcre2_internal.h:592:1:
  1154  	Dfcc_offset                                      = 256                  // pcre2_internal.h:590:1:
  1155  	Dlcc_offset                                      = 0                    // pcre2_internal.h:589:1:
  1156  	Ducd_boolprop_sets_item_size                     = 2                    // pcre2_ucp.h:164:1:
  1157  	Ducd_script_sets_item_size                       = 3                    // pcre2_ucp.h:390:1:
  1158  	DCOMPILE_WORK_SIZE                               = 6000                 // pcre2_compile.c:166:1:
  1159  	DESCAPES_FIRST                                   = 48                   // pcre2_compile.c:507:1:
  1160  	DESCAPES_LAST                                    = 122                  // pcre2_compile.c:508:1:
  1161  	DGI_FIXED_LENGTH_MASK                            = 0x0000ffff           // pcre2_compile.c:402:1:
  1162  	DGI_NOT_FIXED_LENGTH                             = 0x40000000           // pcre2_compile.c:401:1:
  1163  	DGI_SET_FIXED_LENGTH                             = 0x80000000           // pcre2_compile.c:400:1:
  1164  	DGROUPINFO_DEFAULT_SIZE                          = 256                  // pcre2_compile.c:175:1:
  1165  	DMAX_GROUP_NUMBER                                = 65535                // pcre2_compile.c:147:1:
  1166  	DMAX_REPEAT_COUNT                                = 65535                // pcre2_compile.c:148:1:
  1167  	DMETA_ACCEPT                                     = 0x802a0000           // pcre2_compile.c:266:1:
  1168  	DMETA_ALT                                        = 0x80010000           // pcre2_compile.c:213:1:
  1169  	DMETA_ASTERISK                                   = 0x80340000           // pcre2_compile.c:279:1:
  1170  	DMETA_ASTERISK_PLUS                              = 0x80350000           // pcre2_compile.c:280:1:
  1171  	DMETA_ASTERISK_QUERY                             = 0x80360000           // pcre2_compile.c:281:1:
  1172  	DMETA_ATOMIC                                     = 0x80020000           // pcre2_compile.c:214:1:
  1173  	DMETA_ATOMIC_SCRIPT_RUN                          = 0x8fff0000           // pcre2_compile.c:300:1:
  1174  	DMETA_BACKREF                                    = 0x80030000           // pcre2_compile.c:215:1:
  1175  	DMETA_BACKREF_BYNAME                             = 0x80040000           // pcre2_compile.c:216:1:
  1176  	DMETA_BIGVALUE                                   = 0x80050000           // pcre2_compile.c:217:1:
  1177  	DMETA_CALLOUT_NUMBER                             = 0x80060000           // pcre2_compile.c:218:1:
  1178  	DMETA_CALLOUT_STRING                             = 0x80070000           // pcre2_compile.c:219:1:
  1179  	DMETA_CAPTURE                                    = 0x80080000           // pcre2_compile.c:220:1:
  1180  	DMETA_CIRCUMFLEX                                 = 0x80090000           // pcre2_compile.c:221:1:
  1181  	DMETA_CLASS                                      = 0x800a0000           // pcre2_compile.c:222:1:
  1182  	DMETA_CLASS_EMPTY                                = 0x800b0000           // pcre2_compile.c:223:1:
  1183  	DMETA_CLASS_EMPTY_NOT                            = 0x800c0000           // pcre2_compile.c:224:1:
  1184  	DMETA_CLASS_END                                  = 0x800d0000           // pcre2_compile.c:225:1:
  1185  	DMETA_CLASS_NOT                                  = 0x800e0000           // pcre2_compile.c:226:1:
  1186  	DMETA_COMMIT                                     = 0x802c0000           // pcre2_compile.c:268:1:
  1187  	DMETA_COMMIT_ARG                                 = 0x802d0000           // pcre2_compile.c:269:1:
  1188  	DMETA_COND_ASSERT                                = 0x800f0000           // pcre2_compile.c:227:1:
  1189  	DMETA_COND_DEFINE                                = 0x80100000           // pcre2_compile.c:228:1:
  1190  	DMETA_COND_NAME                                  = 0x80110000           // pcre2_compile.c:229:1:
  1191  	DMETA_COND_NUMBER                                = 0x80120000           // pcre2_compile.c:230:1:
  1192  	DMETA_COND_RNAME                                 = 0x80130000           // pcre2_compile.c:231:1:
  1193  	DMETA_COND_RNUMBER                               = 0x80140000           // pcre2_compile.c:232:1:
  1194  	DMETA_COND_VERSION                               = 0x80150000           // pcre2_compile.c:233:1:
  1195  	DMETA_DOLLAR                                     = 0x80160000           // pcre2_compile.c:234:1:
  1196  	DMETA_DOT                                        = 0x80170000           // pcre2_compile.c:235:1:
  1197  	DMETA_END                                        = 0x80000000           // pcre2_compile.c:211:1:
  1198  	DMETA_ESCAPE                                     = 0x80180000           // pcre2_compile.c:236:1:
  1199  	DMETA_FAIL                                       = 0x802b0000           // pcre2_compile.c:267:1:
  1200  	DMETA_FIRST_QUANTIFIER                           = 2150891520           // pcre2_compile.c:292:1:
  1201  	DMETA_KET                                        = 0x80190000           // pcre2_compile.c:237:1:
  1202  	DMETA_LAST_QUANTIFIER                            = 2151612416           // pcre2_compile.c:293:1:
  1203  	DMETA_LOOKAHEAD                                  = 0x80230000           // pcre2_compile.c:251:1:
  1204  	DMETA_LOOKAHEADNOT                               = 0x80240000           // pcre2_compile.c:252:1:
  1205  	DMETA_LOOKAHEAD_NA                               = 0x80270000           // pcre2_compile.c:258:1:
  1206  	DMETA_LOOKBEHIND                                 = 0x80250000           // pcre2_compile.c:253:1:
  1207  	DMETA_LOOKBEHINDNOT                              = 0x80260000           // pcre2_compile.c:254:1:
  1208  	DMETA_LOOKBEHIND_NA                              = 0x80280000           // pcre2_compile.c:259:1:
  1209  	DMETA_MARK                                       = 0x80290000           // pcre2_compile.c:265:1:
  1210  	DMETA_MINMAX                                     = 0x803d0000           // pcre2_compile.c:288:1:
  1211  	DMETA_MINMAX_PLUS                                = 0x803e0000           // pcre2_compile.c:289:1:
  1212  	DMETA_MINMAX_QUERY                               = 0x803f0000           // pcre2_compile.c:290:1:
  1213  	DMETA_NOCAPTURE                                  = 0x801a0000           // pcre2_compile.c:238:1:
  1214  	DMETA_OPTIONS                                    = 0x801b0000           // pcre2_compile.c:239:1:
  1215  	DMETA_PLUS                                       = 0x80370000           // pcre2_compile.c:282:1:
  1216  	DMETA_PLUS_PLUS                                  = 0x80380000           // pcre2_compile.c:283:1:
  1217  	DMETA_PLUS_QUERY                                 = 0x80390000           // pcre2_compile.c:284:1:
  1218  	DMETA_POSIX                                      = 0x801c0000           // pcre2_compile.c:240:1:
  1219  	DMETA_POSIX_NEG                                  = 0x801d0000           // pcre2_compile.c:241:1:
  1220  	DMETA_PRUNE                                      = 0x802e0000           // pcre2_compile.c:270:1:
  1221  	DMETA_PRUNE_ARG                                  = 0x802f0000           // pcre2_compile.c:271:1:
  1222  	DMETA_QUERY                                      = 0x803a0000           // pcre2_compile.c:285:1:
  1223  	DMETA_QUERY_PLUS                                 = 0x803b0000           // pcre2_compile.c:286:1:
  1224  	DMETA_QUERY_QUERY                                = 0x803c0000           // pcre2_compile.c:287:1:
  1225  	DMETA_RANGE_ESCAPED                              = 0x801e0000           // pcre2_compile.c:242:1:
  1226  	DMETA_RANGE_LITERAL                              = 0x801f0000           // pcre2_compile.c:243:1:
  1227  	DMETA_RECURSE                                    = 0x80200000           // pcre2_compile.c:244:1:
  1228  	DMETA_RECURSE_BYNAME                             = 0x80210000           // pcre2_compile.c:245:1:
  1229  	DMETA_SCRIPT_RUN                                 = 0x80220000           // pcre2_compile.c:246:1:
  1230  	DMETA_SKIP                                       = 0x80300000           // pcre2_compile.c:272:1:
  1231  	DMETA_SKIP_ARG                                   = 0x80310000           // pcre2_compile.c:273:1:
  1232  	DMETA_THEN                                       = 0x80320000           // pcre2_compile.c:274:1:
  1233  	DMETA_THEN_ARG                                   = 0x80330000           // pcre2_compile.c:275:1:
  1234  	DNAMED_GROUP_LIST_SIZE                           = 20                   // pcre2_compile.c:187:1:
  1235  	DNSF_ATOMICSR                                    = 0x0004               // pcre2_compile.c:2565:1:
  1236  	DNSF_CONDASSERT                                  = 0x0002               // pcre2_compile.c:2564:1:
  1237  	DNSF_RESET                                       = 0x0001               // pcre2_compile.c:2563:1:
  1238  	DOFLOW_MAX                                       = 2147483627           // pcre2_compile.c:200:1:
  1239  	DPARSED_PATTERN_DEFAULT_SIZE                     = 1024                 // pcre2_compile.c:193:1:
  1240  	DPARSE_TRACKED_OPTIONS                           = 17048808             // pcre2_compile.c:2572:1:
  1241  	DPC_GRAPH                                        = 8                    // pcre2_compile.c:709:1:
  1242  	DPC_PRINT                                        = 9                    // pcre2_compile.c:710:1:
  1243  	DPC_PUNCT                                        = 10                   // pcre2_compile.c:711:1:
  1244  	DPUBLIC_COMPILE_EXTRA_OPTIONS                    = 127                  // pcre2_compile.c:784:1:
  1245  	DPUBLIC_COMPILE_OPTIONS                          = 3892314111           // pcre2_compile.c:772:1:
  1246  	DPUBLIC_LITERAL_COMPILE_EXTRA_OPTIONS            = 12                   // pcre2_compile.c:781:1:
  1247  	DPUBLIC_LITERAL_COMPILE_OPTIONS                  = 3867738380           // pcre2_compile.c:767:1:
  1248  	DREPEAT_UNLIMITED                                = 65536                // pcre2_compile.c:149:1:
  1249  	DREQ_CASELESS                                    = 0x00000001           // pcre2_compile.c:395:1:
  1250  	DREQ_NONE                                        = 0xfffffffe           // pcre2_compile.c:394:1:
  1251  	DREQ_UNSET                                       = 0xffffffff           // pcre2_compile.c:393:1:
  1252  	DREQ_VARY                                        = 0x00000002           // pcre2_compile.c:396:1:
  1253  	DRSCAN_CACHE_SIZE                                = 8                    // pcre2_compile.c:10359:1:
  1254  	DSIZEOFFSET                                      = 2                    // pcre2_compile.c:108:1:
  1255  	DWORK_SIZE_SAFETY_MARGIN                         = 100                  // pcre2_compile.c:180:1:
  1256  	DALL_OPTIONS                                     = 127                  // pcre2_convert.c:51:1:
  1257  	DDUMMY_BUFFER_SIZE                               = 100                  // pcre2_convert.c:56:1:
  1258  	DTYPE_OPTIONS                                    = 28                   // pcre2_convert.c:48:1:
  1259  	DOP_ANYNL_EXTRA                                  = 340                  // pcre2_dfa_match.c:103:1:
  1260  	DOP_EXTUNI_EXTRA                                 = 320                  // pcre2_dfa_match.c:102:1:
  1261  	DOP_HSPACE_EXTRA                                 = 360                  // pcre2_dfa_match.c:104:1:
  1262  	DOP_PROP_EXTRA                                   = 300                  // pcre2_dfa_match.c:101:1:
  1263  	DOP_VSPACE_EXTRA                                 = 380                  // pcre2_dfa_match.c:105:1:
  1264  	DPUBLIC_DFA_MATCH_OPTIONS                        = 3758113023           // pcre2_dfa_match.c:85:1:
  1265  	DRWS_RSIZE                                       = 1000                 // pcre2_dfa_match.c:318:1:
  1266  	DINCLUDED_FROM_PCRE2_JIT_COMPILE                 = 0                    // pcre2_jit_compile.c:14502:1:
  1267  	DPUBLIC_JIT_COMPILE_OPTIONS                      = 263                  // pcre2_jit_compile.c:14378:1:
  1268  	DGF_CAPTURE                                      = 0x00010000           // pcre2_match.c:106:1:
  1269  	DGF_CONDASSERT                                   = 0x00030000           // pcre2_match.c:108:1:
  1270  	DGF_NOCAPTURE                                    = 0x00020000           // pcre2_match.c:107:1:
  1271  	DGF_RECURSE                                      = 0x00040000           // pcre2_match.c:109:1:
  1272  	DMATCH_ACCEPT                                    = -999                 // pcre2_match.c:88:1:
  1273  	DMATCH_BACKTRACK_MAX                             = -993                 // pcre2_match.c:97:1:
  1274  	DMATCH_BACKTRACK_MIN                             = -997                 // pcre2_match.c:98:1:
  1275  	DMATCH_COMMIT                                    = -997                 // pcre2_match.c:92:1:
  1276  	DMATCH_KETRPOS                                   = -998                 // pcre2_match.c:89:1:
  1277  	DMATCH_MATCH                                     = 1                    // pcre2_match.c:82:1:
  1278  	DMATCH_NOMATCH                                   = 0                    // pcre2_match.c:83:1:
  1279  	DMATCH_PRUNE                                     = -996                 // pcre2_match.c:93:1:
  1280  	DMATCH_SKIP                                      = -995                 // pcre2_match.c:94:1:
  1281  	DMATCH_SKIP_ARG                                  = -994                 // pcre2_match.c:95:1:
  1282  	DMATCH_THEN                                      = -993                 // pcre2_match.c:96:1:
  1283  	DPUBLIC_JIT_MATCH_OPTIONS                        = 1073758271           // pcre2_match.c:74:1:
  1284  	DPUBLIC_MATCH_OPTIONS                            = 3758121023           // pcre2_match.c:69:1:
  1285  	DRECURSE_UNSET                                   = 0xffffffff           // pcre2_match.c:65:1:
  1286  	DFOUND_BOPOMOFO                                  = 1                    // pcre2_script_run.c:199:1:
  1287  	DFOUND_HANGUL                                    = 8                    // pcre2_script_run.c:202:1:
  1288  	DFOUND_HIRAGANA                                  = 2                    // pcre2_script_run.c:200:1:
  1289  	DFOUND_KATAKANA                                  = 4                    // pcre2_script_run.c:201:1:
  1290  	DSERIALIZED_DATA_MAGIC                           = 0x50523253           // pcre2_serialize.c:54:1:
  1291  	DSERIALIZED_DATA_VERSION                         = 2621450              // pcre2_serialize.c:59:1:
  1292  	DMAX_CACHE_BACKREF                               = 128                  // pcre2_study.c:53:1:
  1293  	DPTR_STACK_SIZE                                  = 20                   // pcre2_substitute.c:48:1:
  1294  	DSUBSTITUTE_OPTIONS                              = 237312               // pcre2_substitute.c:50:1:
  1295  )
  1296  
  1297  // Copyright (c) 2000, 2002 - 2008 Apple Inc. All rights reserved.
  1298  //
  1299  // @APPLE_LICENSE_HEADER_START@
  1300  //
  1301  // This file contains Original Code and/or Modifications of Original Code
  1302  // as defined in and that are subject to the Apple Public Source License
  1303  // Version 2.0 (the 'License'). You may not use this file except in
  1304  // compliance with the License. Please obtain a copy of the License at
  1305  // http://www.opensource.apple.com/apsl/ and read it before using this
  1306  // file.
  1307  //
  1308  // The Original Code and all software distributed under the License are
  1309  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1310  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1311  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1312  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1313  // Please see the License for the specific language governing rights and
  1314  // limitations under the License.
  1315  //
  1316  // @APPLE_LICENSE_HEADER_END@
  1317  // -
  1318  // Copyright (c) 1990, 1993
  1319  //	The Regents of the University of California.  All rights reserved.
  1320  //
  1321  // Redistribution and use in source and binary forms, with or without
  1322  // modification, are permitted provided that the following conditions
  1323  // are met:
  1324  // 1. Redistributions of source code must retain the above copyright
  1325  //    notice, this list of conditions and the following disclaimer.
  1326  // 2. Redistributions in binary form must reproduce the above copyright
  1327  //    notice, this list of conditions and the following disclaimer in the
  1328  //    documentation and/or other materials provided with the distribution.
  1329  // 3. All advertising materials mentioning features or use of this software
  1330  //    must display the following acknowledgement:
  1331  //	This product includes software developed by the University of
  1332  //	California, Berkeley and its contributors.
  1333  // 4. Neither the name of the University nor the names of its contributors
  1334  //    may be used to endorse or promote products derived from this software
  1335  //    without specific prior written permission.
  1336  //
  1337  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1338  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1339  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1340  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1341  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1342  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1343  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1344  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1345  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1346  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1347  // SUCH DAMAGE.
  1348  //
  1349  //	@(#)stdlib.h	8.5 (Berkeley) 5/19/95
  1350  
  1351  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  1352  //
  1353  // @APPLE_LICENSE_HEADER_START@
  1354  //
  1355  // This file contains Original Code and/or Modifications of Original Code
  1356  // as defined in and that are subject to the Apple Public Source License
  1357  // Version 2.0 (the 'License'). You may not use this file except in
  1358  // compliance with the License. Please obtain a copy of the License at
  1359  // http://www.opensource.apple.com/apsl/ and read it before using this
  1360  // file.
  1361  //
  1362  // The Original Code and all software distributed under the License are
  1363  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1364  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1365  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1366  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1367  // Please see the License for the specific language governing rights and
  1368  // limitations under the License.
  1369  //
  1370  // @APPLE_LICENSE_HEADER_END@
  1371  
  1372  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  1373  //
  1374  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1375  //
  1376  // This file contains Original Code and/or Modifications of Original Code
  1377  // as defined in and that are subject to the Apple Public Source License
  1378  // Version 2.0 (the 'License'). You may not use this file except in
  1379  // compliance with the License. The rights granted to you under the License
  1380  // may not be used to create, or enable the creation or redistribution of,
  1381  // unlawful or unlicensed copies of an Apple operating system, or to
  1382  // circumvent, violate, or enable the circumvention or violation of, any
  1383  // terms of an Apple operating system software license agreement.
  1384  //
  1385  // Please obtain a copy of the License at
  1386  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1387  //
  1388  // The Original Code and all software distributed under the License are
  1389  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1390  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1391  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1392  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1393  // Please see the License for the specific language governing rights and
  1394  // limitations under the License.
  1395  //
  1396  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1397  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1398  // Copyright (c) 1991, 1993
  1399  //	The Regents of the University of California.  All rights reserved.
  1400  //
  1401  // This code is derived from software contributed to Berkeley by
  1402  // Berkeley Software Design, Inc.
  1403  //
  1404  // Redistribution and use in source and binary forms, with or without
  1405  // modification, are permitted provided that the following conditions
  1406  // are met:
  1407  // 1. Redistributions of source code must retain the above copyright
  1408  //    notice, this list of conditions and the following disclaimer.
  1409  // 2. Redistributions in binary form must reproduce the above copyright
  1410  //    notice, this list of conditions and the following disclaimer in the
  1411  //    documentation and/or other materials provided with the distribution.
  1412  // 3. All advertising materials mentioning features or use of this software
  1413  //    must display the following acknowledgement:
  1414  //	This product includes software developed by the University of
  1415  //	California, Berkeley and its contributors.
  1416  // 4. Neither the name of the University nor the names of its contributors
  1417  //    may be used to endorse or promote products derived from this software
  1418  //    without specific prior written permission.
  1419  //
  1420  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1421  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1422  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1423  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1424  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1425  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1426  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1427  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1428  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1429  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1430  // SUCH DAMAGE.
  1431  //
  1432  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  1433  
  1434  // Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
  1435  //
  1436  // @APPLE_LICENSE_HEADER_START@
  1437  //
  1438  // This file contains Original Code and/or Modifications of Original Code
  1439  // as defined in and that are subject to the Apple Public Source License
  1440  // Version 2.0 (the 'License'). You may not use this file except in
  1441  // compliance with the License. Please obtain a copy of the License at
  1442  // http://www.opensource.apple.com/apsl/ and read it before using this
  1443  // file.
  1444  //
  1445  // The Original Code and all software distributed under the License are
  1446  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1447  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1448  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1449  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1450  // Please see the License for the specific language governing rights and
  1451  // limitations under the License.
  1452  //
  1453  // @APPLE_LICENSE_HEADER_END@
  1454  
  1455  // Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
  1456  //
  1457  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1458  //
  1459  // This file contains Original Code and/or Modifications of Original Code
  1460  // as defined in and that are subject to the Apple Public Source License
  1461  // Version 2.0 (the 'License'). You may not use this file except in
  1462  // compliance with the License. The rights granted to you under the License
  1463  // may not be used to create, or enable the creation or redistribution of,
  1464  // unlawful or unlicensed copies of an Apple operating system, or to
  1465  // circumvent, violate, or enable the circumvention or violation of, any
  1466  // terms of an Apple operating system software license agreement.
  1467  //
  1468  // Please obtain a copy of the License at
  1469  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1470  //
  1471  // The Original Code and all software distributed under the License are
  1472  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1473  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1474  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1475  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1476  // Please see the License for the specific language governing rights and
  1477  // limitations under the License.
  1478  //
  1479  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1480  // Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved
  1481  // Copyright (c) 1982, 1986, 1989, 1993, 1994
  1482  //	The Regents of the University of California.  All rights reserved.
  1483  //
  1484  // Redistribution and use in source and binary forms, with or without
  1485  // modification, are permitted provided that the following conditions
  1486  // are met:
  1487  // 1. Redistributions of source code must retain the above copyright
  1488  //    notice, this list of conditions and the following disclaimer.
  1489  // 2. Redistributions in binary form must reproduce the above copyright
  1490  //    notice, this list of conditions and the following disclaimer in the
  1491  //    documentation and/or other materials provided with the distribution.
  1492  // 3. All advertising materials mentioning features or use of this software
  1493  //    must display the following acknowledgement:
  1494  //	This product includes software developed by the University of
  1495  //	California, Berkeley and its contributors.
  1496  // 4. Neither the name of the University nor the names of its contributors
  1497  //    may be used to endorse or promote products derived from this software
  1498  //    without specific prior written permission.
  1499  //
  1500  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1501  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1502  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1503  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1504  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1505  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1506  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1507  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1508  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1509  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1510  // SUCH DAMAGE.
  1511  //
  1512  //	@(#)wait.h	8.2 (Berkeley) 7/10/94
  1513  
  1514  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  1515  //
  1516  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1517  //
  1518  // This file contains Original Code and/or Modifications of Original Code
  1519  // as defined in and that are subject to the Apple Public Source License
  1520  // Version 2.0 (the 'License'). You may not use this file except in
  1521  // compliance with the License. The rights granted to you under the License
  1522  // may not be used to create, or enable the creation or redistribution of,
  1523  // unlawful or unlicensed copies of an Apple operating system, or to
  1524  // circumvent, violate, or enable the circumvention or violation of, any
  1525  // terms of an Apple operating system software license agreement.
  1526  //
  1527  // Please obtain a copy of the License at
  1528  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1529  //
  1530  // The Original Code and all software distributed under the License are
  1531  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1532  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1533  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1534  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1535  // Please see the License for the specific language governing rights and
  1536  // limitations under the License.
  1537  //
  1538  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1539  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  1540  // Copyright (c) 1991, 1993
  1541  //	The Regents of the University of California.  All rights reserved.
  1542  //
  1543  // This code is derived from software contributed to Berkeley by
  1544  // Berkeley Software Design, Inc.
  1545  //
  1546  // Redistribution and use in source and binary forms, with or without
  1547  // modification, are permitted provided that the following conditions
  1548  // are met:
  1549  // 1. Redistributions of source code must retain the above copyright
  1550  //    notice, this list of conditions and the following disclaimer.
  1551  // 2. Redistributions in binary form must reproduce the above copyright
  1552  //    notice, this list of conditions and the following disclaimer in the
  1553  //    documentation and/or other materials provided with the distribution.
  1554  // 3. All advertising materials mentioning features or use of this software
  1555  //    must display the following acknowledgement:
  1556  //	This product includes software developed by the University of
  1557  //	California, Berkeley and its contributors.
  1558  // 4. Neither the name of the University nor the names of its contributors
  1559  //    may be used to endorse or promote products derived from this software
  1560  //    without specific prior written permission.
  1561  //
  1562  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1563  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1564  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1565  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1566  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1567  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1568  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1569  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1570  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1571  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1572  // SUCH DAMAGE.
  1573  //
  1574  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  1575  
  1576  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  1577  //
  1578  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  1579  //
  1580  // This file contains Original Code and/or Modifications of Original Code
  1581  // as defined in and that are subject to the Apple Public Source License
  1582  // Version 2.0 (the 'License'). You may not use this file except in
  1583  // compliance with the License. The rights granted to you under the License
  1584  // may not be used to create, or enable the creation or redistribution of,
  1585  // unlawful or unlicensed copies of an Apple operating system, or to
  1586  // circumvent, violate, or enable the circumvention or violation of, any
  1587  // terms of an Apple operating system software license agreement.
  1588  //
  1589  // Please obtain a copy of the License at
  1590  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  1591  //
  1592  // The Original Code and all software distributed under the License are
  1593  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  1594  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  1595  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  1596  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  1597  // Please see the License for the specific language governing rights and
  1598  // limitations under the License.
  1599  //
  1600  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  1601  
  1602  // This file holds definitions relevent to the wait4 system call
  1603  // and the alternate interfaces that use it (wait, wait3, waitpid).
  1604  
  1605  // [XSI] The type idtype_t shall be defined as an enumeration type whose
  1606  // possible values shall include at least P_ALL, P_PID, and P_PGID.
  1607  const ( /* wait.h:79:1: */
  1608  	P_ALL  = 0
  1609  	P_PID  = 1
  1610  	P_PGID = 2
  1611  )
  1612  
  1613  // Options that are changeable within the pattern must be tracked during
  1614  // parsing. Some (e.g. PCRE2_EXTENDED) are implemented entirely during parsing,
  1615  // but all must be tracked so that META_OPTIONS items set the correct values for
  1616  // the main compiling phase.
  1617  
  1618  // States used for analyzing ranges in character classes. The two OK values
  1619  // must be last.
  1620  
  1621  const ( /* pcre2_compile.c:2579:1: */
  1622  	RANGE_NO         = 0
  1623  	RANGE_STARTED    = 1
  1624  	RANGE_OK_ESCAPED = 2
  1625  	RANGE_OK_LITERAL = 3
  1626  )
  1627  
  1628  // Types for skipping parts of a parsed pattern.
  1629  
  1630  const ( /* pcre2_compile.c:375:1: */
  1631  	PSKIP_ALT   = 0
  1632  	PSKIP_CLASS = 1
  1633  	PSKIP_KET   = 2
  1634  )
  1635  
  1636  // Masks for checking option settings. When PCRE2_LITERAL is set, only a subset
  1637  // are allowed.
  1638  
  1639  // Compile time error code numbers. They are given names so that they can more
  1640  // easily be tracked. When a new number is added, the tables called eint1 and
  1641  // eint2 in pcre2posix.c may need to be updated, and a new error text must be
  1642  // added to compile_error_texts in pcre2_error.c. Also, the error codes in
  1643  // pcre2.h.in must be updated - their values are exactly 100 greater than these
  1644  // values.
  1645  
  1646  const ( /* pcre2_compile.c:797:1: */
  1647  	ERR0  = 100
  1648  	ERR1  = 101
  1649  	ERR2  = 102
  1650  	ERR3  = 103
  1651  	ERR4  = 104
  1652  	ERR5  = 105
  1653  	ERR6  = 106
  1654  	ERR7  = 107
  1655  	ERR8  = 108
  1656  	ERR9  = 109
  1657  	ERR10 = 110
  1658  	ERR11 = 111
  1659  	ERR12 = 112
  1660  	ERR13 = 113
  1661  	ERR14 = 114
  1662  	ERR15 = 115
  1663  	ERR16 = 116
  1664  	ERR17 = 117
  1665  	ERR18 = 118
  1666  	ERR19 = 119
  1667  	ERR20 = 120
  1668  	ERR21 = 121
  1669  	ERR22 = 122
  1670  	ERR23 = 123
  1671  	ERR24 = 124
  1672  	ERR25 = 125
  1673  	ERR26 = 126
  1674  	ERR27 = 127
  1675  	ERR28 = 128
  1676  	ERR29 = 129
  1677  	ERR30 = 130
  1678  	ERR31 = 131
  1679  	ERR32 = 132
  1680  	ERR33 = 133
  1681  	ERR34 = 134
  1682  	ERR35 = 135
  1683  	ERR36 = 136
  1684  	ERR37 = 137
  1685  	ERR38 = 138
  1686  	ERR39 = 139
  1687  	ERR40 = 140
  1688  	ERR41 = 141
  1689  	ERR42 = 142
  1690  	ERR43 = 143
  1691  	ERR44 = 144
  1692  	ERR45 = 145
  1693  	ERR46 = 146
  1694  	ERR47 = 147
  1695  	ERR48 = 148
  1696  	ERR49 = 149
  1697  	ERR50 = 150
  1698  	ERR51 = 151
  1699  	ERR52 = 152
  1700  	ERR53 = 153
  1701  	ERR54 = 154
  1702  	ERR55 = 155
  1703  	ERR56 = 156
  1704  	ERR57 = 157
  1705  	ERR58 = 158
  1706  	ERR59 = 159
  1707  	ERR60 = 160
  1708  	ERR61 = 161
  1709  	ERR62 = 162
  1710  	ERR63 = 163
  1711  	ERR64 = 164
  1712  	ERR65 = 165
  1713  	ERR66 = 166
  1714  	ERR67 = 167
  1715  	ERR68 = 168
  1716  	ERR69 = 169
  1717  	ERR70 = 170
  1718  	ERR71 = 171
  1719  	ERR72 = 172
  1720  	ERR73 = 173
  1721  	ERR74 = 174
  1722  	ERR75 = 175
  1723  	ERR76 = 176
  1724  	ERR77 = 177
  1725  	ERR78 = 178
  1726  	ERR79 = 179
  1727  	ERR80 = 180
  1728  	ERR81 = 181
  1729  	ERR82 = 182
  1730  	ERR83 = 183
  1731  	ERR84 = 184
  1732  	ERR85 = 185
  1733  	ERR86 = 186
  1734  	ERR87 = 187
  1735  	ERR88 = 188
  1736  	ERR89 = 189
  1737  	ERR90 = 190
  1738  	ERR91 = 191
  1739  	ERR92 = 192
  1740  	ERR93 = 193
  1741  	ERR94 = 194
  1742  	ERR95 = 195
  1743  	ERR96 = 196
  1744  	ERR97 = 197
  1745  	ERR98 = 198
  1746  	ERR99 = 199
  1747  )
  1748  
  1749  // This is a table of start-of-pattern options such as (*UTF) and settings such
  1750  // as (*LIMIT_MATCH=nnnn) and (*CRLF). For completeness and backward
  1751  // compatibility, (*UTFn) is supported in the relevant libraries, but (*UTF) is
  1752  // generic and always supported.
  1753  
  1754  const ( /* pcre2_compile.c:814:1: */
  1755  	PSO_OPT  = 0 // Value is an option bit
  1756  	PSO_FLG  = 1 // Value is a flag bit
  1757  	PSO_NL   = 2 // Value is a newline type
  1758  	PSO_BSR  = 3 // Value is a \R type
  1759  	PSO_LIMH = 4 // Read integer value for heap limit
  1760  	PSO_LIMM = 5 // Read integer value for match limit
  1761  	PSO_LIMD = 6
  1762  )
  1763  
  1764  // This function is needed only when memmove() is not available.
  1765  
  1766  // End of pcre2_internal.h
  1767  
  1768  // Generated pattern fragments
  1769  
  1770  // States for POSIX processing
  1771  
  1772  const ( /* pcre2_convert.c:70:1: */
  1773  	POSIX_START_REGEX       = 0
  1774  	POSIX_ANCHORED          = 1
  1775  	POSIX_NOT_BRACKET       = 2
  1776  	POSIX_CLASS_NOT_STARTED = 3
  1777  	POSIX_CLASS_STARTING    = 4
  1778  	POSIX_CLASS_STARTED     = 5
  1779  ) // pcre2_jit_match()
  1780  
  1781  // Values for the flags field in a match data block.
  1782  
  1783  // Magic number to provide a small check against being handed junk.
  1784  
  1785  // The maximum remaining length of subject we are prepared to search for a
  1786  // req_unit match from an anchored pattern. In 8-bit mode, memchr() is used and is
  1787  // much faster than the search loop that has to be used in 16-bit and 32-bit
  1788  // modes.
  1789  
  1790  // Offsets for the bitmap tables in the cbits set of tables. Each table
  1791  // contains a set of bits for a class map. Some classes are built by combining
  1792  // these tables.
  1793  
  1794  // Bit definitions for entries in the ctypes table. Do not change these values
  1795  // without checking pcre2_jit_compile.c, which has an assertion to ensure that
  1796  // ctype_word has the value 16.
  1797  
  1798  // Offsets of the various tables from the base tables pointer, and
  1799  // total length of the tables.
  1800  
  1801  // -------------------- Character and string names ------------------------
  1802  
  1803  // If PCRE2 is to support UTF-8 on EBCDIC platforms, we cannot use normal
  1804  // character constants like '*' because the compiler would emit their EBCDIC code,
  1805  // which is different from their ASCII/UTF-8 code. Instead we define macros for
  1806  // the characters so that they always use the ASCII/UTF-8 code when UTF-8 support
  1807  // is enabled. When UTF-8 support is not enabled, the definitions use character
  1808  // literals. Both character and string versions of each character are needed, and
  1809  // there are some longer strings as well.
  1810  //
  1811  // This means that, on EBCDIC platforms, the PCRE2 library can handle either
  1812  // EBCDIC, or UTF-8, but not both. To support both in the same compiled library
  1813  // would need different lookups depending on whether PCRE2_UTF was set or not.
  1814  // This would make it impossible to use characters in switch/case statements,
  1815  // which would reduce performance. For a theoretical use (which nobody has asked
  1816  // for) in a minority area (EBCDIC platforms), this is not sensible. Any
  1817  // application that did need both could compile two versions of the library, using
  1818  // macros to give the functions distinct names.
  1819  
  1820  // UTF-8 support is enabled; always use UTF-8 (=ASCII) character codes. This
  1821  // works in both modes non-EBCDIC platforms, and on EBCDIC platforms in UTF-8 mode
  1822  // only.
  1823  
  1824  // -------------------- End of character and string names -------------------
  1825  
  1826  // -------------------- Definitions for compiled patterns -------------------
  1827  
  1828  // Codes for different types of Unicode property. If these definitions are
  1829  // changed, the autopossessifying table in pcre2_auto_possess.c must be updated to
  1830  // match.
  1831  
  1832  // The following special properties are used only in XCLASS items, when POSIX
  1833  // classes are specified and PCRE2_UCP is set - in other words, for Unicode
  1834  // handling of these classes. They are not available via the \p or \P escapes like
  1835  // those in the above list, and so they do not take part in the autopossessifying
  1836  // table.
  1837  
  1838  // This value is used when parsing \p and \P escapes to indicate that neither
  1839  // \p{script:...} nor \p{scx:...} has been encountered.
  1840  
  1841  // Flag bits and data types for the extended class (OP_XCLASS) for classes that
  1842  // contain characters with values greater than 255.
  1843  
  1844  // These are escaped items that aren't just an encoding of a particular data
  1845  // value such as \n. They must have non-zero values, as check_escape() returns 0
  1846  // for a data character. In the escapes[] table in pcre2_compile.c their values
  1847  // are negated in order to distinguish them from data values.
  1848  //
  1849  // They must appear here in the same order as in the opcode definitions below, up
  1850  // to ESC_z. There's a dummy for OP_ALLANY because it corresponds to "." in DOTALL
  1851  // mode rather than an escape sequence. It is also used for [^] in JavaScript
  1852  // compatibility mode, and for \C in non-utf mode. In non-DOTALL mode, "." behaves
  1853  // like \N.
  1854  //
  1855  // Negative numbers are used to encode a backreference (\1, \2, \3, etc.) in
  1856  // check_escape(). There are tests in the code for an escape greater than ESC_b
  1857  // and less than ESC_Z to detect the types that may be repeated. These are the
  1858  // types that consume characters. If any new escapes are put in between that don't
  1859  // consume a character, that code will have to change.
  1860  
  1861  const ( /* pcre2_internal.h:1337:1: */
  1862  	ESC_A   = 1
  1863  	ESC_G   = 2
  1864  	ESC_K   = 3
  1865  	ESC_B   = 4
  1866  	ESC_b   = 5
  1867  	ESC_D   = 6
  1868  	ESC_d   = 7
  1869  	ESC_S   = 8
  1870  	ESC_s   = 9
  1871  	ESC_W   = 10
  1872  	ESC_w   = 11
  1873  	ESC_N   = 12
  1874  	ESC_dum = 13
  1875  	ESC_C   = 14
  1876  	ESC_P   = 15
  1877  	ESC_p   = 16
  1878  	ESC_R   = 17
  1879  	ESC_H   = 18
  1880  	ESC_h   = 19
  1881  	ESC_V   = 20
  1882  	ESC_v   = 21
  1883  	ESC_X   = 22
  1884  	ESC_Z   = 23
  1885  	ESC_z   = 24
  1886  	ESC_E   = 25
  1887  	ESC_Q   = 26
  1888  	ESC_g   = 27
  1889  	ESC_k   = 28
  1890  )
  1891  
  1892  //********************* Opcode definitions *****************
  1893  
  1894  //***** NOTE NOTE NOTE ******
  1895  //
  1896  // Starting from 1 (i.e. after OP_END), the values up to OP_EOD must correspond in
  1897  // order to the list of escapes immediately above. Furthermore, values up to
  1898  // OP_DOLLM must not be changed without adjusting the table called autoposstab in
  1899  // pcre2_auto_possess.c.
  1900  //
  1901  // Whenever this list is updated, the two macro definitions that follow must be
  1902  // updated to match. The possessification table called "opcode_possessify" in
  1903  // pcre2_compile.c must also be updated, and also the tables called "coptable"
  1904  // and "poptable" in pcre2_dfa_match.c.
  1905  //
  1906  // ****** NOTE NOTE NOTE *****
  1907  
  1908  // The values between FIRST_AUTOTAB_OP and LAST_AUTOTAB_RIGHT_OP, inclusive,
  1909  // are used in a table for deciding whether a repeated character type can be
  1910  // auto-possessified.
  1911  
  1912  const ( /* pcre2_internal.h:1368:1: */
  1913  	OP_END = 0 // 0 End of pattern
  1914  
  1915  	// Values corresponding to backslashed metacharacters
  1916  
  1917  	OP_SOD               = 1  // 1 Start of data: \A
  1918  	OP_SOM               = 2  // 2 Start of match (subject + offset): \G
  1919  	OP_SET_SOM           = 3  // 3 Set start of match (\K)
  1920  	OP_NOT_WORD_BOUNDARY = 4  //  4 \B
  1921  	OP_WORD_BOUNDARY     = 5  //  5 \b
  1922  	OP_NOT_DIGIT         = 6  //  6 \D
  1923  	OP_DIGIT             = 7  //  7 \d
  1924  	OP_NOT_WHITESPACE    = 8  //  8 \S
  1925  	OP_WHITESPACE        = 9  //  9 \s
  1926  	OP_NOT_WORDCHAR      = 10 // 10 \W
  1927  	OP_WORDCHAR          = 11 // 11 \w
  1928  
  1929  	OP_ANY        = 12 // 12 Match any character except newline (\N)
  1930  	OP_ALLANY     = 13 // 13 Match any character
  1931  	OP_ANYBYTE    = 14 // 14 Match any byte (\C); different to OP_ANY for UTF-8
  1932  	OP_NOTPROP    = 15 // 15 \P (not Unicode property)
  1933  	OP_PROP       = 16 // 16 \p (Unicode property)
  1934  	OP_ANYNL      = 17 // 17 \R (any newline sequence)
  1935  	OP_NOT_HSPACE = 18 // 18 \H (not horizontal whitespace)
  1936  	OP_HSPACE     = 19 // 19 \h (horizontal whitespace)
  1937  	OP_NOT_VSPACE = 20 // 20 \V (not vertical whitespace)
  1938  	OP_VSPACE     = 21 // 21 \v (vertical whitespace)
  1939  	OP_EXTUNI     = 22 // 22 \X (extended Unicode sequence
  1940  	OP_EODN       = 23 // 23 End of data or \n at end of data (\Z)
  1941  	OP_EOD        = 24 // 24 End of data (\z)
  1942  
  1943  	// Line end assertions
  1944  
  1945  	OP_DOLL  = 25 // 25 End of line - not multiline
  1946  	OP_DOLLM = 26 // 26 End of line - multiline
  1947  	OP_CIRC  = 27 // 27 Start of line - not multiline
  1948  	OP_CIRCM = 28 // 28 Start of line - multiline
  1949  
  1950  	// Single characters; caseful must precede the caseless ones, and these
  1951  	//   must remain in this order, and adjacent.
  1952  
  1953  	OP_CHAR  = 29 // 29 Match one character, casefully
  1954  	OP_CHARI = 30 // 30 Match one character, caselessly
  1955  	OP_NOT   = 31 // 31 Match one character, not the given one, casefully
  1956  	OP_NOTI  = 32 // 32 Match one character, not the given one, caselessly
  1957  
  1958  	// The following sets of 13 opcodes must always be kept in step because
  1959  	//   the offset from the first one is used to generate the others.
  1960  
  1961  	// Repeated characters; caseful must precede the caseless ones
  1962  
  1963  	OP_STAR     = 33 // 33 The maximizing and minimizing versions of
  1964  	OP_MINSTAR  = 34 // 34 these six opcodes must come in pairs, with
  1965  	OP_PLUS     = 35 // 35 the minimizing one second.
  1966  	OP_MINPLUS  = 36 // 36
  1967  	OP_QUERY    = 37 // 37
  1968  	OP_MINQUERY = 38 // 38
  1969  
  1970  	OP_UPTO    = 39 // 39 From 0 to n matches of one character, caseful
  1971  	OP_MINUPTO = 40 // 40
  1972  	OP_EXACT   = 41 // 41 Exactly n matches
  1973  
  1974  	OP_POSSTAR  = 42 // 42 Possessified star, caseful
  1975  	OP_POSPLUS  = 43 // 43 Possessified plus, caseful
  1976  	OP_POSQUERY = 44 // 44 Posesssified query, caseful
  1977  	OP_POSUPTO  = 45 // 45 Possessified upto, caseful
  1978  
  1979  	// Repeated characters; caseless must follow the caseful ones
  1980  
  1981  	OP_STARI     = 46 // 46
  1982  	OP_MINSTARI  = 47 // 47
  1983  	OP_PLUSI     = 48 // 48
  1984  	OP_MINPLUSI  = 49 // 49
  1985  	OP_QUERYI    = 50 // 50
  1986  	OP_MINQUERYI = 51 // 51
  1987  
  1988  	OP_UPTOI    = 52 // 52 From 0 to n matches of one character, caseless
  1989  	OP_MINUPTOI = 53 // 53
  1990  	OP_EXACTI   = 54 // 54
  1991  
  1992  	OP_POSSTARI  = 55 // 55 Possessified star, caseless
  1993  	OP_POSPLUSI  = 56 // 56 Possessified plus, caseless
  1994  	OP_POSQUERYI = 57 // 57 Posesssified query, caseless
  1995  	OP_POSUPTOI  = 58 // 58 Possessified upto, caseless
  1996  
  1997  	// The negated ones must follow the non-negated ones, and match them
  1998  	// Negated repeated character, caseful; must precede the caseless ones
  1999  
  2000  	OP_NOTSTAR     = 59 // 59 The maximizing and minimizing versions of
  2001  	OP_NOTMINSTAR  = 60 // 60 these six opcodes must come in pairs, with
  2002  	OP_NOTPLUS     = 61 // 61 the minimizing one second. They must be in
  2003  	OP_NOTMINPLUS  = 62 // 62 exactly the same order as those above.
  2004  	OP_NOTQUERY    = 63 // 63
  2005  	OP_NOTMINQUERY = 64 // 64
  2006  
  2007  	OP_NOTUPTO    = 65 // 65 From 0 to n matches, caseful
  2008  	OP_NOTMINUPTO = 66 // 66
  2009  	OP_NOTEXACT   = 67 // 67 Exactly n matches
  2010  
  2011  	OP_NOTPOSSTAR  = 68 // 68 Possessified versions, caseful
  2012  	OP_NOTPOSPLUS  = 69 // 69
  2013  	OP_NOTPOSQUERY = 70 // 70
  2014  	OP_NOTPOSUPTO  = 71 // 71
  2015  
  2016  	// Negated repeated character, caseless; must follow the caseful ones
  2017  
  2018  	OP_NOTSTARI     = 72 // 72
  2019  	OP_NOTMINSTARI  = 73 // 73
  2020  	OP_NOTPLUSI     = 74 // 74
  2021  	OP_NOTMINPLUSI  = 75 // 75
  2022  	OP_NOTQUERYI    = 76 // 76
  2023  	OP_NOTMINQUERYI = 77 // 77
  2024  
  2025  	OP_NOTUPTOI    = 78 // 78 From 0 to n matches, caseless
  2026  	OP_NOTMINUPTOI = 79 // 79
  2027  	OP_NOTEXACTI   = 80 // 80 Exactly n matches
  2028  
  2029  	OP_NOTPOSSTARI  = 81 // 81 Possessified versions, caseless
  2030  	OP_NOTPOSPLUSI  = 82 // 82
  2031  	OP_NOTPOSQUERYI = 83 // 83
  2032  	OP_NOTPOSUPTOI  = 84 // 84
  2033  
  2034  	// Character types
  2035  
  2036  	OP_TYPESTAR     = 85 // 85 The maximizing and minimizing versions of
  2037  	OP_TYPEMINSTAR  = 86 // 86 these six opcodes must come in pairs, with
  2038  	OP_TYPEPLUS     = 87 // 87 the minimizing one second. These codes must
  2039  	OP_TYPEMINPLUS  = 88 // 88 be in exactly the same order as those above.
  2040  	OP_TYPEQUERY    = 89 // 89
  2041  	OP_TYPEMINQUERY = 90 // 90
  2042  
  2043  	OP_TYPEUPTO    = 91 // 91 From 0 to n matches
  2044  	OP_TYPEMINUPTO = 92 // 92
  2045  	OP_TYPEEXACT   = 93 // 93 Exactly n matches
  2046  
  2047  	OP_TYPEPOSSTAR  = 94 // 94 Possessified versions
  2048  	OP_TYPEPOSPLUS  = 95 // 95
  2049  	OP_TYPEPOSQUERY = 96 // 96
  2050  	OP_TYPEPOSUPTO  = 97 // 97
  2051  
  2052  	// These are used for character classes and back references; only the
  2053  	//   first six are the same as the sets above.
  2054  
  2055  	OP_CRSTAR     = 98  // 98 The maximizing and minimizing versions of
  2056  	OP_CRMINSTAR  = 99  // 99 all these opcodes must come in pairs, with
  2057  	OP_CRPLUS     = 100 // 100 the minimizing one second. These codes must
  2058  	OP_CRMINPLUS  = 101 // 101 be in exactly the same order as those above.
  2059  	OP_CRQUERY    = 102 // 102
  2060  	OP_CRMINQUERY = 103 // 103
  2061  
  2062  	OP_CRRANGE    = 104 // 104 These are different to the three sets above.
  2063  	OP_CRMINRANGE = 105 // 105
  2064  
  2065  	OP_CRPOSSTAR  = 106 // 106 Possessified versions
  2066  	OP_CRPOSPLUS  = 107 // 107
  2067  	OP_CRPOSQUERY = 108 // 108
  2068  	OP_CRPOSRANGE = 109 // 109
  2069  
  2070  	// End of quantifier opcodes
  2071  
  2072  	OP_CLASS  = 110 // 110 Match a character class, chars < 256 only
  2073  	OP_NCLASS = 111 // 111 Same, but the bitmap was created from a negative
  2074  	//                               class - the difference is relevant only when a
  2075  	//                               character > 255 is encountered.
  2076  	OP_XCLASS = 112 // 112 Extended class for handling > 255 chars within the
  2077  	//                               class. This does both positive and negative.
  2078  	OP_REF         = 113 // 113 Match a back reference, casefully
  2079  	OP_REFI        = 114 // 114 Match a back reference, caselessly
  2080  	OP_DNREF       = 115 // 115 Match a duplicate name backref, casefully
  2081  	OP_DNREFI      = 116 // 116 Match a duplicate name backref, caselessly
  2082  	OP_RECURSE     = 117 // 117 Match a numbered subpattern (possibly recursive)
  2083  	OP_CALLOUT     = 118 // 118 Call out to external function if provided
  2084  	OP_CALLOUT_STR = 119 // 119 Call out with string argument
  2085  
  2086  	OP_ALT     = 120 // 120 Start of alternation
  2087  	OP_KET     = 121 // 121 End of group that doesn't have an unbounded repeat
  2088  	OP_KETRMAX = 122 // 122 These two must remain together and in this
  2089  	OP_KETRMIN = 123 // 123 order. They are for groups the repeat for ever.
  2090  	OP_KETRPOS = 124 // 124 Possessive unlimited repeat.
  2091  
  2092  	// The assertions must come before BRA, CBRA, ONCE, and COND.
  2093  
  2094  	OP_REVERSE        = 125 // 125 Move pointer back - used in lookbehind assertions
  2095  	OP_ASSERT         = 126 // 126 Positive lookahead
  2096  	OP_ASSERT_NOT     = 127 // 127 Negative lookahead
  2097  	OP_ASSERTBACK     = 128 // 128 Positive lookbehind
  2098  	OP_ASSERTBACK_NOT = 129 // 129 Negative lookbehind
  2099  	OP_ASSERT_NA      = 130 // 130 Positive non-atomic lookahead
  2100  	OP_ASSERTBACK_NA  = 131 // 131 Positive non-atomic lookbehind
  2101  
  2102  	// ONCE, SCRIPT_RUN, BRA, BRAPOS, CBRA, CBRAPOS, and COND must come
  2103  	//   immediately after the assertions, with ONCE first, as there's a test for >=
  2104  	//   ONCE for a subpattern that isn't an assertion. The POS versions must
  2105  	//   immediately follow the non-POS versions in each case.
  2106  
  2107  	OP_ONCE       = 132 // 132 Atomic group, contains captures
  2108  	OP_SCRIPT_RUN = 133 // 133 Non-capture, but check characters' scripts
  2109  	OP_BRA        = 134 // 134 Start of non-capturing bracket
  2110  	OP_BRAPOS     = 135 // 135 Ditto, with unlimited, possessive repeat
  2111  	OP_CBRA       = 136 // 136 Start of capturing bracket
  2112  	OP_CBRAPOS    = 137 // 137 Ditto, with unlimited, possessive repeat
  2113  	OP_COND       = 138 // 138 Conditional group
  2114  
  2115  	// These five must follow the previous five, in the same order. There's a
  2116  	//   check for >= SBRA to distinguish the two sets.
  2117  
  2118  	OP_SBRA     = 139 // 139 Start of non-capturing bracket, check empty
  2119  	OP_SBRAPOS  = 140 // 149 Ditto, with unlimited, possessive repeat
  2120  	OP_SCBRA    = 141 // 141 Start of capturing bracket, check empty
  2121  	OP_SCBRAPOS = 142 // 142 Ditto, with unlimited, possessive repeat
  2122  	OP_SCOND    = 143 // 143 Conditional group, check empty
  2123  
  2124  	// The next two pairs must (respectively) be kept together.
  2125  
  2126  	OP_CREF   = 144 // 144 Used to hold a capture number as condition
  2127  	OP_DNCREF = 145 // 145 Used to point to duplicate names as a condition
  2128  	OP_RREF   = 146 // 146 Used to hold a recursion number as condition
  2129  	OP_DNRREF = 147 // 147 Used to point to duplicate names as a condition
  2130  	OP_FALSE  = 148 // 148 Always false (used by DEFINE and VERSION)
  2131  	OP_TRUE   = 149 // 149 Always true (used by VERSION)
  2132  
  2133  	OP_BRAZERO    = 150 // 150 These two must remain together and in this
  2134  	OP_BRAMINZERO = 151 // 151 order.
  2135  	OP_BRAPOSZERO = 152 // 152
  2136  
  2137  	// These are backtracking control verbs
  2138  
  2139  	OP_MARK       = 153 // 153 always has an argument
  2140  	OP_PRUNE      = 154 // 154
  2141  	OP_PRUNE_ARG  = 155 // 155 same, but with argument
  2142  	OP_SKIP       = 156 // 156
  2143  	OP_SKIP_ARG   = 157 // 157 same, but with argument
  2144  	OP_THEN       = 158 // 158
  2145  	OP_THEN_ARG   = 159 // 159 same, but with argument
  2146  	OP_COMMIT     = 160 // 160
  2147  	OP_COMMIT_ARG = 161 // 161 same, but with argument
  2148  
  2149  	// These are forced failure and success verbs. FAIL and ACCEPT do accept an
  2150  	//   argument, but these cases can be compiled as, for example, (*MARK:X)(*FAIL)
  2151  	//   without the need for a special opcode.
  2152  
  2153  	OP_FAIL          = 162 // 162
  2154  	OP_ACCEPT        = 163 // 163
  2155  	OP_ASSERT_ACCEPT = 164 // 164 Used inside assertions
  2156  	OP_CLOSE         = 165 // 165 Used before OP_ACCEPT to close open captures
  2157  
  2158  	// This is used to skip a subpattern with a {0} quantifier
  2159  
  2160  	OP_SKIPZERO = 166 // 166
  2161  
  2162  	// This is used to identify a DEFINE group during compilation so that it can
  2163  	//   be checked for having only one branch. It is changed to OP_FALSE before
  2164  	//   compilation finishes.
  2165  
  2166  	OP_DEFINE = 167 // 167
  2167  
  2168  	// This is not an opcode, but is used to check that tables indexed by opcode
  2169  	//   are the correct length, in order to catch updating errors - there have been
  2170  	//   some in the past.
  2171  
  2172  	OP_TABLE_LENGTH = 168
  2173  )
  2174  
  2175  // Size of entries in ucd_script_sets[]
  2176  
  2177  // End of pcre2_ucp.h
  2178  
  2179  // When PCRE2 is compiled as a C++ library, the subject pointer can be replaced
  2180  // with a custom type. This makes it possible, for example, to allow pcre2_match()
  2181  // to process subject strings that are discontinuous by using a smart pointer
  2182  // class. It must always be possible to inspect all of the subject string in
  2183  // pcre2_match() because of the way it backtracks.
  2184  
  2185  // WARNING: This is as yet untested for PCRE2.
  2186  
  2187  // When checking for integer overflow in pcre2_compile(), we need to handle
  2188  // large integers. If a 64-bit integer type is available, we can use that.
  2189  // Otherwise we have to cast to double, which of course requires floating point
  2190  // arithmetic. Handle this by defining a macro for the appropriate type.
  2191  
  2192  // External (in the C sense) functions and tables that are private to the
  2193  // libraries are always referenced using the PRIV macro. This makes it possible
  2194  // for pcre2test.c to include some of the source files from the libraries using a
  2195  // different PRIV definition to avoid name clashes. It also makes it clear in the
  2196  // code that a non-static object is being referenced.
  2197  
  2198  // When compiling for use with the Virtual Pascal compiler, these functions
  2199  // need to have their names changed. PCRE2 must be compiled with the -DVPCOMPAT
  2200  // option on the command line.
  2201  
  2202  // Otherwise, to cope with SunOS4 and other systems that lack memmove(), define
  2203  // a macro that calls an emulating function.
  2204  
  2205  // This is an unsigned int value that no UTF character can ever have, as
  2206  // Unicode doesn't go beyond 0x0010ffff.
  2207  
  2208  // This is the largest valid UTF/Unicode code point.
  2209  
  2210  // Compile-time positive error numbers (all except UTF errors, which are
  2211  // negative) start at this value. It should probably never be changed, in case
  2212  // some application is checking for specific numbers. There is a copy of this
  2213  // #define in pcre2posix.c (which now no longer includes this file). Ideally, a
  2214  // way of having a single definition should be found, but as the number is
  2215  // unlikely to change, this is not a pressing issue. The original reason for
  2216  // having a base other than 0 was to keep the absolute values of compile-time and
  2217  // run-time error numbers numerically different, but in the event the code does
  2218  // not rely on this.
  2219  
  2220  // The initial frames vector for remembering backtracking points in
  2221  // pcre2_match() is allocated on the system stack, of this size (bytes). The size
  2222  // must be a multiple of sizeof(PCRE2_SPTR) in all environments, so making it a
  2223  // multiple of 8 is best. Typical frame sizes are a few hundred bytes (it depends
  2224  // on the number of capturing parentheses) so 20KiB handles quite a few frames. A
  2225  // larger vector on the heap is obtained for patterns that need more frames. The
  2226  // maximum size of this can be limited.
  2227  
  2228  // Similarly, for DFA matching, an initial internal workspace vector is
  2229  // allocated on the stack.
  2230  
  2231  // Define the default BSR convention.
  2232  
  2233  // ---------------- Basic UTF-8 macros ----------------
  2234  
  2235  // These UTF-8 macros are always defined because they are used in pcre2test for
  2236  // handling wide characters in 16-bit and 32-bit modes, even if an 8-bit library
  2237  // is not supported.
  2238  
  2239  // Tests whether a UTF-8 code point needs extra bytes to decode.
  2240  
  2241  // The following macros were originally written in the form of loops that used
  2242  // data from the tables whose names start with PRIV(utf8_table). They were
  2243  // rewritten by a user so as not to use loops, because in some environments this
  2244  // gives a significant performance advantage, and it seems never to do any harm.
  2245  
  2246  // Base macro to pick up the remaining bytes of a UTF-8 character, not
  2247  // advancing the pointer.
  2248  
  2249  // Base macro to pick up the remaining bytes of a UTF-8 character, advancing
  2250  // the pointer.
  2251  
  2252  // Base macro to pick up the remaining bytes of a UTF-8 character, not
  2253  // advancing the pointer, incrementing the length.
  2254  
  2255  // --------------- Whitespace macros ----------------
  2256  
  2257  // Tests for Unicode horizontal and vertical whitespace characters must check a
  2258  // number of different values. Using a switch statement for this generates the
  2259  // fastest code (no loop, no memory access), and there are several places in the
  2260  // interpreter code where this happens. In order to ensure that all the case lists
  2261  // remain in step, we use macros so that there is only one place where the lists
  2262  // are defined.
  2263  //
  2264  // These values are also required as lists in pcre2_compile.c when processing \h,
  2265  // \H, \v and \V in a character class. The lists are defined in pcre2_tables.c,
  2266  // but macros that define the values are here so that all the definitions are
  2267  // together. The lists must be in ascending character order, terminated by
  2268  // NOTACHAR (which is 0xffffffff).
  2269  //
  2270  // Any changes should ensure that the various macros are kept in step with each
  2271  // other. NOTE: The values also appear in pcre2_jit_compile.c.
  2272  
  2273  // -------------- ASCII/Unicode environments --------------
  2274  
  2275  // Character U+180E (Mongolian Vowel Separator) is not included in the list of
  2276  // spaces in the Unicode file PropList.txt, and Perl does not recognize it as a
  2277  // space. However, in many other sources it is listed as a space and has been in
  2278  // PCRE (both APIs) for a long time.
  2279  
  2280  // -------------- EBCDIC environments --------------
  2281  
  2282  // -------------- End of whitespace macros --------------
  2283  
  2284  // PCRE2 is able to support several different kinds of newline (CR, LF, CRLF,
  2285  // "any" and "anycrlf" at present). The following macros are used to package up
  2286  // testing for newlines. NLBLOCK, PSSTART, and PSEND are defined in the various
  2287  // modules to indicate in which datablock the parameters exist, and what the
  2288  // start/end of string field names are.
  2289  
  2290  // This macro checks for a newline at the given position
  2291  
  2292  // This macro checks for a newline immediately preceding the given position
  2293  
  2294  // Private flags containing information about the compiled pattern. The first
  2295  // three must not be changed, because whichever is set is actually the number of
  2296  // bytes in a code unit in that mode.
  2297  
  2298  // Values for the matchedby field in a match data block.
  2299  
  2300  const ( /* pcre2_internal.h:537:1: */
  2301  	PCRE2_MATCHEDBY_INTERPRETER     = 0 // pcre2_match()
  2302  	PCRE2_MATCHEDBY_DFA_INTERPRETER = 1 // pcre2_dfa_match()
  2303  	PCRE2_MATCHEDBY_JIT             = 2
  2304  )
  2305  
  2306  // This function is needed only when memmove() is not available.
  2307  
  2308  // End of pcre2_internal.h
  2309  
  2310  // Masks for identifying the public options that are permitted at match time.
  2311  
  2312  // Non-error returns from and within the match() function. Error returns are
  2313  // externally defined PCRE2_ERROR_xxx codes, which are all negative.
  2314  
  2315  // Special internal returns used in the match() function. Make them
  2316  // sufficiently negative to avoid the external error codes.
  2317  
  2318  // The next 5 must be kept together and in sequence so that a test that checks
  2319  // for any one of them can use a range.
  2320  
  2321  // Group frame type values. Zero means the frame is not a group frame. The
  2322  // lower 16 bits are used for data (e.g. the capture number). Group frames are
  2323  // used for most groups so that information about the start is easily available at
  2324  // the end without having to scan back through intermediate frames (backtrack
  2325  // points).
  2326  
  2327  // Masks for the identity and data parts of the group frame type.
  2328  
  2329  // Repetition types
  2330  
  2331  const ( /* pcre2_match.c:118:1: */
  2332  	REPTYPE_MIN = 0
  2333  	REPTYPE_MAX = 1
  2334  	REPTYPE_POS = 2
  2335  ) // OP_CRPOSQUERY, OP_CRPOSRANGE
  2336  
  2337  // Numbers for RMATCH calls at backtracking points. When these lists are
  2338  // changed, the code at RETURN_SWITCH below must be updated in sync.
  2339  
  2340  const ( /* pcre2_match.c:150:1: */
  2341  	RM1  = 1
  2342  	RM2  = 2
  2343  	RM3  = 3
  2344  	RM4  = 4
  2345  	RM5  = 5
  2346  	RM6  = 6
  2347  	RM7  = 7
  2348  	RM8  = 8
  2349  	RM9  = 9
  2350  	RM10 = 10
  2351  	RM11 = 11
  2352  	RM12 = 12
  2353  	RM13 = 13
  2354  	RM14 = 14
  2355  	RM15 = 15
  2356  	RM16 = 16
  2357  	RM17 = 17
  2358  	RM18 = 18
  2359  	RM19 = 19
  2360  	RM20 = 20
  2361  	RM21 = 21
  2362  	RM22 = 22
  2363  	RM23 = 23
  2364  	RM24 = 24
  2365  	RM25 = 25
  2366  	RM26 = 26
  2367  	RM27 = 27
  2368  	RM28 = 28
  2369  	RM29 = 29
  2370  	RM30 = 30
  2371  	RM31 = 31
  2372  	RM32 = 32
  2373  	RM33 = 33
  2374  	RM34 = 34
  2375  	RM35 = 35
  2376  	RM36 = 36
  2377  )
  2378  
  2379  const ( /* pcre2_match.c:156:1: */
  2380  	RM100 = 100
  2381  	RM101 = 101
  2382  )
  2383  
  2384  const ( /* pcre2_match.c:160:1: */
  2385  	RM200 = 200
  2386  	RM201 = 201
  2387  	RM202 = 202
  2388  	RM203 = 203
  2389  	RM204 = 204
  2390  	RM205 = 205
  2391  	RM206 = 206
  2392  	RM207 = 207
  2393  	RM208 = 208
  2394  	RM209 = 209
  2395  	RM210 = 210
  2396  	RM211 = 211
  2397  	RM212 = 212
  2398  	RM213 = 213
  2399  	RM214 = 214
  2400  	RM215 = 215
  2401  	RM216 = 216
  2402  	RM217 = 217
  2403  	RM218 = 218
  2404  	RM219 = 219
  2405  	RM220 = 220
  2406  	RM221 = 221
  2407  	RM222 = 222
  2408  	RM223 = 223
  2409  	RM224 = 224
  2410  	RM225 = 225
  2411  )
  2412  
  2413  // This function is needed only when memmove() is not available.
  2414  
  2415  // End of pcre2_internal.h
  2416  
  2417  // ************************************************
  2418  //
  2419  //                Check script run                *
  2420  //
  2421  
  2422  // A script run is conceptually a sequence of characters all in the same
  2423  // Unicode script. However, it isn't quite that simple. There are special rules
  2424  // for scripts that are commonly used together, and also special rules for digits.
  2425  // This function implements the appropriate checks, which is possible only when
  2426  // PCRE2 is compiled with Unicode support. The function returns TRUE if there is
  2427  // no Unicode support; however, it should never be called in that circumstance
  2428  // because an error is given by pcre2_compile() if a script run is called for in a
  2429  // version of PCRE2 compiled without Unicode support.
  2430  //
  2431  // Arguments:
  2432  //   pgr       point to the first character
  2433  //   endptr    point after the last character
  2434  //   utf       TRUE if in UTF mode
  2435  //
  2436  // Returns:    TRUE if this is a valid script run
  2437  
  2438  // These are states in the checking process.
  2439  
  2440  const ( /* pcre2_script_run.c:73:1: */
  2441  	SCRIPT_UNSET       = 0 // Requirement as yet unknown
  2442  	SCRIPT_MAP         = 1 // Bitmap contains acceptable scripts
  2443  	SCRIPT_HANPENDING  = 2 // Have had only Han characters
  2444  	SCRIPT_HANHIRAKATA = 3 // Expect Han or Hirikata
  2445  	SCRIPT_HANBOPOMOFO = 4 // Expect Han or Bopomofo
  2446  	SCRIPT_HANHANGUL   = 5
  2447  )
  2448  
  2449  // This function is needed only when memmove() is not available.
  2450  
  2451  // End of pcre2_internal.h
  2452  
  2453  // The maximum remembered capturing brackets minimum.
  2454  
  2455  // Set a bit in the starting code unit bit map.
  2456  
  2457  // Returns from set_start_bits()
  2458  
  2459  const ( /* pcre2_study.c:61:1: */
  2460  	SSB_FAIL     = 0
  2461  	SSB_DONE     = 1
  2462  	SSB_CONTINUE = 2
  2463  	SSB_UNKNOWN  = 3
  2464  	SSB_TOODEEP  = 4
  2465  )
  2466  
  2467  // These are Boolean properties.
  2468  
  2469  const ( /* pcre2_ucp.h:105:1: */
  2470  	ucp_ASCII                        = 0
  2471  	ucp_ASCII_Hex_Digit              = 1
  2472  	ucp_Alphabetic                   = 2
  2473  	ucp_Bidi_Control                 = 3
  2474  	ucp_Bidi_Mirrored                = 4
  2475  	ucp_Case_Ignorable               = 5
  2476  	ucp_Cased                        = 6
  2477  	ucp_Changes_When_Casefolded      = 7
  2478  	ucp_Changes_When_Casemapped      = 8
  2479  	ucp_Changes_When_Lowercased      = 9
  2480  	ucp_Changes_When_Titlecased      = 10
  2481  	ucp_Changes_When_Uppercased      = 11
  2482  	ucp_Dash                         = 12
  2483  	ucp_Default_Ignorable_Code_Point = 13
  2484  	ucp_Deprecated                   = 14
  2485  	ucp_Diacritic                    = 15
  2486  	ucp_Emoji                        = 16
  2487  	ucp_Emoji_Component              = 17
  2488  	ucp_Emoji_Modifier               = 18
  2489  	ucp_Emoji_Modifier_Base          = 19
  2490  	ucp_Emoji_Presentation           = 20
  2491  	ucp_Extended_Pictographic        = 21
  2492  	ucp_Extender                     = 22
  2493  	ucp_Grapheme_Base                = 23
  2494  	ucp_Grapheme_Extend              = 24
  2495  	ucp_Grapheme_Link                = 25
  2496  	ucp_Hex_Digit                    = 26
  2497  	ucp_IDS_Binary_Operator          = 27
  2498  	ucp_IDS_Trinary_Operator         = 28
  2499  	ucp_ID_Continue                  = 29
  2500  	ucp_ID_Start                     = 30
  2501  	ucp_Ideographic                  = 31
  2502  	ucp_Join_Control                 = 32
  2503  	ucp_Logical_Order_Exception      = 33
  2504  	ucp_Lowercase                    = 34
  2505  	ucp_Math                         = 35
  2506  	ucp_Noncharacter_Code_Point      = 36
  2507  	ucp_Pattern_Syntax               = 37
  2508  	ucp_Pattern_White_Space          = 38
  2509  	ucp_Prepended_Concatenation_Mark = 39
  2510  	ucp_Quotation_Mark               = 40
  2511  	ucp_Radical                      = 41
  2512  	ucp_Regional_Indicator           = 42
  2513  	ucp_Sentence_Terminal            = 43
  2514  	ucp_Soft_Dotted                  = 44
  2515  	ucp_Terminal_Punctuation         = 45
  2516  	ucp_Unified_Ideograph            = 46
  2517  	ucp_Uppercase                    = 47
  2518  	ucp_Variation_Selector           = 48
  2519  	ucp_White_Space                  = 49
  2520  	ucp_XID_Continue                 = 50
  2521  	ucp_XID_Start                    = 51
  2522  	// This must be last
  2523  	ucp_Bprop_Count = 52
  2524  )
  2525  
  2526  // Size of entries in ucd_boolprop_sets[]
  2527  
  2528  // These are the bidi class values.
  2529  
  2530  const ( /* pcre2_ucp.h:168:1: */
  2531  	ucp_bidiAL  = 0  // Arabic letter
  2532  	ucp_bidiAN  = 1  // Arabic number
  2533  	ucp_bidiB   = 2  // Paragraph separator
  2534  	ucp_bidiBN  = 3  // Boundary neutral
  2535  	ucp_bidiCS  = 4  // Common separator
  2536  	ucp_bidiEN  = 5  // European number
  2537  	ucp_bidiES  = 6  // European separator
  2538  	ucp_bidiET  = 7  // European terminator
  2539  	ucp_bidiFSI = 8  // First strong isolate
  2540  	ucp_bidiL   = 9  // Left to right
  2541  	ucp_bidiLRE = 10 // Left to right embedding
  2542  	ucp_bidiLRI = 11 // Left to right isolate
  2543  	ucp_bidiLRO = 12 // Left to right override
  2544  	ucp_bidiNSM = 13 // Non-spacing mark
  2545  	ucp_bidiON  = 14 // Other neutral
  2546  	ucp_bidiPDF = 15 // Pop directional format
  2547  	ucp_bidiPDI = 16 // Pop directional isolate
  2548  	ucp_bidiR   = 17 // Right to left
  2549  	ucp_bidiRLE = 18 // Right to left embedding
  2550  	ucp_bidiRLI = 19 // Right to left isolate
  2551  	ucp_bidiRLO = 20 // Right to left override
  2552  	ucp_bidiS   = 21 // Segment separator
  2553  	ucp_bidiWS  = 22
  2554  )
  2555  
  2556  // These are grapheme break properties. The Extended Pictographic property
  2557  // comes from the emoji-data.txt file.
  2558  
  2559  const ( /* pcre2_ucp.h:197:1: */
  2560  	ucp_gbCR                    = 0  //  0
  2561  	ucp_gbLF                    = 1  //  1
  2562  	ucp_gbControl               = 2  //  2
  2563  	ucp_gbExtend                = 3  //  3
  2564  	ucp_gbPrepend               = 4  //  4
  2565  	ucp_gbSpacingMark           = 5  //  5
  2566  	ucp_gbL                     = 6  //  6 Hangul syllable type L
  2567  	ucp_gbV                     = 7  //  7 Hangul syllable type V
  2568  	ucp_gbT                     = 8  //  8 Hangul syllable type T
  2569  	ucp_gbLV                    = 9  //  9 Hangul syllable type LV
  2570  	ucp_gbLVT                   = 10 // 10 Hangul syllable type LVT
  2571  	ucp_gbRegional_Indicator    = 11 // 11
  2572  	ucp_gbOther                 = 12 // 12
  2573  	ucp_gbZWJ                   = 13 // 13
  2574  	ucp_gbExtended_Pictographic = 14
  2575  )
  2576  
  2577  // These are the script identifications.
  2578  
  2579  const ( /* pcre2_ucp.h:217:1: */
  2580  	// Scripts which has characters in other scripts.
  2581  	ucp_Latin           = 0
  2582  	ucp_Greek           = 1
  2583  	ucp_Cyrillic        = 2
  2584  	ucp_Arabic          = 3
  2585  	ucp_Syriac          = 4
  2586  	ucp_Thaana          = 5
  2587  	ucp_Devanagari      = 6
  2588  	ucp_Bengali         = 7
  2589  	ucp_Gurmukhi        = 8
  2590  	ucp_Gujarati        = 9
  2591  	ucp_Oriya           = 10
  2592  	ucp_Tamil           = 11
  2593  	ucp_Telugu          = 12
  2594  	ucp_Kannada         = 13
  2595  	ucp_Malayalam       = 14
  2596  	ucp_Sinhala         = 15
  2597  	ucp_Myanmar         = 16
  2598  	ucp_Georgian        = 17
  2599  	ucp_Hangul          = 18
  2600  	ucp_Mongolian       = 19
  2601  	ucp_Hiragana        = 20
  2602  	ucp_Katakana        = 21
  2603  	ucp_Bopomofo        = 22
  2604  	ucp_Han             = 23
  2605  	ucp_Yi              = 24
  2606  	ucp_Tagalog         = 25
  2607  	ucp_Hanunoo         = 26
  2608  	ucp_Buhid           = 27
  2609  	ucp_Tagbanwa        = 28
  2610  	ucp_Limbu           = 29
  2611  	ucp_Tai_Le          = 30
  2612  	ucp_Linear_B        = 31
  2613  	ucp_Cypriot         = 32
  2614  	ucp_Buginese        = 33
  2615  	ucp_Coptic          = 34
  2616  	ucp_Glagolitic      = 35
  2617  	ucp_Syloti_Nagri    = 36
  2618  	ucp_Phags_Pa        = 37
  2619  	ucp_Nko             = 38
  2620  	ucp_Kayah_Li        = 39
  2621  	ucp_Javanese        = 40
  2622  	ucp_Kaithi          = 41
  2623  	ucp_Mandaic         = 42
  2624  	ucp_Chakma          = 43
  2625  	ucp_Sharada         = 44
  2626  	ucp_Takri           = 45
  2627  	ucp_Duployan        = 46
  2628  	ucp_Grantha         = 47
  2629  	ucp_Khojki          = 48
  2630  	ucp_Linear_A        = 49
  2631  	ucp_Mahajani        = 50
  2632  	ucp_Manichaean      = 51
  2633  	ucp_Modi            = 52
  2634  	ucp_Old_Permic      = 53
  2635  	ucp_Psalter_Pahlavi = 54
  2636  	ucp_Khudawadi       = 55
  2637  	ucp_Tirhuta         = 56
  2638  	ucp_Multani         = 57
  2639  	ucp_Adlam           = 58
  2640  	ucp_Masaram_Gondi   = 59
  2641  	ucp_Dogra           = 60
  2642  	ucp_Gunjala_Gondi   = 61
  2643  	ucp_Hanifi_Rohingya = 62
  2644  	ucp_Sogdian         = 63
  2645  	ucp_Nandinagari     = 64
  2646  	ucp_Yezidi          = 65
  2647  	ucp_Cypro_Minoan    = 66
  2648  	ucp_Old_Uyghur      = 67
  2649  
  2650  	// Scripts which has no characters in other scripts.
  2651  	ucp_Unknown                = 68
  2652  	ucp_Common                 = 69
  2653  	ucp_Armenian               = 70
  2654  	ucp_Hebrew                 = 71
  2655  	ucp_Thai                   = 72
  2656  	ucp_Lao                    = 73
  2657  	ucp_Tibetan                = 74
  2658  	ucp_Ethiopic               = 75
  2659  	ucp_Cherokee               = 76
  2660  	ucp_Canadian_Aboriginal    = 77
  2661  	ucp_Ogham                  = 78
  2662  	ucp_Runic                  = 79
  2663  	ucp_Khmer                  = 80
  2664  	ucp_Old_Italic             = 81
  2665  	ucp_Gothic                 = 82
  2666  	ucp_Deseret                = 83
  2667  	ucp_Inherited              = 84
  2668  	ucp_Ugaritic               = 85
  2669  	ucp_Shavian                = 86
  2670  	ucp_Osmanya                = 87
  2671  	ucp_Braille                = 88
  2672  	ucp_New_Tai_Lue            = 89
  2673  	ucp_Tifinagh               = 90
  2674  	ucp_Old_Persian            = 91
  2675  	ucp_Kharoshthi             = 92
  2676  	ucp_Balinese               = 93
  2677  	ucp_Cuneiform              = 94
  2678  	ucp_Phoenician             = 95
  2679  	ucp_Sundanese              = 96
  2680  	ucp_Lepcha                 = 97
  2681  	ucp_Ol_Chiki               = 98
  2682  	ucp_Vai                    = 99
  2683  	ucp_Saurashtra             = 100
  2684  	ucp_Rejang                 = 101
  2685  	ucp_Lycian                 = 102
  2686  	ucp_Carian                 = 103
  2687  	ucp_Lydian                 = 104
  2688  	ucp_Cham                   = 105
  2689  	ucp_Tai_Tham               = 106
  2690  	ucp_Tai_Viet               = 107
  2691  	ucp_Avestan                = 108
  2692  	ucp_Egyptian_Hieroglyphs   = 109
  2693  	ucp_Samaritan              = 110
  2694  	ucp_Lisu                   = 111
  2695  	ucp_Bamum                  = 112
  2696  	ucp_Meetei_Mayek           = 113
  2697  	ucp_Imperial_Aramaic       = 114
  2698  	ucp_Old_South_Arabian      = 115
  2699  	ucp_Inscriptional_Parthian = 116
  2700  	ucp_Inscriptional_Pahlavi  = 117
  2701  	ucp_Old_Turkic             = 118
  2702  	ucp_Batak                  = 119
  2703  	ucp_Brahmi                 = 120
  2704  	ucp_Meroitic_Cursive       = 121
  2705  	ucp_Meroitic_Hieroglyphs   = 122
  2706  	ucp_Miao                   = 123
  2707  	ucp_Sora_Sompeng           = 124
  2708  	ucp_Caucasian_Albanian     = 125
  2709  	ucp_Bassa_Vah              = 126
  2710  	ucp_Elbasan                = 127
  2711  	ucp_Pahawh_Hmong           = 128
  2712  	ucp_Mende_Kikakui          = 129
  2713  	ucp_Mro                    = 130
  2714  	ucp_Old_North_Arabian      = 131
  2715  	ucp_Nabataean              = 132
  2716  	ucp_Palmyrene              = 133
  2717  	ucp_Pau_Cin_Hau            = 134
  2718  	ucp_Siddham                = 135
  2719  	ucp_Warang_Citi            = 136
  2720  	ucp_Ahom                   = 137
  2721  	ucp_Anatolian_Hieroglyphs  = 138
  2722  	ucp_Hatran                 = 139
  2723  	ucp_Old_Hungarian          = 140
  2724  	ucp_SignWriting            = 141
  2725  	ucp_Bhaiksuki              = 142
  2726  	ucp_Marchen                = 143
  2727  	ucp_Newa                   = 144
  2728  	ucp_Osage                  = 145
  2729  	ucp_Tangut                 = 146
  2730  	ucp_Nushu                  = 147
  2731  	ucp_Soyombo                = 148
  2732  	ucp_Zanabazar_Square       = 149
  2733  	ucp_Makasar                = 150
  2734  	ucp_Medefaidrin            = 151
  2735  	ucp_Old_Sogdian            = 152
  2736  	ucp_Elymaic                = 153
  2737  	ucp_Nyiakeng_Puachue_Hmong = 154
  2738  	ucp_Wancho                 = 155
  2739  	ucp_Chorasmian             = 156
  2740  	ucp_Dives_Akuru            = 157
  2741  	ucp_Khitan_Small_Script    = 158
  2742  	ucp_Tangsa                 = 159
  2743  	ucp_Toto                   = 160
  2744  	ucp_Vithkuqi               = 161
  2745  
  2746  	// This must be last
  2747  	ucp_Script_Count = 162
  2748  )
  2749  
  2750  // Undefine the list macros; they are no longer needed.
  2751  
  2752  // PCRE2_CODE_UNIT_WIDTH must be defined. If it is 8, 16, or 32, redefine
  2753  // PCRE2_SUFFIX to use it. If it is 0, undefine the other macros and make
  2754  // PCRE2_SUFFIX a no-op. Otherwise, generate an error.
  2755  
  2756  // End of pcre2.h
  2757  // ************************************************
  2758  //
  2759  //      Perl-Compatible Regular Expressions       *
  2760  //
  2761  
  2762  // PCRE is a library of functions to support regular expressions whose syntax
  2763  // and semantics are as close as possible to those of the Perl 5 language.
  2764  //
  2765  //                        Written by Philip Hazel
  2766  //      Original API code Copyright (c) 1997-2012 University of Cambridge
  2767  //           New API code Copyright (c) 2016-2022 University of Cambridge
  2768  //
  2769  // This module is auto-generated from Unicode data files. DO NOT EDIT MANUALLY!
  2770  // Instead, modify the maint/GenerateUcpHeader.py script and run it to generate
  2771  // a new version of this code.
  2772  //
  2773  // -----------------------------------------------------------------------------
  2774  // Redistribution and use in source and binary forms, with or without
  2775  // modification, are permitted provided that the following conditions are met:
  2776  //
  2777  //     * Redistributions of source code must retain the above copyright notice,
  2778  //       this list of conditions and the following disclaimer.
  2779  //
  2780  //     * Redistributions in binary form must reproduce the above copyright
  2781  //       notice, this list of conditions and the following disclaimer in the
  2782  //       documentation and/or other materials provided with the distribution.
  2783  //
  2784  //     * Neither the name of the University of Cambridge nor the names of its
  2785  //       contributors may be used to endorse or promote products derived from
  2786  //       this software without specific prior written permission.
  2787  //
  2788  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  2789  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2790  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2791  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  2792  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  2793  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  2794  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  2795  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  2796  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  2797  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  2798  // POSSIBILITY OF SUCH DAMAGE.
  2799  // -----------------------------------------------------------------------------
  2800  
  2801  // This file contains definitions of the Unicode property values that are
  2802  // returned by the UCD access macros and used throughout PCRE2.
  2803  //
  2804  // IMPORTANT: The specific values of the first two enums (general and particular
  2805  // character categories) are assumed by the table called catposstab in the file
  2806  // pcre2_auto_possess.c. They are unlikely to change, but should be checked after
  2807  // an update.
  2808  
  2809  // These are the general character categories.
  2810  
  2811  const ( /* pcre2_ucp.h:58:1: */
  2812  	ucp_C = 0
  2813  	ucp_L = 1
  2814  	ucp_M = 2
  2815  	ucp_N = 3
  2816  	ucp_P = 4
  2817  	ucp_S = 5
  2818  	ucp_Z = 6
  2819  )
  2820  
  2821  // These are the particular character categories.
  2822  
  2823  const ( /* pcre2_ucp.h:70:1: */
  2824  	ucp_Cc = 0  // Control
  2825  	ucp_Cf = 1  // Format
  2826  	ucp_Cn = 2  // Unassigned
  2827  	ucp_Co = 3  // Private use
  2828  	ucp_Cs = 4  // Surrogate
  2829  	ucp_Ll = 5  // Lower case letter
  2830  	ucp_Lm = 6  // Modifier letter
  2831  	ucp_Lo = 7  // Other letter
  2832  	ucp_Lt = 8  // Title case letter
  2833  	ucp_Lu = 9  // Upper case letter
  2834  	ucp_Mc = 10 // Spacing mark
  2835  	ucp_Me = 11 // Enclosing mark
  2836  	ucp_Mn = 12 // Non-spacing mark
  2837  	ucp_Nd = 13 // Decimal number
  2838  	ucp_Nl = 14 // Letter number
  2839  	ucp_No = 15 // Other number
  2840  	ucp_Pc = 16 // Connector punctuation
  2841  	ucp_Pd = 17 // Dash punctuation
  2842  	ucp_Pe = 18 // Close punctuation
  2843  	ucp_Pf = 19 // Final punctuation
  2844  	ucp_Pi = 20 // Initial punctuation
  2845  	ucp_Po = 21 // Other punctuation
  2846  	ucp_Ps = 22 // Open punctuation
  2847  	ucp_Sc = 23 // Currency symbol
  2848  	ucp_Sk = 24 // Modifier symbol
  2849  	ucp_Sm = 25 // Mathematical symbol
  2850  	ucp_So = 26 // Other symbol
  2851  	ucp_Zl = 27 // Line separator
  2852  	ucp_Zp = 28 // Paragraph separator
  2853  	ucp_Zs = 29
  2854  )
  2855  
  2856  type Tptrdiff_t = int64 /* <builtin>:3:26 */
  2857  
  2858  type Tsize_t = uint64 /* <builtin>:9:23 */
  2859  
  2860  type Twchar_t = int32 /* <builtin>:15:24 */
  2861  
  2862  type T__int128_t = struct {
  2863  	Flo int64
  2864  	Fhi int64
  2865  } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
  2866  type T__uint128_t = struct {
  2867  	Flo uint64
  2868  	Fhi uint64
  2869  } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
  2870  
  2871  type T__builtin_va_list = uintptr /* <builtin>:46:14 */
  2872  type T__float128 = float64        /* <builtin>:47:21 */
  2873  
  2874  var X__darwin_check_fd_set_overflow uintptr /* <builtin>:146:5: */
  2875  
  2876  // ************************************************
  2877  //
  2878  //      Perl-Compatible Regular Expressions       *
  2879  //
  2880  
  2881  // PCRE is a library of functions to support regular expressions whose syntax
  2882  // and semantics are as close as possible to those of the Perl 5 language.
  2883  //
  2884  //                        Written by Philip Hazel
  2885  //      Original API code Copyright (c) 1997-2012 University of Cambridge
  2886  //           New API code Copyright (c) 2016-2022 University of Cambridge
  2887  //
  2888  // -----------------------------------------------------------------------------
  2889  // Redistribution and use in source and binary forms, with or without
  2890  // modification, are permitted provided that the following conditions are met:
  2891  //
  2892  //     * Redistributions of source code must retain the above copyright notice,
  2893  //       this list of conditions and the following disclaimer.
  2894  //
  2895  //     * Redistributions in binary form must reproduce the above copyright
  2896  //       notice, this list of conditions and the following disclaimer in the
  2897  //       documentation and/or other materials provided with the distribution.
  2898  //
  2899  //     * Neither the name of the University of Cambridge nor the names of its
  2900  //       contributors may be used to endorse or promote products derived from
  2901  //       this software without specific prior written permission.
  2902  //
  2903  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  2904  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2905  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2906  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  2907  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  2908  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  2909  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  2910  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  2911  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  2912  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  2913  // POSSIBILITY OF SUCH DAMAGE.
  2914  // -----------------------------------------------------------------------------
  2915  
  2916  // This module contains functions that scan a compiled pattern and change
  2917  // repeats into possessive repeats where possible.
  2918  
  2919  // src/config.h.  Generated from config.h.in by configure.
  2920  // src/config.h.in.  Generated from configure.ac by autoheader.
  2921  
  2922  // PCRE2 is written in Standard C, but there are a few non-standard things it
  2923  // can cope with, allowing it to run on SunOS4 and other "close to standard"
  2924  // systems.
  2925  //
  2926  // In environments that support the GNU autotools, config.h.in is converted into
  2927  // config.h by the "configure" script. In environments that use CMake,
  2928  // config-cmake.in is converted into config.h. If you are going to build PCRE2 "by
  2929  // hand" without using "configure" or CMake, you should copy the distributed
  2930  // config.h.generic to config.h, and edit the macro definitions to be the way you
  2931  // need them. You must then add -DHAVE_CONFIG_H to all of your compile commands,
  2932  // so that config.h is included at the start of every source.
  2933  //
  2934  // Alternatively, you can avoid editing by using -D on the compiler command line
  2935  // to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H,
  2936  // but if you do, default values will be taken from config.h for non-boolean
  2937  // macros that are not defined on the command line.
  2938  //
  2939  // Boolean macros such as HAVE_STDLIB_H and SUPPORT_PCRE2_8 should either be
  2940  // defined (conventionally to 1) for TRUE, and not defined at all for FALSE. All
  2941  // such macros are listed as a commented #undef in config.h.generic. Macros such
  2942  // as MATCH_LIMIT, whose actual value is relevant, have defaults defined, but are
  2943  // surrounded by #ifndef/#endif lines so that the value can be overridden by -D.
  2944  //
  2945  // PCRE2 uses memmove() if HAVE_MEMMOVE is defined; otherwise it uses bcopy() if
  2946  // HAVE_BCOPY is defined. If your system has neither bcopy() nor memmove(), make
  2947  // sure both macros are undefined; an emulation function will then be used.
  2948  
  2949  // By default, the \R escape sequence matches any Unicode line ending
  2950  //    character or sequence of characters. If BSR_ANYCRLF is defined (to any
  2951  //    value), this is changed so that backslash-R matches only CR, LF, or CRLF.
  2952  //    The build-time default can be overridden by the user of PCRE2 at runtime.
  2953  //
  2954  // #undef BSR_ANYCRLF
  2955  
  2956  // Define to any value to disable the use of the z and t modifiers in
  2957  //    formatting settings such as %zu or %td (this is rarely needed).
  2958  // #undef DISABLE_PERCENT_ZT
  2959  
  2960  // If you are compiling for a system that uses EBCDIC instead of ASCII
  2961  //    character codes, define this macro to any value. When EBCDIC is set, PCRE2
  2962  //    assumes that all input strings are in EBCDIC. If you do not define this
  2963  //    macro, PCRE2 will assume input strings are ASCII or UTF-8/16/32 Unicode. It
  2964  //    is not possible to build a version of PCRE2 that supports both EBCDIC and
  2965  //    UTF-8/16/32.
  2966  // #undef EBCDIC
  2967  
  2968  // In an EBCDIC environment, define this macro to any value to arrange for the
  2969  //    NL character to be 0x25 instead of the default 0x15. NL plays the role that
  2970  //    LF does in an ASCII/Unicode environment.
  2971  // #undef EBCDIC_NL25
  2972  
  2973  // Define this if your compiler supports __attribute__((uninitialized))
  2974  
  2975  // Define to 1 if you have the `bcopy' function.
  2976  
  2977  // Define to 1 if you have the <bzlib.h> header file.
  2978  
  2979  // Define to 1 if you have the <dirent.h> header file.
  2980  
  2981  // Define to 1 if you have the <dlfcn.h> header file.
  2982  
  2983  // Define to 1 if you have the <editline/readline.h> header file.
  2984  // #undef HAVE_EDITLINE_READLINE_H
  2985  
  2986  // Define to 1 if you have the <edit/readline/readline.h> header file.
  2987  // #undef HAVE_EDIT_READLINE_READLINE_H
  2988  
  2989  // Define to 1 if you have the <inttypes.h> header file.
  2990  
  2991  // Define to 1 if you have the <limits.h> header file.
  2992  
  2993  // Define to 1 if you have the `memfd_create' function.
  2994  // #undef HAVE_MEMFD_CREATE
  2995  
  2996  // Define to 1 if you have the `memmove' function.
  2997  
  2998  // Define to 1 if you have the <minix/config.h> header file.
  2999  // #undef HAVE_MINIX_CONFIG_H
  3000  
  3001  // Define to 1 if you have the `mkostemp' function.
  3002  
  3003  // Define if you have POSIX threads libraries and header files.
  3004  // #undef HAVE_PTHREAD
  3005  
  3006  // Have PTHREAD_PRIO_INHERIT.
  3007  // #undef HAVE_PTHREAD_PRIO_INHERIT
  3008  
  3009  // Define to 1 if you have the <readline.h> header file.
  3010  // #undef HAVE_READLINE_H
  3011  
  3012  // Define to 1 if you have the <readline/history.h> header file.
  3013  // #undef HAVE_READLINE_HISTORY_H
  3014  
  3015  // Define to 1 if you have the <readline/readline.h> header file.
  3016  // #undef HAVE_READLINE_READLINE_H
  3017  
  3018  // Define to 1 if you have the `realpath' function.
  3019  
  3020  // Define to 1 if you have the `secure_getenv' function.
  3021  // #undef HAVE_SECURE_GETENV
  3022  
  3023  // Define to 1 if you have the <stdint.h> header file.
  3024  
  3025  // Define to 1 if you have the <stdio.h> header file.
  3026  
  3027  // Define to 1 if you have the <stdlib.h> header file.
  3028  
  3029  // Define to 1 if you have the `strerror' function.
  3030  
  3031  // Define to 1 if you have the <strings.h> header file.
  3032  
  3033  // Define to 1 if you have the <string.h> header file.
  3034  
  3035  // Define to 1 if you have the <sys/stat.h> header file.
  3036  
  3037  // Define to 1 if you have the <sys/types.h> header file.
  3038  
  3039  // Define to 1 if you have the <sys/wait.h> header file.
  3040  
  3041  // Define to 1 if you have the <unistd.h> header file.
  3042  
  3043  // Define to 1 if the compiler supports simple visibility declarations.
  3044  
  3045  // Define to 1 if you have the <wchar.h> header file.
  3046  
  3047  // Define to 1 if you have the <windows.h> header file.
  3048  // #undef HAVE_WINDOWS_H
  3049  
  3050  // Define to 1 if you have the <zlib.h> header file.
  3051  
  3052  // This limits the amount of memory that may be used while matching a pattern.
  3053  //    It applies to both pcre2_match() and pcre2_dfa_match(). It does not apply
  3054  //    to JIT matching. The value is in kibibytes (units of 1024 bytes).
  3055  
  3056  // The value of LINK_SIZE determines the number of bytes used to store links
  3057  //    as offsets within the compiled regex. The default is 2, which allows for
  3058  //    compiled patterns up to 65535 code units long. This covers the vast
  3059  //    majority of cases. However, PCRE2 can also be compiled to use 3 or 4 bytes
  3060  //    instead. This allows for longer patterns in extreme cases.
  3061  
  3062  // Define to the sub-directory where libtool stores uninstalled libraries.
  3063  
  3064  // The value of MATCH_LIMIT determines the default number of times the
  3065  //    pcre2_match() function can record a backtrack position during a single
  3066  //    matching attempt. The value is also used to limit a loop counter in
  3067  //    pcre2_dfa_match(). There is a runtime interface for setting a different
  3068  //    limit. The limit exists in order to catch runaway regular expressions that
  3069  //    take for ever to determine that they do not match. The default is set very
  3070  //    large so that it does not accidentally catch legitimate cases.
  3071  
  3072  // The above limit applies to all backtracks, whether or not they are nested.
  3073  //    In some environments it is desirable to limit the nesting of backtracking
  3074  //    (that is, the depth of tree that is searched) more strictly, in order to
  3075  //    restrict the maximum amount of heap memory that is used. The value of
  3076  //    MATCH_LIMIT_DEPTH provides this facility. To have any useful effect, it
  3077  //    must be less than the value of MATCH_LIMIT. The default is to use the same
  3078  //    value as MATCH_LIMIT. There is a runtime method for setting a different
  3079  //    limit. In the case of pcre2_dfa_match(), this limit controls the depth of
  3080  //    the internal nested function calls that are used for pattern recursions,
  3081  //    lookarounds, and atomic groups.
  3082  
  3083  // This limit is parameterized just in case anybody ever wants to change it.
  3084  //    Care must be taken if it is increased, because it guards against integer
  3085  //    overflow caused by enormously large patterns.
  3086  
  3087  // This limit is parameterized just in case anybody ever wants to change it.
  3088  //    Care must be taken if it is increased, because it guards against integer
  3089  //    overflow caused by enormously large patterns.
  3090  
  3091  // Defining NEVER_BACKSLASH_C locks out the use of \C in all patterns.
  3092  // #undef NEVER_BACKSLASH_C
  3093  
  3094  // The value of NEWLINE_DEFAULT determines the default newline character
  3095  //    sequence. PCRE2 client programs can override this by selecting other values
  3096  //    at run time. The valid values are 1 (CR), 2 (LF), 3 (CRLF), 4 (ANY), 5
  3097  //    (ANYCRLF), and 6 (NUL).
  3098  
  3099  // Name of package
  3100  
  3101  // Define to the address where bug reports for this package should be sent.
  3102  
  3103  // Define to the full name of this package.
  3104  
  3105  // Define to the full name and version of this package.
  3106  
  3107  // Define to the one symbol short name of this package.
  3108  
  3109  // Define to the home page for this package.
  3110  
  3111  // Define to the version of this package.
  3112  
  3113  // The value of PARENS_NEST_LIMIT specifies the maximum depth of nested
  3114  //    parentheses (of any kind) in a pattern. This limits the amount of system
  3115  //    stack that is used while compiling a pattern.
  3116  
  3117  // The value of PCRE2GREP_BUFSIZE is the starting size of the buffer used by
  3118  //    pcre2grep to hold parts of the file it is searching. The buffer will be
  3119  //    expanded up to PCRE2GREP_MAX_BUFSIZE if necessary, for files containing
  3120  //    very long lines. The actual amount of memory used by pcre2grep is three
  3121  //    times this number, because it allows for the buffering of "before" and
  3122  //    "after" lines.
  3123  
  3124  // The value of PCRE2GREP_MAX_BUFSIZE specifies the maximum size of the buffer
  3125  //    used by pcre2grep to hold parts of the file it is searching. The actual
  3126  //    amount of memory used by pcre2grep is three times this number, because it
  3127  //    allows for the buffering of "before" and "after" lines.
  3128  
  3129  // to make a symbol visible
  3130  
  3131  // to make a symbol visible
  3132  
  3133  // Define to any value to include debugging code.
  3134  // #undef PCRE2_DEBUG
  3135  
  3136  // to make a symbol visible
  3137  
  3138  // If you are compiling for a system other than a Unix-like system or
  3139  //    Win32, and it needs some magic to be inserted before the definition
  3140  //    of a function that is exported by the library, define this macro to
  3141  //    contain the relevant magic. If you do not define this macro, a suitable
  3142  //     __declspec value is used for Windows systems; in other environments
  3143  //    "extern" is used for a C compiler and "extern C" for a C++ compiler.
  3144  //    This macro apears at the start of every exported function that is part
  3145  //    of the external API. It does not appear on functions that are "external"
  3146  //    in the C sense, but which are internal to the library.
  3147  
  3148  // Define to any value if linking statically (TODO: make nice with Libtool)
  3149  // #undef PCRE2_STATIC
  3150  
  3151  // Define to necessary symbol if this constant uses a non-standard name on
  3152  //    your system.
  3153  // #undef PTHREAD_CREATE_JOINABLE
  3154  
  3155  // Define to any non-zero number to enable support for SELinux compatible
  3156  //    executable memory allocator in JIT. Note that this will have no effect
  3157  //    unless SUPPORT_JIT is also defined.
  3158  // #undef SLJIT_PROT_EXECUTABLE_ALLOCATOR
  3159  
  3160  // Define to 1 if all of the C90 standard headers exist (not just the ones
  3161  //    required in a freestanding environment). This macro is provided for
  3162  //    backward compatibility; new code need not use it.
  3163  
  3164  // Define to any value to enable support for Just-In-Time compiling.
  3165  // #undef SUPPORT_JIT
  3166  
  3167  // Define to any value to allow pcre2grep to be linked with libbz2, so that it
  3168  //    is able to handle .bz2 files.
  3169  // #undef SUPPORT_LIBBZ2
  3170  
  3171  // Define to any value to allow pcre2test to be linked with libedit.
  3172  // #undef SUPPORT_LIBEDIT
  3173  
  3174  // Define to any value to allow pcre2test to be linked with libreadline.
  3175  // #undef SUPPORT_LIBREADLINE
  3176  
  3177  // Define to any value to allow pcre2grep to be linked with libz, so that it
  3178  //    is able to handle .gz files.
  3179  // #undef SUPPORT_LIBZ
  3180  
  3181  // Define to any value to enable callout script support in pcre2grep.
  3182  
  3183  // Define to any value to enable fork support in pcre2grep callout scripts.
  3184  //    This will have no effect unless SUPPORT_PCRE2GREP_CALLOUT is also defined.
  3185  //
  3186  
  3187  // Define to any value to enable JIT support in pcre2grep. Note that this will
  3188  //    have no effect unless SUPPORT_JIT is also defined.
  3189  // #undef SUPPORT_PCRE2GREP_JIT
  3190  
  3191  // Define to any value to enable the 16 bit PCRE2 library.
  3192  // #undef SUPPORT_PCRE2_16
  3193  
  3194  // Define to any value to enable the 32 bit PCRE2 library.
  3195  // #undef SUPPORT_PCRE2_32
  3196  
  3197  // Define to any value to enable the 8 bit PCRE2 library.
  3198  
  3199  // Define to any value to enable support for Unicode and UTF encoding. This
  3200  //    will work even in an EBCDIC environment, but it is incompatible with the
  3201  //    EBCDIC macro. That is, PCRE2 can support *either* EBCDIC code *or*
  3202  //    ASCII/Unicode, but not both at once.
  3203  
  3204  // Define to any value for valgrind support to find invalid memory reads.
  3205  // #undef SUPPORT_VALGRIND
  3206  
  3207  // Enable extensions on AIX 3, Interix.
  3208  // Enable general extensions on macOS.
  3209  // Enable general extensions on Solaris.
  3210  // Enable GNU extensions on systems that have them.
  3211  // Enable X/Open compliant socket functions that do not require linking
  3212  //    with -lxnet on HP-UX 11.11.
  3213  // Identify the host operating system as Minix.
  3214  //    This macro does not affect the system headers' behavior.
  3215  //    A future release of Autoconf may stop defining this macro.
  3216  // # undef _MINIX
  3217  // Enable general extensions on NetBSD.
  3218  //    Enable NetBSD compatibility extensions on Minix.
  3219  // Enable OpenBSD compatibility extensions on NetBSD.
  3220  //    Oddly enough, this does nothing on OpenBSD.
  3221  // Define to 1 if needed for POSIX-compatible behavior.
  3222  // # undef _POSIX_SOURCE
  3223  // Define to 2 if needed for POSIX-compatible behavior.
  3224  // # undef _POSIX_1_SOURCE
  3225  // Enable POSIX-compatible threading on Solaris.
  3226  // Enable extensions specified by ISO/IEC TS 18661-5:2014.
  3227  // Enable extensions specified by ISO/IEC TS 18661-1:2014.
  3228  // Enable extensions specified by ISO/IEC TS 18661-2:2015.
  3229  // Enable extensions specified by ISO/IEC TS 18661-4:2015.
  3230  // Enable extensions specified by ISO/IEC TS 18661-3:2015.
  3231  // Enable extensions specified by ISO/IEC TR 24731-2:2010.
  3232  // Enable extensions specified by ISO/IEC 24747:2009.
  3233  // Enable extensions on HP NonStop.
  3234  // Enable X/Open extensions.  Define to 500 only if necessary
  3235  //    to make mbstate_t available.
  3236  // # undef _XOPEN_SOURCE
  3237  
  3238  // Version number of package
  3239  
  3240  // Define to empty if `const' does not conform to ANSI C.
  3241  // #undef const
  3242  
  3243  // Define to the type of a signed integer type of width exactly 64 bits if
  3244  //    such a type exists and the standard includes do not define it.
  3245  // #undef int64_t
  3246  
  3247  // Define to `unsigned int' if <sys/types.h> does not define.
  3248  // #undef size_t
  3249  
  3250  // ************************************************
  3251  //
  3252  //      Perl-Compatible Regular Expressions       *
  3253  //
  3254  
  3255  // PCRE2 is a library of functions to support regular expressions whose syntax
  3256  // and semantics are as close as possible to those of the Perl 5 language.
  3257  //
  3258  //                        Written by Philip Hazel
  3259  //      Original API code Copyright (c) 1997-2012 University of Cambridge
  3260  //           New API code Copyright (c) 2016-2022 University of Cambridge
  3261  //
  3262  // -----------------------------------------------------------------------------
  3263  // Redistribution and use in source and binary forms, with or without
  3264  // modification, are permitted provided that the following conditions are met:
  3265  //
  3266  //     * Redistributions of source code must retain the above copyright notice,
  3267  //       this list of conditions and the following disclaimer.
  3268  //
  3269  //     * Redistributions in binary form must reproduce the above copyright
  3270  //       notice, this list of conditions and the following disclaimer in the
  3271  //       documentation and/or other materials provided with the distribution.
  3272  //
  3273  //     * Neither the name of the University of Cambridge nor the names of its
  3274  //       contributors may be used to endorse or promote products derived from
  3275  //       this software without specific prior written permission.
  3276  //
  3277  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  3278  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  3279  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  3280  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  3281  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  3282  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  3283  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  3284  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  3285  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  3286  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  3287  // POSSIBILITY OF SUCH DAMAGE.
  3288  // -----------------------------------------------------------------------------
  3289  
  3290  // We do not support both EBCDIC and Unicode at the same time. The "configure"
  3291  // script prevents both being selected, but not everybody uses "configure". EBCDIC
  3292  // is only supported for the 8-bit library, but the check for this has to be later
  3293  // in this file, because the first part is not width-dependent, and is included by
  3294  // pcre2test.c with CODE_UNIT_WIDTH == 0.
  3295  
  3296  // Standard C headers
  3297  
  3298  // Copyright (c) 2000, 2005, 2008 Apple Inc. All rights reserved.
  3299  //
  3300  // @APPLE_LICENSE_HEADER_START@
  3301  //
  3302  // This file contains Original Code and/or Modifications of Original Code
  3303  // as defined in and that are subject to the Apple Public Source License
  3304  // Version 2.0 (the 'License'). You may not use this file except in
  3305  // compliance with the License. Please obtain a copy of the License at
  3306  // http://www.opensource.apple.com/apsl/ and read it before using this
  3307  // file.
  3308  //
  3309  // The Original Code and all software distributed under the License are
  3310  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3311  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3312  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3313  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3314  // Please see the License for the specific language governing rights and
  3315  // limitations under the License.
  3316  //
  3317  // @APPLE_LICENSE_HEADER_END@
  3318  // Copyright (c) 1989, 1993
  3319  //	The Regents of the University of California.  All rights reserved.
  3320  // (c) UNIX System Laboratories, Inc.
  3321  // All or some portions of this file are derived from material licensed
  3322  // to the University of California by American Telephone and Telegraph
  3323  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  3324  // the permission of UNIX System Laboratories, Inc.
  3325  //
  3326  // This code is derived from software contributed to Berkeley by
  3327  // Paul Borman at Krystal Technologies.
  3328  //
  3329  // Redistribution and use in source and binary forms, with or without
  3330  // modification, are permitted provided that the following conditions
  3331  // are met:
  3332  // 1. Redistributions of source code must retain the above copyright
  3333  //    notice, this list of conditions and the following disclaimer.
  3334  // 2. Redistributions in binary form must reproduce the above copyright
  3335  //    notice, this list of conditions and the following disclaimer in the
  3336  //    documentation and/or other materials provided with the distribution.
  3337  // 3. All advertising materials mentioning features or use of this software
  3338  //    must display the following acknowledgement:
  3339  //	This product includes software developed by the University of
  3340  //	California, Berkeley and its contributors.
  3341  // 4. Neither the name of the University nor the names of its contributors
  3342  //    may be used to endorse or promote products derived from this software
  3343  //    without specific prior written permission.
  3344  //
  3345  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  3346  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  3347  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  3348  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  3349  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  3350  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  3351  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  3352  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  3353  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  3354  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  3355  // SUCH DAMAGE.
  3356  //
  3357  //	@(#)ctype.h	8.4 (Berkeley) 1/21/94
  3358  
  3359  // Copyright (c) 2000, 2005, 2008 Apple Inc. All rights reserved.
  3360  //
  3361  // @APPLE_LICENSE_HEADER_START@
  3362  //
  3363  // This file contains Original Code and/or Modifications of Original Code
  3364  // as defined in and that are subject to the Apple Public Source License
  3365  // Version 2.0 (the 'License'). You may not use this file except in
  3366  // compliance with the License. Please obtain a copy of the License at
  3367  // http://www.opensource.apple.com/apsl/ and read it before using this
  3368  // file.
  3369  //
  3370  // The Original Code and all software distributed under the License are
  3371  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3372  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3373  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3374  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3375  // Please see the License for the specific language governing rights and
  3376  // limitations under the License.
  3377  //
  3378  // @APPLE_LICENSE_HEADER_END@
  3379  // Copyright (c) 1989, 1993
  3380  //	The Regents of the University of California.  All rights reserved.
  3381  // (c) UNIX System Laboratories, Inc.
  3382  // All or some portions of this file are derived from material licensed
  3383  // to the University of California by American Telephone and Telegraph
  3384  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  3385  // the permission of UNIX System Laboratories, Inc.
  3386  //
  3387  // This code is derived from software contributed to Berkeley by
  3388  // Paul Borman at Krystal Technologies.
  3389  //
  3390  // Redistribution and use in source and binary forms, with or without
  3391  // modification, are permitted provided that the following conditions
  3392  // are met:
  3393  // 1. Redistributions of source code must retain the above copyright
  3394  //    notice, this list of conditions and the following disclaimer.
  3395  // 2. Redistributions in binary form must reproduce the above copyright
  3396  //    notice, this list of conditions and the following disclaimer in the
  3397  //    documentation and/or other materials provided with the distribution.
  3398  // 3. All advertising materials mentioning features or use of this software
  3399  //    must display the following acknowledgement:
  3400  //	This product includes software developed by the University of
  3401  //	California, Berkeley and its contributors.
  3402  // 4. Neither the name of the University nor the names of its contributors
  3403  //    may be used to endorse or promote products derived from this software
  3404  //    without specific prior written permission.
  3405  //
  3406  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  3407  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  3408  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  3409  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  3410  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  3411  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  3412  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  3413  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  3414  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  3415  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  3416  // SUCH DAMAGE.
  3417  //
  3418  //	@(#)ctype.h	8.4 (Berkeley) 1/21/94
  3419  
  3420  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  3421  //
  3422  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  3423  //
  3424  // This file contains Original Code and/or Modifications of Original Code
  3425  // as defined in and that are subject to the Apple Public Source License
  3426  // Version 2.0 (the 'License'). You may not use this file except in
  3427  // compliance with the License. The rights granted to you under the License
  3428  // may not be used to create, or enable the creation or redistribution of,
  3429  // unlawful or unlicensed copies of an Apple operating system, or to
  3430  // circumvent, violate, or enable the circumvention or violation of, any
  3431  // terms of an Apple operating system software license agreement.
  3432  //
  3433  // Please obtain a copy of the License at
  3434  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  3435  //
  3436  // The Original Code and all software distributed under the License are
  3437  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3438  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3439  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3440  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3441  // Please see the License for the specific language governing rights and
  3442  // limitations under the License.
  3443  //
  3444  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  3445  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  3446  // Copyright (c) 1991, 1993
  3447  //	The Regents of the University of California.  All rights reserved.
  3448  //
  3449  // This code is derived from software contributed to Berkeley by
  3450  // Berkeley Software Design, Inc.
  3451  //
  3452  // Redistribution and use in source and binary forms, with or without
  3453  // modification, are permitted provided that the following conditions
  3454  // are met:
  3455  // 1. Redistributions of source code must retain the above copyright
  3456  //    notice, this list of conditions and the following disclaimer.
  3457  // 2. Redistributions in binary form must reproduce the above copyright
  3458  //    notice, this list of conditions and the following disclaimer in the
  3459  //    documentation and/or other materials provided with the distribution.
  3460  // 3. All advertising materials mentioning features or use of this software
  3461  //    must display the following acknowledgement:
  3462  //	This product includes software developed by the University of
  3463  //	California, Berkeley and its contributors.
  3464  // 4. Neither the name of the University nor the names of its contributors
  3465  //    may be used to endorse or promote products derived from this software
  3466  //    without specific prior written permission.
  3467  //
  3468  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  3469  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  3470  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  3471  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  3472  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  3473  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  3474  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  3475  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  3476  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  3477  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  3478  // SUCH DAMAGE.
  3479  //
  3480  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  3481  
  3482  // This SDK is designed to work with clang and specific versions of
  3483  // gcc >= 4.0 with Apple's patch sets
  3484  
  3485  // Compatibility with compilers and environments that don't support compiler
  3486  // feature checking function-like macros.
  3487  
  3488  // The __CONCAT macro is used to concatenate parts of symbol names, e.g.
  3489  // with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
  3490  // The __CONCAT macro is a bit tricky -- make sure you don't put spaces
  3491  // in between its arguments.  __CONCAT can also concatenate double-quoted
  3492  // strings produced by the __STRING macro, but this only works with ANSI C.
  3493  
  3494  // In non-ANSI C environments, new programs will want ANSI-only C keywords
  3495  // deleted from the program and old programs will want them left alone.
  3496  // When using a compiler other than gcc, programs using the ANSI C keywords
  3497  // const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
  3498  // When using "gcc -traditional", we assume that this is the intent; if
  3499  // __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
  3500  
  3501  // __pure2 can be used for functions that are only a function of their scalar
  3502  // arguments (meaning they can't dereference pointers).
  3503  //
  3504  // __stateful_pure can be used for functions that have no side effects,
  3505  // but depend on the state of the memory.
  3506  
  3507  // __unused denotes variables and functions that may not be used, preventing
  3508  // the compiler from warning about it if not used.
  3509  
  3510  // __used forces variables and functions to be included even if it appears
  3511  // to the compiler that they are not used (and would thust be discarded).
  3512  
  3513  // __cold marks code used for debugging or that is rarely taken
  3514  // and tells the compiler to optimize for size and outline code.
  3515  
  3516  // __exported denotes symbols that should be exported even when symbols
  3517  // are hidden by default.
  3518  // __exported_push/_exported_pop are pragmas used to delimit a range of
  3519  //  symbols that should be exported even when symbols are hidden by default.
  3520  
  3521  // __deprecated causes the compiler to produce a warning when encountering
  3522  // code using the deprecated functionality.
  3523  // __deprecated_msg() does the same, and compilers that support it will print
  3524  // a message along with the deprecation warning.
  3525  // This may require turning on such warning with the -Wdeprecated flag.
  3526  // __deprecated_enum_msg() should be used on enums, and compilers that support
  3527  // it will print the deprecation warning.
  3528  // __kpi_deprecated() specifically indicates deprecation of kernel programming
  3529  // interfaces in Kernel.framework used by KEXTs.
  3530  
  3531  // __unavailable causes the compiler to error out when encountering
  3532  // code using the tagged function
  3533  
  3534  // Delete pseudo-keywords wherever they are not available or needed.
  3535  
  3536  // We use `__restrict' as a way to define the `restrict' type qualifier
  3537  // without disturbing older software that is unaware of C99 keywords.
  3538  
  3539  // Compatibility with compilers and environments that don't support the
  3540  // nullability feature.
  3541  
  3542  // __disable_tail_calls causes the compiler to not perform tail call
  3543  // optimization inside the marked function.
  3544  
  3545  // __not_tail_called causes the compiler to prevent tail call optimization
  3546  // on statically bound calls to the function.  It has no effect on indirect
  3547  // calls.  Virtual functions, objective-c methods, and functions marked as
  3548  // "always_inline" cannot be marked as __not_tail_called.
  3549  
  3550  // __result_use_check warns callers of a function that not using the function
  3551  // return value is a bug, i.e. dismissing malloc() return value results in a
  3552  // memory leak.
  3553  
  3554  // __swift_unavailable causes the compiler to mark a symbol as specifically
  3555  // unavailable in Swift, regardless of any other availability in C.
  3556  
  3557  // __abortlike is the attribute to put on functions like abort() that are
  3558  // typically used to mark assertions. These optimize the codegen
  3559  // for outlining while still maintaining debugability.
  3560  
  3561  // Declaring inline functions within headers is error-prone due to differences
  3562  // across various versions of the C language and extensions.  __header_inline
  3563  // can be used to declare inline functions within system headers.  In cases
  3564  // where you want to force inlining instead of letting the compiler make
  3565  // the decision, you can use __header_always_inline.
  3566  //
  3567  // Be aware that using inline for functions which compilers may also provide
  3568  // builtins can behave differently under various compilers.  If you intend to
  3569  // provide an inline version of such a function, you may want to use a macro
  3570  // instead.
  3571  //
  3572  // The check for !__GNUC__ || __clang__ is because gcc doesn't correctly
  3573  // support c99 inline in some cases:
  3574  // http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55965
  3575  
  3576  // Compiler-dependent macros that bracket portions of code where the
  3577  // "-Wunreachable-code" warning should be ignored. Please use sparingly.
  3578  
  3579  // Compiler-dependent macros to declare that functions take printf-like
  3580  // or scanf-like arguments.  They are null except for versions of gcc
  3581  // that are known to support the features properly.  Functions declared
  3582  // with these attributes will cause compilation warnings if there is a
  3583  // mismatch between the format string and subsequent function parameter
  3584  // types.
  3585  
  3586  // Source compatibility only, ID string not emitted in object file
  3587  
  3588  // __alloc_size can be used to label function arguments that represent the
  3589  // size of memory that the function allocates and returns. The one-argument
  3590  // form labels a single argument that gives the allocation size (where the
  3591  // arguments are numbered from 1):
  3592  //
  3593  // void	*malloc(size_t __size) __alloc_size(1);
  3594  //
  3595  // The two-argument form handles the case where the size is calculated as the
  3596  // product of two arguments:
  3597  //
  3598  // void	*calloc(size_t __count, size_t __size) __alloc_size(1,2);
  3599  
  3600  // COMPILATION ENVIRONMENTS -- see compat(5) for additional detail
  3601  //
  3602  // DEFAULT	By default newly complied code will get POSIX APIs plus
  3603  //		Apple API extensions in scope.
  3604  //
  3605  //		Most users will use this compilation environment to avoid
  3606  //		behavioral differences between 32 and 64 bit code.
  3607  //
  3608  // LEGACY	Defining _NONSTD_SOURCE will get pre-POSIX APIs plus Apple
  3609  //		API extensions in scope.
  3610  //
  3611  //		This is generally equivalent to the Tiger release compilation
  3612  //		environment, except that it cannot be applied to 64 bit code;
  3613  //		its use is discouraged.
  3614  //
  3615  //		We expect this environment to be deprecated in the future.
  3616  //
  3617  // STRICT	Defining _POSIX_C_SOURCE or _XOPEN_SOURCE restricts the
  3618  //		available APIs to exactly the set of APIs defined by the
  3619  //		corresponding standard, based on the value defined.
  3620  //
  3621  //		A correct, portable definition for _POSIX_C_SOURCE is 200112L.
  3622  //		A correct, portable definition for _XOPEN_SOURCE is 600L.
  3623  //
  3624  //		Apple API extensions are not visible in this environment,
  3625  //		which can cause Apple specific code to fail to compile,
  3626  //		or behave incorrectly if prototypes are not in scope or
  3627  //		warnings about missing prototypes are not enabled or ignored.
  3628  //
  3629  // In any compilation environment, for correct symbol resolution to occur,
  3630  // function prototypes must be in scope.  It is recommended that all Apple
  3631  // tools users add either the "-Wall" or "-Wimplicit-function-declaration"
  3632  // compiler flags to their projects to be warned when a function is being
  3633  // used without a prototype in scope.
  3634  
  3635  // These settings are particular to each product.
  3636  // Platform: MacOSX
  3637  
  3638  // The __DARWIN_ALIAS macros are used to do symbol renaming; they allow
  3639  // legacy code to use the old symbol, thus maintaining binary compatibility
  3640  // while new code can use a standards compliant version of the same function.
  3641  //
  3642  // __DARWIN_ALIAS is used by itself if the function signature has not
  3643  // changed, it is used along with a #ifdef check for __DARWIN_UNIX03
  3644  // if the signature has changed.  Because the __LP64__ environment
  3645  // only supports UNIX03 semantics it causes __DARWIN_UNIX03 to be
  3646  // defined, but causes __DARWIN_ALIAS to do no symbol mangling.
  3647  //
  3648  // As a special case, when XCode is used to target a specific version of the
  3649  // OS, the manifest constant __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
  3650  // will be defined by the compiler, with the digits representing major version
  3651  // time 100 + minor version times 10 (e.g. 10.5 := 1050).  If we are targeting
  3652  // pre-10.5, and it is the default compilation environment, revert the
  3653  // compilation environment to pre-__DARWIN_UNIX03.
  3654  
  3655  // symbol suffixes used for symbol versioning
  3656  
  3657  // symbol versioning macros
  3658  
  3659  // symbol release macros
  3660  // Copyright (c) 2010 Apple Inc. All rights reserved.
  3661  //
  3662  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  3663  //
  3664  // This file contains Original Code and/or Modifications of Original Code
  3665  // as defined in and that are subject to the Apple Public Source License
  3666  // Version 2.0 (the 'License'). You may not use this file except in
  3667  // compliance with the License. The rights granted to you under the License
  3668  // may not be used to create, or enable the creation or redistribution of,
  3669  // unlawful or unlicensed copies of an Apple operating system, or to
  3670  // circumvent, violate, or enable the circumvention or violation of, any
  3671  // terms of an Apple operating system software license agreement.
  3672  //
  3673  // Please obtain a copy of the License at
  3674  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  3675  //
  3676  // The Original Code and all software distributed under the License are
  3677  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3678  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3679  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3680  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3681  // Please see the License for the specific language governing rights and
  3682  // limitations under the License.
  3683  //
  3684  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  3685  
  3686  // POSIX.1 requires that the macros we test be defined before any standard
  3687  // header file is included.  This permits us to convert values for feature
  3688  // testing, as necessary, using only _POSIX_C_SOURCE.
  3689  //
  3690  // Here's a quick run-down of the versions:
  3691  //  defined(_POSIX_SOURCE)		1003.1-1988
  3692  //  _POSIX_C_SOURCE == 1L		1003.1-1990
  3693  //  _POSIX_C_SOURCE == 2L		1003.2-1992 C Language Binding Option
  3694  //  _POSIX_C_SOURCE == 199309L		1003.1b-1993
  3695  //  _POSIX_C_SOURCE == 199506L		1003.1c-1995, 1003.1i-1995,
  3696  //					and the omnibus ISO/IEC 9945-1: 1996
  3697  //  _POSIX_C_SOURCE == 200112L		1003.1-2001
  3698  //  _POSIX_C_SOURCE == 200809L		1003.1-2008
  3699  //
  3700  // In addition, the X/Open Portability Guide, which is now the Single UNIX
  3701  // Specification, defines a feature-test macro which indicates the version of
  3702  // that specification, and which subsumes _POSIX_C_SOURCE.
  3703  
  3704  // Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1L.
  3705  
  3706  // Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2L.
  3707  
  3708  // Deal with various X/Open Portability Guides and Single UNIX Spec.
  3709  
  3710  // Deal with all versions of POSIX.  The ordering relative to the tests above is
  3711  // important.
  3712  
  3713  // POSIX C deprecation macros
  3714  // Copyright (c) 2010 Apple Inc. All rights reserved.
  3715  //
  3716  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  3717  //
  3718  // This file contains Original Code and/or Modifications of Original Code
  3719  // as defined in and that are subject to the Apple Public Source License
  3720  // Version 2.0 (the 'License'). You may not use this file except in
  3721  // compliance with the License. The rights granted to you under the License
  3722  // may not be used to create, or enable the creation or redistribution of,
  3723  // unlawful or unlicensed copies of an Apple operating system, or to
  3724  // circumvent, violate, or enable the circumvention or violation of, any
  3725  // terms of an Apple operating system software license agreement.
  3726  //
  3727  // Please obtain a copy of the License at
  3728  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  3729  //
  3730  // The Original Code and all software distributed under the License are
  3731  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3732  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3733  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3734  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3735  // Please see the License for the specific language governing rights and
  3736  // limitations under the License.
  3737  //
  3738  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  3739  
  3740  // Set a single macro which will always be defined and can be used to determine
  3741  // the appropriate namespace.  For POSIX, these values will correspond to
  3742  // _POSIX_C_SOURCE value.  Currently there are two additional levels corresponding
  3743  // to ANSI (_ANSI_SOURCE) and Darwin extensions (_DARWIN_C_SOURCE)
  3744  
  3745  // If the developer has neither requested a strict language mode nor a version
  3746  // of POSIX, turn on functionality provided by __STDC_WANT_LIB_EXT1__ as part
  3747  // of __DARWIN_C_FULL.
  3748  
  3749  // long long is not supported in c89 (__STRICT_ANSI__), but g++ -ansi and
  3750  // c99 still want long longs.  While not perfect, we allow long longs for
  3751  // g++.
  3752  
  3753  // ****************************************
  3754  //
  3755  //  Public darwin-specific feature macros
  3756  //
  3757  
  3758  // _DARWIN_FEATURE_64_BIT_INODE indicates that the ino_t type is 64-bit, and
  3759  // structures modified for 64-bit inodes (like struct stat) will be used.
  3760  
  3761  // _DARWIN_FEATURE_64_ONLY_BIT_INODE indicates that the ino_t type may only
  3762  // be 64-bit; there is no support for 32-bit ino_t when this macro is defined
  3763  // (and non-zero).  There is no struct stat64 either, as the regular
  3764  // struct stat will already be the 64-bit version.
  3765  
  3766  // _DARWIN_FEATURE_ONLY_VERS_1050 indicates that only those APIs updated
  3767  // in 10.5 exists; no pre-10.5 variants are available.
  3768  
  3769  // _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE indicates only UNIX conforming API
  3770  // are available (the legacy BSD APIs are not available)
  3771  
  3772  // _DARWIN_FEATURE_UNIX_CONFORMANCE indicates whether UNIX conformance is on,
  3773  // and specifies the conformance level (3 is SUSv3)
  3774  
  3775  // This macro casts away the qualifier from the variable
  3776  //
  3777  // Note: use at your own risk, removing qualifiers can result in
  3778  // catastrophic run-time failures.
  3779  
  3780  // __XNU_PRIVATE_EXTERN is a linkage decoration indicating that a symbol can be
  3781  // used from other compilation units, but not other libraries or executables.
  3782  
  3783  // Architecture validation for current SDK
  3784  
  3785  // Similar to OS_ENUM/OS_CLOSED_ENUM/OS_OPTIONS/OS_CLOSED_OPTIONS
  3786  //
  3787  // This provides more advanced type checking on compilers supporting
  3788  // the proper extensions, even in C.
  3789  
  3790  // -
  3791  // Copyright (c) 1993
  3792  //	The Regents of the University of California.  All rights reserved.
  3793  //
  3794  // This code is derived from software contributed to Berkeley by
  3795  // Paul Borman at Krystal Technologies.
  3796  //
  3797  // Redistribution and use in source and binary forms, with or without
  3798  // modification, are permitted provided that the following conditions
  3799  // are met:
  3800  // 1. Redistributions of source code must retain the above copyright
  3801  //    notice, this list of conditions and the following disclaimer.
  3802  // 2. Redistributions in binary form must reproduce the above copyright
  3803  //    notice, this list of conditions and the following disclaimer in the
  3804  //    documentation and/or other materials provided with the distribution.
  3805  // 3. All advertising materials mentioning features or use of this software
  3806  //    must display the following acknowledgement:
  3807  //	This product includes software developed by the University of
  3808  //	California, Berkeley and its contributors.
  3809  // 4. Neither the name of the University nor the names of its contributors
  3810  //    may be used to endorse or promote products derived from this software
  3811  //    without specific prior written permission.
  3812  //
  3813  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  3814  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  3815  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  3816  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  3817  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  3818  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  3819  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  3820  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  3821  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  3822  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  3823  // SUCH DAMAGE.
  3824  //
  3825  //	@(#)runetype.h	8.1 (Berkeley) 6/2/93
  3826  
  3827  // Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
  3828  //
  3829  // @APPLE_LICENSE_HEADER_START@
  3830  //
  3831  // This file contains Original Code and/or Modifications of Original Code
  3832  // as defined in and that are subject to the Apple Public Source License
  3833  // Version 2.0 (the 'License'). You may not use this file except in
  3834  // compliance with the License. Please obtain a copy of the License at
  3835  // http://www.opensource.apple.com/apsl/ and read it before using this
  3836  // file.
  3837  //
  3838  // The Original Code and all software distributed under the License are
  3839  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3840  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3841  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3842  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3843  // Please see the License for the specific language governing rights and
  3844  // limitations under the License.
  3845  //
  3846  // @APPLE_LICENSE_HEADER_END@
  3847  
  3848  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  3849  //
  3850  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  3851  //
  3852  // This file contains Original Code and/or Modifications of Original Code
  3853  // as defined in and that are subject to the Apple Public Source License
  3854  // Version 2.0 (the 'License'). You may not use this file except in
  3855  // compliance with the License. The rights granted to you under the License
  3856  // may not be used to create, or enable the creation or redistribution of,
  3857  // unlawful or unlicensed copies of an Apple operating system, or to
  3858  // circumvent, violate, or enable the circumvention or violation of, any
  3859  // terms of an Apple operating system software license agreement.
  3860  //
  3861  // Please obtain a copy of the License at
  3862  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  3863  //
  3864  // The Original Code and all software distributed under the License are
  3865  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3866  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3867  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3868  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3869  // Please see the License for the specific language governing rights and
  3870  // limitations under the License.
  3871  //
  3872  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  3873  
  3874  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  3875  //
  3876  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  3877  //
  3878  // This file contains Original Code and/or Modifications of Original Code
  3879  // as defined in and that are subject to the Apple Public Source License
  3880  // Version 2.0 (the 'License'). You may not use this file except in
  3881  // compliance with the License. The rights granted to you under the License
  3882  // may not be used to create, or enable the creation or redistribution of,
  3883  // unlawful or unlicensed copies of an Apple operating system, or to
  3884  // circumvent, violate, or enable the circumvention or violation of, any
  3885  // terms of an Apple operating system software license agreement.
  3886  //
  3887  // Please obtain a copy of the License at
  3888  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  3889  //
  3890  // The Original Code and all software distributed under the License are
  3891  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3892  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3893  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3894  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3895  // Please see the License for the specific language governing rights and
  3896  // limitations under the License.
  3897  //
  3898  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  3899  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  3900  // Copyright (c) 1991, 1993
  3901  //	The Regents of the University of California.  All rights reserved.
  3902  //
  3903  // This code is derived from software contributed to Berkeley by
  3904  // Berkeley Software Design, Inc.
  3905  //
  3906  // Redistribution and use in source and binary forms, with or without
  3907  // modification, are permitted provided that the following conditions
  3908  // are met:
  3909  // 1. Redistributions of source code must retain the above copyright
  3910  //    notice, this list of conditions and the following disclaimer.
  3911  // 2. Redistributions in binary form must reproduce the above copyright
  3912  //    notice, this list of conditions and the following disclaimer in the
  3913  //    documentation and/or other materials provided with the distribution.
  3914  // 3. All advertising materials mentioning features or use of this software
  3915  //    must display the following acknowledgement:
  3916  //	This product includes software developed by the University of
  3917  //	California, Berkeley and its contributors.
  3918  // 4. Neither the name of the University nor the names of its contributors
  3919  //    may be used to endorse or promote products derived from this software
  3920  //    without specific prior written permission.
  3921  //
  3922  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  3923  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  3924  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  3925  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  3926  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  3927  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  3928  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  3929  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  3930  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  3931  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  3932  // SUCH DAMAGE.
  3933  //
  3934  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  3935  
  3936  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  3937  //
  3938  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  3939  //
  3940  // This file contains Original Code and/or Modifications of Original Code
  3941  // as defined in and that are subject to the Apple Public Source License
  3942  // Version 2.0 (the 'License'). You may not use this file except in
  3943  // compliance with the License. The rights granted to you under the License
  3944  // may not be used to create, or enable the creation or redistribution of,
  3945  // unlawful or unlicensed copies of an Apple operating system, or to
  3946  // circumvent, violate, or enable the circumvention or violation of, any
  3947  // terms of an Apple operating system software license agreement.
  3948  //
  3949  // Please obtain a copy of the License at
  3950  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  3951  //
  3952  // The Original Code and all software distributed under the License are
  3953  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3954  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3955  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3956  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3957  // Please see the License for the specific language governing rights and
  3958  // limitations under the License.
  3959  //
  3960  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  3961  
  3962  // Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
  3963  //
  3964  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  3965  //
  3966  // This file contains Original Code and/or Modifications of Original Code
  3967  // as defined in and that are subject to the Apple Public Source License
  3968  // Version 2.0 (the 'License'). You may not use this file except in
  3969  // compliance with the License. The rights granted to you under the License
  3970  // may not be used to create, or enable the creation or redistribution of,
  3971  // unlawful or unlicensed copies of an Apple operating system, or to
  3972  // circumvent, violate, or enable the circumvention or violation of, any
  3973  // terms of an Apple operating system software license agreement.
  3974  //
  3975  // Please obtain a copy of the License at
  3976  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  3977  //
  3978  // The Original Code and all software distributed under the License are
  3979  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  3980  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  3981  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  3982  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  3983  // Please see the License for the specific language governing rights and
  3984  // limitations under the License.
  3985  //
  3986  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  3987  
  3988  // This header file contains integer types.  It's intended to also contain
  3989  // flotaing point and other arithmetic types, as needed, later.
  3990  
  3991  type T__int8_t = int8     /* _types.h:39:33 */
  3992  type T__uint8_t = uint8   /* _types.h:43:33 */
  3993  type T__int16_t = int16   /* _types.h:44:33 */
  3994  type T__uint16_t = uint16 /* _types.h:45:33 */
  3995  type T__int32_t = int32   /* _types.h:46:33 */
  3996  type T__uint32_t = uint32 /* _types.h:47:33 */
  3997  type T__int64_t = int64   /* _types.h:48:33 */
  3998  type T__uint64_t = uint64 /* _types.h:49:33 */
  3999  
  4000  type T__darwin_intptr_t = int64   /* _types.h:51:33 */
  4001  type T__darwin_natural_t = uint32 /* _types.h:52:33 */
  4002  
  4003  // The rune type below is declared to be an ``int'' instead of the more natural
  4004  // ``unsigned long'' or ``long''.  Two things are happening here.  It is not
  4005  // unsigned so that EOF (-1) can be naturally assigned to it and used.  Also,
  4006  // it looks like 10646 will be a 31 bit standard.  This means that if your
  4007  // ints cannot hold 32 bits, you will be in trouble.  The reason an int was
  4008  // chosen over a long is that the is*() and to*() routines take ints (says
  4009  // ANSI C), but they use __darwin_ct_rune_t instead of int.  By changing it
  4010  // here, you lose a bit of ANSI conformance, but your programs will still
  4011  // work.
  4012  //
  4013  // NOTE: rune_t is not covered by ANSI nor other standards, and should not
  4014  // be instantiated outside of lib/libc/locale.  Use wchar_t.  wchar_t and
  4015  // rune_t must be the same type.  Also wint_t must be no narrower than
  4016  // wchar_t, and should also be able to hold all members of the largest
  4017  // character set plus one extra value (WEOF). wint_t must be at least 16 bits.
  4018  
  4019  type T__darwin_ct_rune_t = int32 /* _types.h:72:33 */ // ct_rune_t
  4020  
  4021  // mbstate_t is an opaque object to keep conversion state, during multibyte
  4022  // stream conversions.  The content must not be referenced by user programs.
  4023  type T__mbstate_t = struct {
  4024  	F__ccgo_pad1 [0]uint64
  4025  	F__mbstate8  [128]int8
  4026  } /* _types.h:81:3 */
  4027  
  4028  type T__darwin_mbstate_t = T__mbstate_t /* _types.h:83:33 */ // mbstate_t
  4029  
  4030  type T__darwin_ptrdiff_t = int64 /* _types.h:86:33 */ // ptr1 - ptr2
  4031  
  4032  type T__darwin_size_t = uint64 /* _types.h:94:33 */ // sizeof()
  4033  
  4034  type T__darwin_va_list = T__builtin_va_list /* _types.h:100:33 */ // va_list
  4035  
  4036  type T__darwin_wchar_t = int32 /* _types.h:106:33 */ // wchar_t
  4037  
  4038  type T__darwin_rune_t = T__darwin_wchar_t /* _types.h:111:33 */ // rune_t
  4039  
  4040  type T__darwin_wint_t = int32 /* _types.h:114:33 */ // wint_t
  4041  
  4042  type T__darwin_clock_t = uint64        /* _types.h:119:33 */ // clock()
  4043  type T__darwin_socklen_t = T__uint32_t /* _types.h:120:33 */ // socklen_t (duh)
  4044  type T__darwin_ssize_t = int64         /* _types.h:121:33 */ // byte count or error
  4045  type T__darwin_time_t = int64          /* _types.h:122:33 */ // time()
  4046  
  4047  // Type definitions; takes common type definitions that must be used
  4048  // in multiple header files due to [XSI], removes them from the system
  4049  // space, and puts them in the implementation space.
  4050  
  4051  type T__darwin_blkcnt_t = T__int64_t                    /* _types.h:55:25 */ // total blocks
  4052  type T__darwin_blksize_t = T__int32_t                   /* _types.h:56:25 */ // preferred block size
  4053  type T__darwin_dev_t = T__int32_t                       /* _types.h:57:25 */ // dev_t
  4054  type T__darwin_fsblkcnt_t = uint32                      /* _types.h:58:25 */ // Used by statvfs and fstatvfs
  4055  type T__darwin_fsfilcnt_t = uint32                      /* _types.h:59:25 */ // Used by statvfs and fstatvfs
  4056  type T__darwin_gid_t = T__uint32_t                      /* _types.h:60:25 */ // [???] process and group IDs
  4057  type T__darwin_id_t = T__uint32_t                       /* _types.h:61:25 */ // [XSI] pid_t, uid_t, or gid_t
  4058  type T__darwin_ino64_t = T__uint64_t                    /* _types.h:62:25 */ // [???] Used for 64 bit inodes
  4059  type T__darwin_ino_t = T__darwin_ino64_t                /* _types.h:64:26 */ // [???] Used for inodes
  4060  type T__darwin_mach_port_name_t = T__darwin_natural_t   /* _types.h:68:28 */ // Used by mach
  4061  type T__darwin_mach_port_t = T__darwin_mach_port_name_t /* _types.h:69:35 */ // Used by mach
  4062  type T__darwin_mode_t = T__uint16_t                     /* _types.h:70:25 */ // [???] Some file attributes
  4063  type T__darwin_off_t = T__int64_t                       /* _types.h:71:25 */ // [???] Used for file sizes
  4064  type T__darwin_pid_t = T__int32_t                       /* _types.h:72:25 */ // [???] process and group IDs
  4065  type T__darwin_sigset_t = T__uint32_t                   /* _types.h:73:25 */ // [???] signal set
  4066  type T__darwin_suseconds_t = T__int32_t                 /* _types.h:74:25 */ // [???] microseconds
  4067  type T__darwin_uid_t = T__uint32_t                      /* _types.h:75:25 */ // [???] user IDs
  4068  type T__darwin_useconds_t = T__uint32_t                 /* _types.h:76:25 */ // [???] microseconds
  4069  type T__darwin_uuid_t = [16]uint8                       /* _types.h:77:25 */
  4070  type T__darwin_uuid_string_t = [37]int8                 /* _types.h:78:17 */
  4071  
  4072  // Copyright (c) 2003-2013 Apple Inc. All rights reserved.
  4073  //
  4074  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4075  //
  4076  // This file contains Original Code and/or Modifications of Original Code
  4077  // as defined in and that are subject to the Apple Public Source License
  4078  // Version 2.0 (the 'License'). You may not use this file except in
  4079  // compliance with the License. The rights granted to you under the License
  4080  // may not be used to create, or enable the creation or redistribution of,
  4081  // unlawful or unlicensed copies of an Apple operating system, or to
  4082  // circumvent, violate, or enable the circumvention or violation of, any
  4083  // terms of an Apple operating system software license agreement.
  4084  //
  4085  // Please obtain a copy of the License at
  4086  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4087  //
  4088  // The Original Code and all software distributed under the License are
  4089  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4090  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4091  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4092  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4093  // Please see the License for the specific language governing rights and
  4094  // limitations under the License.
  4095  //
  4096  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4097  
  4098  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  4099  //
  4100  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4101  //
  4102  // This file contains Original Code and/or Modifications of Original Code
  4103  // as defined in and that are subject to the Apple Public Source License
  4104  // Version 2.0 (the 'License'). You may not use this file except in
  4105  // compliance with the License. The rights granted to you under the License
  4106  // may not be used to create, or enable the creation or redistribution of,
  4107  // unlawful or unlicensed copies of an Apple operating system, or to
  4108  // circumvent, violate, or enable the circumvention or violation of, any
  4109  // terms of an Apple operating system software license agreement.
  4110  //
  4111  // Please obtain a copy of the License at
  4112  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4113  //
  4114  // The Original Code and all software distributed under the License are
  4115  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4116  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4117  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4118  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4119  // Please see the License for the specific language governing rights and
  4120  // limitations under the License.
  4121  //
  4122  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4123  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  4124  // Copyright (c) 1991, 1993
  4125  //	The Regents of the University of California.  All rights reserved.
  4126  //
  4127  // This code is derived from software contributed to Berkeley by
  4128  // Berkeley Software Design, Inc.
  4129  //
  4130  // Redistribution and use in source and binary forms, with or without
  4131  // modification, are permitted provided that the following conditions
  4132  // are met:
  4133  // 1. Redistributions of source code must retain the above copyright
  4134  //    notice, this list of conditions and the following disclaimer.
  4135  // 2. Redistributions in binary form must reproduce the above copyright
  4136  //    notice, this list of conditions and the following disclaimer in the
  4137  //    documentation and/or other materials provided with the distribution.
  4138  // 3. All advertising materials mentioning features or use of this software
  4139  //    must display the following acknowledgement:
  4140  //	This product includes software developed by the University of
  4141  //	California, Berkeley and its contributors.
  4142  // 4. Neither the name of the University nor the names of its contributors
  4143  //    may be used to endorse or promote products derived from this software
  4144  //    without specific prior written permission.
  4145  //
  4146  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  4147  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  4148  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  4149  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  4150  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  4151  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  4152  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  4153  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  4154  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  4155  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  4156  // SUCH DAMAGE.
  4157  //
  4158  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  4159  
  4160  // pthread opaque structures
  4161  
  4162  type S__darwin_pthread_handler_rec = struct {
  4163  	F__routine uintptr
  4164  	F__arg     uintptr
  4165  	F__next    uintptr
  4166  } /* _pthread_types.h:57:1 */
  4167  
  4168  type S_opaque_pthread_attr_t = struct {
  4169  	F__sig    int64
  4170  	F__opaque [56]int8
  4171  } /* _pthread_types.h:63:1 */
  4172  
  4173  type S_opaque_pthread_cond_t = struct {
  4174  	F__sig    int64
  4175  	F__opaque [40]int8
  4176  } /* _pthread_types.h:68:1 */
  4177  
  4178  type S_opaque_pthread_condattr_t = struct {
  4179  	F__sig    int64
  4180  	F__opaque [8]int8
  4181  } /* _pthread_types.h:73:1 */
  4182  
  4183  type S_opaque_pthread_mutex_t = struct {
  4184  	F__sig    int64
  4185  	F__opaque [56]int8
  4186  } /* _pthread_types.h:78:1 */
  4187  
  4188  type S_opaque_pthread_mutexattr_t = struct {
  4189  	F__sig    int64
  4190  	F__opaque [8]int8
  4191  } /* _pthread_types.h:83:1 */
  4192  
  4193  type S_opaque_pthread_once_t = struct {
  4194  	F__sig    int64
  4195  	F__opaque [8]int8
  4196  } /* _pthread_types.h:88:1 */
  4197  
  4198  type S_opaque_pthread_rwlock_t = struct {
  4199  	F__sig    int64
  4200  	F__opaque [192]int8
  4201  } /* _pthread_types.h:93:1 */
  4202  
  4203  type S_opaque_pthread_rwlockattr_t = struct {
  4204  	F__sig    int64
  4205  	F__opaque [16]int8
  4206  } /* _pthread_types.h:98:1 */
  4207  
  4208  type S_opaque_pthread_t = struct {
  4209  	F__sig           int64
  4210  	F__cleanup_stack uintptr
  4211  	F__opaque        [8176]int8
  4212  } /* _pthread_types.h:103:1 */
  4213  
  4214  type T__darwin_pthread_attr_t = S_opaque_pthread_attr_t             /* _pthread_types.h:109:39 */
  4215  type T__darwin_pthread_cond_t = S_opaque_pthread_cond_t             /* _pthread_types.h:110:39 */
  4216  type T__darwin_pthread_condattr_t = S_opaque_pthread_condattr_t     /* _pthread_types.h:111:43 */
  4217  type T__darwin_pthread_key_t = uint64                               /* _pthread_types.h:112:23 */
  4218  type T__darwin_pthread_mutex_t = S_opaque_pthread_mutex_t           /* _pthread_types.h:113:40 */
  4219  type T__darwin_pthread_mutexattr_t = S_opaque_pthread_mutexattr_t   /* _pthread_types.h:114:44 */
  4220  type T__darwin_pthread_once_t = S_opaque_pthread_once_t             /* _pthread_types.h:115:39 */
  4221  type T__darwin_pthread_rwlock_t = S_opaque_pthread_rwlock_t         /* _pthread_types.h:116:41 */
  4222  type T__darwin_pthread_rwlockattr_t = S_opaque_pthread_rwlockattr_t /* _pthread_types.h:117:45 */
  4223  type T__darwin_pthread_t = uintptr                                  /* _pthread_types.h:118:34 */
  4224  
  4225  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  4226  //
  4227  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4228  //
  4229  // This file contains Original Code and/or Modifications of Original Code
  4230  // as defined in and that are subject to the Apple Public Source License
  4231  // Version 2.0 (the 'License'). You may not use this file except in
  4232  // compliance with the License. The rights granted to you under the License
  4233  // may not be used to create, or enable the creation or redistribution of,
  4234  // unlawful or unlicensed copies of an Apple operating system, or to
  4235  // circumvent, violate, or enable the circumvention or violation of, any
  4236  // terms of an Apple operating system software license agreement.
  4237  //
  4238  // Please obtain a copy of the License at
  4239  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4240  //
  4241  // The Original Code and all software distributed under the License are
  4242  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4243  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4244  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4245  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4246  // Please see the License for the specific language governing rights and
  4247  // limitations under the License.
  4248  //
  4249  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4250  
  4251  type T__darwin_nl_item = int32        /* _types.h:40:14 */
  4252  type T__darwin_wctrans_t = int32      /* _types.h:41:14 */
  4253  type T__darwin_wctype_t = T__uint32_t /* _types.h:43:20 */
  4254  // Copyright (c) 2012 Apple Inc. All rights reserved.
  4255  //
  4256  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4257  //
  4258  // This file contains Original Code and/or Modifications of Original Code
  4259  // as defined in and that are subject to the Apple Public Source License
  4260  // Version 2.0 (the 'License'). You may not use this file except in
  4261  // compliance with the License. The rights granted to you under the License
  4262  // may not be used to create, or enable the creation or redistribution of,
  4263  // unlawful or unlicensed copies of an Apple operating system, or to
  4264  // circumvent, violate, or enable the circumvention or violation of, any
  4265  // terms of an Apple operating system software license agreement.
  4266  //
  4267  // Please obtain a copy of the License at
  4268  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4269  //
  4270  // The Original Code and all software distributed under the License are
  4271  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4272  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4273  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4274  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4275  // Please see the License for the specific language governing rights and
  4276  // limitations under the License.
  4277  //
  4278  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4279  
  4280  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  4281  //
  4282  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4283  //
  4284  // This file contains Original Code and/or Modifications of Original Code
  4285  // as defined in and that are subject to the Apple Public Source License
  4286  // Version 2.0 (the 'License'). You may not use this file except in
  4287  // compliance with the License. The rights granted to you under the License
  4288  // may not be used to create, or enable the creation or redistribution of,
  4289  // unlawful or unlicensed copies of an Apple operating system, or to
  4290  // circumvent, violate, or enable the circumvention or violation of, any
  4291  // terms of an Apple operating system software license agreement.
  4292  //
  4293  // Please obtain a copy of the License at
  4294  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4295  //
  4296  // The Original Code and all software distributed under the License are
  4297  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4298  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4299  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4300  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4301  // Please see the License for the specific language governing rights and
  4302  // limitations under the License.
  4303  //
  4304  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4305  type Tct_rune_t = T__darwin_ct_rune_t /* _ct_rune_t.h:32:28 */
  4306  // Copyright (c) 2012 Apple Inc. All rights reserved.
  4307  //
  4308  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4309  //
  4310  // This file contains Original Code and/or Modifications of Original Code
  4311  // as defined in and that are subject to the Apple Public Source License
  4312  // Version 2.0 (the 'License'). You may not use this file except in
  4313  // compliance with the License. The rights granted to you under the License
  4314  // may not be used to create, or enable the creation or redistribution of,
  4315  // unlawful or unlicensed copies of an Apple operating system, or to
  4316  // circumvent, violate, or enable the circumvention or violation of, any
  4317  // terms of an Apple operating system software license agreement.
  4318  //
  4319  // Please obtain a copy of the License at
  4320  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4321  //
  4322  // The Original Code and all software distributed under the License are
  4323  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4324  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4325  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4326  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4327  // Please see the License for the specific language governing rights and
  4328  // limitations under the License.
  4329  //
  4330  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4331  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  4332  //
  4333  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4334  //
  4335  // This file contains Original Code and/or Modifications of Original Code
  4336  // as defined in and that are subject to the Apple Public Source License
  4337  // Version 2.0 (the 'License'). You may not use this file except in
  4338  // compliance with the License. The rights granted to you under the License
  4339  // may not be used to create, or enable the creation or redistribution of,
  4340  // unlawful or unlicensed copies of an Apple operating system, or to
  4341  // circumvent, violate, or enable the circumvention or violation of, any
  4342  // terms of an Apple operating system software license agreement.
  4343  //
  4344  // Please obtain a copy of the License at
  4345  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4346  //
  4347  // The Original Code and all software distributed under the License are
  4348  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4349  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4350  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4351  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4352  // Please see the License for the specific language governing rights and
  4353  // limitations under the License.
  4354  //
  4355  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4356  type Trune_t = T__darwin_rune_t /* _rune_t.h:31:25 */
  4357  // Copyright (c) 2012 Apple Inc. All rights reserved.
  4358  //
  4359  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4360  //
  4361  // This file contains Original Code and/or Modifications of Original Code
  4362  // as defined in and that are subject to the Apple Public Source License
  4363  // Version 2.0 (the 'License'). You may not use this file except in
  4364  // compliance with the License. The rights granted to you under the License
  4365  // may not be used to create, or enable the creation or redistribution of,
  4366  // unlawful or unlicensed copies of an Apple operating system, or to
  4367  // circumvent, violate, or enable the circumvention or violation of, any
  4368  // terms of an Apple operating system software license agreement.
  4369  //
  4370  // Please obtain a copy of the License at
  4371  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4372  //
  4373  // The Original Code and all software distributed under the License are
  4374  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4375  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4376  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4377  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4378  // Please see the License for the specific language governing rights and
  4379  // limitations under the License.
  4380  //
  4381  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4382  
  4383  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  4384  //
  4385  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4386  //
  4387  // This file contains Original Code and/or Modifications of Original Code
  4388  // as defined in and that are subject to the Apple Public Source License
  4389  // Version 2.0 (the 'License'). You may not use this file except in
  4390  // compliance with the License. The rights granted to you under the License
  4391  // may not be used to create, or enable the creation or redistribution of,
  4392  // unlawful or unlicensed copies of an Apple operating system, or to
  4393  // circumvent, violate, or enable the circumvention or violation of, any
  4394  // terms of an Apple operating system software license agreement.
  4395  //
  4396  // Please obtain a copy of the License at
  4397  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4398  //
  4399  // The Original Code and all software distributed under the License are
  4400  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4401  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4402  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4403  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4404  // Please see the License for the specific language governing rights and
  4405  // limitations under the License.
  4406  //
  4407  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4408  type Twint_t = T__darwin_wint_t /* _wint_t.h:32:25 */
  4409  
  4410  // The lower 8 bits of runetype[] contain the digit value of the rune.
  4411  type T_RuneEntry = struct {
  4412  	F__min       T__darwin_rune_t
  4413  	F__max       T__darwin_rune_t
  4414  	F__map       T__darwin_rune_t
  4415  	F__ccgo_pad1 [4]byte
  4416  	F__types     uintptr
  4417  } /* runetype.h:65:3 */
  4418  
  4419  type T_RuneRange = struct {
  4420  	F__nranges   int32
  4421  	F__ccgo_pad1 [4]byte
  4422  	F__ranges    uintptr
  4423  } /* runetype.h:70:3 */
  4424  
  4425  type T_RuneCharClass = struct {
  4426  	F__name      [14]int8
  4427  	F__ccgo_pad1 [2]byte
  4428  	F__mask      T__uint32_t
  4429  } /* runetype.h:75:3 */
  4430  
  4431  type T_RuneLocale = struct {
  4432  	F__magic        [8]int8
  4433  	F__encoding     [32]int8
  4434  	F__sgetrune     uintptr
  4435  	F__sputrune     uintptr
  4436  	F__invalid_rune T__darwin_rune_t
  4437  	F__runetype     [256]T__uint32_t
  4438  	F__maplower     [256]T__darwin_rune_t
  4439  	F__mapupper     [256]T__darwin_rune_t
  4440  	F__ccgo_pad1    [4]byte
  4441  	F__runetype_ext T_RuneRange
  4442  	F__maplower_ext T_RuneRange
  4443  	F__mapupper_ext T_RuneRange
  4444  	F__variable     uintptr
  4445  	F__variable_len int32
  4446  	F__ncharclasses int32
  4447  	F__charclasses  uintptr
  4448  } /* runetype.h:106:3 */
  4449  
  4450  func Xisascii(tls *libc.TLS, _c int32) int32 { /* _ctype.h:135:1: */
  4451  	return libc.Bool32(_c&libc.CplInt32(0x7F) == 0)
  4452  }
  4453  
  4454  func X__istype(tls *libc.TLS, _c T__darwin_ct_rune_t, _f uint64) int32 { /* _ctype.h:153:1: */
  4455  	return func() int32 {
  4456  		if Xisascii(tls, _c) != 0 {
  4457  			return libc.BoolInt32(!!(uint64(*(*T__uint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&libc.X_DefaultRuneLocale)) + 60 + uintptr(_c)*4)))&_f != 0))
  4458  		}
  4459  		return libc.BoolInt32(!!(libc.X__maskrune(tls, _c, _f) != 0))
  4460  	}()
  4461  }
  4462  
  4463  func X__isctype(tls *libc.TLS, _c T__darwin_ct_rune_t, _f uint64) T__darwin_ct_rune_t { /* _ctype.h:164:1: */
  4464  	if _c < 0 || _c >= int32(1)<<8 {
  4465  		return 0
  4466  	}
  4467  	return libc.BoolInt32(!!(uint64(*(*T__uint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&libc.X_DefaultRuneLocale)) + 60 + uintptr(_c)*4)))&_f != 0))
  4468  }
  4469  
  4470  func X__wcwidth(tls *libc.TLS, _c T__darwin_ct_rune_t) int32 { /* _ctype.h:194:1: */
  4471  	var _x uint32
  4472  
  4473  	if _c == 0 {
  4474  		return 0
  4475  	}
  4476  	_x = uint32(libc.X__maskrune(tls, _c, uint64(D_CTYPE_SWM|D_CTYPE_R)))
  4477  	if int64(_x)&D_CTYPE_SWM != int64(0) {
  4478  		return int32(int64(_x) & D_CTYPE_SWM >> D_CTYPE_SWS)
  4479  	}
  4480  	return func() int32 {
  4481  		if int64(_x)&D_CTYPE_R != int64(0) {
  4482  			return 1
  4483  		}
  4484  		return -1
  4485  	}()
  4486  }
  4487  
  4488  func Xisalnum(tls *libc.TLS, _c int32) int32 { /* _ctype.h:212:1: */
  4489  	return X__istype(tls, _c, uint64(D_CTYPE_A|D_CTYPE_D))
  4490  }
  4491  
  4492  func Xisalpha(tls *libc.TLS, _c int32) int32 { /* _ctype.h:218:1: */
  4493  	return X__istype(tls, _c, uint64(D_CTYPE_A))
  4494  }
  4495  
  4496  func Xisblank(tls *libc.TLS, _c int32) int32 { /* _ctype.h:224:1: */
  4497  	return X__istype(tls, _c, uint64(D_CTYPE_B))
  4498  }
  4499  
  4500  func Xiscntrl(tls *libc.TLS, _c int32) int32 { /* _ctype.h:230:1: */
  4501  	return X__istype(tls, _c, uint64(D_CTYPE_C))
  4502  }
  4503  
  4504  // ANSI -- locale independent
  4505  func Xisdigit(tls *libc.TLS, _c int32) int32 { /* _ctype.h:237:1: */
  4506  	return X__isctype(tls, _c, uint64(D_CTYPE_D))
  4507  }
  4508  
  4509  func Xisgraph(tls *libc.TLS, _c int32) int32 { /* _ctype.h:243:1: */
  4510  	return X__istype(tls, _c, uint64(D_CTYPE_G))
  4511  }
  4512  
  4513  func Xislower(tls *libc.TLS, _c int32) int32 { /* _ctype.h:249:1: */
  4514  	return X__istype(tls, _c, uint64(D_CTYPE_L))
  4515  }
  4516  
  4517  func Xisprint(tls *libc.TLS, _c int32) int32 { /* _ctype.h:255:1: */
  4518  	return X__istype(tls, _c, uint64(D_CTYPE_R))
  4519  }
  4520  
  4521  func Xispunct(tls *libc.TLS, _c int32) int32 { /* _ctype.h:261:1: */
  4522  	return X__istype(tls, _c, uint64(D_CTYPE_P))
  4523  }
  4524  
  4525  func Xisspace(tls *libc.TLS, _c int32) int32 { /* _ctype.h:267:1: */
  4526  	return X__istype(tls, _c, uint64(D_CTYPE_S))
  4527  }
  4528  
  4529  func Xisupper(tls *libc.TLS, _c int32) int32 { /* _ctype.h:273:1: */
  4530  	return X__istype(tls, _c, uint64(D_CTYPE_U))
  4531  }
  4532  
  4533  // ANSI -- locale independent
  4534  func Xisxdigit(tls *libc.TLS, _c int32) int32 { /* _ctype.h:280:1: */
  4535  	return X__isctype(tls, _c, uint64(D_CTYPE_X))
  4536  }
  4537  
  4538  func Xtoascii(tls *libc.TLS, _c int32) int32 { /* _ctype.h:286:1: */
  4539  	return _c & 0x7F
  4540  }
  4541  
  4542  func Xtolower(tls *libc.TLS, _c int32) int32 { /* _ctype.h:292:1: */
  4543  	return libc.X__tolower(tls, _c)
  4544  }
  4545  
  4546  func Xtoupper(tls *libc.TLS, _c int32) int32 { /* _ctype.h:298:1: */
  4547  	return libc.X__toupper(tls, _c)
  4548  }
  4549  
  4550  func Xdigittoint(tls *libc.TLS, _c int32) int32 { /* _ctype.h:305:1: */
  4551  	return libc.X__maskrune(tls, _c, uint64(0x0F))
  4552  }
  4553  
  4554  func Xishexnumber(tls *libc.TLS, _c int32) int32 { /* _ctype.h:311:1: */
  4555  	return X__istype(tls, _c, uint64(D_CTYPE_X))
  4556  }
  4557  
  4558  func Xisideogram(tls *libc.TLS, _c int32) int32 { /* _ctype.h:317:1: */
  4559  	return X__istype(tls, _c, uint64(D_CTYPE_I))
  4560  }
  4561  
  4562  func Xisnumber(tls *libc.TLS, _c int32) int32 { /* _ctype.h:323:1: */
  4563  	return X__istype(tls, _c, uint64(D_CTYPE_D))
  4564  }
  4565  
  4566  func Xisphonogram(tls *libc.TLS, _c int32) int32 { /* _ctype.h:329:1: */
  4567  	return X__istype(tls, _c, uint64(D_CTYPE_Q))
  4568  }
  4569  
  4570  func Xisrune(tls *libc.TLS, _c int32) int32 { /* _ctype.h:335:1: */
  4571  	return X__istype(tls, _c, uint64(0xFFFFFFF0))
  4572  }
  4573  
  4574  func Xisspecial(tls *libc.TLS, _c int32) int32 { /* _ctype.h:341:1: */
  4575  	return X__istype(tls, _c, uint64(D_CTYPE_T))
  4576  }
  4577  
  4578  // ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is
  4579  // enabled.
  4580  // Always define rsize_t when modules are available.
  4581  type Trsize_t = uint64 /* stddef.h:60:23 */
  4582  
  4583  // Always define wchar_t when modules are available.
  4584  
  4585  // ===---- __stddef_max_align_t.h - Definition of max_align_t for modules ---===
  4586  //
  4587  // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
  4588  // See https://llvm.org/LICENSE.txt for license information.
  4589  // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  4590  //
  4591  //===-----------------------------------------------------------------------===
  4592  
  4593  type Tmax_align_t = float64 /* __stddef_max_align_t.h:16:21 */
  4594  
  4595  // Some C libraries expect to see a wint_t here. Others (notably MinGW) will use
  4596  // __WINT_TYPE__ directly; accommodate both by requiring __need_wint_t
  4597  
  4598  // Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
  4599  //
  4600  // @APPLE_LICENSE_HEADER_START@
  4601  //
  4602  // This file contains Original Code and/or Modifications of Original Code
  4603  // as defined in and that are subject to the Apple Public Source License
  4604  // Version 2.0 (the 'License'). You may not use this file except in
  4605  // compliance with the License. Please obtain a copy of the License at
  4606  // http://www.opensource.apple.com/apsl/ and read it before using this
  4607  // file.
  4608  //
  4609  // The Original Code and all software distributed under the License are
  4610  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4611  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4612  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4613  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4614  // Please see the License for the specific language governing rights and
  4615  // limitations under the License.
  4616  //
  4617  // @APPLE_LICENSE_HEADER_END@
  4618  // -
  4619  // Copyright (c) 1990, 1993
  4620  //	The Regents of the University of California.  All rights reserved.
  4621  //
  4622  // This code is derived from software contributed to Berkeley by
  4623  // Chris Torek.
  4624  //
  4625  // Redistribution and use in source and binary forms, with or without
  4626  // modification, are permitted provided that the following conditions
  4627  // are met:
  4628  // 1. Redistributions of source code must retain the above copyright
  4629  //    notice, this list of conditions and the following disclaimer.
  4630  // 2. Redistributions in binary form must reproduce the above copyright
  4631  //    notice, this list of conditions and the following disclaimer in the
  4632  //    documentation and/or other materials provided with the distribution.
  4633  // 3. All advertising materials mentioning features or use of this software
  4634  //    must display the following acknowledgement:
  4635  //	This product includes software developed by the University of
  4636  //	California, Berkeley and its contributors.
  4637  // 4. Neither the name of the University nor the names of its contributors
  4638  //    may be used to endorse or promote products derived from this software
  4639  //    without specific prior written permission.
  4640  //
  4641  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  4642  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  4643  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  4644  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  4645  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  4646  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  4647  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  4648  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  4649  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  4650  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  4651  // SUCH DAMAGE.
  4652  //
  4653  //	@(#)stdio.h	8.5 (Berkeley) 4/29/95
  4654  
  4655  // Copyright (c) 2000, 2005, 2007, 2009, 2010 Apple Inc. All rights reserved.
  4656  //
  4657  // @APPLE_LICENSE_HEADER_START@
  4658  //
  4659  // This file contains Original Code and/or Modifications of Original Code
  4660  // as defined in and that are subject to the Apple Public Source License
  4661  // Version 2.0 (the 'License'). You may not use this file except in
  4662  // compliance with the License. Please obtain a copy of the License at
  4663  // http://www.opensource.apple.com/apsl/ and read it before using this
  4664  // file.
  4665  //
  4666  // The Original Code and all software distributed under the License are
  4667  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4668  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4669  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4670  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4671  // Please see the License for the specific language governing rights and
  4672  // limitations under the License.
  4673  //
  4674  // @APPLE_LICENSE_HEADER_END@
  4675  // -
  4676  // Copyright (c) 1990, 1993
  4677  //	The Regents of the University of California.  All rights reserved.
  4678  //
  4679  // This code is derived from software contributed to Berkeley by
  4680  // Chris Torek.
  4681  //
  4682  // Redistribution and use in source and binary forms, with or without
  4683  // modification, are permitted provided that the following conditions
  4684  // are met:
  4685  // 1. Redistributions of source code must retain the above copyright
  4686  //    notice, this list of conditions and the following disclaimer.
  4687  // 2. Redistributions in binary form must reproduce the above copyright
  4688  //    notice, this list of conditions and the following disclaimer in the
  4689  //    documentation and/or other materials provided with the distribution.
  4690  // 3. All advertising materials mentioning features or use of this software
  4691  //    must display the following acknowledgement:
  4692  //	This product includes software developed by the University of
  4693  //	California, Berkeley and its contributors.
  4694  // 4. Neither the name of the University nor the names of its contributors
  4695  //    may be used to endorse or promote products derived from this software
  4696  //    without specific prior written permission.
  4697  //
  4698  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  4699  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  4700  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  4701  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  4702  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  4703  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  4704  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  4705  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  4706  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  4707  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  4708  // SUCH DAMAGE.
  4709  //
  4710  //	@(#)stdio.h	8.5 (Berkeley) 4/29/95
  4711  
  4712  // Common header for stdio.h and xlocale/_stdio.h
  4713  
  4714  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  4715  //
  4716  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  4717  //
  4718  // This file contains Original Code and/or Modifications of Original Code
  4719  // as defined in and that are subject to the Apple Public Source License
  4720  // Version 2.0 (the 'License'). You may not use this file except in
  4721  // compliance with the License. The rights granted to you under the License
  4722  // may not be used to create, or enable the creation or redistribution of,
  4723  // unlawful or unlicensed copies of an Apple operating system, or to
  4724  // circumvent, violate, or enable the circumvention or violation of, any
  4725  // terms of an Apple operating system software license agreement.
  4726  //
  4727  // Please obtain a copy of the License at
  4728  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  4729  //
  4730  // The Original Code and all software distributed under the License are
  4731  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4732  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4733  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4734  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4735  // Please see the License for the specific language governing rights and
  4736  // limitations under the License.
  4737  //
  4738  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  4739  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  4740  // Copyright (c) 1991, 1993
  4741  //	The Regents of the University of California.  All rights reserved.
  4742  //
  4743  // This code is derived from software contributed to Berkeley by
  4744  // Berkeley Software Design, Inc.
  4745  //
  4746  // Redistribution and use in source and binary forms, with or without
  4747  // modification, are permitted provided that the following conditions
  4748  // are met:
  4749  // 1. Redistributions of source code must retain the above copyright
  4750  //    notice, this list of conditions and the following disclaimer.
  4751  // 2. Redistributions in binary form must reproduce the above copyright
  4752  //    notice, this list of conditions and the following disclaimer in the
  4753  //    documentation and/or other materials provided with the distribution.
  4754  // 3. All advertising materials mentioning features or use of this software
  4755  //    must display the following acknowledgement:
  4756  //	This product includes software developed by the University of
  4757  //	California, Berkeley and its contributors.
  4758  // 4. Neither the name of the University nor the names of its contributors
  4759  //    may be used to endorse or promote products derived from this software
  4760  //    without specific prior written permission.
  4761  //
  4762  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  4763  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  4764  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  4765  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  4766  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  4767  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  4768  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  4769  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  4770  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  4771  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  4772  // SUCH DAMAGE.
  4773  //
  4774  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  4775  
  4776  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  4777  //
  4778  // @APPLE_LICENSE_HEADER_START@
  4779  //
  4780  // This file contains Original Code and/or Modifications of Original Code
  4781  // as defined in and that are subject to the Apple Public Source License
  4782  // Version 2.0 (the 'License'). You may not use this file except in
  4783  // compliance with the License. Please obtain a copy of the License at
  4784  // http://www.opensource.apple.com/apsl/ and read it before using this
  4785  // file.
  4786  //
  4787  // The Original Code and all software distributed under the License are
  4788  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4789  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4790  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4791  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4792  // Please see the License for the specific language governing rights and
  4793  // limitations under the License.
  4794  //
  4795  // @APPLE_LICENSE_HEADER_END@
  4796  
  4797  //
  4798  //     These macros are for use in OS header files. They enable function prototypes
  4799  //     and Objective-C methods to be tagged with the OS version in which they
  4800  //     were first available; and, if applicable, the OS version in which they
  4801  //     became deprecated.
  4802  //
  4803  //     The desktop Mac OS X and iOS each have different version numbers.
  4804  //     The __OSX_AVAILABLE_STARTING() macro allows you to specify both the desktop
  4805  //     and iOS version numbers.  For instance:
  4806  //         __OSX_AVAILABLE_STARTING(__MAC_10_2,__IPHONE_2_0)
  4807  //     means the function/method was first available on Mac OS X 10.2 on the desktop
  4808  //     and first available in iOS 2.0 on the iPhone.
  4809  //
  4810  //     If a function is available on one platform, but not the other a _NA (not
  4811  //     applicable) parameter is used.  For instance:
  4812  //             __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA)
  4813  //     means that the function/method was first available on Mac OS X 10.3, and it
  4814  //     currently not implemented on the iPhone.
  4815  //
  4816  //     At some point, a function/method may be deprecated.  That means Apple
  4817  //     recommends applications stop using the function, either because there is a
  4818  //     better replacement or the functionality is being phased out.  Deprecated
  4819  //     functions/methods can be tagged with a __OSX_AVAILABLE_BUT_DEPRECATED()
  4820  //     macro which specifies the OS version where the function became available
  4821  //     as well as the OS version in which it became deprecated.  For instance:
  4822  //         __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_5,__IPHONE_NA,__IPHONE_NA)
  4823  //     means that the function/method was introduced in Mac OS X 10.0, then
  4824  //     became deprecated beginning in Mac OS X 10.5.  On iOS the function
  4825  //     has never been available.
  4826  //
  4827  //     For these macros to function properly, a program must specify the OS version range
  4828  //     it is targeting.  The min OS version is specified as an option to the compiler:
  4829  //     -mmacosx-version-min=10.x when building for Mac OS X, and -miphoneos-version-min=y.z
  4830  //     when building for the iPhone.  The upper bound for the OS version is rarely needed,
  4831  //     but it can be set on the command line via: -D__MAC_OS_X_VERSION_MAX_ALLOWED=10x0 for
  4832  //     Mac OS X and __IPHONE_OS_VERSION_MAX_ALLOWED = y0z00 for iOS.
  4833  //
  4834  //     Examples:
  4835  //
  4836  //         A function available in Mac OS X 10.5 and later, but not on the phone:
  4837  //
  4838  //             extern void mymacfunc() __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
  4839  //
  4840  //
  4841  //         An Objective-C method in Mac OS X 10.5 and later, but not on the phone:
  4842  //
  4843  //             @interface MyClass : NSObject
  4844  //             -(void) mymacmethod __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_NA);
  4845  //             @end
  4846  //
  4847  //
  4848  //         An enum available on the phone, but not available on Mac OS X:
  4849  //
  4850  //             #if __IPHONE_OS_VERSION_MIN_REQUIRED
  4851  //                 enum { myEnum = 1 };
  4852  //             #endif
  4853  //            Note: this works when targeting the Mac OS X platform because
  4854  //            __IPHONE_OS_VERSION_MIN_REQUIRED is undefined which evaluates to zero.
  4855  //
  4856  //
  4857  //         An enum with values added in different iPhoneOS versions:
  4858  //
  4859  // 			enum {
  4860  // 			    myX  = 1,	// Usable on iPhoneOS 2.1 and later
  4861  // 			    myY  = 2,	// Usable on iPhoneOS 3.0 and later
  4862  // 			    myZ  = 3,	// Usable on iPhoneOS 3.0 and later
  4863  // 				...
  4864  // 		      Note: you do not want to use #if with enumeration values
  4865  // 			  when a client needs to see all values at compile time
  4866  // 			  and use runtime logic to only use the viable values.
  4867  //
  4868  //
  4869  //     It is also possible to use the *_VERSION_MIN_REQUIRED in source code to make one
  4870  //     source base that can be compiled to target a range of OS versions.  It is best
  4871  //     to not use the _MAC_* and __IPHONE_* macros for comparisons, but rather their values.
  4872  //     That is because you might get compiled on an old OS that does not define a later
  4873  //     OS version macro, and in the C preprocessor undefined values evaluate to zero
  4874  //     in expresssions, which could cause the #if expression to evaluate in an unexpected
  4875  //     way.
  4876  //
  4877  //         #ifdef __MAC_OS_X_VERSION_MIN_REQUIRED
  4878  //             // code only compiled when targeting Mac OS X and not iPhone
  4879  //             // note use of 1050 instead of __MAC_10_5
  4880  //             #if __MAC_OS_X_VERSION_MIN_REQUIRED < 1050
  4881  //                 // code in here might run on pre-Leopard OS
  4882  //             #else
  4883  //                 // code here can assume Leopard or later
  4884  //             #endif
  4885  //         #endif
  4886  //
  4887  //
  4888  
  4889  // __API_TO_BE_DEPRECATED is used as a version number in API that will be deprecated
  4890  // in an upcoming release. This soft deprecation is an intermediate step before formal
  4891  // deprecation to notify developers about the API before compiler warnings are generated.
  4892  // You can find all places in your code that use soft deprecated API by redefining the
  4893  // value of this macro to your current minimum deployment target, for example:
  4894  // (macOS)
  4895  //   clang -D__API_TO_BE_DEPRECATED=10.12 <other compiler flags>
  4896  // (iOS)
  4897  //   clang -D__API_TO_BE_DEPRECATED=11.0 <other compiler flags>
  4898  
  4899  // Copyright (c) 2019 by Apple Inc.. All rights reserved.
  4900  //
  4901  // @APPLE_LICENSE_HEADER_START@
  4902  //
  4903  // This file contains Original Code and/or Modifications of Original Code
  4904  // as defined in and that are subject to the Apple Public Source License
  4905  // Version 2.0 (the 'License'). You may not use this file except in
  4906  // compliance with the License. Please obtain a copy of the License at
  4907  // http://www.opensource.apple.com/apsl/ and read it before using this
  4908  // file.
  4909  //
  4910  // The Original Code and all software distributed under the License are
  4911  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4912  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4913  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4914  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4915  // Please see the License for the specific language governing rights and
  4916  // limitations under the License.
  4917  //
  4918  // @APPLE_LICENSE_HEADER_END@
  4919  
  4920  // __MAC_NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable
  4921  
  4922  // __IPHONE_NA is not defined to a value but is used as a token by macros to indicate that the API is unavailable
  4923  
  4924  // Set up standard Mac OS X versions
  4925  
  4926  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  4927  //
  4928  // @APPLE_LICENSE_HEADER_START@
  4929  //
  4930  // This file contains Original Code and/or Modifications of Original Code
  4931  // as defined in and that are subject to the Apple Public Source License
  4932  // Version 2.0 (the 'License'). You may not use this file except in
  4933  // compliance with the License. Please obtain a copy of the License at
  4934  // http://www.opensource.apple.com/apsl/ and read it before using this
  4935  // file.
  4936  //
  4937  // The Original Code and all software distributed under the License are
  4938  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  4939  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  4940  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  4941  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  4942  // Please see the License for the specific language governing rights and
  4943  // limitations under the License.
  4944  //
  4945  // @APPLE_LICENSE_HEADER_END@
  4946  
  4947  //
  4948  //     File:       AvailabilityInternal.h
  4949  //
  4950  //     Contains:   implementation details of __OSX_AVAILABLE_* macros from <Availability.h>
  4951  //
  4952  
  4953  // compiler for Mac OS X sets __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
  4954  
  4955  // make sure a default max version is set
  4956  
  4957  //
  4958  //  Macros for defining which versions/platform a given symbol can be used.
  4959  //
  4960  //  @see http://clang.llvm.org/docs/AttributeReference.html#availability
  4961  //
  4962  
  4963  // Evaluate to nothing for compilers that don't support availability.
  4964  
  4965  // Swift compiler version
  4966  // Allows for project-agnostic "epochs" for frameworks imported into Swift via the Clang importer, like #if _compiler_version for Swift
  4967  // Example:
  4968  //
  4969  //  #if __swift_compiler_version_at_least(800, 2, 20)
  4970  //  - (nonnull NSString *)description;
  4971  //  #else
  4972  //  - (NSString *)description;
  4973  //  #endif
  4974  
  4975  // If __SPI_AVAILABLE has not been defined elsewhere, disable it.
  4976  
  4977  // for use to document app extension usage
  4978  
  4979  // for use marking APIs available info for Mac OSX
  4980  
  4981  // for use marking APIs available info for iOS
  4982  
  4983  // for use marking APIs available info for tvOS
  4984  
  4985  // for use marking APIs available info for Watch OS
  4986  
  4987  // for use marking APIs unavailable for swift
  4988  
  4989  //
  4990  //  Macros for defining which versions/platform a given symbol can be used.
  4991  //
  4992  //  @see http://clang.llvm.org/docs/AttributeReference.html#availability
  4993  //
  4994  //  * Note that these macros are only compatible with clang compilers that
  4995  //  * support the following target selection options:
  4996  //  *
  4997  //  * -mmacosx-version-min
  4998  //  * -miphoneos-version-min
  4999  //  * -mwatchos-version-min
  5000  //  * -mtvos-version-min
  5001  //
  5002  
  5003  // Evaluate to nothing for compilers that don't support availability.
  5004  
  5005  // If SPI decorations have not been defined elsewhere, disable them.
  5006  
  5007  // Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
  5008  //
  5009  // @APPLE_LICENSE_HEADER_START@
  5010  //
  5011  // This file contains Original Code and/or Modifications of Original Code
  5012  // as defined in and that are subject to the Apple Public Source License
  5013  // Version 2.0 (the 'License'). You may not use this file except in
  5014  // compliance with the License. Please obtain a copy of the License at
  5015  // http://www.opensource.apple.com/apsl/ and read it before using this
  5016  // file.
  5017  //
  5018  // The Original Code and all software distributed under the License are
  5019  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5020  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5021  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5022  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5023  // Please see the License for the specific language governing rights and
  5024  // limitations under the License.
  5025  //
  5026  // @APPLE_LICENSE_HEADER_END@
  5027  
  5028  // DO NOT REMOVE THIS COMMENT: fixincludes needs to see:
  5029  // __gnuc_va_list and include <stdarg.h>
  5030  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5031  //
  5032  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5033  //
  5034  // This file contains Original Code and/or Modifications of Original Code
  5035  // as defined in and that are subject to the Apple Public Source License
  5036  // Version 2.0 (the 'License'). You may not use this file except in
  5037  // compliance with the License. The rights granted to you under the License
  5038  // may not be used to create, or enable the creation or redistribution of,
  5039  // unlawful or unlicensed copies of an Apple operating system, or to
  5040  // circumvent, violate, or enable the circumvention or violation of, any
  5041  // terms of an Apple operating system software license agreement.
  5042  //
  5043  // Please obtain a copy of the License at
  5044  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5045  //
  5046  // The Original Code and all software distributed under the License are
  5047  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5048  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5049  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5050  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5051  // Please see the License for the specific language governing rights and
  5052  // limitations under the License.
  5053  //
  5054  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5055  
  5056  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  5057  //
  5058  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5059  //
  5060  // This file contains Original Code and/or Modifications of Original Code
  5061  // as defined in and that are subject to the Apple Public Source License
  5062  // Version 2.0 (the 'License'). You may not use this file except in
  5063  // compliance with the License. The rights granted to you under the License
  5064  // may not be used to create, or enable the creation or redistribution of,
  5065  // unlawful or unlicensed copies of an Apple operating system, or to
  5066  // circumvent, violate, or enable the circumvention or violation of, any
  5067  // terms of an Apple operating system software license agreement.
  5068  //
  5069  // Please obtain a copy of the License at
  5070  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5071  //
  5072  // The Original Code and all software distributed under the License are
  5073  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5074  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5075  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5076  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5077  // Please see the License for the specific language governing rights and
  5078  // limitations under the License.
  5079  //
  5080  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5081  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  5082  
  5083  // Copyright (c) 2000-2008 Apple Inc. All rights reserved.
  5084  //
  5085  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5086  //
  5087  // This file contains Original Code and/or Modifications of Original Code
  5088  // as defined in and that are subject to the Apple Public Source License
  5089  // Version 2.0 (the 'License'). You may not use this file except in
  5090  // compliance with the License. The rights granted to you under the License
  5091  // may not be used to create, or enable the creation or redistribution of,
  5092  // unlawful or unlicensed copies of an Apple operating system, or to
  5093  // circumvent, violate, or enable the circumvention or violation of, any
  5094  // terms of an Apple operating system software license agreement.
  5095  //
  5096  // Please obtain a copy of the License at
  5097  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5098  //
  5099  // The Original Code and all software distributed under the License are
  5100  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5101  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5102  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5103  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5104  // Please see the License for the specific language governing rights and
  5105  // limitations under the License.
  5106  //
  5107  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5108  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  5109  // Copyright (c) 1990, 1993
  5110  //	The Regents of the University of California.  All rights reserved.
  5111  //
  5112  // Redistribution and use in source and binary forms, with or without
  5113  // modification, are permitted provided that the following conditions
  5114  // are met:
  5115  // 1. Redistributions of source code must retain the above copyright
  5116  //    notice, this list of conditions and the following disclaimer.
  5117  // 2. Redistributions in binary form must reproduce the above copyright
  5118  //    notice, this list of conditions and the following disclaimer in the
  5119  //    documentation and/or other materials provided with the distribution.
  5120  // 3. All advertising materials mentioning features or use of this software
  5121  //    must display the following acknowledgement:
  5122  //	This product includes software developed by the University of
  5123  //	California, Berkeley and its contributors.
  5124  // 4. Neither the name of the University nor the names of its contributors
  5125  //    may be used to endorse or promote products derived from this software
  5126  //    without specific prior written permission.
  5127  //
  5128  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  5129  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  5130  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  5131  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  5132  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  5133  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  5134  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  5135  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  5136  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  5137  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  5138  // SUCH DAMAGE.
  5139  //
  5140  //	@(#)types.h	8.3 (Berkeley) 1/5/94
  5141  
  5142  // Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
  5143  //
  5144  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5145  //
  5146  // This file contains Original Code and/or Modifications of Original Code
  5147  // as defined in and that are subject to the Apple Public Source License
  5148  // Version 2.0 (the 'License'). You may not use this file except in
  5149  // compliance with the License. The rights granted to you under the License
  5150  // may not be used to create, or enable the creation or redistribution of,
  5151  // unlawful or unlicensed copies of an Apple operating system, or to
  5152  // circumvent, violate, or enable the circumvention or violation of, any
  5153  // terms of an Apple operating system software license agreement.
  5154  //
  5155  // Please obtain a copy of the License at
  5156  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5157  //
  5158  // The Original Code and all software distributed under the License are
  5159  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5160  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5161  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5162  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5163  // Please see the License for the specific language governing rights and
  5164  // limitations under the License.
  5165  //
  5166  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5167  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  5168  //
  5169  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5170  //
  5171  // This file contains Original Code and/or Modifications of Original Code
  5172  // as defined in and that are subject to the Apple Public Source License
  5173  // Version 2.0 (the 'License'). You may not use this file except in
  5174  // compliance with the License. The rights granted to you under the License
  5175  // may not be used to create, or enable the creation or redistribution of,
  5176  // unlawful or unlicensed copies of an Apple operating system, or to
  5177  // circumvent, violate, or enable the circumvention or violation of, any
  5178  // terms of an Apple operating system software license agreement.
  5179  //
  5180  // Please obtain a copy of the License at
  5181  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5182  //
  5183  // The Original Code and all software distributed under the License are
  5184  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5185  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5186  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5187  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5188  // Please see the License for the specific language governing rights and
  5189  // limitations under the License.
  5190  //
  5191  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5192  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  5193  // Copyright (c) 1991, 1993
  5194  //	The Regents of the University of California.  All rights reserved.
  5195  //
  5196  // This code is derived from software contributed to Berkeley by
  5197  // Berkeley Software Design, Inc.
  5198  //
  5199  // Redistribution and use in source and binary forms, with or without
  5200  // modification, are permitted provided that the following conditions
  5201  // are met:
  5202  // 1. Redistributions of source code must retain the above copyright
  5203  //    notice, this list of conditions and the following disclaimer.
  5204  // 2. Redistributions in binary form must reproduce the above copyright
  5205  //    notice, this list of conditions and the following disclaimer in the
  5206  //    documentation and/or other materials provided with the distribution.
  5207  // 3. All advertising materials mentioning features or use of this software
  5208  //    must display the following acknowledgement:
  5209  //	This product includes software developed by the University of
  5210  //	California, Berkeley and its contributors.
  5211  // 4. Neither the name of the University nor the names of its contributors
  5212  //    may be used to endorse or promote products derived from this software
  5213  //    without specific prior written permission.
  5214  //
  5215  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  5216  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  5217  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  5218  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  5219  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  5220  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  5221  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  5222  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  5223  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  5224  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  5225  // SUCH DAMAGE.
  5226  //
  5227  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  5228  
  5229  // Basic integral types.  Omit the typedef if
  5230  // not possible for a machine/compiler combination.
  5231  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5232  //
  5233  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5234  //
  5235  // This file contains Original Code and/or Modifications of Original Code
  5236  // as defined in and that are subject to the Apple Public Source License
  5237  // Version 2.0 (the 'License'). You may not use this file except in
  5238  // compliance with the License. The rights granted to you under the License
  5239  // may not be used to create, or enable the creation or redistribution of,
  5240  // unlawful or unlicensed copies of an Apple operating system, or to
  5241  // circumvent, violate, or enable the circumvention or violation of, any
  5242  // terms of an Apple operating system software license agreement.
  5243  //
  5244  // Please obtain a copy of the License at
  5245  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5246  //
  5247  // The Original Code and all software distributed under the License are
  5248  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5249  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5250  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5251  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5252  // Please see the License for the specific language governing rights and
  5253  // limitations under the License.
  5254  //
  5255  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5256  type Tint8_t = int8 /* _int8_t.h:30:31 */
  5257  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5258  //
  5259  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5260  //
  5261  // This file contains Original Code and/or Modifications of Original Code
  5262  // as defined in and that are subject to the Apple Public Source License
  5263  // Version 2.0 (the 'License'). You may not use this file except in
  5264  // compliance with the License. The rights granted to you under the License
  5265  // may not be used to create, or enable the creation or redistribution of,
  5266  // unlawful or unlicensed copies of an Apple operating system, or to
  5267  // circumvent, violate, or enable the circumvention or violation of, any
  5268  // terms of an Apple operating system software license agreement.
  5269  //
  5270  // Please obtain a copy of the License at
  5271  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5272  //
  5273  // The Original Code and all software distributed under the License are
  5274  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5275  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5276  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5277  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5278  // Please see the License for the specific language governing rights and
  5279  // limitations under the License.
  5280  //
  5281  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5282  type Tint16_t = int16 /* _int16_t.h:30:33 */
  5283  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5284  //
  5285  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5286  //
  5287  // This file contains Original Code and/or Modifications of Original Code
  5288  // as defined in and that are subject to the Apple Public Source License
  5289  // Version 2.0 (the 'License'). You may not use this file except in
  5290  // compliance with the License. The rights granted to you under the License
  5291  // may not be used to create, or enable the creation or redistribution of,
  5292  // unlawful or unlicensed copies of an Apple operating system, or to
  5293  // circumvent, violate, or enable the circumvention or violation of, any
  5294  // terms of an Apple operating system software license agreement.
  5295  //
  5296  // Please obtain a copy of the License at
  5297  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5298  //
  5299  // The Original Code and all software distributed under the License are
  5300  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5301  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5302  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5303  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5304  // Please see the License for the specific language governing rights and
  5305  // limitations under the License.
  5306  //
  5307  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5308  type Tint32_t = int32 /* _int32_t.h:30:33 */
  5309  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5310  //
  5311  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5312  //
  5313  // This file contains Original Code and/or Modifications of Original Code
  5314  // as defined in and that are subject to the Apple Public Source License
  5315  // Version 2.0 (the 'License'). You may not use this file except in
  5316  // compliance with the License. The rights granted to you under the License
  5317  // may not be used to create, or enable the creation or redistribution of,
  5318  // unlawful or unlicensed copies of an Apple operating system, or to
  5319  // circumvent, violate, or enable the circumvention or violation of, any
  5320  // terms of an Apple operating system software license agreement.
  5321  //
  5322  // Please obtain a copy of the License at
  5323  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5324  //
  5325  // The Original Code and all software distributed under the License are
  5326  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5327  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5328  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5329  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5330  // Please see the License for the specific language governing rights and
  5331  // limitations under the License.
  5332  //
  5333  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5334  type Tint64_t = int64 /* _int64_t.h:30:33 */
  5335  
  5336  // Copyright (c) 2016 Apple Inc. All rights reserved.
  5337  //
  5338  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5339  //
  5340  // This file contains Original Code and/or Modifications of Original Code
  5341  // as defined in and that are subject to the Apple Public Source License
  5342  // Version 2.0 (the 'License'). You may not use this file except in
  5343  // compliance with the License. The rights granted to you under the License
  5344  // may not be used to create, or enable the creation or redistribution of,
  5345  // unlawful or unlicensed copies of an Apple operating system, or to
  5346  // circumvent, violate, or enable the circumvention or violation of, any
  5347  // terms of an Apple operating system software license agreement.
  5348  //
  5349  // Please obtain a copy of the License at
  5350  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5351  //
  5352  // The Original Code and all software distributed under the License are
  5353  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5354  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5355  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5356  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5357  // Please see the License for the specific language governing rights and
  5358  // limitations under the License.
  5359  //
  5360  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5361  type Tu_int8_t = uint8 /* _u_int8_t.h:30:33 */
  5362  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5363  //
  5364  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5365  //
  5366  // This file contains Original Code and/or Modifications of Original Code
  5367  // as defined in and that are subject to the Apple Public Source License
  5368  // Version 2.0 (the 'License'). You may not use this file except in
  5369  // compliance with the License. The rights granted to you under the License
  5370  // may not be used to create, or enable the creation or redistribution of,
  5371  // unlawful or unlicensed copies of an Apple operating system, or to
  5372  // circumvent, violate, or enable the circumvention or violation of, any
  5373  // terms of an Apple operating system software license agreement.
  5374  //
  5375  // Please obtain a copy of the License at
  5376  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5377  //
  5378  // The Original Code and all software distributed under the License are
  5379  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5380  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5381  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5382  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5383  // Please see the License for the specific language governing rights and
  5384  // limitations under the License.
  5385  //
  5386  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5387  type Tu_int16_t = uint16 /* _u_int16_t.h:30:41 */
  5388  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5389  //
  5390  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5391  //
  5392  // This file contains Original Code and/or Modifications of Original Code
  5393  // as defined in and that are subject to the Apple Public Source License
  5394  // Version 2.0 (the 'License'). You may not use this file except in
  5395  // compliance with the License. The rights granted to you under the License
  5396  // may not be used to create, or enable the creation or redistribution of,
  5397  // unlawful or unlicensed copies of an Apple operating system, or to
  5398  // circumvent, violate, or enable the circumvention or violation of, any
  5399  // terms of an Apple operating system software license agreement.
  5400  //
  5401  // Please obtain a copy of the License at
  5402  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5403  //
  5404  // The Original Code and all software distributed under the License are
  5405  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5406  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5407  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5408  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5409  // Please see the License for the specific language governing rights and
  5410  // limitations under the License.
  5411  //
  5412  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5413  type Tu_int32_t = uint32 /* _u_int32_t.h:30:33 */
  5414  // Copyright (c) 2012 Apple Inc. All rights reserved.
  5415  //
  5416  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5417  //
  5418  // This file contains Original Code and/or Modifications of Original Code
  5419  // as defined in and that are subject to the Apple Public Source License
  5420  // Version 2.0 (the 'License'). You may not use this file except in
  5421  // compliance with the License. The rights granted to you under the License
  5422  // may not be used to create, or enable the creation or redistribution of,
  5423  // unlawful or unlicensed copies of an Apple operating system, or to
  5424  // circumvent, violate, or enable the circumvention or violation of, any
  5425  // terms of an Apple operating system software license agreement.
  5426  //
  5427  // Please obtain a copy of the License at
  5428  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5429  //
  5430  // The Original Code and all software distributed under the License are
  5431  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5432  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5433  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5434  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5435  // Please see the License for the specific language governing rights and
  5436  // limitations under the License.
  5437  //
  5438  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5439  type Tu_int64_t = uint64 /* _u_int64_t.h:30:33 */
  5440  
  5441  type Tregister_t = Tint64_t /* types.h:90:33 */
  5442  
  5443  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  5444  //
  5445  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5446  //
  5447  // This file contains Original Code and/or Modifications of Original Code
  5448  // as defined in and that are subject to the Apple Public Source License
  5449  // Version 2.0 (the 'License'). You may not use this file except in
  5450  // compliance with the License. The rights granted to you under the License
  5451  // may not be used to create, or enable the creation or redistribution of,
  5452  // unlawful or unlicensed copies of an Apple operating system, or to
  5453  // circumvent, violate, or enable the circumvention or violation of, any
  5454  // terms of an Apple operating system software license agreement.
  5455  //
  5456  // Please obtain a copy of the License at
  5457  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5458  //
  5459  // The Original Code and all software distributed under the License are
  5460  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5461  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5462  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5463  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5464  // Please see the License for the specific language governing rights and
  5465  // limitations under the License.
  5466  //
  5467  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5468  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  5469  //
  5470  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5471  //
  5472  // This file contains Original Code and/or Modifications of Original Code
  5473  // as defined in and that are subject to the Apple Public Source License
  5474  // Version 2.0 (the 'License'). You may not use this file except in
  5475  // compliance with the License. The rights granted to you under the License
  5476  // may not be used to create, or enable the creation or redistribution of,
  5477  // unlawful or unlicensed copies of an Apple operating system, or to
  5478  // circumvent, violate, or enable the circumvention or violation of, any
  5479  // terms of an Apple operating system software license agreement.
  5480  //
  5481  // Please obtain a copy of the License at
  5482  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5483  //
  5484  // The Original Code and all software distributed under the License are
  5485  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5486  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5487  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5488  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5489  // Please see the License for the specific language governing rights and
  5490  // limitations under the License.
  5491  //
  5492  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5493  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  5494  
  5495  type Tintptr_t = T__darwin_intptr_t /* _intptr_t.h:32:33 */
  5496  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  5497  //
  5498  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5499  //
  5500  // This file contains Original Code and/or Modifications of Original Code
  5501  // as defined in and that are subject to the Apple Public Source License
  5502  // Version 2.0 (the 'License'). You may not use this file except in
  5503  // compliance with the License. The rights granted to you under the License
  5504  // may not be used to create, or enable the creation or redistribution of,
  5505  // unlawful or unlicensed copies of an Apple operating system, or to
  5506  // circumvent, violate, or enable the circumvention or violation of, any
  5507  // terms of an Apple operating system software license agreement.
  5508  //
  5509  // Please obtain a copy of the License at
  5510  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5511  //
  5512  // The Original Code and all software distributed under the License are
  5513  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5514  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5515  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5516  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5517  // Please see the License for the specific language governing rights and
  5518  // limitations under the License.
  5519  //
  5520  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5521  
  5522  type Tuintptr_t = uint64 /* _uintptr_t.h:34:33 */
  5523  
  5524  // These types are used for reserving the largest possible size.
  5525  type Tuser_addr_t = Tu_int64_t  /* types.h:100:33 */
  5526  type Tuser_size_t = Tu_int64_t  /* types.h:101:33 */
  5527  type Tuser_ssize_t = Tint64_t   /* types.h:102:33 */
  5528  type Tuser_long_t = Tint64_t    /* types.h:103:33 */
  5529  type Tuser_ulong_t = Tu_int64_t /* types.h:104:33 */
  5530  type Tuser_time_t = Tint64_t    /* types.h:105:33 */
  5531  type Tuser_off_t = Tint64_t     /* types.h:106:33 */
  5532  
  5533  // This defines the size of syscall arguments after copying into the kernel:
  5534  type Tsyscall_arg_t = Tu_int64_t /* types.h:114:33 */
  5535  
  5536  type Tva_list = T__darwin_va_list /* _va_list.h:32:26 */
  5537  
  5538  type Tfpos_t = T__darwin_off_t /* _stdio.h:81:25 */
  5539  
  5540  // NB: to fit things in six character monocase externals, the stdio
  5541  // code uses the prefix `__s' for stdio objects, typically followed
  5542  // by a three-character attempt at a mnemonic.
  5543  
  5544  // stdio buffers
  5545  type S__sbuf = struct {
  5546  	F_base       uintptr
  5547  	F_size       int32
  5548  	F__ccgo_pad1 [4]byte
  5549  } /* _stdio.h:92:1 */
  5550  
  5551  // stdio state variables.
  5552  //
  5553  // The following always hold:
  5554  //
  5555  //	if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),
  5556  //		_lbfsize is -_bf._size, else _lbfsize is 0
  5557  //	if _flags&__SRD, _w is 0
  5558  //	if _flags&__SWR, _r is 0
  5559  //
  5560  // This ensures that the getc and putc macros (or inline functions) never
  5561  // try to write or read from a file that is in `read' or `write' mode.
  5562  // (Moreover, they can, and do, automatically switch from read mode to
  5563  // write mode, and back, on "r+" and "w+" files.)
  5564  //
  5565  // _lbfsize is used only to make the inline line-buffered output stream
  5566  // code as compact as possible.
  5567  //
  5568  // _ub, _up, and _ur are used when ungetc() pushes back more characters
  5569  // than fit in the current _bf, or when ungetc() pushes back a character
  5570  // that does not match the previous one in _bf.  When this happens,
  5571  // _ub._base becomes non-nil (i.e., a stream has ungetc() data iff
  5572  // _ub._base!=NULL) and _up and _ur save the current values of _p and _r.
  5573  //
  5574  // NB: see WARNING above before changing the layout of this structure!
  5575  type S__sFILE = struct {
  5576  	F_p          uintptr
  5577  	F_r          int32
  5578  	F_w          int32
  5579  	F_flags      int16
  5580  	F_file       int16
  5581  	F__ccgo_pad1 [4]byte
  5582  	F_bf         struct {
  5583  		F_base       uintptr
  5584  		F_size       int32
  5585  		F__ccgo_pad1 [4]byte
  5586  	}
  5587  	F_lbfsize    int32
  5588  	F__ccgo_pad2 [4]byte
  5589  	F_cookie     uintptr
  5590  	F_close      uintptr
  5591  	F_read       uintptr
  5592  	F_seek       uintptr
  5593  	F_write      uintptr
  5594  	F_ub         struct {
  5595  		F_base       uintptr
  5596  		F_size       int32
  5597  		F__ccgo_pad1 [4]byte
  5598  	}
  5599  	F_extra uintptr
  5600  	F_ur    int32
  5601  	F_ubuf  [3]uint8
  5602  	F_nbuf  [1]uint8
  5603  	F_lb    struct {
  5604  		F_base       uintptr
  5605  		F_size       int32
  5606  		F__ccgo_pad1 [4]byte
  5607  	}
  5608  	F_blksize    int32
  5609  	F__ccgo_pad3 [4]byte
  5610  	F_offset     Tfpos_t
  5611  } /* _stdio.h:126:9 */
  5612  
  5613  // stdio state variables.
  5614  //
  5615  // The following always hold:
  5616  //
  5617  //	if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR),
  5618  //		_lbfsize is -_bf._size, else _lbfsize is 0
  5619  //	if _flags&__SRD, _w is 0
  5620  //	if _flags&__SWR, _r is 0
  5621  //
  5622  // This ensures that the getc and putc macros (or inline functions) never
  5623  // try to write or read from a file that is in `read' or `write' mode.
  5624  // (Moreover, they can, and do, automatically switch from read mode to
  5625  // write mode, and back, on "r+" and "w+" files.)
  5626  //
  5627  // _lbfsize is used only to make the inline line-buffered output stream
  5628  // code as compact as possible.
  5629  //
  5630  // _ub, _up, and _ur are used when ungetc() pushes back more characters
  5631  // than fit in the current _bf, or when ungetc() pushes back a character
  5632  // that does not match the previous one in _bf.  When this happens,
  5633  // _ub._base becomes non-nil (i.e., a stream has ungetc() data iff
  5634  // _ub._base!=NULL) and _up and _ur save the current values of _p and _r.
  5635  //
  5636  // NB: see WARNING above before changing the layout of this structure!
  5637  type TFILE = S__sFILE /* _stdio.h:157:3 */
  5638  
  5639  // Additional functionality provided by:
  5640  // POSIX.1-2001
  5641  // ISO C99
  5642  
  5643  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  5644  //
  5645  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5646  //
  5647  // This file contains Original Code and/or Modifications of Original Code
  5648  // as defined in and that are subject to the Apple Public Source License
  5649  // Version 2.0 (the 'License'). You may not use this file except in
  5650  // compliance with the License. The rights granted to you under the License
  5651  // may not be used to create, or enable the creation or redistribution of,
  5652  // unlawful or unlicensed copies of an Apple operating system, or to
  5653  // circumvent, violate, or enable the circumvention or violation of, any
  5654  // terms of an Apple operating system software license agreement.
  5655  //
  5656  // Please obtain a copy of the License at
  5657  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5658  //
  5659  // The Original Code and all software distributed under the License are
  5660  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5661  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5662  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5663  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5664  // Please see the License for the specific language governing rights and
  5665  // limitations under the License.
  5666  //
  5667  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5668  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  5669  //
  5670  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5671  //
  5672  // This file contains Original Code and/or Modifications of Original Code
  5673  // as defined in and that are subject to the Apple Public Source License
  5674  // Version 2.0 (the 'License'). You may not use this file except in
  5675  // compliance with the License. The rights granted to you under the License
  5676  // may not be used to create, or enable the creation or redistribution of,
  5677  // unlawful or unlicensed copies of an Apple operating system, or to
  5678  // circumvent, violate, or enable the circumvention or violation of, any
  5679  // terms of an Apple operating system software license agreement.
  5680  //
  5681  // Please obtain a copy of the License at
  5682  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5683  //
  5684  // The Original Code and all software distributed under the License are
  5685  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5686  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5687  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5688  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5689  // Please see the License for the specific language governing rights and
  5690  // limitations under the License.
  5691  //
  5692  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5693  
  5694  type Toff_t = T__darwin_off_t /* _off_t.h:31:33 */
  5695  
  5696  // Additional functionality provided by:
  5697  // POSIX.1-2008
  5698  
  5699  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  5700  //
  5701  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5702  //
  5703  // This file contains Original Code and/or Modifications of Original Code
  5704  // as defined in and that are subject to the Apple Public Source License
  5705  // Version 2.0 (the 'License'). You may not use this file except in
  5706  // compliance with the License. The rights granted to you under the License
  5707  // may not be used to create, or enable the creation or redistribution of,
  5708  // unlawful or unlicensed copies of an Apple operating system, or to
  5709  // circumvent, violate, or enable the circumvention or violation of, any
  5710  // terms of an Apple operating system software license agreement.
  5711  //
  5712  // Please obtain a copy of the License at
  5713  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5714  //
  5715  // The Original Code and all software distributed under the License are
  5716  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5717  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5718  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5719  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5720  // Please see the License for the specific language governing rights and
  5721  // limitations under the License.
  5722  //
  5723  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5724  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  5725  //
  5726  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5727  //
  5728  // This file contains Original Code and/or Modifications of Original Code
  5729  // as defined in and that are subject to the Apple Public Source License
  5730  // Version 2.0 (the 'License'). You may not use this file except in
  5731  // compliance with the License. The rights granted to you under the License
  5732  // may not be used to create, or enable the creation or redistribution of,
  5733  // unlawful or unlicensed copies of an Apple operating system, or to
  5734  // circumvent, violate, or enable the circumvention or violation of, any
  5735  // terms of an Apple operating system software license agreement.
  5736  //
  5737  // Please obtain a copy of the License at
  5738  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5739  //
  5740  // The Original Code and all software distributed under the License are
  5741  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5742  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5743  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5744  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5745  // Please see the License for the specific language governing rights and
  5746  // limitations under the License.
  5747  //
  5748  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5749  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  5750  type Tssize_t = T__darwin_ssize_t /* _ssize_t.h:31:33 */
  5751  
  5752  // Copyright (c) 2000, 2002 - 2008 Apple Inc. All rights reserved.
  5753  //
  5754  // @APPLE_LICENSE_HEADER_START@
  5755  //
  5756  // This file contains Original Code and/or Modifications of Original Code
  5757  // as defined in and that are subject to the Apple Public Source License
  5758  // Version 2.0 (the 'License'). You may not use this file except in
  5759  // compliance with the License. Please obtain a copy of the License at
  5760  // http://www.opensource.apple.com/apsl/ and read it before using this
  5761  // file.
  5762  //
  5763  // The Original Code and all software distributed under the License are
  5764  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5765  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5766  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5767  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5768  // Please see the License for the specific language governing rights and
  5769  // limitations under the License.
  5770  //
  5771  // @APPLE_LICENSE_HEADER_END@
  5772  // -
  5773  // Copyright (c) 1990, 1993
  5774  //	The Regents of the University of California.  All rights reserved.
  5775  //
  5776  // Redistribution and use in source and binary forms, with or without
  5777  // modification, are permitted provided that the following conditions
  5778  // are met:
  5779  // 1. Redistributions of source code must retain the above copyright
  5780  //    notice, this list of conditions and the following disclaimer.
  5781  // 2. Redistributions in binary form must reproduce the above copyright
  5782  //    notice, this list of conditions and the following disclaimer in the
  5783  //    documentation and/or other materials provided with the distribution.
  5784  // 3. All advertising materials mentioning features or use of this software
  5785  //    must display the following acknowledgement:
  5786  //	This product includes software developed by the University of
  5787  //	California, Berkeley and its contributors.
  5788  // 4. Neither the name of the University nor the names of its contributors
  5789  //    may be used to endorse or promote products derived from this software
  5790  //    without specific prior written permission.
  5791  //
  5792  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  5793  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  5794  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  5795  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  5796  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  5797  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  5798  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  5799  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  5800  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  5801  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  5802  // SUCH DAMAGE.
  5803  //
  5804  //	@(#)stdlib.h	8.5 (Berkeley) 5/19/95
  5805  
  5806  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  5807  //
  5808  // @APPLE_LICENSE_HEADER_START@
  5809  //
  5810  // This file contains Original Code and/or Modifications of Original Code
  5811  // as defined in and that are subject to the Apple Public Source License
  5812  // Version 2.0 (the 'License'). You may not use this file except in
  5813  // compliance with the License. Please obtain a copy of the License at
  5814  // http://www.opensource.apple.com/apsl/ and read it before using this
  5815  // file.
  5816  //
  5817  // The Original Code and all software distributed under the License are
  5818  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5819  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5820  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5821  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5822  // Please see the License for the specific language governing rights and
  5823  // limitations under the License.
  5824  //
  5825  // @APPLE_LICENSE_HEADER_END@
  5826  
  5827  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  5828  //
  5829  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5830  //
  5831  // This file contains Original Code and/or Modifications of Original Code
  5832  // as defined in and that are subject to the Apple Public Source License
  5833  // Version 2.0 (the 'License'). You may not use this file except in
  5834  // compliance with the License. The rights granted to you under the License
  5835  // may not be used to create, or enable the creation or redistribution of,
  5836  // unlawful or unlicensed copies of an Apple operating system, or to
  5837  // circumvent, violate, or enable the circumvention or violation of, any
  5838  // terms of an Apple operating system software license agreement.
  5839  //
  5840  // Please obtain a copy of the License at
  5841  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5842  //
  5843  // The Original Code and all software distributed under the License are
  5844  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5845  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5846  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5847  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5848  // Please see the License for the specific language governing rights and
  5849  // limitations under the License.
  5850  //
  5851  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5852  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  5853  // Copyright (c) 1991, 1993
  5854  //	The Regents of the University of California.  All rights reserved.
  5855  //
  5856  // This code is derived from software contributed to Berkeley by
  5857  // Berkeley Software Design, Inc.
  5858  //
  5859  // Redistribution and use in source and binary forms, with or without
  5860  // modification, are permitted provided that the following conditions
  5861  // are met:
  5862  // 1. Redistributions of source code must retain the above copyright
  5863  //    notice, this list of conditions and the following disclaimer.
  5864  // 2. Redistributions in binary form must reproduce the above copyright
  5865  //    notice, this list of conditions and the following disclaimer in the
  5866  //    documentation and/or other materials provided with the distribution.
  5867  // 3. All advertising materials mentioning features or use of this software
  5868  //    must display the following acknowledgement:
  5869  //	This product includes software developed by the University of
  5870  //	California, Berkeley and its contributors.
  5871  // 4. Neither the name of the University nor the names of its contributors
  5872  //    may be used to endorse or promote products derived from this software
  5873  //    without specific prior written permission.
  5874  //
  5875  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  5876  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  5877  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  5878  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  5879  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  5880  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  5881  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  5882  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  5883  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  5884  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  5885  // SUCH DAMAGE.
  5886  //
  5887  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  5888  
  5889  // Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
  5890  //
  5891  // @APPLE_LICENSE_HEADER_START@
  5892  //
  5893  // This file contains Original Code and/or Modifications of Original Code
  5894  // as defined in and that are subject to the Apple Public Source License
  5895  // Version 2.0 (the 'License'). You may not use this file except in
  5896  // compliance with the License. Please obtain a copy of the License at
  5897  // http://www.opensource.apple.com/apsl/ and read it before using this
  5898  // file.
  5899  //
  5900  // The Original Code and all software distributed under the License are
  5901  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5902  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5903  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5904  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5905  // Please see the License for the specific language governing rights and
  5906  // limitations under the License.
  5907  //
  5908  // @APPLE_LICENSE_HEADER_END@
  5909  
  5910  // Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
  5911  //
  5912  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5913  //
  5914  // This file contains Original Code and/or Modifications of Original Code
  5915  // as defined in and that are subject to the Apple Public Source License
  5916  // Version 2.0 (the 'License'). You may not use this file except in
  5917  // compliance with the License. The rights granted to you under the License
  5918  // may not be used to create, or enable the creation or redistribution of,
  5919  // unlawful or unlicensed copies of an Apple operating system, or to
  5920  // circumvent, violate, or enable the circumvention or violation of, any
  5921  // terms of an Apple operating system software license agreement.
  5922  //
  5923  // Please obtain a copy of the License at
  5924  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5925  //
  5926  // The Original Code and all software distributed under the License are
  5927  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5928  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5929  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5930  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5931  // Please see the License for the specific language governing rights and
  5932  // limitations under the License.
  5933  //
  5934  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5935  // Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved
  5936  // Copyright (c) 1982, 1986, 1989, 1993, 1994
  5937  //	The Regents of the University of California.  All rights reserved.
  5938  //
  5939  // Redistribution and use in source and binary forms, with or without
  5940  // modification, are permitted provided that the following conditions
  5941  // are met:
  5942  // 1. Redistributions of source code must retain the above copyright
  5943  //    notice, this list of conditions and the following disclaimer.
  5944  // 2. Redistributions in binary form must reproduce the above copyright
  5945  //    notice, this list of conditions and the following disclaimer in the
  5946  //    documentation and/or other materials provided with the distribution.
  5947  // 3. All advertising materials mentioning features or use of this software
  5948  //    must display the following acknowledgement:
  5949  //	This product includes software developed by the University of
  5950  //	California, Berkeley and its contributors.
  5951  // 4. Neither the name of the University nor the names of its contributors
  5952  //    may be used to endorse or promote products derived from this software
  5953  //    without specific prior written permission.
  5954  //
  5955  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  5956  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  5957  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  5958  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  5959  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  5960  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  5961  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  5962  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  5963  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  5964  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  5965  // SUCH DAMAGE.
  5966  //
  5967  //	@(#)wait.h	8.2 (Berkeley) 7/10/94
  5968  
  5969  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  5970  //
  5971  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  5972  //
  5973  // This file contains Original Code and/or Modifications of Original Code
  5974  // as defined in and that are subject to the Apple Public Source License
  5975  // Version 2.0 (the 'License'). You may not use this file except in
  5976  // compliance with the License. The rights granted to you under the License
  5977  // may not be used to create, or enable the creation or redistribution of,
  5978  // unlawful or unlicensed copies of an Apple operating system, or to
  5979  // circumvent, violate, or enable the circumvention or violation of, any
  5980  // terms of an Apple operating system software license agreement.
  5981  //
  5982  // Please obtain a copy of the License at
  5983  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  5984  //
  5985  // The Original Code and all software distributed under the License are
  5986  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  5987  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  5988  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  5989  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  5990  // Please see the License for the specific language governing rights and
  5991  // limitations under the License.
  5992  //
  5993  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  5994  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  5995  // Copyright (c) 1991, 1993
  5996  //	The Regents of the University of California.  All rights reserved.
  5997  //
  5998  // This code is derived from software contributed to Berkeley by
  5999  // Berkeley Software Design, Inc.
  6000  //
  6001  // Redistribution and use in source and binary forms, with or without
  6002  // modification, are permitted provided that the following conditions
  6003  // are met:
  6004  // 1. Redistributions of source code must retain the above copyright
  6005  //    notice, this list of conditions and the following disclaimer.
  6006  // 2. Redistributions in binary form must reproduce the above copyright
  6007  //    notice, this list of conditions and the following disclaimer in the
  6008  //    documentation and/or other materials provided with the distribution.
  6009  // 3. All advertising materials mentioning features or use of this software
  6010  //    must display the following acknowledgement:
  6011  //	This product includes software developed by the University of
  6012  //	California, Berkeley and its contributors.
  6013  // 4. Neither the name of the University nor the names of its contributors
  6014  //    may be used to endorse or promote products derived from this software
  6015  //    without specific prior written permission.
  6016  //
  6017  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  6018  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  6019  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  6020  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  6021  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  6022  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  6023  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  6024  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  6025  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  6026  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  6027  // SUCH DAMAGE.
  6028  //
  6029  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  6030  
  6031  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  6032  //
  6033  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6034  //
  6035  // This file contains Original Code and/or Modifications of Original Code
  6036  // as defined in and that are subject to the Apple Public Source License
  6037  // Version 2.0 (the 'License'). You may not use this file except in
  6038  // compliance with the License. The rights granted to you under the License
  6039  // may not be used to create, or enable the creation or redistribution of,
  6040  // unlawful or unlicensed copies of an Apple operating system, or to
  6041  // circumvent, violate, or enable the circumvention or violation of, any
  6042  // terms of an Apple operating system software license agreement.
  6043  //
  6044  // Please obtain a copy of the License at
  6045  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6046  //
  6047  // The Original Code and all software distributed under the License are
  6048  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6049  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6050  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6051  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6052  // Please see the License for the specific language governing rights and
  6053  // limitations under the License.
  6054  //
  6055  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6056  
  6057  // This file holds definitions relevent to the wait4 system call
  6058  // and the alternate interfaces that use it (wait, wait3, waitpid).
  6059  
  6060  // [XSI] The type idtype_t shall be defined as an enumeration type whose
  6061  // possible values shall include at least P_ALL, P_PID, and P_PGID.
  6062  type Tidtype_t = uint32 /* wait.h:83:3 */
  6063  
  6064  // [XSI] The id_t and pid_t types shall be defined as described
  6065  // in <sys/types.h>
  6066  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  6067  //
  6068  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6069  //
  6070  // This file contains Original Code and/or Modifications of Original Code
  6071  // as defined in and that are subject to the Apple Public Source License
  6072  // Version 2.0 (the 'License'). You may not use this file except in
  6073  // compliance with the License. The rights granted to you under the License
  6074  // may not be used to create, or enable the creation or redistribution of,
  6075  // unlawful or unlicensed copies of an Apple operating system, or to
  6076  // circumvent, violate, or enable the circumvention or violation of, any
  6077  // terms of an Apple operating system software license agreement.
  6078  //
  6079  // Please obtain a copy of the License at
  6080  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6081  //
  6082  // The Original Code and all software distributed under the License are
  6083  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6084  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6085  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6086  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6087  // Please see the License for the specific language governing rights and
  6088  // limitations under the License.
  6089  //
  6090  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6091  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  6092  //
  6093  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6094  //
  6095  // This file contains Original Code and/or Modifications of Original Code
  6096  // as defined in and that are subject to the Apple Public Source License
  6097  // Version 2.0 (the 'License'). You may not use this file except in
  6098  // compliance with the License. The rights granted to you under the License
  6099  // may not be used to create, or enable the creation or redistribution of,
  6100  // unlawful or unlicensed copies of an Apple operating system, or to
  6101  // circumvent, violate, or enable the circumvention or violation of, any
  6102  // terms of an Apple operating system software license agreement.
  6103  //
  6104  // Please obtain a copy of the License at
  6105  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6106  //
  6107  // The Original Code and all software distributed under the License are
  6108  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6109  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6110  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6111  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6112  // Please see the License for the specific language governing rights and
  6113  // limitations under the License.
  6114  //
  6115  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6116  
  6117  type Tpid_t = T__darwin_pid_t /* _pid_t.h:31:31 */
  6118  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  6119  //
  6120  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6121  //
  6122  // This file contains Original Code and/or Modifications of Original Code
  6123  // as defined in and that are subject to the Apple Public Source License
  6124  // Version 2.0 (the 'License'). You may not use this file except in
  6125  // compliance with the License. The rights granted to you under the License
  6126  // may not be used to create, or enable the creation or redistribution of,
  6127  // unlawful or unlicensed copies of an Apple operating system, or to
  6128  // circumvent, violate, or enable the circumvention or violation of, any
  6129  // terms of an Apple operating system software license agreement.
  6130  //
  6131  // Please obtain a copy of the License at
  6132  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6133  //
  6134  // The Original Code and all software distributed under the License are
  6135  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6136  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6137  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6138  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6139  // Please see the License for the specific language governing rights and
  6140  // limitations under the License.
  6141  //
  6142  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6143  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  6144  //
  6145  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6146  //
  6147  // This file contains Original Code and/or Modifications of Original Code
  6148  // as defined in and that are subject to the Apple Public Source License
  6149  // Version 2.0 (the 'License'). You may not use this file except in
  6150  // compliance with the License. The rights granted to you under the License
  6151  // may not be used to create, or enable the creation or redistribution of,
  6152  // unlawful or unlicensed copies of an Apple operating system, or to
  6153  // circumvent, violate, or enable the circumvention or violation of, any
  6154  // terms of an Apple operating system software license agreement.
  6155  //
  6156  // Please obtain a copy of the License at
  6157  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6158  //
  6159  // The Original Code and all software distributed under the License are
  6160  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6161  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6162  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6163  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6164  // Please see the License for the specific language governing rights and
  6165  // limitations under the License.
  6166  //
  6167  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6168  
  6169  type Tid_t = T__darwin_id_t /* _id_t.h:31:25 */ // can hold pid_t, gid_t, or uid_t
  6170  
  6171  // [XSI] The siginfo_t type shall be defined as described in <signal.h>
  6172  // [XSI] The rusage structure shall be defined as described in <sys/resource.h>
  6173  // [XSI] Inclusion of the <sys/wait.h> header may also make visible all
  6174  // symbols from <signal.h> and <sys/resource.h>
  6175  //
  6176  // NOTE:	This requirement is currently being satisfied by the direct
  6177  //		inclusion of <sys/signal.h> and <sys/resource.h>, below.
  6178  //
  6179  //		Software should not depend on the exposure of anything other
  6180  //		than the types siginfo_t and struct rusage as a result of
  6181  //		this inclusion.  If you depend on any types or manifest
  6182  //		values othe than siginfo_t and struct rusage from either of
  6183  //		those files, you should explicitly include them yourself, as
  6184  //		well, or in future releases your stware may not compile
  6185  //		without modification.
  6186  // Copyright (c) 2000-2006 Apple Computer, Inc. All rights reserved.
  6187  //
  6188  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6189  //
  6190  // This file contains Original Code and/or Modifications of Original Code
  6191  // as defined in and that are subject to the Apple Public Source License
  6192  // Version 2.0 (the 'License'). You may not use this file except in
  6193  // compliance with the License. The rights granted to you under the License
  6194  // may not be used to create, or enable the creation or redistribution of,
  6195  // unlawful or unlicensed copies of an Apple operating system, or to
  6196  // circumvent, violate, or enable the circumvention or violation of, any
  6197  // terms of an Apple operating system software license agreement.
  6198  //
  6199  // Please obtain a copy of the License at
  6200  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6201  //
  6202  // The Original Code and all software distributed under the License are
  6203  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6204  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6205  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6206  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6207  // Please see the License for the specific language governing rights and
  6208  // limitations under the License.
  6209  //
  6210  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6211  // Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved
  6212  // Copyright (c) 1982, 1986, 1989, 1991, 1993
  6213  //	The Regents of the University of California.  All rights reserved.
  6214  // (c) UNIX System Laboratories, Inc.
  6215  // All or some portions of this file are derived from material licensed
  6216  // to the University of California by American Telephone and Telegraph
  6217  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  6218  // the permission of UNIX System Laboratories, Inc.
  6219  //
  6220  // Redistribution and use in source and binary forms, with or without
  6221  // modification, are permitted provided that the following conditions
  6222  // are met:
  6223  // 1. Redistributions of source code must retain the above copyright
  6224  //    notice, this list of conditions and the following disclaimer.
  6225  // 2. Redistributions in binary form must reproduce the above copyright
  6226  //    notice, this list of conditions and the following disclaimer in the
  6227  //    documentation and/or other materials provided with the distribution.
  6228  // 3. All advertising materials mentioning features or use of this software
  6229  //    must display the following acknowledgement:
  6230  //	This product includes software developed by the University of
  6231  //	California, Berkeley and its contributors.
  6232  // 4. Neither the name of the University nor the names of its contributors
  6233  //    may be used to endorse or promote products derived from this software
  6234  //    without specific prior written permission.
  6235  //
  6236  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  6237  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  6238  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  6239  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  6240  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  6241  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  6242  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  6243  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  6244  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  6245  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  6246  // SUCH DAMAGE.
  6247  //
  6248  //	@(#)signal.h	8.2 (Berkeley) 1/21/94
  6249  
  6250  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  6251  //
  6252  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6253  //
  6254  // This file contains Original Code and/or Modifications of Original Code
  6255  // as defined in and that are subject to the Apple Public Source License
  6256  // Version 2.0 (the 'License'). You may not use this file except in
  6257  // compliance with the License. The rights granted to you under the License
  6258  // may not be used to create, or enable the creation or redistribution of,
  6259  // unlawful or unlicensed copies of an Apple operating system, or to
  6260  // circumvent, violate, or enable the circumvention or violation of, any
  6261  // terms of an Apple operating system software license agreement.
  6262  //
  6263  // Please obtain a copy of the License at
  6264  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6265  //
  6266  // The Original Code and all software distributed under the License are
  6267  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6268  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6269  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6270  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6271  // Please see the License for the specific language governing rights and
  6272  // limitations under the License.
  6273  //
  6274  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6275  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  6276  // Copyright (c) 1991, 1993
  6277  //	The Regents of the University of California.  All rights reserved.
  6278  //
  6279  // This code is derived from software contributed to Berkeley by
  6280  // Berkeley Software Design, Inc.
  6281  //
  6282  // Redistribution and use in source and binary forms, with or without
  6283  // modification, are permitted provided that the following conditions
  6284  // are met:
  6285  // 1. Redistributions of source code must retain the above copyright
  6286  //    notice, this list of conditions and the following disclaimer.
  6287  // 2. Redistributions in binary form must reproduce the above copyright
  6288  //    notice, this list of conditions and the following disclaimer in the
  6289  //    documentation and/or other materials provided with the distribution.
  6290  // 3. All advertising materials mentioning features or use of this software
  6291  //    must display the following acknowledgement:
  6292  //	This product includes software developed by the University of
  6293  //	California, Berkeley and its contributors.
  6294  // 4. Neither the name of the University nor the names of its contributors
  6295  //    may be used to endorse or promote products derived from this software
  6296  //    without specific prior written permission.
  6297  //
  6298  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  6299  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  6300  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  6301  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  6302  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  6303  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  6304  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  6305  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  6306  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  6307  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  6308  // SUCH DAMAGE.
  6309  //
  6310  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  6311  
  6312  // Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
  6313  //
  6314  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6315  //
  6316  // This file contains Original Code and/or Modifications of Original Code
  6317  // as defined in and that are subject to the Apple Public Source License
  6318  // Version 2.0 (the 'License'). You may not use this file except in
  6319  // compliance with the License. The rights granted to you under the License
  6320  // may not be used to create, or enable the creation or redistribution of,
  6321  // unlawful or unlicensed copies of an Apple operating system, or to
  6322  // circumvent, violate, or enable the circumvention or violation of, any
  6323  // terms of an Apple operating system software license agreement.
  6324  //
  6325  // Please obtain a copy of the License at
  6326  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6327  //
  6328  // The Original Code and all software distributed under the License are
  6329  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6330  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6331  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6332  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6333  // Please see the License for the specific language governing rights and
  6334  // limitations under the License.
  6335  //
  6336  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6337  
  6338  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  6339  //
  6340  // @APPLE_LICENSE_HEADER_START@
  6341  //
  6342  // This file contains Original Code and/or Modifications of Original Code
  6343  // as defined in and that are subject to the Apple Public Source License
  6344  // Version 2.0 (the 'License'). You may not use this file except in
  6345  // compliance with the License. Please obtain a copy of the License at
  6346  // http://www.opensource.apple.com/apsl/ and read it before using this
  6347  // file.
  6348  //
  6349  // The Original Code and all software distributed under the License are
  6350  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6351  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6352  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6353  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6354  // Please see the License for the specific language governing rights and
  6355  // limitations under the License.
  6356  //
  6357  // @APPLE_LICENSE_HEADER_END@
  6358  
  6359  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  6360  //
  6361  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6362  //
  6363  // This file contains Original Code and/or Modifications of Original Code
  6364  // as defined in and that are subject to the Apple Public Source License
  6365  // Version 2.0 (the 'License'). You may not use this file except in
  6366  // compliance with the License. The rights granted to you under the License
  6367  // may not be used to create, or enable the creation or redistribution of,
  6368  // unlawful or unlicensed copies of an Apple operating system, or to
  6369  // circumvent, violate, or enable the circumvention or violation of, any
  6370  // terms of an Apple operating system software license agreement.
  6371  //
  6372  // Please obtain a copy of the License at
  6373  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6374  //
  6375  // The Original Code and all software distributed under the License are
  6376  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6377  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6378  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6379  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6380  // Please see the License for the specific language governing rights and
  6381  // limitations under the License.
  6382  //
  6383  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6384  
  6385  // Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
  6386  //
  6387  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6388  //
  6389  // This file contains Original Code and/or Modifications of Original Code
  6390  // as defined in and that are subject to the Apple Public Source License
  6391  // Version 2.0 (the 'License'). You may not use this file except in
  6392  // compliance with the License. The rights granted to you under the License
  6393  // may not be used to create, or enable the creation or redistribution of,
  6394  // unlawful or unlicensed copies of an Apple operating system, or to
  6395  // circumvent, violate, or enable the circumvention or violation of, any
  6396  // terms of an Apple operating system software license agreement.
  6397  //
  6398  // Please obtain a copy of the License at
  6399  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6400  //
  6401  // The Original Code and all software distributed under the License are
  6402  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6403  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6404  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6405  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6406  // Please see the License for the specific language governing rights and
  6407  // limitations under the License.
  6408  //
  6409  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6410  // Copyright (c) 1992 NeXT Computer, Inc.
  6411  //
  6412  
  6413  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  6414  //
  6415  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6416  //
  6417  // This file contains Original Code and/or Modifications of Original Code
  6418  // as defined in and that are subject to the Apple Public Source License
  6419  // Version 2.0 (the 'License'). You may not use this file except in
  6420  // compliance with the License. The rights granted to you under the License
  6421  // may not be used to create, or enable the creation or redistribution of,
  6422  // unlawful or unlicensed copies of an Apple operating system, or to
  6423  // circumvent, violate, or enable the circumvention or violation of, any
  6424  // terms of an Apple operating system software license agreement.
  6425  //
  6426  // Please obtain a copy of the License at
  6427  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6428  //
  6429  // The Original Code and all software distributed under the License are
  6430  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6431  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6432  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6433  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6434  // Please see the License for the specific language governing rights and
  6435  // limitations under the License.
  6436  //
  6437  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6438  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  6439  // Copyright (c) 1991, 1993
  6440  //	The Regents of the University of California.  All rights reserved.
  6441  //
  6442  // This code is derived from software contributed to Berkeley by
  6443  // Berkeley Software Design, Inc.
  6444  //
  6445  // Redistribution and use in source and binary forms, with or without
  6446  // modification, are permitted provided that the following conditions
  6447  // are met:
  6448  // 1. Redistributions of source code must retain the above copyright
  6449  //    notice, this list of conditions and the following disclaimer.
  6450  // 2. Redistributions in binary form must reproduce the above copyright
  6451  //    notice, this list of conditions and the following disclaimer in the
  6452  //    documentation and/or other materials provided with the distribution.
  6453  // 3. All advertising materials mentioning features or use of this software
  6454  //    must display the following acknowledgement:
  6455  //	This product includes software developed by the University of
  6456  //	California, Berkeley and its contributors.
  6457  // 4. Neither the name of the University nor the names of its contributors
  6458  //    may be used to endorse or promote products derived from this software
  6459  //    without specific prior written permission.
  6460  //
  6461  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  6462  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  6463  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  6464  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  6465  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  6466  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  6467  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  6468  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  6469  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  6470  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  6471  // SUCH DAMAGE.
  6472  //
  6473  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  6474  
  6475  type Tsig_atomic_t = int32 /* signal.h:41:13 */
  6476  
  6477  // Language spec sez we must list exactly one parameter, even though we
  6478  // actually supply three.  Ugh!
  6479  // SIG_HOLD is chosen to avoid KERN_SIG_* values in <sys/signalvar.h>
  6480  
  6481  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  6482  //
  6483  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6484  //
  6485  // This file contains Original Code and/or Modifications of Original Code
  6486  // as defined in and that are subject to the Apple Public Source License
  6487  // Version 2.0 (the 'License'). You may not use this file except in
  6488  // compliance with the License. The rights granted to you under the License
  6489  // may not be used to create, or enable the creation or redistribution of,
  6490  // unlawful or unlicensed copies of an Apple operating system, or to
  6491  // circumvent, violate, or enable the circumvention or violation of, any
  6492  // terms of an Apple operating system software license agreement.
  6493  //
  6494  // Please obtain a copy of the License at
  6495  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6496  //
  6497  // The Original Code and all software distributed under the License are
  6498  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6499  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6500  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6501  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6502  // Please see the License for the specific language governing rights and
  6503  // limitations under the License.
  6504  //
  6505  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6506  
  6507  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  6508  //
  6509  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6510  //
  6511  // This file contains Original Code and/or Modifications of Original Code
  6512  // as defined in and that are subject to the Apple Public Source License
  6513  // Version 2.0 (the 'License'). You may not use this file except in
  6514  // compliance with the License. The rights granted to you under the License
  6515  // may not be used to create, or enable the creation or redistribution of,
  6516  // unlawful or unlicensed copies of an Apple operating system, or to
  6517  // circumvent, violate, or enable the circumvention or violation of, any
  6518  // terms of an Apple operating system software license agreement.
  6519  //
  6520  // Please obtain a copy of the License at
  6521  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6522  //
  6523  // The Original Code and all software distributed under the License are
  6524  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6525  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6526  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6527  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6528  // Please see the License for the specific language governing rights and
  6529  // limitations under the License.
  6530  //
  6531  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6532  
  6533  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  6534  //
  6535  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6536  //
  6537  // This file contains Original Code and/or Modifications of Original Code
  6538  // as defined in and that are subject to the Apple Public Source License
  6539  // Version 2.0 (the 'License'). You may not use this file except in
  6540  // compliance with the License. The rights granted to you under the License
  6541  // may not be used to create, or enable the creation or redistribution of,
  6542  // unlawful or unlicensed copies of an Apple operating system, or to
  6543  // circumvent, violate, or enable the circumvention or violation of, any
  6544  // terms of an Apple operating system software license agreement.
  6545  //
  6546  // Please obtain a copy of the License at
  6547  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6548  //
  6549  // The Original Code and all software distributed under the License are
  6550  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6551  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6552  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6553  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6554  // Please see the License for the specific language governing rights and
  6555  // limitations under the License.
  6556  //
  6557  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6558  
  6559  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  6560  //
  6561  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6562  //
  6563  // This file contains Original Code and/or Modifications of Original Code
  6564  // as defined in and that are subject to the Apple Public Source License
  6565  // Version 2.0 (the 'License'). You may not use this file except in
  6566  // compliance with the License. The rights granted to you under the License
  6567  // may not be used to create, or enable the creation or redistribution of,
  6568  // unlawful or unlicensed copies of an Apple operating system, or to
  6569  // circumvent, violate, or enable the circumvention or violation of, any
  6570  // terms of an Apple operating system software license agreement.
  6571  //
  6572  // Please obtain a copy of the License at
  6573  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6574  //
  6575  // The Original Code and all software distributed under the License are
  6576  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6577  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6578  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6579  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6580  // Please see the License for the specific language governing rights and
  6581  // limitations under the License.
  6582  //
  6583  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6584  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  6585  // Copyright (c) 1991, 1993
  6586  //	The Regents of the University of California.  All rights reserved.
  6587  //
  6588  // This code is derived from software contributed to Berkeley by
  6589  // Berkeley Software Design, Inc.
  6590  //
  6591  // Redistribution and use in source and binary forms, with or without
  6592  // modification, are permitted provided that the following conditions
  6593  // are met:
  6594  // 1. Redistributions of source code must retain the above copyright
  6595  //    notice, this list of conditions and the following disclaimer.
  6596  // 2. Redistributions in binary form must reproduce the above copyright
  6597  //    notice, this list of conditions and the following disclaimer in the
  6598  //    documentation and/or other materials provided with the distribution.
  6599  // 3. All advertising materials mentioning features or use of this software
  6600  //    must display the following acknowledgement:
  6601  //	This product includes software developed by the University of
  6602  //	California, Berkeley and its contributors.
  6603  // 4. Neither the name of the University nor the names of its contributors
  6604  //    may be used to endorse or promote products derived from this software
  6605  //    without specific prior written permission.
  6606  //
  6607  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  6608  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  6609  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  6610  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  6611  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  6612  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  6613  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  6614  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  6615  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  6616  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  6617  // SUCH DAMAGE.
  6618  //
  6619  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  6620  
  6621  // Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
  6622  //
  6623  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6624  //
  6625  // This file contains Original Code and/or Modifications of Original Code
  6626  // as defined in and that are subject to the Apple Public Source License
  6627  // Version 2.0 (the 'License'). You may not use this file except in
  6628  // compliance with the License. The rights granted to you under the License
  6629  // may not be used to create, or enable the creation or redistribution of,
  6630  // unlawful or unlicensed copies of an Apple operating system, or to
  6631  // circumvent, violate, or enable the circumvention or violation of, any
  6632  // terms of an Apple operating system software license agreement.
  6633  //
  6634  // Please obtain a copy of the License at
  6635  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6636  //
  6637  // The Original Code and all software distributed under the License are
  6638  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6639  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6640  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6641  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6642  // Please see the License for the specific language governing rights and
  6643  // limitations under the License.
  6644  //
  6645  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6646  
  6647  // Copyright (c) 2017 Apple Inc. All rights reserved.
  6648  //
  6649  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6650  //
  6651  // This file contains Original Code and/or Modifications of Original Code
  6652  // as defined in and that are subject to the Apple Public Source License
  6653  // Version 2.0 (the 'License'). You may not use this file except in
  6654  // compliance with the License. The rights granted to you under the License
  6655  // may not be used to create, or enable the creation or redistribution of,
  6656  // unlawful or unlicensed copies of an Apple operating system, or to
  6657  // circumvent, violate, or enable the circumvention or violation of, any
  6658  // terms of an Apple operating system software license agreement.
  6659  //
  6660  // Please obtain a copy of the License at
  6661  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6662  //
  6663  // The Original Code and all software distributed under the License are
  6664  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6665  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6666  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6667  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6668  // Please see the License for the specific language governing rights and
  6669  // limitations under the License.
  6670  //
  6671  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6672  
  6673  // Copyright (c) 2004-2006 Apple Computer, Inc. All rights reserved.
  6674  //
  6675  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6676  //
  6677  // This file contains Original Code and/or Modifications of Original Code
  6678  // as defined in and that are subject to the Apple Public Source License
  6679  // Version 2.0 (the 'License'). You may not use this file except in
  6680  // compliance with the License. The rights granted to you under the License
  6681  // may not be used to create, or enable the creation or redistribution of,
  6682  // unlawful or unlicensed copies of an Apple operating system, or to
  6683  // circumvent, violate, or enable the circumvention or violation of, any
  6684  // terms of an Apple operating system software license agreement.
  6685  //
  6686  // Please obtain a copy of the License at
  6687  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6688  //
  6689  // The Original Code and all software distributed under the License are
  6690  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6691  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6692  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6693  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6694  // Please see the License for the specific language governing rights and
  6695  // limitations under the License.
  6696  //
  6697  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6698  // @OSF_COPYRIGHT@
  6699  
  6700  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  6701  //
  6702  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6703  //
  6704  // This file contains Original Code and/or Modifications of Original Code
  6705  // as defined in and that are subject to the Apple Public Source License
  6706  // Version 2.0 (the 'License'). You may not use this file except in
  6707  // compliance with the License. The rights granted to you under the License
  6708  // may not be used to create, or enable the creation or redistribution of,
  6709  // unlawful or unlicensed copies of an Apple operating system, or to
  6710  // circumvent, violate, or enable the circumvention or violation of, any
  6711  // terms of an Apple operating system software license agreement.
  6712  //
  6713  // Please obtain a copy of the License at
  6714  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6715  //
  6716  // The Original Code and all software distributed under the License are
  6717  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6718  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6719  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6720  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6721  // Please see the License for the specific language governing rights and
  6722  // limitations under the License.
  6723  //
  6724  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6725  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  6726  // Copyright (c) 1991, 1993
  6727  //	The Regents of the University of California.  All rights reserved.
  6728  //
  6729  // This code is derived from software contributed to Berkeley by
  6730  // Berkeley Software Design, Inc.
  6731  //
  6732  // Redistribution and use in source and binary forms, with or without
  6733  // modification, are permitted provided that the following conditions
  6734  // are met:
  6735  // 1. Redistributions of source code must retain the above copyright
  6736  //    notice, this list of conditions and the following disclaimer.
  6737  // 2. Redistributions in binary form must reproduce the above copyright
  6738  //    notice, this list of conditions and the following disclaimer in the
  6739  //    documentation and/or other materials provided with the distribution.
  6740  // 3. All advertising materials mentioning features or use of this software
  6741  //    must display the following acknowledgement:
  6742  //	This product includes software developed by the University of
  6743  //	California, Berkeley and its contributors.
  6744  // 4. Neither the name of the University nor the names of its contributors
  6745  //    may be used to endorse or promote products derived from this software
  6746  //    without specific prior written permission.
  6747  //
  6748  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  6749  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  6750  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  6751  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  6752  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  6753  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  6754  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  6755  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  6756  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  6757  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  6758  // SUCH DAMAGE.
  6759  //
  6760  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  6761  
  6762  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  6763  //
  6764  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  6765  //
  6766  // This file contains Original Code and/or Modifications of Original Code
  6767  // as defined in and that are subject to the Apple Public Source License
  6768  // Version 2.0 (the 'License'). You may not use this file except in
  6769  // compliance with the License. The rights granted to you under the License
  6770  // may not be used to create, or enable the creation or redistribution of,
  6771  // unlawful or unlicensed copies of an Apple operating system, or to
  6772  // circumvent, violate, or enable the circumvention or violation of, any
  6773  // terms of an Apple operating system software license agreement.
  6774  //
  6775  // Please obtain a copy of the License at
  6776  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  6777  //
  6778  // The Original Code and all software distributed under the License are
  6779  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  6780  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  6781  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  6782  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  6783  // Please see the License for the specific language governing rights and
  6784  // limitations under the License.
  6785  //
  6786  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  6787  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  6788  
  6789  // i386 is the structure that is exported to user threads for
  6790  // use in status/mutate calls.  This structure should never change.
  6791  //
  6792  
  6793  type S__darwin_i386_thread_state = struct {
  6794  	F__eax    uint32
  6795  	F__ebx    uint32
  6796  	F__ecx    uint32
  6797  	F__edx    uint32
  6798  	F__edi    uint32
  6799  	F__esi    uint32
  6800  	F__ebp    uint32
  6801  	F__esp    uint32
  6802  	F__ss     uint32
  6803  	F__eflags uint32
  6804  	F__eip    uint32
  6805  	F__cs     uint32
  6806  	F__ds     uint32
  6807  	F__es     uint32
  6808  	F__fs     uint32
  6809  	F__gs     uint32
  6810  } /* _structs.h:48:1 */
  6811  
  6812  // This structure should be double-word aligned for performance
  6813  
  6814  type S__darwin_fp_control = struct {
  6815  	F__ccgo_pad1 [0]uint16
  6816  	F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  6817  } /* _structs.h:94:1 */
  6818  
  6819  type T__darwin_fp_control_t = S__darwin_fp_control /* _structs.h:119:28 */
  6820  
  6821  // Status word.
  6822  
  6823  type S__darwin_fp_status = struct {
  6824  	F__ccgo_pad1 [0]uint16
  6825  	F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  6826  } /* _structs.h:152:1 */
  6827  
  6828  type T__darwin_fp_status_t = S__darwin_fp_status /* _structs.h:169:27 */
  6829  
  6830  // defn of 80bit x87 FPU or MMX register
  6831  
  6832  type S__darwin_mmst_reg = struct {
  6833  	F__mmst_reg  [10]int8
  6834  	F__mmst_rsrv [6]int8
  6835  } /* _structs.h:196:1 */
  6836  
  6837  // defn of 128 bit XMM regs
  6838  
  6839  type S__darwin_xmm_reg = struct{ F__xmm_reg [16]int8 } /* _structs.h:215:1 */
  6840  
  6841  // defn of 256 bit YMM regs
  6842  
  6843  type S__darwin_ymm_reg = struct{ F__ymm_reg [32]int8 } /* _structs.h:231:1 */
  6844  
  6845  // defn of 512 bit ZMM regs
  6846  
  6847  type S__darwin_zmm_reg = struct{ F__zmm_reg [64]int8 } /* _structs.h:247:1 */
  6848  
  6849  type S__darwin_opmask_reg = struct{ F__opmask_reg [8]int8 } /* _structs.h:261:1 */
  6850  
  6851  // Floating point state.
  6852  
  6853  type S__darwin_i386_float_state = struct {
  6854  	F__fpu_reserved [2]int32
  6855  	F__fpu_fcw      struct {
  6856  		F__ccgo_pad1 [0]uint16
  6857  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  6858  	}
  6859  	F__fpu_fsw struct {
  6860  		F__ccgo_pad1 [0]uint16
  6861  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  6862  	}
  6863  	F__fpu_ftw       T__uint8_t
  6864  	F__fpu_rsrv1     T__uint8_t
  6865  	F__fpu_fop       T__uint16_t
  6866  	F__fpu_ip        T__uint32_t
  6867  	F__fpu_cs        T__uint16_t
  6868  	F__fpu_rsrv2     T__uint16_t
  6869  	F__fpu_dp        T__uint32_t
  6870  	F__fpu_ds        T__uint16_t
  6871  	F__fpu_rsrv3     T__uint16_t
  6872  	F__fpu_mxcsr     T__uint32_t
  6873  	F__fpu_mxcsrmask T__uint32_t
  6874  	F__fpu_stmm0     struct {
  6875  		F__mmst_reg  [10]int8
  6876  		F__mmst_rsrv [6]int8
  6877  	}
  6878  	F__fpu_stmm1 struct {
  6879  		F__mmst_reg  [10]int8
  6880  		F__mmst_rsrv [6]int8
  6881  	}
  6882  	F__fpu_stmm2 struct {
  6883  		F__mmst_reg  [10]int8
  6884  		F__mmst_rsrv [6]int8
  6885  	}
  6886  	F__fpu_stmm3 struct {
  6887  		F__mmst_reg  [10]int8
  6888  		F__mmst_rsrv [6]int8
  6889  	}
  6890  	F__fpu_stmm4 struct {
  6891  		F__mmst_reg  [10]int8
  6892  		F__mmst_rsrv [6]int8
  6893  	}
  6894  	F__fpu_stmm5 struct {
  6895  		F__mmst_reg  [10]int8
  6896  		F__mmst_rsrv [6]int8
  6897  	}
  6898  	F__fpu_stmm6 struct {
  6899  		F__mmst_reg  [10]int8
  6900  		F__mmst_rsrv [6]int8
  6901  	}
  6902  	F__fpu_stmm7 struct {
  6903  		F__mmst_reg  [10]int8
  6904  		F__mmst_rsrv [6]int8
  6905  	}
  6906  	F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  6907  	F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  6908  	F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  6909  	F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  6910  	F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  6911  	F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  6912  	F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  6913  	F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  6914  	F__fpu_rsrv4     [224]int8
  6915  	F__fpu_reserved1 int32
  6916  } /* _structs.h:283:1 */
  6917  
  6918  type S__darwin_i386_avx_state = struct {
  6919  	F__fpu_reserved [2]int32
  6920  	F__fpu_fcw      struct {
  6921  		F__ccgo_pad1 [0]uint16
  6922  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  6923  	}
  6924  	F__fpu_fsw struct {
  6925  		F__ccgo_pad1 [0]uint16
  6926  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  6927  	}
  6928  	F__fpu_ftw       T__uint8_t
  6929  	F__fpu_rsrv1     T__uint8_t
  6930  	F__fpu_fop       T__uint16_t
  6931  	F__fpu_ip        T__uint32_t
  6932  	F__fpu_cs        T__uint16_t
  6933  	F__fpu_rsrv2     T__uint16_t
  6934  	F__fpu_dp        T__uint32_t
  6935  	F__fpu_ds        T__uint16_t
  6936  	F__fpu_rsrv3     T__uint16_t
  6937  	F__fpu_mxcsr     T__uint32_t
  6938  	F__fpu_mxcsrmask T__uint32_t
  6939  	F__fpu_stmm0     struct {
  6940  		F__mmst_reg  [10]int8
  6941  		F__mmst_rsrv [6]int8
  6942  	}
  6943  	F__fpu_stmm1 struct {
  6944  		F__mmst_reg  [10]int8
  6945  		F__mmst_rsrv [6]int8
  6946  	}
  6947  	F__fpu_stmm2 struct {
  6948  		F__mmst_reg  [10]int8
  6949  		F__mmst_rsrv [6]int8
  6950  	}
  6951  	F__fpu_stmm3 struct {
  6952  		F__mmst_reg  [10]int8
  6953  		F__mmst_rsrv [6]int8
  6954  	}
  6955  	F__fpu_stmm4 struct {
  6956  		F__mmst_reg  [10]int8
  6957  		F__mmst_rsrv [6]int8
  6958  	}
  6959  	F__fpu_stmm5 struct {
  6960  		F__mmst_reg  [10]int8
  6961  		F__mmst_rsrv [6]int8
  6962  	}
  6963  	F__fpu_stmm6 struct {
  6964  		F__mmst_reg  [10]int8
  6965  		F__mmst_rsrv [6]int8
  6966  	}
  6967  	F__fpu_stmm7 struct {
  6968  		F__mmst_reg  [10]int8
  6969  		F__mmst_rsrv [6]int8
  6970  	}
  6971  	F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  6972  	F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  6973  	F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  6974  	F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  6975  	F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  6976  	F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  6977  	F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  6978  	F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  6979  	F__fpu_rsrv4     [224]int8
  6980  	F__fpu_reserved1 int32
  6981  	F__avx_reserved1 [64]int8
  6982  	F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  6983  	F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  6984  	F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  6985  	F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  6986  	F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  6987  	F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  6988  	F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  6989  	F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  6990  } /* _structs.h:320:1 */
  6991  
  6992  type S__darwin_i386_avx512_state = struct {
  6993  	F__fpu_reserved [2]int32
  6994  	F__fpu_fcw      struct {
  6995  		F__ccgo_pad1 [0]uint16
  6996  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  6997  	}
  6998  	F__fpu_fsw struct {
  6999  		F__ccgo_pad1 [0]uint16
  7000  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7001  	}
  7002  	F__fpu_ftw       T__uint8_t
  7003  	F__fpu_rsrv1     T__uint8_t
  7004  	F__fpu_fop       T__uint16_t
  7005  	F__fpu_ip        T__uint32_t
  7006  	F__fpu_cs        T__uint16_t
  7007  	F__fpu_rsrv2     T__uint16_t
  7008  	F__fpu_dp        T__uint32_t
  7009  	F__fpu_ds        T__uint16_t
  7010  	F__fpu_rsrv3     T__uint16_t
  7011  	F__fpu_mxcsr     T__uint32_t
  7012  	F__fpu_mxcsrmask T__uint32_t
  7013  	F__fpu_stmm0     struct {
  7014  		F__mmst_reg  [10]int8
  7015  		F__mmst_rsrv [6]int8
  7016  	}
  7017  	F__fpu_stmm1 struct {
  7018  		F__mmst_reg  [10]int8
  7019  		F__mmst_rsrv [6]int8
  7020  	}
  7021  	F__fpu_stmm2 struct {
  7022  		F__mmst_reg  [10]int8
  7023  		F__mmst_rsrv [6]int8
  7024  	}
  7025  	F__fpu_stmm3 struct {
  7026  		F__mmst_reg  [10]int8
  7027  		F__mmst_rsrv [6]int8
  7028  	}
  7029  	F__fpu_stmm4 struct {
  7030  		F__mmst_reg  [10]int8
  7031  		F__mmst_rsrv [6]int8
  7032  	}
  7033  	F__fpu_stmm5 struct {
  7034  		F__mmst_reg  [10]int8
  7035  		F__mmst_rsrv [6]int8
  7036  	}
  7037  	F__fpu_stmm6 struct {
  7038  		F__mmst_reg  [10]int8
  7039  		F__mmst_rsrv [6]int8
  7040  	}
  7041  	F__fpu_stmm7 struct {
  7042  		F__mmst_reg  [10]int8
  7043  		F__mmst_rsrv [6]int8
  7044  	}
  7045  	F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7046  	F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7047  	F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7048  	F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7049  	F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7050  	F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7051  	F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7052  	F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7053  	F__fpu_rsrv4     [224]int8
  7054  	F__fpu_reserved1 int32
  7055  	F__avx_reserved1 [64]int8
  7056  	F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  7057  	F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  7058  	F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  7059  	F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  7060  	F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  7061  	F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  7062  	F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  7063  	F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  7064  	F__fpu_k0        struct{ F__opmask_reg [8]int8 }
  7065  	F__fpu_k1        struct{ F__opmask_reg [8]int8 }
  7066  	F__fpu_k2        struct{ F__opmask_reg [8]int8 }
  7067  	F__fpu_k3        struct{ F__opmask_reg [8]int8 }
  7068  	F__fpu_k4        struct{ F__opmask_reg [8]int8 }
  7069  	F__fpu_k5        struct{ F__opmask_reg [8]int8 }
  7070  	F__fpu_k6        struct{ F__opmask_reg [8]int8 }
  7071  	F__fpu_k7        struct{ F__opmask_reg [8]int8 }
  7072  	F__fpu_zmmh0     struct{ F__ymm_reg [32]int8 }
  7073  	F__fpu_zmmh1     struct{ F__ymm_reg [32]int8 }
  7074  	F__fpu_zmmh2     struct{ F__ymm_reg [32]int8 }
  7075  	F__fpu_zmmh3     struct{ F__ymm_reg [32]int8 }
  7076  	F__fpu_zmmh4     struct{ F__ymm_reg [32]int8 }
  7077  	F__fpu_zmmh5     struct{ F__ymm_reg [32]int8 }
  7078  	F__fpu_zmmh6     struct{ F__ymm_reg [32]int8 }
  7079  	F__fpu_zmmh7     struct{ F__ymm_reg [32]int8 }
  7080  } /* _structs.h:366:1 */
  7081  
  7082  type S__darwin_i386_exception_state = struct {
  7083  	F__trapno     T__uint16_t
  7084  	F__cpu        T__uint16_t
  7085  	F__err        T__uint32_t
  7086  	F__faultvaddr T__uint32_t
  7087  } /* _structs.h:577:1 */
  7088  
  7089  type S__darwin_x86_debug_state32 = struct {
  7090  	F__dr0 uint32
  7091  	F__dr1 uint32
  7092  	F__dr2 uint32
  7093  	F__dr3 uint32
  7094  	F__dr4 uint32
  7095  	F__dr5 uint32
  7096  	F__dr6 uint32
  7097  	F__dr7 uint32
  7098  } /* _structs.h:597:1 */
  7099  
  7100  type S__x86_instruction_state = struct {
  7101  	F__insn_stream_valid_bytes int32
  7102  	F__insn_offset             int32
  7103  	F__out_of_synch            int32
  7104  	F__insn_bytes              [2380]T__uint8_t
  7105  	F__insn_cacheline          [64]T__uint8_t
  7106  } /* _structs.h:610:1 */
  7107  
  7108  type S__last_branch_record = struct {
  7109  	F__from_ip    T__uint64_t
  7110  	F__to_ip      T__uint64_t
  7111  	F__mispredict uint32 /* __uint32_t __mispredict: 1, __uint32_t __tsx_abort: 1, __uint32_t __in_tsx: 1, __uint32_t __cycle_count: 16, __uint32_t __reserved: 13 */
  7112  	F__ccgo_pad1  [4]byte
  7113  } /* _structs.h:626:1 */
  7114  
  7115  type S__last_branch_state = struct {
  7116  	F__lbr_count         int32
  7117  	F__lbr_supported_tsx uint32 /* __uint32_t __lbr_supported_tsx: 1, __uint32_t __lbr_supported_cycle_count: 1, __uint32_t __reserved: 30 */
  7118  	F__ccgo_pad1         [8]byte
  7119  	F__lbrs              [32]struct {
  7120  		F__from_ip    T__uint64_t
  7121  		F__to_ip      T__uint64_t
  7122  		F__mispredict uint32 /* __uint32_t __mispredict: 1, __uint32_t __tsx_abort: 1, __uint32_t __in_tsx: 1, __uint32_t __cycle_count: 16, __uint32_t __reserved: 13 */
  7123  		F__ccgo_pad1  [4]byte
  7124  	}
  7125  } /* _structs.h:638:1 */
  7126  
  7127  type S__x86_pagein_state = struct{ F__pagein_error int32 } /* _structs.h:704:1 */
  7128  
  7129  // 64 bit versions of the above
  7130  
  7131  type S__darwin_x86_thread_state64 = struct {
  7132  	F__rax    T__uint64_t
  7133  	F__rbx    T__uint64_t
  7134  	F__rcx    T__uint64_t
  7135  	F__rdx    T__uint64_t
  7136  	F__rdi    T__uint64_t
  7137  	F__rsi    T__uint64_t
  7138  	F__rbp    T__uint64_t
  7139  	F__rsp    T__uint64_t
  7140  	F__r8     T__uint64_t
  7141  	F__r9     T__uint64_t
  7142  	F__r10    T__uint64_t
  7143  	F__r11    T__uint64_t
  7144  	F__r12    T__uint64_t
  7145  	F__r13    T__uint64_t
  7146  	F__r14    T__uint64_t
  7147  	F__r15    T__uint64_t
  7148  	F__rip    T__uint64_t
  7149  	F__rflags T__uint64_t
  7150  	F__cs     T__uint64_t
  7151  	F__fs     T__uint64_t
  7152  	F__gs     T__uint64_t
  7153  } /* _structs.h:715:1 */
  7154  
  7155  // 64 bit versions of the above (complete)
  7156  
  7157  type S__darwin_x86_thread_full_state64 = struct {
  7158  	F__ss64 struct {
  7159  		F__rax    T__uint64_t
  7160  		F__rbx    T__uint64_t
  7161  		F__rcx    T__uint64_t
  7162  		F__rdx    T__uint64_t
  7163  		F__rdi    T__uint64_t
  7164  		F__rsi    T__uint64_t
  7165  		F__rbp    T__uint64_t
  7166  		F__rsp    T__uint64_t
  7167  		F__r8     T__uint64_t
  7168  		F__r9     T__uint64_t
  7169  		F__r10    T__uint64_t
  7170  		F__r11    T__uint64_t
  7171  		F__r12    T__uint64_t
  7172  		F__r13    T__uint64_t
  7173  		F__r14    T__uint64_t
  7174  		F__r15    T__uint64_t
  7175  		F__rip    T__uint64_t
  7176  		F__rflags T__uint64_t
  7177  		F__cs     T__uint64_t
  7178  		F__fs     T__uint64_t
  7179  		F__gs     T__uint64_t
  7180  	}
  7181  	F__ds     T__uint64_t
  7182  	F__es     T__uint64_t
  7183  	F__ss     T__uint64_t
  7184  	F__gsbase T__uint64_t
  7185  } /* _structs.h:773:1 */
  7186  
  7187  type S__darwin_x86_float_state64 = struct {
  7188  	F__fpu_reserved [2]int32
  7189  	F__fpu_fcw      struct {
  7190  		F__ccgo_pad1 [0]uint16
  7191  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7192  	}
  7193  	F__fpu_fsw struct {
  7194  		F__ccgo_pad1 [0]uint16
  7195  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7196  	}
  7197  	F__fpu_ftw       T__uint8_t
  7198  	F__fpu_rsrv1     T__uint8_t
  7199  	F__fpu_fop       T__uint16_t
  7200  	F__fpu_ip        T__uint32_t
  7201  	F__fpu_cs        T__uint16_t
  7202  	F__fpu_rsrv2     T__uint16_t
  7203  	F__fpu_dp        T__uint32_t
  7204  	F__fpu_ds        T__uint16_t
  7205  	F__fpu_rsrv3     T__uint16_t
  7206  	F__fpu_mxcsr     T__uint32_t
  7207  	F__fpu_mxcsrmask T__uint32_t
  7208  	F__fpu_stmm0     struct {
  7209  		F__mmst_reg  [10]int8
  7210  		F__mmst_rsrv [6]int8
  7211  	}
  7212  	F__fpu_stmm1 struct {
  7213  		F__mmst_reg  [10]int8
  7214  		F__mmst_rsrv [6]int8
  7215  	}
  7216  	F__fpu_stmm2 struct {
  7217  		F__mmst_reg  [10]int8
  7218  		F__mmst_rsrv [6]int8
  7219  	}
  7220  	F__fpu_stmm3 struct {
  7221  		F__mmst_reg  [10]int8
  7222  		F__mmst_rsrv [6]int8
  7223  	}
  7224  	F__fpu_stmm4 struct {
  7225  		F__mmst_reg  [10]int8
  7226  		F__mmst_rsrv [6]int8
  7227  	}
  7228  	F__fpu_stmm5 struct {
  7229  		F__mmst_reg  [10]int8
  7230  		F__mmst_rsrv [6]int8
  7231  	}
  7232  	F__fpu_stmm6 struct {
  7233  		F__mmst_reg  [10]int8
  7234  		F__mmst_rsrv [6]int8
  7235  	}
  7236  	F__fpu_stmm7 struct {
  7237  		F__mmst_reg  [10]int8
  7238  		F__mmst_rsrv [6]int8
  7239  	}
  7240  	F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7241  	F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7242  	F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7243  	F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7244  	F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7245  	F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7246  	F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7247  	F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7248  	F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  7249  	F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  7250  	F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  7251  	F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  7252  	F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  7253  	F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  7254  	F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  7255  	F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  7256  	F__fpu_rsrv4     [96]int8
  7257  	F__fpu_reserved1 int32
  7258  } /* _structs.h:796:1 */
  7259  
  7260  type S__darwin_x86_avx_state64 = struct {
  7261  	F__fpu_reserved [2]int32
  7262  	F__fpu_fcw      struct {
  7263  		F__ccgo_pad1 [0]uint16
  7264  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7265  	}
  7266  	F__fpu_fsw struct {
  7267  		F__ccgo_pad1 [0]uint16
  7268  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7269  	}
  7270  	F__fpu_ftw       T__uint8_t
  7271  	F__fpu_rsrv1     T__uint8_t
  7272  	F__fpu_fop       T__uint16_t
  7273  	F__fpu_ip        T__uint32_t
  7274  	F__fpu_cs        T__uint16_t
  7275  	F__fpu_rsrv2     T__uint16_t
  7276  	F__fpu_dp        T__uint32_t
  7277  	F__fpu_ds        T__uint16_t
  7278  	F__fpu_rsrv3     T__uint16_t
  7279  	F__fpu_mxcsr     T__uint32_t
  7280  	F__fpu_mxcsrmask T__uint32_t
  7281  	F__fpu_stmm0     struct {
  7282  		F__mmst_reg  [10]int8
  7283  		F__mmst_rsrv [6]int8
  7284  	}
  7285  	F__fpu_stmm1 struct {
  7286  		F__mmst_reg  [10]int8
  7287  		F__mmst_rsrv [6]int8
  7288  	}
  7289  	F__fpu_stmm2 struct {
  7290  		F__mmst_reg  [10]int8
  7291  		F__mmst_rsrv [6]int8
  7292  	}
  7293  	F__fpu_stmm3 struct {
  7294  		F__mmst_reg  [10]int8
  7295  		F__mmst_rsrv [6]int8
  7296  	}
  7297  	F__fpu_stmm4 struct {
  7298  		F__mmst_reg  [10]int8
  7299  		F__mmst_rsrv [6]int8
  7300  	}
  7301  	F__fpu_stmm5 struct {
  7302  		F__mmst_reg  [10]int8
  7303  		F__mmst_rsrv [6]int8
  7304  	}
  7305  	F__fpu_stmm6 struct {
  7306  		F__mmst_reg  [10]int8
  7307  		F__mmst_rsrv [6]int8
  7308  	}
  7309  	F__fpu_stmm7 struct {
  7310  		F__mmst_reg  [10]int8
  7311  		F__mmst_rsrv [6]int8
  7312  	}
  7313  	F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7314  	F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7315  	F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7316  	F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7317  	F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7318  	F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7319  	F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7320  	F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7321  	F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  7322  	F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  7323  	F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  7324  	F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  7325  	F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  7326  	F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  7327  	F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  7328  	F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  7329  	F__fpu_rsrv4     [96]int8
  7330  	F__fpu_reserved1 int32
  7331  	F__avx_reserved1 [64]int8
  7332  	F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  7333  	F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  7334  	F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  7335  	F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  7336  	F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  7337  	F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  7338  	F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  7339  	F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  7340  	F__fpu_ymmh8     struct{ F__xmm_reg [16]int8 }
  7341  	F__fpu_ymmh9     struct{ F__xmm_reg [16]int8 }
  7342  	F__fpu_ymmh10    struct{ F__xmm_reg [16]int8 }
  7343  	F__fpu_ymmh11    struct{ F__xmm_reg [16]int8 }
  7344  	F__fpu_ymmh12    struct{ F__xmm_reg [16]int8 }
  7345  	F__fpu_ymmh13    struct{ F__xmm_reg [16]int8 }
  7346  	F__fpu_ymmh14    struct{ F__xmm_reg [16]int8 }
  7347  	F__fpu_ymmh15    struct{ F__xmm_reg [16]int8 }
  7348  } /* _structs.h:847:1 */
  7349  
  7350  type S__darwin_x86_avx512_state64 = struct {
  7351  	F__fpu_reserved [2]int32
  7352  	F__fpu_fcw      struct {
  7353  		F__ccgo_pad1 [0]uint16
  7354  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7355  	}
  7356  	F__fpu_fsw struct {
  7357  		F__ccgo_pad1 [0]uint16
  7358  		F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7359  	}
  7360  	F__fpu_ftw       T__uint8_t
  7361  	F__fpu_rsrv1     T__uint8_t
  7362  	F__fpu_fop       T__uint16_t
  7363  	F__fpu_ip        T__uint32_t
  7364  	F__fpu_cs        T__uint16_t
  7365  	F__fpu_rsrv2     T__uint16_t
  7366  	F__fpu_dp        T__uint32_t
  7367  	F__fpu_ds        T__uint16_t
  7368  	F__fpu_rsrv3     T__uint16_t
  7369  	F__fpu_mxcsr     T__uint32_t
  7370  	F__fpu_mxcsrmask T__uint32_t
  7371  	F__fpu_stmm0     struct {
  7372  		F__mmst_reg  [10]int8
  7373  		F__mmst_rsrv [6]int8
  7374  	}
  7375  	F__fpu_stmm1 struct {
  7376  		F__mmst_reg  [10]int8
  7377  		F__mmst_rsrv [6]int8
  7378  	}
  7379  	F__fpu_stmm2 struct {
  7380  		F__mmst_reg  [10]int8
  7381  		F__mmst_rsrv [6]int8
  7382  	}
  7383  	F__fpu_stmm3 struct {
  7384  		F__mmst_reg  [10]int8
  7385  		F__mmst_rsrv [6]int8
  7386  	}
  7387  	F__fpu_stmm4 struct {
  7388  		F__mmst_reg  [10]int8
  7389  		F__mmst_rsrv [6]int8
  7390  	}
  7391  	F__fpu_stmm5 struct {
  7392  		F__mmst_reg  [10]int8
  7393  		F__mmst_rsrv [6]int8
  7394  	}
  7395  	F__fpu_stmm6 struct {
  7396  		F__mmst_reg  [10]int8
  7397  		F__mmst_rsrv [6]int8
  7398  	}
  7399  	F__fpu_stmm7 struct {
  7400  		F__mmst_reg  [10]int8
  7401  		F__mmst_rsrv [6]int8
  7402  	}
  7403  	F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7404  	F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7405  	F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7406  	F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7407  	F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7408  	F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7409  	F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7410  	F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7411  	F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  7412  	F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  7413  	F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  7414  	F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  7415  	F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  7416  	F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  7417  	F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  7418  	F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  7419  	F__fpu_rsrv4     [96]int8
  7420  	F__fpu_reserved1 int32
  7421  	F__avx_reserved1 [64]int8
  7422  	F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  7423  	F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  7424  	F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  7425  	F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  7426  	F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  7427  	F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  7428  	F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  7429  	F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  7430  	F__fpu_ymmh8     struct{ F__xmm_reg [16]int8 }
  7431  	F__fpu_ymmh9     struct{ F__xmm_reg [16]int8 }
  7432  	F__fpu_ymmh10    struct{ F__xmm_reg [16]int8 }
  7433  	F__fpu_ymmh11    struct{ F__xmm_reg [16]int8 }
  7434  	F__fpu_ymmh12    struct{ F__xmm_reg [16]int8 }
  7435  	F__fpu_ymmh13    struct{ F__xmm_reg [16]int8 }
  7436  	F__fpu_ymmh14    struct{ F__xmm_reg [16]int8 }
  7437  	F__fpu_ymmh15    struct{ F__xmm_reg [16]int8 }
  7438  	F__fpu_k0        struct{ F__opmask_reg [8]int8 }
  7439  	F__fpu_k1        struct{ F__opmask_reg [8]int8 }
  7440  	F__fpu_k2        struct{ F__opmask_reg [8]int8 }
  7441  	F__fpu_k3        struct{ F__opmask_reg [8]int8 }
  7442  	F__fpu_k4        struct{ F__opmask_reg [8]int8 }
  7443  	F__fpu_k5        struct{ F__opmask_reg [8]int8 }
  7444  	F__fpu_k6        struct{ F__opmask_reg [8]int8 }
  7445  	F__fpu_k7        struct{ F__opmask_reg [8]int8 }
  7446  	F__fpu_zmmh0     struct{ F__ymm_reg [32]int8 }
  7447  	F__fpu_zmmh1     struct{ F__ymm_reg [32]int8 }
  7448  	F__fpu_zmmh2     struct{ F__ymm_reg [32]int8 }
  7449  	F__fpu_zmmh3     struct{ F__ymm_reg [32]int8 }
  7450  	F__fpu_zmmh4     struct{ F__ymm_reg [32]int8 }
  7451  	F__fpu_zmmh5     struct{ F__ymm_reg [32]int8 }
  7452  	F__fpu_zmmh6     struct{ F__ymm_reg [32]int8 }
  7453  	F__fpu_zmmh7     struct{ F__ymm_reg [32]int8 }
  7454  	F__fpu_zmmh8     struct{ F__ymm_reg [32]int8 }
  7455  	F__fpu_zmmh9     struct{ F__ymm_reg [32]int8 }
  7456  	F__fpu_zmmh10    struct{ F__ymm_reg [32]int8 }
  7457  	F__fpu_zmmh11    struct{ F__ymm_reg [32]int8 }
  7458  	F__fpu_zmmh12    struct{ F__ymm_reg [32]int8 }
  7459  	F__fpu_zmmh13    struct{ F__ymm_reg [32]int8 }
  7460  	F__fpu_zmmh14    struct{ F__ymm_reg [32]int8 }
  7461  	F__fpu_zmmh15    struct{ F__ymm_reg [32]int8 }
  7462  	F__fpu_zmm16     struct{ F__zmm_reg [64]int8 }
  7463  	F__fpu_zmm17     struct{ F__zmm_reg [64]int8 }
  7464  	F__fpu_zmm18     struct{ F__zmm_reg [64]int8 }
  7465  	F__fpu_zmm19     struct{ F__zmm_reg [64]int8 }
  7466  	F__fpu_zmm20     struct{ F__zmm_reg [64]int8 }
  7467  	F__fpu_zmm21     struct{ F__zmm_reg [64]int8 }
  7468  	F__fpu_zmm22     struct{ F__zmm_reg [64]int8 }
  7469  	F__fpu_zmm23     struct{ F__zmm_reg [64]int8 }
  7470  	F__fpu_zmm24     struct{ F__zmm_reg [64]int8 }
  7471  	F__fpu_zmm25     struct{ F__zmm_reg [64]int8 }
  7472  	F__fpu_zmm26     struct{ F__zmm_reg [64]int8 }
  7473  	F__fpu_zmm27     struct{ F__zmm_reg [64]int8 }
  7474  	F__fpu_zmm28     struct{ F__zmm_reg [64]int8 }
  7475  	F__fpu_zmm29     struct{ F__zmm_reg [64]int8 }
  7476  	F__fpu_zmm30     struct{ F__zmm_reg [64]int8 }
  7477  	F__fpu_zmm31     struct{ F__zmm_reg [64]int8 }
  7478  } /* _structs.h:915:1 */
  7479  
  7480  type S__darwin_x86_exception_state64 = struct {
  7481  	F__trapno     T__uint16_t
  7482  	F__cpu        T__uint16_t
  7483  	F__err        T__uint32_t
  7484  	F__faultvaddr T__uint64_t
  7485  } /* _structs.h:1254:1 */
  7486  
  7487  type S__darwin_x86_debug_state64 = struct {
  7488  	F__dr0 T__uint64_t
  7489  	F__dr1 T__uint64_t
  7490  	F__dr2 T__uint64_t
  7491  	F__dr3 T__uint64_t
  7492  	F__dr4 T__uint64_t
  7493  	F__dr5 T__uint64_t
  7494  	F__dr6 T__uint64_t
  7495  	F__dr7 T__uint64_t
  7496  } /* _structs.h:1274:1 */
  7497  
  7498  type S__darwin_x86_cpmu_state64 = struct{ F__ctrs [16]T__uint64_t } /* _structs.h:1302:1 */
  7499  
  7500  type S__darwin_mcontext32 = struct {
  7501  	F__es struct {
  7502  		F__trapno     T__uint16_t
  7503  		F__cpu        T__uint16_t
  7504  		F__err        T__uint32_t
  7505  		F__faultvaddr T__uint32_t
  7506  	}
  7507  	F__ss struct {
  7508  		F__eax    uint32
  7509  		F__ebx    uint32
  7510  		F__ecx    uint32
  7511  		F__edx    uint32
  7512  		F__edi    uint32
  7513  		F__esi    uint32
  7514  		F__ebp    uint32
  7515  		F__esp    uint32
  7516  		F__ss     uint32
  7517  		F__eflags uint32
  7518  		F__eip    uint32
  7519  		F__cs     uint32
  7520  		F__ds     uint32
  7521  		F__es     uint32
  7522  		F__fs     uint32
  7523  		F__gs     uint32
  7524  	}
  7525  	F__fs struct {
  7526  		F__fpu_reserved [2]int32
  7527  		F__fpu_fcw      struct {
  7528  			F__ccgo_pad1 [0]uint16
  7529  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7530  		}
  7531  		F__fpu_fsw struct {
  7532  			F__ccgo_pad1 [0]uint16
  7533  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7534  		}
  7535  		F__fpu_ftw       T__uint8_t
  7536  		F__fpu_rsrv1     T__uint8_t
  7537  		F__fpu_fop       T__uint16_t
  7538  		F__fpu_ip        T__uint32_t
  7539  		F__fpu_cs        T__uint16_t
  7540  		F__fpu_rsrv2     T__uint16_t
  7541  		F__fpu_dp        T__uint32_t
  7542  		F__fpu_ds        T__uint16_t
  7543  		F__fpu_rsrv3     T__uint16_t
  7544  		F__fpu_mxcsr     T__uint32_t
  7545  		F__fpu_mxcsrmask T__uint32_t
  7546  		F__fpu_stmm0     struct {
  7547  			F__mmst_reg  [10]int8
  7548  			F__mmst_rsrv [6]int8
  7549  		}
  7550  		F__fpu_stmm1 struct {
  7551  			F__mmst_reg  [10]int8
  7552  			F__mmst_rsrv [6]int8
  7553  		}
  7554  		F__fpu_stmm2 struct {
  7555  			F__mmst_reg  [10]int8
  7556  			F__mmst_rsrv [6]int8
  7557  		}
  7558  		F__fpu_stmm3 struct {
  7559  			F__mmst_reg  [10]int8
  7560  			F__mmst_rsrv [6]int8
  7561  		}
  7562  		F__fpu_stmm4 struct {
  7563  			F__mmst_reg  [10]int8
  7564  			F__mmst_rsrv [6]int8
  7565  		}
  7566  		F__fpu_stmm5 struct {
  7567  			F__mmst_reg  [10]int8
  7568  			F__mmst_rsrv [6]int8
  7569  		}
  7570  		F__fpu_stmm6 struct {
  7571  			F__mmst_reg  [10]int8
  7572  			F__mmst_rsrv [6]int8
  7573  		}
  7574  		F__fpu_stmm7 struct {
  7575  			F__mmst_reg  [10]int8
  7576  			F__mmst_rsrv [6]int8
  7577  		}
  7578  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7579  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7580  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7581  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7582  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7583  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7584  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7585  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7586  		F__fpu_rsrv4     [224]int8
  7587  		F__fpu_reserved1 int32
  7588  	}
  7589  } /* _mcontext.h:41:1 */
  7590  
  7591  type S__darwin_mcontext_avx32 = struct {
  7592  	F__es struct {
  7593  		F__trapno     T__uint16_t
  7594  		F__cpu        T__uint16_t
  7595  		F__err        T__uint32_t
  7596  		F__faultvaddr T__uint32_t
  7597  	}
  7598  	F__ss struct {
  7599  		F__eax    uint32
  7600  		F__ebx    uint32
  7601  		F__ecx    uint32
  7602  		F__edx    uint32
  7603  		F__edi    uint32
  7604  		F__esi    uint32
  7605  		F__ebp    uint32
  7606  		F__esp    uint32
  7607  		F__ss     uint32
  7608  		F__eflags uint32
  7609  		F__eip    uint32
  7610  		F__cs     uint32
  7611  		F__ds     uint32
  7612  		F__es     uint32
  7613  		F__fs     uint32
  7614  		F__gs     uint32
  7615  	}
  7616  	F__fs struct {
  7617  		F__fpu_reserved [2]int32
  7618  		F__fpu_fcw      struct {
  7619  			F__ccgo_pad1 [0]uint16
  7620  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7621  		}
  7622  		F__fpu_fsw struct {
  7623  			F__ccgo_pad1 [0]uint16
  7624  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7625  		}
  7626  		F__fpu_ftw       T__uint8_t
  7627  		F__fpu_rsrv1     T__uint8_t
  7628  		F__fpu_fop       T__uint16_t
  7629  		F__fpu_ip        T__uint32_t
  7630  		F__fpu_cs        T__uint16_t
  7631  		F__fpu_rsrv2     T__uint16_t
  7632  		F__fpu_dp        T__uint32_t
  7633  		F__fpu_ds        T__uint16_t
  7634  		F__fpu_rsrv3     T__uint16_t
  7635  		F__fpu_mxcsr     T__uint32_t
  7636  		F__fpu_mxcsrmask T__uint32_t
  7637  		F__fpu_stmm0     struct {
  7638  			F__mmst_reg  [10]int8
  7639  			F__mmst_rsrv [6]int8
  7640  		}
  7641  		F__fpu_stmm1 struct {
  7642  			F__mmst_reg  [10]int8
  7643  			F__mmst_rsrv [6]int8
  7644  		}
  7645  		F__fpu_stmm2 struct {
  7646  			F__mmst_reg  [10]int8
  7647  			F__mmst_rsrv [6]int8
  7648  		}
  7649  		F__fpu_stmm3 struct {
  7650  			F__mmst_reg  [10]int8
  7651  			F__mmst_rsrv [6]int8
  7652  		}
  7653  		F__fpu_stmm4 struct {
  7654  			F__mmst_reg  [10]int8
  7655  			F__mmst_rsrv [6]int8
  7656  		}
  7657  		F__fpu_stmm5 struct {
  7658  			F__mmst_reg  [10]int8
  7659  			F__mmst_rsrv [6]int8
  7660  		}
  7661  		F__fpu_stmm6 struct {
  7662  			F__mmst_reg  [10]int8
  7663  			F__mmst_rsrv [6]int8
  7664  		}
  7665  		F__fpu_stmm7 struct {
  7666  			F__mmst_reg  [10]int8
  7667  			F__mmst_rsrv [6]int8
  7668  		}
  7669  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7670  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7671  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7672  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7673  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7674  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7675  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7676  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7677  		F__fpu_rsrv4     [224]int8
  7678  		F__fpu_reserved1 int32
  7679  		F__avx_reserved1 [64]int8
  7680  		F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  7681  		F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  7682  		F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  7683  		F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  7684  		F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  7685  		F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  7686  		F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  7687  		F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  7688  	}
  7689  } /* _mcontext.h:49:1 */
  7690  
  7691  type S__darwin_mcontext_avx512_32 = struct {
  7692  	F__es struct {
  7693  		F__trapno     T__uint16_t
  7694  		F__cpu        T__uint16_t
  7695  		F__err        T__uint32_t
  7696  		F__faultvaddr T__uint32_t
  7697  	}
  7698  	F__ss struct {
  7699  		F__eax    uint32
  7700  		F__ebx    uint32
  7701  		F__ecx    uint32
  7702  		F__edx    uint32
  7703  		F__edi    uint32
  7704  		F__esi    uint32
  7705  		F__ebp    uint32
  7706  		F__esp    uint32
  7707  		F__ss     uint32
  7708  		F__eflags uint32
  7709  		F__eip    uint32
  7710  		F__cs     uint32
  7711  		F__ds     uint32
  7712  		F__es     uint32
  7713  		F__fs     uint32
  7714  		F__gs     uint32
  7715  	}
  7716  	F__fs struct {
  7717  		F__fpu_reserved [2]int32
  7718  		F__fpu_fcw      struct {
  7719  			F__ccgo_pad1 [0]uint16
  7720  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7721  		}
  7722  		F__fpu_fsw struct {
  7723  			F__ccgo_pad1 [0]uint16
  7724  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7725  		}
  7726  		F__fpu_ftw       T__uint8_t
  7727  		F__fpu_rsrv1     T__uint8_t
  7728  		F__fpu_fop       T__uint16_t
  7729  		F__fpu_ip        T__uint32_t
  7730  		F__fpu_cs        T__uint16_t
  7731  		F__fpu_rsrv2     T__uint16_t
  7732  		F__fpu_dp        T__uint32_t
  7733  		F__fpu_ds        T__uint16_t
  7734  		F__fpu_rsrv3     T__uint16_t
  7735  		F__fpu_mxcsr     T__uint32_t
  7736  		F__fpu_mxcsrmask T__uint32_t
  7737  		F__fpu_stmm0     struct {
  7738  			F__mmst_reg  [10]int8
  7739  			F__mmst_rsrv [6]int8
  7740  		}
  7741  		F__fpu_stmm1 struct {
  7742  			F__mmst_reg  [10]int8
  7743  			F__mmst_rsrv [6]int8
  7744  		}
  7745  		F__fpu_stmm2 struct {
  7746  			F__mmst_reg  [10]int8
  7747  			F__mmst_rsrv [6]int8
  7748  		}
  7749  		F__fpu_stmm3 struct {
  7750  			F__mmst_reg  [10]int8
  7751  			F__mmst_rsrv [6]int8
  7752  		}
  7753  		F__fpu_stmm4 struct {
  7754  			F__mmst_reg  [10]int8
  7755  			F__mmst_rsrv [6]int8
  7756  		}
  7757  		F__fpu_stmm5 struct {
  7758  			F__mmst_reg  [10]int8
  7759  			F__mmst_rsrv [6]int8
  7760  		}
  7761  		F__fpu_stmm6 struct {
  7762  			F__mmst_reg  [10]int8
  7763  			F__mmst_rsrv [6]int8
  7764  		}
  7765  		F__fpu_stmm7 struct {
  7766  			F__mmst_reg  [10]int8
  7767  			F__mmst_rsrv [6]int8
  7768  		}
  7769  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7770  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7771  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7772  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7773  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7774  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7775  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7776  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7777  		F__fpu_rsrv4     [224]int8
  7778  		F__fpu_reserved1 int32
  7779  		F__avx_reserved1 [64]int8
  7780  		F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  7781  		F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  7782  		F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  7783  		F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  7784  		F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  7785  		F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  7786  		F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  7787  		F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  7788  		F__fpu_k0        struct{ F__opmask_reg [8]int8 }
  7789  		F__fpu_k1        struct{ F__opmask_reg [8]int8 }
  7790  		F__fpu_k2        struct{ F__opmask_reg [8]int8 }
  7791  		F__fpu_k3        struct{ F__opmask_reg [8]int8 }
  7792  		F__fpu_k4        struct{ F__opmask_reg [8]int8 }
  7793  		F__fpu_k5        struct{ F__opmask_reg [8]int8 }
  7794  		F__fpu_k6        struct{ F__opmask_reg [8]int8 }
  7795  		F__fpu_k7        struct{ F__opmask_reg [8]int8 }
  7796  		F__fpu_zmmh0     struct{ F__ymm_reg [32]int8 }
  7797  		F__fpu_zmmh1     struct{ F__ymm_reg [32]int8 }
  7798  		F__fpu_zmmh2     struct{ F__ymm_reg [32]int8 }
  7799  		F__fpu_zmmh3     struct{ F__ymm_reg [32]int8 }
  7800  		F__fpu_zmmh4     struct{ F__ymm_reg [32]int8 }
  7801  		F__fpu_zmmh5     struct{ F__ymm_reg [32]int8 }
  7802  		F__fpu_zmmh6     struct{ F__ymm_reg [32]int8 }
  7803  		F__fpu_zmmh7     struct{ F__ymm_reg [32]int8 }
  7804  	}
  7805  } /* _mcontext.h:58:1 */
  7806  
  7807  type S__darwin_mcontext64 = struct {
  7808  	F__es struct {
  7809  		F__trapno     T__uint16_t
  7810  		F__cpu        T__uint16_t
  7811  		F__err        T__uint32_t
  7812  		F__faultvaddr T__uint64_t
  7813  	}
  7814  	F__ss struct {
  7815  		F__rax    T__uint64_t
  7816  		F__rbx    T__uint64_t
  7817  		F__rcx    T__uint64_t
  7818  		F__rdx    T__uint64_t
  7819  		F__rdi    T__uint64_t
  7820  		F__rsi    T__uint64_t
  7821  		F__rbp    T__uint64_t
  7822  		F__rsp    T__uint64_t
  7823  		F__r8     T__uint64_t
  7824  		F__r9     T__uint64_t
  7825  		F__r10    T__uint64_t
  7826  		F__r11    T__uint64_t
  7827  		F__r12    T__uint64_t
  7828  		F__r13    T__uint64_t
  7829  		F__r14    T__uint64_t
  7830  		F__r15    T__uint64_t
  7831  		F__rip    T__uint64_t
  7832  		F__rflags T__uint64_t
  7833  		F__cs     T__uint64_t
  7834  		F__fs     T__uint64_t
  7835  		F__gs     T__uint64_t
  7836  	}
  7837  	F__fs struct {
  7838  		F__fpu_reserved [2]int32
  7839  		F__fpu_fcw      struct {
  7840  			F__ccgo_pad1 [0]uint16
  7841  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7842  		}
  7843  		F__fpu_fsw struct {
  7844  			F__ccgo_pad1 [0]uint16
  7845  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7846  		}
  7847  		F__fpu_ftw       T__uint8_t
  7848  		F__fpu_rsrv1     T__uint8_t
  7849  		F__fpu_fop       T__uint16_t
  7850  		F__fpu_ip        T__uint32_t
  7851  		F__fpu_cs        T__uint16_t
  7852  		F__fpu_rsrv2     T__uint16_t
  7853  		F__fpu_dp        T__uint32_t
  7854  		F__fpu_ds        T__uint16_t
  7855  		F__fpu_rsrv3     T__uint16_t
  7856  		F__fpu_mxcsr     T__uint32_t
  7857  		F__fpu_mxcsrmask T__uint32_t
  7858  		F__fpu_stmm0     struct {
  7859  			F__mmst_reg  [10]int8
  7860  			F__mmst_rsrv [6]int8
  7861  		}
  7862  		F__fpu_stmm1 struct {
  7863  			F__mmst_reg  [10]int8
  7864  			F__mmst_rsrv [6]int8
  7865  		}
  7866  		F__fpu_stmm2 struct {
  7867  			F__mmst_reg  [10]int8
  7868  			F__mmst_rsrv [6]int8
  7869  		}
  7870  		F__fpu_stmm3 struct {
  7871  			F__mmst_reg  [10]int8
  7872  			F__mmst_rsrv [6]int8
  7873  		}
  7874  		F__fpu_stmm4 struct {
  7875  			F__mmst_reg  [10]int8
  7876  			F__mmst_rsrv [6]int8
  7877  		}
  7878  		F__fpu_stmm5 struct {
  7879  			F__mmst_reg  [10]int8
  7880  			F__mmst_rsrv [6]int8
  7881  		}
  7882  		F__fpu_stmm6 struct {
  7883  			F__mmst_reg  [10]int8
  7884  			F__mmst_rsrv [6]int8
  7885  		}
  7886  		F__fpu_stmm7 struct {
  7887  			F__mmst_reg  [10]int8
  7888  			F__mmst_rsrv [6]int8
  7889  		}
  7890  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  7891  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  7892  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  7893  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  7894  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  7895  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  7896  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  7897  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  7898  		F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  7899  		F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  7900  		F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  7901  		F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  7902  		F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  7903  		F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  7904  		F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  7905  		F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  7906  		F__fpu_rsrv4     [96]int8
  7907  		F__fpu_reserved1 int32
  7908  	}
  7909  	F__ccgo_pad1 [4]byte
  7910  } /* _mcontext.h:99:1 */
  7911  
  7912  type S__darwin_mcontext64_full = struct {
  7913  	F__es struct {
  7914  		F__trapno     T__uint16_t
  7915  		F__cpu        T__uint16_t
  7916  		F__err        T__uint32_t
  7917  		F__faultvaddr T__uint64_t
  7918  	}
  7919  	F__ss struct {
  7920  		F__ss64 struct {
  7921  			F__rax    T__uint64_t
  7922  			F__rbx    T__uint64_t
  7923  			F__rcx    T__uint64_t
  7924  			F__rdx    T__uint64_t
  7925  			F__rdi    T__uint64_t
  7926  			F__rsi    T__uint64_t
  7927  			F__rbp    T__uint64_t
  7928  			F__rsp    T__uint64_t
  7929  			F__r8     T__uint64_t
  7930  			F__r9     T__uint64_t
  7931  			F__r10    T__uint64_t
  7932  			F__r11    T__uint64_t
  7933  			F__r12    T__uint64_t
  7934  			F__r13    T__uint64_t
  7935  			F__r14    T__uint64_t
  7936  			F__r15    T__uint64_t
  7937  			F__rip    T__uint64_t
  7938  			F__rflags T__uint64_t
  7939  			F__cs     T__uint64_t
  7940  			F__fs     T__uint64_t
  7941  			F__gs     T__uint64_t
  7942  		}
  7943  		F__ds     T__uint64_t
  7944  		F__es     T__uint64_t
  7945  		F__ss     T__uint64_t
  7946  		F__gsbase T__uint64_t
  7947  	}
  7948  	F__fs struct {
  7949  		F__fpu_reserved [2]int32
  7950  		F__fpu_fcw      struct {
  7951  			F__ccgo_pad1 [0]uint16
  7952  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  7953  		}
  7954  		F__fpu_fsw struct {
  7955  			F__ccgo_pad1 [0]uint16
  7956  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  7957  		}
  7958  		F__fpu_ftw       T__uint8_t
  7959  		F__fpu_rsrv1     T__uint8_t
  7960  		F__fpu_fop       T__uint16_t
  7961  		F__fpu_ip        T__uint32_t
  7962  		F__fpu_cs        T__uint16_t
  7963  		F__fpu_rsrv2     T__uint16_t
  7964  		F__fpu_dp        T__uint32_t
  7965  		F__fpu_ds        T__uint16_t
  7966  		F__fpu_rsrv3     T__uint16_t
  7967  		F__fpu_mxcsr     T__uint32_t
  7968  		F__fpu_mxcsrmask T__uint32_t
  7969  		F__fpu_stmm0     struct {
  7970  			F__mmst_reg  [10]int8
  7971  			F__mmst_rsrv [6]int8
  7972  		}
  7973  		F__fpu_stmm1 struct {
  7974  			F__mmst_reg  [10]int8
  7975  			F__mmst_rsrv [6]int8
  7976  		}
  7977  		F__fpu_stmm2 struct {
  7978  			F__mmst_reg  [10]int8
  7979  			F__mmst_rsrv [6]int8
  7980  		}
  7981  		F__fpu_stmm3 struct {
  7982  			F__mmst_reg  [10]int8
  7983  			F__mmst_rsrv [6]int8
  7984  		}
  7985  		F__fpu_stmm4 struct {
  7986  			F__mmst_reg  [10]int8
  7987  			F__mmst_rsrv [6]int8
  7988  		}
  7989  		F__fpu_stmm5 struct {
  7990  			F__mmst_reg  [10]int8
  7991  			F__mmst_rsrv [6]int8
  7992  		}
  7993  		F__fpu_stmm6 struct {
  7994  			F__mmst_reg  [10]int8
  7995  			F__mmst_rsrv [6]int8
  7996  		}
  7997  		F__fpu_stmm7 struct {
  7998  			F__mmst_reg  [10]int8
  7999  			F__mmst_rsrv [6]int8
  8000  		}
  8001  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  8002  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  8003  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  8004  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  8005  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  8006  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  8007  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  8008  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  8009  		F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  8010  		F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  8011  		F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  8012  		F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  8013  		F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  8014  		F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  8015  		F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  8016  		F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  8017  		F__fpu_rsrv4     [96]int8
  8018  		F__fpu_reserved1 int32
  8019  	}
  8020  	F__ccgo_pad1 [4]byte
  8021  } /* _mcontext.h:107:1 */
  8022  
  8023  type S__darwin_mcontext_avx64 = struct {
  8024  	F__es struct {
  8025  		F__trapno     T__uint16_t
  8026  		F__cpu        T__uint16_t
  8027  		F__err        T__uint32_t
  8028  		F__faultvaddr T__uint64_t
  8029  	}
  8030  	F__ss struct {
  8031  		F__rax    T__uint64_t
  8032  		F__rbx    T__uint64_t
  8033  		F__rcx    T__uint64_t
  8034  		F__rdx    T__uint64_t
  8035  		F__rdi    T__uint64_t
  8036  		F__rsi    T__uint64_t
  8037  		F__rbp    T__uint64_t
  8038  		F__rsp    T__uint64_t
  8039  		F__r8     T__uint64_t
  8040  		F__r9     T__uint64_t
  8041  		F__r10    T__uint64_t
  8042  		F__r11    T__uint64_t
  8043  		F__r12    T__uint64_t
  8044  		F__r13    T__uint64_t
  8045  		F__r14    T__uint64_t
  8046  		F__r15    T__uint64_t
  8047  		F__rip    T__uint64_t
  8048  		F__rflags T__uint64_t
  8049  		F__cs     T__uint64_t
  8050  		F__fs     T__uint64_t
  8051  		F__gs     T__uint64_t
  8052  	}
  8053  	F__fs struct {
  8054  		F__fpu_reserved [2]int32
  8055  		F__fpu_fcw      struct {
  8056  			F__ccgo_pad1 [0]uint16
  8057  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  8058  		}
  8059  		F__fpu_fsw struct {
  8060  			F__ccgo_pad1 [0]uint16
  8061  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  8062  		}
  8063  		F__fpu_ftw       T__uint8_t
  8064  		F__fpu_rsrv1     T__uint8_t
  8065  		F__fpu_fop       T__uint16_t
  8066  		F__fpu_ip        T__uint32_t
  8067  		F__fpu_cs        T__uint16_t
  8068  		F__fpu_rsrv2     T__uint16_t
  8069  		F__fpu_dp        T__uint32_t
  8070  		F__fpu_ds        T__uint16_t
  8071  		F__fpu_rsrv3     T__uint16_t
  8072  		F__fpu_mxcsr     T__uint32_t
  8073  		F__fpu_mxcsrmask T__uint32_t
  8074  		F__fpu_stmm0     struct {
  8075  			F__mmst_reg  [10]int8
  8076  			F__mmst_rsrv [6]int8
  8077  		}
  8078  		F__fpu_stmm1 struct {
  8079  			F__mmst_reg  [10]int8
  8080  			F__mmst_rsrv [6]int8
  8081  		}
  8082  		F__fpu_stmm2 struct {
  8083  			F__mmst_reg  [10]int8
  8084  			F__mmst_rsrv [6]int8
  8085  		}
  8086  		F__fpu_stmm3 struct {
  8087  			F__mmst_reg  [10]int8
  8088  			F__mmst_rsrv [6]int8
  8089  		}
  8090  		F__fpu_stmm4 struct {
  8091  			F__mmst_reg  [10]int8
  8092  			F__mmst_rsrv [6]int8
  8093  		}
  8094  		F__fpu_stmm5 struct {
  8095  			F__mmst_reg  [10]int8
  8096  			F__mmst_rsrv [6]int8
  8097  		}
  8098  		F__fpu_stmm6 struct {
  8099  			F__mmst_reg  [10]int8
  8100  			F__mmst_rsrv [6]int8
  8101  		}
  8102  		F__fpu_stmm7 struct {
  8103  			F__mmst_reg  [10]int8
  8104  			F__mmst_rsrv [6]int8
  8105  		}
  8106  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  8107  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  8108  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  8109  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  8110  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  8111  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  8112  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  8113  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  8114  		F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  8115  		F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  8116  		F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  8117  		F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  8118  		F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  8119  		F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  8120  		F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  8121  		F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  8122  		F__fpu_rsrv4     [96]int8
  8123  		F__fpu_reserved1 int32
  8124  		F__avx_reserved1 [64]int8
  8125  		F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  8126  		F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  8127  		F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  8128  		F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  8129  		F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  8130  		F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  8131  		F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  8132  		F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  8133  		F__fpu_ymmh8     struct{ F__xmm_reg [16]int8 }
  8134  		F__fpu_ymmh9     struct{ F__xmm_reg [16]int8 }
  8135  		F__fpu_ymmh10    struct{ F__xmm_reg [16]int8 }
  8136  		F__fpu_ymmh11    struct{ F__xmm_reg [16]int8 }
  8137  		F__fpu_ymmh12    struct{ F__xmm_reg [16]int8 }
  8138  		F__fpu_ymmh13    struct{ F__xmm_reg [16]int8 }
  8139  		F__fpu_ymmh14    struct{ F__xmm_reg [16]int8 }
  8140  		F__fpu_ymmh15    struct{ F__xmm_reg [16]int8 }
  8141  	}
  8142  	F__ccgo_pad1 [4]byte
  8143  } /* _mcontext.h:115:1 */
  8144  
  8145  type S__darwin_mcontext_avx64_full = struct {
  8146  	F__es struct {
  8147  		F__trapno     T__uint16_t
  8148  		F__cpu        T__uint16_t
  8149  		F__err        T__uint32_t
  8150  		F__faultvaddr T__uint64_t
  8151  	}
  8152  	F__ss struct {
  8153  		F__ss64 struct {
  8154  			F__rax    T__uint64_t
  8155  			F__rbx    T__uint64_t
  8156  			F__rcx    T__uint64_t
  8157  			F__rdx    T__uint64_t
  8158  			F__rdi    T__uint64_t
  8159  			F__rsi    T__uint64_t
  8160  			F__rbp    T__uint64_t
  8161  			F__rsp    T__uint64_t
  8162  			F__r8     T__uint64_t
  8163  			F__r9     T__uint64_t
  8164  			F__r10    T__uint64_t
  8165  			F__r11    T__uint64_t
  8166  			F__r12    T__uint64_t
  8167  			F__r13    T__uint64_t
  8168  			F__r14    T__uint64_t
  8169  			F__r15    T__uint64_t
  8170  			F__rip    T__uint64_t
  8171  			F__rflags T__uint64_t
  8172  			F__cs     T__uint64_t
  8173  			F__fs     T__uint64_t
  8174  			F__gs     T__uint64_t
  8175  		}
  8176  		F__ds     T__uint64_t
  8177  		F__es     T__uint64_t
  8178  		F__ss     T__uint64_t
  8179  		F__gsbase T__uint64_t
  8180  	}
  8181  	F__fs struct {
  8182  		F__fpu_reserved [2]int32
  8183  		F__fpu_fcw      struct {
  8184  			F__ccgo_pad1 [0]uint16
  8185  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  8186  		}
  8187  		F__fpu_fsw struct {
  8188  			F__ccgo_pad1 [0]uint16
  8189  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  8190  		}
  8191  		F__fpu_ftw       T__uint8_t
  8192  		F__fpu_rsrv1     T__uint8_t
  8193  		F__fpu_fop       T__uint16_t
  8194  		F__fpu_ip        T__uint32_t
  8195  		F__fpu_cs        T__uint16_t
  8196  		F__fpu_rsrv2     T__uint16_t
  8197  		F__fpu_dp        T__uint32_t
  8198  		F__fpu_ds        T__uint16_t
  8199  		F__fpu_rsrv3     T__uint16_t
  8200  		F__fpu_mxcsr     T__uint32_t
  8201  		F__fpu_mxcsrmask T__uint32_t
  8202  		F__fpu_stmm0     struct {
  8203  			F__mmst_reg  [10]int8
  8204  			F__mmst_rsrv [6]int8
  8205  		}
  8206  		F__fpu_stmm1 struct {
  8207  			F__mmst_reg  [10]int8
  8208  			F__mmst_rsrv [6]int8
  8209  		}
  8210  		F__fpu_stmm2 struct {
  8211  			F__mmst_reg  [10]int8
  8212  			F__mmst_rsrv [6]int8
  8213  		}
  8214  		F__fpu_stmm3 struct {
  8215  			F__mmst_reg  [10]int8
  8216  			F__mmst_rsrv [6]int8
  8217  		}
  8218  		F__fpu_stmm4 struct {
  8219  			F__mmst_reg  [10]int8
  8220  			F__mmst_rsrv [6]int8
  8221  		}
  8222  		F__fpu_stmm5 struct {
  8223  			F__mmst_reg  [10]int8
  8224  			F__mmst_rsrv [6]int8
  8225  		}
  8226  		F__fpu_stmm6 struct {
  8227  			F__mmst_reg  [10]int8
  8228  			F__mmst_rsrv [6]int8
  8229  		}
  8230  		F__fpu_stmm7 struct {
  8231  			F__mmst_reg  [10]int8
  8232  			F__mmst_rsrv [6]int8
  8233  		}
  8234  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  8235  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  8236  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  8237  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  8238  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  8239  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  8240  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  8241  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  8242  		F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  8243  		F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  8244  		F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  8245  		F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  8246  		F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  8247  		F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  8248  		F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  8249  		F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  8250  		F__fpu_rsrv4     [96]int8
  8251  		F__fpu_reserved1 int32
  8252  		F__avx_reserved1 [64]int8
  8253  		F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  8254  		F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  8255  		F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  8256  		F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  8257  		F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  8258  		F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  8259  		F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  8260  		F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  8261  		F__fpu_ymmh8     struct{ F__xmm_reg [16]int8 }
  8262  		F__fpu_ymmh9     struct{ F__xmm_reg [16]int8 }
  8263  		F__fpu_ymmh10    struct{ F__xmm_reg [16]int8 }
  8264  		F__fpu_ymmh11    struct{ F__xmm_reg [16]int8 }
  8265  		F__fpu_ymmh12    struct{ F__xmm_reg [16]int8 }
  8266  		F__fpu_ymmh13    struct{ F__xmm_reg [16]int8 }
  8267  		F__fpu_ymmh14    struct{ F__xmm_reg [16]int8 }
  8268  		F__fpu_ymmh15    struct{ F__xmm_reg [16]int8 }
  8269  	}
  8270  	F__ccgo_pad1 [4]byte
  8271  } /* _mcontext.h:123:1 */
  8272  
  8273  type S__darwin_mcontext_avx512_64 = struct {
  8274  	F__es struct {
  8275  		F__trapno     T__uint16_t
  8276  		F__cpu        T__uint16_t
  8277  		F__err        T__uint32_t
  8278  		F__faultvaddr T__uint64_t
  8279  	}
  8280  	F__ss struct {
  8281  		F__rax    T__uint64_t
  8282  		F__rbx    T__uint64_t
  8283  		F__rcx    T__uint64_t
  8284  		F__rdx    T__uint64_t
  8285  		F__rdi    T__uint64_t
  8286  		F__rsi    T__uint64_t
  8287  		F__rbp    T__uint64_t
  8288  		F__rsp    T__uint64_t
  8289  		F__r8     T__uint64_t
  8290  		F__r9     T__uint64_t
  8291  		F__r10    T__uint64_t
  8292  		F__r11    T__uint64_t
  8293  		F__r12    T__uint64_t
  8294  		F__r13    T__uint64_t
  8295  		F__r14    T__uint64_t
  8296  		F__r15    T__uint64_t
  8297  		F__rip    T__uint64_t
  8298  		F__rflags T__uint64_t
  8299  		F__cs     T__uint64_t
  8300  		F__fs     T__uint64_t
  8301  		F__gs     T__uint64_t
  8302  	}
  8303  	F__fs struct {
  8304  		F__fpu_reserved [2]int32
  8305  		F__fpu_fcw      struct {
  8306  			F__ccgo_pad1 [0]uint16
  8307  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  8308  		}
  8309  		F__fpu_fsw struct {
  8310  			F__ccgo_pad1 [0]uint16
  8311  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  8312  		}
  8313  		F__fpu_ftw       T__uint8_t
  8314  		F__fpu_rsrv1     T__uint8_t
  8315  		F__fpu_fop       T__uint16_t
  8316  		F__fpu_ip        T__uint32_t
  8317  		F__fpu_cs        T__uint16_t
  8318  		F__fpu_rsrv2     T__uint16_t
  8319  		F__fpu_dp        T__uint32_t
  8320  		F__fpu_ds        T__uint16_t
  8321  		F__fpu_rsrv3     T__uint16_t
  8322  		F__fpu_mxcsr     T__uint32_t
  8323  		F__fpu_mxcsrmask T__uint32_t
  8324  		F__fpu_stmm0     struct {
  8325  			F__mmst_reg  [10]int8
  8326  			F__mmst_rsrv [6]int8
  8327  		}
  8328  		F__fpu_stmm1 struct {
  8329  			F__mmst_reg  [10]int8
  8330  			F__mmst_rsrv [6]int8
  8331  		}
  8332  		F__fpu_stmm2 struct {
  8333  			F__mmst_reg  [10]int8
  8334  			F__mmst_rsrv [6]int8
  8335  		}
  8336  		F__fpu_stmm3 struct {
  8337  			F__mmst_reg  [10]int8
  8338  			F__mmst_rsrv [6]int8
  8339  		}
  8340  		F__fpu_stmm4 struct {
  8341  			F__mmst_reg  [10]int8
  8342  			F__mmst_rsrv [6]int8
  8343  		}
  8344  		F__fpu_stmm5 struct {
  8345  			F__mmst_reg  [10]int8
  8346  			F__mmst_rsrv [6]int8
  8347  		}
  8348  		F__fpu_stmm6 struct {
  8349  			F__mmst_reg  [10]int8
  8350  			F__mmst_rsrv [6]int8
  8351  		}
  8352  		F__fpu_stmm7 struct {
  8353  			F__mmst_reg  [10]int8
  8354  			F__mmst_rsrv [6]int8
  8355  		}
  8356  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  8357  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  8358  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  8359  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  8360  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  8361  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  8362  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  8363  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  8364  		F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  8365  		F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  8366  		F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  8367  		F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  8368  		F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  8369  		F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  8370  		F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  8371  		F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  8372  		F__fpu_rsrv4     [96]int8
  8373  		F__fpu_reserved1 int32
  8374  		F__avx_reserved1 [64]int8
  8375  		F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  8376  		F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  8377  		F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  8378  		F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  8379  		F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  8380  		F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  8381  		F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  8382  		F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  8383  		F__fpu_ymmh8     struct{ F__xmm_reg [16]int8 }
  8384  		F__fpu_ymmh9     struct{ F__xmm_reg [16]int8 }
  8385  		F__fpu_ymmh10    struct{ F__xmm_reg [16]int8 }
  8386  		F__fpu_ymmh11    struct{ F__xmm_reg [16]int8 }
  8387  		F__fpu_ymmh12    struct{ F__xmm_reg [16]int8 }
  8388  		F__fpu_ymmh13    struct{ F__xmm_reg [16]int8 }
  8389  		F__fpu_ymmh14    struct{ F__xmm_reg [16]int8 }
  8390  		F__fpu_ymmh15    struct{ F__xmm_reg [16]int8 }
  8391  		F__fpu_k0        struct{ F__opmask_reg [8]int8 }
  8392  		F__fpu_k1        struct{ F__opmask_reg [8]int8 }
  8393  		F__fpu_k2        struct{ F__opmask_reg [8]int8 }
  8394  		F__fpu_k3        struct{ F__opmask_reg [8]int8 }
  8395  		F__fpu_k4        struct{ F__opmask_reg [8]int8 }
  8396  		F__fpu_k5        struct{ F__opmask_reg [8]int8 }
  8397  		F__fpu_k6        struct{ F__opmask_reg [8]int8 }
  8398  		F__fpu_k7        struct{ F__opmask_reg [8]int8 }
  8399  		F__fpu_zmmh0     struct{ F__ymm_reg [32]int8 }
  8400  		F__fpu_zmmh1     struct{ F__ymm_reg [32]int8 }
  8401  		F__fpu_zmmh2     struct{ F__ymm_reg [32]int8 }
  8402  		F__fpu_zmmh3     struct{ F__ymm_reg [32]int8 }
  8403  		F__fpu_zmmh4     struct{ F__ymm_reg [32]int8 }
  8404  		F__fpu_zmmh5     struct{ F__ymm_reg [32]int8 }
  8405  		F__fpu_zmmh6     struct{ F__ymm_reg [32]int8 }
  8406  		F__fpu_zmmh7     struct{ F__ymm_reg [32]int8 }
  8407  		F__fpu_zmmh8     struct{ F__ymm_reg [32]int8 }
  8408  		F__fpu_zmmh9     struct{ F__ymm_reg [32]int8 }
  8409  		F__fpu_zmmh10    struct{ F__ymm_reg [32]int8 }
  8410  		F__fpu_zmmh11    struct{ F__ymm_reg [32]int8 }
  8411  		F__fpu_zmmh12    struct{ F__ymm_reg [32]int8 }
  8412  		F__fpu_zmmh13    struct{ F__ymm_reg [32]int8 }
  8413  		F__fpu_zmmh14    struct{ F__ymm_reg [32]int8 }
  8414  		F__fpu_zmmh15    struct{ F__ymm_reg [32]int8 }
  8415  		F__fpu_zmm16     struct{ F__zmm_reg [64]int8 }
  8416  		F__fpu_zmm17     struct{ F__zmm_reg [64]int8 }
  8417  		F__fpu_zmm18     struct{ F__zmm_reg [64]int8 }
  8418  		F__fpu_zmm19     struct{ F__zmm_reg [64]int8 }
  8419  		F__fpu_zmm20     struct{ F__zmm_reg [64]int8 }
  8420  		F__fpu_zmm21     struct{ F__zmm_reg [64]int8 }
  8421  		F__fpu_zmm22     struct{ F__zmm_reg [64]int8 }
  8422  		F__fpu_zmm23     struct{ F__zmm_reg [64]int8 }
  8423  		F__fpu_zmm24     struct{ F__zmm_reg [64]int8 }
  8424  		F__fpu_zmm25     struct{ F__zmm_reg [64]int8 }
  8425  		F__fpu_zmm26     struct{ F__zmm_reg [64]int8 }
  8426  		F__fpu_zmm27     struct{ F__zmm_reg [64]int8 }
  8427  		F__fpu_zmm28     struct{ F__zmm_reg [64]int8 }
  8428  		F__fpu_zmm29     struct{ F__zmm_reg [64]int8 }
  8429  		F__fpu_zmm30     struct{ F__zmm_reg [64]int8 }
  8430  		F__fpu_zmm31     struct{ F__zmm_reg [64]int8 }
  8431  	}
  8432  	F__ccgo_pad1 [4]byte
  8433  } /* _mcontext.h:132:1 */
  8434  
  8435  type S__darwin_mcontext_avx512_64_full = struct {
  8436  	F__es struct {
  8437  		F__trapno     T__uint16_t
  8438  		F__cpu        T__uint16_t
  8439  		F__err        T__uint32_t
  8440  		F__faultvaddr T__uint64_t
  8441  	}
  8442  	F__ss struct {
  8443  		F__ss64 struct {
  8444  			F__rax    T__uint64_t
  8445  			F__rbx    T__uint64_t
  8446  			F__rcx    T__uint64_t
  8447  			F__rdx    T__uint64_t
  8448  			F__rdi    T__uint64_t
  8449  			F__rsi    T__uint64_t
  8450  			F__rbp    T__uint64_t
  8451  			F__rsp    T__uint64_t
  8452  			F__r8     T__uint64_t
  8453  			F__r9     T__uint64_t
  8454  			F__r10    T__uint64_t
  8455  			F__r11    T__uint64_t
  8456  			F__r12    T__uint64_t
  8457  			F__r13    T__uint64_t
  8458  			F__r14    T__uint64_t
  8459  			F__r15    T__uint64_t
  8460  			F__rip    T__uint64_t
  8461  			F__rflags T__uint64_t
  8462  			F__cs     T__uint64_t
  8463  			F__fs     T__uint64_t
  8464  			F__gs     T__uint64_t
  8465  		}
  8466  		F__ds     T__uint64_t
  8467  		F__es     T__uint64_t
  8468  		F__ss     T__uint64_t
  8469  		F__gsbase T__uint64_t
  8470  	}
  8471  	F__fs struct {
  8472  		F__fpu_reserved [2]int32
  8473  		F__fpu_fcw      struct {
  8474  			F__ccgo_pad1 [0]uint16
  8475  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short : 2, unsigned short __pc: 2, unsigned short __rc: 2, unsigned short : 1, unsigned short : 3 */
  8476  		}
  8477  		F__fpu_fsw struct {
  8478  			F__ccgo_pad1 [0]uint16
  8479  			F__invalid   uint16 /* unsigned short __invalid: 1, unsigned short __denorm: 1, unsigned short __zdiv: 1, unsigned short __ovrfl: 1, unsigned short __undfl: 1, unsigned short __precis: 1, unsigned short __stkflt: 1, unsigned short __errsumm: 1, unsigned short __c0: 1, unsigned short __c1: 1, unsigned short __c2: 1, unsigned short __tos: 3, unsigned short __c3: 1, unsigned short __busy: 1 */
  8480  		}
  8481  		F__fpu_ftw       T__uint8_t
  8482  		F__fpu_rsrv1     T__uint8_t
  8483  		F__fpu_fop       T__uint16_t
  8484  		F__fpu_ip        T__uint32_t
  8485  		F__fpu_cs        T__uint16_t
  8486  		F__fpu_rsrv2     T__uint16_t
  8487  		F__fpu_dp        T__uint32_t
  8488  		F__fpu_ds        T__uint16_t
  8489  		F__fpu_rsrv3     T__uint16_t
  8490  		F__fpu_mxcsr     T__uint32_t
  8491  		F__fpu_mxcsrmask T__uint32_t
  8492  		F__fpu_stmm0     struct {
  8493  			F__mmst_reg  [10]int8
  8494  			F__mmst_rsrv [6]int8
  8495  		}
  8496  		F__fpu_stmm1 struct {
  8497  			F__mmst_reg  [10]int8
  8498  			F__mmst_rsrv [6]int8
  8499  		}
  8500  		F__fpu_stmm2 struct {
  8501  			F__mmst_reg  [10]int8
  8502  			F__mmst_rsrv [6]int8
  8503  		}
  8504  		F__fpu_stmm3 struct {
  8505  			F__mmst_reg  [10]int8
  8506  			F__mmst_rsrv [6]int8
  8507  		}
  8508  		F__fpu_stmm4 struct {
  8509  			F__mmst_reg  [10]int8
  8510  			F__mmst_rsrv [6]int8
  8511  		}
  8512  		F__fpu_stmm5 struct {
  8513  			F__mmst_reg  [10]int8
  8514  			F__mmst_rsrv [6]int8
  8515  		}
  8516  		F__fpu_stmm6 struct {
  8517  			F__mmst_reg  [10]int8
  8518  			F__mmst_rsrv [6]int8
  8519  		}
  8520  		F__fpu_stmm7 struct {
  8521  			F__mmst_reg  [10]int8
  8522  			F__mmst_rsrv [6]int8
  8523  		}
  8524  		F__fpu_xmm0      struct{ F__xmm_reg [16]int8 }
  8525  		F__fpu_xmm1      struct{ F__xmm_reg [16]int8 }
  8526  		F__fpu_xmm2      struct{ F__xmm_reg [16]int8 }
  8527  		F__fpu_xmm3      struct{ F__xmm_reg [16]int8 }
  8528  		F__fpu_xmm4      struct{ F__xmm_reg [16]int8 }
  8529  		F__fpu_xmm5      struct{ F__xmm_reg [16]int8 }
  8530  		F__fpu_xmm6      struct{ F__xmm_reg [16]int8 }
  8531  		F__fpu_xmm7      struct{ F__xmm_reg [16]int8 }
  8532  		F__fpu_xmm8      struct{ F__xmm_reg [16]int8 }
  8533  		F__fpu_xmm9      struct{ F__xmm_reg [16]int8 }
  8534  		F__fpu_xmm10     struct{ F__xmm_reg [16]int8 }
  8535  		F__fpu_xmm11     struct{ F__xmm_reg [16]int8 }
  8536  		F__fpu_xmm12     struct{ F__xmm_reg [16]int8 }
  8537  		F__fpu_xmm13     struct{ F__xmm_reg [16]int8 }
  8538  		F__fpu_xmm14     struct{ F__xmm_reg [16]int8 }
  8539  		F__fpu_xmm15     struct{ F__xmm_reg [16]int8 }
  8540  		F__fpu_rsrv4     [96]int8
  8541  		F__fpu_reserved1 int32
  8542  		F__avx_reserved1 [64]int8
  8543  		F__fpu_ymmh0     struct{ F__xmm_reg [16]int8 }
  8544  		F__fpu_ymmh1     struct{ F__xmm_reg [16]int8 }
  8545  		F__fpu_ymmh2     struct{ F__xmm_reg [16]int8 }
  8546  		F__fpu_ymmh3     struct{ F__xmm_reg [16]int8 }
  8547  		F__fpu_ymmh4     struct{ F__xmm_reg [16]int8 }
  8548  		F__fpu_ymmh5     struct{ F__xmm_reg [16]int8 }
  8549  		F__fpu_ymmh6     struct{ F__xmm_reg [16]int8 }
  8550  		F__fpu_ymmh7     struct{ F__xmm_reg [16]int8 }
  8551  		F__fpu_ymmh8     struct{ F__xmm_reg [16]int8 }
  8552  		F__fpu_ymmh9     struct{ F__xmm_reg [16]int8 }
  8553  		F__fpu_ymmh10    struct{ F__xmm_reg [16]int8 }
  8554  		F__fpu_ymmh11    struct{ F__xmm_reg [16]int8 }
  8555  		F__fpu_ymmh12    struct{ F__xmm_reg [16]int8 }
  8556  		F__fpu_ymmh13    struct{ F__xmm_reg [16]int8 }
  8557  		F__fpu_ymmh14    struct{ F__xmm_reg [16]int8 }
  8558  		F__fpu_ymmh15    struct{ F__xmm_reg [16]int8 }
  8559  		F__fpu_k0        struct{ F__opmask_reg [8]int8 }
  8560  		F__fpu_k1        struct{ F__opmask_reg [8]int8 }
  8561  		F__fpu_k2        struct{ F__opmask_reg [8]int8 }
  8562  		F__fpu_k3        struct{ F__opmask_reg [8]int8 }
  8563  		F__fpu_k4        struct{ F__opmask_reg [8]int8 }
  8564  		F__fpu_k5        struct{ F__opmask_reg [8]int8 }
  8565  		F__fpu_k6        struct{ F__opmask_reg [8]int8 }
  8566  		F__fpu_k7        struct{ F__opmask_reg [8]int8 }
  8567  		F__fpu_zmmh0     struct{ F__ymm_reg [32]int8 }
  8568  		F__fpu_zmmh1     struct{ F__ymm_reg [32]int8 }
  8569  		F__fpu_zmmh2     struct{ F__ymm_reg [32]int8 }
  8570  		F__fpu_zmmh3     struct{ F__ymm_reg [32]int8 }
  8571  		F__fpu_zmmh4     struct{ F__ymm_reg [32]int8 }
  8572  		F__fpu_zmmh5     struct{ F__ymm_reg [32]int8 }
  8573  		F__fpu_zmmh6     struct{ F__ymm_reg [32]int8 }
  8574  		F__fpu_zmmh7     struct{ F__ymm_reg [32]int8 }
  8575  		F__fpu_zmmh8     struct{ F__ymm_reg [32]int8 }
  8576  		F__fpu_zmmh9     struct{ F__ymm_reg [32]int8 }
  8577  		F__fpu_zmmh10    struct{ F__ymm_reg [32]int8 }
  8578  		F__fpu_zmmh11    struct{ F__ymm_reg [32]int8 }
  8579  		F__fpu_zmmh12    struct{ F__ymm_reg [32]int8 }
  8580  		F__fpu_zmmh13    struct{ F__ymm_reg [32]int8 }
  8581  		F__fpu_zmmh14    struct{ F__ymm_reg [32]int8 }
  8582  		F__fpu_zmmh15    struct{ F__ymm_reg [32]int8 }
  8583  		F__fpu_zmm16     struct{ F__zmm_reg [64]int8 }
  8584  		F__fpu_zmm17     struct{ F__zmm_reg [64]int8 }
  8585  		F__fpu_zmm18     struct{ F__zmm_reg [64]int8 }
  8586  		F__fpu_zmm19     struct{ F__zmm_reg [64]int8 }
  8587  		F__fpu_zmm20     struct{ F__zmm_reg [64]int8 }
  8588  		F__fpu_zmm21     struct{ F__zmm_reg [64]int8 }
  8589  		F__fpu_zmm22     struct{ F__zmm_reg [64]int8 }
  8590  		F__fpu_zmm23     struct{ F__zmm_reg [64]int8 }
  8591  		F__fpu_zmm24     struct{ F__zmm_reg [64]int8 }
  8592  		F__fpu_zmm25     struct{ F__zmm_reg [64]int8 }
  8593  		F__fpu_zmm26     struct{ F__zmm_reg [64]int8 }
  8594  		F__fpu_zmm27     struct{ F__zmm_reg [64]int8 }
  8595  		F__fpu_zmm28     struct{ F__zmm_reg [64]int8 }
  8596  		F__fpu_zmm29     struct{ F__zmm_reg [64]int8 }
  8597  		F__fpu_zmm30     struct{ F__zmm_reg [64]int8 }
  8598  		F__fpu_zmm31     struct{ F__zmm_reg [64]int8 }
  8599  	}
  8600  	F__ccgo_pad1 [4]byte
  8601  } /* _mcontext.h:140:1 */
  8602  
  8603  type Tmcontext_t = uintptr /* _mcontext.h:206:33 */
  8604  
  8605  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  8606  //
  8607  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8608  //
  8609  // This file contains Original Code and/or Modifications of Original Code
  8610  // as defined in and that are subject to the Apple Public Source License
  8611  // Version 2.0 (the 'License'). You may not use this file except in
  8612  // compliance with the License. The rights granted to you under the License
  8613  // may not be used to create, or enable the creation or redistribution of,
  8614  // unlawful or unlicensed copies of an Apple operating system, or to
  8615  // circumvent, violate, or enable the circumvention or violation of, any
  8616  // terms of an Apple operating system software license agreement.
  8617  //
  8618  // Please obtain a copy of the License at
  8619  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8620  //
  8621  // The Original Code and all software distributed under the License are
  8622  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8623  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8624  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8625  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8626  // Please see the License for the specific language governing rights and
  8627  // limitations under the License.
  8628  //
  8629  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8630  // Copyright (c) 2003-2013 Apple Inc. All rights reserved.
  8631  //
  8632  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8633  //
  8634  // This file contains Original Code and/or Modifications of Original Code
  8635  // as defined in and that are subject to the Apple Public Source License
  8636  // Version 2.0 (the 'License'). You may not use this file except in
  8637  // compliance with the License. The rights granted to you under the License
  8638  // may not be used to create, or enable the creation or redistribution of,
  8639  // unlawful or unlicensed copies of an Apple operating system, or to
  8640  // circumvent, violate, or enable the circumvention or violation of, any
  8641  // terms of an Apple operating system software license agreement.
  8642  //
  8643  // Please obtain a copy of the License at
  8644  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8645  //
  8646  // The Original Code and all software distributed under the License are
  8647  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8648  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8649  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8650  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8651  // Please see the License for the specific language governing rights and
  8652  // limitations under the License.
  8653  //
  8654  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8655  
  8656  type Tpthread_attr_t = T__darwin_pthread_attr_t /* _pthread_attr_t.h:31:33 */
  8657  
  8658  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  8659  //
  8660  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8661  //
  8662  // This file contains Original Code and/or Modifications of Original Code
  8663  // as defined in and that are subject to the Apple Public Source License
  8664  // Version 2.0 (the 'License'). You may not use this file except in
  8665  // compliance with the License. The rights granted to you under the License
  8666  // may not be used to create, or enable the creation or redistribution of,
  8667  // unlawful or unlicensed copies of an Apple operating system, or to
  8668  // circumvent, violate, or enable the circumvention or violation of, any
  8669  // terms of an Apple operating system software license agreement.
  8670  //
  8671  // Please obtain a copy of the License at
  8672  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8673  //
  8674  // The Original Code and all software distributed under the License are
  8675  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8676  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8677  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8678  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8679  // Please see the License for the specific language governing rights and
  8680  // limitations under the License.
  8681  //
  8682  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8683  
  8684  // Structure used in sigaltstack call.
  8685  
  8686  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  8687  //
  8688  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8689  //
  8690  // This file contains Original Code and/or Modifications of Original Code
  8691  // as defined in and that are subject to the Apple Public Source License
  8692  // Version 2.0 (the 'License'). You may not use this file except in
  8693  // compliance with the License. The rights granted to you under the License
  8694  // may not be used to create, or enable the creation or redistribution of,
  8695  // unlawful or unlicensed copies of an Apple operating system, or to
  8696  // circumvent, violate, or enable the circumvention or violation of, any
  8697  // terms of an Apple operating system software license agreement.
  8698  //
  8699  // Please obtain a copy of the License at
  8700  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8701  //
  8702  // The Original Code and all software distributed under the License are
  8703  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8704  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8705  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8706  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8707  // Please see the License for the specific language governing rights and
  8708  // limitations under the License.
  8709  //
  8710  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8711  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  8712  // Copyright (c) 1991, 1993
  8713  //	The Regents of the University of California.  All rights reserved.
  8714  //
  8715  // This code is derived from software contributed to Berkeley by
  8716  // Berkeley Software Design, Inc.
  8717  //
  8718  // Redistribution and use in source and binary forms, with or without
  8719  // modification, are permitted provided that the following conditions
  8720  // are met:
  8721  // 1. Redistributions of source code must retain the above copyright
  8722  //    notice, this list of conditions and the following disclaimer.
  8723  // 2. Redistributions in binary form must reproduce the above copyright
  8724  //    notice, this list of conditions and the following disclaimer in the
  8725  //    documentation and/or other materials provided with the distribution.
  8726  // 3. All advertising materials mentioning features or use of this software
  8727  //    must display the following acknowledgement:
  8728  //	This product includes software developed by the University of
  8729  //	California, Berkeley and its contributors.
  8730  // 4. Neither the name of the University nor the names of its contributors
  8731  //    may be used to endorse or promote products derived from this software
  8732  //    without specific prior written permission.
  8733  //
  8734  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  8735  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  8736  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  8737  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  8738  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  8739  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  8740  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  8741  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  8742  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  8743  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  8744  // SUCH DAMAGE.
  8745  //
  8746  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  8747  
  8748  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  8749  //
  8750  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8751  //
  8752  // This file contains Original Code and/or Modifications of Original Code
  8753  // as defined in and that are subject to the Apple Public Source License
  8754  // Version 2.0 (the 'License'). You may not use this file except in
  8755  // compliance with the License. The rights granted to you under the License
  8756  // may not be used to create, or enable the creation or redistribution of,
  8757  // unlawful or unlicensed copies of an Apple operating system, or to
  8758  // circumvent, violate, or enable the circumvention or violation of, any
  8759  // terms of an Apple operating system software license agreement.
  8760  //
  8761  // Please obtain a copy of the License at
  8762  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8763  //
  8764  // The Original Code and all software distributed under the License are
  8765  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8766  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8767  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8768  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8769  // Please see the License for the specific language governing rights and
  8770  // limitations under the License.
  8771  //
  8772  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8773  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  8774  
  8775  type S__darwin_sigaltstack = struct {
  8776  	Fss_sp       uintptr
  8777  	Fss_size     T__darwin_size_t
  8778  	Fss_flags    int32
  8779  	F__ccgo_pad1 [4]byte
  8780  } /* _sigaltstack.h:42:1 */
  8781  
  8782  type Tstack_t = S__darwin_sigaltstack /* _sigaltstack.h:48:33 */ // [???] signal stack
  8783  
  8784  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  8785  //
  8786  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8787  //
  8788  // This file contains Original Code and/or Modifications of Original Code
  8789  // as defined in and that are subject to the Apple Public Source License
  8790  // Version 2.0 (the 'License'). You may not use this file except in
  8791  // compliance with the License. The rights granted to you under the License
  8792  // may not be used to create, or enable the creation or redistribution of,
  8793  // unlawful or unlicensed copies of an Apple operating system, or to
  8794  // circumvent, violate, or enable the circumvention or violation of, any
  8795  // terms of an Apple operating system software license agreement.
  8796  //
  8797  // Please obtain a copy of the License at
  8798  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8799  //
  8800  // The Original Code and all software distributed under the License are
  8801  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8802  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8803  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8804  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8805  // Please see the License for the specific language governing rights and
  8806  // limitations under the License.
  8807  //
  8808  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8809  
  8810  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
  8811  //
  8812  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8813  //
  8814  // This file contains Original Code and/or Modifications of Original Code
  8815  // as defined in and that are subject to the Apple Public Source License
  8816  // Version 2.0 (the 'License'). You may not use this file except in
  8817  // compliance with the License. The rights granted to you under the License
  8818  // may not be used to create, or enable the creation or redistribution of,
  8819  // unlawful or unlicensed copies of an Apple operating system, or to
  8820  // circumvent, violate, or enable the circumvention or violation of, any
  8821  // terms of an Apple operating system software license agreement.
  8822  //
  8823  // Please obtain a copy of the License at
  8824  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8825  //
  8826  // The Original Code and all software distributed under the License are
  8827  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8828  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8829  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8830  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8831  // Please see the License for the specific language governing rights and
  8832  // limitations under the License.
  8833  //
  8834  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8835  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  8836  // Copyright (c) 1991, 1993
  8837  //	The Regents of the University of California.  All rights reserved.
  8838  //
  8839  // This code is derived from software contributed to Berkeley by
  8840  // Berkeley Software Design, Inc.
  8841  //
  8842  // Redistribution and use in source and binary forms, with or without
  8843  // modification, are permitted provided that the following conditions
  8844  // are met:
  8845  // 1. Redistributions of source code must retain the above copyright
  8846  //    notice, this list of conditions and the following disclaimer.
  8847  // 2. Redistributions in binary form must reproduce the above copyright
  8848  //    notice, this list of conditions and the following disclaimer in the
  8849  //    documentation and/or other materials provided with the distribution.
  8850  // 3. All advertising materials mentioning features or use of this software
  8851  //    must display the following acknowledgement:
  8852  //	This product includes software developed by the University of
  8853  //	California, Berkeley and its contributors.
  8854  // 4. Neither the name of the University nor the names of its contributors
  8855  //    may be used to endorse or promote products derived from this software
  8856  //    without specific prior written permission.
  8857  //
  8858  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  8859  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  8860  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  8861  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  8862  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  8863  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  8864  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  8865  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  8866  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  8867  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  8868  // SUCH DAMAGE.
  8869  //
  8870  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  8871  
  8872  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  8873  //
  8874  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8875  //
  8876  // This file contains Original Code and/or Modifications of Original Code
  8877  // as defined in and that are subject to the Apple Public Source License
  8878  // Version 2.0 (the 'License'). You may not use this file except in
  8879  // compliance with the License. The rights granted to you under the License
  8880  // may not be used to create, or enable the creation or redistribution of,
  8881  // unlawful or unlicensed copies of an Apple operating system, or to
  8882  // circumvent, violate, or enable the circumvention or violation of, any
  8883  // terms of an Apple operating system software license agreement.
  8884  //
  8885  // Please obtain a copy of the License at
  8886  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8887  //
  8888  // The Original Code and all software distributed under the License are
  8889  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8890  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8891  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8892  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8893  // Please see the License for the specific language governing rights and
  8894  // limitations under the License.
  8895  //
  8896  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8897  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  8898  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  8899  //
  8900  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8901  //
  8902  // This file contains Original Code and/or Modifications of Original Code
  8903  // as defined in and that are subject to the Apple Public Source License
  8904  // Version 2.0 (the 'License'). You may not use this file except in
  8905  // compliance with the License. The rights granted to you under the License
  8906  // may not be used to create, or enable the creation or redistribution of,
  8907  // unlawful or unlicensed copies of an Apple operating system, or to
  8908  // circumvent, violate, or enable the circumvention or violation of, any
  8909  // terms of an Apple operating system software license agreement.
  8910  //
  8911  // Please obtain a copy of the License at
  8912  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8913  //
  8914  // The Original Code and all software distributed under the License are
  8915  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8916  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8917  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8918  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8919  // Please see the License for the specific language governing rights and
  8920  // limitations under the License.
  8921  //
  8922  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8923  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  8924  //
  8925  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8926  //
  8927  // This file contains Original Code and/or Modifications of Original Code
  8928  // as defined in and that are subject to the Apple Public Source License
  8929  // Version 2.0 (the 'License'). You may not use this file except in
  8930  // compliance with the License. The rights granted to you under the License
  8931  // may not be used to create, or enable the creation or redistribution of,
  8932  // unlawful or unlicensed copies of an Apple operating system, or to
  8933  // circumvent, violate, or enable the circumvention or violation of, any
  8934  // terms of an Apple operating system software license agreement.
  8935  //
  8936  // Please obtain a copy of the License at
  8937  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8938  //
  8939  // The Original Code and all software distributed under the License are
  8940  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8941  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8942  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8943  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8944  // Please see the License for the specific language governing rights and
  8945  // limitations under the License.
  8946  //
  8947  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8948  
  8949  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  8950  //
  8951  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8952  //
  8953  // This file contains Original Code and/or Modifications of Original Code
  8954  // as defined in and that are subject to the Apple Public Source License
  8955  // Version 2.0 (the 'License'). You may not use this file except in
  8956  // compliance with the License. The rights granted to you under the License
  8957  // may not be used to create, or enable the creation or redistribution of,
  8958  // unlawful or unlicensed copies of an Apple operating system, or to
  8959  // circumvent, violate, or enable the circumvention or violation of, any
  8960  // terms of an Apple operating system software license agreement.
  8961  //
  8962  // Please obtain a copy of the License at
  8963  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  8964  //
  8965  // The Original Code and all software distributed under the License are
  8966  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  8967  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  8968  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  8969  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  8970  // Please see the License for the specific language governing rights and
  8971  // limitations under the License.
  8972  //
  8973  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  8974  
  8975  // Structure used in sigaltstack call.
  8976  
  8977  type S__darwin_ucontext = struct {
  8978  	Fuc_onstack int32
  8979  	Fuc_sigmask T__darwin_sigset_t
  8980  	Fuc_stack   struct {
  8981  		Fss_sp       uintptr
  8982  		Fss_size     T__darwin_size_t
  8983  		Fss_flags    int32
  8984  		F__ccgo_pad1 [4]byte
  8985  	}
  8986  	Fuc_link     uintptr
  8987  	Fuc_mcsize   T__darwin_size_t
  8988  	Fuc_mcontext uintptr
  8989  } /* _ucontext.h:43:1 */
  8990  
  8991  // user context
  8992  type Tucontext_t = S__darwin_ucontext /* _ucontext.h:57:33 */ // [???] user context
  8993  
  8994  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  8995  //
  8996  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  8997  //
  8998  // This file contains Original Code and/or Modifications of Original Code
  8999  // as defined in and that are subject to the Apple Public Source License
  9000  // Version 2.0 (the 'License'). You may not use this file except in
  9001  // compliance with the License. The rights granted to you under the License
  9002  // may not be used to create, or enable the creation or redistribution of,
  9003  // unlawful or unlicensed copies of an Apple operating system, or to
  9004  // circumvent, violate, or enable the circumvention or violation of, any
  9005  // terms of an Apple operating system software license agreement.
  9006  //
  9007  // Please obtain a copy of the License at
  9008  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9009  //
  9010  // The Original Code and all software distributed under the License are
  9011  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9012  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9013  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9014  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9015  // Please see the License for the specific language governing rights and
  9016  // limitations under the License.
  9017  //
  9018  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9019  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9020  //
  9021  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9022  //
  9023  // This file contains Original Code and/or Modifications of Original Code
  9024  // as defined in and that are subject to the Apple Public Source License
  9025  // Version 2.0 (the 'License'). You may not use this file except in
  9026  // compliance with the License. The rights granted to you under the License
  9027  // may not be used to create, or enable the creation or redistribution of,
  9028  // unlawful or unlicensed copies of an Apple operating system, or to
  9029  // circumvent, violate, or enable the circumvention or violation of, any
  9030  // terms of an Apple operating system software license agreement.
  9031  //
  9032  // Please obtain a copy of the License at
  9033  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9034  //
  9035  // The Original Code and all software distributed under the License are
  9036  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9037  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9038  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9039  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9040  // Please see the License for the specific language governing rights and
  9041  // limitations under the License.
  9042  //
  9043  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9044  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  9045  //
  9046  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9047  //
  9048  // This file contains Original Code and/or Modifications of Original Code
  9049  // as defined in and that are subject to the Apple Public Source License
  9050  // Version 2.0 (the 'License'). You may not use this file except in
  9051  // compliance with the License. The rights granted to you under the License
  9052  // may not be used to create, or enable the creation or redistribution of,
  9053  // unlawful or unlicensed copies of an Apple operating system, or to
  9054  // circumvent, violate, or enable the circumvention or violation of, any
  9055  // terms of an Apple operating system software license agreement.
  9056  //
  9057  // Please obtain a copy of the License at
  9058  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9059  //
  9060  // The Original Code and all software distributed under the License are
  9061  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9062  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9063  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9064  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9065  // Please see the License for the specific language governing rights and
  9066  // limitations under the License.
  9067  //
  9068  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9069  
  9070  type Tsigset_t = T__darwin_sigset_t /* _sigset_t.h:31:41 */
  9071  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9072  //
  9073  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9074  //
  9075  // This file contains Original Code and/or Modifications of Original Code
  9076  // as defined in and that are subject to the Apple Public Source License
  9077  // Version 2.0 (the 'License'). You may not use this file except in
  9078  // compliance with the License. The rights granted to you under the License
  9079  // may not be used to create, or enable the creation or redistribution of,
  9080  // unlawful or unlicensed copies of an Apple operating system, or to
  9081  // circumvent, violate, or enable the circumvention or violation of, any
  9082  // terms of an Apple operating system software license agreement.
  9083  //
  9084  // Please obtain a copy of the License at
  9085  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9086  //
  9087  // The Original Code and all software distributed under the License are
  9088  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9089  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9090  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9091  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9092  // Please see the License for the specific language governing rights and
  9093  // limitations under the License.
  9094  //
  9095  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9096  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9097  //
  9098  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9099  //
  9100  // This file contains Original Code and/or Modifications of Original Code
  9101  // as defined in and that are subject to the Apple Public Source License
  9102  // Version 2.0 (the 'License'). You may not use this file except in
  9103  // compliance with the License. The rights granted to you under the License
  9104  // may not be used to create, or enable the creation or redistribution of,
  9105  // unlawful or unlicensed copies of an Apple operating system, or to
  9106  // circumvent, violate, or enable the circumvention or violation of, any
  9107  // terms of an Apple operating system software license agreement.
  9108  //
  9109  // Please obtain a copy of the License at
  9110  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9111  //
  9112  // The Original Code and all software distributed under the License are
  9113  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9114  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9115  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9116  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9117  // Please see the License for the specific language governing rights and
  9118  // limitations under the License.
  9119  //
  9120  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9121  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  9122  //
  9123  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9124  //
  9125  // This file contains Original Code and/or Modifications of Original Code
  9126  // as defined in and that are subject to the Apple Public Source License
  9127  // Version 2.0 (the 'License'). You may not use this file except in
  9128  // compliance with the License. The rights granted to you under the License
  9129  // may not be used to create, or enable the creation or redistribution of,
  9130  // unlawful or unlicensed copies of an Apple operating system, or to
  9131  // circumvent, violate, or enable the circumvention or violation of, any
  9132  // terms of an Apple operating system software license agreement.
  9133  //
  9134  // Please obtain a copy of the License at
  9135  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9136  //
  9137  // The Original Code and all software distributed under the License are
  9138  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9139  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9140  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9141  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9142  // Please see the License for the specific language governing rights and
  9143  // limitations under the License.
  9144  //
  9145  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9146  
  9147  type Tuid_t = T__darwin_uid_t /* _uid_t.h:31:31 */
  9148  
  9149  type Ssigval = struct {
  9150  	F__ccgo_pad1 [0]uint64
  9151  	Fsival_int   int32
  9152  	F__ccgo_pad2 [4]byte
  9153  } /* signal.h:158:1 */
  9154  
  9155  type Ssigevent = struct {
  9156  	Fsigev_notify int32
  9157  	Fsigev_signo  int32
  9158  	Fsigev_value  struct {
  9159  		F__ccgo_pad1 [0]uint64
  9160  		Fsival_int   int32
  9161  		F__ccgo_pad2 [4]byte
  9162  	}
  9163  	Fsigev_notify_function   uintptr
  9164  	Fsigev_notify_attributes uintptr
  9165  } /* signal.h:168:1 */
  9166  
  9167  type S__siginfo = struct {
  9168  	Fsi_signo  int32
  9169  	Fsi_errno  int32
  9170  	Fsi_code   int32
  9171  	Fsi_pid    Tpid_t
  9172  	Fsi_uid    Tuid_t
  9173  	Fsi_status int32
  9174  	Fsi_addr   uintptr
  9175  	Fsi_value  struct {
  9176  		F__ccgo_pad1 [0]uint64
  9177  		Fsival_int   int32
  9178  		F__ccgo_pad2 [4]byte
  9179  	}
  9180  	Fsi_band int64
  9181  	F__pad   [7]uint64
  9182  } /* signal.h:177:9 */
  9183  
  9184  type Tsiginfo_t = S__siginfo /* signal.h:188:3 */
  9185  
  9186  // When the signal is SIGILL or SIGFPE, si_addr contains the address of
  9187  // the faulting instruction.
  9188  // When the signal is SIGSEGV or SIGBUS, si_addr contains the address of
  9189  // the faulting memory reference. Although for x86 there are cases of SIGSEGV
  9190  // for which si_addr cannot be determined and is NULL.
  9191  // If the signal is SIGCHLD, the si_pid field will contain the child process ID,
  9192  //  si_status contains the exit value or signal and
  9193  //  si_uid contains the real user ID of the process that sent the signal.
  9194  
  9195  // Values for si_code
  9196  
  9197  // Codes for SIGILL
  9198  
  9199  // Codes for SIGFPE
  9200  
  9201  // Codes for SIGSEGV
  9202  
  9203  // Codes for SIGBUS
  9204  
  9205  // Codes for SIGTRAP
  9206  
  9207  // Codes for SIGCHLD
  9208  
  9209  // Codes for SIGPOLL
  9210  
  9211  // union for signal handlers
  9212  type S__sigaction_u = struct{ F__sa_handler uintptr } /* signal.h:269:1 */
  9213  
  9214  // Signal vector template for Kernel user boundary
  9215  type S__sigaction = struct {
  9216  	F__sigaction_u struct{ F__sa_handler uintptr }
  9217  	Fsa_tramp      uintptr
  9218  	Fsa_mask       Tsigset_t
  9219  	Fsa_flags      int32
  9220  } /* signal.h:276:1 */
  9221  
  9222  // Signal vector "template" used in sigaction call.
  9223  type Ssigaction = struct {
  9224  	F__sigaction_u struct{ F__sa_handler uintptr }
  9225  	Fsa_mask       Tsigset_t
  9226  	Fsa_flags      int32
  9227  } /* signal.h:286:1 */
  9228  
  9229  // if SA_SIGINFO is set, sa_sigaction is to be used instead of sa_handler.
  9230  
  9231  // This will provide 64bit register set in a 32bit user address space
  9232  
  9233  // the following are the only bits we support from user space, the
  9234  // rest are for kernel use only.
  9235  
  9236  // Flags for sigprocmask:
  9237  
  9238  // POSIX 1003.1b required values.
  9239  
  9240  type Tsig_t = uintptr /* signal.h:331:14 */ // type of signal function
  9241  
  9242  // Structure used in sigaltstack call.
  9243  
  9244  // 4.3 compatibility:
  9245  // Signal vector "template" used in sigvec call.
  9246  type Ssigvec = struct {
  9247  	Fsv_handler uintptr
  9248  	Fsv_mask    int32
  9249  	Fsv_flags   int32
  9250  } /* signal.h:348:1 */
  9251  
  9252  // Structure used in sigstack call.
  9253  type Ssigstack = struct {
  9254  	Fss_sp       uintptr
  9255  	Fss_onstack  int32
  9256  	F__ccgo_pad1 [4]byte
  9257  } /* signal.h:367:1 */
  9258  
  9259  type Tuint64_t = uint64 /* stdint.h:98:25 */
  9260  
  9261  type Tint_least64_t = Tint64_t   /* stdint.h:110:25 */
  9262  type Tuint_least64_t = Tuint64_t /* stdint.h:111:26 */
  9263  type Tint_fast64_t = Tint64_t    /* stdint.h:112:25 */
  9264  type Tuint_fast64_t = Tuint64_t  /* stdint.h:113:26 */
  9265  
  9266  type Tuint32_t = uint32 /* stdint.h:172:25 */
  9267  
  9268  type Tint_least32_t = Tint32_t   /* stdint.h:184:25 */
  9269  type Tuint_least32_t = Tuint32_t /* stdint.h:185:26 */
  9270  type Tint_fast32_t = Tint32_t    /* stdint.h:186:25 */
  9271  type Tuint_fast32_t = Tuint32_t  /* stdint.h:187:26 */
  9272  type Tuint16_t = uint16          /* stdint.h:207:25 */
  9273  
  9274  type Tint_least16_t = Tint16_t   /* stdint.h:215:25 */
  9275  type Tuint_least16_t = Tuint16_t /* stdint.h:216:26 */
  9276  type Tint_fast16_t = Tint16_t    /* stdint.h:217:25 */
  9277  type Tuint_fast16_t = Tuint16_t  /* stdint.h:218:26 */
  9278  type Tuint8_t = uint8            /* stdint.h:226:24 */
  9279  
  9280  type Tint_least8_t = Tint8_t   /* stdint.h:232:24 */
  9281  type Tuint_least8_t = Tuint8_t /* stdint.h:233:25 */
  9282  type Tint_fast8_t = Tint8_t    /* stdint.h:234:24 */
  9283  type Tuint_fast8_t = Tuint8_t  /* stdint.h:235:25 */
  9284  
  9285  // prevent glibc sys/types.h from defining conflicting types
  9286  
  9287  // C99 7.18.1.4 Integer types capable of holding object pointers.
  9288  
  9289  // C99 7.18.1.5 Greatest-width integer types.
  9290  type Tintmax_t = int64   /* stdint.h:262:26 */
  9291  type Tuintmax_t = uint64 /* stdint.h:263:26 */
  9292  
  9293  // C99 7.18.4 Macros for minimum-width integer constants.
  9294  //
  9295  // The standard requires that integer constant macros be defined for all the
  9296  // minimum-width types defined above. As 8-, 16-, 32-, and 64-bit minimum-width
  9297  // types are required, the corresponding integer constant macros are defined
  9298  // here. This implementation also defines minimum-width types for every other
  9299  // integer width that the target implements, so corresponding macros are
  9300  // defined below, too.
  9301  //
  9302  // These macros are defined using the same successive-shrinking approach as
  9303  // the type definitions above. It is likewise important that macros are defined
  9304  // in order of decending width.
  9305  //
  9306  // Note that C++ should not check __STDC_CONSTANT_MACROS here, contrary to the
  9307  // claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]).
  9308  
  9309  // C99 7.18.2.1 Limits of exact-width integer types.
  9310  // C99 7.18.2.2 Limits of minimum-width integer types.
  9311  // C99 7.18.2.3 Limits of fastest minimum-width integer types.
  9312  //
  9313  // The presence of limit macros are completely optional in C99.  This
  9314  // implementation defines limits for all of the types (exact- and
  9315  // minimum-width) that it defines above, using the limits of the minimum-width
  9316  // type for any types that do not have exact-width representations.
  9317  //
  9318  // As in the type definitions, this section takes an approach of
  9319  // successive-shrinking to determine which limits to use for the standard (8,
  9320  // 16, 32, 64) bit widths when they don't have exact representations. It is
  9321  // therefore important that the definitions be kept in order of decending
  9322  // widths.
  9323  //
  9324  // Note that C++ should not check __STDC_LIMIT_MACROS here, contrary to the
  9325  // claims of the C standard (see C++ 18.3.1p2, [cstdint.syn]).
  9326  
  9327  // Some utility macros
  9328  
  9329  // C99 7.18.2.4 Limits of integer types capable of holding object pointers.
  9330  // C99 7.18.3 Limits of other integer types.
  9331  
  9332  // ISO9899:2011 7.20 (C11 Annex K): Define RSIZE_MAX if __STDC_WANT_LIB_EXT1__
  9333  // is enabled.
  9334  
  9335  // C99 7.18.2.5 Limits of greatest-width integer types.
  9336  
  9337  // C99 7.18.3 Limits of other integer types.
  9338  
  9339  // 7.18.4.2 Macros for greatest-width integer constants.
  9340  
  9341  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
  9342  //
  9343  // @APPLE_LICENSE_HEADER_START@
  9344  //
  9345  // This file contains Original Code and/or Modifications of Original Code
  9346  // as defined in and that are subject to the Apple Public Source License
  9347  // Version 2.0 (the 'License'). You may not use this file except in
  9348  // compliance with the License. Please obtain a copy of the License at
  9349  // http://www.opensource.apple.com/apsl/ and read it before using this
  9350  // file.
  9351  //
  9352  // The Original Code and all software distributed under the License are
  9353  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9354  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9355  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9356  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9357  // Please see the License for the specific language governing rights and
  9358  // limitations under the License.
  9359  //
  9360  // @APPLE_LICENSE_HEADER_END@
  9361  
  9362  // [XSI] The timeval structure shall be defined as described in
  9363  // <sys/time.h>
  9364  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9365  //
  9366  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9367  //
  9368  // This file contains Original Code and/or Modifications of Original Code
  9369  // as defined in and that are subject to the Apple Public Source License
  9370  // Version 2.0 (the 'License'). You may not use this file except in
  9371  // compliance with the License. The rights granted to you under the License
  9372  // may not be used to create, or enable the creation or redistribution of,
  9373  // unlawful or unlicensed copies of an Apple operating system, or to
  9374  // circumvent, violate, or enable the circumvention or violation of, any
  9375  // terms of an Apple operating system software license agreement.
  9376  //
  9377  // Please obtain a copy of the License at
  9378  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9379  //
  9380  // The Original Code and all software distributed under the License are
  9381  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9382  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9383  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9384  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9385  // Please see the License for the specific language governing rights and
  9386  // limitations under the License.
  9387  //
  9388  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9389  
  9390  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  9391  //
  9392  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9393  //
  9394  // This file contains Original Code and/or Modifications of Original Code
  9395  // as defined in and that are subject to the Apple Public Source License
  9396  // Version 2.0 (the 'License'). You may not use this file except in
  9397  // compliance with the License. The rights granted to you under the License
  9398  // may not be used to create, or enable the creation or redistribution of,
  9399  // unlawful or unlicensed copies of an Apple operating system, or to
  9400  // circumvent, violate, or enable the circumvention or violation of, any
  9401  // terms of an Apple operating system software license agreement.
  9402  //
  9403  // Please obtain a copy of the License at
  9404  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9405  //
  9406  // The Original Code and all software distributed under the License are
  9407  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9408  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9409  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9410  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9411  // Please see the License for the specific language governing rights and
  9412  // limitations under the License.
  9413  //
  9414  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9415  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  9416  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  9417  //
  9418  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9419  //
  9420  // This file contains Original Code and/or Modifications of Original Code
  9421  // as defined in and that are subject to the Apple Public Source License
  9422  // Version 2.0 (the 'License'). You may not use this file except in
  9423  // compliance with the License. The rights granted to you under the License
  9424  // may not be used to create, or enable the creation or redistribution of,
  9425  // unlawful or unlicensed copies of an Apple operating system, or to
  9426  // circumvent, violate, or enable the circumvention or violation of, any
  9427  // terms of an Apple operating system software license agreement.
  9428  //
  9429  // Please obtain a copy of the License at
  9430  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9431  //
  9432  // The Original Code and all software distributed under the License are
  9433  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9434  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9435  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9436  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9437  // Please see the License for the specific language governing rights and
  9438  // limitations under the License.
  9439  //
  9440  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9441  
  9442  type Stimeval = struct {
  9443  	Ftv_sec      T__darwin_time_t
  9444  	Ftv_usec     T__darwin_suseconds_t
  9445  	F__ccgo_pad1 [4]byte
  9446  } /* _timeval.h:34:1 */
  9447  
  9448  // The id_t type shall be defined as described in <sys/types.h>
  9449  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9450  //
  9451  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9452  //
  9453  // This file contains Original Code and/or Modifications of Original Code
  9454  // as defined in and that are subject to the Apple Public Source License
  9455  // Version 2.0 (the 'License'). You may not use this file except in
  9456  // compliance with the License. The rights granted to you under the License
  9457  // may not be used to create, or enable the creation or redistribution of,
  9458  // unlawful or unlicensed copies of an Apple operating system, or to
  9459  // circumvent, violate, or enable the circumvention or violation of, any
  9460  // terms of an Apple operating system software license agreement.
  9461  //
  9462  // Please obtain a copy of the License at
  9463  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9464  //
  9465  // The Original Code and all software distributed under the License are
  9466  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9467  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9468  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9469  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9470  // Please see the License for the specific language governing rights and
  9471  // limitations under the License.
  9472  //
  9473  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9474  
  9475  // Resource limit type (low 63 bits, excluding the sign bit)
  9476  type Trlim_t = T__uint64_t /* resource.h:89:25 */
  9477  
  9478  // ****
  9479  //
  9480  // PRIORITY
  9481  
  9482  // Possible values of the first parameter to getpriority()/setpriority(),
  9483  // used to indicate the type of the second parameter.
  9484  
  9485  // Range limitations for the value of the third parameter to setpriority().
  9486  
  9487  // use PRIO_DARWIN_BG to set the current thread into "background" state
  9488  // which lowers CPU, disk IO, and networking priorites until thread terminates
  9489  // or "background" state is revoked
  9490  
  9491  // use PRIO_DARWIN_NONUI to restrict a process's ability to make calls to
  9492  // the GPU. (deprecated)
  9493  
  9494  // ****
  9495  //
  9496  // RESOURCE USAGE
  9497  
  9498  // Possible values of the first parameter to getrusage(), used to indicate
  9499  // the scope of the information to be returned.
  9500  
  9501  // A structure representing an accounting of resource utilization.  The
  9502  // address of an instance of this structure is the second parameter to
  9503  // getrusage().
  9504  //
  9505  // Note: All values other than ru_utime and ru_stime are implementaiton
  9506  //       defined and subject to change in a future release.  Their use
  9507  //       is discouraged for standards compliant programs.
  9508  type Srusage = struct {
  9509  	Fru_utime struct {
  9510  		Ftv_sec      T__darwin_time_t
  9511  		Ftv_usec     T__darwin_suseconds_t
  9512  		F__ccgo_pad1 [4]byte
  9513  	}
  9514  	Fru_stime struct {
  9515  		Ftv_sec      T__darwin_time_t
  9516  		Ftv_usec     T__darwin_suseconds_t
  9517  		F__ccgo_pad1 [4]byte
  9518  	}
  9519  	Fru_maxrss   int64
  9520  	Fru_ixrss    int64
  9521  	Fru_idrss    int64
  9522  	Fru_isrss    int64
  9523  	Fru_minflt   int64
  9524  	Fru_majflt   int64
  9525  	Fru_nswap    int64
  9526  	Fru_inblock  int64
  9527  	Fru_oublock  int64
  9528  	Fru_msgsnd   int64
  9529  	Fru_msgrcv   int64
  9530  	Fru_nsignals int64
  9531  	Fru_nvcsw    int64
  9532  	Fru_nivcsw   int64
  9533  } /* resource.h:152:1 */
  9534  
  9535  // Flavors for proc_pid_rusage().
  9536  
  9537  // Flags for RUSAGE_INFO_V5
  9538  
  9539  type Trusage_info_t = uintptr /* resource.h:199:14 */
  9540  
  9541  type Srusage_info_v0 = struct {
  9542  	Fri_uuid               [16]Tuint8_t
  9543  	Fri_user_time          Tuint64_t
  9544  	Fri_system_time        Tuint64_t
  9545  	Fri_pkg_idle_wkups     Tuint64_t
  9546  	Fri_interrupt_wkups    Tuint64_t
  9547  	Fri_pageins            Tuint64_t
  9548  	Fri_wired_size         Tuint64_t
  9549  	Fri_resident_size      Tuint64_t
  9550  	Fri_phys_footprint     Tuint64_t
  9551  	Fri_proc_start_abstime Tuint64_t
  9552  	Fri_proc_exit_abstime  Tuint64_t
  9553  } /* resource.h:201:1 */
  9554  
  9555  type Srusage_info_v1 = struct {
  9556  	Fri_uuid                  [16]Tuint8_t
  9557  	Fri_user_time             Tuint64_t
  9558  	Fri_system_time           Tuint64_t
  9559  	Fri_pkg_idle_wkups        Tuint64_t
  9560  	Fri_interrupt_wkups       Tuint64_t
  9561  	Fri_pageins               Tuint64_t
  9562  	Fri_wired_size            Tuint64_t
  9563  	Fri_resident_size         Tuint64_t
  9564  	Fri_phys_footprint        Tuint64_t
  9565  	Fri_proc_start_abstime    Tuint64_t
  9566  	Fri_proc_exit_abstime     Tuint64_t
  9567  	Fri_child_user_time       Tuint64_t
  9568  	Fri_child_system_time     Tuint64_t
  9569  	Fri_child_pkg_idle_wkups  Tuint64_t
  9570  	Fri_child_interrupt_wkups Tuint64_t
  9571  	Fri_child_pageins         Tuint64_t
  9572  	Fri_child_elapsed_abstime Tuint64_t
  9573  } /* resource.h:215:1 */
  9574  
  9575  type Srusage_info_v2 = struct {
  9576  	Fri_uuid                  [16]Tuint8_t
  9577  	Fri_user_time             Tuint64_t
  9578  	Fri_system_time           Tuint64_t
  9579  	Fri_pkg_idle_wkups        Tuint64_t
  9580  	Fri_interrupt_wkups       Tuint64_t
  9581  	Fri_pageins               Tuint64_t
  9582  	Fri_wired_size            Tuint64_t
  9583  	Fri_resident_size         Tuint64_t
  9584  	Fri_phys_footprint        Tuint64_t
  9585  	Fri_proc_start_abstime    Tuint64_t
  9586  	Fri_proc_exit_abstime     Tuint64_t
  9587  	Fri_child_user_time       Tuint64_t
  9588  	Fri_child_system_time     Tuint64_t
  9589  	Fri_child_pkg_idle_wkups  Tuint64_t
  9590  	Fri_child_interrupt_wkups Tuint64_t
  9591  	Fri_child_pageins         Tuint64_t
  9592  	Fri_child_elapsed_abstime Tuint64_t
  9593  	Fri_diskio_bytesread      Tuint64_t
  9594  	Fri_diskio_byteswritten   Tuint64_t
  9595  } /* resource.h:235:1 */
  9596  
  9597  type Srusage_info_v3 = struct {
  9598  	Fri_uuid                          [16]Tuint8_t
  9599  	Fri_user_time                     Tuint64_t
  9600  	Fri_system_time                   Tuint64_t
  9601  	Fri_pkg_idle_wkups                Tuint64_t
  9602  	Fri_interrupt_wkups               Tuint64_t
  9603  	Fri_pageins                       Tuint64_t
  9604  	Fri_wired_size                    Tuint64_t
  9605  	Fri_resident_size                 Tuint64_t
  9606  	Fri_phys_footprint                Tuint64_t
  9607  	Fri_proc_start_abstime            Tuint64_t
  9608  	Fri_proc_exit_abstime             Tuint64_t
  9609  	Fri_child_user_time               Tuint64_t
  9610  	Fri_child_system_time             Tuint64_t
  9611  	Fri_child_pkg_idle_wkups          Tuint64_t
  9612  	Fri_child_interrupt_wkups         Tuint64_t
  9613  	Fri_child_pageins                 Tuint64_t
  9614  	Fri_child_elapsed_abstime         Tuint64_t
  9615  	Fri_diskio_bytesread              Tuint64_t
  9616  	Fri_diskio_byteswritten           Tuint64_t
  9617  	Fri_cpu_time_qos_default          Tuint64_t
  9618  	Fri_cpu_time_qos_maintenance      Tuint64_t
  9619  	Fri_cpu_time_qos_background       Tuint64_t
  9620  	Fri_cpu_time_qos_utility          Tuint64_t
  9621  	Fri_cpu_time_qos_legacy           Tuint64_t
  9622  	Fri_cpu_time_qos_user_initiated   Tuint64_t
  9623  	Fri_cpu_time_qos_user_interactive Tuint64_t
  9624  	Fri_billed_system_time            Tuint64_t
  9625  	Fri_serviced_system_time          Tuint64_t
  9626  } /* resource.h:257:1 */
  9627  
  9628  type Srusage_info_v4 = struct {
  9629  	Fri_uuid                          [16]Tuint8_t
  9630  	Fri_user_time                     Tuint64_t
  9631  	Fri_system_time                   Tuint64_t
  9632  	Fri_pkg_idle_wkups                Tuint64_t
  9633  	Fri_interrupt_wkups               Tuint64_t
  9634  	Fri_pageins                       Tuint64_t
  9635  	Fri_wired_size                    Tuint64_t
  9636  	Fri_resident_size                 Tuint64_t
  9637  	Fri_phys_footprint                Tuint64_t
  9638  	Fri_proc_start_abstime            Tuint64_t
  9639  	Fri_proc_exit_abstime             Tuint64_t
  9640  	Fri_child_user_time               Tuint64_t
  9641  	Fri_child_system_time             Tuint64_t
  9642  	Fri_child_pkg_idle_wkups          Tuint64_t
  9643  	Fri_child_interrupt_wkups         Tuint64_t
  9644  	Fri_child_pageins                 Tuint64_t
  9645  	Fri_child_elapsed_abstime         Tuint64_t
  9646  	Fri_diskio_bytesread              Tuint64_t
  9647  	Fri_diskio_byteswritten           Tuint64_t
  9648  	Fri_cpu_time_qos_default          Tuint64_t
  9649  	Fri_cpu_time_qos_maintenance      Tuint64_t
  9650  	Fri_cpu_time_qos_background       Tuint64_t
  9651  	Fri_cpu_time_qos_utility          Tuint64_t
  9652  	Fri_cpu_time_qos_legacy           Tuint64_t
  9653  	Fri_cpu_time_qos_user_initiated   Tuint64_t
  9654  	Fri_cpu_time_qos_user_interactive Tuint64_t
  9655  	Fri_billed_system_time            Tuint64_t
  9656  	Fri_serviced_system_time          Tuint64_t
  9657  	Fri_logical_writes                Tuint64_t
  9658  	Fri_lifetime_max_phys_footprint   Tuint64_t
  9659  	Fri_instructions                  Tuint64_t
  9660  	Fri_cycles                        Tuint64_t
  9661  	Fri_billed_energy                 Tuint64_t
  9662  	Fri_serviced_energy               Tuint64_t
  9663  	Fri_interval_max_phys_footprint   Tuint64_t
  9664  	Fri_runnable_time                 Tuint64_t
  9665  } /* resource.h:288:1 */
  9666  
  9667  type Srusage_info_v5 = struct {
  9668  	Fri_uuid                          [16]Tuint8_t
  9669  	Fri_user_time                     Tuint64_t
  9670  	Fri_system_time                   Tuint64_t
  9671  	Fri_pkg_idle_wkups                Tuint64_t
  9672  	Fri_interrupt_wkups               Tuint64_t
  9673  	Fri_pageins                       Tuint64_t
  9674  	Fri_wired_size                    Tuint64_t
  9675  	Fri_resident_size                 Tuint64_t
  9676  	Fri_phys_footprint                Tuint64_t
  9677  	Fri_proc_start_abstime            Tuint64_t
  9678  	Fri_proc_exit_abstime             Tuint64_t
  9679  	Fri_child_user_time               Tuint64_t
  9680  	Fri_child_system_time             Tuint64_t
  9681  	Fri_child_pkg_idle_wkups          Tuint64_t
  9682  	Fri_child_interrupt_wkups         Tuint64_t
  9683  	Fri_child_pageins                 Tuint64_t
  9684  	Fri_child_elapsed_abstime         Tuint64_t
  9685  	Fri_diskio_bytesread              Tuint64_t
  9686  	Fri_diskio_byteswritten           Tuint64_t
  9687  	Fri_cpu_time_qos_default          Tuint64_t
  9688  	Fri_cpu_time_qos_maintenance      Tuint64_t
  9689  	Fri_cpu_time_qos_background       Tuint64_t
  9690  	Fri_cpu_time_qos_utility          Tuint64_t
  9691  	Fri_cpu_time_qos_legacy           Tuint64_t
  9692  	Fri_cpu_time_qos_user_initiated   Tuint64_t
  9693  	Fri_cpu_time_qos_user_interactive Tuint64_t
  9694  	Fri_billed_system_time            Tuint64_t
  9695  	Fri_serviced_system_time          Tuint64_t
  9696  	Fri_logical_writes                Tuint64_t
  9697  	Fri_lifetime_max_phys_footprint   Tuint64_t
  9698  	Fri_instructions                  Tuint64_t
  9699  	Fri_cycles                        Tuint64_t
  9700  	Fri_billed_energy                 Tuint64_t
  9701  	Fri_serviced_energy               Tuint64_t
  9702  	Fri_interval_max_phys_footprint   Tuint64_t
  9703  	Fri_runnable_time                 Tuint64_t
  9704  	Fri_flags                         Tuint64_t
  9705  } /* resource.h:327:1 */
  9706  
  9707  type Trusage_info_current = Srusage_info_v5 /* resource.h:367:31 */
  9708  
  9709  // ****
  9710  //
  9711  // RESOURCE LIMITS
  9712  
  9713  // Symbolic constants for resource limits; since all limits are representable
  9714  // as a type rlim_t, we are permitted to define RLIM_SAVED_* in terms of
  9715  // RLIM_INFINITY.
  9716  
  9717  // Possible values of the first parameter to getrlimit()/setrlimit(), to
  9718  // indicate for which resource the operation is being performed.
  9719  
  9720  // A structure representing a resource limit.  The address of an instance
  9721  // of this structure is the second parameter to getrlimit()/setrlimit().
  9722  type Srlimit = struct {
  9723  	Frlim_cur Trlim_t
  9724  	Frlim_max Trlim_t
  9725  } /* resource.h:411:1 */
  9726  
  9727  // proc_rlimit_control()
  9728  //
  9729  // Resource limit flavors
  9730  
  9731  // Flags for wakeups monitor control.
  9732  
  9733  // Flags for CPU usage monitor control.
  9734  
  9735  // Flags for memory footprint interval tracking.
  9736  
  9737  type Sproc_rlimit_control_wakeupmon = struct {
  9738  	Fwm_flags Tuint32_t
  9739  	Fwm_rate  Tint32_t
  9740  } /* resource.h:446:1 */
  9741  
  9742  // Deprecated:
  9743  // Structure of the information in the status word returned by wait4.
  9744  // If w_stopval==_WSTOPPED, then the second structure describes
  9745  // the information returned, else the first.
  9746  type Swait = struct{ Fw_status int32 } /* wait.h:194:1 */
  9747  
  9748  // built-in for gcc
  9749  
  9750  // built-in for gcc 3
  9751  
  9752  // DO NOT REMOVE THIS COMMENT: fixincludes needs to see:
  9753  // _GCC_SIZE_T
  9754  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9755  //
  9756  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9757  //
  9758  // This file contains Original Code and/or Modifications of Original Code
  9759  // as defined in and that are subject to the Apple Public Source License
  9760  // Version 2.0 (the 'License'). You may not use this file except in
  9761  // compliance with the License. The rights granted to you under the License
  9762  // may not be used to create, or enable the creation or redistribution of,
  9763  // unlawful or unlicensed copies of an Apple operating system, or to
  9764  // circumvent, violate, or enable the circumvention or violation of, any
  9765  // terms of an Apple operating system software license agreement.
  9766  //
  9767  // Please obtain a copy of the License at
  9768  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9769  //
  9770  // The Original Code and all software distributed under the License are
  9771  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9772  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9773  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9774  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9775  // Please see the License for the specific language governing rights and
  9776  // limitations under the License.
  9777  //
  9778  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9779  
  9780  // Copyright (c) 2012 Apple Inc. All rights reserved.
  9781  //
  9782  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9783  //
  9784  // This file contains Original Code and/or Modifications of Original Code
  9785  // as defined in and that are subject to the Apple Public Source License
  9786  // Version 2.0 (the 'License'). You may not use this file except in
  9787  // compliance with the License. The rights granted to you under the License
  9788  // may not be used to create, or enable the creation or redistribution of,
  9789  // unlawful or unlicensed copies of an Apple operating system, or to
  9790  // circumvent, violate, or enable the circumvention or violation of, any
  9791  // terms of an Apple operating system software license agreement.
  9792  //
  9793  // Please obtain a copy of the License at
  9794  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9795  //
  9796  // The Original Code and all software distributed under the License are
  9797  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9798  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9799  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9800  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9801  // Please see the License for the specific language governing rights and
  9802  // limitations under the License.
  9803  //
  9804  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9805  
  9806  // Copyright (c) 2012 Apple Inc. All rights reserved.
  9807  //
  9808  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9809  //
  9810  // This file contains Original Code and/or Modifications of Original Code
  9811  // as defined in and that are subject to the Apple Public Source License
  9812  // Version 2.0 (the 'License'). You may not use this file except in
  9813  // compliance with the License. The rights granted to you under the License
  9814  // may not be used to create, or enable the creation or redistribution of,
  9815  // unlawful or unlicensed copies of an Apple operating system, or to
  9816  // circumvent, violate, or enable the circumvention or violation of, any
  9817  // terms of an Apple operating system software license agreement.
  9818  //
  9819  // Please obtain a copy of the License at
  9820  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9821  //
  9822  // The Original Code and all software distributed under the License are
  9823  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9824  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9825  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9826  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9827  // Please see the License for the specific language governing rights and
  9828  // limitations under the License.
  9829  //
  9830  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9831  
  9832  // Copyright (c) 2012 Apple Inc. All rights reserved.
  9833  //
  9834  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9835  //
  9836  // This file contains Original Code and/or Modifications of Original Code
  9837  // as defined in and that are subject to the Apple Public Source License
  9838  // Version 2.0 (the 'License'). You may not use this file except in
  9839  // compliance with the License. The rights granted to you under the License
  9840  // may not be used to create, or enable the creation or redistribution of,
  9841  // unlawful or unlicensed copies of an Apple operating system, or to
  9842  // circumvent, violate, or enable the circumvention or violation of, any
  9843  // terms of an Apple operating system software license agreement.
  9844  //
  9845  // Please obtain a copy of the License at
  9846  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9847  //
  9848  // The Original Code and all software distributed under the License are
  9849  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9850  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9851  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9852  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9853  // Please see the License for the specific language governing rights and
  9854  // limitations under the License.
  9855  //
  9856  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9857  
  9858  // wchar_t is a built-in type in C++
  9859  
  9860  type Tdiv_t = struct {
  9861  	Fquot int32
  9862  	Frem  int32
  9863  } /* stdlib.h:86:3 */
  9864  
  9865  type Tldiv_t = struct {
  9866  	Fquot int64
  9867  	Frem  int64
  9868  } /* stdlib.h:91:3 */
  9869  
  9870  type Tlldiv_t = struct {
  9871  	Fquot int64
  9872  	Frem  int64
  9873  } /* stdlib.h:97:3 */
  9874  
  9875  // Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  9876  //
  9877  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9878  //
  9879  // This file contains Original Code and/or Modifications of Original Code
  9880  // as defined in and that are subject to the Apple Public Source License
  9881  // Version 2.0 (the 'License'). You may not use this file except in
  9882  // compliance with the License. The rights granted to you under the License
  9883  // may not be used to create, or enable the creation or redistribution of,
  9884  // unlawful or unlicensed copies of an Apple operating system, or to
  9885  // circumvent, violate, or enable the circumvention or violation of, any
  9886  // terms of an Apple operating system software license agreement.
  9887  //
  9888  // Please obtain a copy of the License at
  9889  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9890  //
  9891  // The Original Code and all software distributed under the License are
  9892  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9893  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9894  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9895  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9896  // Please see the License for the specific language governing rights and
  9897  // limitations under the License.
  9898  //
  9899  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9900  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
  9901  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9902  //
  9903  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9904  //
  9905  // This file contains Original Code and/or Modifications of Original Code
  9906  // as defined in and that are subject to the Apple Public Source License
  9907  // Version 2.0 (the 'License'). You may not use this file except in
  9908  // compliance with the License. The rights granted to you under the License
  9909  // may not be used to create, or enable the creation or redistribution of,
  9910  // unlawful or unlicensed copies of an Apple operating system, or to
  9911  // circumvent, violate, or enable the circumvention or violation of, any
  9912  // terms of an Apple operating system software license agreement.
  9913  //
  9914  // Please obtain a copy of the License at
  9915  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9916  //
  9917  // The Original Code and all software distributed under the License are
  9918  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9919  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9920  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9921  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9922  // Please see the License for the specific language governing rights and
  9923  // limitations under the License.
  9924  //
  9925  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9926  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  9927  //
  9928  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9929  //
  9930  // This file contains Original Code and/or Modifications of Original Code
  9931  // as defined in and that are subject to the Apple Public Source License
  9932  // Version 2.0 (the 'License'). You may not use this file except in
  9933  // compliance with the License. The rights granted to you under the License
  9934  // may not be used to create, or enable the creation or redistribution of,
  9935  // unlawful or unlicensed copies of an Apple operating system, or to
  9936  // circumvent, violate, or enable the circumvention or violation of, any
  9937  // terms of an Apple operating system software license agreement.
  9938  //
  9939  // Please obtain a copy of the License at
  9940  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9941  //
  9942  // The Original Code and all software distributed under the License are
  9943  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9944  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9945  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9946  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9947  // Please see the License for the specific language governing rights and
  9948  // limitations under the License.
  9949  //
  9950  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9951  
  9952  type Tdev_t = T__darwin_dev_t /* _dev_t.h:31:31 */ // device number
  9953  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
  9954  //
  9955  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9956  //
  9957  // This file contains Original Code and/or Modifications of Original Code
  9958  // as defined in and that are subject to the Apple Public Source License
  9959  // Version 2.0 (the 'License'). You may not use this file except in
  9960  // compliance with the License. The rights granted to you under the License
  9961  // may not be used to create, or enable the creation or redistribution of,
  9962  // unlawful or unlicensed copies of an Apple operating system, or to
  9963  // circumvent, violate, or enable the circumvention or violation of, any
  9964  // terms of an Apple operating system software license agreement.
  9965  //
  9966  // Please obtain a copy of the License at
  9967  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9968  //
  9969  // The Original Code and all software distributed under the License are
  9970  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9971  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9972  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9973  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9974  // Please see the License for the specific language governing rights and
  9975  // limitations under the License.
  9976  //
  9977  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  9978  // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
  9979  //
  9980  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  9981  //
  9982  // This file contains Original Code and/or Modifications of Original Code
  9983  // as defined in and that are subject to the Apple Public Source License
  9984  // Version 2.0 (the 'License'). You may not use this file except in
  9985  // compliance with the License. The rights granted to you under the License
  9986  // may not be used to create, or enable the creation or redistribution of,
  9987  // unlawful or unlicensed copies of an Apple operating system, or to
  9988  // circumvent, violate, or enable the circumvention or violation of, any
  9989  // terms of an Apple operating system software license agreement.
  9990  //
  9991  // Please obtain a copy of the License at
  9992  // http://www.opensource.apple.com/apsl/ and read it before using this file.
  9993  //
  9994  // The Original Code and all software distributed under the License are
  9995  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  9996  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  9997  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
  9998  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
  9999  // Please see the License for the specific language governing rights and
 10000  // limitations under the License.
 10001  //
 10002  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
 10003  
 10004  type Tmode_t = T__darwin_mode_t /* _mode_t.h:31:33 */
 10005  
 10006  // C11 Annex K
 10007  
 10008  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
 10009  //
 10010  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
 10011  //
 10012  // This file contains Original Code and/or Modifications of Original Code
 10013  // as defined in and that are subject to the Apple Public Source License
 10014  // Version 2.0 (the 'License'). You may not use this file except in
 10015  // compliance with the License. The rights granted to you under the License
 10016  // may not be used to create, or enable the creation or redistribution of,
 10017  // unlawful or unlicensed copies of an Apple operating system, or to
 10018  // circumvent, violate, or enable the circumvention or violation of, any
 10019  // terms of an Apple operating system software license agreement.
 10020  //
 10021  // Please obtain a copy of the License at
 10022  // http://www.opensource.apple.com/apsl/ and read it before using this file.
 10023  //
 10024  // The Original Code and all software distributed under the License are
 10025  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10026  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10027  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10028  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10029  // Please see the License for the specific language governing rights and
 10030  // limitations under the License.
 10031  //
 10032  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
 10033  // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
 10034  //
 10035  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
 10036  //
 10037  // This file contains Original Code and/or Modifications of Original Code
 10038  // as defined in and that are subject to the Apple Public Source License
 10039  // Version 2.0 (the 'License'). You may not use this file except in
 10040  // compliance with the License. The rights granted to you under the License
 10041  // may not be used to create, or enable the creation or redistribution of,
 10042  // unlawful or unlicensed copies of an Apple operating system, or to
 10043  // circumvent, violate, or enable the circumvention or violation of, any
 10044  // terms of an Apple operating system software license agreement.
 10045  //
 10046  // Please obtain a copy of the License at
 10047  // http://www.opensource.apple.com/apsl/ and read it before using this file.
 10048  //
 10049  // The Original Code and all software distributed under the License are
 10050  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10051  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10052  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10053  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10054  // Please see the License for the specific language governing rights and
 10055  // limitations under the License.
 10056  //
 10057  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
 10058  type Terrno_t = int32 /* _errno_t.h:30:32 */
 10059  
 10060  // Copyright (c) 2000, 2007, 2010 Apple Inc. All rights reserved.
 10061  //
 10062  // @APPLE_LICENSE_HEADER_START@
 10063  //
 10064  // This file contains Original Code and/or Modifications of Original Code
 10065  // as defined in and that are subject to the Apple Public Source License
 10066  // Version 2.0 (the 'License'). You may not use this file except in
 10067  // compliance with the License. Please obtain a copy of the License at
 10068  // http://www.opensource.apple.com/apsl/ and read it before using this
 10069  // file.
 10070  //
 10071  // The Original Code and all software distributed under the License are
 10072  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10073  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10074  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10075  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10076  // Please see the License for the specific language governing rights and
 10077  // limitations under the License.
 10078  //
 10079  // @APPLE_LICENSE_HEADER_END@
 10080  // -
 10081  // Copyright (c) 1990, 1993
 10082  //	The Regents of the University of California.  All rights reserved.
 10083  //
 10084  // Redistribution and use in source and binary forms, with or without
 10085  // modification, are permitted provided that the following conditions
 10086  // are met:
 10087  // 1. Redistributions of source code must retain the above copyright
 10088  //    notice, this list of conditions and the following disclaimer.
 10089  // 2. Redistributions in binary form must reproduce the above copyright
 10090  //    notice, this list of conditions and the following disclaimer in the
 10091  //    documentation and/or other materials provided with the distribution.
 10092  // 3. All advertising materials mentioning features or use of this software
 10093  //    must display the following acknowledgement:
 10094  //	This product includes software developed by the University of
 10095  //	California, Berkeley and its contributors.
 10096  // 4. Neither the name of the University nor the names of its contributors
 10097  //    may be used to endorse or promote products derived from this software
 10098  //    without specific prior written permission.
 10099  //
 10100  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 10101  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 10102  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 10103  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 10104  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 10105  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 10106  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 10107  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 10108  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 10109  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 10110  // SUCH DAMAGE.
 10111  //
 10112  //	@(#)string.h	8.1 (Berkeley) 6/2/93
 10113  
 10114  // Security checking functions.
 10115  // Copyright (c) 2017 Apple Inc. All rights reserved.
 10116  //
 10117  // @APPLE_LICENSE_HEADER_START@
 10118  //
 10119  // This file contains Original Code and/or Modifications of Original Code
 10120  // as defined in and that are subject to the Apple Public Source License
 10121  // Version 2.0 (the 'License'). You may not use this file except in
 10122  // compliance with the License. Please obtain a copy of the License at
 10123  // http://www.opensource.apple.com/apsl/ and read it before using this
 10124  // file.
 10125  //
 10126  // The Original Code and all software distributed under the License are
 10127  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10128  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10129  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10130  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10131  // Please see the License for the specific language governing rights and
 10132  // limitations under the License.
 10133  //
 10134  // @APPLE_LICENSE_HEADER_END@
 10135  
 10136  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
 10137  //
 10138  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
 10139  //
 10140  // This file contains Original Code and/or Modifications of Original Code
 10141  // as defined in and that are subject to the Apple Public Source License
 10142  // Version 2.0 (the 'License'). You may not use this file except in
 10143  // compliance with the License. The rights granted to you under the License
 10144  // may not be used to create, or enable the creation or redistribution of,
 10145  // unlawful or unlicensed copies of an Apple operating system, or to
 10146  // circumvent, violate, or enable the circumvention or violation of, any
 10147  // terms of an Apple operating system software license agreement.
 10148  //
 10149  // Please obtain a copy of the License at
 10150  // http://www.opensource.apple.com/apsl/ and read it before using this file.
 10151  //
 10152  // The Original Code and all software distributed under the License are
 10153  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10154  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10155  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10156  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10157  // Please see the License for the specific language governing rights and
 10158  // limitations under the License.
 10159  //
 10160  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
 10161  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
 10162  // Copyright (c) 1991, 1993
 10163  //	The Regents of the University of California.  All rights reserved.
 10164  //
 10165  // This code is derived from software contributed to Berkeley by
 10166  // Berkeley Software Design, Inc.
 10167  //
 10168  // Redistribution and use in source and binary forms, with or without
 10169  // modification, are permitted provided that the following conditions
 10170  // are met:
 10171  // 1. Redistributions of source code must retain the above copyright
 10172  //    notice, this list of conditions and the following disclaimer.
 10173  // 2. Redistributions in binary form must reproduce the above copyright
 10174  //    notice, this list of conditions and the following disclaimer in the
 10175  //    documentation and/or other materials provided with the distribution.
 10176  // 3. All advertising materials mentioning features or use of this software
 10177  //    must display the following acknowledgement:
 10178  //	This product includes software developed by the University of
 10179  //	California, Berkeley and its contributors.
 10180  // 4. Neither the name of the University nor the names of its contributors
 10181  //    may be used to endorse or promote products derived from this software
 10182  //    without specific prior written permission.
 10183  //
 10184  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 10185  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 10186  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 10187  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 10188  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 10189  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 10190  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 10191  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 10192  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 10193  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 10194  // SUCH DAMAGE.
 10195  //
 10196  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
 10197  
 10198  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
 10199  //
 10200  // @APPLE_LICENSE_HEADER_START@
 10201  //
 10202  // This file contains Original Code and/or Modifications of Original Code
 10203  // as defined in and that are subject to the Apple Public Source License
 10204  // Version 2.0 (the 'License'). You may not use this file except in
 10205  // compliance with the License. Please obtain a copy of the License at
 10206  // http://www.opensource.apple.com/apsl/ and read it before using this
 10207  // file.
 10208  //
 10209  // The Original Code and all software distributed under the License are
 10210  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10211  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10212  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10213  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10214  // Please see the License for the specific language governing rights and
 10215  // limitations under the License.
 10216  //
 10217  // @APPLE_LICENSE_HEADER_END@
 10218  
 10219  // Copyright (c) 2007, 2008 Apple Inc. All rights reserved.
 10220  //
 10221  // @APPLE_LICENSE_HEADER_START@
 10222  //
 10223  // This file contains Original Code and/or Modifications of Original Code
 10224  // as defined in and that are subject to the Apple Public Source License
 10225  // Version 2.0 (the 'License'). You may not use this file except in
 10226  // compliance with the License. Please obtain a copy of the License at
 10227  // http://www.opensource.apple.com/apsl/ and read it before using this
 10228  // file.
 10229  //
 10230  // The Original Code and all software distributed under the License are
 10231  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10232  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10233  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10234  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10235  // Please see the License for the specific language governing rights and
 10236  // limitations under the License.
 10237  //
 10238  // @APPLE_LICENSE_HEADER_END@
 10239  
 10240  // bcopy and bzero
 10241  
 10242  // Removed in Issue 7
 10243  
 10244  // void	bcopy(const void *src, void *dst, size_t len)
 10245  
 10246  // void	bzero(void *s, size_t n)
 10247  
 10248  // Security checking functions.
 10249  // Copyright (c) 2007,2017 Apple Inc. All rights reserved.
 10250  //
 10251  // @APPLE_LICENSE_HEADER_START@
 10252  //
 10253  // This file contains Original Code and/or Modifications of Original Code
 10254  // as defined in and that are subject to the Apple Public Source License
 10255  // Version 2.0 (the 'License'). You may not use this file except in
 10256  // compliance with the License. Please obtain a copy of the License at
 10257  // http://www.opensource.apple.com/apsl/ and read it before using this
 10258  // file.
 10259  //
 10260  // The Original Code and all software distributed under the License are
 10261  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10262  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10263  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10264  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10265  // Please see the License for the specific language governing rights and
 10266  // limitations under the License.
 10267  //
 10268  // @APPLE_LICENSE_HEADER_END@
 10269  
 10270  // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
 10271  //
 10272  // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
 10273  //
 10274  // This file contains Original Code and/or Modifications of Original Code
 10275  // as defined in and that are subject to the Apple Public Source License
 10276  // Version 2.0 (the 'License'). You may not use this file except in
 10277  // compliance with the License. The rights granted to you under the License
 10278  // may not be used to create, or enable the creation or redistribution of,
 10279  // unlawful or unlicensed copies of an Apple operating system, or to
 10280  // circumvent, violate, or enable the circumvention or violation of, any
 10281  // terms of an Apple operating system software license agreement.
 10282  //
 10283  // Please obtain a copy of the License at
 10284  // http://www.opensource.apple.com/apsl/ and read it before using this file.
 10285  //
 10286  // The Original Code and all software distributed under the License are
 10287  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10288  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10289  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10290  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10291  // Please see the License for the specific language governing rights and
 10292  // limitations under the License.
 10293  //
 10294  // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
 10295  // Copyright 1995 NeXT Computer, Inc. All rights reserved.
 10296  // Copyright (c) 1991, 1993
 10297  //	The Regents of the University of California.  All rights reserved.
 10298  //
 10299  // This code is derived from software contributed to Berkeley by
 10300  // Berkeley Software Design, Inc.
 10301  //
 10302  // Redistribution and use in source and binary forms, with or without
 10303  // modification, are permitted provided that the following conditions
 10304  // are met:
 10305  // 1. Redistributions of source code must retain the above copyright
 10306  //    notice, this list of conditions and the following disclaimer.
 10307  // 2. Redistributions in binary form must reproduce the above copyright
 10308  //    notice, this list of conditions and the following disclaimer in the
 10309  //    documentation and/or other materials provided with the distribution.
 10310  // 3. All advertising materials mentioning features or use of this software
 10311  //    must display the following acknowledgement:
 10312  //	This product includes software developed by the University of
 10313  //	California, Berkeley and its contributors.
 10314  // 4. Neither the name of the University nor the names of its contributors
 10315  //    may be used to endorse or promote products derived from this software
 10316  //    without specific prior written permission.
 10317  //
 10318  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 10319  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 10320  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 10321  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 10322  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 10323  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 10324  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 10325  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 10326  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 10327  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 10328  // SUCH DAMAGE.
 10329  //
 10330  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
 10331  
 10332  // Copyright (c) 2007-2016 by Apple Inc.. All rights reserved.
 10333  //
 10334  // @APPLE_LICENSE_HEADER_START@
 10335  //
 10336  // This file contains Original Code and/or Modifications of Original Code
 10337  // as defined in and that are subject to the Apple Public Source License
 10338  // Version 2.0 (the 'License'). You may not use this file except in
 10339  // compliance with the License. Please obtain a copy of the License at
 10340  // http://www.opensource.apple.com/apsl/ and read it before using this
 10341  // file.
 10342  //
 10343  // The Original Code and all software distributed under the License are
 10344  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10345  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10346  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10347  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10348  // Please see the License for the specific language governing rights and
 10349  // limitations under the License.
 10350  //
 10351  // @APPLE_LICENSE_HEADER_END@
 10352  
 10353  // Copyright (c) 2007, 2008 Apple Inc. All rights reserved.
 10354  //
 10355  // @APPLE_LICENSE_HEADER_START@
 10356  //
 10357  // This file contains Original Code and/or Modifications of Original Code
 10358  // as defined in and that are subject to the Apple Public Source License
 10359  // Version 2.0 (the 'License'). You may not use this file except in
 10360  // compliance with the License. Please obtain a copy of the License at
 10361  // http://www.opensource.apple.com/apsl/ and read it before using this
 10362  // file.
 10363  //
 10364  // The Original Code and all software distributed under the License are
 10365  // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
 10366  // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
 10367  // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
 10368  // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
 10369  // Please see the License for the specific language governing rights and
 10370  // limitations under the License.
 10371  //
 10372  // @APPLE_LICENSE_HEADER_END@
 10373  
 10374  // <rdar://problem/12622659>
 10375  
 10376  // memccpy, memcpy, mempcpy, memmove, memset, strcpy, strlcpy, stpcpy,
 10377  //    strncpy, stpncpy, strcat, strlcat, and strncat
 10378  
 10379  // void *memcpy(void *dst, const void *src, size_t n)
 10380  
 10381  // void *memmove(void *dst, const void *src, size_t len)
 10382  
 10383  // void *memset(void *b, int c, size_t len)
 10384  
 10385  // char *strcpy(char *dst, const char *src)
 10386  
 10387  // char *stpcpy(char *dst, const char *src)
 10388  
 10389  // char *stpncpy(char *dst, const char *src, size_t n)
 10390  
 10391  // char *strncpy(char *dst, const char *src, size_t n)
 10392  
 10393  // char *strcat(char *s1, const char *s2)
 10394  
 10395  // char *strncat(char *s1, const char *s2, size_t n)
 10396  
 10397  // Macros to make boolean values more obvious. The #ifndef is to pacify
 10398  // compiler warnings in environments where these macros are defined elsewhere.
 10399  // Unfortunately, there is no way to do the same for the typedef.
 10400  
 10401  type TBOOL = int32 /* pcre2_internal.h:67:13 */
 10402  
 10403  // 7.8.2.2
 10404  type Timaxdiv_t = struct {
 10405  	Fquot Tintmax_t
 10406  	Frem  Tintmax_t
 10407  } /* inttypes.h:242:3 */
 10408  
 10409  // Poison the following routines if -fshort-wchar is set
 10410  
 10411  //
 10412  //    No need to #undef the __*_{8,64}_LENGTH_MODIFIER__ macros;
 10413  //    in fact, you can't #undef them, because later uses of any of
 10414  //    their dependents will *not* then do the intended substitution.
 10415  //    Expansion of a #define like this one:
 10416  //
 10417  //         #define x IDENT y
 10418  //
 10419  //    uses the cpp value of IDENT at the location where x is *expanded*,
 10420  //    not where it is #defined.
 10421  
 10422  // Allow for C++ users compiling this directly.
 10423  
 10424  // The following option bits can be passed to pcre2_compile(), pcre2_match(),
 10425  // or pcre2_dfa_match(). PCRE2_NO_UTF_CHECK affects only the function to which it
 10426  // is passed. Put these bits at the most significant end of the options word so
 10427  // others can be added next to them
 10428  
 10429  // The following option bits can be passed only to pcre2_compile(). However,
 10430  // they may affect compilation, JIT compilation, and/or interpretive execution.
 10431  // The following tags indicate which:
 10432  //
 10433  // C   alters what is compiled by pcre2_compile()
 10434  // J   alters what is compiled by pcre2_jit_compile()
 10435  // M   is inspected during pcre2_match() execution
 10436  // D   is inspected during pcre2_dfa_match() execution
 10437  
 10438  // An additional compile options word is available in the compile context.
 10439  
 10440  // These are for pcre2_jit_compile().
 10441  
 10442  // These are for pcre2_match(), pcre2_dfa_match(), pcre2_jit_match(), and
 10443  // pcre2_substitute(). Some are allowed only for one of the functions, and in
 10444  // these cases it is noted below. Note that PCRE2_ANCHORED, PCRE2_ENDANCHORED and
 10445  // PCRE2_NO_UTF_CHECK can also be passed to these functions (though
 10446  // pcre2_jit_match() ignores the latter since it bypasses all sanity checks).
 10447  
 10448  // Options for pcre2_pattern_convert().
 10449  
 10450  // Newline and \R settings, for use in compile contexts. The newline values
 10451  // must be kept in step with values set in config.h and both sets must all be
 10452  // greater than zero.
 10453  
 10454  // Error codes for pcre2_compile(). Some of these are also used by
 10455  // pcre2_pattern_convert().
 10456  
 10457  // Error 159 is obsolete and should now never occur
 10458  
 10459  // "Expected" matching error codes: no match and partial match.
 10460  
 10461  // Error codes for UTF-8 validity checks
 10462  
 10463  // Error codes for UTF-16 validity checks
 10464  
 10465  // Error codes for UTF-32 validity checks
 10466  
 10467  // Miscellaneous error codes for pcre2[_dfa]_match(), substring extraction
 10468  // functions, context functions, and serializing functions. They are in numerical
 10469  // order. Originally they were in alphabetical order too, but now that PCRE2 is
 10470  // released, the numbers must not be changed.
 10471  
 10472  // Request types for pcre2_pattern_info()
 10473  
 10474  // Request types for pcre2_config().
 10475  
 10476  // Types for code units in patterns and subject strings.
 10477  
 10478  type TPCRE2_UCHAR8 = Tuint8_t   /* pcre2.h:458:18 */
 10479  type TPCRE2_UCHAR16 = Tuint16_t /* pcre2.h:459:18 */
 10480  type TPCRE2_UCHAR32 = Tuint32_t /* pcre2.h:460:18 */
 10481  
 10482  type TPCRE2_SPTR8 = uintptr  /* pcre2.h:462:29 */
 10483  type TPCRE2_SPTR16 = uintptr /* pcre2.h:463:29 */
 10484  type TPCRE2_SPTR32 = uintptr /* pcre2.h:464:29 */
 10485  
 10486  // The PCRE2_SIZE type is used for all string lengths and offsets in PCRE2,
 10487  // including pattern offsets for errors and subject offsets after a match. We
 10488  // define special values to indicate zero-terminated strings and unset offsets in
 10489  // the offset vector (ovector).
 10490  
 10491  // Generic types for opaque structures and JIT callback functions. These
 10492  // declarations are defined in a macro that is expanded for each width later.
 10493  
 10494  // The structures for passing out data via callout functions. We use structures
 10495  // so that new fields can be added on the end in future versions, without changing
 10496  // the API of the function, thereby allowing old clients to work without
 10497  // modification. Define the generic versions in a macro; the width-specific
 10498  // versions are generated from this macro below.
 10499  
 10500  // Flags for the callout_flags field. These are cleared after a callout.
 10501  
 10502  // List the generic forms of all other functions in macros, which will be
 10503  // expanded for each width below. Start with functions that give general
 10504  // information.
 10505  
 10506  // Functions for manipulating contexts.
 10507  
 10508  // Functions concerned with compiling a pattern to PCRE internal code.
 10509  
 10510  // Functions that give information about a compiled pattern.
 10511  
 10512  // Functions for running a match and inspecting the result.
 10513  
 10514  // Convenience functions for handling matched substrings.
 10515  
 10516  // Functions for serializing / deserializing compiled patterns.
 10517  
 10518  // Convenience function for match + substitute.
 10519  
 10520  // Functions for converting pattern source strings.
 10521  
 10522  // Functions for JIT processing
 10523  
 10524  // Other miscellaneous functions.
 10525  
 10526  // Define macros that generate width-specific names from generic versions. The
 10527  // three-level macro scheme is necessary to get the macros expanded when we want
 10528  // them to be. First we get the width from PCRE2_LOCAL_WIDTH, which is used for
 10529  // generating three versions of everything below. After that, PCRE2_SUFFIX will be
 10530  // re-defined to use PCRE2_CODE_UNIT_WIDTH, for use when macros such as
 10531  // pcre2_compile are called by application code.
 10532  
 10533  // Data types
 10534  
 10535  // Data blocks
 10536  
 10537  // Functions: the complete list in alphabetical order
 10538  
 10539  // Keep this old function name for backwards compatibility
 10540  
 10541  // Keep this obsolete function for backwards compatibility: it is now a noop.
 10542  
 10543  // Now generate all three sets of width-specific structures and function
 10544  // prototypes.
 10545  
 10546  type Spcre2_real_general_context_8 = struct{ Fmemctl Tpcre2_memctl } /* pcre2.h:935:1 */
 10547  
 10548  type Tpcre2_general_context_8 = Spcre2_real_general_context_8 /* pcre2.h:935:1 */
 10549  type Spcre2_real_compile_context_8 = struct {
 10550  	Fmemctl             Tpcre2_memctl
 10551  	Fstack_guard        uintptr
 10552  	Fstack_guard_data   uintptr
 10553  	Ftables             uintptr
 10554  	Fmax_pattern_length Tsize_t
 10555  	Fbsr_convention     Tuint16_t
 10556  	Fnewline_convention Tuint16_t
 10557  	Fparens_nest_limit  Tuint32_t
 10558  	Fextra_options      Tuint32_t
 10559  	F__ccgo_pad1        [4]byte
 10560  } /* pcre2.h:935:1 */
 10561  
 10562  type Tpcre2_compile_context_8 = Spcre2_real_compile_context_8 /* pcre2.h:935:1 */
 10563  type Spcre2_real_match_context_8 = struct {
 10564  	Fmemctl                  Tpcre2_memctl
 10565  	Fcallout                 uintptr
 10566  	Fcallout_data            uintptr
 10567  	Fsubstitute_callout      uintptr
 10568  	Fsubstitute_callout_data uintptr
 10569  	Foffset_limit            Tsize_t
 10570  	Fheap_limit              Tuint32_t
 10571  	Fmatch_limit             Tuint32_t
 10572  	Fdepth_limit             Tuint32_t
 10573  	F__ccgo_pad1             [4]byte
 10574  } /* pcre2.h:935:1 */
 10575  
 10576  type Tpcre2_match_context_8 = Spcre2_real_match_context_8 /* pcre2.h:935:1 */
 10577  type Spcre2_real_convert_context_8 = struct {
 10578  	Fmemctl         Tpcre2_memctl
 10579  	Fglob_separator Tuint32_t
 10580  	Fglob_escape    Tuint32_t
 10581  } /* pcre2.h:935:1 */
 10582  
 10583  type Tpcre2_convert_context_8 = Spcre2_real_convert_context_8 /* pcre2.h:935:1 */
 10584  type Spcre2_real_code_8 = struct {
 10585  	Fmemctl             Tpcre2_memctl
 10586  	Ftables             uintptr
 10587  	Fexecutable_jit     uintptr
 10588  	Fstart_bitmap       [32]Tuint8_t
 10589  	Fblocksize          Tsize_t
 10590  	Fmagic_number       Tuint32_t
 10591  	Fcompile_options    Tuint32_t
 10592  	Foverall_options    Tuint32_t
 10593  	Fextra_options      Tuint32_t
 10594  	Fflags              Tuint32_t
 10595  	Flimit_heap         Tuint32_t
 10596  	Flimit_match        Tuint32_t
 10597  	Flimit_depth        Tuint32_t
 10598  	Ffirst_codeunit     Tuint32_t
 10599  	Flast_codeunit      Tuint32_t
 10600  	Fbsr_convention     Tuint16_t
 10601  	Fnewline_convention Tuint16_t
 10602  	Fmax_lookbehind     Tuint16_t
 10603  	Fminlength          Tuint16_t
 10604  	Ftop_bracket        Tuint16_t
 10605  	Ftop_backref        Tuint16_t
 10606  	Fname_entry_size    Tuint16_t
 10607  	Fname_count         Tuint16_t
 10608  } /* pcre2.h:935:1 */
 10609  
 10610  type Tpcre2_code_8 = Spcre2_real_code_8 /* pcre2.h:935:1 */
 10611  type Spcre2_real_match_data_8 = struct {
 10612  	Fmemctl    Tpcre2_memctl
 10613  	Fcode      uintptr
 10614  	Fsubject   TPCRE2_SPTR8
 10615  	Fmark      TPCRE2_SPTR8
 10616  	Fleftchar  Tsize_t
 10617  	Frightchar Tsize_t
 10618  	Fstartchar Tsize_t
 10619  	Fmatchedby Tuint8_t
 10620  	Fflags     Tuint8_t
 10621  	Foveccount Tuint16_t
 10622  	Frc        int32
 10623  	Fovector   [131072]Tsize_t
 10624  } /* pcre2.h:935:1 */
 10625  
 10626  type Tpcre2_match_data_8 = Spcre2_real_match_data_8 /* pcre2.h:935:1 */
 10627  type Spcre2_real_jit_stack_8 = struct {
 10628  	Fmemctl Tpcre2_memctl
 10629  	Fstack  uintptr
 10630  } /* pcre2.h:935:1 */
 10631  
 10632  type Tpcre2_jit_stack_8 = Spcre2_real_jit_stack_8 /* pcre2.h:935:1 */
 10633  type Tpcre2_jit_callback_8 = uintptr              /* pcre2.h:935:1 */
 10634  type Spcre2_callout_block_8 = struct {
 10635  	Fversion               Tuint32_t
 10636  	Fcallout_number        Tuint32_t
 10637  	Fcapture_top           Tuint32_t
 10638  	Fcapture_last          Tuint32_t
 10639  	Foffset_vector         uintptr
 10640  	Fmark                  TPCRE2_SPTR8
 10641  	Fsubject               TPCRE2_SPTR8
 10642  	Fsubject_length        Tsize_t
 10643  	Fstart_match           Tsize_t
 10644  	Fcurrent_position      Tsize_t
 10645  	Fpattern_position      Tsize_t
 10646  	Fnext_item_length      Tsize_t
 10647  	Fcallout_string_offset Tsize_t
 10648  	Fcallout_string_length Tsize_t
 10649  	Fcallout_string        TPCRE2_SPTR8
 10650  	Fcallout_flags         Tuint32_t
 10651  	F__ccgo_pad1           [4]byte
 10652  } /* pcre2.h:935:1 */
 10653  
 10654  type Tpcre2_callout_block_8 = Spcre2_callout_block_8 /* pcre2.h:935:1 */
 10655  type Spcre2_callout_enumerate_block_8 = struct {
 10656  	Fversion               Tuint32_t
 10657  	F__ccgo_pad1           [4]byte
 10658  	Fpattern_position      Tsize_t
 10659  	Fnext_item_length      Tsize_t
 10660  	Fcallout_number        Tuint32_t
 10661  	F__ccgo_pad2           [4]byte
 10662  	Fcallout_string_offset Tsize_t
 10663  	Fcallout_string_length Tsize_t
 10664  	Fcallout_string        TPCRE2_SPTR8
 10665  } /* pcre2.h:935:1 */
 10666  
 10667  type Tpcre2_callout_enumerate_block_8 = Spcre2_callout_enumerate_block_8 /* pcre2.h:935:1 */
 10668  type Spcre2_substitute_callout_block_8 = struct {
 10669  	Fversion        Tuint32_t
 10670  	F__ccgo_pad1    [4]byte
 10671  	Finput          TPCRE2_SPTR8
 10672  	Foutput         TPCRE2_SPTR8
 10673  	Foutput_offsets [2]Tsize_t
 10674  	Fovector        uintptr
 10675  	Foveccount      Tuint32_t
 10676  	Fsubscount      Tuint32_t
 10677  } /* pcre2.h:935:1 */
 10678  
 10679  type Tpcre2_substitute_callout_block_8 = Spcre2_substitute_callout_block_8 /* pcre2.h:935:1 */
 10680  type Tpcre2_jit_callback_16 = uintptr                                      /* pcre2.h:939:1 */
 10681  type Spcre2_callout_block_16 = struct {
 10682  	Fversion               Tuint32_t
 10683  	Fcallout_number        Tuint32_t
 10684  	Fcapture_top           Tuint32_t
 10685  	Fcapture_last          Tuint32_t
 10686  	Foffset_vector         uintptr
 10687  	Fmark                  TPCRE2_SPTR16
 10688  	Fsubject               TPCRE2_SPTR16
 10689  	Fsubject_length        Tsize_t
 10690  	Fstart_match           Tsize_t
 10691  	Fcurrent_position      Tsize_t
 10692  	Fpattern_position      Tsize_t
 10693  	Fnext_item_length      Tsize_t
 10694  	Fcallout_string_offset Tsize_t
 10695  	Fcallout_string_length Tsize_t
 10696  	Fcallout_string        TPCRE2_SPTR16
 10697  	Fcallout_flags         Tuint32_t
 10698  	F__ccgo_pad1           [4]byte
 10699  } /* pcre2.h:939:1 */
 10700  
 10701  type Tpcre2_callout_block_16 = Spcre2_callout_block_16 /* pcre2.h:939:1 */
 10702  type Spcre2_callout_enumerate_block_16 = struct {
 10703  	Fversion               Tuint32_t
 10704  	F__ccgo_pad1           [4]byte
 10705  	Fpattern_position      Tsize_t
 10706  	Fnext_item_length      Tsize_t
 10707  	Fcallout_number        Tuint32_t
 10708  	F__ccgo_pad2           [4]byte
 10709  	Fcallout_string_offset Tsize_t
 10710  	Fcallout_string_length Tsize_t
 10711  	Fcallout_string        TPCRE2_SPTR16
 10712  } /* pcre2.h:939:1 */
 10713  
 10714  type Tpcre2_callout_enumerate_block_16 = Spcre2_callout_enumerate_block_16 /* pcre2.h:939:1 */
 10715  type Spcre2_substitute_callout_block_16 = struct {
 10716  	Fversion        Tuint32_t
 10717  	F__ccgo_pad1    [4]byte
 10718  	Finput          TPCRE2_SPTR16
 10719  	Foutput         TPCRE2_SPTR16
 10720  	Foutput_offsets [2]Tsize_t
 10721  	Fovector        uintptr
 10722  	Foveccount      Tuint32_t
 10723  	Fsubscount      Tuint32_t
 10724  } /* pcre2.h:939:1 */
 10725  
 10726  type Tpcre2_substitute_callout_block_16 = Spcre2_substitute_callout_block_16 /* pcre2.h:939:1 */
 10727  type Tpcre2_jit_callback_32 = uintptr                                        /* pcre2.h:943:1 */
 10728  type Spcre2_callout_block_32 = struct {
 10729  	Fversion               Tuint32_t
 10730  	Fcallout_number        Tuint32_t
 10731  	Fcapture_top           Tuint32_t
 10732  	Fcapture_last          Tuint32_t
 10733  	Foffset_vector         uintptr
 10734  	Fmark                  TPCRE2_SPTR32
 10735  	Fsubject               TPCRE2_SPTR32
 10736  	Fsubject_length        Tsize_t
 10737  	Fstart_match           Tsize_t
 10738  	Fcurrent_position      Tsize_t
 10739  	Fpattern_position      Tsize_t
 10740  	Fnext_item_length      Tsize_t
 10741  	Fcallout_string_offset Tsize_t
 10742  	Fcallout_string_length Tsize_t
 10743  	Fcallout_string        TPCRE2_SPTR32
 10744  	Fcallout_flags         Tuint32_t
 10745  	F__ccgo_pad1           [4]byte
 10746  } /* pcre2.h:943:1 */
 10747  
 10748  type Tpcre2_callout_block_32 = Spcre2_callout_block_32 /* pcre2.h:943:1 */
 10749  type Spcre2_callout_enumerate_block_32 = struct {
 10750  	Fversion               Tuint32_t
 10751  	F__ccgo_pad1           [4]byte
 10752  	Fpattern_position      Tsize_t
 10753  	Fnext_item_length      Tsize_t
 10754  	Fcallout_number        Tuint32_t
 10755  	F__ccgo_pad2           [4]byte
 10756  	Fcallout_string_offset Tsize_t
 10757  	Fcallout_string_length Tsize_t
 10758  	Fcallout_string        TPCRE2_SPTR32
 10759  } /* pcre2.h:943:1 */
 10760  
 10761  type Tpcre2_callout_enumerate_block_32 = Spcre2_callout_enumerate_block_32 /* pcre2.h:943:1 */
 10762  type Spcre2_substitute_callout_block_32 = struct {
 10763  	Fversion        Tuint32_t
 10764  	F__ccgo_pad1    [4]byte
 10765  	Finput          TPCRE2_SPTR32
 10766  	Foutput         TPCRE2_SPTR32
 10767  	Foutput_offsets [2]Tsize_t
 10768  	Fovector        uintptr
 10769  	Foveccount      Tuint32_t
 10770  	Fsubscount      Tuint32_t
 10771  } /* pcre2.h:943:1 */
 10772  
 10773  type Tpcre2_substitute_callout_block_32 = Spcre2_substitute_callout_block_32 /* pcre2.h:943:1 */
 10774  
 10775  // *** NOTE NOTE NOTE *** Whenever the list above is updated, the two macro
 10776  // definitions that follow must also be updated to match. There are also tables
 10777  // called "opcode_possessify" in pcre2_compile.c and "coptable" and "poptable" in
 10778  // pcre2_dfa_match.c that must be updated.
 10779  
 10780  // This macro defines textual names for all the opcodes. These are used only
 10781  // for debugging, and some of them are only partial names. The macro is referenced
 10782  // only in pcre2_printint.c, which fills out the full names in many cases (and in
 10783  // some cases doesn't actually use these names at all).
 10784  
 10785  // This macro defines the length of fixed length operations in the compiled
 10786  // regex. The lengths are used when searching for specific things, and also in the
 10787  // debugging printing of a compiled regex. We use a macro so that it can be
 10788  // defined close to the definitions of the opcodes themselves.
 10789  //
 10790  // As things have been extended, some of these are no longer fixed lenths, but are
 10791  // minima instead. For example, the length of a single-character repeat may vary
 10792  // in UTF-8 mode. The code that uses this table must know about such things.
 10793  
 10794  // A magic value for OP_RREF to indicate the "any recursion" condition.
 10795  
 10796  // ---------- Private structures that are mode-independent. ----------
 10797  
 10798  // Structure to hold data for custom memory management.
 10799  
 10800  type Spcre2_memctl = struct {
 10801  	Fmalloc      uintptr
 10802  	Ffree        uintptr
 10803  	Fmemory_data uintptr
 10804  } /* pcre2.h:935:1 */
 10805  
 10806  // *** NOTE NOTE NOTE *** Whenever the list above is updated, the two macro
 10807  // definitions that follow must also be updated to match. There are also tables
 10808  // called "opcode_possessify" in pcre2_compile.c and "coptable" and "poptable" in
 10809  // pcre2_dfa_match.c that must be updated.
 10810  
 10811  // This macro defines textual names for all the opcodes. These are used only
 10812  // for debugging, and some of them are only partial names. The macro is referenced
 10813  // only in pcre2_printint.c, which fills out the full names in many cases (and in
 10814  // some cases doesn't actually use these names at all).
 10815  
 10816  // This macro defines the length of fixed length operations in the compiled
 10817  // regex. The lengths are used when searching for specific things, and also in the
 10818  // debugging printing of a compiled regex. We use a macro so that it can be
 10819  // defined close to the definitions of the opcodes themselves.
 10820  //
 10821  // As things have been extended, some of these are no longer fixed lenths, but are
 10822  // minima instead. For example, the length of a single-character repeat may vary
 10823  // in UTF-8 mode. The code that uses this table must know about such things.
 10824  
 10825  // A magic value for OP_RREF to indicate the "any recursion" condition.
 10826  
 10827  // ---------- Private structures that are mode-independent. ----------
 10828  
 10829  // Structure to hold data for custom memory management.
 10830  
 10831  type Tpcre2_memctl = Spcre2_memctl /* pcre2_internal.h:1794:3 */
 10832  
 10833  // Structure for building a chain of open capturing subpatterns during
 10834  // compiling, so that instructions to close them can be compiled when (*ACCEPT) is
 10835  // encountered.
 10836  
 10837  type Sopen_capitem = struct {
 10838  	Fnext         uintptr
 10839  	Fnumber       Tuint16_t
 10840  	Fassert_depth Tuint16_t
 10841  	F__ccgo_pad1  [4]byte
 10842  } /* pcre2_internal.h:1800:9 */
 10843  
 10844  // Structure for building a chain of open capturing subpatterns during
 10845  // compiling, so that instructions to close them can be compiled when (*ACCEPT) is
 10846  // encountered.
 10847  
 10848  type Topen_capitem = Sopen_capitem /* pcre2_internal.h:1804:3 */
 10849  
 10850  // Layout of the UCP type table that translates property names into types and
 10851  // codes. Each entry used to point directly to a name, but to reduce the number of
 10852  // relocations in shared libraries, it now has an offset into a single string
 10853  // instead.
 10854  
 10855  type Tucp_type_table = struct {
 10856  	Fname_offset Tuint16_t
 10857  	Ftype        Tuint16_t
 10858  	Fvalue       Tuint16_t
 10859  } /* pcre2_internal.h:1815:3 */
 10860  
 10861  // Unicode character database (UCD) record format
 10862  
 10863  type Tucd_record = struct {
 10864  	Fscript            Tuint8_t
 10865  	Fchartype          Tuint8_t
 10866  	Fgbprop            Tuint8_t
 10867  	Fcaseset           Tuint8_t
 10868  	Fother_case        Tint32_t
 10869  	Fscriptx_bidiclass Tuint16_t
 10870  	Fbprops            Tuint16_t
 10871  } /* pcre2_internal.h:1827:3 */
 10872  
 10873  // UCD access macros
 10874  
 10875  // The "scriptx" and bprops fields contain offsets into vectors of 32-bit words
 10876  // that form a bitmap representing a list of scripts or boolean properties. These
 10877  // macros test or set a bit in the map by number.
 10878  
 10879  // Header for serialized pcre2 codes.
 10880  
 10881  type Spcre2_serialized_data = struct {
 10882  	Fmagic           Tuint32_t
 10883  	Fversion         Tuint32_t
 10884  	Fconfig          Tuint32_t
 10885  	Fnumber_of_codes Tint32_t
 10886  } /* pcre2_internal.h:1870:9 */
 10887  
 10888  // UCD access macros
 10889  
 10890  // The "scriptx" and bprops fields contain offsets into vectors of 32-bit words
 10891  // that form a bitmap representing a list of scripts or boolean properties. These
 10892  // macros test or set a bit in the map by number.
 10893  
 10894  // Header for serialized pcre2 codes.
 10895  
 10896  type Tpcre2_serialized_data = Spcre2_serialized_data /* pcre2_internal.h:1875:3 */
 10897  
 10898  // Mode-dependent macros and hidden and private structures are defined in a
 10899  // separate file so that pcre2test can include them at all supported widths. When
 10900  // compiling the library, PCRE2_CODE_UNIT_WIDTH will be defined, and we can
 10901  // include them at the appropriate width, after setting up suffix macros for the
 10902  // private structures.
 10903  
 10904  // ************************************************
 10905  //
 10906  //      Perl-Compatible Regular Expressions       *
 10907  //
 10908  
 10909  // PCRE is a library of functions to support regular expressions whose syntax
 10910  // and semantics are as close as possible to those of the Perl 5 language.
 10911  //
 10912  //                        Written by Philip Hazel
 10913  //      Original API code Copyright (c) 1997-2012 University of Cambridge
 10914  //           New API code Copyright (c) 2016-2018 University of Cambridge
 10915  //
 10916  // -----------------------------------------------------------------------------
 10917  // Redistribution and use in source and binary forms, with or without
 10918  // modification, are permitted provided that the following conditions are met:
 10919  //
 10920  //     * Redistributions of source code must retain the above copyright notice,
 10921  //       this list of conditions and the following disclaimer.
 10922  //
 10923  //     * Redistributions in binary form must reproduce the above copyright
 10924  //       notice, this list of conditions and the following disclaimer in the
 10925  //       documentation and/or other materials provided with the distribution.
 10926  //
 10927  //     * Neither the name of the University of Cambridge nor the names of its
 10928  //       contributors may be used to endorse or promote products derived from
 10929  //       this software without specific prior written permission.
 10930  //
 10931  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 10932  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 10933  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 10934  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 10935  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 10936  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 10937  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 10938  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 10939  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 10940  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 10941  // POSSIBILITY OF SUCH DAMAGE.
 10942  // -----------------------------------------------------------------------------
 10943  
 10944  // This module contains mode-dependent macro and structure definitions. The
 10945  // file is #included by pcre2_internal.h if PCRE2_CODE_UNIT_WIDTH is defined.
 10946  // These mode-dependent items are kept in a separate file so that they can also be
 10947  // #included multiple times for different code unit widths by pcre2test in order
 10948  // to have access to the hidden structures at all supported widths.
 10949  //
 10950  // Some of the mode-dependent macros are required at different widths for
 10951  // different parts of the pcre2test code (in particular, the included
 10952  // pcre_printint.c file). We undefine them here so that they can be re-defined for
 10953  // multiple inclusions. Not all of these are used in pcre2test, but it's easier
 10954  // just to undefine them all.
 10955  
 10956  // -------------------------- MACROS -----------------------------
 10957  
 10958  // PCRE keeps offsets in its compiled code as at least 16-bit quantities
 10959  // (always stored in big-endian order in 8-bit mode) by default. These are used,
 10960  // for example, to link from the start of a subpattern to its alternatives and its
 10961  // end. The use of 16 bits per offset limits the size of an 8-bit compiled regex
 10962  // to around 64K, which is big enough for almost everybody. However, I received a
 10963  // request for an even bigger limit. For this reason, and also to make the code
 10964  // easier to maintain, the storing and loading of offsets from the compiled code
 10965  // unit string is now handled by the macros that are defined here.
 10966  //
 10967  // The macros are controlled by the value of LINK_SIZE. This defaults to 2, but
 10968  // values of 3 or 4 are also supported.
 10969  
 10970  // ------------------- 8-bit support  ------------------
 10971  
 10972  // ------------------- 16-bit support  ------------------
 10973  
 10974  // --------------- Other mode-specific macros -----------------
 10975  
 10976  // PCRE uses some other (at least) 16-bit quantities that do not change when
 10977  // the size of offsets changes. There are used for repeat counts and for other
 10978  // things such as capturing parenthesis numbers in back references.
 10979  //
 10980  // Define the number of code units required to hold a 16-bit count/offset, and
 10981  // macros to load and store such a value. For reasons that I do not understand,
 10982  // the expression in the 8-bit GET2 macro is treated by gcc as a signed
 10983  // expression, even when a is declared as unsigned. It seems that any kind of
 10984  // arithmetic results in a signed value. Hence the cast.
 10985  
 10986  // Other macros that are different for 8-bit mode. The MAX_255 macro checks
 10987  // whether its argument, which is assumed to be one code unit, is less than 256.
 10988  // The CHMAX_255 macro does not assume one code unit. The maximum length of a MARK
 10989  // name must fit in one code unit; currently it is set to 255 or 65535. The
 10990  // TABLE_GET macro is used to access elements of tables containing exactly 256
 10991  // items. Its argument is a code unit. When code points can be greater than 255, a
 10992  // check is needed before accessing these tables.
 10993  
 10994  // ----------------- Character-handling macros -----------------
 10995  
 10996  // There is a proposed future special "UTF-21" mode, in which only the lowest
 10997  // 21 bits of a 32-bit character are interpreted as UTF, with the remaining 11
 10998  // high-order bits available to the application for other uses. In preparation for
 10999  // the future implementation of this mode, there are macros that load a data item
 11000  // and, if in this special mode, mask it to 21 bits. These macros all have names
 11001  // starting with UCHAR21. In all other modes, including the normal 32-bit
 11002  // library, the macros all have the same simple definitions. When the new mode is
 11003  // implemented, it is expected that these definitions will be varied appropriately
 11004  // using #ifdef when compiling the library that supports the special mode.
 11005  
 11006  // When UTF encoding is being used, a character is no longer just a single
 11007  // byte in 8-bit mode or a single short in 16-bit mode. The macros for character
 11008  // handling generate simple sequences when used in the basic mode, and more
 11009  // complicated ones for UTF characters. GETCHARLENTEST and other macros are not
 11010  // used when UTF is not supported. To make sure they can never even appear when
 11011  // UTF support is omitted, we don't even define them.
 11012  
 11013  // ------------------- 8-bit support  ------------------
 11014  
 11015  // The largest UTF code point that can be encoded as a single code unit.
 11016  
 11017  // Tests whether the code point needs extra characters to decode.
 11018  
 11019  // Returns with the additional number of characters if IS_MULTICHAR(c) is TRUE.
 11020  // Otherwise it has an undefined behaviour.
 11021  
 11022  // Returns TRUE, if the given value is not the first code unit of a UTF
 11023  // sequence.
 11024  
 11025  // Get the next UTF-8 character, not advancing the pointer. This is called when
 11026  // we know we are in UTF-8 mode.
 11027  
 11028  // Get the next UTF-8 character, testing for UTF-8 mode, and not advancing the
 11029  // pointer.
 11030  
 11031  // Get the next UTF-8 character, advancing the pointer. This is called when we
 11032  // know we are in UTF-8 mode.
 11033  
 11034  // Get the next character, testing for UTF-8 mode, and advancing the pointer.
 11035  // This is called when we don't know if we are in UTF-8 mode.
 11036  
 11037  // Get the next UTF-8 character, not advancing the pointer, incrementing length
 11038  // if there are extra bytes. This is called when we know we are in UTF-8 mode.
 11039  
 11040  // Get the next UTF-8 character, testing for UTF-8 mode, not advancing the
 11041  // pointer, incrementing length if there are extra bytes. This is called when we
 11042  // do not know if we are in UTF-8 mode.
 11043  
 11044  // If the pointer is not at the start of a character, move it back until
 11045  // it is. This is called only in UTF-8 mode - we don't put a test within the macro
 11046  // because almost all calls are already within a block of UTF-8 only code.
 11047  
 11048  // Same as above, just in the other direction.
 11049  
 11050  // Same as above, but it allows a fully customizable form.
 11051  
 11052  // Deposit a character into memory, returning the number of code units.
 11053  
 11054  // ------------------- 16-bit support  ------------------
 11055  
 11056  // Mode-dependent macros that have the same definition in all modes.
 11057  
 11058  // ----------------------- HIDDEN STRUCTURES -----------------------------
 11059  
 11060  // NOTE: All these structures *must* start with a pcre2_memctl structure. The
 11061  // code that uses them is simpler because it assumes this.
 11062  
 11063  // The real general context structure. At present it holds only data for custom
 11064  // memory control.
 11065  
 11066  type Tpcre2_real_general_context_8 = Spcre2_real_general_context_8 /* pcre2_intmodedep.h:561:3 */
 11067  
 11068  // The real compile context structure
 11069  
 11070  type Tpcre2_real_compile_context_8 = Spcre2_real_compile_context_8 /* pcre2_intmodedep.h:575:3 */
 11071  
 11072  // The real match context structure.
 11073  
 11074  type Tpcre2_real_match_context_8 = Spcre2_real_match_context_8 /* pcre2_intmodedep.h:593:3 */
 11075  
 11076  // The real convert context structure.
 11077  
 11078  type Tpcre2_real_convert_context_8 = Spcre2_real_convert_context_8 /* pcre2_intmodedep.h:601:3 */
 11079  
 11080  // The real compiled code structure. The type for the blocksize field is
 11081  // defined specially because it is required in pcre2_serialize_decode() when
 11082  // copying the size from possibly unaligned memory into a variable of the same
 11083  // type. Use a macro rather than a typedef to avoid compiler warnings when this
 11084  // file is included multiple times by pcre2test. LOOKBEHIND_MAX specifies the
 11085  // largest lookbehind that is supported. (OP_REVERSE in a pattern has a 16-bit
 11086  // argument in 8-bit and 16-bit modes, so we need no more than a 16-bit field
 11087  // here.)
 11088  
 11089  type Tpcre2_real_code_8 = Spcre2_real_code_8 /* pcre2_intmodedep.h:642:3 */
 11090  
 11091  // The real match data structure. Define ovector as large as it can ever
 11092  // actually be so that array bound checkers don't grumble. Memory for this
 11093  // structure is obtained by calling pcre2_match_data_create(), which sets the size
 11094  // as the offset of ovector plus a pair of elements for each capturable string, so
 11095  // the size varies from call to call. As the maximum number of capturing
 11096  // subpatterns is 65535 we must allow for 65536 strings to include the overall
 11097  // match. (See also the heapframe structure below.)
 11098  
 11099  type Tpcre2_real_match_data_8 = Spcre2_real_match_data_8 /* pcre2_intmodedep.h:665:3 */
 11100  
 11101  // ----------------------- PRIVATE STRUCTURES -----------------------------
 11102  
 11103  // These structures are not needed for pcre2test.
 11104  
 11105  // Structures for checking for mutual recursion when scanning compiled or
 11106  // parsed code.
 11107  
 11108  type Srecurse_check = struct {
 11109  	Fprev  uintptr
 11110  	Fgroup TPCRE2_SPTR8
 11111  } /* pcre2_intmodedep.h:677:9 */
 11112  
 11113  // ----------------------- PRIVATE STRUCTURES -----------------------------
 11114  
 11115  // These structures are not needed for pcre2test.
 11116  
 11117  // Structures for checking for mutual recursion when scanning compiled or
 11118  // parsed code.
 11119  
 11120  type Trecurse_check = Srecurse_check /* pcre2_intmodedep.h:680:3 */
 11121  
 11122  type Sparsed_recurse_check = struct {
 11123  	Fprev     uintptr
 11124  	Fgroupptr uintptr
 11125  } /* pcre2_intmodedep.h:682:9 */
 11126  
 11127  type Tparsed_recurse_check = Sparsed_recurse_check /* pcre2_intmodedep.h:685:3 */
 11128  
 11129  // Structure for building a cache when filling in recursion offsets.
 11130  
 11131  type Srecurse_cache = struct {
 11132  	Fgroup       TPCRE2_SPTR8
 11133  	Fgroupnumber int32
 11134  	F__ccgo_pad1 [4]byte
 11135  } /* pcre2_intmodedep.h:689:9 */
 11136  
 11137  // Structure for building a cache when filling in recursion offsets.
 11138  
 11139  type Trecurse_cache = Srecurse_cache /* pcre2_intmodedep.h:692:3 */
 11140  
 11141  // Structure for maintaining a chain of pointers to the currently incomplete
 11142  // branches, for testing for left recursion while compiling.
 11143  
 11144  type Sbranch_chain_8 = struct {
 11145  	Fouter          uintptr
 11146  	Fcurrent_branch uintptr
 11147  } /* pcre2_intmodedep.h:697:9 */
 11148  
 11149  // Structure for maintaining a chain of pointers to the currently incomplete
 11150  // branches, for testing for left recursion while compiling.
 11151  
 11152  type Tbranch_chain_8 = Sbranch_chain_8 /* pcre2_intmodedep.h:700:3 */
 11153  
 11154  // Structure for building a list of named groups during the first pass of
 11155  // compiling.
 11156  
 11157  type Snamed_group_8 = struct {
 11158  	Fname   TPCRE2_SPTR8
 11159  	Fnumber Tuint32_t
 11160  	Flength Tuint16_t
 11161  	Fisdup  Tuint16_t
 11162  } /* pcre2_intmodedep.h:705:9 */
 11163  
 11164  // Structure for building a list of named groups during the first pass of
 11165  // compiling.
 11166  
 11167  type Tnamed_group_8 = Snamed_group_8 /* pcre2_intmodedep.h:710:3 */
 11168  
 11169  // Structure for passing "static" information around between the functions
 11170  // doing the compiling, so that they are thread-safe.
 11171  
 11172  type Scompile_block_8 = struct {
 11173  	Fcx                    uintptr
 11174  	Flcc                   uintptr
 11175  	Ffcc                   uintptr
 11176  	Fcbits                 uintptr
 11177  	Fctypes                uintptr
 11178  	Fstart_workspace       TPCRE2_SPTR8
 11179  	Fstart_code            TPCRE2_SPTR8
 11180  	Fstart_pattern         TPCRE2_SPTR8
 11181  	Fend_pattern           TPCRE2_SPTR8
 11182  	Fname_table            uintptr
 11183  	Fworkspace_size        Tsize_t
 11184  	Fsmall_ref_offset      [10]Tsize_t
 11185  	Ferroroffset           Tsize_t
 11186  	Fnames_found           Tuint16_t
 11187  	Fname_entry_size       Tuint16_t
 11188  	Fparens_depth          Tuint16_t
 11189  	Fassert_depth          Tuint16_t
 11190  	Fopen_caps             uintptr
 11191  	Fnamed_groups          uintptr
 11192  	Fnamed_group_list_size Tuint32_t
 11193  	Fexternal_options      Tuint32_t
 11194  	Fexternal_flags        Tuint32_t
 11195  	Fbracount              Tuint32_t
 11196  	Flastcapture           Tuint32_t
 11197  	F__ccgo_pad1           [4]byte
 11198  	Fparsed_pattern        uintptr
 11199  	Fparsed_pattern_end    uintptr
 11200  	Fgroupinfo             uintptr
 11201  	Ftop_backref           Tuint32_t
 11202  	Fbackref_map           Tuint32_t
 11203  	Fnltype                Tuint32_t
 11204  	Fnllen                 Tuint32_t
 11205  	Fclass_range_start     Tuint32_t
 11206  	Fclass_range_end       Tuint32_t
 11207  	Fnl                    [4]TPCRE2_UCHAR8
 11208  	Freq_varyopt           Tuint32_t
 11209  	Fmax_lookbehind        int32
 11210  	Fhad_accept            TBOOL
 11211  	Fhad_pruneorskip       TBOOL
 11212  	Fhad_recurse           TBOOL
 11213  	Fdupnames              TBOOL
 11214  	F__ccgo_pad2           [4]byte
 11215  } /* pcre2_intmodedep.h:715:9 */
 11216  
 11217  // Structure for passing "static" information around between the functions
 11218  // doing the compiling, so that they are thread-safe.
 11219  
 11220  type Tcompile_block_8 = Scompile_block_8 /* pcre2_intmodedep.h:756:3 */
 11221  
 11222  // Structure for keeping the properties of the in-memory stack used
 11223  // by the JIT matcher.
 11224  
 11225  type Tpcre2_real_jit_stack_8 = Spcre2_real_jit_stack_8 /* pcre2_intmodedep.h:764:3 */
 11226  
 11227  // Structure for items in a linked list that represents an explicit recursive
 11228  // call within the pattern when running pcre2_dfa_match().
 11229  
 11230  type Sdfa_recursion_info = struct {
 11231  	Fprevrec          uintptr
 11232  	Fsubject_position TPCRE2_SPTR8
 11233  	Fgroup_num        Tuint32_t
 11234  	F__ccgo_pad1      [4]byte
 11235  } /* pcre2_intmodedep.h:769:9 */
 11236  
 11237  // Structure for items in a linked list that represents an explicit recursive
 11238  // call within the pattern when running pcre2_dfa_match().
 11239  
 11240  type Tdfa_recursion_info = Sdfa_recursion_info /* pcre2_intmodedep.h:773:3 */
 11241  
 11242  // Structure for "stack" frames that are used for remembering backtracking
 11243  // positions during matching. As these are used in a vector, with the ovector item
 11244  // being extended, the size of the structure must be a multiple of PCRE2_SIZE. The
 11245  // only way to check this at compile time is to force an error by generating an
 11246  // array with a negative size. By putting this in a typedef (which is never used),
 11247  // we don't generate any code when all is well.
 11248  
 11249  type Sheapframe = struct {
 11250  	Fecode             TPCRE2_SPTR8
 11251  	Ftemp_sptr         [2]TPCRE2_SPTR8
 11252  	Flength            Tsize_t
 11253  	Fback_frame        Tsize_t
 11254  	Ftemp_size         Tsize_t
 11255  	Frdepth            Tuint32_t
 11256  	Fgroup_frame_type  Tuint32_t
 11257  	Ftemp_32           [4]Tuint32_t
 11258  	Freturn_id         Tuint8_t
 11259  	Fop                Tuint8_t
 11260  	Foccu              [6]TPCRE2_UCHAR8
 11261  	Feptr              TPCRE2_SPTR8
 11262  	Fstart_match       TPCRE2_SPTR8
 11263  	Fmark              TPCRE2_SPTR8
 11264  	Fcurrent_recurse   Tuint32_t
 11265  	Fcapture_last      Tuint32_t
 11266  	Flast_group_offset Tsize_t
 11267  	Foffset_top        Tsize_t
 11268  	Fovector           [131072]Tsize_t
 11269  } /* pcre2_intmodedep.h:782:9 */
 11270  
 11271  // Structure for "stack" frames that are used for remembering backtracking
 11272  // positions during matching. As these are used in a vector, with the ovector item
 11273  // being extended, the size of the structure must be a multiple of PCRE2_SIZE. The
 11274  // only way to check this at compile time is to force an error by generating an
 11275  // array with a negative size. By putting this in a typedef (which is never used),
 11276  // we don't generate any code when all is well.
 11277  
 11278  type Theapframe = Sheapframe /* pcre2_intmodedep.h:833:3 */
 11279  
 11280  // This typedef is a check that the size of the heapframe structure is a
 11281  // multiple of PCRE2_SIZE. See various comments above.
 11282  
 11283  type Tcheck_heapframe_size = [1]int8 /* pcre2_intmodedep.h:838:14 */
 11284  
 11285  // Structure for computing the alignment of heapframe.
 11286  
 11287  type Sheapframe_align = struct {
 11288  	Funalign     int8
 11289  	F__ccgo_pad1 [7]byte
 11290  	Fframe       Theapframe
 11291  } /* pcre2_intmodedep.h:843:9 */
 11292  
 11293  // Structure for computing the alignment of heapframe.
 11294  
 11295  type Theapframe_align = Sheapframe_align /* pcre2_intmodedep.h:846:3 */
 11296  
 11297  // This define is the minimum alignment required for a heapframe, in bytes.
 11298  
 11299  // Structure for passing "static" information around between the functions
 11300  // doing traditional NFA matching (pcre2_match() and friends).
 11301  
 11302  type Smatch_block_8 = struct {
 11303  	Fmemctl               Tpcre2_memctl
 11304  	Fframe_vector_size    Tsize_t
 11305  	Fmatch_frames         uintptr
 11306  	Fmatch_frames_top     uintptr
 11307  	Fstack_frames         uintptr
 11308  	Fheap_limit           Tsize_t
 11309  	Fmatch_limit          Tuint32_t
 11310  	Fmatch_limit_depth    Tuint32_t
 11311  	Fmatch_call_count     Tuint32_t
 11312  	Fhitend               TBOOL
 11313  	Fhasthen              TBOOL
 11314  	Fallowemptypartial    TBOOL
 11315  	Flcc                  uintptr
 11316  	Ffcc                  uintptr
 11317  	Fctypes               uintptr
 11318  	Fstart_offset         Tsize_t
 11319  	Fend_offset_top       Tsize_t
 11320  	Fpartial              Tuint16_t
 11321  	Fbsr_convention       Tuint16_t
 11322  	Fname_count           Tuint16_t
 11323  	Fname_entry_size      Tuint16_t
 11324  	Fname_table           TPCRE2_SPTR8
 11325  	Fstart_code           TPCRE2_SPTR8
 11326  	Fstart_subject        TPCRE2_SPTR8
 11327  	Fcheck_subject        TPCRE2_SPTR8
 11328  	Fend_subject          TPCRE2_SPTR8
 11329  	Fend_match_ptr        TPCRE2_SPTR8
 11330  	Fstart_used_ptr       TPCRE2_SPTR8
 11331  	Flast_used_ptr        TPCRE2_SPTR8
 11332  	Fmark                 TPCRE2_SPTR8
 11333  	Fnomatch_mark         TPCRE2_SPTR8
 11334  	Fverb_ecode_ptr       TPCRE2_SPTR8
 11335  	Fverb_skip_ptr        TPCRE2_SPTR8
 11336  	Fverb_current_recurse Tuint32_t
 11337  	Fmoptions             Tuint32_t
 11338  	Fpoptions             Tuint32_t
 11339  	Fskip_arg_count       Tuint32_t
 11340  	Fignore_skip_arg      Tuint32_t
 11341  	Fnltype               Tuint32_t
 11342  	Fnllen                Tuint32_t
 11343  	Fnl                   [4]TPCRE2_UCHAR8
 11344  	Fcb                   uintptr
 11345  	Fcallout_data         uintptr
 11346  	Fcallout              uintptr
 11347  } /* pcre2_intmodedep.h:855:9 */
 11348  
 11349  // This define is the minimum alignment required for a heapframe, in bytes.
 11350  
 11351  // Structure for passing "static" information around between the functions
 11352  // doing traditional NFA matching (pcre2_match() and friends).
 11353  
 11354  type Tmatch_block_8 = Smatch_block_8 /* pcre2_intmodedep.h:900:3 */
 11355  
 11356  // A similar structure is used for the same purpose by the DFA matching
 11357  // functions.
 11358  
 11359  type Sdfa_match_block_8 = struct {
 11360  	Fmemctl            Tpcre2_memctl
 11361  	Fstart_code        TPCRE2_SPTR8
 11362  	Fstart_subject     TPCRE2_SPTR8
 11363  	Fend_subject       TPCRE2_SPTR8
 11364  	Fstart_used_ptr    TPCRE2_SPTR8
 11365  	Flast_used_ptr     TPCRE2_SPTR8
 11366  	Ftables            uintptr
 11367  	Fstart_offset      Tsize_t
 11368  	Fheap_limit        Tsize_t
 11369  	Fheap_used         Tsize_t
 11370  	Fmatch_limit       Tuint32_t
 11371  	Fmatch_limit_depth Tuint32_t
 11372  	Fmatch_call_count  Tuint32_t
 11373  	Fmoptions          Tuint32_t
 11374  	Fpoptions          Tuint32_t
 11375  	Fnltype            Tuint32_t
 11376  	Fnllen             Tuint32_t
 11377  	Fallowemptypartial TBOOL
 11378  	Fnl                [4]TPCRE2_UCHAR8
 11379  	Fbsr_convention    Tuint16_t
 11380  	F__ccgo_pad1       [2]byte
 11381  	Fcb                uintptr
 11382  	Fcallout_data      uintptr
 11383  	Fcallout           uintptr
 11384  	Frecursive         uintptr
 11385  } /* pcre2_intmodedep.h:905:9 */
 11386  
 11387  // A similar structure is used for the same purpose by the DFA matching
 11388  // functions.
 11389  
 11390  type Tdfa_match_block_8 = Sdfa_match_block_8 /* pcre2_intmodedep.h:930:3 */
 11391  
 11392  // This function is needed only when memmove() is not available.
 11393  
 11394  // End of pcre2_internal.h
 11395  
 11396  // ************************************************
 11397  //
 11398  //        Tables for auto-possessification        *
 11399  //
 11400  
 11401  // This table is used to check whether auto-possessification is possible
 11402  // between adjacent character-type opcodes. The left-hand (repeated) opcode is
 11403  // used to select the row, and the right-hand opcode is use to select the column.
 11404  // A value of 1 means that auto-possessification is OK. For example, the second
 11405  // value in the first row means that \D+\d can be turned into \D++\d.
 11406  //
 11407  // The Unicode property types (\P and \p) have to be present to fill out the table
 11408  // because of what their opcode values are, but the table values should always be
 11409  // zero because property types are handled separately in the code. The last four
 11410  // columns apply to items that cannot be repeated, so there is no need to have
 11411  // rows for them. Note that OP_DIGIT etc. are generated only when PCRE_UCP is
 11412  // *not* set. When it is set, \d etc. are converted into OP_(NOT_)PROP codes.
 11413  
 11414  var autoposstab = [17][21]Tuint8_t{
 11415  	// \D \d \S \s \W \w  . .+ \C \P \p \R \H \h \V \v \X \Z \z  $ $M
 11416  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \D
 11417  	{Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // \d
 11418  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // \S
 11419  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \s
 11420  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \W
 11421  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // \w
 11422  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // .
 11423  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // .+
 11424  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \C
 11425  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)}, // \P
 11426  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)}, // \p
 11427  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \R
 11428  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \H
 11429  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \h
 11430  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \V
 11431  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \v
 11432  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0)}, // \X
 11433  } /* pcre2_auto_possess.c:73:22 */
 11434  
 11435  // This table is used to check whether auto-possessification is possible
 11436  // between adjacent Unicode property opcodes (OP_PROP and OP_NOTPROP). The
 11437  // left-hand (repeated) opcode is used to select the row, and the right-hand
 11438  // opcode is used to select the column. The values are as follows:
 11439  //
 11440  //   0   Always return FALSE (never auto-possessify)
 11441  //   1   Character groups are distinct (possessify if both are OP_PROP)
 11442  //   2   Check character categories in the same group (general or particular)
 11443  //   3   TRUE if the two opcodes are not the same (PROP vs NOTPROP)
 11444  //
 11445  //   4   Check left general category vs right particular category
 11446  //   5   Check right general category vs left particular category
 11447  //
 11448  //   6   Left alphanum vs right general category
 11449  //   7   Left space vs right general category
 11450  //   8   Left word vs right general category
 11451  //
 11452  //   9   Right alphanum vs left general category
 11453  //  10   Right space vs left general category
 11454  //  11   Right word vs left general category
 11455  //
 11456  //  12   Left alphanum vs right particular category
 11457  //  13   Left space vs right particular category
 11458  //  14   Left word vs right particular category
 11459  //
 11460  //  15   Right alphanum vs left particular category
 11461  //  16   Right space vs left particular category
 11462  //  17   Right word vs left particular category
 11463  
 11464  var propposstab = [14][14]Tuint8_t{
 11465  	// ANY LAMP GC  PC  SC  SCX ALNUM SPACE PXSPACE WORD CLIST UCNC BIDICL BOOL
 11466  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},     // PT_ANY
 11467  	{Tuint8_t(0), Tuint8_t(3), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(3), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},     // PT_LAMP
 11468  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(2), Tuint8_t(4), Tuint8_t(0), Tuint8_t(0), Tuint8_t(9), Tuint8_t(10), Tuint8_t(10), Tuint8_t(11), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},  // PT_GC
 11469  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(5), Tuint8_t(2), Tuint8_t(0), Tuint8_t(0), Tuint8_t(15), Tuint8_t(16), Tuint8_t(16), Tuint8_t(17), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)}, // PT_PC
 11470  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(2), Tuint8_t(2), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},     // PT_SC
 11471  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(2), Tuint8_t(2), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},     // PT_SCX
 11472  	{Tuint8_t(0), Tuint8_t(3), Tuint8_t(6), Tuint8_t(12), Tuint8_t(0), Tuint8_t(0), Tuint8_t(3), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},    // PT_ALNUM
 11473  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(7), Tuint8_t(13), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(3), Tuint8_t(3), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},    // PT_SPACE
 11474  	{Tuint8_t(0), Tuint8_t(1), Tuint8_t(7), Tuint8_t(13), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(3), Tuint8_t(3), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},    // PT_PXSPACE
 11475  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(8), Tuint8_t(14), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(3), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},    // PT_WORD
 11476  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},     // PT_CLIST
 11477  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(3), Tuint8_t(0), Tuint8_t(0)},     // PT_UCNC
 11478  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},     // PT_BIDICL
 11479  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)},     // PT_BOOL
 11480  } /* pcre2_auto_possess.c:125:22 */
 11481  
 11482  // This table is used to check whether auto-possessification is possible
 11483  // between adjacent Unicode property opcodes (OP_PROP and OP_NOTPROP) when one
 11484  // specifies a general category and the other specifies a particular category. The
 11485  // row is selected by the general category and the column by the particular
 11486  // category. The value is 1 if the particular category is not part of the general
 11487  // category.
 11488  
 11489  var catposstab = [7][30]Tuint8_t{
 11490  	// Cc Cf Cn Co Cs Ll Lm Lo Lt Lu Mc Me Mn Nd Nl No Pc Pd Pe Pf Pi Po Ps Sc Sk Sm So Zl Zp Zs
 11491  	{Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // C
 11492  	{Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // L
 11493  	{Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // M
 11494  	{Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // N
 11495  	{Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // P
 11496  	{Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1)}, // S
 11497  	{Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0)}, // Z
 11498  } /* pcre2_auto_possess.c:150:22 */
 11499  
 11500  // This table is used when checking ALNUM, (PX)SPACE, SPACE, and WORD against
 11501  // a general or particular category. The properties in each row are those
 11502  // that apply to the character set in question. Duplication means that a little
 11503  // unnecessary work is done when checking, but this keeps things much simpler
 11504  // because they can all use the same code. For more details see the comment where
 11505  // this table is used.
 11506  //
 11507  // Note: SPACE and PXSPACE used to be different because Perl excluded VT from
 11508  // "space", but from Perl 5.18 it's included, so both categories are treated the
 11509  // same here.
 11510  
 11511  var posspropstab = [3][4]Tuint8_t{
 11512  	{ucp_L, ucp_N, ucp_N, ucp_Nl}, // ALNUM, 3rd and 4th values redundant
 11513  	{ucp_Z, ucp_Z, ucp_C, ucp_Cc}, // SPACE and PXSPACE, 2nd value redundant
 11514  	{ucp_L, ucp_N, ucp_P, ucp_Po}, // WORD
 11515  } /* pcre2_auto_possess.c:172:22 */
 11516  
 11517  // ************************************************
 11518  //
 11519  //        Check a character and a property        *
 11520  //
 11521  
 11522  // This function is called by compare_opcodes() when a property item is
 11523  // adjacent to a fixed character.
 11524  //
 11525  // Arguments:
 11526  //   c            the character
 11527  //   ptype        the property type
 11528  //   pdata        the data for the type
 11529  //   negated      TRUE if it's a negated property (\P or \p{^)
 11530  //
 11531  // Returns:       TRUE if auto-possessifying is OK
 11532  
 11533  func check_char_prop(tls *libc.TLS, c Tuint32_t, ptype uint32, pdata uint32, negated TBOOL) TBOOL { /* pcre2_auto_possess.c:199:1: */
 11534  	var ok TBOOL
 11535  	var p uintptr
 11536  	var prop uintptr = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12
 11537  
 11538  	switch ptype {
 11539  	case uint32(DPT_LAMP):
 11540  		return libc.Bool32(libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lu || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Ll || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lt) == negated)
 11541  
 11542  	case uint32(DPT_GC):
 11543  		return libc.Bool32(libc.Bool32(pdata == X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype]) == negated)
 11544  
 11545  	case uint32(DPT_PC):
 11546  		return libc.Bool32(libc.Bool32(pdata == uint32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype)) == negated)
 11547  
 11548  	case uint32(DPT_SC):
 11549  		return libc.Bool32(libc.Bool32(pdata == uint32((*Tucd_record)(unsafe.Pointer(prop)).Fscript)) == negated)
 11550  
 11551  	case uint32(DPT_SCX):
 11552  		ok = libc.Bool32(pdata == uint32((*Tucd_record)(unsafe.Pointer(prop)).Fscript) ||
 11553  			*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(pdata/uint32(32))*4))&(uint32(1)<<(pdata%uint32(32))) != Tuint32_t(0))
 11554  		return libc.Bool32(ok == negated)
 11555  
 11556  	// These are specials
 11557  
 11558  	case uint32(DPT_ALNUM):
 11559  		return libc.Bool32(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N) == negated)
 11560  
 11561  	// Perl space used to exclude VT, but from Perl 5.18 it is included, which
 11562  	//   means that Perl space and POSIX space are now identical. PCRE was changed
 11563  	//   at release 8.34.
 11564  
 11565  	case uint32(DPT_SPACE):
 11566  		fallthrough // Perl space
 11567  	case uint32(DPT_PXSPACE): // POSIX space
 11568  		switch c {
 11569  		case Tuint32_t('\011'):
 11570  			fallthrough
 11571  		case Tuint32_t('\040'):
 11572  			fallthrough
 11573  		case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 11574  			fallthrough
 11575  		case Tuint32_t(0x1680):
 11576  			fallthrough /* OGHAM SPACE MARK */
 11577  		case Tuint32_t(0x180e):
 11578  			fallthrough /* MONGOLIAN VOWEL SEPARATOR */
 11579  		case Tuint32_t(0x2000):
 11580  			fallthrough /* EN QUAD */
 11581  		case Tuint32_t(0x2001):
 11582  			fallthrough /* EM QUAD */
 11583  		case Tuint32_t(0x2002):
 11584  			fallthrough /* EN SPACE */
 11585  		case Tuint32_t(0x2003):
 11586  			fallthrough /* EM SPACE */
 11587  		case Tuint32_t(0x2004):
 11588  			fallthrough /* THREE-PER-EM SPACE */
 11589  		case Tuint32_t(0x2005):
 11590  			fallthrough /* FOUR-PER-EM SPACE */
 11591  		case Tuint32_t(0x2006):
 11592  			fallthrough /* SIX-PER-EM SPACE */
 11593  		case Tuint32_t(0x2007):
 11594  			fallthrough /* FIGURE SPACE */
 11595  		case Tuint32_t(0x2008):
 11596  			fallthrough /* PUNCTUATION SPACE */
 11597  		case Tuint32_t(0x2009):
 11598  			fallthrough /* THIN SPACE */
 11599  		case Tuint32_t(0x200A):
 11600  			fallthrough /* HAIR SPACE */
 11601  		case Tuint32_t(0x202f):
 11602  			fallthrough /* NARROW NO-BREAK SPACE */
 11603  		case Tuint32_t(0x205f):
 11604  			fallthrough /* MEDIUM MATHEMATICAL SPACE */
 11605  		case Tuint32_t(0x3000):
 11606  			fallthrough
 11607  		case Tuint32_t('\012'):
 11608  			fallthrough
 11609  		case Tuint32_t('\013'):
 11610  			fallthrough
 11611  		case Tuint32_t('\014'):
 11612  			fallthrough
 11613  		case Tuint32_t('\015'):
 11614  			fallthrough
 11615  		case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 11616  			fallthrough
 11617  		case Tuint32_t(0x2028):
 11618  			fallthrough /* LINE SEPARATOR */
 11619  		case Tuint32_t(0x2029):
 11620  			return negated
 11621  
 11622  		default:
 11623  			return libc.Bool32(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_Z) == negated)
 11624  		}
 11625  		break // Control never reaches here
 11626  
 11627  	case uint32(DPT_WORD):
 11628  		return libc.Bool32(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N || c == Tuint32_t('\137')) == negated)
 11629  
 11630  	case uint32(DPT_CLIST):
 11631  		p = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr((*Tucd_record)(unsafe.Pointer(prop)).Fcaseset)*4
 11632  		for {
 11633  			if c < *(*Tuint32_t)(unsafe.Pointer(p)) {
 11634  				return libc.BoolInt32(!(negated != 0))
 11635  			}
 11636  			if c == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&p, 4))) {
 11637  				return negated
 11638  			}
 11639  		}
 11640  		break // Control never reaches here
 11641  
 11642  	// Haven't yet thought these through.
 11643  
 11644  	case uint32(DPT_BIDICL):
 11645  		return DFALSE
 11646  
 11647  	case uint32(DPT_BOOL):
 11648  		return DFALSE
 11649  	}
 11650  
 11651  	return DFALSE
 11652  }
 11653  
 11654  // ************************************************
 11655  //
 11656  //        Base opcode of repeated opcodes         *
 11657  //
 11658  
 11659  // Returns the base opcode for repeated single character type opcodes. If the
 11660  // opcode is not a repeated character type, it returns with the original value.
 11661  //
 11662  // Arguments:  c opcode
 11663  // Returns:    base opcode for the type
 11664  
 11665  func get_repeat_base(tls *libc.TLS, c TPCRE2_UCHAR8) TPCRE2_UCHAR8 { /* pcre2_auto_possess.c:291:1: */
 11666  	if int32(c) > OP_TYPEPOSUPTO {
 11667  		return c
 11668  	}
 11669  	if int32(c) >= OP_TYPESTAR {
 11670  		return OP_TYPESTAR
 11671  	}
 11672  	if int32(c) >= OP_NOTSTARI {
 11673  		return OP_NOTSTARI
 11674  	}
 11675  	if int32(c) >= OP_NOTSTAR {
 11676  		return OP_NOTSTAR
 11677  	}
 11678  	if int32(c) >= OP_STARI {
 11679  		return OP_STARI
 11680  	}
 11681  	return OP_STAR
 11682  }
 11683  
 11684  // ************************************************
 11685  //
 11686  //        Fill the character property list        *
 11687  //
 11688  
 11689  // Checks whether the code points to an opcode that can take part in auto-
 11690  // possessification, and if so, fills a list with its properties.
 11691  //
 11692  // Arguments:
 11693  //   code        points to start of expression
 11694  //   utf         TRUE if in UTF mode
 11695  //   ucp         TRUE if in UCP mode
 11696  //   fcc         points to the case-flipping table
 11697  //   list        points to output list
 11698  //               list[0] will be filled with the opcode
 11699  //               list[1] will be non-zero if this opcode
 11700  //                 can match an empty character string
 11701  //               list[2..7] depends on the opcode
 11702  //
 11703  // Returns:      points to the start of the next opcode if *code is accepted
 11704  //               NULL if *code is not accepted
 11705  
 11706  func get_chr_property_list(tls *libc.TLS, code TPCRE2_SPTR8, utf TBOOL, ucp TBOOL, fcc uintptr, list uintptr) TPCRE2_SPTR8 { /* pcre2_auto_possess.c:325:1: */
 11707  	var c TPCRE2_UCHAR8 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 11708  	var base TPCRE2_UCHAR8
 11709  	var end TPCRE2_SPTR8
 11710  	var chr Tuint32_t
 11711  	var clist_dest uintptr
 11712  	var clist_src uintptr
 11713  
 11714  	*(*Tuint32_t)(unsafe.Pointer(list)) = Tuint32_t(c)
 11715  	*(*Tuint32_t)(unsafe.Pointer(list + 1*4)) = Tuint32_t(DFALSE)
 11716  	code++
 11717  
 11718  	if int32(c) >= OP_STAR && int32(c) <= OP_TYPEPOSUPTO {
 11719  		base = get_repeat_base(tls, c)
 11720  		c = TPCRE2_UCHAR8(int32(c) - (int32(base) - OP_STAR))
 11721  
 11722  		if int32(c) == OP_UPTO || int32(c) == OP_MINUPTO || int32(c) == OP_EXACT || int32(c) == OP_POSUPTO {
 11723  			code += TPCRE2_SPTR8(DIMM2_SIZE)
 11724  		}
 11725  
 11726  		*(*Tuint32_t)(unsafe.Pointer(list + 1*4)) = Tuint32_t(libc.Bool32(int32(c) != OP_PLUS && int32(c) != OP_MINPLUS && int32(c) != OP_EXACT && int32(c) != OP_POSPLUS))
 11727  
 11728  		switch int32(base) {
 11729  		case OP_STAR:
 11730  			*(*Tuint32_t)(unsafe.Pointer(list)) = OP_CHAR
 11731  			break
 11732  			fallthrough
 11733  
 11734  		case OP_STARI:
 11735  			*(*Tuint32_t)(unsafe.Pointer(list)) = OP_CHARI
 11736  			break
 11737  			fallthrough
 11738  
 11739  		case OP_NOTSTAR:
 11740  			*(*Tuint32_t)(unsafe.Pointer(list)) = OP_NOT
 11741  			break
 11742  			fallthrough
 11743  
 11744  		case OP_NOTSTARI:
 11745  			*(*Tuint32_t)(unsafe.Pointer(list)) = OP_NOTI
 11746  			break
 11747  			fallthrough
 11748  
 11749  		case OP_TYPESTAR:
 11750  			*(*Tuint32_t)(unsafe.Pointer(list)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))
 11751  			code++
 11752  			break
 11753  		}
 11754  		c = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(list)))
 11755  	}
 11756  
 11757  	switch int32(c) {
 11758  	case OP_NOT_DIGIT:
 11759  		fallthrough
 11760  	case OP_DIGIT:
 11761  		fallthrough
 11762  	case OP_NOT_WHITESPACE:
 11763  		fallthrough
 11764  	case OP_WHITESPACE:
 11765  		fallthrough
 11766  	case OP_NOT_WORDCHAR:
 11767  		fallthrough
 11768  	case OP_WORDCHAR:
 11769  		fallthrough
 11770  	case OP_ANY:
 11771  		fallthrough
 11772  	case OP_ALLANY:
 11773  		fallthrough
 11774  	case OP_ANYNL:
 11775  		fallthrough
 11776  	case OP_NOT_HSPACE:
 11777  		fallthrough
 11778  	case OP_HSPACE:
 11779  		fallthrough
 11780  	case OP_NOT_VSPACE:
 11781  		fallthrough
 11782  	case OP_VSPACE:
 11783  		fallthrough
 11784  	case OP_EXTUNI:
 11785  		fallthrough
 11786  	case OP_EODN:
 11787  		fallthrough
 11788  	case OP_EOD:
 11789  		fallthrough
 11790  	case OP_DOLL:
 11791  		fallthrough
 11792  	case OP_DOLLM:
 11793  		return code
 11794  
 11795  	case OP_CHAR:
 11796  		fallthrough
 11797  	case OP_NOT:
 11798  		chr = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))))
 11799  		if utf != 0 && chr >= 0xc0 {
 11800  			if chr&0x20 == Tuint32_t(0) {
 11801  				chr = chr&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))))&0x3f
 11802  			} else if chr&0x10 == Tuint32_t(0) {
 11803  				chr = chr&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f
 11804  				code += uintptr(2)
 11805  			} else if chr&0x08 == Tuint32_t(0) {
 11806  				chr = chr&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))&0x3f
 11807  				code += uintptr(3)
 11808  			} else if chr&0x04 == Tuint32_t(0) {
 11809  				chr = chr&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))&0x3f
 11810  				code += uintptr(4)
 11811  			} else {
 11812  				chr = chr&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)))&0x3f
 11813  				code += uintptr(5)
 11814  			}
 11815  		}
 11816  
 11817  		*(*Tuint32_t)(unsafe.Pointer(list + 2*4)) = chr
 11818  		*(*Tuint32_t)(unsafe.Pointer(list + 3*4)) = DNOTACHAR
 11819  		return code
 11820  
 11821  	case OP_CHARI:
 11822  		fallthrough
 11823  	case OP_NOTI:
 11824  		*(*Tuint32_t)(unsafe.Pointer(list)) = func() uint32 {
 11825  			if int32(c) == OP_CHARI {
 11826  				return OP_CHAR
 11827  			}
 11828  			return OP_NOT
 11829  		}()
 11830  		chr = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))))
 11831  		if utf != 0 && chr >= 0xc0 {
 11832  			if chr&0x20 == Tuint32_t(0) {
 11833  				chr = chr&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))))&0x3f
 11834  			} else if chr&0x10 == Tuint32_t(0) {
 11835  				chr = chr&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f
 11836  				code += uintptr(2)
 11837  			} else if chr&0x08 == Tuint32_t(0) {
 11838  				chr = chr&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))&0x3f
 11839  				code += uintptr(3)
 11840  			} else if chr&0x04 == Tuint32_t(0) {
 11841  				chr = chr&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))&0x3f
 11842  				code += uintptr(4)
 11843  			} else {
 11844  				chr = chr&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)))&0x3f
 11845  				code += uintptr(5)
 11846  			}
 11847  		}
 11848  
 11849  		*(*Tuint32_t)(unsafe.Pointer(list + 2*4)) = chr
 11850  
 11851  		if chr < Tuint32_t(128) || chr < Tuint32_t(256) && !(utf != 0) && !(ucp != 0) {
 11852  			*(*Tuint32_t)(unsafe.Pointer(list + 3*4)) = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(chr))))
 11853  		} else {
 11854  			*(*Tuint32_t)(unsafe.Pointer(list + 3*4)) = Tuint32_t(int32(chr) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(chr)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(chr)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 11855  		}
 11856  
 11857  		// The othercase might be the same value.
 11858  
 11859  		if chr == *(*Tuint32_t)(unsafe.Pointer(list + 3*4)) {
 11860  			*(*Tuint32_t)(unsafe.Pointer(list + 3*4)) = DNOTACHAR
 11861  		} else {
 11862  			*(*Tuint32_t)(unsafe.Pointer(list + 4*4)) = DNOTACHAR
 11863  		}
 11864  		return code
 11865  
 11866  	case OP_PROP:
 11867  		fallthrough
 11868  	case OP_NOTPROP:
 11869  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) != DPT_CLIST {
 11870  			*(*Tuint32_t)(unsafe.Pointer(list + 2*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))
 11871  			*(*Tuint32_t)(unsafe.Pointer(list + 3*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))
 11872  			return code + uintptr(2)
 11873  		}
 11874  
 11875  		// Convert only if we have enough space.
 11876  
 11877  		clist_src = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))*4
 11878  		clist_dest = list + uintptr(2)*4
 11879  		code += uintptr(2)
 11880  
 11881  		for __ccgo := true; __ccgo; __ccgo = *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&clist_src, 4))) != DNOTACHAR {
 11882  			if clist_dest >= list+uintptr(8)*4 {
 11883  				// Early return if there is not enough space. This should never
 11884  				//        happen, since all clists are shorter than 5 character now.
 11885  				*(*Tuint32_t)(unsafe.Pointer(list + 2*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))
 11886  				*(*Tuint32_t)(unsafe.Pointer(list + 3*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))
 11887  				return code
 11888  			}
 11889  			*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&clist_dest, 4))) = *(*Tuint32_t)(unsafe.Pointer(clist_src))
 11890  		}
 11891  
 11892  		// All characters are stored. The terminating NOTACHAR is copied from the
 11893  		//   clist itself.
 11894  
 11895  		*(*Tuint32_t)(unsafe.Pointer(list)) = func() uint32 {
 11896  			if int32(c) == OP_PROP {
 11897  				return OP_CHAR
 11898  			}
 11899  			return OP_NOT
 11900  		}()
 11901  		return code
 11902  
 11903  	case OP_NCLASS:
 11904  		fallthrough
 11905  	case OP_CLASS:
 11906  		fallthrough
 11907  	case OP_XCLASS:
 11908  		if int32(c) == OP_XCLASS {
 11909  			end = code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))))) - uintptr(1)
 11910  		} else {
 11911  			end = code + uintptr(uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 11912  		}
 11913  
 11914  		switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end))) {
 11915  		case OP_CRSTAR:
 11916  			fallthrough
 11917  		case OP_CRMINSTAR:
 11918  			fallthrough
 11919  		case OP_CRQUERY:
 11920  			fallthrough
 11921  		case OP_CRMINQUERY:
 11922  			fallthrough
 11923  		case OP_CRPOSSTAR:
 11924  			fallthrough
 11925  		case OP_CRPOSQUERY:
 11926  			*(*Tuint32_t)(unsafe.Pointer(list + 1*4)) = Tuint32_t(DTRUE)
 11927  			end++
 11928  			break
 11929  
 11930  		case OP_CRPLUS:
 11931  			fallthrough
 11932  		case OP_CRMINPLUS:
 11933  			fallthrough
 11934  		case OP_CRPOSPLUS:
 11935  			end++
 11936  			break
 11937  
 11938  		case OP_CRRANGE:
 11939  			fallthrough
 11940  		case OP_CRMINRANGE:
 11941  			fallthrough
 11942  		case OP_CRPOSRANGE:
 11943  			*(*Tuint32_t)(unsafe.Pointer(list + 1*4)) = Tuint32_t(libc.Bool32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end + 2)))) == uint32(0)))
 11944  			end += TPCRE2_SPTR8(1 + 2*DIMM2_SIZE)
 11945  			break
 11946  		}
 11947  		*(*Tuint32_t)(unsafe.Pointer(list + 2*4)) = Tuint32_t((int64(end) - int64(code)) / 1)
 11948  		return end
 11949  	}
 11950  
 11951  	return uintptr(0) // Opcode not accepted
 11952  }
 11953  
 11954  // ************************************************
 11955  //
 11956  //    Scan further character sets for match       *
 11957  //
 11958  
 11959  // Checks whether the base and the current opcode have a common character, in
 11960  // which case the base cannot be possessified.
 11961  //
 11962  // Arguments:
 11963  //   code        points to the byte code
 11964  //   utf         TRUE in UTF mode
 11965  //   ucp         TRUE in UCP mode
 11966  //   cb          compile data block
 11967  //   base_list   the data list of the base opcode
 11968  //   base_end    the end of the base opcode
 11969  //   rec_limit   points to recursion depth counter
 11970  //
 11971  // Returns:      TRUE if the auto-possessification is possible
 11972  
 11973  func compare_opcodes(tls *libc.TLS, code TPCRE2_SPTR8, utf TBOOL, ucp TBOOL, cb uintptr, base_list uintptr, base_end TPCRE2_SPTR8, rec_limit uintptr) TBOOL { /* pcre2_auto_possess.c:536:1: */
 11974  	bp := tls.Alloc(32)
 11975  	defer tls.Free(32)
 11976  
 11977  	var c TPCRE2_UCHAR8
 11978  	// var list [8]Tuint32_t at bp, 32
 11979  
 11980  	var chr_ptr uintptr
 11981  	var ochr_ptr uintptr
 11982  	var list_ptr uintptr
 11983  	var next_code TPCRE2_SPTR8
 11984  	var xclass_flags TPCRE2_SPTR8
 11985  	var class_bitset uintptr
 11986  	var set1 uintptr
 11987  	var set2 uintptr
 11988  	var set_end uintptr
 11989  	var chr Tuint32_t
 11990  	var accepted TBOOL
 11991  	var invert_bits TBOOL
 11992  	var entered_a_group TBOOL = DFALSE
 11993  
 11994  	if libc.PreDecInt32(&*(*int32)(unsafe.Pointer(rec_limit)), 1) <= 0 {
 11995  		return DFALSE
 11996  	} // Recursion has gone too deep
 11997  
 11998  	// Note: the base_list[1] contains whether the current opcode has a greedy
 11999  	// (represented by a non-zero value) quantifier. This is a different from
 12000  	// other character type lists, which store here that the character iterator
 12001  	// matches to an empty string (also represented by a non-zero value).
 12002  
 12003  	for {
 12004  		// All operations move the code pointer forward.
 12005  		//   Therefore infinite recursions are not possible.
 12006  
 12007  		c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 12008  
 12009  		// Skip over callouts
 12010  
 12011  		if int32(c) == OP_CALLOUT {
 12012  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 12013  			continue
 12014  		}
 12015  
 12016  		if int32(c) == OP_CALLOUT_STR {
 12017  			code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 6)))))
 12018  			continue
 12019  		}
 12020  
 12021  		// At the end of a branch, skip to the end of the group.
 12022  
 12023  		if int32(c) == OP_ALT {
 12024  			for __ccgo := true; __ccgo; __ccgo = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 12025  				code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 12026  			}
 12027  			c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 12028  		}
 12029  
 12030  		// Inspect the next opcode.
 12031  
 12032  		switch int32(c) {
 12033  		// We can always possessify a greedy iterator at the end of the pattern,
 12034  		//     which is reached after skipping over the final OP_KET. A non-greedy
 12035  		//     iterator must never be possessified.
 12036  
 12037  		case OP_END:
 12038  			return libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(base_list + 1*4)) != Tuint32_t(0))
 12039  
 12040  		// When an iterator is at the end of certain kinds of group we can inspect
 12041  		//     what follows the group by skipping over the closing ket. Note that this
 12042  		//     does not apply to OP_KETRMAX or OP_KETRMIN because what follows any given
 12043  		//     iteration is variable (could be another iteration or could be the next
 12044  		//     item). As these two opcodes are not listed in the next switch, they will
 12045  		//     end up as the next code to inspect, and return FALSE by virtue of being
 12046  		//     unsupported.
 12047  
 12048  		case OP_KET:
 12049  			fallthrough
 12050  		case OP_KETRPOS:
 12051  			// The non-greedy case cannot be converted to a possessive form.
 12052  
 12053  			if *(*Tuint32_t)(unsafe.Pointer(base_list + 1*4)) == Tuint32_t(0) {
 12054  				return DFALSE
 12055  			}
 12056  
 12057  			// If the bracket is capturing it might be referenced by an OP_RECURSE
 12058  			//     so its last iterator can never be possessified if the pattern contains
 12059  			//     recursions. (This could be improved by keeping a list of group numbers that
 12060  			//     are called by recursion.)
 12061  
 12062  			switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code - uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))))) {
 12063  			case OP_CBRA:
 12064  				fallthrough
 12065  			case OP_SCBRA:
 12066  				fallthrough
 12067  			case OP_CBRAPOS:
 12068  				fallthrough
 12069  			case OP_SCBRAPOS:
 12070  				if (*Tcompile_block_8)(unsafe.Pointer(cb)).Fhad_recurse != 0 {
 12071  					return DFALSE
 12072  				}
 12073  				break
 12074  
 12075  			// A script run might have to backtrack if the iterated item can match
 12076  			//       characters from more than one script. So give up unless repeating an
 12077  			//       explicit character.
 12078  
 12079  			case OP_SCRIPT_RUN:
 12080  				if *(*Tuint32_t)(unsafe.Pointer(base_list)) != OP_CHAR && *(*Tuint32_t)(unsafe.Pointer(base_list)) != OP_CHARI {
 12081  					return DFALSE
 12082  				}
 12083  				break
 12084  
 12085  			// Atomic sub-patterns and assertions can always auto-possessify their
 12086  			//       last iterator. However, if the group was entered as a result of checking
 12087  			//       a previous iterator, this is not possible.
 12088  
 12089  			case OP_ASSERT:
 12090  				fallthrough
 12091  			case OP_ASSERT_NOT:
 12092  				fallthrough
 12093  			case OP_ASSERTBACK:
 12094  				fallthrough
 12095  			case OP_ASSERTBACK_NOT:
 12096  				fallthrough
 12097  			case OP_ONCE:
 12098  				return libc.BoolInt32(!(entered_a_group != 0))
 12099  
 12100  			// Non-atomic assertions - don't possessify last iterator. This needs
 12101  			//       more thought.
 12102  
 12103  			case OP_ASSERT_NA:
 12104  				fallthrough
 12105  			case OP_ASSERTBACK_NA:
 12106  				return DFALSE
 12107  			}
 12108  
 12109  			// Skip over the bracket and inspect what comes next.
 12110  
 12111  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 12112  			continue
 12113  
 12114  		// Handle cases where the next item is a group.
 12115  
 12116  		case OP_ONCE:
 12117  			fallthrough
 12118  		case OP_BRA:
 12119  			fallthrough
 12120  		case OP_CBRA:
 12121  			next_code = code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 12122  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 12123  
 12124  			// Check each branch. We have to recurse a level for all but the last
 12125  			//     branch.
 12126  
 12127  			for int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code))) == OP_ALT {
 12128  				if !(compare_opcodes(tls, code, utf, ucp, cb, base_list, base_end, rec_limit) != 0) {
 12129  					return DFALSE
 12130  				}
 12131  				code = next_code + uintptr(1) + uintptr(DLINK_SIZE)
 12132  				next_code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code + 2)))))
 12133  			}
 12134  
 12135  			entered_a_group = DTRUE
 12136  			continue
 12137  
 12138  		case OP_BRAZERO:
 12139  			fallthrough
 12140  		case OP_BRAMINZERO:
 12141  
 12142  			next_code = code + uintptr(1)
 12143  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code))) != OP_BRA && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code))) != OP_CBRA && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code))) != OP_ONCE {
 12144  				return DFALSE
 12145  			}
 12146  
 12147  			for __ccgo1 := true; __ccgo1; __ccgo1 = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code))) == OP_ALT {
 12148  				next_code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_code + 2)))))
 12149  			}
 12150  
 12151  			// The bracket content will be checked by the OP_BRA/OP_CBRA case above.
 12152  
 12153  			next_code += TPCRE2_SPTR8(1 + DLINK_SIZE)
 12154  			if !(compare_opcodes(tls, next_code, utf, ucp, cb, base_list, base_end,
 12155  				rec_limit) != 0) {
 12156  				return DFALSE
 12157  			}
 12158  
 12159  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 12160  			continue
 12161  
 12162  		// The next opcode does not need special handling; fall through and use it
 12163  		//     to see if the base can be possessified.
 12164  
 12165  		default:
 12166  			break
 12167  		}
 12168  
 12169  		// We now have the next appropriate opcode to compare with the base. Check
 12170  		//   for a supported opcode, and load its properties.
 12171  
 12172  		code = get_chr_property_list(tls, code, utf, ucp, (*Tcompile_block_8)(unsafe.Pointer(cb)).Ffcc, bp)
 12173  		if code == uintptr(0) {
 12174  			return DFALSE
 12175  		} // Unsupported
 12176  
 12177  		// If either opcode is a small character list, set pointers for comparing
 12178  		//   characters from that list with another list, or with a property.
 12179  
 12180  		if *(*Tuint32_t)(unsafe.Pointer(base_list)) == OP_CHAR {
 12181  			chr_ptr = base_list + uintptr(2)*4
 12182  			list_ptr = bp /* &list[0] */
 12183  		} else if *(*Tuint32_t)(unsafe.Pointer(bp)) == OP_CHAR {
 12184  			chr_ptr = bp + uintptr(2)*4
 12185  			list_ptr = base_list
 12186  		} else if *(*Tuint32_t)(unsafe.Pointer(base_list)) == OP_CLASS || *(*Tuint32_t)(unsafe.Pointer(bp)) == OP_CLASS ||
 12187  
 12188  			!(utf != 0) && (*(*Tuint32_t)(unsafe.Pointer(base_list)) == OP_NCLASS || *(*Tuint32_t)(unsafe.Pointer(bp)) == OP_NCLASS) {
 12189  			if *(*Tuint32_t)(unsafe.Pointer(base_list)) == OP_CLASS || !(utf != 0) && *(*Tuint32_t)(unsafe.Pointer(base_list)) == OP_NCLASS {
 12190  				set1 = base_end - uintptr(*(*Tuint32_t)(unsafe.Pointer(base_list + 2*4)))
 12191  				list_ptr = bp /* &list[0] */
 12192  			} else {
 12193  				set1 = code - uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 2*4)))
 12194  				list_ptr = base_list
 12195  			}
 12196  
 12197  			invert_bits = DFALSE
 12198  			switch *(*Tuint32_t)(unsafe.Pointer(list_ptr)) {
 12199  			case OP_CLASS:
 12200  				fallthrough
 12201  			case OP_NCLASS:
 12202  				set2 = func() uintptr {
 12203  					if list_ptr == bp {
 12204  						return code
 12205  					}
 12206  					return base_end
 12207  				}() - uintptr(*(*Tuint32_t)(unsafe.Pointer(list_ptr + 2*4)))
 12208  				break
 12209  				fallthrough
 12210  
 12211  			case OP_XCLASS:
 12212  				xclass_flags = func() uintptr {
 12213  					if list_ptr == bp {
 12214  						return code
 12215  					}
 12216  					return base_end
 12217  				}() - uintptr(*(*Tuint32_t)(unsafe.Pointer(list_ptr + 2*4))) + uintptr(DLINK_SIZE)
 12218  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(xclass_flags)))&DXCL_HASPROP != 0 {
 12219  					return DFALSE
 12220  				}
 12221  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(xclass_flags)))&DXCL_MAP == 0 {
 12222  					// No bits are set for characters < 256.
 12223  					if *(*Tuint32_t)(unsafe.Pointer(bp + 1*4)) == Tuint32_t(0) {
 12224  						return libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(xclass_flags)))&DXCL_NOT == 0)
 12225  					}
 12226  					// Might be an empty repeat.
 12227  					continue
 12228  				}
 12229  				set2 = xclass_flags + uintptr(1)
 12230  				break
 12231  				fallthrough
 12232  
 12233  			case OP_NOT_DIGIT:
 12234  				invert_bits = DTRUE
 12235  				fallthrough
 12236  			// Fall through
 12237  			case OP_DIGIT:
 12238  				set2 = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fcbits + uintptr(Dcbit_digit)
 12239  				break
 12240  				fallthrough
 12241  
 12242  			case OP_NOT_WHITESPACE:
 12243  				invert_bits = DTRUE
 12244  				fallthrough
 12245  			// Fall through
 12246  			case OP_WHITESPACE:
 12247  				set2 = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fcbits + uintptr(Dcbit_space)
 12248  				break
 12249  				fallthrough
 12250  
 12251  			case OP_NOT_WORDCHAR:
 12252  				invert_bits = DTRUE
 12253  				fallthrough
 12254  			// Fall through
 12255  			case OP_WORDCHAR:
 12256  				set2 = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fcbits + uintptr(Dcbit_word)
 12257  				break
 12258  				fallthrough
 12259  
 12260  			default:
 12261  				return DFALSE
 12262  			}
 12263  
 12264  			// Because the bit sets are unaligned bytes, we need to perform byte
 12265  			//     comparison here.
 12266  
 12267  			set_end = set1 + uintptr(32)
 12268  			if invert_bits != 0 {
 12269  				for __ccgo2 := true; __ccgo2; __ccgo2 = set1 < set_end {
 12270  					if int32(*(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&set1, 1)))) & ^int32(*(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&set2, 1)))) != 0 {
 12271  						return DFALSE
 12272  					}
 12273  				}
 12274  			} else {
 12275  				for __ccgo3 := true; __ccgo3; __ccgo3 = set1 < set_end {
 12276  					if int32(*(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&set1, 1))))&int32(*(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&set2, 1)))) != 0 {
 12277  						return DFALSE
 12278  					}
 12279  				}
 12280  			}
 12281  
 12282  			if *(*Tuint32_t)(unsafe.Pointer(bp + 1*4)) == Tuint32_t(0) {
 12283  				return DTRUE
 12284  			}
 12285  			// Might be an empty repeat.
 12286  			continue
 12287  		} else {
 12288  			var leftop Tuint32_t
 12289  			var rightop Tuint32_t
 12290  
 12291  			leftop = *(*Tuint32_t)(unsafe.Pointer(base_list))
 12292  			rightop = *(*Tuint32_t)(unsafe.Pointer(bp))
 12293  
 12294  			accepted = DFALSE // Always set in non-unicode case.
 12295  			if leftop == OP_PROP || leftop == OP_NOTPROP {
 12296  				if rightop == OP_EOD {
 12297  					accepted = DTRUE
 12298  				} else if rightop == OP_PROP || rightop == OP_NOTPROP {
 12299  					var n int32
 12300  					var p uintptr
 12301  					var same TBOOL = libc.Bool32(leftop == rightop)
 12302  					var lisprop TBOOL = libc.Bool32(leftop == OP_PROP)
 12303  					var risprop TBOOL = libc.Bool32(rightop == OP_PROP)
 12304  					var bothprop TBOOL = libc.Bool32(lisprop != 0 && risprop != 0)
 12305  
 12306  					// There's a table that specifies how each combination is to be
 12307  					//         processed:
 12308  					//           0   Always return FALSE (never auto-possessify)
 12309  					//           1   Character groups are distinct (possessify if both are OP_PROP)
 12310  					//           2   Check character categories in the same group (general or particular)
 12311  					//           3   Return TRUE if the two opcodes are not the same
 12312  					//           ... see comments below
 12313  					//
 12314  
 12315  					n = int32(*(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&propposstab)) + uintptr(*(*Tuint32_t)(unsafe.Pointer(base_list + 2*4)))*14 + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 2*4))))))
 12316  					switch n {
 12317  					case 0:
 12318  						break
 12319  						fallthrough
 12320  					case 1:
 12321  						accepted = bothprop
 12322  						break
 12323  						fallthrough
 12324  					case 2:
 12325  						accepted = libc.Bool32(libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4)) == *(*Tuint32_t)(unsafe.Pointer(bp + 3*4))) != same)
 12326  						break
 12327  						fallthrough
 12328  					case 3:
 12329  						accepted = libc.BoolInt32(!(same != 0))
 12330  						break
 12331  						fallthrough
 12332  
 12333  					case 4: // Left general category, right particular category
 12334  						accepted = libc.Bool32(risprop != 0 && int32(*(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&catposstab)) + uintptr(*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4)))*30 + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 3*4)))))) == same)
 12335  						break
 12336  						fallthrough
 12337  
 12338  					case 5: // Right general category, left particular category
 12339  						accepted = libc.Bool32(lisprop != 0 && int32(*(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&catposstab)) + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 3*4)))*30 + uintptr(*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4)))))) == same)
 12340  						break
 12341  						fallthrough
 12342  
 12343  					// This code is logically tricky. Think hard before fiddling with it.
 12344  					//           The posspropstab table has four entries per row. Each row relates to
 12345  					//           one of PCRE's special properties such as ALNUM or SPACE or WORD.
 12346  					//           Only WORD actually needs all four entries, but using repeats for the
 12347  					//           others means they can all use the same code below.
 12348  					//
 12349  					//           The first two entries in each row are Unicode general categories, and
 12350  					//           apply always, because all the characters they include are part of the
 12351  					//           PCRE character set. The third and fourth entries are a general and a
 12352  					//           particular category, respectively, that include one or more relevant
 12353  					//           characters. One or the other is used, depending on whether the check
 12354  					//           is for a general or a particular category. However, in both cases the
 12355  					//           category contains more characters than the specials that are defined
 12356  					//           for the property being tested against. Therefore, it cannot be used
 12357  					//           in a NOTPROP case.
 12358  					//
 12359  					//           Example: the row for WORD contains ucp_L, ucp_N, ucp_P, ucp_Po.
 12360  					//           Underscore is covered by ucp_P or ucp_Po.
 12361  
 12362  					case 6:
 12363  						fallthrough // Left alphanum vs right general category
 12364  					case 7:
 12365  						fallthrough // Left space vs right general category
 12366  					case 8: // Left word vs right general category
 12367  						p = uintptr(unsafe.Pointer(&posspropstab)) + uintptr(n-6)*4
 12368  						accepted = libc.Bool32(risprop != 0 && lisprop == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(bp + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p))) && *(*Tuint32_t)(unsafe.Pointer(bp + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p + 1))) && (*(*Tuint32_t)(unsafe.Pointer(bp + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p + 2))) || !(lisprop != 0))))
 12369  						break
 12370  						fallthrough
 12371  
 12372  					case 9:
 12373  						fallthrough // Right alphanum vs left general category
 12374  					case 10:
 12375  						fallthrough // Right space vs left general category
 12376  					case 11: // Right word vs left general category
 12377  						p = uintptr(unsafe.Pointer(&posspropstab)) + uintptr(n-9)*4
 12378  						accepted = libc.Bool32(lisprop != 0 && risprop == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p))) && *(*Tuint32_t)(unsafe.Pointer(base_list + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p + 1))) && (*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p + 2))) || !(risprop != 0))))
 12379  						break
 12380  						fallthrough
 12381  
 12382  					case 12:
 12383  						fallthrough // Left alphanum vs right particular category
 12384  					case 13:
 12385  						fallthrough // Left space vs right particular category
 12386  					case 14: // Left word vs right particular category
 12387  						p = uintptr(unsafe.Pointer(&posspropstab)) + uintptr(n-12)*4
 12388  						accepted = libc.Bool32(risprop != 0 && lisprop == libc.Bool32(*(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&catposstab)) + uintptr(*(*Tuint8_t)(unsafe.Pointer(p)))*30 + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 3*4))))) != 0 && *(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&catposstab)) + uintptr(*(*Tuint8_t)(unsafe.Pointer(p + 1)))*30 + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 3*4))))) != 0 && (*(*Tuint32_t)(unsafe.Pointer(bp + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p + 3))) || !(lisprop != 0))))
 12389  						break
 12390  						fallthrough
 12391  
 12392  					case 15:
 12393  						fallthrough // Right alphanum vs left particular category
 12394  					case 16:
 12395  						fallthrough // Right space vs left particular category
 12396  					case 17: // Right word vs left particular category
 12397  						p = uintptr(unsafe.Pointer(&posspropstab)) + uintptr(n-15)*4
 12398  						accepted = libc.Bool32(lisprop != 0 && risprop == libc.Bool32(*(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&catposstab)) + uintptr(*(*Tuint8_t)(unsafe.Pointer(p)))*30 + uintptr(*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4))))) != 0 && *(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&catposstab)) + uintptr(*(*Tuint8_t)(unsafe.Pointer(p + 1)))*30 + uintptr(*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4))))) != 0 && (*(*Tuint32_t)(unsafe.Pointer(base_list + 3*4)) != Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(p + 3))) || !(risprop != 0))))
 12399  						break
 12400  					}
 12401  				}
 12402  			} else {
 12403  
 12404  				accepted = libc.Bool32(leftop >= OP_NOT_DIGIT && leftop <= OP_EXTUNI && rightop >= OP_NOT_DIGIT && rightop <= OP_DOLLM && *(*Tuint8_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&autoposstab)) + uintptr(leftop-OP_NOT_DIGIT)*21 + uintptr(rightop-OP_NOT_DIGIT))) != 0)
 12405  			}
 12406  
 12407  			if !(accepted != 0) {
 12408  				return DFALSE
 12409  			}
 12410  
 12411  			if *(*Tuint32_t)(unsafe.Pointer(bp + 1*4)) == Tuint32_t(0) {
 12412  				return DTRUE
 12413  			}
 12414  			// Might be an empty repeat.
 12415  			continue
 12416  		}
 12417  
 12418  		// Control reaches here only if one of the items is a small character list.
 12419  		//   All characters are checked against the other side.
 12420  
 12421  		for __ccgo4 := true; __ccgo4; __ccgo4 = *(*Tuint32_t)(unsafe.Pointer(chr_ptr)) != DNOTACHAR {
 12422  			chr = *(*Tuint32_t)(unsafe.Pointer(chr_ptr))
 12423  
 12424  			switch *(*Tuint32_t)(unsafe.Pointer(list_ptr)) {
 12425  			case OP_CHAR:
 12426  				ochr_ptr = list_ptr + uintptr(2)*4
 12427  				for __ccgo5 := true; __ccgo5; __ccgo5 = *(*Tuint32_t)(unsafe.Pointer(ochr_ptr)) != DNOTACHAR {
 12428  					if chr == *(*Tuint32_t)(unsafe.Pointer(ochr_ptr)) {
 12429  						return DFALSE
 12430  					}
 12431  					ochr_ptr += 4
 12432  				}
 12433  				break
 12434  
 12435  			case OP_NOT:
 12436  				ochr_ptr = list_ptr + uintptr(2)*4
 12437  				for __ccgo6 := true; __ccgo6; __ccgo6 = *(*Tuint32_t)(unsafe.Pointer(ochr_ptr)) != DNOTACHAR {
 12438  					if chr == *(*Tuint32_t)(unsafe.Pointer(ochr_ptr)) {
 12439  						break
 12440  					}
 12441  					ochr_ptr += 4
 12442  				}
 12443  				if *(*Tuint32_t)(unsafe.Pointer(ochr_ptr)) == DNOTACHAR {
 12444  					return DFALSE
 12445  				} // Not found
 12446  				break
 12447  
 12448  			// Note that OP_DIGIT etc. are generated only when PCRE2_UCP is *not*
 12449  			//       set. When it is set, \d etc. are converted into OP_(NOT_)PROP codes.
 12450  
 12451  			case OP_DIGIT:
 12452  				if chr < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(chr))))&Dctype_digit != 0 {
 12453  					return DFALSE
 12454  				}
 12455  				break
 12456  
 12457  			case OP_NOT_DIGIT:
 12458  				if chr > Tuint32_t(255) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(chr))))&Dctype_digit == 0 {
 12459  					return DFALSE
 12460  				}
 12461  				break
 12462  
 12463  			case OP_WHITESPACE:
 12464  				if chr < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(chr))))&Dctype_space != 0 {
 12465  					return DFALSE
 12466  				}
 12467  				break
 12468  
 12469  			case OP_NOT_WHITESPACE:
 12470  				if chr > Tuint32_t(255) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(chr))))&Dctype_space == 0 {
 12471  					return DFALSE
 12472  				}
 12473  				break
 12474  
 12475  			case OP_WORDCHAR:
 12476  				if chr < Tuint32_t(255) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(chr))))&Dctype_word != 0 {
 12477  					return DFALSE
 12478  				}
 12479  				break
 12480  
 12481  			case OP_NOT_WORDCHAR:
 12482  				if chr > Tuint32_t(255) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(chr))))&Dctype_word == 0 {
 12483  					return DFALSE
 12484  				}
 12485  				break
 12486  
 12487  			case OP_HSPACE:
 12488  				switch chr {
 12489  				case Tuint32_t('\011'):
 12490  					fallthrough
 12491  				case Tuint32_t('\040'):
 12492  					fallthrough
 12493  				case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 12494  					fallthrough
 12495  				case Tuint32_t(0x1680):
 12496  					fallthrough /* OGHAM SPACE MARK */
 12497  				case Tuint32_t(0x180e):
 12498  					fallthrough /* MONGOLIAN VOWEL SEPARATOR */
 12499  				case Tuint32_t(0x2000):
 12500  					fallthrough /* EN QUAD */
 12501  				case Tuint32_t(0x2001):
 12502  					fallthrough /* EM QUAD */
 12503  				case Tuint32_t(0x2002):
 12504  					fallthrough /* EN SPACE */
 12505  				case Tuint32_t(0x2003):
 12506  					fallthrough /* EM SPACE */
 12507  				case Tuint32_t(0x2004):
 12508  					fallthrough /* THREE-PER-EM SPACE */
 12509  				case Tuint32_t(0x2005):
 12510  					fallthrough /* FOUR-PER-EM SPACE */
 12511  				case Tuint32_t(0x2006):
 12512  					fallthrough /* SIX-PER-EM SPACE */
 12513  				case Tuint32_t(0x2007):
 12514  					fallthrough /* FIGURE SPACE */
 12515  				case Tuint32_t(0x2008):
 12516  					fallthrough /* PUNCTUATION SPACE */
 12517  				case Tuint32_t(0x2009):
 12518  					fallthrough /* THIN SPACE */
 12519  				case Tuint32_t(0x200A):
 12520  					fallthrough /* HAIR SPACE */
 12521  				case Tuint32_t(0x202f):
 12522  					fallthrough /* NARROW NO-BREAK SPACE */
 12523  				case Tuint32_t(0x205f):
 12524  					fallthrough /* MEDIUM MATHEMATICAL SPACE */
 12525  				case Tuint32_t(0x3000):
 12526  					return DFALSE
 12527  				default:
 12528  					break
 12529  				}
 12530  				break
 12531  
 12532  			case OP_NOT_HSPACE:
 12533  				switch chr {
 12534  				case Tuint32_t('\011'):
 12535  					fallthrough
 12536  				case Tuint32_t('\040'):
 12537  					fallthrough
 12538  				case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 12539  					fallthrough
 12540  				case Tuint32_t(0x1680):
 12541  					fallthrough /* OGHAM SPACE MARK */
 12542  				case Tuint32_t(0x180e):
 12543  					fallthrough /* MONGOLIAN VOWEL SEPARATOR */
 12544  				case Tuint32_t(0x2000):
 12545  					fallthrough /* EN QUAD */
 12546  				case Tuint32_t(0x2001):
 12547  					fallthrough /* EM QUAD */
 12548  				case Tuint32_t(0x2002):
 12549  					fallthrough /* EN SPACE */
 12550  				case Tuint32_t(0x2003):
 12551  					fallthrough /* EM SPACE */
 12552  				case Tuint32_t(0x2004):
 12553  					fallthrough /* THREE-PER-EM SPACE */
 12554  				case Tuint32_t(0x2005):
 12555  					fallthrough /* FOUR-PER-EM SPACE */
 12556  				case Tuint32_t(0x2006):
 12557  					fallthrough /* SIX-PER-EM SPACE */
 12558  				case Tuint32_t(0x2007):
 12559  					fallthrough /* FIGURE SPACE */
 12560  				case Tuint32_t(0x2008):
 12561  					fallthrough /* PUNCTUATION SPACE */
 12562  				case Tuint32_t(0x2009):
 12563  					fallthrough /* THIN SPACE */
 12564  				case Tuint32_t(0x200A):
 12565  					fallthrough /* HAIR SPACE */
 12566  				case Tuint32_t(0x202f):
 12567  					fallthrough /* NARROW NO-BREAK SPACE */
 12568  				case Tuint32_t(0x205f):
 12569  					fallthrough /* MEDIUM MATHEMATICAL SPACE */
 12570  				case Tuint32_t(0x3000):
 12571  					break
 12572  				default:
 12573  					return DFALSE
 12574  				}
 12575  				break
 12576  
 12577  			case OP_ANYNL:
 12578  				fallthrough
 12579  			case OP_VSPACE:
 12580  				switch chr {
 12581  				case Tuint32_t('\012'):
 12582  					fallthrough
 12583  				case Tuint32_t('\013'):
 12584  					fallthrough
 12585  				case Tuint32_t('\014'):
 12586  					fallthrough
 12587  				case Tuint32_t('\015'):
 12588  					fallthrough
 12589  				case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 12590  					fallthrough
 12591  				case Tuint32_t(0x2028):
 12592  					fallthrough /* LINE SEPARATOR */
 12593  				case Tuint32_t(0x2029):
 12594  					return DFALSE
 12595  				default:
 12596  					break
 12597  				}
 12598  				break
 12599  
 12600  			case OP_NOT_VSPACE:
 12601  				switch chr {
 12602  				case Tuint32_t('\012'):
 12603  					fallthrough
 12604  				case Tuint32_t('\013'):
 12605  					fallthrough
 12606  				case Tuint32_t('\014'):
 12607  					fallthrough
 12608  				case Tuint32_t('\015'):
 12609  					fallthrough
 12610  				case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 12611  					fallthrough
 12612  				case Tuint32_t(0x2028):
 12613  					fallthrough /* LINE SEPARATOR */
 12614  				case Tuint32_t(0x2029):
 12615  					break
 12616  				default:
 12617  					return DFALSE
 12618  				}
 12619  				break
 12620  
 12621  			case OP_DOLL:
 12622  				fallthrough
 12623  			case OP_EODN:
 12624  				switch chr {
 12625  				case Tuint32_t('\015'):
 12626  					fallthrough
 12627  				case Tuint32_t('\012'):
 12628  					fallthrough
 12629  				case Tuint32_t('\013'):
 12630  					fallthrough
 12631  				case Tuint32_t('\014'):
 12632  					fallthrough
 12633  				case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 12634  					fallthrough
 12635  				case Tuint32_t(0x2028):
 12636  					fallthrough
 12637  				case Tuint32_t(0x2029):
 12638  					return DFALSE
 12639  				}
 12640  				break
 12641  
 12642  			case OP_EOD: // Can always possessify before \z
 12643  				break
 12644  
 12645  			case OP_PROP:
 12646  				fallthrough
 12647  			case OP_NOTPROP:
 12648  				if !(check_char_prop(tls, chr, *(*Tuint32_t)(unsafe.Pointer(list_ptr + 2*4)), *(*Tuint32_t)(unsafe.Pointer(list_ptr + 3*4)),
 12649  					libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(list_ptr)) == OP_NOTPROP)) != 0) {
 12650  					return DFALSE
 12651  				}
 12652  				break
 12653  
 12654  			case OP_NCLASS:
 12655  				if chr > Tuint32_t(255) {
 12656  					return DFALSE
 12657  				}
 12658  				fallthrough
 12659  			// Fall through
 12660  
 12661  			case OP_CLASS:
 12662  				if chr > Tuint32_t(255) {
 12663  					break
 12664  				}
 12665  				class_bitset = func() uintptr {
 12666  					if list_ptr == bp {
 12667  						return code
 12668  					}
 12669  					return base_end
 12670  				}() - uintptr(*(*Tuint32_t)(unsafe.Pointer(list_ptr + 2*4)))
 12671  				if uint32(*(*Tuint8_t)(unsafe.Pointer(class_bitset + uintptr(chr>>3))))&(uint32(1)<<(chr&Tuint32_t(7))) != uint32(0) {
 12672  					return DFALSE
 12673  				}
 12674  				break
 12675  
 12676  			case OP_XCLASS:
 12677  				if X_pcre2_xclass_8(tls, chr, func() uintptr {
 12678  					if list_ptr == bp {
 12679  						return code
 12680  					}
 12681  					return base_end
 12682  				}()-uintptr(*(*Tuint32_t)(unsafe.Pointer(list_ptr + 2*4)))+uintptr(DLINK_SIZE), utf) != 0 {
 12683  					return DFALSE
 12684  				}
 12685  				break
 12686  
 12687  			default:
 12688  				return DFALSE
 12689  			}
 12690  
 12691  			chr_ptr += 4
 12692  		}
 12693  
 12694  		// At least one character must be matched from this opcode.
 12695  
 12696  		if *(*Tuint32_t)(unsafe.Pointer(bp + 1*4)) == Tuint32_t(0) {
 12697  			return DTRUE
 12698  		}
 12699  	}
 12700  	return TBOOL(0)
 12701  
 12702  	// Control never reaches here. There used to be a fail-save return FALSE; here,
 12703  	// but some compilers complain about an unreachable statement.
 12704  }
 12705  
 12706  // ************************************************
 12707  //
 12708  //    Scan compiled regex for auto-possession     *
 12709  //
 12710  
 12711  // Replaces single character iterations with their possessive alternatives
 12712  // if appropriate. This function modifies the compiled opcode! Hitting a
 12713  // non-existent opcode may indicate a bug in PCRE2, but it can also be caused if a
 12714  // bad UTF string was compiled with PCRE2_NO_UTF_CHECK. The rec_limit catches
 12715  // overly complicated or large patterns. In these cases, the check just stops,
 12716  // leaving the remainder of the pattern unpossessified.
 12717  //
 12718  // Arguments:
 12719  //   code        points to start of the byte code
 12720  //   cb          compile data block
 12721  //
 12722  // Returns:      0 for success
 12723  //               -1 if a non-existant opcode is encountered
 12724  
 12725  func X_pcre2_auto_possessify_8(tls *libc.TLS, code uintptr, cb uintptr) int32 { /* pcre2_auto_possess.c:1132:1: */
 12726  	bp := tls.Alloc(36)
 12727  	defer tls.Free(36)
 12728  
 12729  	var c TPCRE2_UCHAR8
 12730  	var end TPCRE2_SPTR8
 12731  	var repeat_opcode uintptr
 12732  	// var list [8]Tuint32_t at bp, 32
 12733  
 12734  	*(*int32)(unsafe.Pointer(bp + 32 /* rec_limit */)) = 1000 // Was 10,000 but clang+ASAN uses a lot of stack.
 12735  	var utf TBOOL = libc.Bool32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_UTF != Tuint32_t(0))
 12736  	var ucp TBOOL = libc.Bool32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_UCP != Tuint32_t(0))
 12737  
 12738  	for {
 12739  		c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 12740  
 12741  		if int32(c) >= OP_TABLE_LENGTH {
 12742  			return -1
 12743  		} // Something gone wrong
 12744  
 12745  		if int32(c) >= OP_STAR && int32(c) <= OP_TYPEPOSUPTO {
 12746  			c = TPCRE2_UCHAR8(int32(c) - (int32(get_repeat_base(tls, c)) - OP_STAR))
 12747  			if int32(c) <= OP_MINUPTO {
 12748  				end = get_chr_property_list(tls, code, utf, ucp, (*Tcompile_block_8)(unsafe.Pointer(cb)).Ffcc, bp)
 12749  			} else {
 12750  				end = uintptr(0)
 12751  			}
 12752  			*(*Tuint32_t)(unsafe.Pointer(bp + 1*4)) = Tuint32_t(libc.Bool32(int32(c) == OP_STAR || int32(c) == OP_PLUS || int32(c) == OP_QUERY || int32(c) == OP_UPTO))
 12753  
 12754  			if end != uintptr(0) && compare_opcodes(tls, end, utf, ucp, cb, bp, end,
 12755  				bp+32) != 0 {
 12756  				switch int32(c) {
 12757  				case OP_STAR:
 12758  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSSTAR - OP_STAR)
 12759  					break
 12760  					fallthrough
 12761  
 12762  				case OP_MINSTAR:
 12763  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSSTAR - OP_MINSTAR)
 12764  					break
 12765  					fallthrough
 12766  
 12767  				case OP_PLUS:
 12768  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSPLUS - OP_PLUS)
 12769  					break
 12770  					fallthrough
 12771  
 12772  				case OP_MINPLUS:
 12773  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSPLUS - OP_MINPLUS)
 12774  					break
 12775  					fallthrough
 12776  
 12777  				case OP_QUERY:
 12778  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSQUERY - OP_QUERY)
 12779  					break
 12780  					fallthrough
 12781  
 12782  				case OP_MINQUERY:
 12783  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSQUERY - OP_MINQUERY)
 12784  					break
 12785  					fallthrough
 12786  
 12787  				case OP_UPTO:
 12788  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSUPTO - OP_UPTO)
 12789  					break
 12790  					fallthrough
 12791  
 12792  				case OP_MINUPTO:
 12793  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) += TPCRE2_UCHAR8(OP_POSUPTO - OP_MINUPTO)
 12794  					break
 12795  				}
 12796  			}
 12797  			c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 12798  		} else if int32(c) == OP_CLASS || int32(c) == OP_NCLASS || int32(c) == OP_XCLASS {
 12799  			if int32(c) == OP_XCLASS {
 12800  				repeat_opcode = code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 12801  			} else {
 12802  				repeat_opcode = code + uintptr(1) + uintptr(uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 12803  			}
 12804  
 12805  			c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(repeat_opcode))
 12806  			if int32(c) >= OP_CRSTAR && int32(c) <= OP_CRMINRANGE {
 12807  				// The return from get_chr_property_list() will never be NULL when
 12808  				// code (aka c) is one of the three class opcodes. However, gcc with
 12809  				//       -fanalyzer notes that a NULL return is possible, and grumbles. Hence we
 12810  				//       put in a check.
 12811  
 12812  				end = get_chr_property_list(tls, code, utf, ucp, (*Tcompile_block_8)(unsafe.Pointer(cb)).Ffcc, bp)
 12813  				*(*Tuint32_t)(unsafe.Pointer(bp + 1*4)) = Tuint32_t(libc.Bool32(int32(c)&1 == 0))
 12814  
 12815  				if end != uintptr(0) && compare_opcodes(tls, end, utf, ucp, cb, bp, end, bp+32) != 0 {
 12816  					switch int32(c) {
 12817  					case OP_CRSTAR:
 12818  						fallthrough
 12819  					case OP_CRMINSTAR:
 12820  						*(*TPCRE2_UCHAR8)(unsafe.Pointer(repeat_opcode)) = OP_CRPOSSTAR
 12821  						break
 12822  						fallthrough
 12823  
 12824  					case OP_CRPLUS:
 12825  						fallthrough
 12826  					case OP_CRMINPLUS:
 12827  						*(*TPCRE2_UCHAR8)(unsafe.Pointer(repeat_opcode)) = OP_CRPOSPLUS
 12828  						break
 12829  						fallthrough
 12830  
 12831  					case OP_CRQUERY:
 12832  						fallthrough
 12833  					case OP_CRMINQUERY:
 12834  						*(*TPCRE2_UCHAR8)(unsafe.Pointer(repeat_opcode)) = OP_CRPOSQUERY
 12835  						break
 12836  						fallthrough
 12837  
 12838  					case OP_CRRANGE:
 12839  						fallthrough
 12840  					case OP_CRMINRANGE:
 12841  						*(*TPCRE2_UCHAR8)(unsafe.Pointer(repeat_opcode)) = OP_CRPOSRANGE
 12842  						break
 12843  					}
 12844  				}
 12845  			}
 12846  			c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 12847  		}
 12848  
 12849  		switch int32(c) {
 12850  		case OP_END:
 12851  			return 0
 12852  
 12853  		case OP_TYPESTAR:
 12854  			fallthrough
 12855  		case OP_TYPEMINSTAR:
 12856  			fallthrough
 12857  		case OP_TYPEPLUS:
 12858  			fallthrough
 12859  		case OP_TYPEMINPLUS:
 12860  			fallthrough
 12861  		case OP_TYPEQUERY:
 12862  			fallthrough
 12863  		case OP_TYPEMINQUERY:
 12864  			fallthrough
 12865  		case OP_TYPEPOSSTAR:
 12866  			fallthrough
 12867  		case OP_TYPEPOSPLUS:
 12868  			fallthrough
 12869  		case OP_TYPEPOSQUERY:
 12870  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) == OP_NOTPROP {
 12871  				code += uintptr(2)
 12872  			}
 12873  			break
 12874  
 12875  		case OP_TYPEUPTO:
 12876  			fallthrough
 12877  		case OP_TYPEMINUPTO:
 12878  			fallthrough
 12879  		case OP_TYPEEXACT:
 12880  			fallthrough
 12881  		case OP_TYPEPOSUPTO:
 12882  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_NOTPROP {
 12883  				code += uintptr(2)
 12884  			}
 12885  			break
 12886  
 12887  		case OP_CALLOUT_STR:
 12888  			code += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 6)))))
 12889  			break
 12890  
 12891  		case OP_XCLASS:
 12892  			code += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 12893  			break
 12894  
 12895  		case OP_MARK:
 12896  			fallthrough
 12897  		case OP_COMMIT_ARG:
 12898  			fallthrough
 12899  		case OP_PRUNE_ARG:
 12900  			fallthrough
 12901  		case OP_SKIP_ARG:
 12902  			fallthrough
 12903  		case OP_THEN_ARG:
 12904  			code += uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))
 12905  			break
 12906  		}
 12907  
 12908  		// Add in the fixed length from the table
 12909  
 12910  		code += uintptr(X_pcre2_OP_lengths_8[c])
 12911  
 12912  		// In UTF-8 and UTF-16 modes, opcodes that are followed by a character may be
 12913  		//   followed by a multi-byte character. The length in the table is a minimum, so
 12914  		//   we have to arrange to skip the extra code units.
 12915  
 12916  		if utf != 0 {
 12917  			switch int32(c) {
 12918  			case OP_CHAR:
 12919  				fallthrough
 12920  			case OP_CHARI:
 12921  				fallthrough
 12922  			case OP_NOT:
 12923  				fallthrough
 12924  			case OP_NOTI:
 12925  				fallthrough
 12926  			case OP_STAR:
 12927  				fallthrough
 12928  			case OP_MINSTAR:
 12929  				fallthrough
 12930  			case OP_PLUS:
 12931  				fallthrough
 12932  			case OP_MINPLUS:
 12933  				fallthrough
 12934  			case OP_QUERY:
 12935  				fallthrough
 12936  			case OP_MINQUERY:
 12937  				fallthrough
 12938  			case OP_UPTO:
 12939  				fallthrough
 12940  			case OP_MINUPTO:
 12941  				fallthrough
 12942  			case OP_EXACT:
 12943  				fallthrough
 12944  			case OP_POSSTAR:
 12945  				fallthrough
 12946  			case OP_POSPLUS:
 12947  				fallthrough
 12948  			case OP_POSQUERY:
 12949  				fallthrough
 12950  			case OP_POSUPTO:
 12951  				fallthrough
 12952  			case OP_STARI:
 12953  				fallthrough
 12954  			case OP_MINSTARI:
 12955  				fallthrough
 12956  			case OP_PLUSI:
 12957  				fallthrough
 12958  			case OP_MINPLUSI:
 12959  				fallthrough
 12960  			case OP_QUERYI:
 12961  				fallthrough
 12962  			case OP_MINQUERYI:
 12963  				fallthrough
 12964  			case OP_UPTOI:
 12965  				fallthrough
 12966  			case OP_MINUPTOI:
 12967  				fallthrough
 12968  			case OP_EXACTI:
 12969  				fallthrough
 12970  			case OP_POSSTARI:
 12971  				fallthrough
 12972  			case OP_POSPLUSI:
 12973  				fallthrough
 12974  			case OP_POSQUERYI:
 12975  				fallthrough
 12976  			case OP_POSUPTOI:
 12977  				fallthrough
 12978  			case OP_NOTSTAR:
 12979  				fallthrough
 12980  			case OP_NOTMINSTAR:
 12981  				fallthrough
 12982  			case OP_NOTPLUS:
 12983  				fallthrough
 12984  			case OP_NOTMINPLUS:
 12985  				fallthrough
 12986  			case OP_NOTQUERY:
 12987  				fallthrough
 12988  			case OP_NOTMINQUERY:
 12989  				fallthrough
 12990  			case OP_NOTUPTO:
 12991  				fallthrough
 12992  			case OP_NOTMINUPTO:
 12993  				fallthrough
 12994  			case OP_NOTEXACT:
 12995  				fallthrough
 12996  			case OP_NOTPOSSTAR:
 12997  				fallthrough
 12998  			case OP_NOTPOSPLUS:
 12999  				fallthrough
 13000  			case OP_NOTPOSQUERY:
 13001  				fallthrough
 13002  			case OP_NOTPOSUPTO:
 13003  				fallthrough
 13004  			case OP_NOTSTARI:
 13005  				fallthrough
 13006  			case OP_NOTMINSTARI:
 13007  				fallthrough
 13008  			case OP_NOTPLUSI:
 13009  				fallthrough
 13010  			case OP_NOTMINPLUSI:
 13011  				fallthrough
 13012  			case OP_NOTQUERYI:
 13013  				fallthrough
 13014  			case OP_NOTMINQUERYI:
 13015  				fallthrough
 13016  			case OP_NOTUPTOI:
 13017  				fallthrough
 13018  			case OP_NOTMINUPTOI:
 13019  				fallthrough
 13020  			case OP_NOTEXACTI:
 13021  				fallthrough
 13022  			case OP_NOTPOSSTARI:
 13023  				fallthrough
 13024  			case OP_NOTPOSPLUSI:
 13025  				fallthrough
 13026  			case OP_NOTPOSQUERYI:
 13027  				fallthrough
 13028  			case OP_NOTPOSUPTOI:
 13029  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1)))) >= 0xc0 {
 13030  					code += uintptr(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1))))&0x3f])
 13031  				}
 13032  				break
 13033  			}
 13034  		}
 13035  	}
 13036  	return int32(0)
 13037  }
 13038  
 13039  // End of pcre2_auto_possess.c
 13040  
 13041  // This function is needed only when memmove() is not available.
 13042  
 13043  // End of pcre2_internal.h
 13044  
 13045  var X_pcre2_default_tables_8 = [1088]Tuint8_t{
 13046  
 13047  	// This table is a lower casing table.
 13048  
 13049  	Tuint8_t(0), Tuint8_t(1), Tuint8_t(2), Tuint8_t(3), Tuint8_t(4), Tuint8_t(5), Tuint8_t(6), Tuint8_t(7),
 13050  	Tuint8_t(8), Tuint8_t(9), Tuint8_t(10), Tuint8_t(11), Tuint8_t(12), Tuint8_t(13), Tuint8_t(14), Tuint8_t(15),
 13051  	Tuint8_t(16), Tuint8_t(17), Tuint8_t(18), Tuint8_t(19), Tuint8_t(20), Tuint8_t(21), Tuint8_t(22), Tuint8_t(23),
 13052  	Tuint8_t(24), Tuint8_t(25), Tuint8_t(26), Tuint8_t(27), Tuint8_t(28), Tuint8_t(29), Tuint8_t(30), Tuint8_t(31),
 13053  	Tuint8_t(32), Tuint8_t(33), Tuint8_t(34), Tuint8_t(35), Tuint8_t(36), Tuint8_t(37), Tuint8_t(38), Tuint8_t(39),
 13054  	Tuint8_t(40), Tuint8_t(41), Tuint8_t(42), Tuint8_t(43), Tuint8_t(44), Tuint8_t(45), Tuint8_t(46), Tuint8_t(47),
 13055  	Tuint8_t(48), Tuint8_t(49), Tuint8_t(50), Tuint8_t(51), Tuint8_t(52), Tuint8_t(53), Tuint8_t(54), Tuint8_t(55),
 13056  	Tuint8_t(56), Tuint8_t(57), Tuint8_t(58), Tuint8_t(59), Tuint8_t(60), Tuint8_t(61), Tuint8_t(62), Tuint8_t(63),
 13057  	Tuint8_t(64), Tuint8_t(97), Tuint8_t(98), Tuint8_t(99), Tuint8_t(100), Tuint8_t(101), Tuint8_t(102), Tuint8_t(103),
 13058  	Tuint8_t(104), Tuint8_t(105), Tuint8_t(106), Tuint8_t(107), Tuint8_t(108), Tuint8_t(109), Tuint8_t(110), Tuint8_t(111),
 13059  	Tuint8_t(112), Tuint8_t(113), Tuint8_t(114), Tuint8_t(115), Tuint8_t(116), Tuint8_t(117), Tuint8_t(118), Tuint8_t(119),
 13060  	Tuint8_t(120), Tuint8_t(121), Tuint8_t(122), Tuint8_t(91), Tuint8_t(92), Tuint8_t(93), Tuint8_t(94), Tuint8_t(95),
 13061  	Tuint8_t(96), Tuint8_t(97), Tuint8_t(98), Tuint8_t(99), Tuint8_t(100), Tuint8_t(101), Tuint8_t(102), Tuint8_t(103),
 13062  	Tuint8_t(104), Tuint8_t(105), Tuint8_t(106), Tuint8_t(107), Tuint8_t(108), Tuint8_t(109), Tuint8_t(110), Tuint8_t(111),
 13063  	Tuint8_t(112), Tuint8_t(113), Tuint8_t(114), Tuint8_t(115), Tuint8_t(116), Tuint8_t(117), Tuint8_t(118), Tuint8_t(119),
 13064  	Tuint8_t(120), Tuint8_t(121), Tuint8_t(122), Tuint8_t(123), Tuint8_t(124), Tuint8_t(125), Tuint8_t(126), Tuint8_t(127),
 13065  	Tuint8_t(128), Tuint8_t(129), Tuint8_t(130), Tuint8_t(131), Tuint8_t(132), Tuint8_t(133), Tuint8_t(134), Tuint8_t(135),
 13066  	Tuint8_t(136), Tuint8_t(137), Tuint8_t(138), Tuint8_t(139), Tuint8_t(140), Tuint8_t(141), Tuint8_t(142), Tuint8_t(143),
 13067  	Tuint8_t(144), Tuint8_t(145), Tuint8_t(146), Tuint8_t(147), Tuint8_t(148), Tuint8_t(149), Tuint8_t(150), Tuint8_t(151),
 13068  	Tuint8_t(152), Tuint8_t(153), Tuint8_t(154), Tuint8_t(155), Tuint8_t(156), Tuint8_t(157), Tuint8_t(158), Tuint8_t(159),
 13069  	Tuint8_t(160), Tuint8_t(161), Tuint8_t(162), Tuint8_t(163), Tuint8_t(164), Tuint8_t(165), Tuint8_t(166), Tuint8_t(167),
 13070  	Tuint8_t(168), Tuint8_t(169), Tuint8_t(170), Tuint8_t(171), Tuint8_t(172), Tuint8_t(173), Tuint8_t(174), Tuint8_t(175),
 13071  	Tuint8_t(176), Tuint8_t(177), Tuint8_t(178), Tuint8_t(179), Tuint8_t(180), Tuint8_t(181), Tuint8_t(182), Tuint8_t(183),
 13072  	Tuint8_t(184), Tuint8_t(185), Tuint8_t(186), Tuint8_t(187), Tuint8_t(188), Tuint8_t(189), Tuint8_t(190), Tuint8_t(191),
 13073  	Tuint8_t(192), Tuint8_t(193), Tuint8_t(194), Tuint8_t(195), Tuint8_t(196), Tuint8_t(197), Tuint8_t(198), Tuint8_t(199),
 13074  	Tuint8_t(200), Tuint8_t(201), Tuint8_t(202), Tuint8_t(203), Tuint8_t(204), Tuint8_t(205), Tuint8_t(206), Tuint8_t(207),
 13075  	Tuint8_t(208), Tuint8_t(209), Tuint8_t(210), Tuint8_t(211), Tuint8_t(212), Tuint8_t(213), Tuint8_t(214), Tuint8_t(215),
 13076  	Tuint8_t(216), Tuint8_t(217), Tuint8_t(218), Tuint8_t(219), Tuint8_t(220), Tuint8_t(221), Tuint8_t(222), Tuint8_t(223),
 13077  	Tuint8_t(224), Tuint8_t(225), Tuint8_t(226), Tuint8_t(227), Tuint8_t(228), Tuint8_t(229), Tuint8_t(230), Tuint8_t(231),
 13078  	Tuint8_t(232), Tuint8_t(233), Tuint8_t(234), Tuint8_t(235), Tuint8_t(236), Tuint8_t(237), Tuint8_t(238), Tuint8_t(239),
 13079  	Tuint8_t(240), Tuint8_t(241), Tuint8_t(242), Tuint8_t(243), Tuint8_t(244), Tuint8_t(245), Tuint8_t(246), Tuint8_t(247),
 13080  	Tuint8_t(248), Tuint8_t(249), Tuint8_t(250), Tuint8_t(251), Tuint8_t(252), Tuint8_t(253), Tuint8_t(254), Tuint8_t(255),
 13081  
 13082  	// This table is a case flipping table.
 13083  
 13084  	Tuint8_t(0), Tuint8_t(1), Tuint8_t(2), Tuint8_t(3), Tuint8_t(4), Tuint8_t(5), Tuint8_t(6), Tuint8_t(7),
 13085  	Tuint8_t(8), Tuint8_t(9), Tuint8_t(10), Tuint8_t(11), Tuint8_t(12), Tuint8_t(13), Tuint8_t(14), Tuint8_t(15),
 13086  	Tuint8_t(16), Tuint8_t(17), Tuint8_t(18), Tuint8_t(19), Tuint8_t(20), Tuint8_t(21), Tuint8_t(22), Tuint8_t(23),
 13087  	Tuint8_t(24), Tuint8_t(25), Tuint8_t(26), Tuint8_t(27), Tuint8_t(28), Tuint8_t(29), Tuint8_t(30), Tuint8_t(31),
 13088  	Tuint8_t(32), Tuint8_t(33), Tuint8_t(34), Tuint8_t(35), Tuint8_t(36), Tuint8_t(37), Tuint8_t(38), Tuint8_t(39),
 13089  	Tuint8_t(40), Tuint8_t(41), Tuint8_t(42), Tuint8_t(43), Tuint8_t(44), Tuint8_t(45), Tuint8_t(46), Tuint8_t(47),
 13090  	Tuint8_t(48), Tuint8_t(49), Tuint8_t(50), Tuint8_t(51), Tuint8_t(52), Tuint8_t(53), Tuint8_t(54), Tuint8_t(55),
 13091  	Tuint8_t(56), Tuint8_t(57), Tuint8_t(58), Tuint8_t(59), Tuint8_t(60), Tuint8_t(61), Tuint8_t(62), Tuint8_t(63),
 13092  	Tuint8_t(64), Tuint8_t(97), Tuint8_t(98), Tuint8_t(99), Tuint8_t(100), Tuint8_t(101), Tuint8_t(102), Tuint8_t(103),
 13093  	Tuint8_t(104), Tuint8_t(105), Tuint8_t(106), Tuint8_t(107), Tuint8_t(108), Tuint8_t(109), Tuint8_t(110), Tuint8_t(111),
 13094  	Tuint8_t(112), Tuint8_t(113), Tuint8_t(114), Tuint8_t(115), Tuint8_t(116), Tuint8_t(117), Tuint8_t(118), Tuint8_t(119),
 13095  	Tuint8_t(120), Tuint8_t(121), Tuint8_t(122), Tuint8_t(91), Tuint8_t(92), Tuint8_t(93), Tuint8_t(94), Tuint8_t(95),
 13096  	Tuint8_t(96), Tuint8_t(65), Tuint8_t(66), Tuint8_t(67), Tuint8_t(68), Tuint8_t(69), Tuint8_t(70), Tuint8_t(71),
 13097  	Tuint8_t(72), Tuint8_t(73), Tuint8_t(74), Tuint8_t(75), Tuint8_t(76), Tuint8_t(77), Tuint8_t(78), Tuint8_t(79),
 13098  	Tuint8_t(80), Tuint8_t(81), Tuint8_t(82), Tuint8_t(83), Tuint8_t(84), Tuint8_t(85), Tuint8_t(86), Tuint8_t(87),
 13099  	Tuint8_t(88), Tuint8_t(89), Tuint8_t(90), Tuint8_t(123), Tuint8_t(124), Tuint8_t(125), Tuint8_t(126), Tuint8_t(127),
 13100  	Tuint8_t(128), Tuint8_t(129), Tuint8_t(130), Tuint8_t(131), Tuint8_t(132), Tuint8_t(133), Tuint8_t(134), Tuint8_t(135),
 13101  	Tuint8_t(136), Tuint8_t(137), Tuint8_t(138), Tuint8_t(139), Tuint8_t(140), Tuint8_t(141), Tuint8_t(142), Tuint8_t(143),
 13102  	Tuint8_t(144), Tuint8_t(145), Tuint8_t(146), Tuint8_t(147), Tuint8_t(148), Tuint8_t(149), Tuint8_t(150), Tuint8_t(151),
 13103  	Tuint8_t(152), Tuint8_t(153), Tuint8_t(154), Tuint8_t(155), Tuint8_t(156), Tuint8_t(157), Tuint8_t(158), Tuint8_t(159),
 13104  	Tuint8_t(160), Tuint8_t(161), Tuint8_t(162), Tuint8_t(163), Tuint8_t(164), Tuint8_t(165), Tuint8_t(166), Tuint8_t(167),
 13105  	Tuint8_t(168), Tuint8_t(169), Tuint8_t(170), Tuint8_t(171), Tuint8_t(172), Tuint8_t(173), Tuint8_t(174), Tuint8_t(175),
 13106  	Tuint8_t(176), Tuint8_t(177), Tuint8_t(178), Tuint8_t(179), Tuint8_t(180), Tuint8_t(181), Tuint8_t(182), Tuint8_t(183),
 13107  	Tuint8_t(184), Tuint8_t(185), Tuint8_t(186), Tuint8_t(187), Tuint8_t(188), Tuint8_t(189), Tuint8_t(190), Tuint8_t(191),
 13108  	Tuint8_t(192), Tuint8_t(193), Tuint8_t(194), Tuint8_t(195), Tuint8_t(196), Tuint8_t(197), Tuint8_t(198), Tuint8_t(199),
 13109  	Tuint8_t(200), Tuint8_t(201), Tuint8_t(202), Tuint8_t(203), Tuint8_t(204), Tuint8_t(205), Tuint8_t(206), Tuint8_t(207),
 13110  	Tuint8_t(208), Tuint8_t(209), Tuint8_t(210), Tuint8_t(211), Tuint8_t(212), Tuint8_t(213), Tuint8_t(214), Tuint8_t(215),
 13111  	Tuint8_t(216), Tuint8_t(217), Tuint8_t(218), Tuint8_t(219), Tuint8_t(220), Tuint8_t(221), Tuint8_t(222), Tuint8_t(223),
 13112  	Tuint8_t(224), Tuint8_t(225), Tuint8_t(226), Tuint8_t(227), Tuint8_t(228), Tuint8_t(229), Tuint8_t(230), Tuint8_t(231),
 13113  	Tuint8_t(232), Tuint8_t(233), Tuint8_t(234), Tuint8_t(235), Tuint8_t(236), Tuint8_t(237), Tuint8_t(238), Tuint8_t(239),
 13114  	Tuint8_t(240), Tuint8_t(241), Tuint8_t(242), Tuint8_t(243), Tuint8_t(244), Tuint8_t(245), Tuint8_t(246), Tuint8_t(247),
 13115  	Tuint8_t(248), Tuint8_t(249), Tuint8_t(250), Tuint8_t(251), Tuint8_t(252), Tuint8_t(253), Tuint8_t(254), Tuint8_t(255),
 13116  
 13117  	// This table contains bit maps for various character classes. Each map is 32
 13118  	// bytes long and the bits run from the least significant end of each byte. The
 13119  	// classes that have their own maps are: space, xdigit, digit, upper, lower, word,
 13120  	// graph, print, punct, and cntrl. Other classes are built from combinations.
 13121  
 13122  	Tuint8_t(0x00), Tuint8_t(0x3e), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x01), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // space
 13123  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13124  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13125  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13126  
 13127  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xff), Tuint8_t(0x03), // xdigit
 13128  	Tuint8_t(0x7e), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x7e), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13129  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13130  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13131  
 13132  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xff), Tuint8_t(0x03), // digit
 13133  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13134  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13135  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13136  
 13137  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // upper
 13138  	Tuint8_t(0xfe), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0x07), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13139  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13140  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13141  
 13142  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // lower
 13143  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xfe), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0x07),
 13144  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13145  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13146  
 13147  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xff), Tuint8_t(0x03), // word
 13148  	Tuint8_t(0xfe), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0x87), Tuint8_t(0xfe), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0x07),
 13149  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13150  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13151  
 13152  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xfe), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // graph
 13153  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0x7f),
 13154  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13155  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13156  
 13157  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // print
 13158  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0x7f),
 13159  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13160  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13161  
 13162  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xfe), Tuint8_t(0xff), Tuint8_t(0x00), Tuint8_t(0xfc), // punct
 13163  	Tuint8_t(0x01), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0xf8), Tuint8_t(0x01), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x78),
 13164  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13165  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13166  
 13167  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // cntrl
 13168  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x80),
 13169  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13170  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00),
 13171  
 13172  	// This table identifies various classes of character by individual bits:
 13173  	//   0x01   white space character
 13174  	//   0x02   letter
 13175  	//   0x04   lower case letter
 13176  	//   0x08   decimal digit
 13177  	//   0x10   alphanumeric or '_'
 13178  
 13179  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), //   0-  7
 13180  	Tuint8_t(0x00), Tuint8_t(0x01), Tuint8_t(0x01), Tuint8_t(0x01), Tuint8_t(0x01), Tuint8_t(0x01), Tuint8_t(0x00), Tuint8_t(0x00), //   8- 15
 13181  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), //  16- 23
 13182  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), //  24- 31
 13183  	Tuint8_t(0x01), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), //    - '
 13184  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), //  ( - /
 13185  	Tuint8_t(0x18), Tuint8_t(0x18), Tuint8_t(0x18), Tuint8_t(0x18), Tuint8_t(0x18), Tuint8_t(0x18), Tuint8_t(0x18), Tuint8_t(0x18), //  0 - 7
 13186  	Tuint8_t(0x18), Tuint8_t(0x18), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), //  8 - ?
 13187  	Tuint8_t(0x00), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), //  @ - G
 13188  	Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), //  H - O
 13189  	Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), //  P - W
 13190  	Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x12), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x10), //  X - _
 13191  	Tuint8_t(0x00), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), //  ` - g
 13192  	Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), //  h - o
 13193  	Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), //  p - w
 13194  	Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x16), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), //  x -127
 13195  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 128-135
 13196  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 136-143
 13197  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 144-151
 13198  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 152-159
 13199  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 160-167
 13200  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 168-175
 13201  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 176-183
 13202  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 184-191
 13203  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 192-199
 13204  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 200-207
 13205  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 208-215
 13206  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 216-223
 13207  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 224-231
 13208  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 232-239
 13209  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), // 240-247
 13210  	Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00), Tuint8_t(0x00)} /* pcre2_chartables.c:34:15 */ // 248-255
 13211  
 13212  // End of pcre2_chartables.c
 13213  
 13214  // ************************************************
 13215  //
 13216  //      Code parameters and static tables         *
 13217  //
 13218  
 13219  // COMPILE_WORK_SIZE specifies the size of stack workspace, which is used in
 13220  // different ways in the different pattern scans. The parsing and group-
 13221  // identifying pre-scan uses it to handle nesting, and needs it to be 16-bit
 13222  // aligned for this. Having defined the size in code units, we set up
 13223  // C16_WORK_SIZE as the number of elements in the 16-bit vector.
 13224  //
 13225  // During the first compiling phase, when determining how much memory is required,
 13226  // the regex is partly compiled into this space, but the compiled parts are
 13227  // discarded as soon as they can be, so that hopefully there will never be an
 13228  // overrun. The code does, however, check for an overrun, which can occur for
 13229  // pathological patterns. The size of the workspace depends on LINK_SIZE because
 13230  // the length of compiled items varies with this.
 13231  //
 13232  // In the real compile phase, this workspace is not currently used.
 13233  
 13234  // A uint32_t vector is used for caching information about the size of
 13235  // capturing groups, to improve performance. A default is created on the stack of
 13236  // this size.
 13237  
 13238  // The overrun tests check for a slightly smaller size so that they detect the
 13239  // overrun before it actually does run off the end of the data block.
 13240  
 13241  // This value determines the size of the initial vector that is used for
 13242  // remembering named groups during the pre-compile. It is allocated on the stack,
 13243  // but if it is too small, it is expanded, in a similar way to the workspace. The
 13244  // value is the number of slots in the list.
 13245  
 13246  // The pre-compiling pass over the pattern creates a parsed pattern in a vector
 13247  // of uint32_t. For short patterns this lives on the stack, with this size. Heap
 13248  // memory is used for longer patterns.
 13249  
 13250  // Maximum length value to check against when making sure that the variable
 13251  // that holds the compiled pattern length does not overflow. We make it a bit less
 13252  // than INT_MAX to allow for adding in group terminating code units, so that we
 13253  // don't have to check them every time.
 13254  
 13255  // Code values for parsed patterns, which are stored in a vector of 32-bit
 13256  // unsigned ints. Values less than META_END are literal data values. The coding
 13257  // for identifying the item is in the top 16-bits, leaving 16 bits for the
 13258  // additional data that some of them need. The META_CODE, META_DATA, and META_DIFF
 13259  // macros are used to manipulate parsed pattern elements.
 13260  //
 13261  // NOTE: When these definitions are changed, the table of extra lengths for each
 13262  // code (meta_extra_lengths, just below) must be updated to remain in step.
 13263  
 13264  // These must be kept together to make it easy to check that an assertion
 13265  // is present where expected in a conditional group.
 13266  
 13267  // These cannot be conditions
 13268  
 13269  // These must be kept in this order, with consecutive values, and the _ARG
 13270  // versions of COMMIT, PRUNE, SKIP, and THEN immediately after their non-argument
 13271  // versions.
 13272  
 13273  // These must be kept in groups of adjacent 3 values, and all together.
 13274  
 13275  // This is a special "meta code" that is used only to distinguish (*asr: from
 13276  // (*sr: in the table of aphabetic assertions. It is never stored in the parsed
 13277  // pattern because (*asr: is turned into (*sr:(*atomic: at that stage. There is
 13278  // therefore no need for it to have a length entry, so use a high value.
 13279  
 13280  // Table of extra lengths for each of the meta codes. Must be kept in step with
 13281  // the definitions above. For some items these values are a basic length to which
 13282  // a variable amount has to be added.
 13283  
 13284  var meta_extra_lengths = [64]uint8{
 13285  	uint8(0), // META_END
 13286  	uint8(0), // META_ALT
 13287  	uint8(0), // META_ATOMIC
 13288  	uint8(0), // META_BACKREF - more if group is >= 10
 13289  	uint8(1 + DSIZEOFFSET),
 13290  	uint8(1), // META_BIGVALUE
 13291  	uint8(3), // META_CALLOUT_NUMBER
 13292  	uint8(3 + DSIZEOFFSET),
 13293  	uint8(0),           // META_CAPTURE
 13294  	uint8(0),           // META_CIRCUMFLEX
 13295  	uint8(0),           // META_CLASS
 13296  	uint8(0),           // META_CLASS_EMPTY
 13297  	uint8(0),           // META_CLASS_EMPTY_NOT
 13298  	uint8(0),           // META_CLASS_END
 13299  	uint8(0),           // META_CLASS_NOT
 13300  	uint8(0),           // META_COND_ASSERT
 13301  	uint8(DSIZEOFFSET), // META_COND_DEFINE
 13302  	uint8(1 + DSIZEOFFSET),
 13303  	uint8(1 + DSIZEOFFSET),
 13304  	uint8(1 + DSIZEOFFSET),
 13305  	uint8(1 + DSIZEOFFSET),
 13306  	uint8(3),           // META_COND_VERSION
 13307  	uint8(0),           // META_DOLLAR
 13308  	uint8(0),           // META_DOT
 13309  	uint8(0),           // META_ESCAPE - more for ESC_P, ESC_p, ESC_g, ESC_k
 13310  	uint8(0),           // META_KET
 13311  	uint8(0),           // META_NOCAPTURE
 13312  	uint8(1),           // META_OPTIONS
 13313  	uint8(1),           // META_POSIX
 13314  	uint8(1),           // META_POSIX_NEG
 13315  	uint8(0),           // META_RANGE_ESCAPED
 13316  	uint8(0),           // META_RANGE_LITERAL
 13317  	uint8(DSIZEOFFSET), // META_RECURSE
 13318  	uint8(1 + DSIZEOFFSET),
 13319  	uint8(0),           // META_SCRIPT_RUN
 13320  	uint8(0),           // META_LOOKAHEAD
 13321  	uint8(0),           // META_LOOKAHEADNOT
 13322  	uint8(DSIZEOFFSET), // META_LOOKBEHIND
 13323  	uint8(DSIZEOFFSET), // META_LOOKBEHINDNOT
 13324  	uint8(0),           // META_LOOKAHEAD_NA
 13325  	uint8(DSIZEOFFSET), // META_LOOKBEHIND_NA
 13326  	uint8(1),           // META_MARK - plus the string length
 13327  	uint8(0),           // META_ACCEPT
 13328  	uint8(0),           // META_FAIL
 13329  	uint8(0),           // META_COMMIT
 13330  	uint8(1),           // META_COMMIT_ARG - plus the string length
 13331  	uint8(0),           // META_PRUNE
 13332  	uint8(1),           // META_PRUNE_ARG - plus the string length
 13333  	uint8(0),           // META_SKIP
 13334  	uint8(1),           // META_SKIP_ARG - plus the string length
 13335  	uint8(0),           // META_THEN
 13336  	uint8(1),           // META_THEN_ARG - plus the string length
 13337  	uint8(0),           // META_ASTERISK
 13338  	uint8(0),           // META_ASTERISK_PLUS
 13339  	uint8(0),           // META_ASTERISK_QUERY
 13340  	uint8(0),           // META_PLUS
 13341  	uint8(0),           // META_PLUS_PLUS
 13342  	uint8(0),           // META_PLUS_QUERY
 13343  	uint8(0),           // META_QUERY
 13344  	uint8(0),           // META_QUERY_PLUS
 13345  	uint8(0),           // META_QUERY_QUERY
 13346  	uint8(2),           // META_MINMAX
 13347  	uint8(2),           // META_MINMAX_PLUS
 13348  	uint8(2),           // META_MINMAX_QUERY
 13349  } /* pcre2_compile.c:306:22 */
 13350  
 13351  // Macro for setting individual bits in class bitmaps. It took some
 13352  // experimenting to figure out how to stop gcc 5.3.0 from warning with
 13353  // -Wconversion. This version gets a warning:
 13354  //
 13355  //   #define SETBIT(a,b) a[(b)/8] |= (uint8_t)(1u << ((b)&7))
 13356  //
 13357  // Let's hope the apparently less efficient version isn't actually so bad if the
 13358  // compiler is clever with identical subexpressions.
 13359  
 13360  // Values and flags for the unsigned xxcuflags variables that accompany xxcu
 13361  // variables, which are concerned with first and required code units. A value
 13362  // greater than or equal to REQ_NONE means "no code unit set"; otherwise the
 13363  // matching xxcu variable is set, and the low valued bits are relevant.
 13364  
 13365  // These flags are used in the groupinfo vector.
 13366  
 13367  // This simple test for a decimal digit works for both ASCII/Unicode and EBCDIC
 13368  // and is fast (a good compiler can turn it into a subtraction and unsigned
 13369  // comparison).
 13370  
 13371  // Table to identify hex digits. The tables in chartables are dependent on the
 13372  // locale, and may mark arbitrary characters as digits. We want to recognize only
 13373  // 0-9, a-z, and A-Z as hex digits, which is why we have a private table here. It
 13374  // costs 256 bytes, but it is a lot faster than doing character value tests (at
 13375  // least in some simple cases I timed), and in some applications one wants PCRE2
 13376  // to compile efficiently as well as match efficiently. The value in the table is
 13377  // the binary hex digit value, or 0xff for non-hex digits.
 13378  
 13379  // This is the "normal" case, for ASCII systems, and EBCDIC systems running in
 13380  // UTF-8 mode.
 13381  
 13382  var xdigitab = [256]Tuint8_t{
 13383  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //   0-  7
 13384  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //   8- 15
 13385  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  16- 23
 13386  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  24- 31
 13387  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //    - '
 13388  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  ( - /
 13389  	Tuint8_t(0x00), Tuint8_t(0x01), Tuint8_t(0x02), Tuint8_t(0x03), Tuint8_t(0x04), Tuint8_t(0x05), Tuint8_t(0x06), Tuint8_t(0x07), //  0 - 7
 13390  	Tuint8_t(0x08), Tuint8_t(0x09), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  8 - ?
 13391  	Tuint8_t(0xff), Tuint8_t(0x0a), Tuint8_t(0x0b), Tuint8_t(0x0c), Tuint8_t(0x0d), Tuint8_t(0x0e), Tuint8_t(0x0f), Tuint8_t(0xff), //  @ - G
 13392  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  H - O
 13393  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  P - W
 13394  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  X - _
 13395  	Tuint8_t(0xff), Tuint8_t(0x0a), Tuint8_t(0x0b), Tuint8_t(0x0c), Tuint8_t(0x0d), Tuint8_t(0x0e), Tuint8_t(0x0f), Tuint8_t(0xff), //  ` - g
 13396  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  h - o
 13397  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  p - w
 13398  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), //  x -127
 13399  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 128-135
 13400  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 136-143
 13401  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 144-151
 13402  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 152-159
 13403  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 160-167
 13404  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 168-175
 13405  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 176-183
 13406  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 184-191
 13407  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 192-199
 13408  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 2ff-207
 13409  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 208-215
 13410  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 216-223
 13411  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 224-231
 13412  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 232-239
 13413  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), // 240-247
 13414  	Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff), Tuint8_t(0xff)} /* pcre2_compile.c:422:22 */ // 248-255
 13415  
 13416  // Table for handling alphanumeric escaped characters. Positive returns are
 13417  // simple data values; negative values are for special things like \d and so on.
 13418  // Zero means further processing is needed (for things like \x), or the escape is
 13419  // invalid.
 13420  
 13421  // This is the "normal" table for ASCII systems or for EBCDIC systems running
 13422  // in UTF-8 mode. It runs from '0' to 'z'.
 13423  
 13424  var escapes = [75]int16{
 13425  	int16(0), int16(0),
 13426  	int16(0), int16(0),
 13427  	int16(0), int16(0),
 13428  	int16(0), int16(0),
 13429  	int16(0), int16(0),
 13430  	int16('\072'), int16('\073'),
 13431  	int16('\074'), int16('\075'),
 13432  	int16('\076'), int16('\077'),
 13433  	int16('\100'), int16(-ESC_A),
 13434  	int16(-ESC_B), int16(-ESC_C),
 13435  	int16(-ESC_D), int16(-ESC_E),
 13436  	int16(0), int16(-ESC_G),
 13437  	int16(-ESC_H), int16(0),
 13438  	int16(0), int16(-ESC_K),
 13439  	int16(0), int16(0),
 13440  	int16(-ESC_N), int16(0),
 13441  	int16(-ESC_P), int16(-ESC_Q),
 13442  	int16(-ESC_R), int16(-ESC_S),
 13443  	int16(0), int16(0),
 13444  	int16(-ESC_V), int16(-ESC_W),
 13445  	int16(-ESC_X), int16(0),
 13446  	int16(-ESC_Z), int16('\133'),
 13447  	int16('\134'), int16('\135'),
 13448  	int16('\136'), int16('\137'),
 13449  	int16('\140'), int16('\007'),
 13450  	int16(-ESC_b), int16(0),
 13451  	int16(-ESC_d), int16('\033'),
 13452  	int16('\014'), int16(0),
 13453  	int16(-ESC_h), int16(0),
 13454  	int16(0), int16(-ESC_k),
 13455  	int16(0), int16(0),
 13456  	int16('\012'), int16(0),
 13457  	int16(-ESC_p), int16(0),
 13458  	int16('\015'), int16(-ESC_s),
 13459  	int16('\011'), int16(0),
 13460  	int16(-ESC_v), int16(-ESC_w),
 13461  	int16(0), int16(0),
 13462  	int16(-ESC_z),
 13463  } /* pcre2_compile.c:511:24 */
 13464  
 13465  // Table of special "verbs" like (*PRUNE). This is a short table, so it is
 13466  // searched linearly. Put all the names into a single string, in order to reduce
 13467  // the number of relocations when a shared library is dynamically linked. The
 13468  // string is built from string macros so that it works in UTF-8 mode on EBCDIC
 13469  // platforms.
 13470  
 13471  type Sverbitem = struct {
 13472  	Flen     uint32
 13473  	Fmeta    Tuint32_t
 13474  	Fhas_arg int32
 13475  } /* pcre2_compile.c:602:9 */
 13476  
 13477  // Table of special "verbs" like (*PRUNE). This is a short table, so it is
 13478  // searched linearly. Put all the names into a single string, in order to reduce
 13479  // the number of relocations when a shared library is dynamically linked. The
 13480  // string is built from string macros so that it works in UTF-8 mode on EBCDIC
 13481  // platforms.
 13482  
 13483  type Tverbitem = Sverbitem /* pcre2_compile.c:606:3 */
 13484  
 13485  var verbnames =
 13486  // Empty name is a shorthand for MARK
 13487  
 13488  *(*[43]int8)(unsafe.Pointer(ts)) /* pcre2_compile.c:608:19 */
 13489  
 13490  var verbs = [9]Tverbitem{
 13491  	{Fmeta: DMETA_MARK, Fhas_arg: +1}, // > 0 => must have an argument
 13492  	{Flen: uint32(4), Fmeta: DMETA_MARK, Fhas_arg: +1},
 13493  	{Flen: uint32(6), Fmeta: DMETA_ACCEPT, Fhas_arg: -1}, // < 0 => Optional argument, convert to pre-MARK
 13494  	{Flen: uint32(1), Fmeta: DMETA_FAIL, Fhas_arg: -1},
 13495  	{Flen: uint32(4), Fmeta: DMETA_FAIL, Fhas_arg: -1},
 13496  	{Flen: uint32(6), Fmeta: DMETA_COMMIT},
 13497  	{Flen: uint32(5), Fmeta: DMETA_PRUNE}, // Optional argument; bump META code if found
 13498  	{Flen: uint32(4), Fmeta: DMETA_SKIP},
 13499  	{Flen: uint32(4), Fmeta: DMETA_THEN},
 13500  } /* pcre2_compile.c:619:23 */
 13501  
 13502  var verbcount int32 = int32(uint64(unsafe.Sizeof(verbs)) / uint64(unsafe.Sizeof(Tverbitem{}))) /* pcre2_compile.c:631:18 */
 13503  
 13504  // Verb opcodes, indexed by their META code offset from META_MARK.
 13505  
 13506  var verbops = [11]Tuint32_t{
 13507  	OP_MARK, OP_ACCEPT, OP_FAIL, OP_COMMIT, OP_COMMIT_ARG, OP_PRUNE,
 13508  	OP_PRUNE_ARG, OP_SKIP, OP_SKIP_ARG, OP_THEN, OP_THEN_ARG} /* pcre2_compile.c:635:23 */
 13509  
 13510  // Table of "alpha assertions" like (*pla:...), similar to the (*VERB) table.
 13511  
 13512  type Salasitem = struct {
 13513  	Flen  uint32
 13514  	Fmeta Tuint32_t
 13515  } /* pcre2_compile.c:641:9 */
 13516  
 13517  // Table of "alpha assertions" like (*pla:...), similar to the (*VERB) table.
 13518  
 13519  type Talasitem = Salasitem /* pcre2_compile.c:644:3 */
 13520  
 13521  var alasnames = *(*[210]int8)(unsafe.Pointer(ts + 43)) /* pcre2_compile.c:646:19 */
 13522  
 13523  var alasmeta = [17]Talasitem{
 13524  	{Flen: uint32(3), Fmeta: DMETA_LOOKAHEAD},
 13525  	{Flen: uint32(3), Fmeta: DMETA_LOOKBEHIND},
 13526  	{Flen: uint32(5), Fmeta: DMETA_LOOKAHEAD_NA},
 13527  	{Flen: uint32(5), Fmeta: DMETA_LOOKBEHIND_NA},
 13528  	{Flen: uint32(3), Fmeta: DMETA_LOOKAHEADNOT},
 13529  	{Flen: uint32(3), Fmeta: DMETA_LOOKBEHINDNOT},
 13530  	{Flen: uint32(18), Fmeta: DMETA_LOOKAHEAD},
 13531  	{Flen: uint32(19), Fmeta: DMETA_LOOKBEHIND},
 13532  	{Flen: uint32(29), Fmeta: DMETA_LOOKAHEAD_NA},
 13533  	{Flen: uint32(30), Fmeta: DMETA_LOOKBEHIND_NA},
 13534  	{Flen: uint32(18), Fmeta: DMETA_LOOKAHEADNOT},
 13535  	{Flen: uint32(19), Fmeta: DMETA_LOOKBEHINDNOT},
 13536  	{Flen: uint32(6), Fmeta: DMETA_ATOMIC},
 13537  	{Flen: uint32(2), Fmeta: DMETA_SCRIPT_RUN},         // sr = script run
 13538  	{Flen: uint32(3), Fmeta: DMETA_ATOMIC_SCRIPT_RUN},  // asr = atomic script run
 13539  	{Flen: uint32(10), Fmeta: DMETA_SCRIPT_RUN},        // script run
 13540  	{Flen: uint32(17), Fmeta: DMETA_ATOMIC_SCRIPT_RUN}, // atomic script run
 13541  } /* pcre2_compile.c:665:23 */
 13542  
 13543  var alascount int32 = int32(uint64(unsafe.Sizeof(alasmeta)) / uint64(unsafe.Sizeof(Talasitem{}))) /* pcre2_compile.c:685:18 */
 13544  
 13545  // Offsets from OP_STAR for case-independent and negative repeat opcodes.
 13546  
 13547  var chartypeoffset = [4]Tuint32_t{
 13548  	Tuint32_t(OP_STAR - OP_STAR), Tuint32_t(OP_STARI - OP_STAR),
 13549  	Tuint32_t(OP_NOTSTAR - OP_STAR), Tuint32_t(OP_NOTSTARI - OP_STAR)} /* pcre2_compile.c:689:17 */
 13550  
 13551  // Tables of names of POSIX character classes and their lengths. The names are
 13552  // now all in a single string, to reduce the number of relocations when a shared
 13553  // library is dynamically loaded. The list of lengths is terminated by a zero
 13554  // length entry. The first three must be alpha, lower, upper, as this is assumed
 13555  // for handling case independence. The indices for graph, print, and punct are
 13556  // needed, so identify them.
 13557  
 13558  var posix_names = *(*[84]int8)(unsafe.Pointer(ts + 253)) /* pcre2_compile.c:700:19 */
 13559  
 13560  var posix_name_lengths = [15]Tuint8_t{
 13561  	Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(4), Tuint8_t(6), Tuint8_t(0)} /* pcre2_compile.c:706:22 */
 13562  
 13563  // Table of class bit maps for each POSIX class. Each class is formed from a
 13564  // base map, with an optional addition or removal of another map. Then, for some
 13565  // classes, there is some additional tweaking: for [:blank:] the vertical space
 13566  // characters are removed, and for [:alpha:] and [:alnum:] the underscore
 13567  // character is removed. The triples in the table consist of the base map offset,
 13568  // second map offset or -1 if no second map, and a non-negative value for map
 13569  // addition or a negative value for map subtraction (if there are two maps). The
 13570  // absolute value of the third field has these meanings: 0 => no tweaking, 1 =>
 13571  // remove vertical space characters, 2 => remove underscore.
 13572  
 13573  var posix_class_maps = [42]int32{
 13574  	Dcbit_word, Dcbit_digit, -2, // alpha
 13575  	Dcbit_lower, -1, 0, // lower
 13576  	Dcbit_upper, -1, 0, // upper
 13577  	Dcbit_word, -1, 2, // alnum - word without underscore
 13578  	Dcbit_print, Dcbit_cntrl, 0, // ascii
 13579  	Dcbit_space, -1, 1, // blank - a GNU extension
 13580  	Dcbit_cntrl, -1, 0, // cntrl
 13581  	Dcbit_digit, -1, 0, // digit
 13582  	Dcbit_graph, -1, 0, // graph
 13583  	Dcbit_print, -1, 0, // print
 13584  	Dcbit_punct, -1, 0, // punct
 13585  	Dcbit_space, -1, 0, // space
 13586  	Dcbit_word, -1, 0, // word - a Perl extension
 13587  	Dcbit_xdigit, -1, 0, // xdigit
 13588  } /* pcre2_compile.c:723:18 */
 13589  
 13590  // The POSIX class Unicode property substitutes that are used in UCP mode must
 13591  // be in the order of the POSIX class names, defined above.
 13592  
 13593  var posix_substitutes = [28]int32{
 13594  	DPT_GC, ucp_L, // alpha
 13595  	DPT_PC, ucp_Ll, // lower
 13596  	DPT_PC, ucp_Lu, // upper
 13597  	DPT_ALNUM, 0, // alnum
 13598  	-1, 0, // ascii, treat as non-UCP
 13599  	-1, 1, // blank, treat as \h
 13600  	DPT_PC, ucp_Cc, // cntrl
 13601  	DPT_PC, ucp_Nd, // digit
 13602  	DPT_PXGRAPH, 0, // graph
 13603  	DPT_PXPRINT, 0, // print
 13604  	DPT_PXPUNCT, 0, // punct
 13605  	DPT_PXSPACE, 0, /* space */ // Xps is POSIX space, but from 8.34
 13606  	DPT_WORD, 0, /* word  */ // Perl and POSIX space are the same
 13607  	-1, 0, // xdigit, treat as non-UCP
 13608  } /* pcre2_compile.c:745:12 */ // Read integer value for depth limit
 13609  
 13610  type Spso = struct {
 13611  	Fname   uintptr
 13612  	Flength Tuint16_t
 13613  	Ftype   Tuint16_t
 13614  	Fvalue  Tuint32_t
 13615  } /* pcre2_compile.c:822:9 */
 13616  
 13617  // Read integer value for depth limit
 13618  
 13619  type Tpso = Spso /* pcre2_compile.c:827:3 */
 13620  
 13621  // NB: STRING_UTFn_RIGHTPAR contains the length as well
 13622  
 13623  var pso_list = [21]Tpso{
 13624  	{Fname: uintptr(ts + 337), Flength: Tuint16_t(5), Fvalue: DPCRE2_UTF},
 13625  	{Fname: uintptr(ts + 343), Flength: Tuint16_t(4), Fvalue: DPCRE2_UTF},
 13626  	{Fname: uintptr(ts + 348), Flength: Tuint16_t(4), Fvalue: DPCRE2_UCP},
 13627  	{Fname: uintptr(ts + 353), Flength: Tuint16_t(9), Ftype: PSO_FLG, Fvalue: Tuint32_t(DPCRE2_NOTEMPTY_SET)},
 13628  	{Fname: uintptr(ts + 363), Flength: Tuint16_t(17), Ftype: PSO_FLG, Fvalue: Tuint32_t(DPCRE2_NE_ATST_SET)},
 13629  	{Fname: uintptr(ts + 381), Flength: Tuint16_t(16), Fvalue: DPCRE2_NO_AUTO_POSSESS},
 13630  	{Fname: uintptr(ts + 398), Flength: Tuint16_t(18), Fvalue: DPCRE2_NO_DOTSTAR_ANCHOR},
 13631  	{Fname: uintptr(ts + 417), Flength: Tuint16_t(7), Ftype: PSO_FLG, Fvalue: Tuint32_t(DPCRE2_NOJIT)},
 13632  	{Fname: uintptr(ts + 425), Flength: Tuint16_t(13), Fvalue: DPCRE2_NO_START_OPTIMIZE},
 13633  	{Fname: uintptr(ts + 439), Flength: Tuint16_t(11), Ftype: PSO_LIMH},
 13634  	{Fname: uintptr(ts + 451), Flength: Tuint16_t(12), Ftype: PSO_LIMM},
 13635  	{Fname: uintptr(ts + 464), Flength: Tuint16_t(12), Ftype: PSO_LIMD},
 13636  	{Fname: uintptr(ts + 477), Flength: Tuint16_t(16), Ftype: PSO_LIMD},
 13637  	{Fname: uintptr(ts + 494), Flength: Tuint16_t(3), Ftype: PSO_NL, Fvalue: Tuint32_t(DPCRE2_NEWLINE_CR)},
 13638  	{Fname: uintptr(ts + 498), Flength: Tuint16_t(3), Ftype: PSO_NL, Fvalue: Tuint32_t(DPCRE2_NEWLINE_LF)},
 13639  	{Fname: uintptr(ts + 502), Flength: Tuint16_t(5), Ftype: PSO_NL, Fvalue: Tuint32_t(DPCRE2_NEWLINE_CRLF)},
 13640  	{Fname: uintptr(ts + 508), Flength: Tuint16_t(4), Ftype: PSO_NL, Fvalue: Tuint32_t(DPCRE2_NEWLINE_ANY)},
 13641  	{Fname: uintptr(ts + 513), Flength: Tuint16_t(4), Ftype: PSO_NL, Fvalue: Tuint32_t(DPCRE2_NEWLINE_NUL)},
 13642  	{Fname: uintptr(ts + 518), Flength: Tuint16_t(8), Ftype: PSO_NL, Fvalue: Tuint32_t(DPCRE2_NEWLINE_ANYCRLF)},
 13643  	{Fname: uintptr(ts + 527), Flength: Tuint16_t(12), Ftype: PSO_BSR, Fvalue: Tuint32_t(DPCRE2_BSR_ANYCRLF)},
 13644  	{Fname: uintptr(ts + 540), Flength: Tuint16_t(12), Ftype: PSO_BSR, Fvalue: Tuint32_t(DPCRE2_BSR_UNICODE)},
 13645  } /* pcre2_compile.c:831:12 */
 13646  
 13647  // This table is used when converting repeating opcodes into possessified
 13648  // versions as a result of an explicit possessive quantifier such as ++. A zero
 13649  // value means there is no possessified version - in those cases the item in
 13650  // question must be wrapped in ONCE brackets. The table is truncated at OP_CALLOUT
 13651  // because all relevant opcodes are less than that.
 13652  
 13653  var opcode_possessify = [119]Tuint8_t{
 13654  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // 0 - 15
 13655  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // 16 - 31
 13656  
 13657  	Tuint8_t(0),             // NOTI
 13658  	OP_POSSTAR, Tuint8_t(0), // STAR, MINSTAR
 13659  	OP_POSPLUS, Tuint8_t(0), // PLUS, MINPLUS
 13660  	OP_POSQUERY, Tuint8_t(0), // QUERY, MINQUERY
 13661  	OP_POSUPTO, Tuint8_t(0), // UPTO, MINUPTO
 13662  	Tuint8_t(0),                                        // EXACT
 13663  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // POS{STAR,PLUS,QUERY,UPTO}
 13664  
 13665  	OP_POSSTARI, Tuint8_t(0), // STARI, MINSTARI
 13666  	OP_POSPLUSI, Tuint8_t(0), // PLUSI, MINPLUSI
 13667  	OP_POSQUERYI, Tuint8_t(0), // QUERYI, MINQUERYI
 13668  	OP_POSUPTOI, Tuint8_t(0), // UPTOI, MINUPTOI
 13669  	Tuint8_t(0),                                        // EXACTI
 13670  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // POS{STARI,PLUSI,QUERYI,UPTOI}
 13671  
 13672  	OP_NOTPOSSTAR, Tuint8_t(0), // NOTSTAR, NOTMINSTAR
 13673  	OP_NOTPOSPLUS, Tuint8_t(0), // NOTPLUS, NOTMINPLUS
 13674  	OP_NOTPOSQUERY, Tuint8_t(0), // NOTQUERY, NOTMINQUERY
 13675  	OP_NOTPOSUPTO, Tuint8_t(0), // NOTUPTO, NOTMINUPTO
 13676  	Tuint8_t(0),                                        // NOTEXACT
 13677  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // NOTPOS{STAR,PLUS,QUERY,UPTO}
 13678  
 13679  	OP_NOTPOSSTARI, Tuint8_t(0), // NOTSTARI, NOTMINSTARI
 13680  	OP_NOTPOSPLUSI, Tuint8_t(0), // NOTPLUSI, NOTMINPLUSI
 13681  	OP_NOTPOSQUERYI, Tuint8_t(0), // NOTQUERYI, NOTMINQUERYI
 13682  	OP_NOTPOSUPTOI, Tuint8_t(0), // NOTUPTOI, NOTMINUPTOI
 13683  	Tuint8_t(0),                                        // NOTEXACTI
 13684  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // NOTPOS{STARI,PLUSI,QUERYI,UPTOI}
 13685  
 13686  	OP_TYPEPOSSTAR, Tuint8_t(0), // TYPESTAR, TYPEMINSTAR
 13687  	OP_TYPEPOSPLUS, Tuint8_t(0), // TYPEPLUS, TYPEMINPLUS
 13688  	OP_TYPEPOSQUERY, Tuint8_t(0), // TYPEQUERY, TYPEMINQUERY
 13689  	OP_TYPEPOSUPTO, Tuint8_t(0), // TYPEUPTO, TYPEMINUPTO
 13690  	Tuint8_t(0),                                        // TYPEEXACT
 13691  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // TYPEPOS{STAR,PLUS,QUERY,UPTO}
 13692  
 13693  	OP_CRPOSSTAR, Tuint8_t(0), // CRSTAR, CRMINSTAR
 13694  	OP_CRPOSPLUS, Tuint8_t(0), // CRPLUS, CRMINPLUS
 13695  	OP_CRPOSQUERY, Tuint8_t(0), // CRQUERY, CRMINQUERY
 13696  	OP_CRPOSRANGE, Tuint8_t(0), // CRRANGE, CRMINRANGE
 13697  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // CRPOS{STAR,PLUS,QUERY,RANGE}
 13698  
 13699  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // CLASS, NCLASS, XCLASS
 13700  	Tuint8_t(0), Tuint8_t(0), // REF, REFI
 13701  	Tuint8_t(0), Tuint8_t(0), // DNREF, DNREFI
 13702  	Tuint8_t(0), Tuint8_t(0), // RECURSE, CALLOUT
 13703  } /* pcre2_compile.c:861:22 */
 13704  
 13705  // ************************************************
 13706  //
 13707  //               Copy compiled code               *
 13708  //
 13709  
 13710  // Compiled JIT code cannot be copied, so the new compiled block has no
 13711  // associated JIT data.
 13712  
 13713  func Xpcre2_code_copy_8(tls *libc.TLS, code uintptr) uintptr { /* pcre2_compile.c:1193:27: */
 13714  	var ref_count uintptr
 13715  	var newcode uintptr
 13716  
 13717  	if code == uintptr(0) {
 13718  		return uintptr(0)
 13719  	}
 13720  	newcode = (*struct {
 13721  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 13722  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmalloc})).f(tls, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fblocksize, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmemory_data)
 13723  	if newcode == uintptr(0) {
 13724  		return uintptr(0)
 13725  	}
 13726  	libc.X__builtin___memcpy_chk(tls, newcode, code, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fblocksize, libc.X__builtin_object_size(tls, newcode, 0))
 13727  	(*Tpcre2_code_8)(unsafe.Pointer(newcode)).Fexecutable_jit = uintptr(0)
 13728  
 13729  	// If the code is one that has been deserialized, increment the reference count
 13730  	// in the decoded tables.
 13731  
 13732  	if (*Tpcre2_code_8)(unsafe.Pointer(code)).Fflags&Tuint32_t(DPCRE2_DEREF_TABLES) != Tuint32_t(0) {
 13733  		ref_count = (*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables + uintptr(Dcbits_offset+Dcbit_length+256)
 13734  		*(*Tsize_t)(unsafe.Pointer(ref_count))++
 13735  	}
 13736  
 13737  	return newcode
 13738  }
 13739  
 13740  // ************************************************
 13741  //
 13742  //     Copy compiled code and character tables    *
 13743  //
 13744  
 13745  // Compiled JIT code cannot be copied, so the new compiled block has no
 13746  // associated JIT data. This version of code_copy also makes a separate copy of
 13747  // the character tables.
 13748  
 13749  func Xpcre2_code_copy_with_tables_8(tls *libc.TLS, code uintptr) uintptr { /* pcre2_compile.c:1227:27: */
 13750  	var ref_count uintptr
 13751  	var newcode uintptr
 13752  	var newtables uintptr
 13753  
 13754  	if code == uintptr(0) {
 13755  		return uintptr(0)
 13756  	}
 13757  	newcode = (*struct {
 13758  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 13759  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmalloc})).f(tls, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fblocksize, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmemory_data)
 13760  	if newcode == uintptr(0) {
 13761  		return uintptr(0)
 13762  	}
 13763  	libc.X__builtin___memcpy_chk(tls, newcode, code, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fblocksize, libc.X__builtin_object_size(tls, newcode, 0))
 13764  	(*Tpcre2_code_8)(unsafe.Pointer(newcode)).Fexecutable_jit = uintptr(0)
 13765  
 13766  	newtables = (*struct {
 13767  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 13768  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmalloc})).f(tls, uint64(Dcbits_offset+Dcbit_length+256)+uint64(unsafe.Sizeof(Tsize_t(0))),
 13769  		(*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmemory_data)
 13770  	if newtables == uintptr(0) {
 13771  		(*struct {
 13772  			f func(*libc.TLS, uintptr, uintptr)
 13773  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Ffree})).f(tls, newcode, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmemory_data)
 13774  		return uintptr(0)
 13775  	}
 13776  	libc.X__builtin___memcpy_chk(tls, newtables, (*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables, uint64(Dcbits_offset+Dcbit_length+256), libc.X__builtin_object_size(tls, newtables, 0))
 13777  	ref_count = newtables + uintptr(Dcbits_offset+Dcbit_length+256)
 13778  	*(*Tsize_t)(unsafe.Pointer(ref_count)) = uint64(1)
 13779  
 13780  	(*Tpcre2_code_8)(unsafe.Pointer(newcode)).Ftables = newtables
 13781  	*(*Tuint32_t)(unsafe.Pointer(newcode + 96)) |= Tuint32_t(DPCRE2_DEREF_TABLES)
 13782  	return newcode
 13783  }
 13784  
 13785  // ************************************************
 13786  //
 13787  //               Free compiled code               *
 13788  //
 13789  
 13790  func Xpcre2_code_free_8(tls *libc.TLS, code uintptr) { /* pcre2_compile.c:1263:1: */
 13791  	var ref_count uintptr
 13792  
 13793  	if code != uintptr(0) {
 13794  		if (*Tpcre2_code_8)(unsafe.Pointer(code)).Fexecutable_jit != uintptr(0) {
 13795  			X_pcre2_jit_free_8(tls, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fexecutable_jit, code)
 13796  		}
 13797  
 13798  		if (*Tpcre2_code_8)(unsafe.Pointer(code)).Fflags&Tuint32_t(DPCRE2_DEREF_TABLES) != Tuint32_t(0) {
 13799  			// Decoded tables belong to the codes after deserialization, and they must
 13800  			//     be freed when there are no more references to them. The *ref_count should
 13801  			//     always be > 0.
 13802  
 13803  			ref_count = (*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables + uintptr(Dcbits_offset+Dcbit_length+256)
 13804  			if *(*Tsize_t)(unsafe.Pointer(ref_count)) > uint64(0) {
 13805  				*(*Tsize_t)(unsafe.Pointer(ref_count))--
 13806  				if *(*Tsize_t)(unsafe.Pointer(ref_count)) == uint64(0) {
 13807  					(*struct {
 13808  						f func(*libc.TLS, uintptr, uintptr)
 13809  					})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Ffree})).f(tls, (*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmemory_data)
 13810  				}
 13811  			}
 13812  		}
 13813  
 13814  		(*struct {
 13815  			f func(*libc.TLS, uintptr, uintptr)
 13816  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Ffree})).f(tls, code, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fmemctl.Fmemory_data)
 13817  	}
 13818  }
 13819  
 13820  // ************************************************
 13821  //
 13822  //         Read a number, possibly signed         *
 13823  //
 13824  
 13825  // This function is used to read numbers in the pattern. The initial pointer
 13826  // must be the sign or first digit of the number. When relative values (introduced
 13827  // by + or -) are allowed, they are relative group numbers, and the result must be
 13828  // greater than zero.
 13829  //
 13830  // Arguments:
 13831  //   ptrptr      points to the character pointer variable
 13832  //   ptrend      points to the end of the input string
 13833  //   allow_sign  if < 0, sign not allowed; if >= 0, sign is relative to this
 13834  //   max_value   the largest number allowed
 13835  //   max_error   the error to give for an over-large number
 13836  //   intptr      where to put the result
 13837  //   errcodeptr  where to put an error code
 13838  //
 13839  // Returns:      TRUE  - a number was read
 13840  //               FALSE - errorcode == 0 => no number was found
 13841  //                       errorcode != 0 => an error occurred
 13842  
 13843  func read_number(tls *libc.TLS, ptrptr uintptr, ptrend TPCRE2_SPTR8, allow_sign Tint32_t, max_value Tuint32_t, max_error Tuint32_t, intptr uintptr, errorcodeptr uintptr) TBOOL { /* pcre2_compile.c:1317:1: */
 13844  	var sign int32
 13845  	var n Tuint32_t
 13846  	var ptr TPCRE2_SPTR8
 13847  	var yield TBOOL
 13848  	sign = 0
 13849  	n = Tuint32_t(0)
 13850  	ptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr))
 13851  	yield = DFALSE
 13852  
 13853  	*(*int32)(unsafe.Pointer(errorcodeptr)) = 0
 13854  
 13855  	if !(allow_sign >= 0 && ptr < ptrend) {
 13856  		goto __1
 13857  	}
 13858  
 13859  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == '\053') {
 13860  		goto __2
 13861  	}
 13862  
 13863  	sign = +1
 13864  	max_value = max_value - Tuint32_t(allow_sign)
 13865  	ptr++
 13866  	goto __3
 13867  __2:
 13868  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == '\055') {
 13869  		goto __4
 13870  	}
 13871  
 13872  	sign = -1
 13873  	ptr++
 13874  __4:
 13875  	;
 13876  __3:
 13877  	;
 13878  __1:
 13879  	;
 13880  
 13881  	if !(ptr >= ptrend || !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) <= '\071')) {
 13882  		goto __5
 13883  	}
 13884  	return DFALSE
 13885  __5:
 13886  	;
 13887  __6:
 13888  	if !(ptr < ptrend && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) <= '\071')) {
 13889  		goto __7
 13890  	}
 13891  
 13892  	n = n*Tuint32_t(10) + Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1)))) - Tuint32_t('\060')
 13893  	if !(n > max_value) {
 13894  		goto __8
 13895  	}
 13896  
 13897  	*(*int32)(unsafe.Pointer(errorcodeptr)) = int32(max_error)
 13898  	goto EXIT
 13899  __8:
 13900  	;
 13901  	goto __6
 13902  __7:
 13903  	;
 13904  
 13905  	if !(allow_sign >= 0 && sign != 0) {
 13906  		goto __9
 13907  	}
 13908  
 13909  	if !(n == Tuint32_t(0)) {
 13910  		goto __10
 13911  	}
 13912  
 13913  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR26 // +0 and -0 are not allowed
 13914  	goto EXIT
 13915  __10:
 13916  	;
 13917  
 13918  	if !(sign > 0) {
 13919  		goto __11
 13920  	}
 13921  	n = n + Tuint32_t(allow_sign)
 13922  	goto __12
 13923  __11:
 13924  	if !(int32(n) > allow_sign) {
 13925  		goto __13
 13926  	}
 13927  
 13928  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR15 // Non-existent subpattern
 13929  	goto EXIT
 13930  	goto __14
 13931  __13:
 13932  	n = Tuint32_t(allow_sign+1) - n
 13933  __14:
 13934  	;
 13935  __12:
 13936  	;
 13937  __9:
 13938  	;
 13939  
 13940  	yield = DTRUE
 13941  
 13942  EXIT:
 13943  	*(*int32)(unsafe.Pointer(intptr)) = int32(n)
 13944  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = ptr
 13945  	return yield
 13946  }
 13947  
 13948  // ************************************************
 13949  //
 13950  //         Read repeat counts                     *
 13951  //
 13952  
 13953  // Read an item of the form {n,m} and return the values if non-NULL pointers
 13954  // are supplied. Repeat counts must be less than 65536 (MAX_REPEAT_COUNT); a
 13955  // larger value is used for "unlimited". We have to use signed arguments for
 13956  // read_number() because it is capable of returning a signed value.
 13957  //
 13958  // Arguments:
 13959  //   ptrptr         points to pointer to character after'{'
 13960  //   ptrend         pointer to end of input
 13961  //   minp           if not NULL, pointer to int for min
 13962  //   maxp           if not NULL, pointer to int for max (-1 if no max)
 13963  //                  returned as -1 if no max
 13964  //   errorcodeptr   points to error code variable
 13965  //
 13966  // Returns:         FALSE if not a repeat quantifier, errorcode set zero
 13967  //                  FALSE on error, with errorcode set non-zero
 13968  //                  TRUE on success, with pointer updated to point after '}'
 13969  
 13970  func read_repeat_counts(tls *libc.TLS, ptrptr uintptr, ptrend TPCRE2_SPTR8, minp uintptr, maxp uintptr, errorcodeptr uintptr) TBOOL { /* pcre2_compile.c:1403:1: */
 13971  	bp := tls.Alloc(16)
 13972  	defer tls.Free(16)
 13973  
 13974  	// var p TPCRE2_SPTR8 at bp, 8
 13975  
 13976  	var yield TBOOL
 13977  	var had_comma TBOOL
 13978  	// var min Tint32_t at bp+8, 4
 13979  
 13980  	// var max Tint32_t at bp+12, 4
 13981  
 13982  	var c Tuint32_t
 13983  	yield = DFALSE
 13984  	had_comma = DFALSE
 13985  	*(*Tint32_t)(unsafe.Pointer(bp + 8 /* min */)) = 0
 13986  	*(*Tint32_t)(unsafe.Pointer(bp + 12 /* max */)) = int32(DMAX_REPEAT_COUNT + uint32(1)) // This value is larger than MAX_REPEAT_COUNT
 13987  
 13988  	// Check the syntax
 13989  
 13990  	*(*int32)(unsafe.Pointer(errorcodeptr)) = 0
 13991  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr))
 13992  __1:
 13993  	;
 13994  
 13995  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) >= ptrend) {
 13996  		goto __4
 13997  	}
 13998  	return DFALSE
 13999  __4:
 14000  	;
 14001  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */)))))
 14002  	if !(c >= Tuint32_t('\060') && c <= Tuint32_t('\071')) {
 14003  		goto __5
 14004  	}
 14005  	goto __2
 14006  __5:
 14007  	;
 14008  	if !(c == Tuint32_t('\175')) {
 14009  		goto __6
 14010  	}
 14011  	goto __3
 14012  __6:
 14013  	;
 14014  	if !(c == Tuint32_t('\054')) {
 14015  		goto __7
 14016  	}
 14017  
 14018  	if !(had_comma != 0) {
 14019  		goto __9
 14020  	}
 14021  	return DFALSE
 14022  __9:
 14023  	;
 14024  	had_comma = DTRUE
 14025  	goto __8
 14026  __7:
 14027  	return DFALSE
 14028  __8:
 14029  	;
 14030  	goto __2
 14031  __2:
 14032  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */))++
 14033  	goto __1
 14034  	goto __3
 14035  __3:
 14036  	;
 14037  
 14038  	// The only error from read_number() is for a number that is too big.
 14039  
 14040  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr))
 14041  	if !!(read_number(tls, bp, ptrend, -1, DMAX_REPEAT_COUNT, ERR5, bp+8, errorcodeptr) != 0) {
 14042  		goto __10
 14043  	}
 14044  	goto EXIT
 14045  __10:
 14046  	;
 14047  
 14048  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))) == '\175') {
 14049  		goto __11
 14050  	}
 14051  
 14052  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */))++
 14053  	*(*Tint32_t)(unsafe.Pointer(bp + 12 /* max */)) = *(*Tint32_t)(unsafe.Pointer(bp + 8 /* min */))
 14054  	goto __12
 14055  __11:
 14056  
 14057  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)), 1)))) != '\175') {
 14058  		goto __13
 14059  	}
 14060  
 14061  	if !!(read_number(tls, bp, ptrend, -1, DMAX_REPEAT_COUNT, ERR5, bp+12,
 14062  		errorcodeptr) != 0) {
 14063  		goto __14
 14064  	}
 14065  	goto EXIT
 14066  __14:
 14067  	;
 14068  	if !(*(*Tint32_t)(unsafe.Pointer(bp + 12)) < *(*Tint32_t)(unsafe.Pointer(bp + 8))) {
 14069  		goto __15
 14070  	}
 14071  
 14072  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR4
 14073  	goto EXIT
 14074  __15:
 14075  	;
 14076  __13:
 14077  	;
 14078  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */))++
 14079  __12:
 14080  	;
 14081  
 14082  	yield = DTRUE
 14083  	if !(minp != uintptr(0)) {
 14084  		goto __16
 14085  	}
 14086  	*(*Tuint32_t)(unsafe.Pointer(minp)) = Tuint32_t(*(*Tint32_t)(unsafe.Pointer(bp + 8 /* min */)))
 14087  __16:
 14088  	;
 14089  	if !(maxp != uintptr(0)) {
 14090  		goto __17
 14091  	}
 14092  	*(*Tuint32_t)(unsafe.Pointer(maxp)) = Tuint32_t(*(*Tint32_t)(unsafe.Pointer(bp + 12 /* max */)))
 14093  __17:
 14094  	;
 14095  
 14096  	// Update the pattern pointer
 14097  
 14098  EXIT:
 14099  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */))
 14100  	return yield
 14101  }
 14102  
 14103  // ************************************************
 14104  //
 14105  //            Handle escapes                      *
 14106  //
 14107  
 14108  // This function is called when a \ has been encountered. It either returns a
 14109  // positive value for a simple escape such as \d, or 0 for a data character, which
 14110  // is placed in chptr. A backreference to group n is returned as negative n. On
 14111  // entry, ptr is pointing at the character after \. On exit, it points after the
 14112  // final code unit of the escape sequence.
 14113  //
 14114  // This function is also called from pcre2_substitute() to handle escape sequences
 14115  // in replacement strings. In this case, the cb argument is NULL, and in the case
 14116  // of escapes that have further processing, only sequences that define a data
 14117  // character are recognised. The isclass argument is not relevant; the options
 14118  // argument is the final value of the compiled pattern's options.
 14119  //
 14120  // Arguments:
 14121  //   ptrptr         points to the input position pointer
 14122  //   ptrend         points to the end of the input
 14123  //   chptr          points to a returned data character
 14124  //   errorcodeptr   points to the errorcode variable (containing zero)
 14125  //   options        the current options bits
 14126  //   isclass        TRUE if inside a character class
 14127  //   cb             compile data block or NULL when called from pcre2_substitute()
 14128  //
 14129  // Returns:         zero => a data character
 14130  //                  positive => a special escape sequence
 14131  //                  negative => a numerical back reference
 14132  //                  on error, errorcodeptr is set non-zero
 14133  
 14134  func X_pcre2_check_escape_8(tls *libc.TLS, ptrptr uintptr, ptrend TPCRE2_SPTR8, chptr uintptr, errorcodeptr uintptr, options Tuint32_t, extra_options Tuint32_t, isclass TBOOL, cb uintptr) int32 { /* pcre2_compile.c:1502:1: */
 14135  	bp := tls.Alloc(32)
 14136  	defer tls.Free(32)
 14137  
 14138  	var utf TBOOL
 14139  	// var ptr TPCRE2_SPTR8 at bp+24, 8
 14140  
 14141  	var c Tuint32_t
 14142  	var cc Tuint32_t
 14143  	var escape int32
 14144  	var i int32
 14145  	// var p TPCRE2_SPTR8 at bp, 8
 14146  
 14147  	var hptr TPCRE2_SPTR8
 14148  	var xc Tuint32_t
 14149  	// var p1 TPCRE2_SPTR8 at bp+8, 8
 14150  
 14151  	var xc1 Tuint32_t
 14152  	// var s int32 at bp+16, 4
 14153  
 14154  	var oldptr TPCRE2_SPTR8
 14155  	var overflow TBOOL
 14156  	var alt_bsux TBOOL
 14157  	utf = libc.Bool32(options&DPCRE2_UTF != Tuint32_t(0))
 14158  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr))
 14159  	escape = 0
 14160  
 14161  	// If backslash is at the end of the string, it's an error.
 14162  
 14163  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend) {
 14164  		goto __1
 14165  	}
 14166  
 14167  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR1
 14168  	return 0
 14169  __1:
 14170  	;
 14171  
 14172  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)), 1))))
 14173  	if !(utf != 0 && c >= 0xc0) {
 14174  		goto __2
 14175  	}
 14176  	if !(c&0x20 == Tuint32_t(0)) {
 14177  		goto __3
 14178  	}
 14179  	c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)), 1))))&0x3f
 14180  	goto __4
 14181  __3:
 14182  	if !(c&0x10 == Tuint32_t(0)) {
 14183  		goto __5
 14184  	}
 14185  	c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 1)))&0x3f
 14186  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) += uintptr(2)
 14187  	goto __6
 14188  __5:
 14189  	if !(c&0x08 == Tuint32_t(0)) {
 14190  		goto __7
 14191  	}
 14192  	c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 2)))&0x3f
 14193  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) += uintptr(3)
 14194  	goto __8
 14195  __7:
 14196  	if !(c&0x04 == Tuint32_t(0)) {
 14197  		goto __9
 14198  	}
 14199  	c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 3)))&0x3f
 14200  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) += uintptr(4)
 14201  	goto __10
 14202  __9:
 14203  	c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 4)))&0x3f
 14204  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) += uintptr(5)
 14205  __10:
 14206  	;
 14207  __8:
 14208  	;
 14209  __6:
 14210  	;
 14211  __4:
 14212  	;
 14213  __2:
 14214  	;
 14215  
 14216  	// Get character value, increment pointer
 14217  	*(*int32)(unsafe.Pointer(errorcodeptr)) = 0 // Be optimistic
 14218  
 14219  	// Non-alphanumerics are literals, so we just leave the value in c. An initial
 14220  	// value test saves a memory lookup for code points outside the alphanumeric
 14221  	// range.
 14222  
 14223  	if !(c < Tuint32_t('\060') || c > Tuint32_t('\172')) {
 14224  		goto __11
 14225  	}
 14226  	goto __12
 14227  __11:
 14228  	if !(libc.AssignInt32(&i, int32(escapes[c-Tuint32_t('\060')])) != 0) {
 14229  		goto __13
 14230  	}
 14231  
 14232  	if !(i > 0) {
 14233  		goto __15
 14234  	}
 14235  
 14236  	c = Tuint32_t(i)
 14237  	if !(c == Tuint32_t('\015') && extra_options&DPCRE2_EXTRA_ESCAPED_CR_IS_LF != Tuint32_t(0)) {
 14238  		goto __17
 14239  	}
 14240  	c = Tuint32_t('\012')
 14241  __17:
 14242  	;
 14243  	goto __16
 14244  __15: /* Negative table entry */
 14245  
 14246  	escape = -i // Else return a special escape
 14247  	if !(cb != uintptr(0) && (escape == ESC_P || escape == ESC_p || escape == ESC_X)) {
 14248  		goto __18
 14249  	}
 14250  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_HASBKPORX)
 14251  __18:
 14252  	; // Note \P, \p, or \X
 14253  
 14254  	// Perl supports \N{name} for character names and \N{U+dddd} for numerical
 14255  	//     Unicode code points, as well as plain \N for "not newline". PCRE does not
 14256  	//     support \N{name}. However, it does support quantification such as \N{2,3},
 14257  	//     so if \N{ is not followed by U+dddd we check for a quantifier.
 14258  
 14259  	if !(escape == ESC_N && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\173') {
 14260  		goto __19
 14261  	}
 14262  
 14263  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* p */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + uintptr(1)
 14264  
 14265  	// \N{U+ can be handled by the \x{ code. However, this construction is
 14266  	//       not valid in EBCDIC environments because it specifies a Unicode
 14267  	//       character, not a codepoint in the local code. For example \N{U+0041}
 14268  	//       must be "A" in all environments. Also, in Perl, \N{U+ forces Unicode
 14269  	//       casing semantics for the entire pattern, so allow it only in UTF (i.e.
 14270  	//       Unicode) mode.
 14271  
 14272  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))/1 > int64(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))) == '\125' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) + 1))) == '\053') {
 14273  		goto __20
 14274  	}
 14275  
 14276  	if !(utf != 0) {
 14277  		goto __22
 14278  	}
 14279  
 14280  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) + uintptr(1)
 14281  	escape = 0 // Not a fancy escape after all
 14282  	goto COME_FROM_NU
 14283  	goto __23
 14284  __22:
 14285  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR93
 14286  __23:
 14287  	;
 14288  	goto __21
 14289  __20:
 14290  
 14291  	if !(!(read_repeat_counts(tls, bp, ptrend, uintptr(0), uintptr(0), errorcodeptr) != 0) && *(*int32)(unsafe.Pointer(errorcodeptr)) == 0) {
 14292  		goto __24
 14293  	}
 14294  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR37
 14295  __24:
 14296  	;
 14297  __21:
 14298  	;
 14299  __19:
 14300  	;
 14301  __16:
 14302  	;
 14303  	goto __14
 14304  __13:
 14305  	alt_bsux =
 14306  		libc.Bool32(options&DPCRE2_ALT_BSUX|extra_options&DPCRE2_EXTRA_ALT_BSUX != Tuint32_t(0))
 14307  
 14308  	// Filter calls from pcre2_substitute().
 14309  
 14310  	if !(cb == uintptr(0)) {
 14311  		goto __25
 14312  	}
 14313  
 14314  	if !(c != Tuint32_t('\143') && c != Tuint32_t('\157') && c != Tuint32_t('\170')) {
 14315  		goto __26
 14316  	}
 14317  
 14318  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR3
 14319  	return 0
 14320  __26:
 14321  	;
 14322  	alt_bsux = DFALSE // Do not modify \x handling
 14323  __25:
 14324  	;
 14325  
 14326  	switch c {
 14327  	// A number of Perl escapes are not handled by PCRE. We give an explicit
 14328  	//     error.
 14329  
 14330  	case Tuint32_t('\106'):
 14331  		goto __28
 14332  	case Tuint32_t('\154'):
 14333  		goto __29
 14334  	case Tuint32_t('\114'):
 14335  		goto __30
 14336  
 14337  	// \u is unrecognized when neither PCRE2_ALT_BSUX nor PCRE2_EXTRA_ALT_BSUX
 14338  	//     is set. Otherwise, \u must be followed by exactly four hex digits or, if
 14339  	//     PCRE2_EXTRA_ALT_BSUX is set, by any number of hex digits in braces.
 14340  	//     Otherwise it is a lowercase u letter. This gives some compatibility with
 14341  	//     ECMAScript (aka JavaScript).
 14342  
 14343  	case Tuint32_t('\165'):
 14344  		goto __31
 14345  
 14346  	// \U is unrecognized unless PCRE2_ALT_BSUX or PCRE2_EXTRA_ALT_BSUX is set,
 14347  	//     in which case it is an upper case letter.
 14348  
 14349  	case Tuint32_t('\125'):
 14350  		goto __32
 14351  
 14352  	// In a character class, \g is just a literal "g". Outside a character
 14353  	//     class, \g must be followed by one of a number of specific things:
 14354  	//
 14355  	//     (1) A number, either plain or braced. If positive, it is an absolute
 14356  	//     backreference. If negative, it is a relative backreference. This is a Perl
 14357  	//     5.10 feature.
 14358  	//
 14359  	//     (2) Perl 5.10 also supports \g{name} as a reference to a named group. This
 14360  	//     is part of Perl's movement towards a unified syntax for back references. As
 14361  	//     this is synonymous with \k{name}, we fudge it up by pretending it really
 14362  	//     was \k{name}.
 14363  	//
 14364  	//     (3) For Oniguruma compatibility we also support \g followed by a name or a
 14365  	//     number either in angle brackets or in single quotes. However, these are
 14366  	//     (possibly recursive) subroutine calls, _not_ backreferences. We return
 14367  	//     the ESC_g code.
 14368  	//
 14369  	//     Summary: Return a negative number for a numerical back reference, ESC_k for
 14370  	//     a named back reference, and ESC_g for a named or numbered subroutine call.
 14371  	//
 14372  
 14373  	case Tuint32_t('\147'):
 14374  		goto __33
 14375  
 14376  	// The handling of escape sequences consisting of a string of digits
 14377  	//     starting with one that is not zero is not straightforward. Perl has changed
 14378  	//     over the years. Nowadays \g{} for backreferences and \o{} for octal are
 14379  	//     recommended to avoid the ambiguities in the old syntax.
 14380  	//
 14381  	//     Outside a character class, the digits are read as a decimal number. If the
 14382  	//     number is less than 10, or if there are that many previous extracting left
 14383  	//     brackets, it is a back reference. Otherwise, up to three octal digits are
 14384  	//     read to form an escaped character code. Thus \123 is likely to be octal 123
 14385  	//     (cf \0123, which is octal 012 followed by the literal 3).
 14386  	//
 14387  	//     Inside a character class, \ followed by a digit is always either a literal
 14388  	//     8 or 9 or an octal number.
 14389  
 14390  	case Tuint32_t('\061'):
 14391  		goto __34
 14392  	case Tuint32_t('\062'):
 14393  		goto __35
 14394  	case Tuint32_t('\063'):
 14395  		goto __36
 14396  	case Tuint32_t('\064'):
 14397  		goto __37
 14398  	case Tuint32_t('\065'):
 14399  		goto __38
 14400  	case Tuint32_t('\066'):
 14401  		goto __39
 14402  	case Tuint32_t('\067'):
 14403  		goto __40
 14404  	case Tuint32_t('\070'):
 14405  		goto __41
 14406  	case Tuint32_t('\071'):
 14407  		goto __42
 14408  
 14409  	// Fall through
 14410  
 14411  	// \0 always starts an octal number, but we may drop through to here with a
 14412  	//     larger first octal digit. The original code used just to take the least
 14413  	//     significant 8 bits of octal numbers (I think this is what early Perls used
 14414  	//     to do). Nowadays we allow for larger numbers in UTF-8 mode and 16-bit mode,
 14415  	//     but no more than 3 octal digits.
 14416  
 14417  	case Tuint32_t('\060'):
 14418  		goto __43
 14419  
 14420  	// \o is a relatively new Perl feature, supporting a more general way of
 14421  	//     specifying character codes in octal. The only supported form is \o{ddd}.
 14422  
 14423  	case Tuint32_t('\157'):
 14424  		goto __44
 14425  
 14426  	// When PCRE2_ALT_BSUX or PCRE2_EXTRA_ALT_BSUX is set, \x must be followed
 14427  	//     by two hexadecimal digits. Otherwise it is a lowercase x letter.
 14428  
 14429  	case Tuint32_t('\170'):
 14430  		goto __45
 14431  
 14432  	// The handling of \c is different in ASCII and EBCDIC environments. In an
 14433  	//     ASCII (or Unicode) environment, an error is given if the character
 14434  	//     following \c is not a printable ASCII character. Otherwise, the following
 14435  	//     character is upper-cased if it is a letter, and after that the 0x40 bit is
 14436  	//     flipped. The result is the value of the escape.
 14437  	//
 14438  	//     In an EBCDIC environment the handling of \c is compatible with the
 14439  	//     specification in the perlebcdic document. The following character must be
 14440  	//     a letter or one of small number of special characters. These provide a
 14441  	//     means of defining the character values 0-31.
 14442  	//
 14443  	//     For testing the EBCDIC handling of \c in an ASCII environment, recognize
 14444  	//     the EBCDIC value of 'c' explicitly.
 14445  
 14446  	case Tuint32_t('\143'):
 14447  		goto __46
 14448  
 14449  	// Any other alphanumeric following \ is an error. Perl gives an error only
 14450  	//     if in warning mode, but PCRE doesn't have a warning mode.
 14451  
 14452  	default:
 14453  		goto __47
 14454  	}
 14455  	goto __27
 14456  
 14457  	// A number of Perl escapes are not handled by PCRE. We give an explicit
 14458  	//     error.
 14459  
 14460  __28:
 14461  __29:
 14462  __30:
 14463  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR37
 14464  	goto __27
 14465  
 14466  	// \u is unrecognized when neither PCRE2_ALT_BSUX nor PCRE2_EXTRA_ALT_BSUX
 14467  	//     is set. Otherwise, \u must be followed by exactly four hex digits or, if
 14468  	//     PCRE2_EXTRA_ALT_BSUX is set, by any number of hex digits in braces.
 14469  	//     Otherwise it is a lowercase u letter. This gives some compatibility with
 14470  	//     ECMAScript (aka JavaScript).
 14471  
 14472  __31:
 14473  	if !!(alt_bsux != 0) {
 14474  		goto __48
 14475  	}
 14476  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR37
 14477  	goto __49
 14478  __48:
 14479  
 14480  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend) {
 14481  		goto __50
 14482  	}
 14483  	goto __27
 14484  __50:
 14485  	;
 14486  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\173' && extra_options&DPCRE2_EXTRA_ALT_BSUX != Tuint32_t(0)) {
 14487  		goto __51
 14488  	}
 14489  
 14490  	hptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + uintptr(1)
 14491  	cc = Tuint32_t(0)
 14492  
 14493  __53:
 14494  	if !(hptr < ptrend && libc.AssignUint32(&xc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(hptr))])) != Tuint32_t(0xff)) {
 14495  		goto __54
 14496  	}
 14497  
 14498  	if !(cc&0xf0000000 != Tuint32_t(0)) {
 14499  		goto __55
 14500  	} /* Test for 32-bit overflow */
 14501  
 14502  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR77
 14503  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) = hptr // Show where
 14504  	goto __54                                                  // *hptr != } will cause another break below
 14505  __55:
 14506  	;
 14507  	cc = cc<<4 | xc
 14508  	hptr++
 14509  	goto __53
 14510  __54:
 14511  	;
 14512  
 14513  	if !(hptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))+uintptr(1) || hptr >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(hptr))) != '\175') {
 14514  		goto __56
 14515  	} // No } terminator
 14516  	goto __27
 14517  __56:
 14518  	; // Hex escape not recognized
 14519  
 14520  	c = cc // Accept the code point
 14521  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) = hptr + uintptr(1)
 14522  	goto __52
 14523  __51: /* Must be exactly 4 hex digits */
 14524  
 14525  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))/1 < int64(4)) {
 14526  		goto __57
 14527  	}
 14528  	goto __27
 14529  __57:
 14530  	; // Less than 4 chars
 14531  	if !(libc.AssignUint32(&cc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))])) == Tuint32_t(0xff)) {
 14532  		goto __58
 14533  	}
 14534  	goto __27
 14535  __58:
 14536  	; // Not a hex digit
 14537  	if !(libc.AssignUint32(&xc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 1))])) == Tuint32_t(0xff)) {
 14538  		goto __59
 14539  	}
 14540  	goto __27
 14541  __59:
 14542  	; // Not a hex digit
 14543  	cc = cc<<4 | xc
 14544  	if !(libc.AssignUint32(&xc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 2))])) == Tuint32_t(0xff)) {
 14545  		goto __60
 14546  	}
 14547  	goto __27
 14548  __60:
 14549  	; // Not a hex digit
 14550  	cc = cc<<4 | xc
 14551  	if !(libc.AssignUint32(&xc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 3))])) == Tuint32_t(0xff)) {
 14552  		goto __61
 14553  	}
 14554  	goto __27
 14555  __61:
 14556  	; // Not a hex digit
 14557  	c = cc<<4 | xc
 14558  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) += uintptr(4)
 14559  __52:
 14560  	;
 14561  
 14562  	if !(utf != 0) {
 14563  		goto __62
 14564  	}
 14565  
 14566  	if !(c > 0x10ffff) {
 14567  		goto __64
 14568  	}
 14569  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR77
 14570  	goto __65
 14571  __64:
 14572  	if !(c >= Tuint32_t(0xd800) && c <= Tuint32_t(0xdfff) && extra_options&DPCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES == Tuint32_t(0)) {
 14573  		goto __66
 14574  	}
 14575  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR73
 14576  __66:
 14577  	;
 14578  __65:
 14579  	;
 14580  	goto __63
 14581  __62:
 14582  	if !(c > uint32(0xffffffff)>>(32-DPCRE2_CODE_UNIT_WIDTH)) {
 14583  		goto __67
 14584  	}
 14585  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR77
 14586  __67:
 14587  	;
 14588  __63:
 14589  	;
 14590  __49:
 14591  	;
 14592  	goto __27
 14593  
 14594  	// \U is unrecognized unless PCRE2_ALT_BSUX or PCRE2_EXTRA_ALT_BSUX is set,
 14595  	//     in which case it is an upper case letter.
 14596  
 14597  __32:
 14598  	if !!(alt_bsux != 0) {
 14599  		goto __68
 14600  	}
 14601  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR37
 14602  __68:
 14603  	;
 14604  	goto __27
 14605  
 14606  	// In a character class, \g is just a literal "g". Outside a character
 14607  	//     class, \g must be followed by one of a number of specific things:
 14608  	//
 14609  	//     (1) A number, either plain or braced. If positive, it is an absolute
 14610  	//     backreference. If negative, it is a relative backreference. This is a Perl
 14611  	//     5.10 feature.
 14612  	//
 14613  	//     (2) Perl 5.10 also supports \g{name} as a reference to a named group. This
 14614  	//     is part of Perl's movement towards a unified syntax for back references. As
 14615  	//     this is synonymous with \k{name}, we fudge it up by pretending it really
 14616  	//     was \k{name}.
 14617  	//
 14618  	//     (3) For Oniguruma compatibility we also support \g followed by a name or a
 14619  	//     number either in angle brackets or in single quotes. However, these are
 14620  	//     (possibly recursive) subroutine calls, _not_ backreferences. We return
 14621  	//     the ESC_g code.
 14622  	//
 14623  	//     Summary: Return a negative number for a numerical back reference, ESC_k for
 14624  	//     a named back reference, and ESC_g for a named or numbered subroutine call.
 14625  	//
 14626  
 14627  __33:
 14628  	if !(isclass != 0) {
 14629  		goto __69
 14630  	}
 14631  	goto __27
 14632  __69:
 14633  	;
 14634  
 14635  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend) {
 14636  		goto __70
 14637  	}
 14638  
 14639  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR57
 14640  	goto __27
 14641  __70:
 14642  	;
 14643  
 14644  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\074' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\047') {
 14645  		goto __71
 14646  	}
 14647  
 14648  	escape = ESC_g
 14649  	goto __27
 14650  __71:
 14651  	;
 14652  
 14653  	// If there is a brace delimiter, try to read a numerical reference. If
 14654  	//     there isn't one, assume we have a name and treat it as \k.
 14655  
 14656  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\173') {
 14657  		goto __72
 14658  	}
 14659  
 14660  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* p1 */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + uintptr(1)
 14661  	if !!(read_number(tls, bp+8, ptrend, int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount), DMAX_GROUP_NUMBER, ERR61, bp+16,
 14662  		errorcodeptr) != 0) {
 14663  		goto __74
 14664  	}
 14665  
 14666  	if !(*(*int32)(unsafe.Pointer(errorcodeptr)) == 0) {
 14667  		goto __75
 14668  	}
 14669  	escape = ESC_k
 14670  __75:
 14671  	; // No number found
 14672  	goto __27
 14673  __74:
 14674  	;
 14675  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\175') {
 14676  		goto __76
 14677  	}
 14678  
 14679  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR57
 14680  	goto __27
 14681  __76:
 14682  	;
 14683  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + uintptr(1)
 14684  	goto __73
 14685  __72:
 14686  
 14687  	if !!(read_number(tls, bp+24, ptrend, int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount), DMAX_GROUP_NUMBER, ERR61, bp+16,
 14688  		errorcodeptr) != 0) {
 14689  		goto __77
 14690  	}
 14691  
 14692  	if !(*(*int32)(unsafe.Pointer(errorcodeptr)) == 0) {
 14693  		goto __78
 14694  	}
 14695  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR57
 14696  __78:
 14697  	; // No number found
 14698  	goto __27
 14699  __77:
 14700  	;
 14701  __73:
 14702  	;
 14703  
 14704  	if !(*(*int32)(unsafe.Pointer(bp + 16)) <= 0) {
 14705  		goto __79
 14706  	}
 14707  
 14708  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR15
 14709  	goto __27
 14710  __79:
 14711  	;
 14712  
 14713  	escape = -*(*int32)(unsafe.Pointer(bp + 16 /* s */))
 14714  	goto __27
 14715  
 14716  	// The handling of escape sequences consisting of a string of digits
 14717  	//     starting with one that is not zero is not straightforward. Perl has changed
 14718  	//     over the years. Nowadays \g{} for backreferences and \o{} for octal are
 14719  	//     recommended to avoid the ambiguities in the old syntax.
 14720  	//
 14721  	//     Outside a character class, the digits are read as a decimal number. If the
 14722  	//     number is less than 10, or if there are that many previous extracting left
 14723  	//     brackets, it is a back reference. Otherwise, up to three octal digits are
 14724  	//     read to form an escaped character code. Thus \123 is likely to be octal 123
 14725  	//     (cf \0123, which is octal 012 followed by the literal 3).
 14726  	//
 14727  	//     Inside a character class, \ followed by a digit is always either a literal
 14728  	//     8 or 9 or an octal number.
 14729  
 14730  __34:
 14731  __35:
 14732  __36:
 14733  __37:
 14734  __38:
 14735  __39:
 14736  __40:
 14737  __41:
 14738  __42:
 14739  
 14740  	if !!(isclass != 0) {
 14741  		goto __80
 14742  	}
 14743  
 14744  	oldptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))
 14745  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))-- // Back to the digit
 14746  
 14747  	// As we know we are at a digit, the only possible error from
 14748  	//       read_number() is a number that is too large to be a group number. In this
 14749  	//       case we fall through handle this as not a group reference. If we have
 14750  	//       read a small enough number, check for a back reference.
 14751  	//
 14752  	//       \1 to \9 are always back references. \8x and \9x are too; \1x to \7x
 14753  	//       are octal escapes if there are not that many previous captures.
 14754  
 14755  	if !(read_number(tls, bp+24, ptrend, -1, uint32(2147483647/10-1), uint32(0), bp+16, errorcodeptr) != 0 && (*(*int32)(unsafe.Pointer(bp + 16)) < 10 || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(oldptr + libc.UintptrFromInt32(-1)))) >= '\070' || *(*int32)(unsafe.Pointer(bp + 16)) <= int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount))) {
 14756  		goto __81
 14757  	}
 14758  
 14759  	if !(*(*int32)(unsafe.Pointer(bp + 16)) > int32(DMAX_GROUP_NUMBER)) {
 14760  		goto __82
 14761  	}
 14762  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR61
 14763  	goto __83
 14764  __82:
 14765  	escape = -*(*int32)(unsafe.Pointer(bp + 16 /* s */))
 14766  __83:
 14767  	; // Indicates a back reference
 14768  	goto __27
 14769  __81:
 14770  	;
 14771  
 14772  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) = oldptr // Put the pointer back and fall through
 14773  __80:
 14774  	;
 14775  
 14776  	// Handle a digit following \ when the number is not a back reference, or
 14777  	//     we are within a character class. If the first digit is 8 or 9, Perl used to
 14778  	//     generate a binary zero and then treat the digit as a following literal. At
 14779  	//     least by Perl 5.18 this changed so as not to insert the binary zero.
 14780  
 14781  	if !(c >= Tuint32_t('\070')) {
 14782  		goto __84
 14783  	}
 14784  	goto __27
 14785  __84:
 14786  	;
 14787  
 14788  	// Fall through
 14789  
 14790  	// \0 always starts an octal number, but we may drop through to here with a
 14791  	//     larger first octal digit. The original code used just to take the least
 14792  	//     significant 8 bits of octal numbers (I think this is what early Perls used
 14793  	//     to do). Nowadays we allow for larger numbers in UTF-8 mode and 16-bit mode,
 14794  	//     but no more than 3 octal digits.
 14795  
 14796  __43:
 14797  	c = c - Tuint32_t('\060')
 14798  __85:
 14799  	if !(libc.PostIncInt32(&i, 1) < 2 && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) <= '\067') {
 14800  		goto __86
 14801  	}
 14802  	c = c*Tuint32_t(8) + Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)), 1)))) - Tuint32_t('\060')
 14803  	goto __85
 14804  __86:
 14805  	;
 14806  	if !(!(utf != 0) && c > Tuint32_t(0xff)) {
 14807  		goto __87
 14808  	}
 14809  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR51
 14810  __87:
 14811  	;
 14812  	goto __27
 14813  
 14814  	// \o is a relatively new Perl feature, supporting a more general way of
 14815  	//     specifying character codes in octal. The only supported form is \o{ddd}.
 14816  
 14817  __44:
 14818  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)), 1)))) != '\173') {
 14819  		goto __88
 14820  	}
 14821  
 14822  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))--
 14823  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR55
 14824  	goto __89
 14825  __88:
 14826  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\175') {
 14827  		goto __90
 14828  	}
 14829  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR78
 14830  	goto __91
 14831  __90:
 14832  
 14833  	c = Tuint32_t(0)
 14834  	overflow = DFALSE
 14835  __92:
 14836  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) <= '\067') {
 14837  		goto __93
 14838  	}
 14839  
 14840  	cc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)), 1))))
 14841  	if !(c == Tuint32_t(0) && cc == Tuint32_t('\060')) {
 14842  		goto __94
 14843  	}
 14844  	goto __92
 14845  __94:
 14846  	; // Leading zeroes
 14847  	c = c<<3 + (cc - Tuint32_t('\060'))
 14848  	if !(c > func() uint32 {
 14849  		if utf != 0 {
 14850  			return 0x10ffff
 14851  		}
 14852  		return 0xff
 14853  	}()) {
 14854  		goto __95
 14855  	}
 14856  	overflow = DTRUE
 14857  	goto __93
 14858  __95:
 14859  	;
 14860  	goto __92
 14861  __93:
 14862  	;
 14863  	if !(overflow != 0) {
 14864  		goto __96
 14865  	}
 14866  
 14867  __98:
 14868  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) <= '\067') {
 14869  		goto __99
 14870  	}
 14871  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))++
 14872  	goto __98
 14873  __99:
 14874  	;
 14875  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR34
 14876  	goto __97
 14877  __96:
 14878  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)), 1)))) == '\175') {
 14879  		goto __100
 14880  	}
 14881  
 14882  	if !(utf != 0 && c >= Tuint32_t(0xd800) && c <= Tuint32_t(0xdfff) && extra_options&DPCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES == Tuint32_t(0)) {
 14883  		goto __102
 14884  	}
 14885  
 14886  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))--
 14887  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR73
 14888  __102:
 14889  	;
 14890  	goto __101
 14891  __100:
 14892  
 14893  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))--
 14894  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR64
 14895  __101:
 14896  	;
 14897  __97:
 14898  	;
 14899  __91:
 14900  	;
 14901  __89:
 14902  	;
 14903  	goto __27
 14904  
 14905  	// When PCRE2_ALT_BSUX or PCRE2_EXTRA_ALT_BSUX is set, \x must be followed
 14906  	//     by two hexadecimal digits. Otherwise it is a lowercase x letter.
 14907  
 14908  __45:
 14909  	if !(alt_bsux != 0) {
 14910  		goto __103
 14911  	}
 14912  
 14913  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))/1 < int64(2)) {
 14914  		goto __105
 14915  	}
 14916  	goto __27
 14917  __105:
 14918  	; // Less than 2 characters
 14919  	if !(libc.AssignUint32(&cc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))])) == Tuint32_t(0xff)) {
 14920  		goto __106
 14921  	}
 14922  	goto __27
 14923  __106:
 14924  	; // Not a hex digit
 14925  	if !(libc.AssignUint32(&xc1, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + 1))])) == Tuint32_t(0xff)) {
 14926  		goto __107
 14927  	}
 14928  	goto __27
 14929  __107:
 14930  	; // Not a hex digit
 14931  	c = cc<<4 | xc1
 14932  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)) += uintptr(2)
 14933  	goto __104
 14934  __103:
 14935  
 14936  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\173') {
 14937  		goto __108
 14938  	}
 14939  
 14940  COME_FROM_NU:
 14941  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)), 1) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))) == '\175') {
 14942  		goto __110
 14943  	}
 14944  
 14945  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR78
 14946  	goto __27
 14947  __110:
 14948  	;
 14949  	c = Tuint32_t(0)
 14950  	overflow = DFALSE
 14951  
 14952  __111:
 14953  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && libc.AssignUint32(&cc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))])) != Tuint32_t(0xff)) {
 14954  		goto __112
 14955  	}
 14956  
 14957  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))++
 14958  	if !(c == Tuint32_t(0) && cc == Tuint32_t(0)) {
 14959  		goto __113
 14960  	}
 14961  	goto __111
 14962  __113:
 14963  	; // Leading zeroes
 14964  	c = c<<4 | cc
 14965  	if !(utf != 0 && c > 0x10ffff || !(utf != 0) && c > uint32(0xffffffff)>>(32-DPCRE2_CODE_UNIT_WIDTH)) {
 14966  		goto __114
 14967  	}
 14968  
 14969  	overflow = DTRUE
 14970  	goto __112
 14971  __114:
 14972  	;
 14973  	goto __111
 14974  __112:
 14975  	;
 14976  
 14977  	if !(overflow != 0) {
 14978  		goto __115
 14979  	}
 14980  
 14981  __117:
 14982  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))]) != 0xff) {
 14983  		goto __118
 14984  	}
 14985  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))++
 14986  	goto __117
 14987  __118:
 14988  	;
 14989  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR34
 14990  	goto __116
 14991  __115:
 14992  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)), 1)))) == '\175') {
 14993  		goto __119
 14994  	}
 14995  
 14996  	if !(utf != 0 && c >= Tuint32_t(0xd800) && c <= Tuint32_t(0xdfff) && extra_options&DPCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES == Tuint32_t(0)) {
 14997  		goto __121
 14998  	}
 14999  
 15000  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))--
 15001  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR73
 15002  __121:
 15003  	;
 15004  	goto __120
 15005  __119:
 15006  
 15007  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))--
 15008  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR67
 15009  __120:
 15010  	;
 15011  __116:
 15012  	;
 15013  	goto __109
 15014  __108:
 15015  
 15016  	c = Tuint32_t(0)
 15017  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend || libc.AssignUint32(&cc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))])) == Tuint32_t(0xff)) {
 15018  		goto __122
 15019  	}
 15020  	goto __27
 15021  __122:
 15022  	; // Not a hex digit
 15023  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))++
 15024  	c = cc
 15025  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend || libc.AssignUint32(&cc, Tuint32_t(xdigitab[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24))))])) == Tuint32_t(0xff)) {
 15026  		goto __123
 15027  	}
 15028  	goto __27
 15029  __123:
 15030  	; // Not a hex digit
 15031  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))++
 15032  	c = c<<4 | cc
 15033  __109:
 15034  	; // End of \xdd handling
 15035  __104:
 15036  	; // End of Perl-style \x handling
 15037  	goto __27
 15038  
 15039  	// The handling of \c is different in ASCII and EBCDIC environments. In an
 15040  	//     ASCII (or Unicode) environment, an error is given if the character
 15041  	//     following \c is not a printable ASCII character. Otherwise, the following
 15042  	//     character is upper-cased if it is a letter, and after that the 0x40 bit is
 15043  	//     flipped. The result is the value of the escape.
 15044  	//
 15045  	//     In an EBCDIC environment the handling of \c is compatible with the
 15046  	//     specification in the perlebcdic document. The following character must be
 15047  	//     a letter or one of small number of special characters. These provide a
 15048  	//     means of defining the character values 0-31.
 15049  	//
 15050  	//     For testing the EBCDIC handling of \c in an ASCII environment, recognize
 15051  	//     the EBCDIC value of 'c' explicitly.
 15052  
 15053  __46:
 15054  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) >= ptrend) {
 15055  		goto __124
 15056  	}
 15057  
 15058  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR2
 15059  	goto __27
 15060  __124:
 15061  	;
 15062  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */)))))
 15063  	if !(c >= Tuint32_t('\141') && c <= Tuint32_t('\172')) {
 15064  		goto __125
 15065  	}
 15066  	c = c - Tuint32_t(32)
 15067  __125:
 15068  	;
 15069  
 15070  	// Handle \c in an ASCII/Unicode environment.
 15071  
 15072  	if !(c < Tuint32_t(32) || c > Tuint32_t(126)) {
 15073  		goto __126
 15074  	} /* Excludes all non-printable ASCII */
 15075  
 15076  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR68
 15077  	goto __27
 15078  __126:
 15079  	;
 15080  	c = c ^ Tuint32_t(0x40)
 15081  
 15082  	// Handle \c in an EBCDIC environment. The special case \c? is converted to
 15083  	//     255 (0xff) or 95 (0x5f) if other characters suggest we are using the
 15084  	//     POSIX-BC encoding. (This is the way Perl indicates that it handles \c?.)
 15085  	//     The other valid sequences correspond to a list of specific characters.
 15086  
 15087  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))++
 15088  	goto __27
 15089  
 15090  	// Any other alphanumeric following \ is an error. Perl gives an error only
 15091  	//     if in warning mode, but PCRE doesn't have a warning mode.
 15092  
 15093  __47:
 15094  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR3
 15095  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) - uintptr(1) // Point to the character at fault
 15096  	return 0
 15097  __27:
 15098  	;
 15099  __14:
 15100  	;
 15101  __12:
 15102  	;
 15103  
 15104  	// Set the pointer to the next character before returning.
 15105  
 15106  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* ptr */))
 15107  	*(*Tuint32_t)(unsafe.Pointer(chptr)) = c
 15108  	return escape
 15109  }
 15110  
 15111  // ************************************************
 15112  //
 15113  //               Handle \P and \p                 *
 15114  //
 15115  
 15116  // This function is called after \P or \p has been encountered, provided that
 15117  // PCRE2 is compiled with support for UTF and Unicode properties. On entry, the
 15118  // contents of ptrptr are pointing after the P or p. On exit, it is left pointing
 15119  // after the final code unit of the escape sequence.
 15120  //
 15121  // Arguments:
 15122  //   ptrptr         the pattern position pointer
 15123  //   negptr         a boolean that is set TRUE for negation else FALSE
 15124  //   ptypeptr       an unsigned int that is set to the type value
 15125  //   pdataptr       an unsigned int that is set to the detailed property value
 15126  //   errorcodeptr   the error code variable
 15127  //   cb             the compile data
 15128  //
 15129  // Returns:         TRUE if the type value was found, or FALSE for an invalid type
 15130  
 15131  func get_ucp(tls *libc.TLS, ptrptr uintptr, negptr uintptr, ptypeptr uintptr, pdataptr uintptr, errorcodeptr uintptr, cb uintptr) TBOOL { /* pcre2_compile.c:2087:1: */
 15132  	bp := tls.Alloc(58)
 15133  	defer tls.Free(58)
 15134  
 15135  	var c TPCRE2_UCHAR8
 15136  	var i Tsize_t
 15137  	var bot Tsize_t
 15138  	var top Tsize_t
 15139  	var ptr TPCRE2_SPTR8
 15140  	// var name [50]TPCRE2_UCHAR8 at bp, 50
 15141  
 15142  	var vptr uintptr
 15143  	var ptscript Tuint16_t
 15144  	var offset int32
 15145  	// var sname [8]TPCRE2_UCHAR8 at bp+50, 8
 15146  
 15147  	var r int32
 15148  	ptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr))
 15149  	vptr = uintptr(0)
 15150  	ptscript = Tuint16_t(DPT_NOTSCRIPT)
 15151  
 15152  	if !(ptr >= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern) {
 15153  		goto __1
 15154  	}
 15155  	goto ERROR_RETURN
 15156  __1:
 15157  	;
 15158  	c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1)))
 15159  	*(*TBOOL)(unsafe.Pointer(negptr)) = DFALSE
 15160  
 15161  	// \P or \p can be followed by a name in {}, optionally preceded by ^ for
 15162  	// negation.
 15163  
 15164  	if !(int32(c) == '\173') {
 15165  		goto __2
 15166  	}
 15167  
 15168  	if !(ptr >= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern) {
 15169  		goto __4
 15170  	}
 15171  	goto ERROR_RETURN
 15172  __4:
 15173  	;
 15174  
 15175  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == '\136') {
 15176  		goto __5
 15177  	}
 15178  
 15179  	*(*TBOOL)(unsafe.Pointer(negptr)) = DTRUE
 15180  	ptr++
 15181  __5:
 15182  	;
 15183  
 15184  	i = uint64(0)
 15185  __6:
 15186  	if !(i < uint64(int32(uint64(unsafe.Sizeof([50]TPCRE2_UCHAR8{}))/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))-1)) {
 15187  		goto __8
 15188  	}
 15189  
 15190  	if !(ptr >= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern) {
 15191  		goto __9
 15192  	}
 15193  	goto ERROR_RETURN
 15194  __9:
 15195  	;
 15196  	c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1)))
 15197  __10:
 15198  	if !(int32(c) == '_' || int32(c) == '-' || Xisspace(tls, int32(c)) != 0) {
 15199  		goto __11
 15200  	}
 15201  
 15202  	if !(ptr >= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern) {
 15203  		goto __12
 15204  	}
 15205  	goto ERROR_RETURN
 15206  __12:
 15207  	;
 15208  	c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1)))
 15209  	goto __10
 15210  __11:
 15211  	;
 15212  	if !(int32(c) == 0) {
 15213  		goto __13
 15214  	}
 15215  	goto ERROR_RETURN
 15216  __13:
 15217  	;
 15218  	if !(int32(c) == '\175') {
 15219  		goto __14
 15220  	}
 15221  	goto __8
 15222  __14:
 15223  	;
 15224  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + uintptr(i))) = TPCRE2_UCHAR8(Xtolower(tls, int32(c)))
 15225  	if !((int32(c) == ':' || int32(c) == '=') && vptr == uintptr(0)) {
 15226  		goto __15
 15227  	}
 15228  	vptr = bp + uintptr(i)
 15229  __15:
 15230  	;
 15231  	goto __7
 15232  __7:
 15233  	i++
 15234  	goto __6
 15235  	goto __8
 15236  __8:
 15237  	;
 15238  
 15239  	if !(int32(c) != '\175') {
 15240  		goto __16
 15241  	}
 15242  	goto ERROR_RETURN
 15243  __16:
 15244  	;
 15245  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + uintptr(i))) = TPCRE2_UCHAR8(0)
 15246  	goto __3
 15247  __2:
 15248  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(c))))&Dctype_letter != 0) {
 15249  		goto __17
 15250  	}
 15251  
 15252  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp)) = TPCRE2_UCHAR8(Xtolower(tls, int32(c)))
 15253  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 1)) = TPCRE2_UCHAR8(0)
 15254  	goto __18
 15255  __17:
 15256  	goto ERROR_RETURN
 15257  __18:
 15258  	;
 15259  __3:
 15260  	;
 15261  
 15262  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = ptr
 15263  
 15264  	// If the property contains ':' or '=' we have class name and value separately
 15265  	// specified. The following are supported:
 15266  	//
 15267  	//   . Bidi_Class (synonym bc), for which the property names are "bidi<name>".
 15268  	//   . Script (synonym sc) for which the property name is the script name
 15269  	//   . Script_Extensions (synonym scx), ditto
 15270  	//
 15271  	// As this is a small number, we currently just check the names directly. If this
 15272  	// grows, a sorted table and a switch will be neater.
 15273  	//
 15274  	// For both the script properties, set a PT_xxx value so that (1) they can be
 15275  	// distinguished and (2) invalid script names that happen to be the name of
 15276  	// another property can be diagnosed.
 15277  
 15278  	if !(vptr != uintptr(0)) {
 15279  		goto __19
 15280  	}
 15281  
 15282  	offset = 0
 15283  
 15284  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(vptr)) = TPCRE2_UCHAR8(0) // Terminate property name
 15285  	if !(X_pcre2_strcmp_c8_8(tls, bp, ts+553) == 0 || X_pcre2_strcmp_c8_8(tls, bp, ts+563) == 0) {
 15286  		goto __20
 15287  	}
 15288  
 15289  	offset = 4
 15290  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 50)) = TPCRE2_UCHAR8('\142')
 15291  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 50 + 1)) = TPCRE2_UCHAR8('\151') // There is no strcpy_c8 function
 15292  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 50 + 2)) = TPCRE2_UCHAR8('\144')
 15293  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 50 + 3)) = TPCRE2_UCHAR8('\151')
 15294  	goto __21
 15295  __20:
 15296  	if !(X_pcre2_strcmp_c8_8(tls, bp, ts+566) == 0 || X_pcre2_strcmp_c8_8(tls, bp, ts+573) == 0) {
 15297  		goto __22
 15298  	}
 15299  	ptscript = Tuint16_t(DPT_SC)
 15300  	goto __23
 15301  __22:
 15302  	if !(X_pcre2_strcmp_c8_8(tls, bp, ts+576) == 0 || X_pcre2_strcmp_c8_8(tls, bp, ts+593) == 0) {
 15303  		goto __24
 15304  	}
 15305  	ptscript = Tuint16_t(DPT_SCX)
 15306  	goto __25
 15307  __24:
 15308  
 15309  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR47
 15310  	return DFALSE
 15311  __25:
 15312  	;
 15313  __23:
 15314  	;
 15315  __21:
 15316  	;
 15317  
 15318  	// Adjust the string in name[] as needed
 15319  
 15320  	libc.X__builtin___memmove_chk(tls, bp+uintptr(offset), vptr+uintptr(1), uint64((int64(bp+uintptr(i))-int64(vptr))/1)*uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))), libc.X__builtin_object_size(tls, bp+uintptr(offset), 0))
 15321  	if !(offset != 0) {
 15322  		goto __26
 15323  	}
 15324  	libc.X__builtin___memmove_chk(tls, bp, bp+50, uint64(offset)*uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))), libc.X__builtin_object_size(tls, bp, 0))
 15325  __26:
 15326  	;
 15327  __19:
 15328  	;
 15329  
 15330  	// Search for a recognized property using binary chop.
 15331  
 15332  	bot = uint64(0)
 15333  	top = X_pcre2_utt_size_8
 15334  
 15335  __27:
 15336  	if !(bot < top) {
 15337  		goto __28
 15338  	}
 15339  
 15340  	i = (bot + top) >> 1
 15341  	r = X_pcre2_strcmp_c8_8(tls, bp, uintptr(unsafe.Pointer(&X_pcre2_utt_names_8))+uintptr(X_pcre2_utt_8[i].Fname_offset))
 15342  
 15343  	// When a matching property is found, some extra checking is needed when the
 15344  	//   \p{xx:yy} syntax is used and xx is either sc or scx.
 15345  
 15346  	if !(r == 0) {
 15347  		goto __29
 15348  	}
 15349  
 15350  	*(*Tuint16_t)(unsafe.Pointer(pdataptr)) = X_pcre2_utt_8[i].Fvalue
 15351  	if !(vptr == uintptr(0) || int32(ptscript) == DPT_NOTSCRIPT) {
 15352  		goto __30
 15353  	}
 15354  
 15355  	*(*Tuint16_t)(unsafe.Pointer(ptypeptr)) = X_pcre2_utt_8[i].Ftype
 15356  	return DTRUE
 15357  __30:
 15358  	;
 15359  
 15360  	switch int32(X_pcre2_utt_8[i].Ftype) {
 15361  	case DPT_SC:
 15362  		goto __32
 15363  
 15364  	case DPT_SCX:
 15365  		goto __33
 15366  	}
 15367  	goto __31
 15368  
 15369  __32:
 15370  	*(*Tuint16_t)(unsafe.Pointer(ptypeptr)) = Tuint16_t(DPT_SC)
 15371  	return DTRUE
 15372  
 15373  __33:
 15374  	*(*Tuint16_t)(unsafe.Pointer(ptypeptr)) = ptscript
 15375  	return DTRUE
 15376  __31:
 15377  	;
 15378  
 15379  	goto __28 // Non-script found
 15380  __29:
 15381  	;
 15382  
 15383  	if !(r > 0) {
 15384  		goto __34
 15385  	}
 15386  	bot = i + uint64(1)
 15387  	goto __35
 15388  __34:
 15389  	top = i
 15390  __35:
 15391  	;
 15392  	goto __27
 15393  __28:
 15394  	;
 15395  
 15396  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR47 // Unrecognized property
 15397  	return DFALSE
 15398  
 15399  ERROR_RETURN: // Malformed \P or \p
 15400  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR46
 15401  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = ptr
 15402  	return DFALSE
 15403  }
 15404  
 15405  // ************************************************
 15406  //
 15407  //           Check for POSIX class syntax         *
 15408  //
 15409  
 15410  // This function is called when the sequence "[:" or "[." or "[=" is
 15411  // encountered in a character class. It checks whether this is followed by a
 15412  // sequence of characters terminated by a matching ":]" or ".]" or "=]". If we
 15413  // reach an unescaped ']' without the special preceding character, return FALSE.
 15414  //
 15415  // Originally, this function only recognized a sequence of letters between the
 15416  // terminators, but it seems that Perl recognizes any sequence of characters,
 15417  // though of course unknown POSIX names are subsequently rejected. Perl gives an
 15418  // "Unknown POSIX class" error for [:f\oo:] for example, where previously PCRE
 15419  // didn't consider this to be a POSIX class. Likewise for [:1234:].
 15420  //
 15421  // The problem in trying to be exactly like Perl is in the handling of escapes. We
 15422  // have to be sure that [abc[:x\]pqr] is *not* treated as containing a POSIX
 15423  // class, but [abc[:x\]pqr:]] is (so that an error can be generated). The code
 15424  // below handles the special cases \\ and \], but does not try to do any other
 15425  // escape processing. This makes it different from Perl for cases such as
 15426  // [:l\ower:] where Perl recognizes it as the POSIX class "lower" but PCRE does
 15427  // not recognize "l\ower". This is a lesser evil than not diagnosing bad classes
 15428  // when Perl does, I think.
 15429  //
 15430  // A user pointed out that PCRE was rejecting [:a[:digit:]] whereas Perl was not.
 15431  // It seems that the appearance of a nested POSIX class supersedes an apparent
 15432  // external class. For example, [:a[:digit:]b:] matches "a", "b", ":", or
 15433  // a digit. This is handled by returning FALSE if the start of a new group with
 15434  // the same terminator is encountered, since the next closing sequence must close
 15435  // the nested group, not the outer one.
 15436  //
 15437  // In Perl, unescaped square brackets may also appear as part of class names. For
 15438  // example, [:a[:abc]b:] gives unknown POSIX class "[:abc]b:]". However, for
 15439  // [:a[:abc]b][b:] it gives unknown POSIX class "[:abc]b][b:]", which does not
 15440  // seem right at all. PCRE does not allow closing square brackets in POSIX class
 15441  // names.
 15442  //
 15443  // Arguments:
 15444  //   ptr      pointer to the character after the initial [ (colon, dot, equals)
 15445  //   ptrend   pointer to the end of the pattern
 15446  //   endptr   where to return a pointer to the terminating ':', '.', or '='
 15447  //
 15448  // Returns:   TRUE or FALSE
 15449  
 15450  func check_posix_syntax(tls *libc.TLS, ptr TPCRE2_SPTR8, ptrend TPCRE2_SPTR8, endptr uintptr) TBOOL { /* pcre2_compile.c:2293:1: */
 15451  	var terminator TPCRE2_UCHAR8                                                 // Don't combine these lines; the Solaris cc
 15452  	terminator = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1))) // compiler warns about "non-constant" initializer.
 15453  
 15454  	for ; (int64(ptrend)-int64(ptr))/1 >= int64(2); ptr++ {
 15455  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == '\134' && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1))) == '\135' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1))) == '\134') {
 15456  			ptr++
 15457  		} else if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == '\133' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1))) == int32(terminator) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == '\135' {
 15458  			return DFALSE
 15459  		} else if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(terminator) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1))) == '\135' {
 15460  			*(*TPCRE2_SPTR8)(unsafe.Pointer(endptr)) = ptr
 15461  			return DTRUE
 15462  		}
 15463  	}
 15464  
 15465  	return DFALSE
 15466  }
 15467  
 15468  // ************************************************
 15469  //
 15470  //          Check POSIX class name                *
 15471  //
 15472  
 15473  // This function is called to check the name given in a POSIX-style class entry
 15474  // such as [:alnum:].
 15475  //
 15476  // Arguments:
 15477  //   ptr        points to the first letter
 15478  //   len        the length of the name
 15479  //
 15480  // Returns:     a value representing the name, or -1 if unknown
 15481  
 15482  func check_posix_name(tls *libc.TLS, ptr TPCRE2_SPTR8, len int32) int32 { /* pcre2_compile.c:2334:1: */
 15483  	var pn uintptr = uintptr(unsafe.Pointer(&posix_names))
 15484  	var yield int32 = 0
 15485  	for int32(posix_name_lengths[yield]) != 0 {
 15486  		if len == int32(posix_name_lengths[yield]) && X_pcre2_strncmp_c8_8(tls, ptr, pn, uint64(uint32(len))) == 0 {
 15487  			return yield
 15488  		}
 15489  		pn += uintptr(int32(posix_name_lengths[yield]) + 1)
 15490  		yield++
 15491  	}
 15492  	return -1
 15493  }
 15494  
 15495  // ************************************************
 15496  //
 15497  //       Read a subpattern or VERB name           *
 15498  //
 15499  
 15500  // This function is called from parse_regex() below whenever it needs to read
 15501  // the name of a subpattern or a (*VERB) or an (*alpha_assertion). The initial
 15502  // pointer must be to the character before the name. If that character is '*' we
 15503  // are reading a verb or alpha assertion name. The pointer is updated to point
 15504  // after the name, for a VERB or alpha assertion name, or after tha name's
 15505  // terminator for a subpattern name. Returning both the offset and the name
 15506  // pointer is redundant information, but some callers use one and some the other,
 15507  // so it is simplest just to return both.
 15508  //
 15509  // Arguments:
 15510  //   ptrptr      points to the character pointer variable
 15511  //   ptrend      points to the end of the input string
 15512  //   utf         true if the input is UTF-encoded
 15513  //   terminator  the terminator of a subpattern name must be this
 15514  //   offsetptr   where to put the offset from the start of the pattern
 15515  //   nameptr     where to put a pointer to the name in the input
 15516  //   namelenptr  where to put the length of the name
 15517  //   errcodeptr  where to put an error code
 15518  //   cb          pointer to the compile data block
 15519  //
 15520  // Returns:    TRUE if a name was read
 15521  //             FALSE otherwise, with error code set
 15522  
 15523  func read_name(tls *libc.TLS, ptrptr uintptr, ptrend TPCRE2_SPTR8, utf TBOOL, terminator Tuint32_t, offsetptr uintptr, nameptr uintptr, namelenptr uintptr, errorcodeptr uintptr, cb uintptr) TBOOL { /* pcre2_compile.c:2379:1: */
 15524  	var ptr TPCRE2_SPTR8
 15525  	var is_group TBOOL
 15526  	var c Tuint32_t
 15527  	var type1 Tuint32_t
 15528  	ptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr))
 15529  	is_group = libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) != '\052')
 15530  
 15531  	if !(libc.PreIncUintptr(&ptr, 1) >= ptrend) {
 15532  		goto __1
 15533  	} /* No characters in name */
 15534  
 15535  	*(*int32)(unsafe.Pointer(errorcodeptr)) = func() int32 {
 15536  		if is_group != 0 {
 15537  			return ERR62
 15538  		}
 15539  		return ERR60
 15540  	}() // Verb not recognized or malformed
 15541  	goto FAILED
 15542  __1:
 15543  	;
 15544  
 15545  	*(*TPCRE2_SPTR8)(unsafe.Pointer(nameptr)) = ptr
 15546  	*(*Tsize_t)(unsafe.Pointer(offsetptr)) = Tsize_t((int64(ptr) - int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern)) / 1)
 15547  
 15548  	// In UTF mode, a group name may contain letters and decimal digits as defined
 15549  	// by Unicode properties, and underscores, but must not start with a digit.
 15550  
 15551  	if !(utf != 0 && is_group != 0) {
 15552  		goto __2
 15553  	}
 15554  
 15555  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))
 15556  	if !(c >= 0xc0) {
 15557  		goto __4
 15558  	}
 15559  	if !(c&0x20 == Tuint32_t(0)) {
 15560  		goto __5
 15561  	}
 15562  	c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f
 15563  	goto __6
 15564  __5:
 15565  	if !(c&0x10 == Tuint32_t(0)) {
 15566  		goto __7
 15567  	}
 15568  	c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f
 15569  	goto __8
 15570  __7:
 15571  	if !(c&0x08 == Tuint32_t(0)) {
 15572  		goto __9
 15573  	}
 15574  	c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f
 15575  	goto __10
 15576  __9:
 15577  	if !(c&0x04 == Tuint32_t(0)) {
 15578  		goto __11
 15579  	}
 15580  	c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f
 15581  	goto __12
 15582  __11:
 15583  	c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 5)))&0x3f
 15584  __12:
 15585  	;
 15586  __10:
 15587  	;
 15588  __8:
 15589  	;
 15590  __6:
 15591  	;
 15592  __4:
 15593  	;
 15594  
 15595  	type1 = Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fchartype)
 15596  
 15597  	if !(type1 == ucp_Nd) {
 15598  		goto __13
 15599  	}
 15600  
 15601  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR44
 15602  	goto FAILED
 15603  __13:
 15604  	;
 15605  
 15606  __14:
 15607  
 15608  	if !(type1 != ucp_Nd && X_pcre2_ucp_gentype_8[type1] != ucp_L && c != Tuint32_t('\137')) {
 15609  		goto __17
 15610  	}
 15611  	goto __16
 15612  __17:
 15613  	;
 15614  	ptr++
 15615  __18:
 15616  	if !(ptr < ptrend && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0xc0 == 0x80) {
 15617  		goto __19
 15618  	}
 15619  	ptr++
 15620  	goto __18
 15621  __19:
 15622  	;
 15623  	if !(ptr >= ptrend) {
 15624  		goto __20
 15625  	}
 15626  	goto __16
 15627  __20:
 15628  	;
 15629  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))
 15630  	if !(c >= 0xc0) {
 15631  		goto __21
 15632  	}
 15633  	if !(c&0x20 == Tuint32_t(0)) {
 15634  		goto __22
 15635  	}
 15636  	c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f
 15637  	goto __23
 15638  __22:
 15639  	if !(c&0x10 == Tuint32_t(0)) {
 15640  		goto __24
 15641  	}
 15642  	c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f
 15643  	goto __25
 15644  __24:
 15645  	if !(c&0x08 == Tuint32_t(0)) {
 15646  		goto __26
 15647  	}
 15648  	c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f
 15649  	goto __27
 15650  __26:
 15651  	if !(c&0x04 == Tuint32_t(0)) {
 15652  		goto __28
 15653  	}
 15654  	c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f
 15655  	goto __29
 15656  __28:
 15657  	c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 5)))&0x3f
 15658  __29:
 15659  	;
 15660  __27:
 15661  	;
 15662  __25:
 15663  	;
 15664  __23:
 15665  	;
 15666  __21:
 15667  	;
 15668  
 15669  	type1 = Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fchartype)
 15670  	goto __15
 15671  __15:
 15672  	goto __14
 15673  	goto __16
 15674  __16:
 15675  	;
 15676  	goto __3
 15677  __2:
 15678  
 15679  	/* Handle non-group names and group names in non-UTF modes. A group name must
 15680  	   not start with a digit. If either of the others start with a digit it just
 15681  	   won't be recognized. */
 15682  
 15683  	if !(is_group != 0 && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) <= '\071')) {
 15684  		goto __30
 15685  	}
 15686  
 15687  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR44
 15688  	goto FAILED
 15689  __30:
 15690  	;
 15691  
 15692  __31:
 15693  	if !(ptr < ptrend && 1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))))))&Dctype_word != 0) {
 15694  		goto __32
 15695  	}
 15696  
 15697  	ptr++
 15698  	goto __31
 15699  __32:
 15700  	;
 15701  __3:
 15702  	;
 15703  
 15704  	// Check name length
 15705  
 15706  	if !(ptr > *(*TPCRE2_SPTR8)(unsafe.Pointer(nameptr))+uintptr(DMAX_NAME_SIZE)) {
 15707  		goto __33
 15708  	}
 15709  
 15710  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR48
 15711  	goto FAILED
 15712  __33:
 15713  	;
 15714  	*(*Tuint32_t)(unsafe.Pointer(namelenptr)) = Tuint32_t((int64(ptr) - int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(nameptr)))) / 1)
 15715  
 15716  	// Subpattern names must not be empty, and their terminator is checked here.
 15717  	// (What follows a verb or alpha assertion name is checked separately.)
 15718  
 15719  	if !(is_group != 0) {
 15720  		goto __34
 15721  	}
 15722  
 15723  	if !(ptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(nameptr))) {
 15724  		goto __35
 15725  	}
 15726  
 15727  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR62 // Subpattern name expected
 15728  	goto FAILED
 15729  __35:
 15730  	;
 15731  	if !(ptr >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) != int32(TPCRE2_UCHAR8(terminator))) {
 15732  		goto __36
 15733  	}
 15734  
 15735  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR42
 15736  	goto FAILED
 15737  __36:
 15738  	;
 15739  	ptr++
 15740  __34:
 15741  	;
 15742  
 15743  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = ptr
 15744  	return DTRUE
 15745  
 15746  FAILED:
 15747  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = ptr
 15748  	return DFALSE
 15749  }
 15750  
 15751  // ************************************************
 15752  //
 15753  //          Manage callouts at start of cycle     *
 15754  //
 15755  
 15756  // At the start of a new item in parse_regex() we are able to record the
 15757  // details of the previous item in a prior callout, and also to set up an
 15758  // automatic callout if enabled. Avoid having two adjacent automatic callouts,
 15759  // which would otherwise happen for items such as \Q that contribute nothing to
 15760  // the parsed pattern.
 15761  //
 15762  // Arguments:
 15763  //   ptr              current pattern pointer
 15764  //   pcalloutptr      points to a pointer to previous callout, or NULL
 15765  //   auto_callout     TRUE if auto_callouts are enabled
 15766  //   parsed_pattern   the parsed pattern pointer
 15767  //   cb               compile block
 15768  //
 15769  // Returns: possibly updated parsed_pattern pointer.
 15770  
 15771  func manage_callouts(tls *libc.TLS, ptr TPCRE2_SPTR8, pcalloutptr uintptr, auto_callout TBOOL, parsed_pattern uintptr, cb uintptr) uintptr { /* pcre2_compile.c:2503:17: */
 15772  	var previous_callout uintptr = *(*uintptr)(unsafe.Pointer(pcalloutptr))
 15773  
 15774  	if previous_callout != uintptr(0) {
 15775  		*(*Tuint32_t)(unsafe.Pointer(previous_callout + 2*4)) = Tuint32_t(Tsize_t((int64(ptr)-int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern))/1) - Tsize_t(*(*Tuint32_t)(unsafe.Pointer(previous_callout + 1*4))))
 15776  	}
 15777  
 15778  	if !(auto_callout != 0) {
 15779  		previous_callout = uintptr(0)
 15780  	} else {
 15781  		if previous_callout == uintptr(0) || previous_callout != parsed_pattern-uintptr(4)*4 || *(*Tuint32_t)(unsafe.Pointer(previous_callout + 3*4)) != Tuint32_t(255) {
 15782  			previous_callout = parsed_pattern // Set up new automatic callout
 15783  			parsed_pattern += 4 * uintptr(4)
 15784  			*(*Tuint32_t)(unsafe.Pointer(previous_callout)) = DMETA_CALLOUT_NUMBER
 15785  			*(*Tuint32_t)(unsafe.Pointer(previous_callout + 2*4)) = Tuint32_t(0)
 15786  			*(*Tuint32_t)(unsafe.Pointer(previous_callout + 3*4)) = Tuint32_t(255)
 15787  		}
 15788  		*(*Tuint32_t)(unsafe.Pointer(previous_callout + 1*4)) = Tuint32_t((int64(ptr) - int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern)) / 1)
 15789  	}
 15790  
 15791  	*(*uintptr)(unsafe.Pointer(pcalloutptr)) = previous_callout
 15792  	return parsed_pattern
 15793  }
 15794  
 15795  // ************************************************
 15796  //
 15797  //      Parse regex and identify named groups     *
 15798  //
 15799  
 15800  // This function is called first of all. It scans the pattern and does two
 15801  // things: (1) It identifies capturing groups and makes a table of named capturing
 15802  // groups so that information about them is fully available to both the compiling
 15803  // scans. (2) It writes a parsed version of the pattern with comments omitted and
 15804  // escapes processed into the parsed_pattern vector.
 15805  //
 15806  // Arguments:
 15807  //   ptr             points to the start of the pattern
 15808  //   options         compiling dynamic options (may change during the scan)
 15809  //   has_lookbehind  points to a boolean, set TRUE if a lookbehind is found
 15810  //   cb              pointer to the compile data block
 15811  //
 15812  // Returns:   zero on success or a non-zero error code, with the
 15813  //              error offset placed in the cb field
 15814  
 15815  // A structure and some flags for dealing with nested groups.
 15816  
 15817  type Snest_save = struct {
 15818  	Fnest_depth  Tuint16_t
 15819  	Freset_group Tuint16_t
 15820  	Fmax_group   Tuint16_t
 15821  	Fflags       Tuint16_t
 15822  	Foptions     Tuint32_t
 15823  } /* pcre2_compile.c:2555:9 */
 15824  
 15825  // ************************************************
 15826  //
 15827  //      Parse regex and identify named groups     *
 15828  //
 15829  
 15830  // This function is called first of all. It scans the pattern and does two
 15831  // things: (1) It identifies capturing groups and makes a table of named capturing
 15832  // groups so that information about them is fully available to both the compiling
 15833  // scans. (2) It writes a parsed version of the pattern with comments omitted and
 15834  // escapes processed into the parsed_pattern vector.
 15835  //
 15836  // Arguments:
 15837  //   ptr             points to the start of the pattern
 15838  //   options         compiling dynamic options (may change during the scan)
 15839  //   has_lookbehind  points to a boolean, set TRUE if a lookbehind is found
 15840  //   cb              pointer to the compile data block
 15841  //
 15842  // Returns:   zero on success or a non-zero error code, with the
 15843  //              error offset placed in the cb field
 15844  
 15845  // A structure and some flags for dealing with nested groups.
 15846  
 15847  type Tnest_save = Snest_save /* pcre2_compile.c:2561:3 */
 15848  
 15849  // Only in 32-bit mode can there be literals > META_END. A macro encapsulates
 15850  // the storing of literal values in the main parsed pattern, where they can always
 15851  // be quantified.
 15852  
 15853  // Here's the actual function.
 15854  
 15855  func parse_regex(tls *libc.TLS, ptr TPCRE2_SPTR8, options Tuint32_t, has_lookbehind uintptr, cb uintptr) int32 { /* pcre2_compile.c:2598:12: */
 15856  	bp := tls.Alloc(104)
 15857  	defer tls.Free(104)
 15858  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) = ptr
 15859  
 15860  	// var c Tuint32_t at bp+16, 4
 15861  
 15862  	var delimiter Tuint32_t
 15863  	// var namelen Tuint32_t at bp+72, 4
 15864  
 15865  	var class_range_state Tuint32_t
 15866  	var verblengthptr uintptr // Value avoids compiler warning
 15867  	var verbstartptr uintptr
 15868  	// var previous_callout uintptr at bp, 8
 15869  
 15870  	var parsed_pattern uintptr
 15871  	var parsed_pattern_end uintptr
 15872  	var meta_quantifier Tuint32_t
 15873  	var add_after_mark Tuint32_t
 15874  	var extra_options Tuint32_t
 15875  	var nest_depth Tuint16_t
 15876  	var after_manual_callout int32
 15877  	var expect_cond_assert int32
 15878  	// var errorcode int32 at bp+20, 4
 15879  
 15880  	var escape int32
 15881  	// var i int32 at bp+48, 4
 15882  
 15883  	var inescq TBOOL
 15884  	var inverbname TBOOL
 15885  	var utf TBOOL
 15886  	var auto_callout TBOOL
 15887  	var isdupname TBOOL
 15888  	var negate_class TBOOL
 15889  	var okquantifier TBOOL
 15890  	var thisptr TPCRE2_SPTR8
 15891  	// var name TPCRE2_SPTR8 at bp+64, 8
 15892  
 15893  	var ptrend TPCRE2_SPTR8
 15894  	var verbnamestart TPCRE2_SPTR8 // Value avoids compiler warning
 15895  	var ng uintptr
 15896  	var top_nest uintptr
 15897  	var end_nests uintptr
 15898  	var verbnamelength Tsize_t
 15899  	var ok TBOOL
 15900  	// var negated TBOOL at bp+32, 4
 15901  
 15902  	// var ptype Tuint16_t at bp+36, 2
 15903  
 15904  	// var pdata Tuint16_t at bp+38, 2
 15905  
 15906  	// var p TPCRE2_SPTR8 at bp+40, 8
 15907  
 15908  	var p1 uintptr
 15909  	var ptype1 int32
 15910  	var pvalue int32
 15911  	var posix_negate TBOOL
 15912  	var posix_class int32
 15913  	// var negated1 TBOOL at bp+84, 4
 15914  
 15915  	// var ptype2 Tuint16_t at bp+88, 2
 15916  
 15917  	// var pdata1 Tuint16_t at bp+90, 2
 15918  
 15919  	var char_is_literal TBOOL
 15920  	var meta Tuint32_t
 15921  	var vn uintptr
 15922  	var hyphenok TBOOL
 15923  	var oldoptions Tuint32_t
 15924  	var calloutlength Tsize_t
 15925  	var startptr TPCRE2_SPTR8
 15926  	var n int32
 15927  	var ge Tuint32_t
 15928  	// var major int32 at bp+100, 4
 15929  
 15930  	var minor int32
 15931  	var was_r_ampersand TBOOL
 15932  	var newsize Tuint32_t
 15933  	var newspace uintptr
 15934  	var prev_expect_cond_assert int32
 15935  	// var min_repeat Tuint32_t at bp+76, 4
 15936  
 15937  	// var max_repeat Tuint32_t at bp+80, 4
 15938  
 15939  	// var set Tuint32_t at bp+92, 4
 15940  
 15941  	// var unset Tuint32_t at bp+96, 4
 15942  
 15943  	var optset uintptr
 15944  	var terminator Tuint32_t
 15945  	var prev_meta_quantifier Tuint32_t
 15946  	var prev_okquantifier TBOOL
 15947  	// var tempptr TPCRE2_SPTR8 at bp+24, 8
 15948  
 15949  	// var offset Tsize_t at bp+56, 8
 15950  	verblengthptr = uintptr(0)
 15951  	verbstartptr = uintptr(0)
 15952  	*(*uintptr)(unsafe.Pointer(bp /* previous_callout */)) = uintptr(0)
 15953  	parsed_pattern = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fparsed_pattern
 15954  	parsed_pattern_end = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fparsed_pattern_end
 15955  	meta_quantifier = Tuint32_t(0)
 15956  	add_after_mark = Tuint32_t(0)
 15957  	extra_options = (*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fextra_options
 15958  	nest_depth = Tuint16_t(0)
 15959  	after_manual_callout = 0
 15960  	expect_cond_assert = 0
 15961  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = 0
 15962  	inescq = DFALSE
 15963  	inverbname = DFALSE
 15964  	utf = libc.Bool32(options&DPCRE2_UTF != Tuint32_t(0))
 15965  	auto_callout = libc.Bool32(options&DPCRE2_AUTO_CALLOUT != Tuint32_t(0))
 15966  	okquantifier = DFALSE
 15967  	ptrend = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern
 15968  	verbnamestart = uintptr(0)
 15969  
 15970  	// Insert leading items for word and line matching (features provided for the
 15971  	// benefit of pcre2grep).
 15972  
 15973  	if !(extra_options&DPCRE2_EXTRA_MATCH_LINE != Tuint32_t(0)) {
 15974  		goto __1
 15975  	}
 15976  
 15977  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_CIRCUMFLEX
 15978  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_NOCAPTURE
 15979  	goto __2
 15980  __1:
 15981  	if !(extra_options&DPCRE2_EXTRA_MATCH_WORD != Tuint32_t(0)) {
 15982  		goto __3
 15983  	}
 15984  
 15985  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + ESC_b
 15986  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_NOCAPTURE
 15987  __3:
 15988  	;
 15989  __2:
 15990  	;
 15991  
 15992  	// If the pattern is actually a literal string, process it separately to avoid
 15993  	// cluttering up the main loop.
 15994  
 15995  	if !(options&DPCRE2_LITERAL != Tuint32_t(0)) {
 15996  		goto __4
 15997  	}
 15998  
 15999  __5:
 16000  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend) {
 16001  		goto __6
 16002  	}
 16003  
 16004  	if !(parsed_pattern >= parsed_pattern_end) {
 16005  		goto __7
 16006  	}
 16007  
 16008  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR63 // Internal error (parsed pattern overflow)
 16009  	goto FAILED
 16010  __7:
 16011  	;
 16012  	thisptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))
 16013  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), 1))))
 16014  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) >= 0xc0) {
 16015  		goto __8
 16016  	}
 16017  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x20 == Tuint32_t(0)) {
 16018  		goto __9
 16019  	}
 16020  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1))))&0x3f
 16021  	goto __10
 16022  __9:
 16023  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x10 == Tuint32_t(0)) {
 16024  		goto __11
 16025  	}
 16026  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f
 16027  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(2)
 16028  	goto __12
 16029  __11:
 16030  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x08 == Tuint32_t(0)) {
 16031  		goto __13
 16032  	}
 16033  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f
 16034  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(3)
 16035  	goto __14
 16036  __13:
 16037  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x04 == Tuint32_t(0)) {
 16038  		goto __15
 16039  	}
 16040  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f
 16041  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(4)
 16042  	goto __16
 16043  __15:
 16044  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 4)))&0x3f
 16045  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(5)
 16046  __16:
 16047  	;
 16048  __14:
 16049  	;
 16050  __12:
 16051  	;
 16052  __10:
 16053  	;
 16054  __8:
 16055  	;
 16056  
 16057  	if !(auto_callout != 0) {
 16058  		goto __17
 16059  	}
 16060  	parsed_pattern = manage_callouts(tls, thisptr, bp,
 16061  		auto_callout, parsed_pattern, cb)
 16062  __17:
 16063  	;
 16064  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 16065  	okquantifier = DTRUE
 16066  
 16067  	goto __5
 16068  __6:
 16069  	;
 16070  	goto PARSED_END
 16071  __4:
 16072  	;
 16073  
 16074  	// Process a real regex which may contain meta-characters.
 16075  
 16076  	top_nest = uintptr(0)
 16077  	end_nests = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace + uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fworkspace_size)
 16078  
 16079  	// The size of the nest_save structure might not be a factor of the size of the
 16080  	// workspace. Therefore we must round down end_nests so as to correctly avoid
 16081  	// creating a nest_save that spans the end of the workspace.
 16082  
 16083  	end_nests = end_nests - uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fworkspace_size*Tsize_t(unsafe.Sizeof(TPCRE2_UCHAR8(0)))%Tsize_t(unsafe.Sizeof(Tnest_save{})))
 16084  
 16085  	// PCRE2_EXTENDED_MORE implies PCRE2_EXTENDED
 16086  
 16087  	if !(options&DPCRE2_EXTENDED_MORE != Tuint32_t(0)) {
 16088  		goto __18
 16089  	}
 16090  	options = options | DPCRE2_EXTENDED
 16091  __18:
 16092  	;
 16093  
 16094  	// Now scan the pattern
 16095  
 16096  __19:
 16097  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend) {
 16098  		goto __20
 16099  	}
 16100  
 16101  	if !(parsed_pattern >= parsed_pattern_end) {
 16102  		goto __21
 16103  	}
 16104  
 16105  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR63 // Internal error (parsed pattern overflow)
 16106  	goto FAILED
 16107  __21:
 16108  	;
 16109  
 16110  	if !(Tuint32_t(nest_depth) > (*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fparens_nest_limit) {
 16111  		goto __22
 16112  	}
 16113  
 16114  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR19
 16115  	goto FAILED // Parentheses too deeply nested
 16116  __22:
 16117  	;
 16118  
 16119  	// Get next input character, save its position for callout handling.
 16120  
 16121  	thisptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))
 16122  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), 1))))
 16123  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) >= 0xc0) {
 16124  		goto __23
 16125  	}
 16126  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x20 == Tuint32_t(0)) {
 16127  		goto __24
 16128  	}
 16129  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1))))&0x3f
 16130  	goto __25
 16131  __24:
 16132  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x10 == Tuint32_t(0)) {
 16133  		goto __26
 16134  	}
 16135  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f
 16136  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(2)
 16137  	goto __27
 16138  __26:
 16139  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x08 == Tuint32_t(0)) {
 16140  		goto __28
 16141  	}
 16142  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f
 16143  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(3)
 16144  	goto __29
 16145  __28:
 16146  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x04 == Tuint32_t(0)) {
 16147  		goto __30
 16148  	}
 16149  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f
 16150  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(4)
 16151  	goto __31
 16152  __30:
 16153  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 4)))&0x3f
 16154  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(5)
 16155  __31:
 16156  	;
 16157  __29:
 16158  	;
 16159  __27:
 16160  	;
 16161  __25:
 16162  	;
 16163  __23:
 16164  	;
 16165  
 16166  	// Copy quoted literals until \E, allowing for the possibility of automatic
 16167  	//   callouts, except when processing a (*VERB) "name".
 16168  
 16169  	if !(inescq != 0) {
 16170  		goto __32
 16171  	}
 16172  
 16173  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\134') && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\105') {
 16174  		goto __33
 16175  	}
 16176  
 16177  	inescq = DFALSE
 16178  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++ // Skip E
 16179  	goto __34
 16180  __33:
 16181  
 16182  	if !(expect_cond_assert > 0) {
 16183  		goto __35
 16184  	} /* A literal is not allowed if we are */
 16185  	// expecting a conditional assertion,
 16186  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // but an empty \Q\E sequence is OK.
 16187  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR28
 16188  	goto FAILED
 16189  __35:
 16190  	;
 16191  	if !(inverbname != 0) {
 16192  		goto __36
 16193  	}
 16194  	// Don't use PARSED_LITERAL() because it
 16195  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 16196  	goto __37
 16197  __36:
 16198  
 16199  	if !(libc.PostDecInt32(&after_manual_callout, 1) <= 0) {
 16200  		goto __38
 16201  	}
 16202  	parsed_pattern = manage_callouts(tls, thisptr, bp,
 16203  		auto_callout, parsed_pattern, cb)
 16204  __38:
 16205  	;
 16206  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 16207  	okquantifier = DTRUE
 16208  
 16209  __37:
 16210  	;
 16211  	meta_quantifier = Tuint32_t(0)
 16212  __34:
 16213  	;
 16214  	goto __19 // Next character
 16215  __32:
 16216  	;
 16217  
 16218  	// If we are processing the "name" part of a (*VERB:NAME) item, all
 16219  	//   characters up to the closing parenthesis are literals except when
 16220  	//   PCRE2_ALT_VERBNAMES is set. That causes backslash interpretation, but only \Q
 16221  	//   and \E and escaped characters are allowed (no character types such as \d). If
 16222  	//   PCRE2_EXTENDED is also set, we must ignore white space and # comments. Do
 16223  	//   this by not entering the special (*VERB:NAME) processing - they are then
 16224  	//   picked up below. Note that c is a character, not a code unit, so we must not
 16225  	//   use MAX_255 to test its size because MAX_255 tests code units and is assumed
 16226  	//   TRUE in 8-bit mode.
 16227  
 16228  	if !(inverbname != 0 && (options&(DPCRE2_EXTENDED|DPCRE2_ALT_VERBNAMES) != DPCRE2_EXTENDED|DPCRE2_ALT_VERBNAMES || *(*Tuint32_t)(unsafe.Pointer(bp + 16)) > Tuint32_t(255) && *(*Tuint32_t)(unsafe.Pointer(bp + 16))|Tuint32_t(1) != Tuint32_t(0x200f) && *(*Tuint32_t)(unsafe.Pointer(bp + 16))|Tuint32_t(1) != Tuint32_t(0x2029) || *(*Tuint32_t)(unsafe.Pointer(bp + 16)) < Tuint32_t(256) && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) != Tuint32_t('\043') && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 16))))))&Dctype_space == 0 &&
 16229  
 16230  		*(*Tuint32_t)(unsafe.Pointer(bp + 16)) != libc.Uint32FromUint8(libc.Uint8FromInt32(133)))) {
 16231  		goto __39
 16232  	}
 16233  
 16234  	switch *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) {
 16235  	default:
 16236  		goto __41
 16237  
 16238  	case Tuint32_t('\051'):
 16239  		goto __42
 16240  
 16241  	case Tuint32_t('\134'):
 16242  		goto __43
 16243  	}
 16244  	goto __40
 16245  
 16246  __41: // Don't use PARSED_LITERAL() because it
 16247  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 16248  	goto __40
 16249  
 16250  __42:
 16251  	inverbname = DFALSE
 16252  	// This is the length in characters
 16253  	verbnamelength = Tsize_t((int64(parsed_pattern)-int64(verblengthptr))/4 - int64(1))
 16254  	// But the limit on the length is in code units
 16255  	if !((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))-int64(verbnamestart))/1-int64(1) > int64(int32(uint32(1)<<8-uint32(1)))) {
 16256  		goto __44
 16257  	}
 16258  
 16259  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))--
 16260  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR76
 16261  	goto FAILED
 16262  __44:
 16263  	;
 16264  	*(*Tuint32_t)(unsafe.Pointer(verblengthptr)) = Tuint32_t(verbnamelength)
 16265  
 16266  	// If this name was on a verb such as (*ACCEPT) which does not continue,
 16267  	//       a (*MARK) was generated for the name. We now add the original verb as the
 16268  	//       next item.
 16269  
 16270  	if !(add_after_mark != Tuint32_t(0)) {
 16271  		goto __45
 16272  	}
 16273  
 16274  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = add_after_mark
 16275  	add_after_mark = Tuint32_t(0)
 16276  __45:
 16277  	;
 16278  	goto __40
 16279  
 16280  __43:
 16281  	if !(options&DPCRE2_ALT_VERBNAMES != Tuint32_t(0)) {
 16282  		goto __46
 16283  	}
 16284  
 16285  	escape = X_pcre2_check_escape_8(tls, bp+8, ptrend, bp+16, bp+20, options,
 16286  		(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fextra_options, DFALSE, cb)
 16287  	if !(*(*int32)(unsafe.Pointer(bp + 20)) != 0) {
 16288  		goto __48
 16289  	}
 16290  	goto FAILED
 16291  __48:
 16292  	;
 16293  	goto __47
 16294  __46:
 16295  	escape = 0
 16296  __47:
 16297  	; // Treat all as literal
 16298  
 16299  	switch escape {
 16300  	case 0:
 16301  		goto __50
 16302  
 16303  	case ESC_Q:
 16304  		goto __51
 16305  
 16306  	case ESC_E:
 16307  		goto __52
 16308  
 16309  	default:
 16310  		goto __53
 16311  	}
 16312  	goto __49
 16313  
 16314  __50: // Don't use PARSED_LITERAL() because it
 16315  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 16316  	goto __49
 16317  
 16318  __51:
 16319  	inescq = DTRUE
 16320  	goto __49
 16321  
 16322  __52: // Ignore
 16323  	goto __49
 16324  
 16325  __53:
 16326  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR40 // Invalid in verb name
 16327  	goto FAILED
 16328  __49:
 16329  	;
 16330  __40:
 16331  	;
 16332  	goto __19 // Next character in pattern
 16333  __39:
 16334  	;
 16335  
 16336  	// Not a verb name character. At this point we must process everything that
 16337  	//   must not change the quantification state. This is mainly comments, but we
 16338  	//   handle \Q and \E here as well, so that an item such as A\Q\E+ is treated as
 16339  	//   A+, as in Perl. An isolated \E is ignored.
 16340  
 16341  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\134') && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend) {
 16342  		goto __54
 16343  	}
 16344  
 16345  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\121' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\105') {
 16346  		goto __55
 16347  	}
 16348  
 16349  	inescq = libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\121')
 16350  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 16351  	goto __19
 16352  __55:
 16353  	;
 16354  __54:
 16355  	;
 16356  
 16357  	// Skip over whitespace and # comments in extended mode. Note that c is a
 16358  	//   character, not a code unit, so we must not use MAX_255 to test its size
 16359  	//   because MAX_255 tests code units and is assumed TRUE in 8-bit mode. The
 16360  	//   whitespace characters are those designated as "Pattern White Space" by
 16361  	//   Unicode, which are the isspace() characters plus CHAR_NEL (newline), which is
 16362  	//   U+0085 in Unicode, plus U+200E, U+200F, U+2028, and U+2029. These are a
 16363  	//   subset of space characters that match \h and \v.
 16364  
 16365  	if !(options&DPCRE2_EXTENDED != Tuint32_t(0)) {
 16366  		goto __56
 16367  	}
 16368  
 16369  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 16))))))&Dctype_space != 0) {
 16370  		goto __57
 16371  	}
 16372  	goto __19
 16373  __57:
 16374  	;
 16375  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == libc.Uint32FromUint8(libc.Uint8FromInt32(133)) || *(*Tuint32_t)(unsafe.Pointer(bp + 16))|Tuint32_t(1) == Tuint32_t(0x200f) || *(*Tuint32_t)(unsafe.Pointer(bp + 16))|Tuint32_t(1) == Tuint32_t(0x2029)) {
 16376  		goto __58
 16377  	}
 16378  	goto __19
 16379  __58:
 16380  	;
 16381  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\043')) {
 16382  		goto __59
 16383  	}
 16384  
 16385  __60:
 16386  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend) {
 16387  		goto __61
 16388  	}
 16389  
 16390  	if !(func() int32 {
 16391  		if (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 16392  			return libc.Bool32(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern && X_pcre2_is_newline_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnltype, (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern, cb+260, utf) != 0)
 16393  		}
 16394  		return libc.Bool32(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) <= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fend_pattern-uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cb + 272))) && ((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cb + 272 + 1)))))
 16395  	}() != 0) {
 16396  		goto __62
 16397  	} /* For non-fixed-length newline cases, */
 16398  	// IS_NEWLINE sets cb->nllen.
 16399  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += TPCRE2_SPTR8((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnllen)
 16400  	goto __61
 16401  __62:
 16402  	;
 16403  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 16404  	if !(utf != 0) {
 16405  		goto __63
 16406  	}
 16407  __64:
 16408  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0xc0 == 0x80) {
 16409  		goto __65
 16410  	}
 16411  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 16412  	goto __64
 16413  __65:
 16414  	;
 16415  __63:
 16416  	;
 16417  	goto __60
 16418  __61:
 16419  	;
 16420  	goto __19 // Next character in pattern
 16421  __59:
 16422  	;
 16423  __56:
 16424  	;
 16425  
 16426  	// Skip over bracketed comments
 16427  
 16428  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\050') && (int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 >= int64(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\077' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) == '\043') {
 16429  		goto __66
 16430  	}
 16431  
 16432  __67:
 16433  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051') {
 16434  		goto __68
 16435  	}
 16436  	goto __67
 16437  __68:
 16438  	;
 16439  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 16440  		goto __69
 16441  	}
 16442  
 16443  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR18 // A special error for missing ) in a comment
 16444  	goto FAILED                                                // to make it easier to debug.
 16445  __69:
 16446  	;
 16447  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 16448  	goto __19 // Next character in pattern
 16449  __66:
 16450  	;
 16451  
 16452  	// If the next item is not a quantifier, fill in length of any previous
 16453  	//   callout and create an auto callout if required.
 16454  
 16455  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) != Tuint32_t('\052') && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) != Tuint32_t('\053') && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) != Tuint32_t('\077') && (*(*Tuint32_t)(unsafe.Pointer(bp + 16)) != Tuint32_t('\173') || func() bool {
 16456  		*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))
 16457  		return !(read_repeat_counts(tls, bp+24, ptrend, uintptr(0), uintptr(0), bp+20) != 0)
 16458  	}())) {
 16459  		goto __70
 16460  	}
 16461  
 16462  	if !(libc.PostDecInt32(&after_manual_callout, 1) <= 0) {
 16463  		goto __71
 16464  	}
 16465  	parsed_pattern = manage_callouts(tls, thisptr, bp, auto_callout,
 16466  		parsed_pattern, cb)
 16467  __71:
 16468  	;
 16469  __70:
 16470  	;
 16471  
 16472  	// If expect_cond_assert is 2, we have just passed (?( and are expecting an
 16473  	//   assertion, possibly preceded by a callout. If the value is 1, we have just
 16474  	//   had the callout and expect an assertion. There must be at least 3 more
 16475  	//   characters in all cases. When expect_cond_assert is 2, we know that the
 16476  	//   current character is an opening parenthesis, as otherwise we wouldn't be
 16477  	//   here. However, when it is 1, we need to check, and it's easiest just to check
 16478  	//   always. Note that expect_cond_assert may be negative, since all callouts just
 16479  	//   decrement it.
 16480  
 16481  	if !(expect_cond_assert > 0) {
 16482  		goto __72
 16483  	}
 16484  
 16485  	ok = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\050') && (int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 >= int64(3) && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\077' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\052'))
 16486  	if !(ok != 0) {
 16487  		goto __73
 16488  	}
 16489  
 16490  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\052') {
 16491  		goto __74
 16492  	} /* New alpha assertion format, possibly */
 16493  
 16494  	ok = libc.Bool32(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))))))&Dctype_lcletter != 0)
 16495  	goto __75
 16496  __74:
 16497  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) + 1))) {
 16498  	case '\103':
 16499  		goto __77
 16500  
 16501  	case '\075':
 16502  		goto __78
 16503  	case '\041':
 16504  		goto __79
 16505  
 16506  	case '\074':
 16507  		goto __80
 16508  
 16509  	default:
 16510  		goto __81
 16511  	}
 16512  	goto __76 /* Traditional symbolic format */
 16513  
 16514  __77:
 16515  	ok = libc.Bool32(expect_cond_assert == 2)
 16516  	goto __76
 16517  
 16518  __78:
 16519  __79:
 16520  	goto __76
 16521  
 16522  __80:
 16523  	ok = libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2))) == '\075' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2))) == '\041')
 16524  	goto __76
 16525  
 16526  __81:
 16527  	ok = DFALSE
 16528  __76:
 16529  	;
 16530  __75:
 16531  	;
 16532  __73:
 16533  	;
 16534  
 16535  	if !!(ok != 0) {
 16536  		goto __82
 16537  	}
 16538  
 16539  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // Adjust error offset
 16540  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR28
 16541  	goto FAILED
 16542  __82:
 16543  	;
 16544  __72:
 16545  	;
 16546  
 16547  	// Remember whether we are expecting a conditional assertion, and set the
 16548  	//   default for this item.
 16549  
 16550  	prev_expect_cond_assert = expect_cond_assert
 16551  	expect_cond_assert = 0
 16552  
 16553  	// Remember quantification status for the previous significant item, then set
 16554  	//   default for this item.
 16555  
 16556  	prev_okquantifier = okquantifier
 16557  	prev_meta_quantifier = meta_quantifier
 16558  	okquantifier = DFALSE
 16559  	meta_quantifier = Tuint32_t(0)
 16560  
 16561  	// If the previous significant item was a quantifier, adjust the parsed code
 16562  	//   if there is a following modifier. The base meta value is always followed by
 16563  	//   the PLUS and QUERY values, in that order. We do this here rather than after
 16564  	//   reading a quantifier so that intervening comments and /x whitespace can be
 16565  	//   ignored without having to replicate code.
 16566  
 16567  	if !(prev_meta_quantifier != Tuint32_t(0) && (*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\077') || *(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\053'))) {
 16568  		goto __83
 16569  	}
 16570  
 16571  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern + uintptr(func() int32 {
 16572  		if prev_meta_quantifier == DMETA_MINMAX {
 16573  			return -3
 16574  		}
 16575  		return -1
 16576  	}())*4)) = prev_meta_quantifier + func() uint32 {
 16577  		if *(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\077') {
 16578  			return 0x00020000
 16579  		}
 16580  		return 0x00010000
 16581  	}()
 16582  	goto __19 // Next character in pattern
 16583  __83:
 16584  	;
 16585  
 16586  	// Process the next item in the main part of a pattern.
 16587  
 16588  	switch *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) {
 16589  	default:
 16590  		goto __85
 16591  
 16592  	// ---- Escape sequence ----
 16593  
 16594  	case Tuint32_t('\134'):
 16595  		goto __86 // End escape sequence processing
 16596  
 16597  	// ---- Single-character special items ----
 16598  
 16599  	case Tuint32_t('\136'):
 16600  		goto __87
 16601  
 16602  	case Tuint32_t('\044'):
 16603  		goto __88
 16604  
 16605  	case Tuint32_t('\056'):
 16606  		goto __89
 16607  
 16608  	// ---- Single-character quantifiers ----
 16609  
 16610  	case Tuint32_t('\052'):
 16611  		goto __90
 16612  
 16613  	case Tuint32_t('\053'):
 16614  		goto __91
 16615  
 16616  	case Tuint32_t('\077'):
 16617  		goto __92
 16618  
 16619  	// ---- Potential {n,m} quantifier ----
 16620  
 16621  	case Tuint32_t('\173'):
 16622  		goto __93
 16623  
 16624  	// ---- Character class ----
 16625  
 16626  	case Tuint32_t('\133'):
 16627  		goto __94 // End of character class
 16628  
 16629  	// ---- Opening parenthesis ----
 16630  
 16631  	case Tuint32_t('\050'):
 16632  		goto __95 // End of ( handling
 16633  
 16634  	// ---- Branch terminators ----
 16635  
 16636  	// Alternation: reset the capture count if we are in a (?| group.
 16637  
 16638  	case Tuint32_t('\174'):
 16639  		goto __96
 16640  
 16641  	// End of group; reset the capture count to the maximum if we are in a (?|
 16642  	//     group and/or reset the options that are tracked during parsing. Disallow
 16643  	//     quantifier for a condition that is an assertion.
 16644  
 16645  	case Tuint32_t('\051'):
 16646  		goto __97
 16647  	}
 16648  	goto __84
 16649  
 16650  __85: // Non-special character
 16651  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 16652  	okquantifier = DTRUE
 16653  
 16654  	goto __84
 16655  
 16656  	// ---- Escape sequence ----
 16657  
 16658  __86:
 16659  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* tempptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))
 16660  	escape = X_pcre2_check_escape_8(tls, bp+8, ptrend, bp+16, bp+20, options,
 16661  		(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fextra_options, DFALSE, cb)
 16662  	if !(*(*int32)(unsafe.Pointer(bp + 20)) != 0) {
 16663  		goto __98
 16664  	}
 16665  
 16666  ESCAPE_FAILED:
 16667  	if !(extra_options&DPCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL == Tuint32_t(0)) {
 16668  		goto __99
 16669  	}
 16670  	goto FAILED
 16671  __99:
 16672  	;
 16673  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* tempptr */))
 16674  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 16675  		goto __100
 16676  	}
 16677  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t('\134')
 16678  	goto __101
 16679  __100:
 16680  
 16681  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), 1))))
 16682  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) >= 0xc0) {
 16683  		goto __102
 16684  	}
 16685  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x20 == Tuint32_t(0)) {
 16686  		goto __103
 16687  	}
 16688  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1))))&0x3f
 16689  	goto __104
 16690  __103:
 16691  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x10 == Tuint32_t(0)) {
 16692  		goto __105
 16693  	}
 16694  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f
 16695  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(2)
 16696  	goto __106
 16697  __105:
 16698  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x08 == Tuint32_t(0)) {
 16699  		goto __107
 16700  	}
 16701  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f
 16702  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(3)
 16703  	goto __108
 16704  __107:
 16705  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x04 == Tuint32_t(0)) {
 16706  		goto __109
 16707  	}
 16708  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f
 16709  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(4)
 16710  	goto __110
 16711  __109:
 16712  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 4)))&0x3f
 16713  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(5)
 16714  __110:
 16715  	;
 16716  __108:
 16717  	;
 16718  __106:
 16719  	;
 16720  __104:
 16721  	;
 16722  __102:
 16723  	;
 16724  
 16725  	// Get character value, increment pointer
 16726  __101:
 16727  	;
 16728  	escape = 0 // Treat as literal character
 16729  __98:
 16730  	;
 16731  
 16732  	// The escape was a data escape or literal character.
 16733  
 16734  	if !(escape == 0) {
 16735  		goto __111
 16736  	}
 16737  
 16738  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 16739  	okquantifier = DTRUE
 16740  
 16741  	goto __112
 16742  __111:
 16743  	if !(escape < 0) {
 16744  		goto __113
 16745  	}
 16746  
 16747  	*(*Tsize_t)(unsafe.Pointer(bp + 56 /* offset */)) = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))-int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern))/1 - int64(1))
 16748  	escape = -escape
 16749  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_BACKREF | Tuint32_t(escape)
 16750  	if !(escape < 10) {
 16751  		goto __115
 16752  	}
 16753  
 16754  	if !(*(*Tsize_t)(unsafe.Pointer(cb + 88 + uintptr(escape)*8)) == libc.CplUint64(uint64(0))) {
 16755  		goto __117
 16756  	}
 16757  	*(*Tsize_t)(unsafe.Pointer(cb + 88 + uintptr(escape)*8)) = *(*Tsize_t)(unsafe.Pointer(bp + 56 /* offset */))
 16758  __117:
 16759  	;
 16760  	goto __116
 16761  __115:
 16762  
 16763  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 16764  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 16765  
 16766  __116:
 16767  	;
 16768  	okquantifier = DTRUE
 16769  	goto __114
 16770  __113:
 16771  	switch escape {
 16772  	case ESC_C:
 16773  		goto __119
 16774  
 16775  	case ESC_X:
 16776  		goto __120
 16777  	case ESC_H:
 16778  		goto __121
 16779  	case ESC_h:
 16780  		goto __122
 16781  	case ESC_N:
 16782  		goto __123
 16783  	case ESC_R:
 16784  		goto __124
 16785  	case ESC_V:
 16786  		goto __125
 16787  	case ESC_v:
 16788  		goto __126
 16789  
 16790  	default:
 16791  		goto __127
 16792  
 16793  	// Escapes that change in UCP mode. Note that PCRE2_UCP will never be set
 16794  	//       without Unicode support because it is checked when pcre2_compile() is
 16795  	//       called.
 16796  
 16797  	case ESC_d:
 16798  		goto __128
 16799  	case ESC_D:
 16800  		goto __129
 16801  	case ESC_s:
 16802  		goto __130
 16803  	case ESC_S:
 16804  		goto __131
 16805  	case ESC_w:
 16806  		goto __132
 16807  	case ESC_W:
 16808  		goto __133
 16809  
 16810  	// Unicode property matching
 16811  
 16812  	case ESC_P:
 16813  		goto __134
 16814  	case ESC_p:
 16815  		goto __135 // End \P and \p
 16816  
 16817  	// When \g is used with quotes or angle brackets as delimiters, it is a
 16818  	//       numerical or named subroutine call, and control comes here. When used
 16819  	//       with brace delimiters it is a numberical back reference and does not come
 16820  	//       here because check_escape() returns it directly as a reference. \k is
 16821  	//       always a named back reference.
 16822  
 16823  	case ESC_g:
 16824  		goto __136
 16825  	case ESC_k:
 16826  		goto __137
 16827  	}
 16828  	goto __118
 16829  
 16830  __119:
 16831  	if !(options&DPCRE2_NEVER_BACKSLASH_C != Tuint32_t(0)) {
 16832  		goto __138
 16833  	}
 16834  
 16835  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR83
 16836  	goto ESCAPE_FAILED
 16837  __138:
 16838  	;
 16839  	okquantifier = DTRUE
 16840  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 16841  	goto __118
 16842  
 16843  __120:
 16844  __121:
 16845  __122:
 16846  __123:
 16847  __124:
 16848  __125:
 16849  __126:
 16850  	okquantifier = DTRUE
 16851  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 16852  	goto __118
 16853  
 16854  __127: // \A, \B, \b, \G, \K, \Z, \z cannot be quantified.
 16855  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 16856  	goto __118
 16857  
 16858  	// Escapes that change in UCP mode. Note that PCRE2_UCP will never be set
 16859  	//       without Unicode support because it is checked when pcre2_compile() is
 16860  	//       called.
 16861  
 16862  __128:
 16863  __129:
 16864  __130:
 16865  __131:
 16866  __132:
 16867  __133:
 16868  	okquantifier = DTRUE
 16869  	if !(options&DPCRE2_UCP == Tuint32_t(0)) {
 16870  		goto __139
 16871  	}
 16872  
 16873  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 16874  	goto __140
 16875  __139:
 16876  
 16877  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + func() uint32 {
 16878  		if escape == ESC_d || escape == ESC_s || escape == ESC_w {
 16879  			return ESC_p
 16880  		}
 16881  		return ESC_P
 16882  	}()
 16883  	switch escape {
 16884  	case ESC_d:
 16885  		goto __142
 16886  	case ESC_D:
 16887  		goto __143
 16888  
 16889  	case ESC_s:
 16890  		goto __144
 16891  	case ESC_S:
 16892  		goto __145
 16893  
 16894  	case ESC_w:
 16895  		goto __146
 16896  	case ESC_W:
 16897  		goto __147
 16898  	}
 16899  	goto __141
 16900  
 16901  __142:
 16902  __143:
 16903  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(DPT_PC)<<16 | ucp_Nd)
 16904  	goto __141
 16905  
 16906  __144:
 16907  __145:
 16908  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(DPT_SPACE) << 16)
 16909  	goto __141
 16910  
 16911  __146:
 16912  __147:
 16913  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(DPT_WORD) << 16)
 16914  	goto __141
 16915  __141:
 16916  	;
 16917  __140:
 16918  	;
 16919  	goto __118
 16920  
 16921  	// Unicode property matching
 16922  
 16923  __134:
 16924  __135:
 16925  
 16926  	*(*Tuint16_t)(unsafe.Pointer(bp + 36 /* ptype */)) = Tuint16_t(0)
 16927  	*(*Tuint16_t)(unsafe.Pointer(bp + 38 /* pdata */)) = Tuint16_t(0)
 16928  	if !!(get_ucp(tls, bp+8, bp+32, bp+36, bp+38, bp+20, cb) != 0) {
 16929  		goto __148
 16930  	}
 16931  	goto ESCAPE_FAILED
 16932  __148:
 16933  	;
 16934  	if !(*(*TBOOL)(unsafe.Pointer(bp + 32)) != 0) {
 16935  		goto __149
 16936  	}
 16937  	if escape == ESC_P {
 16938  		escape = ESC_p
 16939  	} else {
 16940  		escape = ESC_P
 16941  	}
 16942  __149:
 16943  	;
 16944  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 16945  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(*(*Tuint16_t)(unsafe.Pointer(bp + 36)))<<16 | int32(*(*Tuint16_t)(unsafe.Pointer(bp + 38))))
 16946  	okquantifier = DTRUE
 16947  
 16948  	goto __118 // End \P and \p
 16949  
 16950  	// When \g is used with quotes or angle brackets as delimiters, it is a
 16951  	//       numerical or named subroutine call, and control comes here. When used
 16952  	//       with brace delimiters it is a numberical back reference and does not come
 16953  	//       here because check_escape() returns it directly as a reference. \k is
 16954  	//       always a named back reference.
 16955  
 16956  __136:
 16957  __137:
 16958  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\173' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\074' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\047') {
 16959  		goto __150
 16960  	}
 16961  
 16962  	if escape == ESC_g {
 16963  		*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR57
 16964  	} else {
 16965  		*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR69
 16966  	}
 16967  	goto ESCAPE_FAILED
 16968  __150:
 16969  	;
 16970  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\074' {
 16971  		terminator = uint32('\076')
 16972  	} else {
 16973  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\047' {
 16974  			terminator = uint32('\047')
 16975  		} else {
 16976  			terminator = uint32('\175')
 16977  		}
 16978  	}
 16979  
 16980  	// For a non-braced \g, check for a numerical recursion.
 16981  
 16982  	if !(escape == ESC_g && terminator != Tuint32_t('\175')) {
 16983  		goto __151
 16984  	}
 16985  
 16986  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 40 /* p */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + uintptr(1)
 16987  
 16988  	if !(read_number(tls, bp+40, ptrend, int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount), DMAX_GROUP_NUMBER, ERR61, bp+48,
 16989  		bp+20) != 0) {
 16990  		goto __152
 16991  	}
 16992  
 16993  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 40)) >= ptrend || Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 40))))) != terminator) {
 16994  		goto __153
 16995  	}
 16996  
 16997  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR57
 16998  	goto ESCAPE_FAILED
 16999  __153:
 17000  	;
 17001  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 40 /* p */))
 17002  	goto SET_RECURSION
 17003  __152:
 17004  	;
 17005  	if !(*(*int32)(unsafe.Pointer(bp + 20)) != 0) {
 17006  		goto __154
 17007  	}
 17008  	goto ESCAPE_FAILED
 17009  __154:
 17010  	;
 17011  __151:
 17012  	;
 17013  
 17014  	// Not a numerical recursion
 17015  
 17016  	if !!(read_name(tls, bp+8, ptrend, utf, terminator, bp+56, bp+64, bp+72,
 17017  		bp+20, cb) != 0) {
 17018  		goto __155
 17019  	}
 17020  	goto ESCAPE_FAILED
 17021  __155:
 17022  	;
 17023  
 17024  	// \k and \g when used with braces are back references, whereas \g used
 17025  	//       with quotes or angle brackets is a recursion
 17026  
 17027  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = func() uint32 {
 17028  		if escape == ESC_k || terminator == Tuint32_t('\175') {
 17029  			return DMETA_BACKREF_BYNAME
 17030  		}
 17031  		return DMETA_RECURSE_BYNAME
 17032  	}()
 17033  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 72 /* namelen */))
 17034  
 17035  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 17036  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 17037  
 17038  	okquantifier = DTRUE
 17039  	goto __118 // End special escape processing
 17040  __118:
 17041  	;
 17042  __114:
 17043  	;
 17044  __112:
 17045  	;
 17046  	goto __84 // End escape sequence processing
 17047  
 17048  	// ---- Single-character special items ----
 17049  
 17050  __87:
 17051  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_CIRCUMFLEX
 17052  	goto __84
 17053  
 17054  __88:
 17055  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_DOLLAR
 17056  	goto __84
 17057  
 17058  __89:
 17059  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_DOT
 17060  	okquantifier = DTRUE
 17061  	goto __84
 17062  
 17063  	// ---- Single-character quantifiers ----
 17064  
 17065  __90:
 17066  	meta_quantifier = DMETA_ASTERISK
 17067  	goto CHECK_QUANTIFIER
 17068  
 17069  __91:
 17070  	meta_quantifier = DMETA_PLUS
 17071  	goto CHECK_QUANTIFIER
 17072  
 17073  __92:
 17074  	meta_quantifier = DMETA_QUERY
 17075  	goto CHECK_QUANTIFIER
 17076  
 17077  	// ---- Potential {n,m} quantifier ----
 17078  
 17079  __93:
 17080  	if !!(read_repeat_counts(tls, bp+8, ptrend, bp+76, bp+80,
 17081  		bp+20) != 0) {
 17082  		goto __156
 17083  	}
 17084  
 17085  	if !(*(*int32)(unsafe.Pointer(bp + 20)) != 0) {
 17086  		goto __157
 17087  	}
 17088  	goto FAILED
 17089  __157:
 17090  	; // Error in quantifier.
 17091  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 17092  	okquantifier = DTRUE
 17093  	// Not a quantifier
 17094  	goto __84 // No more quantifier processing
 17095  __156:
 17096  	;
 17097  	meta_quantifier = DMETA_MINMAX
 17098  	// Fall through
 17099  
 17100  	// ---- Quantifier post-processing ----
 17101  
 17102  	// Check that a quantifier is allowed after the previous item.
 17103  
 17104  CHECK_QUANTIFIER:
 17105  	if !!(prev_okquantifier != 0) {
 17106  		goto __158
 17107  	}
 17108  
 17109  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR9
 17110  	goto FAILED_BACK
 17111  __158:
 17112  	;
 17113  
 17114  	// Most (*VERB)s are not allowed to be quantified, but an ungreedy
 17115  	//     quantifier can be useful for (*ACCEPT) - meaning "succeed on backtrack", a
 17116  	//     sort of negated (*COMMIT). We therefore allow (*ACCEPT) to be quantified by
 17117  	//     wrapping it in non-capturing brackets, but we have to allow for a preceding
 17118  	//     (*MARK) for when (*ACCEPT) has an argument.
 17119  
 17120  	if !(*(*Tuint32_t)(unsafe.Pointer(parsed_pattern + libc.UintptrFromInt32(-1)*4)) == DMETA_ACCEPT) {
 17121  		goto __159
 17122  	}
 17123  
 17124  	p1 = parsed_pattern - uintptr(1)*4
 17125  __160:
 17126  	if !(p1 >= verbstartptr) {
 17127  		goto __162
 17128  	}
 17129  	*(*Tuint32_t)(unsafe.Pointer(p1 + 1*4)) = *(*Tuint32_t)(unsafe.Pointer(p1))
 17130  	goto __161
 17131  __161:
 17132  	p1 -= 4
 17133  	goto __160
 17134  	goto __162
 17135  __162:
 17136  	;
 17137  	*(*Tuint32_t)(unsafe.Pointer(verbstartptr)) = DMETA_NOCAPTURE
 17138  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern + 1*4)) = DMETA_KET
 17139  	parsed_pattern += 4 * uintptr(2)
 17140  __159:
 17141  	;
 17142  
 17143  	// Now we can put the quantifier into the parsed pattern vector. At this
 17144  	//     stage, we have only the basic quantifier. The check for a following + or ?
 17145  	//     modifier happens at the top of the loop, after any intervening comments
 17146  	//     have been removed.
 17147  
 17148  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = meta_quantifier
 17149  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\173')) {
 17150  		goto __163
 17151  	}
 17152  
 17153  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 76 /* min_repeat */))
 17154  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 80 /* max_repeat */))
 17155  __163:
 17156  	;
 17157  	goto __84
 17158  
 17159  	// ---- Character class ----
 17160  
 17161  __94:
 17162  	okquantifier = DTRUE
 17163  
 17164  	// In another (POSIX) regex library, the ugly syntax [[:<:]] and [[:>:]] is
 17165  	//     used for "start of word" and "end of word". As these are otherwise illegal
 17166  	//     sequences, we don't break anything by recognizing them. They are replaced
 17167  	//     by \b(?=\w) and \b(?<=\w) respectively. Sequences like [a[:<:]] are
 17168  	//     erroneous and are handled by the normal code below.
 17169  
 17170  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 >= int64(6) && (X_pcre2_strncmp_c8_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), ts+597, uint64(6)) == 0 || X_pcre2_strncmp_c8_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), ts+604, uint64(6)) == 0)) {
 17171  		goto __164
 17172  	}
 17173  
 17174  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + ESC_b
 17175  
 17176  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2))) == '\074') {
 17177  		goto __165
 17178  	}
 17179  
 17180  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_LOOKAHEAD
 17181  	goto __166
 17182  __165:
 17183  
 17184  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_LOOKBEHIND
 17185  	*(*TBOOL)(unsafe.Pointer(has_lookbehind)) = DTRUE
 17186  
 17187  	/* The offset is used only for the "non-fixed length" error; this won't
 17188  	   occur here, so just store zero. */
 17189  
 17190  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = uint32(Tsize_t(uint64(0)) >> 32)
 17191  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = uint32(uint64(0) & uint64(0xffffffff))
 17192  
 17193  __166:
 17194  	;
 17195  
 17196  	if !(options&DPCRE2_UCP == Tuint32_t(0)) {
 17197  		goto __167
 17198  	}
 17199  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + ESC_w
 17200  	goto __168
 17201  __167:
 17202  
 17203  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + ESC_p
 17204  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(DPT_WORD) << 16)
 17205  __168:
 17206  	;
 17207  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_KET
 17208  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(6)
 17209  	goto __84
 17210  __164:
 17211  	;
 17212  
 17213  	// PCRE supports POSIX class stuff inside a class. Perl gives an error if
 17214  	//     they are encountered at the top level, so we'll do that too.
 17215  
 17216  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\072' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\056' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\075') && check_posix_syntax(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), ptrend, bp+24) != 0) {
 17217  		goto __169
 17218  	}
 17219  
 17220  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostDecUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1)))) == '\072' {
 17221  		*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR12
 17222  	} else {
 17223  		*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR13
 17224  	}
 17225  	goto FAILED
 17226  __169:
 17227  	;
 17228  
 17229  	// Process a regular character class. If the first character is '^', set
 17230  	//     the negation flag. If the first few characters (either before or after ^)
 17231  	//     are \Q\E or \E or space or tab in extended-more mode, we skip them too.
 17232  	//     This makes for compatibility with Perl.
 17233  
 17234  	negate_class = DFALSE
 17235  __170:
 17236  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend) {
 17237  		goto __171
 17238  	}
 17239  
 17240  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), 1))))
 17241  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) >= 0xc0) {
 17242  		goto __172
 17243  	}
 17244  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x20 == Tuint32_t(0)) {
 17245  		goto __173
 17246  	}
 17247  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1))))&0x3f
 17248  	goto __174
 17249  __173:
 17250  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x10 == Tuint32_t(0)) {
 17251  		goto __175
 17252  	}
 17253  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f
 17254  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(2)
 17255  	goto __176
 17256  __175:
 17257  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x08 == Tuint32_t(0)) {
 17258  		goto __177
 17259  	}
 17260  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f
 17261  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(3)
 17262  	goto __178
 17263  __177:
 17264  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x04 == Tuint32_t(0)) {
 17265  		goto __179
 17266  	}
 17267  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f
 17268  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(4)
 17269  	goto __180
 17270  __179:
 17271  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 4)))&0x3f
 17272  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(5)
 17273  __180:
 17274  	;
 17275  __178:
 17276  	;
 17277  __176:
 17278  	;
 17279  __174:
 17280  	;
 17281  __172:
 17282  	;
 17283  
 17284  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\134')) {
 17285  		goto __181
 17286  	}
 17287  
 17288  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\105') {
 17289  		goto __183
 17290  	}
 17291  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 17292  	goto __184
 17293  __183:
 17294  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 >= int64(3) && X_pcre2_strncmp_c8_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), ts+611, uint64(3)) == 0) {
 17295  		goto __185
 17296  	}
 17297  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(3)
 17298  	goto __186
 17299  __185:
 17300  	goto __171
 17301  __186:
 17302  	;
 17303  __184:
 17304  	;
 17305  	goto __182
 17306  __181:
 17307  	if !(options&DPCRE2_EXTENDED_MORE != Tuint32_t(0) && (*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\040') || *(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\011'))) {
 17308  		goto __187
 17309  	} // Note: just these two
 17310  	goto __170
 17311  	goto __188
 17312  __187:
 17313  	if !(!(negate_class != 0) && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\136')) {
 17314  		goto __189
 17315  	}
 17316  	negate_class = DTRUE
 17317  	goto __190
 17318  __189:
 17319  	goto __171
 17320  __190:
 17321  	;
 17322  __188:
 17323  	;
 17324  __182:
 17325  	;
 17326  	goto __170
 17327  __171:
 17328  	;
 17329  
 17330  	// Now the real contents of the class; c has the first "real" character.
 17331  	//     Empty classes are permitted only if the option is set.
 17332  
 17333  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\135') && (*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_ALLOW_EMPTY_CLASS != Tuint32_t(0)) {
 17334  		goto __191
 17335  	}
 17336  
 17337  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = func() uint32 {
 17338  		if negate_class != 0 {
 17339  			return DMETA_CLASS_EMPTY_NOT
 17340  		}
 17341  		return DMETA_CLASS_EMPTY
 17342  	}()
 17343  	goto __84 // End of class processing
 17344  __191:
 17345  	;
 17346  
 17347  	// Process a non-empty class.
 17348  
 17349  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = func() uint32 {
 17350  		if negate_class != 0 {
 17351  			return DMETA_CLASS_NOT
 17352  		}
 17353  		return DMETA_CLASS
 17354  	}()
 17355  	class_range_state = RANGE_NO
 17356  
 17357  	// In an EBCDIC environment, Perl treats alphabetic ranges specially
 17358  	//     because there are holes in the encoding, and simply using the range A-Z
 17359  	//     (for example) would include the characters in the holes. This applies only
 17360  	//     to ranges where both values are literal; [\xC1-\xE9] is different to [A-Z]
 17361  	//     in this respect. In order to accommodate this, we keep track of whether
 17362  	//     character values are literal or not, and a state variable for handling
 17363  	//     ranges.
 17364  
 17365  	// Loop for the contents of the class
 17366  
 17367  __192:
 17368  	char_is_literal = DTRUE
 17369  
 17370  	// Inside \Q...\E everything is literal except \E
 17371  
 17372  	if !(inescq != 0) {
 17373  		goto __195
 17374  	}
 17375  
 17376  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\134') && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\105') {
 17377  		goto __196
 17378  	}
 17379  
 17380  	inescq = DFALSE                                      // Reset literal state
 17381  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++ // Skip the 'E'
 17382  	goto CLASS_CONTINUE
 17383  __196:
 17384  	;
 17385  	goto CLASS_LITERAL
 17386  __195:
 17387  	;
 17388  
 17389  	// Skip over space and tab (only) in extended-more mode.
 17390  
 17391  	if !(options&DPCRE2_EXTENDED_MORE != Tuint32_t(0) && (*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\040') || *(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\011'))) {
 17392  		goto __197
 17393  	}
 17394  	goto CLASS_CONTINUE
 17395  __197:
 17396  	;
 17397  
 17398  	// Handle POSIX class names. Perl allows a negation extension of the
 17399  	//       form [:^name:]. A square bracket that doesn't match the syntax is
 17400  	//       treated as a literal. We also recognize the POSIX constructions
 17401  	//       [.ch.] and [=ch=] ("collating elements") and fault them, as Perl
 17402  	//       5.6 and 5.8 do.
 17403  
 17404  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\133') && (int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 >= int64(3) && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\072' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\056' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\075') && check_posix_syntax(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), ptrend, bp+24) != 0) {
 17405  		goto __198
 17406  	}
 17407  
 17408  	posix_negate = DFALSE
 17409  
 17410  	// Perl treats a hyphen before a POSIX class as a literal, not the
 17411  	//         start of a range. However, it gives a warning in its warning mode. PCRE
 17412  	//         does not have a warning mode, so we give an error, because this is
 17413  	//         likely an error on the user's part.
 17414  
 17415  	if !(class_range_state == RANGE_STARTED) {
 17416  		goto __200
 17417  	}
 17418  
 17419  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR50
 17420  	goto FAILED
 17421  __200:
 17422  	;
 17423  
 17424  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\072') {
 17425  		goto __201
 17426  	}
 17427  
 17428  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR13
 17429  	goto FAILED_BACK
 17430  __201:
 17431  	;
 17432  
 17433  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1)))) == '\136') {
 17434  		goto __202
 17435  	}
 17436  
 17437  	posix_negate = DTRUE
 17438  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 17439  __202:
 17440  	;
 17441  
 17442  	posix_class = check_posix_name(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), int32((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)))-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1))
 17443  	if !(posix_class < 0) {
 17444  		goto __203
 17445  	}
 17446  
 17447  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR30
 17448  	goto FAILED
 17449  __203:
 17450  	;
 17451  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24)) + uintptr(2)
 17452  
 17453  	// Perl treats a hyphen after a POSIX class as a literal, not the
 17454  	//         start of a range. However, it gives a warning in its warning mode
 17455  	//         unless the hyphen is the last character in the class. PCRE does not
 17456  	//         have a warning mode, so we give an error, because this is likely an
 17457  	//         error on the user's part.
 17458  
 17459  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend-uintptr(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\055' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) != '\135') {
 17460  		goto __204
 17461  	}
 17462  
 17463  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR50
 17464  	goto FAILED
 17465  __204:
 17466  	;
 17467  
 17468  	// Set "a hyphen is not the start of a range" for the -] case, and also
 17469  	//         in case the POSIX class is followed by \E or \Q\E (possibly repeated -
 17470  	//         fuzzers do that kind of thing) and *then* a hyphen. This causes that
 17471  	//         hyphen to be treated as a literal. I don't think it's worth setting up
 17472  	//         special apparatus to do otherwise.
 17473  
 17474  	class_range_state = RANGE_NO
 17475  
 17476  	// When PCRE2_UCP is set, some of the POSIX classes are converted to
 17477  	//         use Unicode properties \p or \P or, in one case, \h or \H. The
 17478  	//         substitutes table has two values per class, containing the type and
 17479  	//         value of a \p or \P item. The special cases are specified with a
 17480  	//         negative type: a non-zero value causes \h or \H to be used, and a zero
 17481  	//         value falls through to behave like a non-UCP POSIX class.
 17482  
 17483  	if !(options&DPCRE2_UCP != Tuint32_t(0)) {
 17484  		goto __205
 17485  	}
 17486  
 17487  	ptype1 = posix_substitutes[2*posix_class]
 17488  	pvalue = posix_substitutes[2*posix_class+1]
 17489  	if !(ptype1 >= 0) {
 17490  		goto __206
 17491  	}
 17492  
 17493  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + func() uint32 {
 17494  		if posix_negate != 0 {
 17495  			return ESC_P
 17496  		}
 17497  		return ESC_p
 17498  	}()
 17499  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(ptype1<<16 | pvalue)
 17500  	goto CLASS_CONTINUE
 17501  __206:
 17502  	;
 17503  
 17504  	if !(pvalue != 0) {
 17505  		goto __207
 17506  	}
 17507  
 17508  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + func() uint32 {
 17509  		if posix_negate != 0 {
 17510  			return ESC_H
 17511  		}
 17512  		return ESC_h
 17513  	}()
 17514  	goto CLASS_CONTINUE
 17515  __207:
 17516  	;
 17517  
 17518  	// Fall through
 17519  __205:
 17520  	;
 17521  
 17522  	// Non-UCP POSIX class
 17523  
 17524  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = func() uint32 {
 17525  		if posix_negate != 0 {
 17526  			return DMETA_POSIX_NEG
 17527  		}
 17528  		return DMETA_POSIX
 17529  	}()
 17530  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(posix_class)
 17531  	goto __199
 17532  __198:
 17533  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\055') && class_range_state >= RANGE_OK_ESCAPED) {
 17534  		goto __208
 17535  	}
 17536  
 17537  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = func() uint32 {
 17538  		if class_range_state == RANGE_OK_LITERAL {
 17539  			return DMETA_RANGE_LITERAL
 17540  		}
 17541  		return DMETA_RANGE_ESCAPED
 17542  	}()
 17543  	class_range_state = RANGE_STARTED
 17544  	goto __209
 17545  __208:
 17546  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) != Tuint32_t('\134')) {
 17547  		goto __210
 17548  	}
 17549  
 17550  CLASS_LITERAL:
 17551  	if !(class_range_state == RANGE_STARTED) {
 17552  		goto __212
 17553  	}
 17554  
 17555  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == *(*Tuint32_t)(unsafe.Pointer(parsed_pattern + libc.UintptrFromInt32(-2)*4))) {
 17556  		goto __214
 17557  	} // Optimize one-char range
 17558  	parsed_pattern -= 4
 17559  	goto __215
 17560  __214:
 17561  	if !(*(*Tuint32_t)(unsafe.Pointer(parsed_pattern + libc.UintptrFromInt32(-2)*4)) > *(*Tuint32_t)(unsafe.Pointer(bp + 16))) {
 17562  		goto __216
 17563  	} /* Check range is in order */
 17564  
 17565  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR8
 17566  	goto FAILED_BACK
 17567  	goto __217
 17568  __216:
 17569  
 17570  	if !(!(char_is_literal != 0) && *(*Tuint32_t)(unsafe.Pointer(parsed_pattern + libc.UintptrFromInt32(-1)*4)) == DMETA_RANGE_LITERAL) {
 17571  		goto __218
 17572  	}
 17573  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern + libc.UintptrFromInt32(-1)*4)) = DMETA_RANGE_ESCAPED
 17574  __218:
 17575  	;
 17576  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 17577  	okquantifier = DTRUE
 17578  
 17579  __217:
 17580  	;
 17581  __215:
 17582  	;
 17583  	class_range_state = RANGE_NO
 17584  	goto __213
 17585  __212: /* Potential start of range */
 17586  
 17587  	if char_is_literal != 0 {
 17588  		class_range_state = RANGE_OK_LITERAL
 17589  	} else {
 17590  		class_range_state = RANGE_OK_ESCAPED
 17591  	}
 17592  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */))
 17593  	okquantifier = DTRUE
 17594  
 17595  __213:
 17596  	;
 17597  	goto __211
 17598  __210:
 17599  
 17600  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* tempptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))
 17601  	escape = X_pcre2_check_escape_8(tls, bp+8, ptrend, bp+16, bp+20, options,
 17602  		(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fextra_options, DTRUE, cb)
 17603  
 17604  	if !(*(*int32)(unsafe.Pointer(bp + 20)) != 0) {
 17605  		goto __219
 17606  	}
 17607  
 17608  	if !(extra_options&DPCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL == Tuint32_t(0)) {
 17609  		goto __220
 17610  	}
 17611  	goto FAILED
 17612  __220:
 17613  	;
 17614  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 24 /* tempptr */))
 17615  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 17616  		goto __221
 17617  	}
 17618  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t('\134')
 17619  	goto __222
 17620  __221:
 17621  
 17622  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), 1))))
 17623  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) >= 0xc0) {
 17624  		goto __223
 17625  	}
 17626  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x20 == Tuint32_t(0)) {
 17627  		goto __224
 17628  	}
 17629  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1))))&0x3f
 17630  	goto __225
 17631  __224:
 17632  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x10 == Tuint32_t(0)) {
 17633  		goto __226
 17634  	}
 17635  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f
 17636  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(2)
 17637  	goto __227
 17638  __226:
 17639  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x08 == Tuint32_t(0)) {
 17640  		goto __228
 17641  	}
 17642  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f
 17643  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(3)
 17644  	goto __229
 17645  __228:
 17646  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x04 == Tuint32_t(0)) {
 17647  		goto __230
 17648  	}
 17649  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f
 17650  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(4)
 17651  	goto __231
 17652  __230:
 17653  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 4)))&0x3f
 17654  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(5)
 17655  __231:
 17656  	;
 17657  __229:
 17658  	;
 17659  __227:
 17660  	;
 17661  __225:
 17662  	;
 17663  __223:
 17664  	;
 17665  
 17666  	// Get character value, increment pointer
 17667  __222:
 17668  	;
 17669  	escape = 0 // Treat as literal character
 17670  __219:
 17671  	;
 17672  
 17673  	switch escape {
 17674  	case 0:
 17675  		goto __233
 17676  
 17677  	case ESC_b:
 17678  		goto __234
 17679  
 17680  	case ESC_Q:
 17681  		goto __235
 17682  
 17683  	case ESC_E:
 17684  		goto __236
 17685  
 17686  	case ESC_B:
 17687  		goto __237 // Always an error in a class
 17688  	case ESC_R:
 17689  		goto __238
 17690  	case ESC_X:
 17691  		goto __239
 17692  	}
 17693  	goto __232
 17694  
 17695  __233: // Escaped character code point is in c
 17696  	char_is_literal = DFALSE
 17697  	goto CLASS_LITERAL
 17698  
 17699  __234:
 17700  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t('\010') // \b is backspace in a class
 17701  	char_is_literal = DFALSE
 17702  	goto CLASS_LITERAL
 17703  
 17704  __235:
 17705  	inescq = DTRUE // Enter literal mode
 17706  	goto CLASS_CONTINUE
 17707  
 17708  __236: // Ignore orphan \E
 17709  	goto CLASS_CONTINUE
 17710  
 17711  __237: // Always an error in a class
 17712  __238:
 17713  __239:
 17714  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR7
 17715  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))--
 17716  	goto FAILED
 17717  __232:
 17718  	;
 17719  
 17720  	// The second part of a range can be a single-character escape
 17721  	//         sequence (detected above), but not any of the other escapes. Perl
 17722  	//         treats a hyphen as a literal in such circumstances. However, in Perl's
 17723  	//         warning mode, a warning is given, so PCRE now faults it, as it is
 17724  	//         almost certainly a mistake on the user's part.
 17725  
 17726  	if !(class_range_state == RANGE_STARTED) {
 17727  		goto __240
 17728  	}
 17729  
 17730  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR50
 17731  	goto FAILED // Not CLASS_ESCAPE_FAILED; always an error
 17732  __240:
 17733  	;
 17734  
 17735  	// Of the remaining escapes, only those that define characters are
 17736  	//         allowed in a class. None may start a range.
 17737  
 17738  	class_range_state = RANGE_NO
 17739  	switch escape {
 17740  	case ESC_N:
 17741  		goto __242
 17742  
 17743  	case ESC_H:
 17744  		goto __243
 17745  	case ESC_h:
 17746  		goto __244
 17747  	case ESC_V:
 17748  		goto __245
 17749  	case ESC_v:
 17750  		goto __246
 17751  
 17752  	// These escapes are converted to Unicode property tests when
 17753  	//           PCRE2_UCP is set.
 17754  
 17755  	case ESC_d:
 17756  		goto __247
 17757  	case ESC_D:
 17758  		goto __248
 17759  	case ESC_s:
 17760  		goto __249
 17761  	case ESC_S:
 17762  		goto __250
 17763  	case ESC_w:
 17764  		goto __251
 17765  	case ESC_W:
 17766  		goto __252
 17767  
 17768  	// Explicit Unicode property matching
 17769  
 17770  	case ESC_P:
 17771  		goto __253
 17772  	case ESC_p:
 17773  		goto __254 // End \P and \p
 17774  
 17775  	default:
 17776  		goto __255
 17777  	}
 17778  	goto __241
 17779  
 17780  __242:
 17781  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR71
 17782  	goto FAILED
 17783  
 17784  __243:
 17785  __244:
 17786  __245:
 17787  __246:
 17788  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 17789  	goto __241
 17790  
 17791  	// These escapes are converted to Unicode property tests when
 17792  	//           PCRE2_UCP is set.
 17793  
 17794  __247:
 17795  __248:
 17796  __249:
 17797  __250:
 17798  __251:
 17799  __252:
 17800  	if !(options&DPCRE2_UCP == Tuint32_t(0)) {
 17801  		goto __256
 17802  	}
 17803  
 17804  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 17805  	goto __257
 17806  __256:
 17807  
 17808  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + func() uint32 {
 17809  		if escape == ESC_d || escape == ESC_s || escape == ESC_w {
 17810  			return ESC_p
 17811  		}
 17812  		return ESC_P
 17813  	}()
 17814  	switch escape {
 17815  	case ESC_d:
 17816  		goto __259
 17817  	case ESC_D:
 17818  		goto __260
 17819  
 17820  	case ESC_s:
 17821  		goto __261
 17822  	case ESC_S:
 17823  		goto __262
 17824  
 17825  	case ESC_w:
 17826  		goto __263
 17827  	case ESC_W:
 17828  		goto __264
 17829  	}
 17830  	goto __258
 17831  
 17832  __259:
 17833  __260:
 17834  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(DPT_PC)<<16 | ucp_Nd)
 17835  	goto __258
 17836  
 17837  __261:
 17838  __262:
 17839  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(DPT_SPACE) << 16)
 17840  	goto __258
 17841  
 17842  __263:
 17843  __264:
 17844  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(DPT_WORD) << 16)
 17845  	goto __258
 17846  __258:
 17847  	;
 17848  __257:
 17849  	;
 17850  	goto __241
 17851  
 17852  	// Explicit Unicode property matching
 17853  
 17854  __253:
 17855  __254:
 17856  
 17857  	*(*Tuint16_t)(unsafe.Pointer(bp + 88 /* ptype2 */)) = Tuint16_t(0)
 17858  	*(*Tuint16_t)(unsafe.Pointer(bp + 90 /* pdata1 */)) = Tuint16_t(0)
 17859  	if !!(get_ucp(tls, bp+8, bp+84, bp+88, bp+90, bp+20, cb) != 0) {
 17860  		goto __265
 17861  	}
 17862  	goto FAILED
 17863  __265:
 17864  	;
 17865  	if !(*(*TBOOL)(unsafe.Pointer(bp + 84)) != 0) {
 17866  		goto __266
 17867  	}
 17868  	if escape == ESC_P {
 17869  		escape = ESC_p
 17870  	} else {
 17871  		escape = ESC_P
 17872  	}
 17873  __266:
 17874  	;
 17875  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + uint32(escape)
 17876  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(int32(*(*Tuint16_t)(unsafe.Pointer(bp + 88)))<<16 | int32(*(*Tuint16_t)(unsafe.Pointer(bp + 90))))
 17877  
 17878  	goto __241 // End \P and \p
 17879  
 17880  __255: // All others are not allowed in a class
 17881  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR7
 17882  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))--
 17883  	goto FAILED
 17884  __241:
 17885  	;
 17886  
 17887  	// Perl gives a warning unless a following hyphen is the last character
 17888  	//         in the class. PCRE throws an error.
 17889  
 17890  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend-uintptr(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\055' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) != '\135') {
 17891  		goto __267
 17892  	}
 17893  
 17894  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR50
 17895  	goto FAILED
 17896  __267:
 17897  	;
 17898  __211:
 17899  	;
 17900  __209:
 17901  	;
 17902  __199:
 17903  	;
 17904  
 17905  	// Proceed to next thing in the class.
 17906  
 17907  CLASS_CONTINUE:
 17908  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 17909  		goto __268
 17910  	}
 17911  
 17912  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR6 // Missing terminating ']'
 17913  	goto FAILED
 17914  __268:
 17915  	;
 17916  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), 1))))
 17917  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 16)) >= 0xc0) {
 17918  		goto __269
 17919  	}
 17920  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x20 == Tuint32_t(0)) {
 17921  		goto __270
 17922  	}
 17923  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1))))&0x3f
 17924  	goto __271
 17925  __270:
 17926  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x10 == Tuint32_t(0)) {
 17927  		goto __272
 17928  	}
 17929  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f
 17930  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(2)
 17931  	goto __273
 17932  __272:
 17933  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x08 == Tuint32_t(0)) {
 17934  		goto __274
 17935  	}
 17936  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f
 17937  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(3)
 17938  	goto __275
 17939  __274:
 17940  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x04 == Tuint32_t(0)) {
 17941  		goto __276
 17942  	}
 17943  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f
 17944  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(4)
 17945  	goto __277
 17946  __276:
 17947  	*(*Tuint32_t)(unsafe.Pointer(bp + 16 /* c */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 16))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 4)))&0x3f
 17948  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(5)
 17949  __277:
 17950  	;
 17951  __275:
 17952  	;
 17953  __273:
 17954  	;
 17955  __271:
 17956  	;
 17957  __269:
 17958  	;
 17959  
 17960  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) == Tuint32_t('\135') && !(inescq != 0)) {
 17961  		goto __278
 17962  	}
 17963  	goto __194
 17964  __278:
 17965  	;
 17966  	goto __193
 17967  __193:
 17968  	goto __192
 17969  	goto __194
 17970  __194:
 17971  	; // End of class-processing loop
 17972  
 17973  	// -] at the end of a class is a literal '-'
 17974  
 17975  	if !(class_range_state == RANGE_STARTED) {
 17976  		goto __279
 17977  	}
 17978  
 17979  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern + libc.UintptrFromInt32(-1)*4)) = Tuint32_t('\055')
 17980  	class_range_state = RANGE_NO
 17981  __279:
 17982  	;
 17983  
 17984  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_CLASS_END
 17985  	goto __84 // End of character class
 17986  
 17987  	// ---- Opening parenthesis ----
 17988  
 17989  __95:
 17990  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 17991  		goto __280
 17992  	}
 17993  	goto UNCLOSED_PARENTHESIS
 17994  __280:
 17995  	;
 17996  
 17997  	// If ( is not followed by ? it is either a capture or a special verb or an
 17998  	//     alpha assertion or a positive non-atomic lookahead.
 17999  
 18000  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\077') {
 18001  		goto __281
 18002  	}
 18003  
 18004  	// Handle capturing brackets (or non-capturing if auto-capture is turned
 18005  	//       off).
 18006  
 18007  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\052') {
 18008  		goto __282
 18009  	}
 18010  
 18011  	nest_depth++
 18012  	if !(options&DPCRE2_NO_AUTO_CAPTURE == Tuint32_t(0)) {
 18013  		goto __284
 18014  	}
 18015  
 18016  	if !((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount >= DMAX_GROUP_NUMBER) {
 18017  		goto __286
 18018  	}
 18019  
 18020  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR97
 18021  	goto FAILED
 18022  __286:
 18023  	;
 18024  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount++
 18025  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_CAPTURE | (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount
 18026  	goto __285
 18027  __284:
 18028  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_NOCAPTURE
 18029  __285:
 18030  	;
 18031  	goto __283
 18032  __282:
 18033  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 <= int64(1) || libc.AssignPtrUint32(bp+16, Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1)))) == Tuint32_t('\051')) {
 18034  		goto __287
 18035  	}
 18036  	goto __84
 18037  	goto __288
 18038  __287:
 18039  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 16)) <= 255 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fctypes + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 16))))))&Dctype_lcletter != 0) {
 18040  		goto __289
 18041  	}
 18042  
 18043  	vn = uintptr(unsafe.Pointer(&alasnames))
 18044  	if !!(read_name(tls, bp+8, ptrend, utf, uint32(0), bp+56, bp+64, bp+72,
 18045  		bp+20, cb) != 0) {
 18046  		goto __291
 18047  	}
 18048  	goto FAILED
 18049  __291:
 18050  	;
 18051  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\072') {
 18052  		goto __292
 18053  	}
 18054  
 18055  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR95 // Malformed
 18056  	goto FAILED
 18057  __292:
 18058  	;
 18059  
 18060  	// Scan the table of alpha assertion names
 18061  
 18062  	*(*int32)(unsafe.Pointer(bp + 48 /* i */)) = 0
 18063  __293:
 18064  	if !(*(*int32)(unsafe.Pointer(bp + 48)) < alascount) {
 18065  		goto __295
 18066  	}
 18067  
 18068  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 72)) == alasmeta[*(*int32)(unsafe.Pointer(bp + 48))].Flen && X_pcre2_strncmp_c8_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64)), vn, uint64(*(*Tuint32_t)(unsafe.Pointer(bp + 72)))) == 0) {
 18069  		goto __296
 18070  	}
 18071  	goto __295
 18072  __296:
 18073  	;
 18074  	vn += uintptr(alasmeta[*(*int32)(unsafe.Pointer(bp + 48))].Flen + uint32(1))
 18075  	goto __294
 18076  __294:
 18077  	*(*int32)(unsafe.Pointer(bp + 48 /* i */))++
 18078  	goto __293
 18079  	goto __295
 18080  __295:
 18081  	;
 18082  
 18083  	if !(*(*int32)(unsafe.Pointer(bp + 48)) >= alascount) {
 18084  		goto __297
 18085  	}
 18086  
 18087  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR95 // Alpha assertion not recognized
 18088  	goto FAILED
 18089  __297:
 18090  	;
 18091  
 18092  	// Check for expecting an assertion condition. If so, only atomic
 18093  	//         lookaround assertions are valid.
 18094  
 18095  	meta = alasmeta[*(*int32)(unsafe.Pointer(bp + 48 /* i */))].Fmeta
 18096  	if !(prev_expect_cond_assert > 0 && (meta < DMETA_LOOKAHEAD || meta > DMETA_LOOKBEHINDNOT)) {
 18097  		goto __298
 18098  	}
 18099  
 18100  	if meta == DMETA_LOOKAHEAD_NA || meta == DMETA_LOOKBEHIND_NA {
 18101  		*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR98
 18102  	} else {
 18103  		*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR28
 18104  	} // (Atomic) assertion expected
 18105  	goto FAILED
 18106  __298:
 18107  	;
 18108  
 18109  	// The lookaround alphabetic synonyms can mostly be handled by jumping
 18110  	//         to the code that handles the traditional symbolic forms.
 18111  
 18112  	switch meta {
 18113  	default:
 18114  		goto __300 // the meta values come from a table above.
 18115  
 18116  	case DMETA_ATOMIC:
 18117  		goto __301
 18118  
 18119  	case DMETA_LOOKAHEAD:
 18120  		goto __302
 18121  
 18122  	case DMETA_LOOKAHEAD_NA:
 18123  		goto __303
 18124  
 18125  	case DMETA_LOOKAHEADNOT:
 18126  		goto __304
 18127  
 18128  	case DMETA_LOOKBEHIND:
 18129  		goto __305
 18130  	case DMETA_LOOKBEHINDNOT:
 18131  		goto __306
 18132  	case DMETA_LOOKBEHIND_NA:
 18133  		goto __307
 18134  
 18135  	// The script run facilities are handled here. Unicode support is
 18136  	//           required (give an error if not, as this is a security issue). Always
 18137  	//           record a META_SCRIPT_RUN item. Then, for the atomic version, insert
 18138  	//           META_ATOMIC and remember that we need two META_KETs at the end.
 18139  
 18140  	case DMETA_SCRIPT_RUN:
 18141  		goto __308
 18142  	case DMETA_ATOMIC_SCRIPT_RUN:
 18143  		goto __309
 18144  	}
 18145  	goto __299
 18146  
 18147  __300:
 18148  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR89 // Unknown code; should never occur because
 18149  	goto FAILED                                                // the meta values come from a table above.
 18150  
 18151  __301:
 18152  	goto ATOMIC_GROUP
 18153  
 18154  __302:
 18155  	goto POSITIVE_LOOK_AHEAD
 18156  
 18157  __303:
 18158  	goto POSITIVE_NONATOMIC_LOOK_AHEAD
 18159  
 18160  __304:
 18161  	goto NEGATIVE_LOOK_AHEAD
 18162  
 18163  __305:
 18164  __306:
 18165  __307:
 18166  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = meta
 18167  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))--
 18168  	goto POST_LOOKBEHIND
 18169  
 18170  	// The script run facilities are handled here. Unicode support is
 18171  	//           required (give an error if not, as this is a security issue). Always
 18172  	//           record a META_SCRIPT_RUN item. Then, for the atomic version, insert
 18173  	//           META_ATOMIC and remember that we need two META_KETs at the end.
 18174  
 18175  __308:
 18176  __309:
 18177  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_SCRIPT_RUN
 18178  	nest_depth++
 18179  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18180  	if !(meta == DMETA_ATOMIC_SCRIPT_RUN) {
 18181  		goto __310
 18182  	}
 18183  
 18184  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ATOMIC
 18185  	if !(top_nest == uintptr(0)) {
 18186  		goto __311
 18187  	}
 18188  	top_nest = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace
 18189  	goto __312
 18190  __311:
 18191  	if !(libc.PreIncUintptr(&top_nest, 12) >= end_nests) {
 18192  		goto __313
 18193  	}
 18194  
 18195  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR84
 18196  	goto FAILED
 18197  __313:
 18198  	;
 18199  __312:
 18200  	;
 18201  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fnest_depth = nest_depth
 18202  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fflags = uint16(DNSF_ATOMICSR)
 18203  	(*Tnest_save)(unsafe.Pointer(top_nest)).Foptions = options & (DPCRE2_CASELESS | DPCRE2_DOTALL | DPCRE2_DUPNAMES | DPCRE2_EXTENDED | DPCRE2_EXTENDED_MORE | DPCRE2_MULTILINE | DPCRE2_NO_AUTO_CAPTURE | DPCRE2_UNGREEDY)
 18204  __310:
 18205  	;
 18206  	goto __299
 18207  __299:
 18208  	;
 18209  	goto __290
 18210  __289:
 18211  
 18212  	vn = uintptr(unsafe.Pointer(&verbnames))
 18213  	if !!(read_name(tls, bp+8, ptrend, utf, uint32(0), bp+56, bp+64, bp+72,
 18214  		bp+20, cb) != 0) {
 18215  		goto __314
 18216  	}
 18217  	goto FAILED
 18218  __314:
 18219  	;
 18220  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\072' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051') {
 18221  		goto __315
 18222  	}
 18223  
 18224  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR60 // Malformed
 18225  	goto FAILED
 18226  __315:
 18227  	;
 18228  
 18229  	// Scan the table of verb names
 18230  
 18231  	*(*int32)(unsafe.Pointer(bp + 48 /* i */)) = 0
 18232  __316:
 18233  	if !(*(*int32)(unsafe.Pointer(bp + 48)) < verbcount) {
 18234  		goto __318
 18235  	}
 18236  
 18237  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 72)) == verbs[*(*int32)(unsafe.Pointer(bp + 48))].Flen && X_pcre2_strncmp_c8_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64)), vn, uint64(*(*Tuint32_t)(unsafe.Pointer(bp + 72)))) == 0) {
 18238  		goto __319
 18239  	}
 18240  	goto __318
 18241  __319:
 18242  	;
 18243  	vn += uintptr(verbs[*(*int32)(unsafe.Pointer(bp + 48))].Flen + uint32(1))
 18244  	goto __317
 18245  __317:
 18246  	*(*int32)(unsafe.Pointer(bp + 48 /* i */))++
 18247  	goto __316
 18248  	goto __318
 18249  __318:
 18250  	;
 18251  
 18252  	if !(*(*int32)(unsafe.Pointer(bp + 48)) >= verbcount) {
 18253  		goto __320
 18254  	}
 18255  
 18256  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR60 // Verb not recognized
 18257  	goto FAILED
 18258  __320:
 18259  	;
 18260  
 18261  	// An empty argument is treated as no argument.
 18262  
 18263  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\072' && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))+uintptr(1) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) == '\051') {
 18264  		goto __321
 18265  	}
 18266  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18267  __321:
 18268  	; // Advance to the closing parens
 18269  
 18270  	// Check for mandatory non-empty argument; this is (*MARK)
 18271  
 18272  	if !(verbs[*(*int32)(unsafe.Pointer(bp + 48))].Fhas_arg > 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\072') {
 18273  		goto __322
 18274  	}
 18275  
 18276  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR66
 18277  	goto FAILED
 18278  __322:
 18279  	;
 18280  
 18281  	// Remember where this verb, possibly with a preceding (*MARK), starts,
 18282  	//         for handling quantified (*ACCEPT).
 18283  
 18284  	verbstartptr = parsed_pattern
 18285  	okquantifier = libc.Bool32(verbs[*(*int32)(unsafe.Pointer(bp + 48))].Fmeta == DMETA_ACCEPT)
 18286  
 18287  	// It appears that Perl allows any characters whatsoever, other than a
 18288  	//         closing parenthesis, to appear in arguments ("names"), so we no longer
 18289  	//         insist on letters, digits, and underscores. Perl does not, however, do
 18290  	//         any interpretation within arguments, and has no means of including a
 18291  	//         closing parenthesis. PCRE supports escape processing but only when it
 18292  	//         is requested by an option. We set inverbname TRUE here, and let the
 18293  	//         main loop take care of this so that escape and \x processing is done by
 18294  	//         the main code above.
 18295  
 18296  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1)))) == '\072') {
 18297  		goto __323
 18298  	} /* Skip past : or ) */
 18299  
 18300  	// Some optional arguments can be treated as a preceding (*MARK)
 18301  
 18302  	if !(verbs[*(*int32)(unsafe.Pointer(bp + 48))].Fhas_arg < 0) {
 18303  		goto __325
 18304  	}
 18305  
 18306  	add_after_mark = verbs[*(*int32)(unsafe.Pointer(bp + 48 /* i */))].Fmeta
 18307  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_MARK
 18308  	goto __326
 18309  __325:
 18310  
 18311  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = verbs[*(*int32)(unsafe.Pointer(bp + 48))].Fmeta + func() uint32 {
 18312  		if verbs[*(*int32)(unsafe.Pointer(bp + 48))].Fmeta != DMETA_MARK {
 18313  			return 0x00010000
 18314  		}
 18315  		return uint32(0)
 18316  	}()
 18317  __326:
 18318  	;
 18319  
 18320  	// Set up for reading the name in the main loop.
 18321  
 18322  	verblengthptr = libc.PostIncUintptr(&parsed_pattern, 4)
 18323  	verbnamestart = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))
 18324  	inverbname = DTRUE
 18325  	goto __324
 18326  __323: /* No verb "name" argument */
 18327  
 18328  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = verbs[*(*int32)(unsafe.Pointer(bp + 48 /* i */))].Fmeta
 18329  __324:
 18330  	;
 18331  __290:
 18332  	;
 18333  __288:
 18334  	;
 18335  __283:
 18336  	;         // End of (*VERB) handling
 18337  	goto __84 // Done with this parenthesis
 18338  __281:
 18339  	; // End of groups that don't start with (?
 18340  
 18341  	// ---- Items starting (? ----
 18342  
 18343  	// The type of item is determined by what follows (?. Handle (?| and option
 18344  	//     changes under "default" because both need a new block on the nest stack.
 18345  	//     Comments starting with (?# are handled above. Note that there is some
 18346  	//     ambiguity about the sequence (?- because if a digit follows it's a relative
 18347  	//     recursion or subroutine call whereas otherwise it's an option unsetting.
 18348  
 18349  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) >= ptrend) {
 18350  		goto __327
 18351  	}
 18352  	goto UNCLOSED_PARENTHESIS
 18353  __327:
 18354  	;
 18355  
 18356  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))))) {
 18357  	default:
 18358  		goto __329 // End default case after (?
 18359  
 18360  	// ---- Python syntax support ----
 18361  
 18362  	case '\120':
 18363  		goto __330 // End of (?P processing
 18364  
 18365  	// ---- Recursion/subroutine calls by number ----
 18366  
 18367  	case '\122':
 18368  		goto __331
 18369  
 18370  	// An item starting (?- followed by a digit comes here via the "default"
 18371  	//       case because (?- followed by a non-digit is an options setting.
 18372  
 18373  	case '\053':
 18374  		goto __332
 18375  	// Fall through
 18376  
 18377  	case '\060':
 18378  		goto __333
 18379  	case '\061':
 18380  		goto __334
 18381  	case '\062':
 18382  		goto __335
 18383  	case '\063':
 18384  		goto __336
 18385  	case '\064':
 18386  		goto __337
 18387  	case '\065':
 18388  		goto __338
 18389  	case '\066':
 18390  		goto __339
 18391  	case '\067':
 18392  		goto __340
 18393  	case '\070':
 18394  		goto __341
 18395  	case '\071':
 18396  		goto __342 // End of recursive call by number handling
 18397  
 18398  	// ---- Recursion/subroutine calls by name ----
 18399  
 18400  	case '\046':
 18401  		goto __343
 18402  
 18403  	// ---- Callout with numerical or string argument ----
 18404  
 18405  	case '\103':
 18406  		goto __344 // End callout
 18407  
 18408  	// ---- Conditional group ----
 18409  
 18410  	// A condition can be an assertion, a number (referring to a numbered
 18411  	//       group's having been set), a name (referring to a named group), or 'R',
 18412  	//       referring to overall recursion. R<digits> and R&name are also permitted
 18413  	//       for recursion state tests. Numbers may be preceded by + or - to specify a
 18414  	//       relative group number.
 18415  	//
 18416  	//       There are several syntaxes for testing a named group: (?(name)) is used
 18417  	//       by Python; Perl 5.10 onwards uses (?(<name>) or (?('name')).
 18418  	//
 18419  	//       There are two unfortunate ambiguities. 'R' can be the recursive thing or
 18420  	//       the name 'R' (and similarly for 'R' followed by digits). 'DEFINE' can be
 18421  	//       the Perl DEFINE feature or the Python named test. We look for a name
 18422  	//       first; if not found, we try the other case.
 18423  	//
 18424  	//       For compatibility with auto-callouts, we allow a callout to be specified
 18425  	//       before a condition that is an assertion.
 18426  
 18427  	case '\050':
 18428  		goto __345 // End of condition processing
 18429  
 18430  	// ---- Atomic group ----
 18431  
 18432  	case '\076':
 18433  		goto __346
 18434  
 18435  	// ---- Lookahead assertions ----
 18436  
 18437  	case '\075':
 18438  		goto __347
 18439  
 18440  	case '\052':
 18441  		goto __348
 18442  
 18443  	case '\041':
 18444  		goto __349
 18445  
 18446  	// ---- Lookbehind assertions ----
 18447  
 18448  	// (?< followed by = or ! or * is a lookbehind assertion. Otherwise (?<
 18449  	//       is the start of the name of a capturing group.
 18450  
 18451  	case '\074':
 18452  		goto __350
 18453  
 18454  	// ---- Define a named group ----
 18455  
 18456  	// A named group may be defined as (?'name') or (?<name>). In the latter
 18457  	//       case we jump to DEFINE_NAME from the disambiguation of (?< above with the
 18458  	//       terminator set to '>'.
 18459  
 18460  	case '\047':
 18461  		goto __351
 18462  	}
 18463  	goto __328
 18464  
 18465  __329:
 18466  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\055' && (int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 > int64(1) && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) <= '\071')) {
 18467  		goto __352
 18468  	}
 18469  	goto RECURSION_BYNUMBER
 18470  __352:
 18471  	; // The + case is handled by CHAR_PLUS
 18472  
 18473  	// We now have either (?| or a (possibly empty) option setting,
 18474  	//       optionally followed by a non-capturing group.
 18475  
 18476  	nest_depth++
 18477  	if !(top_nest == uintptr(0)) {
 18478  		goto __353
 18479  	}
 18480  	top_nest = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace
 18481  	goto __354
 18482  __353:
 18483  	if !(libc.PreIncUintptr(&top_nest, 12) >= end_nests) {
 18484  		goto __355
 18485  	}
 18486  
 18487  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR84
 18488  	goto FAILED
 18489  __355:
 18490  	;
 18491  __354:
 18492  	;
 18493  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fnest_depth = nest_depth
 18494  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fflags = Tuint16_t(0)
 18495  	(*Tnest_save)(unsafe.Pointer(top_nest)).Foptions = options & (DPCRE2_CASELESS | DPCRE2_DOTALL | DPCRE2_DUPNAMES | DPCRE2_EXTENDED | DPCRE2_EXTENDED_MORE | DPCRE2_MULTILINE | DPCRE2_NO_AUTO_CAPTURE | DPCRE2_UNGREEDY)
 18496  
 18497  	// Start of non-capturing group that resets the capture count for each
 18498  	//       branch.
 18499  
 18500  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\174') {
 18501  		goto __356
 18502  	}
 18503  
 18504  	(*Tnest_save)(unsafe.Pointer(top_nest)).Freset_group = Tuint16_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount)
 18505  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fmax_group = Tuint16_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount)
 18506  	*(*Tuint16_t)(unsafe.Pointer(top_nest + 6)) |= uint16(DNSF_RESET)
 18507  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_DUPCAPUSED)
 18508  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_NOCAPTURE
 18509  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18510  	goto __357
 18511  __356:
 18512  
 18513  	hyphenok = DTRUE
 18514  	oldoptions = options
 18515  
 18516  	(*Tnest_save)(unsafe.Pointer(top_nest)).Freset_group = Tuint16_t(0)
 18517  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fmax_group = Tuint16_t(0)
 18518  	*(*Tuint32_t)(unsafe.Pointer(bp + 92 /* set */)) = libc.AssignPtrUint32(bp+96 /* unset */, Tuint32_t(0))
 18519  	optset = bp + 92 /* &set */
 18520  
 18521  	// ^ at the start unsets imnsx and disables the subsequent use of -
 18522  
 18523  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\136') {
 18524  		goto __358
 18525  	}
 18526  
 18527  	options = options & libc.CplUint32(DPCRE2_CASELESS|DPCRE2_MULTILINE|DPCRE2_NO_AUTO_CAPTURE|DPCRE2_DOTALL|DPCRE2_EXTENDED|DPCRE2_EXTENDED_MORE)
 18528  	hyphenok = DFALSE
 18529  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18530  __358:
 18531  	;
 18532  
 18533  __359:
 18534  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\072') {
 18535  		goto __360
 18536  	}
 18537  
 18538  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), 1)))) {
 18539  	case '\055':
 18540  		goto __362
 18541  
 18542  	case '\112':
 18543  		goto __363
 18544  
 18545  	case '\151':
 18546  		goto __364
 18547  	case '\155':
 18548  		goto __365
 18549  	case '\156':
 18550  		goto __366
 18551  	case '\163':
 18552  		goto __367
 18553  	case '\125':
 18554  		goto __368
 18555  
 18556  	// If x appears twice it sets the extended extended option.
 18557  
 18558  	case '\170':
 18559  		goto __369
 18560  
 18561  	default:
 18562  		goto __370
 18563  	}
 18564  	goto __361
 18565  
 18566  __362:
 18567  	if !!(hyphenok != 0) {
 18568  		goto __371
 18569  	}
 18570  
 18571  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR94
 18572  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // Correct the offset
 18573  	goto FAILED
 18574  __371:
 18575  	;
 18576  	optset = bp + 96 /* &unset */
 18577  	hyphenok = DFALSE
 18578  	goto __361
 18579  
 18580  __363: // Record that it changed in the external options
 18581  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_DUPNAMES
 18582  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_JCHANGED)
 18583  	goto __361
 18584  
 18585  __364:
 18586  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_CASELESS
 18587  	goto __361
 18588  __365:
 18589  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_MULTILINE
 18590  	goto __361
 18591  __366:
 18592  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_NO_AUTO_CAPTURE
 18593  	goto __361
 18594  __367:
 18595  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_DOTALL
 18596  	goto __361
 18597  __368:
 18598  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_UNGREEDY
 18599  	goto __361
 18600  
 18601  	// If x appears twice it sets the extended extended option.
 18602  
 18603  __369:
 18604  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_EXTENDED
 18605  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\170') {
 18606  		goto __372
 18607  	}
 18608  
 18609  	*(*Tuint32_t)(unsafe.Pointer(optset)) |= DPCRE2_EXTENDED_MORE
 18610  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18611  __372:
 18612  	;
 18613  	goto __361
 18614  
 18615  __370:
 18616  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR11
 18617  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // Correct the offset
 18618  	goto FAILED
 18619  __361:
 18620  	;
 18621  	goto __359
 18622  __360:
 18623  	;
 18624  
 18625  	// If we are setting extended without extended-more, ensure that any
 18626  	//         existing extended-more gets unset. Also, unsetting extended must also
 18627  	//         unset extended-more.
 18628  
 18629  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 92))&(DPCRE2_EXTENDED|DPCRE2_EXTENDED_MORE) == DPCRE2_EXTENDED || *(*Tuint32_t)(unsafe.Pointer(bp + 96))&DPCRE2_EXTENDED != Tuint32_t(0)) {
 18630  		goto __373
 18631  	}
 18632  	*(*Tuint32_t)(unsafe.Pointer(bp + 96 /* unset */)) |= DPCRE2_EXTENDED_MORE
 18633  __373:
 18634  	;
 18635  
 18636  	options = (options | *(*Tuint32_t)(unsafe.Pointer(bp + 92))) & ^*(*Tuint32_t)(unsafe.Pointer(bp + 96))
 18637  
 18638  	// If the options ended with ')' this is not the start of a nested
 18639  	//         group with option changes, so the options change at this level.
 18640  	//         In this case, if the previous level set up a nest block, discard the
 18641  	//         one we have just created. Otherwise adjust it for the previous level.
 18642  	//         If the options ended with ':' we are starting a non-capturing group,
 18643  	//         possibly with an options setting.
 18644  
 18645  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 18646  		goto __374
 18647  	}
 18648  	goto UNCLOSED_PARENTHESIS
 18649  __374:
 18650  	;
 18651  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1)))) == '\051') {
 18652  		goto __375
 18653  	}
 18654  
 18655  	nest_depth-- // This is not a nested group after all.
 18656  	if !(top_nest > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace && int32((*Tnest_save)(unsafe.Pointer(top_nest-uintptr(1)*12)).Fnest_depth) == int32(nest_depth)) {
 18657  		goto __377
 18658  	}
 18659  	top_nest -= 12
 18660  	goto __378
 18661  __377:
 18662  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fnest_depth = nest_depth
 18663  __378:
 18664  	;
 18665  	goto __376
 18666  __375:
 18667  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_NOCAPTURE
 18668  __376:
 18669  	;
 18670  
 18671  	// If nothing changed, no need to record.
 18672  
 18673  	if !(options != oldoptions) {
 18674  		goto __379
 18675  	}
 18676  
 18677  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_OPTIONS
 18678  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = options
 18679  __379:
 18680  	;
 18681  __357:
 18682  	;          // End options processing
 18683  	goto __328 // End default case after (?
 18684  
 18685  	// ---- Python syntax support ----
 18686  
 18687  __330:
 18688  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) >= ptrend) {
 18689  		goto __380
 18690  	}
 18691  	goto UNCLOSED_PARENTHESIS
 18692  __380:
 18693  	;
 18694  
 18695  	// (?P<name> is the same as (?<name>, which defines a named group.
 18696  
 18697  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\074') {
 18698  		goto __381
 18699  	}
 18700  
 18701  	terminator = Tuint32_t('\076')
 18702  	goto DEFINE_NAME
 18703  __381:
 18704  	;
 18705  
 18706  	// (?P>name) is the same as (?&name), which is a recursion or subroutine
 18707  	//       call.
 18708  
 18709  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\076') {
 18710  		goto __382
 18711  	}
 18712  	goto RECURSE_BY_NAME
 18713  __382:
 18714  	;
 18715  
 18716  	// (?P=name) is the same as \k<name>, a back reference by name. Anything
 18717  	//       else after (?P is an error.
 18718  
 18719  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\075') {
 18720  		goto __383
 18721  	}
 18722  
 18723  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR41
 18724  	goto FAILED
 18725  __383:
 18726  	;
 18727  	if !!(read_name(tls, bp+8, ptrend, utf, uint32('\051'), bp+56, bp+64,
 18728  		bp+72, bp+20, cb) != 0) {
 18729  		goto __384
 18730  	}
 18731  	goto FAILED
 18732  __384:
 18733  	;
 18734  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_BACKREF_BYNAME
 18735  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 72 /* namelen */))
 18736  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 18737  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 18738  
 18739  	okquantifier = DTRUE
 18740  	goto __328 // End of (?P processing
 18741  
 18742  	// ---- Recursion/subroutine calls by number ----
 18743  
 18744  __331:
 18745  	*(*int32)(unsafe.Pointer(bp + 48 /* i */)) = 0 // (?R) == (?R0)
 18746  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18747  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051') {
 18748  		goto __385
 18749  	}
 18750  
 18751  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR58
 18752  	goto FAILED
 18753  __385:
 18754  	;
 18755  	goto SET_RECURSION
 18756  
 18757  	// An item starting (?- followed by a digit comes here via the "default"
 18758  	//       case because (?- followed by a non-digit is an options setting.
 18759  
 18760  __332:
 18761  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 < int64(2) || !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) <= '\071')) {
 18762  		goto __386
 18763  	}
 18764  
 18765  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR29 // Missing number
 18766  	goto FAILED
 18767  __386:
 18768  	;
 18769  	// Fall through
 18770  
 18771  __333:
 18772  __334:
 18773  __335:
 18774  __336:
 18775  __337:
 18776  __338:
 18777  __339:
 18778  __340:
 18779  __341:
 18780  __342:
 18781  RECURSION_BYNUMBER:
 18782  	if !!(read_number(tls, bp+8, ptrend,
 18783  		func() int32 {
 18784  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) <= '\071' {
 18785  				return -1
 18786  			}
 18787  			return int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount)
 18788  		}(),
 18789  		DMAX_GROUP_NUMBER, ERR61,
 18790  		bp+48, bp+20) != 0) {
 18791  		goto __387
 18792  	}
 18793  	goto FAILED
 18794  __387:
 18795  	;
 18796  	if !(*(*int32)(unsafe.Pointer(bp + 48)) < 0) {
 18797  		goto __388
 18798  	} /* NB (?0) is permitted */
 18799  
 18800  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR15 // Unknown group
 18801  	goto FAILED_BACK
 18802  __388:
 18803  	;
 18804  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051') {
 18805  		goto __389
 18806  	}
 18807  	goto UNCLOSED_PARENTHESIS
 18808  __389:
 18809  	;
 18810  
 18811  SET_RECURSION:
 18812  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_RECURSE | Tuint32_t(*(*int32)(unsafe.Pointer(bp + 48)))
 18813  	*(*Tsize_t)(unsafe.Pointer(bp + 56 /* offset */)) = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))) - int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern)) / 1)
 18814  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18815  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 18816  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 18817  
 18818  	okquantifier = DTRUE
 18819  	goto __328 // End of recursive call by number handling
 18820  
 18821  	// ---- Recursion/subroutine calls by name ----
 18822  
 18823  __343:
 18824  RECURSE_BY_NAME:
 18825  	if !!(read_name(tls, bp+8, ptrend, utf, uint32('\051'), bp+56, bp+64,
 18826  		bp+72, bp+20, cb) != 0) {
 18827  		goto __390
 18828  	}
 18829  	goto FAILED
 18830  __390:
 18831  	;
 18832  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_RECURSE_BYNAME
 18833  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 72 /* namelen */))
 18834  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 18835  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 18836  
 18837  	okquantifier = DTRUE
 18838  	goto __328
 18839  
 18840  	// ---- Callout with numerical or string argument ----
 18841  
 18842  __344:
 18843  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) >= ptrend) {
 18844  		goto __391
 18845  	}
 18846  	goto UNCLOSED_PARENTHESIS
 18847  __391:
 18848  	;
 18849  
 18850  	// If the previous item was a condition starting (?(? an assertion,
 18851  	//       optionally preceded by a callout, is expected. This is checked later on,
 18852  	//       during actual compilation. However we need to identify this kind of
 18853  	//       assertion in this pass because it must not be qualified. The value of
 18854  	//       expect_cond_assert is set to 2 after (?(? is processed. We decrement it
 18855  	//       for a callout - still leaving a positive value that identifies the
 18856  	//       assertion. Multiple callouts or any other items will make it zero or
 18857  	//       less, which doesn't matter because they will cause an error later.
 18858  
 18859  	expect_cond_assert = prev_expect_cond_assert - 1
 18860  
 18861  	// If previous_callout is not NULL, it means this follows a previous
 18862  	//       callout. If it was a manual callout, do nothing; this means its "length
 18863  	//       of next pattern item" field will remain zero. If it was an automatic
 18864  	//       callout, abolish it.
 18865  
 18866  	if !(*(*uintptr)(unsafe.Pointer(bp)) != uintptr(0) && options&DPCRE2_AUTO_CALLOUT != Tuint32_t(0) && *(*uintptr)(unsafe.Pointer(bp)) == parsed_pattern-uintptr(4)*4 && *(*Tuint32_t)(unsafe.Pointer(parsed_pattern + libc.UintptrFromInt32(-1)*4)) == Tuint32_t(255)) {
 18867  		goto __392
 18868  	}
 18869  	parsed_pattern = *(*uintptr)(unsafe.Pointer(bp /* previous_callout */))
 18870  __392:
 18871  	;
 18872  
 18873  	// Save for updating next pattern item length, and skip one item before
 18874  	//       completing.
 18875  
 18876  	*(*uintptr)(unsafe.Pointer(bp /* previous_callout */)) = parsed_pattern
 18877  	after_manual_callout = 1
 18878  
 18879  	// Handle a string argument; specific delimiter is required.
 18880  
 18881  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051' && !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) <= '\071')) {
 18882  		goto __393
 18883  	}
 18884  
 18885  	startptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))
 18886  
 18887  	delimiter = Tuint32_t(0)
 18888  	*(*int32)(unsafe.Pointer(bp + 48 /* i */)) = 0
 18889  __395:
 18890  	if !(X_pcre2_callout_start_delims_8[*(*int32)(unsafe.Pointer(bp + 48))] != Tuint32_t(0)) {
 18891  		goto __397
 18892  	}
 18893  
 18894  	if !(Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == X_pcre2_callout_start_delims_8[*(*int32)(unsafe.Pointer(bp + 48))]) {
 18895  		goto __398
 18896  	}
 18897  
 18898  	delimiter = X_pcre2_callout_end_delims_8[*(*int32)(unsafe.Pointer(bp + 48 /* i */))]
 18899  	goto __397
 18900  __398:
 18901  	;
 18902  	goto __396
 18903  __396:
 18904  	*(*int32)(unsafe.Pointer(bp + 48 /* i */))++
 18905  	goto __395
 18906  	goto __397
 18907  __397:
 18908  	;
 18909  	if !(delimiter == Tuint32_t(0)) {
 18910  		goto __399
 18911  	}
 18912  
 18913  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR82
 18914  	goto FAILED
 18915  __399:
 18916  	;
 18917  
 18918  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern)) = DMETA_CALLOUT_STRING
 18919  	parsed_pattern += 4 * uintptr(3) // Skip pattern info
 18920  
 18921  __400:
 18922  
 18923  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) >= ptrend) {
 18924  		goto __403
 18925  	}
 18926  
 18927  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR81
 18928  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) = startptr // To give a more useful message
 18929  	goto FAILED
 18930  __403:
 18931  	;
 18932  	if !(Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == delimiter && (libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) >= ptrend || Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != delimiter)) {
 18933  		goto __404
 18934  	}
 18935  	goto __402
 18936  __404:
 18937  	;
 18938  	goto __401
 18939  __401:
 18940  	goto __400
 18941  	goto __402
 18942  __402:
 18943  	;
 18944  
 18945  	calloutlength = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))) - int64(startptr)) / 1)
 18946  	if !(calloutlength > uint64(4294967295)) {
 18947  		goto __405
 18948  	}
 18949  
 18950  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR72
 18951  	goto FAILED
 18952  __405:
 18953  	;
 18954  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(calloutlength)
 18955  	*(*Tsize_t)(unsafe.Pointer(bp + 56 /* offset */)) = Tsize_t((int64(startptr) - int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern)) / 1)
 18956  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 18957  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 18958  
 18959  	goto __394
 18960  __393:
 18961  
 18962  	n = 0
 18963  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern)) = DMETA_CALLOUT_NUMBER // Numerical callout
 18964  	parsed_pattern += 4 * uintptr(3)                                     // Skip pattern info
 18965  __406:
 18966  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) < ptrend && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) <= '\071')) {
 18967  		goto __407
 18968  	}
 18969  
 18970  	n = n*10 + int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1)))) - '\060'
 18971  	if !(n > 255) {
 18972  		goto __408
 18973  	}
 18974  
 18975  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR38
 18976  	goto FAILED
 18977  __408:
 18978  	;
 18979  	goto __406
 18980  __407:
 18981  	;
 18982  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(n)
 18983  __394:
 18984  	;
 18985  
 18986  	// Both formats must have a closing parenthesis
 18987  
 18988  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051') {
 18989  		goto __409
 18990  	}
 18991  
 18992  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR39
 18993  	goto FAILED
 18994  __409:
 18995  	;
 18996  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 18997  
 18998  	// Remember the offset to the next item in the pattern, and set a default
 18999  	//       length. This should get updated after the next item is read.
 19000  
 19001  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* previous_callout */)) + 1*4)) = Tuint32_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))) - int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern)) / 1)
 19002  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* previous_callout */)) + 2*4)) = Tuint32_t(0)
 19003  	goto __328 // End callout
 19004  
 19005  	// ---- Conditional group ----
 19006  
 19007  	// A condition can be an assertion, a number (referring to a numbered
 19008  	//       group's having been set), a name (referring to a named group), or 'R',
 19009  	//       referring to overall recursion. R<digits> and R&name are also permitted
 19010  	//       for recursion state tests. Numbers may be preceded by + or - to specify a
 19011  	//       relative group number.
 19012  	//
 19013  	//       There are several syntaxes for testing a named group: (?(name)) is used
 19014  	//       by Python; Perl 5.10 onwards uses (?(<name>) or (?('name')).
 19015  	//
 19016  	//       There are two unfortunate ambiguities. 'R' can be the recursive thing or
 19017  	//       the name 'R' (and similarly for 'R' followed by digits). 'DEFINE' can be
 19018  	//       the Perl DEFINE feature or the Python named test. We look for a name
 19019  	//       first; if not found, we try the other case.
 19020  	//
 19021  	//       For compatibility with auto-callouts, we allow a callout to be specified
 19022  	//       before a condition that is an assertion.
 19023  
 19024  __345:
 19025  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) >= ptrend) {
 19026  		goto __410
 19027  	}
 19028  	goto UNCLOSED_PARENTHESIS
 19029  __410:
 19030  	;
 19031  	nest_depth++
 19032  
 19033  	// If the next character is ? or * there must be an assertion next
 19034  	//       (optionally preceded by a callout). We do not check this here, but
 19035  	//       instead we set expect_cond_assert to 2. If this is still greater than
 19036  	//       zero (callouts decrement it) when the next assertion is read, it will be
 19037  	//       marked as a condition that must not be repeated. A value greater than
 19038  	//       zero also causes checking that an assertion (possibly with callout)
 19039  	//       follows.
 19040  
 19041  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\077' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\052') {
 19042  		goto __411
 19043  	}
 19044  
 19045  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_COND_ASSERT
 19046  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // Pull pointer back to the opening parenthesis.
 19047  	expect_cond_assert = 2
 19048  	goto __328 // End of conditional
 19049  __411:
 19050  	;
 19051  
 19052  	// Handle (?([+-]number)...
 19053  
 19054  	if !(read_number(tls, bp+8, ptrend, int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount), DMAX_GROUP_NUMBER, ERR61, bp+48,
 19055  		bp+20) != 0) {
 19056  		goto __412
 19057  	}
 19058  
 19059  	if !(*(*int32)(unsafe.Pointer(bp + 48)) <= 0) {
 19060  		goto __414
 19061  	}
 19062  
 19063  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR15
 19064  	goto FAILED
 19065  __414:
 19066  	;
 19067  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_COND_NUMBER
 19068  	*(*Tsize_t)(unsafe.Pointer(bp + 56 /* offset */)) = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))-int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern))/1 - int64(2))
 19069  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 19070  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 19071  
 19072  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*int32)(unsafe.Pointer(bp + 48 /* i */)))
 19073  	goto __413
 19074  __412:
 19075  	if !(*(*int32)(unsafe.Pointer(bp + 20)) != 0) {
 19076  		goto __415
 19077  	}
 19078  	goto FAILED
 19079  	goto __416
 19080  __415:
 19081  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 >= int64(10) && X_pcre2_strncmp_c8_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), ts+615, uint64(7)) == 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 7))) != '\051') {
 19082  		goto __417
 19083  	}
 19084  
 19085  	ge = Tuint32_t(0)
 19086  	*(*int32)(unsafe.Pointer(bp + 100 /* major */)) = 0
 19087  	minor = 0
 19088  
 19089  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(7)
 19090  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\076') {
 19091  		goto __419
 19092  	}
 19093  
 19094  	ge = Tuint32_t(1)
 19095  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 19096  __419:
 19097  	;
 19098  
 19099  	// NOTE: cannot write IS_DIGIT(*(++ptr)) here because IS_DIGIT
 19100  	//         references its argument twice.
 19101  
 19102  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\075' || func() bool {
 19103  		*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))++
 19104  		return !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) <= '\071')
 19105  	}()) {
 19106  		goto __420
 19107  	}
 19108  	goto BAD_VERSION_CONDITION
 19109  __420:
 19110  	;
 19111  
 19112  	if !!(read_number(tls, bp+8, ptrend, -1, uint32(1000), ERR79, bp+100, bp+20) != 0) {
 19113  		goto __421
 19114  	}
 19115  	goto FAILED
 19116  __421:
 19117  	;
 19118  
 19119  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 19120  		goto __422
 19121  	}
 19122  	goto BAD_VERSION_CONDITION
 19123  __422:
 19124  	;
 19125  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\056') {
 19126  		goto __423
 19127  	}
 19128  
 19129  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1) >= ptrend || !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) <= '\071')) {
 19130  		goto __424
 19131  	}
 19132  	goto BAD_VERSION_CONDITION
 19133  __424:
 19134  	;
 19135  	minor = (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1)))) - '\060') * 10
 19136  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 19137  		goto __425
 19138  	}
 19139  	goto BAD_VERSION_CONDITION
 19140  __425:
 19141  	;
 19142  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) <= '\071') {
 19143  		goto __426
 19144  	}
 19145  	minor = minor + (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)), 1)))) - '\060')
 19146  __426:
 19147  	;
 19148  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051') {
 19149  		goto __427
 19150  	}
 19151  	goto BAD_VERSION_CONDITION
 19152  __427:
 19153  	;
 19154  __423:
 19155  	;
 19156  
 19157  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_COND_VERSION
 19158  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = ge
 19159  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*int32)(unsafe.Pointer(bp + 100 /* major */)))
 19160  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(minor)
 19161  	goto __418
 19162  __417:
 19163  
 19164  	was_r_ampersand = DFALSE
 19165  
 19166  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\122' && (int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 > int64(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) == '\046') {
 19167  		goto __428
 19168  	}
 19169  
 19170  	terminator = Tuint32_t('\051')
 19171  	was_r_ampersand = DTRUE
 19172  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 19173  	goto __429
 19174  __428:
 19175  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\074') {
 19176  		goto __430
 19177  	}
 19178  	terminator = Tuint32_t('\076')
 19179  	goto __431
 19180  __430:
 19181  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) == '\047') {
 19182  		goto __432
 19183  	}
 19184  	terminator = Tuint32_t('\047')
 19185  	goto __433
 19186  __432:
 19187  
 19188  	terminator = Tuint32_t('\051')
 19189  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // Point to char before name
 19190  __433:
 19191  	;
 19192  __431:
 19193  	;
 19194  __429:
 19195  	;
 19196  	if !!(read_name(tls, bp+8, ptrend, utf, terminator, bp+56, bp+64, bp+72,
 19197  		bp+20, cb) != 0) {
 19198  		goto __434
 19199  	}
 19200  	goto FAILED
 19201  __434:
 19202  	;
 19203  
 19204  	// Handle (?(R&name)
 19205  
 19206  	if !(was_r_ampersand != 0) {
 19207  		goto __435
 19208  	}
 19209  
 19210  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern)) = DMETA_COND_RNAME
 19211  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // Back to closing parens
 19212  	goto __436
 19213  __435:
 19214  	if !(terminator == Tuint32_t('\051')) {
 19215  		goto __437
 19216  	}
 19217  
 19218  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 72)) == Tuint32_t(6) && X_pcre2_strncmp_c8_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64)), ts+623, uint64(6)) == 0) {
 19219  		goto __439
 19220  	}
 19221  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern)) = DMETA_COND_DEFINE
 19222  	goto __440
 19223  __439:
 19224  
 19225  	*(*int32)(unsafe.Pointer(bp + 48 /* i */)) = 1
 19226  __441:
 19227  	if !(*(*int32)(unsafe.Pointer(bp + 48)) < int32(*(*Tuint32_t)(unsafe.Pointer(bp + 72)))) {
 19228  		goto __443
 19229  	}
 19230  	if !!(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64)) + uintptr(*(*int32)(unsafe.Pointer(bp + 48)))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64)) + uintptr(*(*int32)(unsafe.Pointer(bp + 48)))))) <= '\071') {
 19231  		goto __444
 19232  	}
 19233  	goto __443
 19234  __444:
 19235  	;
 19236  	goto __442
 19237  __442:
 19238  	*(*int32)(unsafe.Pointer(bp + 48 /* i */))++
 19239  	goto __441
 19240  	goto __443
 19241  __443:
 19242  	;
 19243  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern)) = func() uint32 {
 19244  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64))))) == '\122' && *(*int32)(unsafe.Pointer(bp + 48)) >= int32(*(*Tuint32_t)(unsafe.Pointer(bp + 72))) {
 19245  			return DMETA_COND_RNUMBER
 19246  		}
 19247  		return DMETA_COND_NAME
 19248  	}()
 19249  __440:
 19250  	;
 19251  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))-- // Back to closing parens
 19252  	goto __438
 19253  __437:
 19254  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern)) = DMETA_COND_NAME
 19255  __438:
 19256  	;
 19257  __436:
 19258  	;
 19259  
 19260  	// All these cases except DEFINE end with the name length and offset;
 19261  	//         DEFINE just has an offset (for the "too many branches" error).
 19262  
 19263  	if !(*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) != DMETA_COND_DEFINE) {
 19264  		goto __445
 19265  	}
 19266  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = *(*Tuint32_t)(unsafe.Pointer(bp + 72 /* namelen */))
 19267  __445:
 19268  	;
 19269  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 19270  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 19271  
 19272  __418:
 19273  	;
 19274  __416:
 19275  	;
 19276  __413:
 19277  	; // End cases that read a name
 19278  
 19279  	// Check the closing parenthesis of the condition
 19280  
 19281  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))) != '\051') {
 19282  		goto __446
 19283  	}
 19284  
 19285  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR24
 19286  	goto FAILED
 19287  __446:
 19288  	;
 19289  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 19290  	goto __328 // End of condition processing
 19291  
 19292  	// ---- Atomic group ----
 19293  
 19294  __346:
 19295  ATOMIC_GROUP: // Come from (*atomic:
 19296  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ATOMIC
 19297  	nest_depth++
 19298  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 19299  	goto __328
 19300  
 19301  	// ---- Lookahead assertions ----
 19302  
 19303  __347:
 19304  POSITIVE_LOOK_AHEAD: // Come from (*pla:
 19305  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_LOOKAHEAD
 19306  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 19307  	goto POST_ASSERTION
 19308  
 19309  __348:
 19310  POSITIVE_NONATOMIC_LOOK_AHEAD: // Come from (?*
 19311  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_LOOKAHEAD_NA
 19312  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 19313  	goto POST_ASSERTION
 19314  
 19315  __349:
 19316  NEGATIVE_LOOK_AHEAD: // Come from (*nla:
 19317  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_LOOKAHEADNOT
 19318  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))++
 19319  	goto POST_ASSERTION
 19320  
 19321  	// ---- Lookbehind assertions ----
 19322  
 19323  	// (?< followed by = or ! or * is a lookbehind assertion. Otherwise (?<
 19324  	//       is the start of the name of a capturing group.
 19325  
 19326  __350:
 19327  	if !((int64(ptrend)-int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))))/1 <= int64(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) != '\075' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) != '\041' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) != '\052') {
 19328  		goto __447
 19329  	}
 19330  
 19331  	terminator = Tuint32_t('\076')
 19332  	goto DEFINE_NAME
 19333  __447:
 19334  	;
 19335  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = func() uint32 {
 19336  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) == '\075' {
 19337  			return DMETA_LOOKBEHIND
 19338  		}
 19339  		return func() uint32 {
 19340  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) + 1))) == '\041' {
 19341  				return DMETA_LOOKBEHINDNOT
 19342  			}
 19343  			return DMETA_LOOKBEHIND_NA
 19344  		}()
 19345  	}()
 19346  
 19347  POST_LOOKBEHIND: // Come from (*plb: (*naplb: and (*nlb:
 19348  	*(*TBOOL)(unsafe.Pointer(has_lookbehind)) = DTRUE
 19349  	*(*Tsize_t)(unsafe.Pointer(bp + 56 /* offset */)) = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)))-int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern))/1 - int64(2))
 19350  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) >> 32)
 19351  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = Tuint32_t(*(*Tsize_t)(unsafe.Pointer(bp + 56)) & uint64(0xffffffff))
 19352  
 19353  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)) += uintptr(2)
 19354  	// Fall through
 19355  
 19356  	// If the previous item was a condition starting (?(? an assertion,
 19357  	//       optionally preceded by a callout, is expected. This is checked later on,
 19358  	//       during actual compilation. However we need to identify this kind of
 19359  	//       assertion in this pass because it must not be qualified. The value of
 19360  	//       expect_cond_assert is set to 2 after (?(? is processed. We decrement it
 19361  	//       for a callout - still leaving a positive value that identifies the
 19362  	//       assertion. Multiple callouts or any other items will make it zero or
 19363  	//       less, which doesn't matter because they will cause an error later.
 19364  
 19365  POST_ASSERTION:
 19366  	nest_depth++
 19367  	if !(prev_expect_cond_assert > 0) {
 19368  		goto __448
 19369  	}
 19370  
 19371  	if !(top_nest == uintptr(0)) {
 19372  		goto __449
 19373  	}
 19374  	top_nest = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace
 19375  	goto __450
 19376  __449:
 19377  	if !(libc.PreIncUintptr(&top_nest, 12) >= end_nests) {
 19378  		goto __451
 19379  	}
 19380  
 19381  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR84
 19382  	goto FAILED
 19383  __451:
 19384  	;
 19385  __450:
 19386  	;
 19387  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fnest_depth = nest_depth
 19388  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fflags = uint16(DNSF_CONDASSERT)
 19389  	(*Tnest_save)(unsafe.Pointer(top_nest)).Foptions = options & (DPCRE2_CASELESS | DPCRE2_DOTALL | DPCRE2_DUPNAMES | DPCRE2_EXTENDED | DPCRE2_EXTENDED_MORE | DPCRE2_MULTILINE | DPCRE2_NO_AUTO_CAPTURE | DPCRE2_UNGREEDY)
 19390  __448:
 19391  	;
 19392  	goto __328
 19393  
 19394  	// ---- Define a named group ----
 19395  
 19396  	// A named group may be defined as (?'name') or (?<name>). In the latter
 19397  	//       case we jump to DEFINE_NAME from the disambiguation of (?< above with the
 19398  	//       terminator set to '>'.
 19399  
 19400  __351:
 19401  	terminator = Tuint32_t('\047') // Terminator
 19402  
 19403  DEFINE_NAME:
 19404  	if !!(read_name(tls, bp+8, ptrend, utf, terminator, bp+56, bp+64, bp+72,
 19405  		bp+20, cb) != 0) {
 19406  		goto __452
 19407  	}
 19408  	goto FAILED
 19409  __452:
 19410  	;
 19411  
 19412  	// We have a name for this capturing group. It is also assigned a number,
 19413  	//       which is its primary means of identification.
 19414  
 19415  	if !((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount >= DMAX_GROUP_NUMBER) {
 19416  		goto __453
 19417  	}
 19418  
 19419  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR97
 19420  	goto FAILED
 19421  __453:
 19422  	;
 19423  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount++
 19424  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_CAPTURE | (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount
 19425  	nest_depth++
 19426  
 19427  	// Check not too many names
 19428  
 19429  	if !(int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found) >= DMAX_NAME_COUNT) {
 19430  		goto __454
 19431  	}
 19432  
 19433  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR49
 19434  	goto FAILED
 19435  __454:
 19436  	;
 19437  
 19438  	// Adjust the entry size to accommodate the longest name found.
 19439  
 19440  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 72))+Tuint32_t(DIMM2_SIZE)+Tuint32_t(1) > Tuint32_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size)) {
 19441  		goto __455
 19442  	}
 19443  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size = Tuint16_t(*(*Tuint32_t)(unsafe.Pointer(bp + 72)) + Tuint32_t(DIMM2_SIZE) + Tuint32_t(1))
 19444  __455:
 19445  	;
 19446  
 19447  	// Scan the list to check for duplicates. For duplicate names, if the
 19448  	//       number is the same, break the loop, which causes the name to be
 19449  	//       discarded; otherwise, if DUPNAMES is not set, give an error.
 19450  	//       If it is set, allow the name with a different number, but continue
 19451  	//       scanning in case this is a duplicate with the same number. For
 19452  	//       non-duplicate names, give an error if the number is duplicated.
 19453  
 19454  	isdupname = DFALSE
 19455  	ng = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups
 19456  	*(*int32)(unsafe.Pointer(bp + 48 /* i */)) = 0
 19457  __456:
 19458  	if !(*(*int32)(unsafe.Pointer(bp + 48)) < int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)) {
 19459  		goto __458
 19460  	}
 19461  
 19462  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 72)) == Tuint32_t((*Tnamed_group_8)(unsafe.Pointer(ng)).Flength) && X_pcre2_strncmp_8(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64)), (*Tnamed_group_8)(unsafe.Pointer(ng)).Fname, Tsize_t(*(*Tuint32_t)(unsafe.Pointer(bp + 72)))) == 0) {
 19463  		goto __459
 19464  	}
 19465  
 19466  	if !((*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber == (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 19467  		goto __461
 19468  	}
 19469  	goto __458
 19470  __461:
 19471  	;
 19472  	if !(options&DPCRE2_DUPNAMES == Tuint32_t(0)) {
 19473  		goto __462
 19474  	}
 19475  
 19476  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR43
 19477  	goto FAILED
 19478  __462:
 19479  	;
 19480  	isdupname = TBOOL(libc.AssignPtrUint16(ng+14, Tuint16_t(DTRUE))) // Mark as a duplicate
 19481  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fdupnames = DTRUE        // Duplicate names exist
 19482  	goto __460
 19483  __459:
 19484  	if !((*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber == (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 19485  		goto __463
 19486  	}
 19487  
 19488  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR65
 19489  	goto FAILED
 19490  __463:
 19491  	;
 19492  __460:
 19493  	;
 19494  	goto __457
 19495  __457:
 19496  	*(*int32)(unsafe.Pointer(bp + 48 /* i */))++
 19497  	ng += 16
 19498  	goto __456
 19499  	goto __458
 19500  __458:
 19501  	;
 19502  
 19503  	if !(*(*int32)(unsafe.Pointer(bp + 48)) < int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)) {
 19504  		goto __464
 19505  	}
 19506  	goto __328
 19507  __464:
 19508  	; // Ignore duplicate with same number
 19509  
 19510  	// Increase the list size if necessary
 19511  
 19512  	if !(Tuint32_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found) >= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_group_list_size) {
 19513  		goto __465
 19514  	}
 19515  
 19516  	newsize = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_group_list_size * Tuint32_t(2)
 19517  	newspace =
 19518  		(*struct {
 19519  			f func(*libc.TLS, Tsize_t, uintptr) uintptr
 19520  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fmemctl.Fmalloc})).f(tls, uint64(newsize)*uint64(unsafe.Sizeof(Tnamed_group_8{})),
 19521  			(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fmemctl.Fmemory_data)
 19522  	if !(newspace == uintptr(0)) {
 19523  		goto __466
 19524  	}
 19525  
 19526  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR21
 19527  	goto FAILED
 19528  __466:
 19529  	;
 19530  
 19531  	libc.X__builtin___memcpy_chk(tls, newspace, (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups, uint64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_group_list_size)*uint64(unsafe.Sizeof(Tnamed_group_8{})), libc.X__builtin_object_size(tls, newspace, 0))
 19532  	if !((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_group_list_size > Tuint32_t(DNAMED_GROUP_LIST_SIZE)) {
 19533  		goto __467
 19534  	}
 19535  	(*struct {
 19536  		f func(*libc.TLS, uintptr, uintptr)
 19537  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fmemctl.Ffree})).f(tls, (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups,
 19538  		(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fmemctl.Fmemory_data)
 19539  __467:
 19540  	;
 19541  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups = newspace
 19542  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_group_list_size = newsize
 19543  __465:
 19544  	;
 19545  
 19546  	// Add this name to the list
 19547  
 19548  	(*Tnamed_group_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups + uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)*16)).Fname = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 64 /* name */))
 19549  	(*Tnamed_group_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups + uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)*16)).Flength = Tuint16_t(*(*Tuint32_t)(unsafe.Pointer(bp + 72 /* namelen */)))
 19550  	(*Tnamed_group_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups + uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)*16)).Fnumber = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount
 19551  	(*Tnamed_group_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups + uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)*16)).Fisdup = Tuint16_t(isdupname)
 19552  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found++
 19553  	goto __328
 19554  __328:
 19555  	;         // End of (? switch
 19556  	goto __84 // End of ( handling
 19557  
 19558  	// ---- Branch terminators ----
 19559  
 19560  	// Alternation: reset the capture count if we are in a (?| group.
 19561  
 19562  __96:
 19563  	if !(top_nest != uintptr(0) && int32((*Tnest_save)(unsafe.Pointer(top_nest)).Fnest_depth) == int32(nest_depth) && uint32((*Tnest_save)(unsafe.Pointer(top_nest)).Fflags)&DNSF_RESET != uint32(0)) {
 19564  		goto __468
 19565  	}
 19566  
 19567  	if !((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount > Tuint32_t((*Tnest_save)(unsafe.Pointer(top_nest)).Fmax_group)) {
 19568  		goto __469
 19569  	}
 19570  	(*Tnest_save)(unsafe.Pointer(top_nest)).Fmax_group = Tuint16_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount)
 19571  __469:
 19572  	;
 19573  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount = Tuint32_t((*Tnest_save)(unsafe.Pointer(top_nest)).Freset_group)
 19574  __468:
 19575  	;
 19576  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ALT
 19577  	goto __84
 19578  
 19579  	// End of group; reset the capture count to the maximum if we are in a (?|
 19580  	//     group and/or reset the options that are tracked during parsing. Disallow
 19581  	//     quantifier for a condition that is an assertion.
 19582  
 19583  __97:
 19584  	okquantifier = DTRUE
 19585  	if !(top_nest != uintptr(0) && int32((*Tnest_save)(unsafe.Pointer(top_nest)).Fnest_depth) == int32(nest_depth)) {
 19586  		goto __470
 19587  	}
 19588  
 19589  	options = options&libc.CplUint32(DPCRE2_CASELESS|DPCRE2_DOTALL|DPCRE2_DUPNAMES|DPCRE2_EXTENDED|DPCRE2_EXTENDED_MORE|DPCRE2_MULTILINE|DPCRE2_NO_AUTO_CAPTURE|DPCRE2_UNGREEDY) | (*Tnest_save)(unsafe.Pointer(top_nest)).Foptions
 19590  	if !(uint32((*Tnest_save)(unsafe.Pointer(top_nest)).Fflags)&DNSF_RESET != uint32(0) && Tuint32_t((*Tnest_save)(unsafe.Pointer(top_nest)).Fmax_group) > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 19591  		goto __471
 19592  	}
 19593  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount = Tuint32_t((*Tnest_save)(unsafe.Pointer(top_nest)).Fmax_group)
 19594  __471:
 19595  	;
 19596  	if !(uint32((*Tnest_save)(unsafe.Pointer(top_nest)).Fflags)&DNSF_CONDASSERT != uint32(0)) {
 19597  		goto __472
 19598  	}
 19599  	okquantifier = DFALSE
 19600  __472:
 19601  	;
 19602  
 19603  	if !(uint32((*Tnest_save)(unsafe.Pointer(top_nest)).Fflags)&DNSF_ATOMICSR != uint32(0)) {
 19604  		goto __473
 19605  	}
 19606  
 19607  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_KET
 19608  __473:
 19609  	;
 19610  
 19611  	if !(top_nest == (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace) {
 19612  		goto __474
 19613  	}
 19614  	top_nest = uintptr(0)
 19615  	goto __475
 19616  __474:
 19617  	top_nest -= 12
 19618  __475:
 19619  	;
 19620  __470:
 19621  	;
 19622  	if !(int32(nest_depth) == 0) {
 19623  		goto __476
 19624  	} /* Unmatched closing parenthesis */
 19625  
 19626  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR22
 19627  	goto FAILED_BACK
 19628  __476:
 19629  	;
 19630  	nest_depth--
 19631  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_KET
 19632  	goto __84
 19633  __84:
 19634  	; // End of switch on pattern character
 19635  	goto __19
 19636  __20:
 19637  	; // End of main character scan loop
 19638  
 19639  	// End of pattern reached. Check for missing ) at the end of a verb name.
 19640  
 19641  	if !(inverbname != 0 && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8)) >= ptrend) {
 19642  		goto __477
 19643  	}
 19644  
 19645  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR60
 19646  	goto FAILED
 19647  __477:
 19648  	;
 19649  
 19650  	// Manage callout for the final item
 19651  
 19652  PARSED_END:
 19653  	parsed_pattern = manage_callouts(tls, *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */)), bp, auto_callout,
 19654  		parsed_pattern, cb)
 19655  
 19656  	// Insert trailing items for word and line matching (features provided for the
 19657  	// benefit of pcre2grep).
 19658  
 19659  	if !(extra_options&DPCRE2_EXTRA_MATCH_LINE != Tuint32_t(0)) {
 19660  		goto __478
 19661  	}
 19662  
 19663  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_KET
 19664  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_DOLLAR
 19665  	goto __479
 19666  __478:
 19667  	if !(extra_options&DPCRE2_EXTRA_MATCH_WORD != Tuint32_t(0)) {
 19668  		goto __480
 19669  	}
 19670  
 19671  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_KET
 19672  	*(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&parsed_pattern, 4))) = DMETA_ESCAPE + ESC_b
 19673  __480:
 19674  	;
 19675  __479:
 19676  	;
 19677  
 19678  	// Terminate the parsed pattern, then return success if all groups are closed.
 19679  	// Otherwise we have unclosed parentheses.
 19680  
 19681  	if !(parsed_pattern >= parsed_pattern_end) {
 19682  		goto __481
 19683  	}
 19684  
 19685  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR63 // Internal error (parsed pattern overflow)
 19686  	goto FAILED
 19687  __481:
 19688  	;
 19689  
 19690  	*(*Tuint32_t)(unsafe.Pointer(parsed_pattern)) = DMETA_END
 19691  	if !(int32(nest_depth) == 0) {
 19692  		goto __482
 19693  	}
 19694  	return 0
 19695  __482:
 19696  	;
 19697  
 19698  UNCLOSED_PARENTHESIS:
 19699  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR14
 19700  
 19701  	// Come here for all failures.
 19702  
 19703  FAILED:
 19704  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8))) - int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern)) / 1)
 19705  	return *(*int32)(unsafe.Pointer(bp + 20 /* errorcode */))
 19706  
 19707  	// Some errors need to indicate the previous character.
 19708  
 19709  FAILED_BACK:
 19710  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* ptr */))--
 19711  	goto FAILED
 19712  
 19713  	// This failure happens several times.
 19714  
 19715  BAD_VERSION_CONDITION:
 19716  	*(*int32)(unsafe.Pointer(bp + 20 /* errorcode */)) = ERR79
 19717  	goto FAILED
 19718  	return int32(0)
 19719  }
 19720  
 19721  // ************************************************
 19722  //
 19723  //       Find first significant opcode            *
 19724  //
 19725  
 19726  // This is called by several functions that scan a compiled expression looking
 19727  // for a fixed first character, or an anchoring opcode etc. It skips over things
 19728  // that do not influence this. For some calls, it makes sense to skip negative
 19729  // forward and all backward assertions, and also the \b assertion; for others it
 19730  // does not.
 19731  //
 19732  // Arguments:
 19733  //   code         pointer to the start of the group
 19734  //   skipassert   TRUE if certain assertions are to be skipped
 19735  //
 19736  // Returns:       pointer to the first significant opcode
 19737  
 19738  func first_significant_code(tls *libc.TLS, code TPCRE2_SPTR8, skipassert TBOOL) uintptr { /* pcre2_compile.c:4845:25: */
 19739  	for {
 19740  		switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) {
 19741  		case OP_ASSERT_NOT:
 19742  			fallthrough
 19743  		case OP_ASSERTBACK:
 19744  			fallthrough
 19745  		case OP_ASSERTBACK_NOT:
 19746  			fallthrough
 19747  		case OP_ASSERTBACK_NA:
 19748  			if !(skipassert != 0) {
 19749  				return code
 19750  			}
 19751  			for __ccgo := true; __ccgo; __ccgo = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 19752  				code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 19753  			}
 19754  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))])
 19755  			break
 19756  
 19757  		case OP_WORD_BOUNDARY:
 19758  			fallthrough
 19759  		case OP_NOT_WORD_BOUNDARY:
 19760  			if !(skipassert != 0) {
 19761  				return code
 19762  			}
 19763  			fallthrough
 19764  		// Fall through
 19765  
 19766  		case OP_CALLOUT:
 19767  			fallthrough
 19768  		case OP_CREF:
 19769  			fallthrough
 19770  		case OP_DNCREF:
 19771  			fallthrough
 19772  		case OP_RREF:
 19773  			fallthrough
 19774  		case OP_DNRREF:
 19775  			fallthrough
 19776  		case OP_FALSE:
 19777  			fallthrough
 19778  		case OP_TRUE:
 19779  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))])
 19780  			break
 19781  
 19782  		case OP_CALLOUT_STR:
 19783  			code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 6)))))
 19784  			break
 19785  
 19786  		case OP_SKIPZERO:
 19787  			code += TPCRE2_SPTR8(uint32(2) + uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))) + uint32(DLINK_SIZE))
 19788  			break
 19789  
 19790  		case OP_COND:
 19791  			fallthrough
 19792  		case OP_SCOND:
 19793  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) != OP_FALSE || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))))) != OP_KET { // More than one branch
 19794  				return code
 19795  			}
 19796  			code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))) + uint32(1) + uint32(DLINK_SIZE))
 19797  			break
 19798  
 19799  		case OP_MARK:
 19800  			fallthrough
 19801  		case OP_COMMIT_ARG:
 19802  			fallthrough
 19803  		case OP_PRUNE_ARG:
 19804  			fallthrough
 19805  		case OP_SKIP_ARG:
 19806  			fallthrough
 19807  		case OP_THEN_ARG:
 19808  			code += TPCRE2_SPTR8(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) + int32(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))]))
 19809  			break
 19810  
 19811  		default:
 19812  			return code
 19813  		}
 19814  	}
 19815  	return uintptr(0)
 19816  	// Control never reaches here
 19817  }
 19818  
 19819  // ************************************************
 19820  //
 19821  //           Get othercase range                  *
 19822  //
 19823  
 19824  // This function is passed the start and end of a class range in UCP mode. It
 19825  // searches up the characters, looking for ranges of characters in the "other"
 19826  // case. Each call returns the next one, updating the start address. A character
 19827  // with multiple other cases is returned on its own with a special return value.
 19828  //
 19829  // Arguments:
 19830  //   cptr        points to starting character value; updated
 19831  //   d           end value
 19832  //   ocptr       where to put start of othercase range
 19833  //   odptr       where to put end of othercase range
 19834  //
 19835  // Yield:        -1 when no more
 19836  //                0 when a range is returned
 19837  //               >0 the CASESET offset for char with multiple other cases
 19838  //                 in this case, ocptr contains the original
 19839  
 19840  func get_othercase_range(tls *libc.TLS, cptr uintptr, d Tuint32_t, ocptr uintptr, odptr uintptr) int32 { /* pcre2_compile.c:4932:1: */
 19841  	var c Tuint32_t
 19842  	var othercase Tuint32_t
 19843  	var next Tuint32_t
 19844  	var co uint32
 19845  
 19846  	// Find the first character that has an other case. If it has multiple other
 19847  	// cases, return its case offset value.
 19848  
 19849  	for c = *(*Tuint32_t)(unsafe.Pointer(cptr)); c <= d; c++ {
 19850  		if libc.AssignUint32(&co, uint32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fcaseset)) != uint32(0) {
 19851  			*(*Tuint32_t)(unsafe.Pointer(ocptr)) = libc.PostIncUint32(&c, 1) // Character that has the set
 19852  			*(*Tuint32_t)(unsafe.Pointer(cptr)) = c                          // Rest of input range
 19853  			return int32(co)
 19854  		}
 19855  		if libc.AssignUint32(&othercase, Tuint32_t(int32(c)+(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fother_case)) != c {
 19856  			break
 19857  		}
 19858  	}
 19859  
 19860  	if c > d {
 19861  		return -1
 19862  	} // Reached end of range
 19863  
 19864  	// Found a character that has a single other case. Search for the end of the
 19865  	// range, which is either the end of the input range, or a character that has zero
 19866  	// or more than one other cases.
 19867  
 19868  	*(*Tuint32_t)(unsafe.Pointer(ocptr)) = othercase
 19869  	next = othercase + Tuint32_t(1)
 19870  
 19871  	for c++; c <= d; c++ {
 19872  		if libc.AssignUint32(&co, uint32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fcaseset)) != uint32(0) || Tuint32_t(int32(c)+(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fother_case) != next {
 19873  			break
 19874  		}
 19875  		next++
 19876  	}
 19877  
 19878  	*(*Tuint32_t)(unsafe.Pointer(odptr)) = next - Tuint32_t(1) // End of othercase range
 19879  	*(*Tuint32_t)(unsafe.Pointer(cptr)) = c                    // Rest of input range
 19880  	return 0
 19881  }
 19882  
 19883  // ************************************************
 19884  //
 19885  // Add a character or range to a class (internal) *
 19886  //
 19887  
 19888  // This function packages up the logic of adding a character or range of
 19889  // characters to a class. The character values in the arguments will be within the
 19890  // valid values for the current mode (8-bit, 16-bit, UTF, etc). This function is
 19891  // called only from within the "add to class" group of functions, some of which
 19892  // are recursive and mutually recursive. The external entry point is
 19893  // add_to_class().
 19894  //
 19895  // Arguments:
 19896  //   classbits     the bit map for characters < 256
 19897  //   uchardptr     points to the pointer for extra data
 19898  //   options       the options word
 19899  //   cb            compile data
 19900  //   start         start of range character
 19901  //   end           end of range character
 19902  //
 19903  // Returns:        the number of < 256 characters added
 19904  //                 the pointer to extra data is updated
 19905  
 19906  func add_to_class_internal(tls *libc.TLS, classbits uintptr, uchardptr uintptr, options Tuint32_t, cb uintptr, start Tuint32_t, end Tuint32_t) uint32 { /* pcre2_compile.c:4999:1: */
 19907  	bp := tls.Alloc(12)
 19908  	defer tls.Free(12)
 19909  
 19910  	// var c Tuint32_t at bp, 4
 19911  
 19912  	var classbits_end Tuint32_t = func() uint32 {
 19913  		if end <= Tuint32_t(0xff) {
 19914  			return end
 19915  		}
 19916  		return uint32(0xff)
 19917  	}()
 19918  	var n8 uint32 = uint32(0)
 19919  
 19920  	// If caseless matching is required, scan the range and process alternate
 19921  	// cases. In Unicode, there are 8-bit characters that have alternate cases that
 19922  	// are greater than 255 and vice-versa. Sometimes we can just extend the original
 19923  	// range.
 19924  
 19925  	if options&DPCRE2_CASELESS != Tuint32_t(0) {
 19926  		if options&(DPCRE2_UTF|DPCRE2_UCP) != Tuint32_t(0) {
 19927  			var rc int32
 19928  			// var oc Tuint32_t at bp+4, 4
 19929  
 19930  			// var od Tuint32_t at bp+8, 4
 19931  
 19932  			options = options & libc.CplUint32(DPCRE2_CASELESS) // Remove for recursive calls
 19933  			*(*Tuint32_t)(unsafe.Pointer(bp /* c */)) = start
 19934  
 19935  			for libc.AssignInt32(&rc, get_othercase_range(tls, bp, end, bp+4, bp+8)) >= 0 {
 19936  				// Handle a single character that has more than one other case.
 19937  
 19938  				if rc > 0 {
 19939  					n8 = n8 + add_list_to_class_internal(tls, classbits, uchardptr, options, cb,
 19940  						uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8))+uintptr(rc)*4, *(*Tuint32_t)(unsafe.Pointer(bp + 4)))
 19941  				} else if *(*Tuint32_t)(unsafe.Pointer(bp + 4)) >= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_start && *(*Tuint32_t)(unsafe.Pointer(bp + 8)) <= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_end {
 19942  					continue
 19943  				} else if *(*Tuint32_t)(unsafe.Pointer(bp + 4)) < start && *(*Tuint32_t)(unsafe.Pointer(bp + 8)) >= start-Tuint32_t(1) {
 19944  					start = *(*Tuint32_t)(unsafe.Pointer(bp + 4 /* oc */))
 19945  				} else if *(*Tuint32_t)(unsafe.Pointer(bp + 8)) > end && *(*Tuint32_t)(unsafe.Pointer(bp + 4)) <= end+Tuint32_t(1) {
 19946  					end = *(*Tuint32_t)(unsafe.Pointer(bp + 8 /* od */)) // Extend upwards
 19947  					if end > classbits_end {
 19948  						classbits_end = func() uint32 {
 19949  							if end <= Tuint32_t(0xff) {
 19950  								return end
 19951  							}
 19952  							return uint32(0xff)
 19953  						}()
 19954  					}
 19955  				} else {
 19956  					n8 = n8 + add_to_class_internal(tls, classbits, uchardptr, options, cb, *(*Tuint32_t)(unsafe.Pointer(bp + 4)), *(*Tuint32_t)(unsafe.Pointer(bp + 8)))
 19957  				}
 19958  			}
 19959  		} else {
 19960  
 19961  			// Not UTF mode
 19962  
 19963  			for *(*Tuint32_t)(unsafe.Pointer(bp /* c */)) = start; *(*Tuint32_t)(unsafe.Pointer(bp /* c */)) <= classbits_end; *(*Tuint32_t)(unsafe.Pointer(bp /* c */))++ {
 19964  				*(*Tuint8_t)(unsafe.Pointer(classbits + uintptr(int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Ffcc + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp))))))/8))) = Tuint8_t(uint32(*(*Tuint8_t)(unsafe.Pointer(classbits + uintptr(int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Ffcc + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp))))))/8)))) | uint32(1)<<(int32(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Ffcc + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp))))))&7))
 19965  				n8++
 19966  			}
 19967  		}
 19968  	}
 19969  
 19970  	// Now handle the originally supplied range. Adjust the final value according
 19971  	// to the bit length - this means that the same lists of (e.g.) horizontal spaces
 19972  	// can be used in all cases.
 19973  
 19974  	if options&DPCRE2_UTF == Tuint32_t(0) && end > uint32(0xffffffff)>>(32-DPCRE2_CODE_UNIT_WIDTH) {
 19975  		end = uint32(0xffffffff) >> (32 - DPCRE2_CODE_UNIT_WIDTH)
 19976  	}
 19977  
 19978  	if start > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_start && end < (*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_end {
 19979  		return n8
 19980  	}
 19981  
 19982  	// Use the bitmap for characters < 256. Otherwise use extra data.
 19983  
 19984  	for *(*Tuint32_t)(unsafe.Pointer(bp /* c */)) = start; *(*Tuint32_t)(unsafe.Pointer(bp /* c */)) <= classbits_end; *(*Tuint32_t)(unsafe.Pointer(bp /* c */))++ {
 19985  		// Regardless of start, c will always be <= 255.
 19986  		*(*Tuint8_t)(unsafe.Pointer(classbits + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp))/Tuint32_t(8)))) = Tuint8_t(uint32(*(*Tuint8_t)(unsafe.Pointer(classbits + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp))/Tuint32_t(8))))) | uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(bp))&Tuint32_t(7)))
 19987  		n8++
 19988  	}
 19989  
 19990  	if start <= Tuint32_t(0xff) {
 19991  		start = Tuint32_t(0xff + 1)
 19992  	}
 19993  
 19994  	if end >= start {
 19995  		var uchardata uintptr = *(*uintptr)(unsafe.Pointer(uchardptr))
 19996  
 19997  		if options&DPCRE2_UTF != Tuint32_t(0) {
 19998  			if start < end {
 19999  				*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&uchardata, 1))) = TPCRE2_UCHAR8(DXCL_RANGE)
 20000  				uchardata += uintptr(X_pcre2_ord2utf_8(tls, start, uchardata))
 20001  				uchardata += uintptr(X_pcre2_ord2utf_8(tls, end, uchardata))
 20002  			} else if start == end {
 20003  				*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&uchardata, 1))) = TPCRE2_UCHAR8(DXCL_SINGLE)
 20004  				uchardata += uintptr(X_pcre2_ord2utf_8(tls, start, uchardata))
 20005  			}
 20006  		} else {
 20007  		}
 20008  		*(*uintptr)(unsafe.Pointer(uchardptr)) = uchardata // Updata extra data pointer
 20009  	}
 20010  
 20011  	return n8 // Number of 8-bit characters
 20012  }
 20013  
 20014  // ************************************************
 20015  //
 20016  // Add a list of characters to a class (internal) *
 20017  //
 20018  
 20019  // This function is used for adding a list of case-equivalent characters to a
 20020  // class when in UTF mode. This function is called only from within
 20021  // add_to_class_internal(), with which it is mutually recursive.
 20022  //
 20023  // Arguments:
 20024  //   classbits     the bit map for characters < 256
 20025  //   uchardptr     points to the pointer for extra data
 20026  //   options       the options word
 20027  //   cb            contains pointers to tables etc.
 20028  //   p             points to row of 32-bit values, terminated by NOTACHAR
 20029  //   except        character to omit; this is used when adding lists of
 20030  //                   case-equivalent characters to avoid including the one we
 20031  //                   already know about
 20032  //
 20033  // Returns:        the number of < 256 characters added
 20034  //                 the pointer to extra data is updated
 20035  
 20036  func add_list_to_class_internal(tls *libc.TLS, classbits uintptr, uchardptr uintptr, options Tuint32_t, cb uintptr, p uintptr, except uint32) uint32 { /* pcre2_compile.c:5154:1: */
 20037  	var n8 uint32 = uint32(0)
 20038  	for *(*Tuint32_t)(unsafe.Pointer(p)) < DNOTACHAR {
 20039  		var n uint32 = uint32(0)
 20040  		if *(*Tuint32_t)(unsafe.Pointer(p)) != except {
 20041  			for *(*Tuint32_t)(unsafe.Pointer(p + uintptr(n+uint32(1))*4)) == *(*Tuint32_t)(unsafe.Pointer(p))+n+Tuint32_t(1) {
 20042  				n++
 20043  			}
 20044  			n8 = n8 + add_to_class_internal(tls, classbits, uchardptr, options, cb, *(*Tuint32_t)(unsafe.Pointer(p)), *(*Tuint32_t)(unsafe.Pointer(p + uintptr(n)*4)))
 20045  		}
 20046  		p += 4 * uintptr(n+uint32(1))
 20047  	}
 20048  	return n8
 20049  }
 20050  
 20051  // ************************************************
 20052  //
 20053  //   External entry point for add range to class  *
 20054  //
 20055  
 20056  // This function sets the overall range so that the internal functions can try
 20057  // to avoid duplication when handling case-independence.
 20058  //
 20059  // Arguments:
 20060  //   classbits     the bit map for characters < 256
 20061  //   uchardptr     points to the pointer for extra data
 20062  //   options       the options word
 20063  //   cb            compile data
 20064  //   start         start of range character
 20065  //   end           end of range character
 20066  //
 20067  // Returns:        the number of < 256 characters added
 20068  //                 the pointer to extra data is updated
 20069  
 20070  func add_to_class(tls *libc.TLS, classbits uintptr, uchardptr uintptr, options Tuint32_t, cb uintptr, start Tuint32_t, end Tuint32_t) uint32 { /* pcre2_compile.c:5194:1: */
 20071  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_start = start
 20072  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_end = end
 20073  	return add_to_class_internal(tls, classbits, uchardptr, options, cb, start, end)
 20074  }
 20075  
 20076  // ************************************************
 20077  //
 20078  //   External entry point for add list to class   *
 20079  //
 20080  
 20081  // This function is used for adding a list of horizontal or vertical whitespace
 20082  // characters to a class. The list must be in order so that ranges of characters
 20083  // can be detected and handled appropriately. This function sets the overall range
 20084  // so that the internal functions can try to avoid duplication when handling
 20085  // case-independence.
 20086  //
 20087  // Arguments:
 20088  //   classbits     the bit map for characters < 256
 20089  //   uchardptr     points to the pointer for extra data
 20090  //   options       the options word
 20091  //   cb            contains pointers to tables etc.
 20092  //   p             points to row of 32-bit values, terminated by NOTACHAR
 20093  //   except        character to omit; this is used when adding lists of
 20094  //                   case-equivalent characters to avoid including the one we
 20095  //                   already know about
 20096  //
 20097  // Returns:        the number of < 256 characters added
 20098  //                 the pointer to extra data is updated
 20099  
 20100  func add_list_to_class(tls *libc.TLS, classbits uintptr, uchardptr uintptr, options Tuint32_t, cb uintptr, p uintptr, except uint32) uint32 { /* pcre2_compile.c:5228:1: */
 20101  	var n8 uint32 = uint32(0)
 20102  	for *(*Tuint32_t)(unsafe.Pointer(p)) < DNOTACHAR {
 20103  		var n uint32 = uint32(0)
 20104  		if *(*Tuint32_t)(unsafe.Pointer(p)) != except {
 20105  			for *(*Tuint32_t)(unsafe.Pointer(p + uintptr(n+uint32(1))*4)) == *(*Tuint32_t)(unsafe.Pointer(p))+n+Tuint32_t(1) {
 20106  				n++
 20107  			}
 20108  			(*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_start = *(*Tuint32_t)(unsafe.Pointer(p))
 20109  			(*Tcompile_block_8)(unsafe.Pointer(cb)).Fclass_range_end = *(*Tuint32_t)(unsafe.Pointer(p + uintptr(n)*4))
 20110  			n8 = n8 + add_to_class_internal(tls, classbits, uchardptr, options, cb, *(*Tuint32_t)(unsafe.Pointer(p)), *(*Tuint32_t)(unsafe.Pointer(p + uintptr(n)*4)))
 20111  		}
 20112  		p += 4 * uintptr(n+uint32(1))
 20113  	}
 20114  	return n8
 20115  }
 20116  
 20117  // ************************************************
 20118  //
 20119  //    Add characters not in a list to a class     *
 20120  //
 20121  
 20122  // This function is used for adding the complement of a list of horizontal or
 20123  // vertical whitespace to a class. The list must be in order.
 20124  //
 20125  // Arguments:
 20126  //   classbits     the bit map for characters < 256
 20127  //   uchardptr     points to the pointer for extra data
 20128  //   options       the options word
 20129  //   cb            contains pointers to tables etc.
 20130  //   p             points to row of 32-bit values, terminated by NOTACHAR
 20131  //
 20132  // Returns:        the number of < 256 characters added
 20133  //                 the pointer to extra data is updated
 20134  
 20135  func add_not_list_to_class(tls *libc.TLS, classbits uintptr, uchardptr uintptr, options Tuint32_t, cb uintptr, p uintptr) uint32 { /* pcre2_compile.c:5268:1: */
 20136  	var utf TBOOL = libc.Bool32(options&DPCRE2_UTF != Tuint32_t(0))
 20137  	var n8 uint32 = uint32(0)
 20138  	if *(*Tuint32_t)(unsafe.Pointer(p)) > Tuint32_t(0) {
 20139  		n8 = n8 + add_to_class(tls, classbits, uchardptr, options, cb, uint32(0), *(*Tuint32_t)(unsafe.Pointer(p))-Tuint32_t(1))
 20140  	}
 20141  	for *(*Tuint32_t)(unsafe.Pointer(p)) < DNOTACHAR {
 20142  		for *(*Tuint32_t)(unsafe.Pointer(p + 1*4)) == *(*Tuint32_t)(unsafe.Pointer(p))+Tuint32_t(1) {
 20143  			p += 4
 20144  		}
 20145  		n8 = n8 + add_to_class(tls, classbits, uchardptr, options, cb, *(*Tuint32_t)(unsafe.Pointer(p))+Tuint32_t(1),
 20146  			func() uint32 {
 20147  				if *(*Tuint32_t)(unsafe.Pointer(p + 1*4)) == DNOTACHAR {
 20148  					return func() uint32 {
 20149  						if utf != 0 {
 20150  							return 0x10ffff
 20151  						}
 20152  						return 0xffffffff
 20153  					}()
 20154  				}
 20155  				return *(*Tuint32_t)(unsafe.Pointer(p + 1*4)) - Tuint32_t(1)
 20156  			}())
 20157  		p += 4
 20158  	}
 20159  	return n8
 20160  }
 20161  
 20162  // ************************************************
 20163  //
 20164  //    Find details of duplicate group names       *
 20165  //
 20166  
 20167  // This is called from compile_branch() when it needs to know the index and
 20168  // count of duplicates in the names table when processing named backreferences,
 20169  // either directly, or as conditions.
 20170  //
 20171  // Arguments:
 20172  //   name          points to the name
 20173  //   length        the length of the name
 20174  //   indexptr      where to put the index
 20175  //   countptr      where to put the count of duplicates
 20176  //   errorcodeptr  where to put an error code
 20177  //   cb            the compile block
 20178  //
 20179  // Returns:        TRUE if OK, FALSE if not, error code set
 20180  
 20181  func find_dupname_details(tls *libc.TLS, name TPCRE2_SPTR8, length Tuint32_t, indexptr uintptr, countptr uintptr, errorcodeptr uintptr, cb uintptr) TBOOL { /* pcre2_compile.c:5307:1: */
 20182  	var i Tuint32_t
 20183  	var groupnumber Tuint32_t
 20184  	var count int32
 20185  	var slot uintptr = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_table
 20186  
 20187  	// Find the first entry in the table
 20188  
 20189  	for i = Tuint32_t(0); i < Tuint32_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found); i++ {
 20190  		if X_pcre2_strncmp_8(tls, name, slot+uintptr(DIMM2_SIZE), uint64(length)) == 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot + uintptr(Tuint32_t(DIMM2_SIZE)+length)))) == 0 {
 20191  			break
 20192  		}
 20193  		slot += uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size)
 20194  	}
 20195  
 20196  	// This should not occur, because this function is called only when we know we
 20197  	// have duplicate names. Give an internal error.
 20198  
 20199  	if i >= Tuint32_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found) {
 20200  		*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR53
 20201  		(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = Tsize_t((int64(name) - int64((*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern)) / 1)
 20202  		return DFALSE
 20203  	}
 20204  
 20205  	// Record the index and then see how many duplicates there are, updating the
 20206  	// backref map and maximum back reference as we do.
 20207  
 20208  	*(*int32)(unsafe.Pointer(indexptr)) = int32(i)
 20209  	count = 0
 20210  
 20211  	for {
 20212  		count++
 20213  		groupnumber = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot + 1))))
 20214  		*(*Tuint32_t)(unsafe.Pointer(cb + 252)) |= func() uint32 {
 20215  			if groupnumber < Tuint32_t(32) {
 20216  				return uint32(1) << groupnumber
 20217  			}
 20218  			return uint32(1)
 20219  		}()
 20220  		if groupnumber > (*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref {
 20221  			(*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref = groupnumber
 20222  		}
 20223  		if libc.PreIncUint32(&i, 1) >= Tuint32_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found) {
 20224  			break
 20225  		}
 20226  		slot += uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size)
 20227  		if X_pcre2_strncmp_8(tls, name, slot+uintptr(DIMM2_SIZE), uint64(length)) != 0 || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot + uintptr(DIMM2_SIZE) + uintptr(length)))) != 0 {
 20228  			break
 20229  		}
 20230  	}
 20231  
 20232  	*(*int32)(unsafe.Pointer(countptr)) = count
 20233  	return DTRUE
 20234  }
 20235  
 20236  // ************************************************
 20237  //
 20238  //           Compile one branch                   *
 20239  //
 20240  
 20241  // Scan the parsed pattern, compiling it into the a vector of PCRE2_UCHAR. If
 20242  // the options are changed during the branch, the pointer is used to change the
 20243  // external options bits. This function is used during the pre-compile phase when
 20244  // we are trying to find out the amount of memory needed, as well as during the
 20245  // real compile phase. The value of lengthptr distinguishes the two phases.
 20246  //
 20247  // Arguments:
 20248  //   optionsptr        pointer to the option bits
 20249  //   codeptr           points to the pointer to the current code point
 20250  //   pptrptr           points to the current parsed pattern pointer
 20251  //   errorcodeptr      points to error code variable
 20252  //   firstcuptr        place to put the first required code unit
 20253  //   firstcuflagsptr   place to put the first code unit flags
 20254  //   reqcuptr          place to put the last required code unit
 20255  //   reqcuflagsptr     place to put the last required code unit flags
 20256  //   bcptr             points to current branch chain
 20257  //   cb                contains pointers to tables etc.
 20258  //   lengthptr         NULL during the real compile phase
 20259  //                     points to length accumulator during pre-compile phase
 20260  //
 20261  // Returns:            0 There's been an error, *errorcodeptr is non-zero
 20262  //                    +1 Success, this branch must match at least one character
 20263  //                    -1 Success, this branch may match an empty string
 20264  
 20265  func compile_branch(tls *libc.TLS, optionsptr uintptr, codeptr uintptr, pptrptr uintptr, errorcodeptr uintptr, firstcuptr uintptr, firstcuflagsptr uintptr, reqcuptr uintptr, reqcuflagsptr uintptr, bcptr uintptr, cb uintptr, lengthptr uintptr) int32 { /* pcre2_compile.c:5387:1: */
 20266  	bp := tls.Alloc(136)
 20267  	defer tls.Free(136)
 20268  
 20269  	var bravalue int32
 20270  	var okreturn int32
 20271  	var group_return int32
 20272  	var repeat_min Tuint32_t
 20273  	var repeat_max Tuint32_t // To please picky compilers
 20274  	var greedy_default Tuint32_t
 20275  	var greedy_non_default Tuint32_t
 20276  	var repeat_type Tuint32_t
 20277  	var op_type Tuint32_t
 20278  	var options Tuint32_t // May change dynamically
 20279  	var firstcu Tuint32_t
 20280  	var reqcu Tuint32_t
 20281  	var zeroreqcu Tuint32_t
 20282  	var zerofirstcu Tuint32_t
 20283  	var escape Tuint32_t
 20284  	// var pptr uintptr at bp+96, 8
 20285  
 20286  	var meta Tuint32_t
 20287  	var meta_arg Tuint32_t
 20288  	var firstcuflags Tuint32_t
 20289  	var reqcuflags Tuint32_t
 20290  	var zeroreqcuflags Tuint32_t
 20291  	var zerofirstcuflags Tuint32_t
 20292  	var req_caseopt Tuint32_t
 20293  	var reqvary Tuint32_t
 20294  	var tempreqvary Tuint32_t
 20295  	var offset Tsize_t
 20296  	// var length_prevgroup Tsize_t at bp+120, 8
 20297  
 20298  	var code uintptr
 20299  	var last_code uintptr
 20300  	var orig_code uintptr
 20301  	// var tempcode uintptr at bp+88, 8
 20302  
 20303  	var previous uintptr
 20304  	var op_previous TPCRE2_UCHAR8
 20305  	var groupsetfirstcu TBOOL
 20306  	var had_accept TBOOL
 20307  	var matched_char TBOOL
 20308  	var previous_matched_char TBOOL
 20309  	var reset_caseful TBOOL
 20310  	var cbits uintptr
 20311  	// var classbits [32]Tuint8_t at bp, 32
 20312  
 20313  	// We can fish out the UTF setting once and for all into a BOOL, but we must
 20314  	// not do this for other options (e.g. PCRE2_EXTENDED) because they may change
 20315  	// dynamically as we process the pattern.
 20316  
 20317  	var utf TBOOL
 20318  	var ucp TBOOL
 20319  
 20320  	// Helper variables for OP_XCLASS opcode (for characters > 255). We define
 20321  	// class_uchardata always so that it can be passed to add_to_class() always,
 20322  	// though it will not be used in non-UTF 8-bit cases. This avoids having to supply
 20323  	// alternative calls for the different cases.
 20324  
 20325  	// var class_uchardata uintptr at bp+64, 8
 20326  
 20327  	var xclass TBOOL
 20328  	var class_uchardata_base uintptr
 20329  	var d Tuint32_t
 20330  	var c Tuint32_t
 20331  	var d1 Tuint32_t
 20332  	var c1 Tuint32_t
 20333  	var i int32
 20334  	var i1 int32
 20335  	var local_negate TBOOL
 20336  	var posix_class int32
 20337  	var taboffset int32
 20338  	var tabopt int32
 20339  	// var pbits [32]Tuint8_t at bp+32, 32
 20340  
 20341  	var i2 int32
 20342  	var i3 int32
 20343  	var ptype Tuint32_t
 20344  	var pdata Tuint32_t
 20345  	var i4 int32
 20346  	var i5 int32
 20347  	var i6 int32
 20348  	var i7 int32
 20349  	var i8 int32
 20350  	var i9 int32
 20351  	var c2 Tuint32_t
 20352  	var d2 Tuint32_t
 20353  	var i10 int32
 20354  	var i11 int32
 20355  	// var count int32 at bp+84, 4
 20356  
 20357  	// var index int32 at bp+80, 4
 20358  
 20359  	var i12 uint32
 20360  	var name TPCRE2_SPTR8
 20361  	var ng uintptr
 20362  	var length Tuint32_t
 20363  	var tc uintptr
 20364  	var condcount int32
 20365  	// var count1 int32 at bp+132, 4
 20366  
 20367  	// var index1 int32 at bp+128, 4
 20368  
 20369  	var name1 TPCRE2_SPTR8
 20370  	var is_dupname TBOOL
 20371  	var ng1 uintptr
 20372  	var length1 Tuint32_t
 20373  	var i13 uint32
 20374  	var pp TPCRE2_SPTR8
 20375  	var delimiter Tuint32_t
 20376  	var length2 Tuint32_t
 20377  	var callout_string uintptr
 20378  	var lastchar uintptr
 20379  	var delta Tsize_t
 20380  	var replicate int32
 20381  	var i14 int32
 20382  	var linkoffset int32
 20383  	var delta1 Tsize_t
 20384  	var i15 Tuint32_t
 20385  	var delta2 Tsize_t
 20386  	var linkoffset1 int32
 20387  	var oldlinkoffset int32
 20388  	var linkoffset2 int32
 20389  	var bra uintptr
 20390  	var i16 Tuint32_t
 20391  	var nlen int32
 20392  	var ketcode uintptr
 20393  	var bracode uintptr
 20394  	var len int32
 20395  	var bralink uintptr
 20396  	var brazeroptr uintptr
 20397  	var prop_type int32
 20398  	var prop_value int32
 20399  	var oldcode uintptr
 20400  	var repcode uint32
 20401  	var len1 int32
 20402  	var ptype1 Tuint32_t
 20403  	var pdata1 Tuint32_t
 20404  	var caseset Tuint32_t
 20405  	var i17 int32
 20406  	var xclass_has_prop TBOOL
 20407  	var negate_class TBOOL
 20408  	var should_flip_negation TBOOL
 20409  	var match_all_or_no_wide_chars TBOOL
 20410  	var possessive_quantifier TBOOL
 20411  	var note_group_empty TBOOL
 20412  	var class_has_8bitchar int32
 20413  	var mclength Tuint32_t
 20414  	var skipunits Tuint32_t
 20415  	// var subreqcu Tuint32_t at bp+112, 4
 20416  
 20417  	// var subfirstcu Tuint32_t at bp+104, 4
 20418  
 20419  	var groupnumber Tuint32_t
 20420  	var verbarglen Tuint32_t
 20421  	var verbculen Tuint32_t
 20422  	// var subreqcuflags Tuint32_t at bp+116, 4
 20423  
 20424  	// var subfirstcuflags Tuint32_t at bp+108, 4
 20425  
 20426  	var oc uintptr
 20427  	// var mcbuffer [8]TPCRE2_UCHAR8 at bp+72, 8
 20428  	bravalue = 0
 20429  	okreturn = -1
 20430  	group_return = 0
 20431  	repeat_min = Tuint32_t(0)
 20432  	repeat_max = Tuint32_t(0)
 20433  	options = *(*Tuint32_t)(unsafe.Pointer(optionsptr))
 20434  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) = *(*uintptr)(unsafe.Pointer(pptrptr))
 20435  	offset = uint64(0)
 20436  	*(*Tsize_t)(unsafe.Pointer(bp + 120 /* length_prevgroup */)) = uint64(0)
 20437  	code = *(*uintptr)(unsafe.Pointer(codeptr))
 20438  	last_code = code
 20439  	orig_code = code
 20440  	previous = uintptr(0)
 20441  	groupsetfirstcu = DFALSE
 20442  	had_accept = DFALSE
 20443  	matched_char = DFALSE
 20444  	previous_matched_char = DFALSE
 20445  	reset_caseful = DFALSE
 20446  	cbits = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fcbits
 20447  	utf = libc.Bool32(options&DPCRE2_UTF != Tuint32_t(0))
 20448  	ucp = libc.Bool32(options&DPCRE2_UCP != Tuint32_t(0))
 20449  
 20450  	// Set up the default and non-default settings for greediness
 20451  
 20452  	greedy_default = Tuint32_t(libc.Bool32(options&DPCRE2_UNGREEDY != Tuint32_t(0)))
 20453  	greedy_non_default = greedy_default ^ Tuint32_t(1)
 20454  
 20455  	// Initialize no first unit, no required unit. REQ_UNSET means "no char
 20456  	// matching encountered yet". It gets changed to REQ_NONE if we hit something that
 20457  	// matches a non-fixed first unit; reqcu just remains unset if we never find one.
 20458  	//
 20459  	// When we hit a repeat whose minimum is zero, we may have to adjust these values
 20460  	// to take the zero repeat into account. This is implemented by setting them to
 20461  	// zerofirstcu and zeroreqcu when such a repeat is encountered. The individual
 20462  	// item types that can be repeated set these backoff variables appropriately.
 20463  
 20464  	firstcu = libc.AssignUint32(&reqcu, libc.AssignUint32(&zerofirstcu, libc.AssignUint32(&zeroreqcu, Tuint32_t(0))))
 20465  	firstcuflags = libc.AssignUint32(&reqcuflags, libc.AssignUint32(&zerofirstcuflags, libc.AssignUint32(&zeroreqcuflags, DREQ_UNSET)))
 20466  
 20467  	// The variable req_caseopt contains either the REQ_CASELESS bit or zero,
 20468  	// according to the current setting of the caseless flag. The REQ_CASELESS value
 20469  	// leaves the lower 28 bit empty. It is added into the firstcu or reqcu variables
 20470  	// to record the case status of the value. This is used only for ASCII characters.
 20471  
 20472  	if options&DPCRE2_CASELESS != Tuint32_t(0) {
 20473  		req_caseopt = DREQ_CASELESS
 20474  	} else {
 20475  		req_caseopt = uint32(0)
 20476  	}
 20477  
 20478  	// Switch on next META item until the end of the branch
 20479  
 20480  __1:
 20481  	;
 20482  
 20483  	// Get next META item in the pattern and its potential argument.
 20484  
 20485  	meta = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)))) & 0xffff0000
 20486  	meta_arg = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)))) & 0x0000ffff
 20487  
 20488  	// If we are in the pre-compile phase, accumulate the length used for the
 20489  	//   previous cycle of this loop, unless the next item is a quantifier.
 20490  
 20491  	if !(lengthptr != uintptr(0)) {
 20492  		goto __4
 20493  	}
 20494  
 20495  	if !(code > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace+uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fworkspace_size)-uintptr(100)) {
 20496  		goto __5
 20497  	} /* Check for overrun */
 20498  
 20499  	*(*int32)(unsafe.Pointer(errorcodeptr)) = func() int32 {
 20500  		if code >= (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_workspace+uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fworkspace_size) {
 20501  			return ERR52
 20502  		}
 20503  		return ERR86
 20504  	}()
 20505  	return 0
 20506  __5:
 20507  	;
 20508  
 20509  	// There is at least one situation where code goes backwards: this is the
 20510  	//     case of a zero quantifier after a class (e.g. [ab]{0}). When the quantifier
 20511  	//     is processed, the whole class is eliminated. However, it is created first,
 20512  	//     so we have to allow memory for it. Therefore, don't ever reduce the length
 20513  	//     at this point.
 20514  
 20515  	if !(code < last_code) {
 20516  		goto __6
 20517  	}
 20518  	code = last_code
 20519  __6:
 20520  	;
 20521  
 20522  	// If the next thing is not a quantifier, we add the length of the previous
 20523  	//     item into the total, and reset the code pointer to the start of the
 20524  	//     workspace. Otherwise leave the previous item available to be quantified.
 20525  
 20526  	if !(meta < DMETA_ASTERISK || meta > DMETA_MINMAX_QUERY) {
 20527  		goto __7
 20528  	}
 20529  
 20530  	if !(uint64(2147483647-20)-*(*Tsize_t)(unsafe.Pointer(lengthptr)) < Tsize_t((int64(code)-int64(orig_code))/1)) {
 20531  		goto __8
 20532  	}
 20533  
 20534  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR20 // Integer overflow
 20535  	return 0
 20536  __8:
 20537  	;
 20538  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += Tsize_t((int64(code) - int64(orig_code)) / 1)
 20539  	if !(*(*Tsize_t)(unsafe.Pointer(lengthptr)) > uint64(int32(1)<<16)) {
 20540  		goto __9
 20541  	}
 20542  
 20543  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR20 // Pattern is too large
 20544  	return 0
 20545  __9:
 20546  	;
 20547  	code = orig_code
 20548  __7:
 20549  	;
 20550  
 20551  	// Remember where this code item starts so we can catch the "backwards"
 20552  	//     case above next time round.
 20553  
 20554  	last_code = code
 20555  __4:
 20556  	;
 20557  
 20558  	// Process the next parsed pattern item. If it is not a quantifier, remember
 20559  	//   where it starts so that it can be quantified when a quantifier follows.
 20560  	//   Checking for the legality of quantifiers happens in parse_regex(), except for
 20561  	//   a quantifier after an assertion that is a condition.
 20562  
 20563  	if !(meta < DMETA_ASTERISK || meta > DMETA_MINMAX_QUERY) {
 20564  		goto __10
 20565  	}
 20566  
 20567  	previous = code
 20568  	if !(matched_char != 0 && !(had_accept != 0)) {
 20569  		goto __11
 20570  	}
 20571  	okreturn = 1
 20572  __11:
 20573  	;
 20574  __10:
 20575  	;
 20576  
 20577  	previous_matched_char = matched_char
 20578  	matched_char = DFALSE
 20579  	note_group_empty = DFALSE
 20580  	skipunits = Tuint32_t(0) // Default value for most subgroups
 20581  
 20582  	switch meta {
 20583  	// ===================================================================
 20584  	// The branch terminates at pattern end or | or )
 20585  
 20586  	case DMETA_END:
 20587  		goto __13
 20588  	case DMETA_ALT:
 20589  		goto __14
 20590  	case DMETA_KET:
 20591  		goto __15
 20592  
 20593  	// ===================================================================
 20594  	// Handle single-character metacharacters. In multiline mode, ^ disables
 20595  	//     the setting of any following char as a first character.
 20596  
 20597  	case DMETA_CIRCUMFLEX:
 20598  		goto __16
 20599  
 20600  	case DMETA_DOLLAR:
 20601  		goto __17
 20602  
 20603  	// There can never be a first char if '.' is first, whatever happens about
 20604  	//     repeats. The value of reqcu doesn't change either.
 20605  
 20606  	case DMETA_DOT:
 20607  		goto __18
 20608  
 20609  	// ===================================================================
 20610  	// Empty character classes are allowed if PCRE2_ALLOW_EMPTY_CLASS is set.
 20611  	//     Otherwise, an initial ']' is taken as a data character. When empty classes
 20612  	//     are allowed, [] must always fail, so generate OP_FAIL, whereas [^] must
 20613  	//     match any character, so generate OP_ALLANY.
 20614  
 20615  	case DMETA_CLASS_EMPTY:
 20616  		goto __19
 20617  	case DMETA_CLASS_EMPTY_NOT:
 20618  		goto __20
 20619  
 20620  	// ===================================================================
 20621  	// Non-empty character class. If the included characters are all < 256, we
 20622  	//     build a 32-byte bitmap of the permitted characters, except in the special
 20623  	//     case where there is only one such character. For negated classes, we build
 20624  	//     the map as usual, then invert it at the end. However, we use a different
 20625  	//     opcode so that data characters > 255 can be handled correctly.
 20626  	//
 20627  	//     If the class contains characters outside the 0-255 range, a different
 20628  	//     opcode is compiled. It may optionally have a bit map for characters < 256,
 20629  	//     but those above are are explicitly listed afterwards. A flag code unit
 20630  	//     tells whether the bitmap is present, and whether this is a negated class or
 20631  	//     not.
 20632  
 20633  	case DMETA_CLASS_NOT:
 20634  		goto __21
 20635  	case DMETA_CLASS:
 20636  		goto __22 // End of class processing
 20637  
 20638  	// ===================================================================
 20639  	// Deal with (*VERB)s.
 20640  
 20641  	// Check for open captures before ACCEPT and close those that are within
 20642  	//     the same assertion level, also converting ACCEPT to ASSERT_ACCEPT in an
 20643  	//     assertion. In the first pass, just accumulate the length required;
 20644  	//     otherwise hitting (*ACCEPT) inside many nested parentheses can cause
 20645  	//     workspace overflow. Do not set firstcu after *ACCEPT.
 20646  
 20647  	case DMETA_ACCEPT:
 20648  		goto __23
 20649  
 20650  	case DMETA_PRUNE:
 20651  		goto __24
 20652  	case DMETA_SKIP:
 20653  		goto __25
 20654  	// Fall through
 20655  	case DMETA_COMMIT:
 20656  		goto __26
 20657  	case DMETA_FAIL:
 20658  		goto __27
 20659  
 20660  	case DMETA_THEN:
 20661  		goto __28
 20662  
 20663  	// Handle verbs with arguments. Arguments can be very long, especially in
 20664  	//     16- and 32-bit modes, and can overflow the workspace in the first pass.
 20665  	//     However, the argument length is constrained to be small enough to fit in
 20666  	//     one code unit. This check happens in parse_regex(). In the first pass,
 20667  	//     instead of putting the argument into memory, we just update the length
 20668  	//     counter and set up an empty argument.
 20669  
 20670  	case DMETA_THEN_ARG:
 20671  		goto __29
 20672  
 20673  	case DMETA_PRUNE_ARG:
 20674  		goto __30
 20675  	case DMETA_SKIP_ARG:
 20676  		goto __31
 20677  	// Fall through
 20678  	case DMETA_MARK:
 20679  		goto __32
 20680  	case DMETA_COMMIT_ARG:
 20681  		goto __33
 20682  
 20683  	// ===================================================================
 20684  	// Handle options change. The new setting must be passed back for use in
 20685  	//     subsequent branches. Reset the greedy defaults and the case value for
 20686  	//     firstcu and reqcu.
 20687  
 20688  	case DMETA_OPTIONS:
 20689  		goto __34
 20690  
 20691  	// ===================================================================
 20692  	// Handle conditional subpatterns. The case of (?(Rdigits) is ambiguous
 20693  	//     because it could be a numerical check on recursion, or a name check on a
 20694  	//     group's being set. The pre-pass sets up META_COND_RNUMBER as a name so that
 20695  	//     we can handle it either way. We first try for a name; if not found, process
 20696  	//     the number.
 20697  
 20698  	case DMETA_COND_RNUMBER:
 20699  		goto __35 // (?(Rdigits)
 20700  	case DMETA_COND_NAME:
 20701  		goto __36 // (?(name) or (?'name') or ?(<name>)
 20702  	case DMETA_COND_RNAME:
 20703  		goto __37
 20704  
 20705  	// The DEFINE condition is always false. Its internal groups may never
 20706  	//     be called, so matched_char must remain false, hence the jump to
 20707  	//     GROUP_PROCESS rather than GROUP_PROCESS_NOTE_EMPTY.
 20708  
 20709  	case DMETA_COND_DEFINE:
 20710  		goto __38
 20711  
 20712  	// Conditional test of a group's being set.
 20713  
 20714  	case DMETA_COND_NUMBER:
 20715  		goto __39
 20716  
 20717  	// Test for the PCRE2 version.
 20718  
 20719  	case DMETA_COND_VERSION:
 20720  		goto __40
 20721  
 20722  	// The condition is an assertion, possibly preceded by a callout.
 20723  
 20724  	case DMETA_COND_ASSERT:
 20725  		goto __41
 20726  
 20727  	// ===================================================================
 20728  	// Handle all kinds of nested bracketed groups. The non-capturing,
 20729  	//     non-conditional cases are here; others come to GROUP_PROCESS via goto.
 20730  
 20731  	case DMETA_LOOKAHEAD:
 20732  		goto __42
 20733  
 20734  	case DMETA_LOOKAHEAD_NA:
 20735  		goto __43
 20736  
 20737  	// Optimize (?!) to (*FAIL) unless it is quantified - which is a weird
 20738  	//     thing to do, but Perl allows all assertions to be quantified, and when
 20739  	//     they contain capturing parentheses there may be a potential use for
 20740  	//     this feature. Not that that applies to a quantified (?!) but we allow
 20741  	//     it for uniformity.
 20742  
 20743  	case DMETA_LOOKAHEADNOT:
 20744  		goto __44
 20745  
 20746  	case DMETA_LOOKBEHIND:
 20747  		goto __45
 20748  
 20749  	case DMETA_LOOKBEHINDNOT:
 20750  		goto __46
 20751  
 20752  	case DMETA_LOOKBEHIND_NA:
 20753  		goto __47
 20754  
 20755  	case DMETA_ATOMIC:
 20756  		goto __48
 20757  
 20758  	case DMETA_SCRIPT_RUN:
 20759  		goto __49
 20760  
 20761  	case DMETA_NOCAPTURE:
 20762  		goto __50 // End of nested group handling
 20763  
 20764  	// ===================================================================
 20765  	// Handle named backreferences and recursions.
 20766  
 20767  	case DMETA_BACKREF_BYNAME:
 20768  		goto __51
 20769  	case DMETA_RECURSE_BYNAME:
 20770  		goto __52
 20771  
 20772  	// ===================================================================
 20773  	// Handle a numerical callout.
 20774  
 20775  	case DMETA_CALLOUT_NUMBER:
 20776  		goto __53
 20777  
 20778  	// ===================================================================
 20779  	// Handle a callout with a string argument. In the pre-pass we just compute
 20780  	//     the length without generating anything. The length in pptr[3] includes both
 20781  	//     delimiters; in the actual compile only the first one is copied, but a
 20782  	//     terminating zero is added. Any doubled delimiters within the string make
 20783  	//     this an overestimate, but it is not worth bothering about.
 20784  
 20785  	case DMETA_CALLOUT_STRING:
 20786  		goto __54
 20787  
 20788  	// ===================================================================
 20789  	// Handle repetition. The different types are all sorted out in the parsing
 20790  	//     pass.
 20791  
 20792  	case DMETA_MINMAX_PLUS:
 20793  		goto __55
 20794  	case DMETA_MINMAX_QUERY:
 20795  		goto __56
 20796  	case DMETA_MINMAX:
 20797  		goto __57
 20798  
 20799  	case DMETA_ASTERISK:
 20800  		goto __58
 20801  	case DMETA_ASTERISK_PLUS:
 20802  		goto __59
 20803  	case DMETA_ASTERISK_QUERY:
 20804  		goto __60
 20805  
 20806  	case DMETA_PLUS:
 20807  		goto __61
 20808  	case DMETA_PLUS_PLUS:
 20809  		goto __62
 20810  	case DMETA_PLUS_QUERY:
 20811  		goto __63
 20812  
 20813  	case DMETA_QUERY:
 20814  		goto __64
 20815  	case DMETA_QUERY_PLUS:
 20816  		goto __65
 20817  	case DMETA_QUERY_QUERY:
 20818  		goto __66
 20819  
 20820  	// ===================================================================
 20821  	// Handle a 32-bit data character with a value greater than META_END.
 20822  
 20823  	case DMETA_BIGVALUE:
 20824  		goto __67
 20825  
 20826  	// ===============================================================
 20827  	// Handle a back reference by number, which is the meta argument. The
 20828  	//     pattern offsets for back references to group numbers less than 10 are held
 20829  	//     in a special vector, to avoid using more than two parsed pattern elements
 20830  	//     in 64-bit environments. We only need the offset to the first occurrence,
 20831  	//     because if that doesn't fail, subsequent ones will also be OK.
 20832  
 20833  	case DMETA_BACKREF:
 20834  		goto __68
 20835  
 20836  	// ===============================================================
 20837  	// Handle recursion by inserting the number of the called group (which is
 20838  	//     the meta argument) after OP_RECURSE. At the end of compiling the pattern is
 20839  	//     scanned and these numbers are replaced by offsets within the pattern. It is
 20840  	//     done like this to avoid problems with forward references and adjusting
 20841  	//     offsets when groups are duplicated and moved (as discovered in previous
 20842  	//     implementations). Note that a recursion does not have a set first
 20843  	//     character.
 20844  
 20845  	case DMETA_RECURSE:
 20846  		goto __69
 20847  
 20848  	// ===============================================================
 20849  	// Handle capturing parentheses; the number is the meta argument.
 20850  
 20851  	case DMETA_CAPTURE:
 20852  		goto __70
 20853  
 20854  	// ===============================================================
 20855  	// Handle escape sequence items. For ones like \d, the ESC_values are
 20856  	//     arranged to be the same as the corresponding OP_values in the default case
 20857  	//     when PCRE2_UCP is not set (which is the only case in which they will appear
 20858  	//     here).
 20859  	//
 20860  	//     Note: \Q and \E are never seen here, as they were dealt with in
 20861  	//     parse_pattern(). Neither are numerical back references or recursions, which
 20862  	//     were turned into META_BACKREF or META_RECURSE items, respectively. \k and
 20863  	//     \g, when followed by names, are turned into META_BACKREF_BYNAME or
 20864  	//     META_RECURSE_BYNAME.
 20865  
 20866  	case DMETA_ESCAPE:
 20867  		goto __71 // End META_ESCAPE
 20868  
 20869  	// ===================================================================
 20870  	// Handle an unrecognized meta value. A parsed pattern value less than
 20871  	//     META_END is a literal. Otherwise we have a problem.
 20872  
 20873  	default:
 20874  		goto __72
 20875  	}
 20876  	goto __12
 20877  
 20878  	// ===================================================================
 20879  	// The branch terminates at pattern end or | or )
 20880  
 20881  __13:
 20882  __14:
 20883  __15:
 20884  	*(*Tuint32_t)(unsafe.Pointer(firstcuptr)) = firstcu
 20885  	*(*Tuint32_t)(unsafe.Pointer(firstcuflagsptr)) = firstcuflags
 20886  	*(*Tuint32_t)(unsafe.Pointer(reqcuptr)) = reqcu
 20887  	*(*Tuint32_t)(unsafe.Pointer(reqcuflagsptr)) = reqcuflags
 20888  	*(*uintptr)(unsafe.Pointer(codeptr)) = code
 20889  	*(*uintptr)(unsafe.Pointer(pptrptr)) = *(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */))
 20890  	return okreturn
 20891  
 20892  	// ===================================================================
 20893  	// Handle single-character metacharacters. In multiline mode, ^ disables
 20894  	//     the setting of any following char as a first character.
 20895  
 20896  __16:
 20897  	if !(options&DPCRE2_MULTILINE != Tuint32_t(0)) {
 20898  		goto __73
 20899  	}
 20900  
 20901  	if !(firstcuflags == DREQ_UNSET) {
 20902  		goto __75
 20903  	}
 20904  	zerofirstcuflags = libc.AssignUint32(&firstcuflags, DREQ_NONE)
 20905  __75:
 20906  	;
 20907  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_CIRCM
 20908  	goto __74
 20909  __73:
 20910  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_CIRC
 20911  __74:
 20912  	;
 20913  	goto __12
 20914  
 20915  __17:
 20916  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 20917  		if options&DPCRE2_MULTILINE != Tuint32_t(0) {
 20918  			return OP_DOLLM
 20919  		}
 20920  		return OP_DOLL
 20921  	}()
 20922  	goto __12
 20923  
 20924  	// There can never be a first char if '.' is first, whatever happens about
 20925  	//     repeats. The value of reqcu doesn't change either.
 20926  
 20927  __18:
 20928  	matched_char = DTRUE
 20929  	if !(firstcuflags == DREQ_UNSET) {
 20930  		goto __76
 20931  	}
 20932  	firstcuflags = DREQ_NONE
 20933  __76:
 20934  	;
 20935  	zerofirstcu = firstcu
 20936  	zerofirstcuflags = firstcuflags
 20937  	zeroreqcu = reqcu
 20938  	zeroreqcuflags = reqcuflags
 20939  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 20940  		if options&DPCRE2_DOTALL != Tuint32_t(0) {
 20941  			return OP_ALLANY
 20942  		}
 20943  		return OP_ANY
 20944  	}()
 20945  	goto __12
 20946  
 20947  	// ===================================================================
 20948  	// Empty character classes are allowed if PCRE2_ALLOW_EMPTY_CLASS is set.
 20949  	//     Otherwise, an initial ']' is taken as a data character. When empty classes
 20950  	//     are allowed, [] must always fail, so generate OP_FAIL, whereas [^] must
 20951  	//     match any character, so generate OP_ALLANY.
 20952  
 20953  __19:
 20954  __20:
 20955  	matched_char = DTRUE
 20956  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 20957  		if meta == DMETA_CLASS_EMPTY_NOT {
 20958  			return OP_ALLANY
 20959  		}
 20960  		return OP_FAIL
 20961  	}()
 20962  	if !(firstcuflags == DREQ_UNSET) {
 20963  		goto __77
 20964  	}
 20965  	firstcuflags = DREQ_NONE
 20966  __77:
 20967  	;
 20968  	zerofirstcu = firstcu
 20969  	zerofirstcuflags = firstcuflags
 20970  	goto __12
 20971  
 20972  	// ===================================================================
 20973  	// Non-empty character class. If the included characters are all < 256, we
 20974  	//     build a 32-byte bitmap of the permitted characters, except in the special
 20975  	//     case where there is only one such character. For negated classes, we build
 20976  	//     the map as usual, then invert it at the end. However, we use a different
 20977  	//     opcode so that data characters > 255 can be handled correctly.
 20978  	//
 20979  	//     If the class contains characters outside the 0-255 range, a different
 20980  	//     opcode is compiled. It may optionally have a bit map for characters < 256,
 20981  	//     but those above are are explicitly listed afterwards. A flag code unit
 20982  	//     tells whether the bitmap is present, and whether this is a negated class or
 20983  	//     not.
 20984  
 20985  __21:
 20986  __22:
 20987  	matched_char = DTRUE
 20988  	negate_class = libc.Bool32(meta == DMETA_CLASS_NOT)
 20989  
 20990  	// We can optimize the case of a single character in a class by generating
 20991  	//     OP_CHAR or OP_CHARI if it's positive, or OP_NOT or OP_NOTI if it's
 20992  	//     negative. In the negative case there can be no first char if this item is
 20993  	//     first, whatever repeat count may follow. In the case of reqcu, save the
 20994  	//     previous value for reinstating.
 20995  
 20996  	// NOTE: at present this optimization is not effective if the only
 20997  	//     character in a class in 32-bit, non-UCP mode has its top bit set.
 20998  
 20999  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) < DMETA_END && *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) == DMETA_CLASS_END) {
 21000  		goto __78
 21001  	}
 21002  
 21003  	c = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) + 1*4))
 21004  
 21005  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2) // Move on to class end
 21006  	if !(meta == DMETA_CLASS) {
 21007  		goto __79
 21008  	} /* A positive one-char class can be */
 21009  	// handled as a normal literal character.
 21010  	meta = c // Set up the character
 21011  	goto NORMAL_CHAR_SET
 21012  __79:
 21013  	;
 21014  
 21015  	// Handle a negative one-character class
 21016  
 21017  	zeroreqcu = reqcu
 21018  	zeroreqcuflags = reqcuflags
 21019  	if !(firstcuflags == DREQ_UNSET) {
 21020  		goto __80
 21021  	}
 21022  	firstcuflags = DREQ_NONE
 21023  __80:
 21024  	;
 21025  	zerofirstcu = firstcu
 21026  	zerofirstcuflags = firstcuflags
 21027  
 21028  	// For caseless UTF or UCP mode, check whether this character has more
 21029  	//       than one other case. If so, generate a special OP_NOTPROP item instead of
 21030  	//       OP_NOTI.
 21031  
 21032  	if !((utf != 0 || ucp != 0) && options&DPCRE2_CASELESS != Tuint32_t(0) && libc.AssignUint32(&d, Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fcaseset)) != Tuint32_t(0)) {
 21033  		goto __81
 21034  	}
 21035  
 21036  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_NOTPROP
 21037  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(DPT_CLIST)
 21038  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(d)
 21039  	goto __12 // We are finished with this class
 21040  __81:
 21041  	;
 21042  	// Char has only one other case, or UCP not available
 21043  
 21044  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 21045  		if options&DPCRE2_CASELESS != Tuint32_t(0) {
 21046  			return OP_NOTI
 21047  		}
 21048  		return OP_NOT
 21049  	}()
 21050  	code += func() uintptr {
 21051  		if utf != 0 && c > Tuint32_t(DMAX_UTF_SINGLE_CU) {
 21052  			return uintptr(X_pcre2_ord2utf_8(tls, c, code))
 21053  		}
 21054  		return uintptr(func() int32 { *(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(c); return 1 }())
 21055  	}()
 21056  	goto __12 // We are finished with this class
 21057  __78:
 21058  	; // End of 1-char optimization
 21059  
 21060  	// Handle character classes that contain more than just one literal
 21061  	//     character. If there are exactly two characters in a positive class, see if
 21062  	//     they are case partners. This can be optimized to generate a caseless single
 21063  	//     character match (which also sets first/required code units if relevant).
 21064  
 21065  	if !(meta == DMETA_CLASS && *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) < DMETA_END && *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) < DMETA_END && *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 3*4)) == DMETA_CLASS_END) {
 21066  		goto __82
 21067  	}
 21068  
 21069  	c1 = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) + 1*4))
 21070  
 21071  	if !(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c1)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c1)%DUCD_BLOCK_SIZE])*12)).Fcaseset) == 0) {
 21072  		goto __83
 21073  	}
 21074  
 21075  	if !((utf != 0 || ucp != 0) && c1 > Tuint32_t(127)) {
 21076  		goto __84
 21077  	}
 21078  	d1 = Tuint32_t(int32(c1) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c1)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c1)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 21079  	goto __85
 21080  __84:
 21081  
 21082  	d1 = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Ffcc + uintptr(c1))))
 21083  __85:
 21084  	;
 21085  
 21086  	if !(c1 != d1 && *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) == d1) {
 21087  		goto __86
 21088  	}
 21089  
 21090  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(3) // Move on to class end
 21091  	meta = c1
 21092  	if !(options&DPCRE2_CASELESS == Tuint32_t(0)) {
 21093  		goto __87
 21094  	}
 21095  
 21096  	reset_caseful = DTRUE
 21097  	options = options | DPCRE2_CASELESS
 21098  	req_caseopt = DREQ_CASELESS
 21099  __87:
 21100  	;
 21101  	goto CLASS_CASELESS_CHAR
 21102  __86:
 21103  	;
 21104  __83:
 21105  	;
 21106  __82:
 21107  	;
 21108  
 21109  	// If a non-extended class contains a negative special such as \S, we need
 21110  	//     to flip the negation flag at the end, so that support for characters > 255
 21111  	//     works correctly (they are all included in the class). An extended class may
 21112  	//     need to insert specific matching or non-matching code for wide characters.
 21113  	//
 21114  
 21115  	should_flip_negation = libc.AssignInt32(&match_all_or_no_wide_chars, DFALSE)
 21116  
 21117  	// Extended class (xclass) will be used when characters > 255
 21118  	//     might match.
 21119  
 21120  	xclass = DFALSE
 21121  	*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)) = code + uintptr(DLINK_SIZE) + uintptr(2) // For XCLASS items
 21122  	class_uchardata_base = *(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */))                    // Save the start
 21123  
 21124  	// For optimization purposes, we track some properties of the class:
 21125  	//     class_has_8bitchar will be non-zero if the class contains at least one
 21126  	//     character with a code point less than 256; xclass_has_prop will be TRUE if
 21127  	//     Unicode property checks are present in the class.
 21128  
 21129  	class_has_8bitchar = 0
 21130  	xclass_has_prop = DFALSE
 21131  
 21132  	// Initialize the 256-bit (32-byte) bit map to all zeros. We build the map
 21133  	//     in a temporary bit of memory, in case the class contains fewer than two
 21134  	//     8-bit characters because in that case the compiled code doesn't use the bit
 21135  	//     map.
 21136  
 21137  	libc.X__builtin___memset_chk(tls, bp, 0, uint64(32)*uint64(unsafe.Sizeof(Tuint8_t(0))), libc.X__builtin_object_size(tls, bp, 0))
 21138  
 21139  	// Process items until META_CLASS_END is reached.
 21140  
 21141  __88:
 21142  	if !(libc.AssignUint32(&meta, *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))) != DMETA_CLASS_END) {
 21143  		goto __89
 21144  	}
 21145  
 21146  	// Handle POSIX classes such as [:alpha:] etc.
 21147  
 21148  	if !(meta == DMETA_POSIX || meta == DMETA_POSIX_NEG) {
 21149  		goto __90
 21150  	}
 21151  
 21152  	local_negate = libc.Bool32(meta == DMETA_POSIX_NEG)
 21153  	posix_class = int32(*(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4))))
 21154  
 21155  	should_flip_negation = local_negate // Note negative special
 21156  
 21157  	// If matching is caseless, upper and lower are converted to alpha.
 21158  	//         This relies on the fact that the class table starts with alpha,
 21159  	//         lower, upper as the first 3 entries.
 21160  
 21161  	if !(options&DPCRE2_CASELESS != Tuint32_t(0) && posix_class <= 2) {
 21162  		goto __91
 21163  	}
 21164  	posix_class = 0
 21165  __91:
 21166  	;
 21167  
 21168  	// When PCRE2_UCP is set, some of the POSIX classes are converted to
 21169  	//         different escape sequences that use Unicode properties \p or \P.
 21170  	//         Others that are not available via \p or \P have to generate
 21171  	//         XCL_PROP/XCL_NOTPROP directly, which is done here.
 21172  
 21173  	if !(options&DPCRE2_UCP != Tuint32_t(0)) {
 21174  		goto __92
 21175  	}
 21176  	switch posix_class {
 21177  	case DPC_GRAPH:
 21178  		goto __94
 21179  	case DPC_PRINT:
 21180  		goto __95
 21181  	case DPC_PUNCT:
 21182  		goto __96
 21183  
 21184  	// For the other POSIX classes (ascii, xdigit) we are going to
 21185  	//           fall through to the non-UCP case and build a bit map for
 21186  	//           characters with code points less than 256. However, if we are in
 21187  	//           a negated POSIX class, characters with code points greater than
 21188  	//           255 must either all match or all not match, depending on whether
 21189  	//           the whole class is not or is negated. For example, for
 21190  	//           [[:^ascii:]... they must all match, whereas for [^[:^xdigit:]...
 21191  	//           they must not.
 21192  	//
 21193  	//           In the special case where there are no xclass items, this is
 21194  	//           automatically handled by the use of OP_CLASS or OP_NCLASS, but an
 21195  	//           explicit range is needed for OP_XCLASS. Setting a flag here
 21196  	//           causes the range to be generated later when it is known that
 21197  	//           OP_XCLASS is required. In the 8-bit library this is relevant only in
 21198  	//           utf mode, since no wide characters can exist otherwise.
 21199  
 21200  	default:
 21201  		goto __97
 21202  	}
 21203  	goto __93
 21204  
 21205  __94:
 21206  __95:
 21207  __96:
 21208  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = func() uint8 {
 21209  		if local_negate != 0 {
 21210  			return uint8(DXCL_NOTPROP)
 21211  		}
 21212  		return uint8(DXCL_PROP)
 21213  	}()
 21214  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = func() uint8 {
 21215  		if posix_class == DPC_GRAPH {
 21216  			return uint8(DPT_PXGRAPH)
 21217  		}
 21218  		return func() uint8 {
 21219  			if posix_class == DPC_PRINT {
 21220  				return uint8(DPT_PXPRINT)
 21221  			}
 21222  			return uint8(DPT_PXPUNCT)
 21223  		}()
 21224  	}()
 21225  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = TPCRE2_UCHAR8(0)
 21226  	xclass_has_prop = DTRUE
 21227  	goto CONTINUE_CLASS
 21228  
 21229  	// For the other POSIX classes (ascii, xdigit) we are going to
 21230  	//           fall through to the non-UCP case and build a bit map for
 21231  	//           characters with code points less than 256. However, if we are in
 21232  	//           a negated POSIX class, characters with code points greater than
 21233  	//           255 must either all match or all not match, depending on whether
 21234  	//           the whole class is not or is negated. For example, for
 21235  	//           [[:^ascii:]... they must all match, whereas for [^[:^xdigit:]...
 21236  	//           they must not.
 21237  	//
 21238  	//           In the special case where there are no xclass items, this is
 21239  	//           automatically handled by the use of OP_CLASS or OP_NCLASS, but an
 21240  	//           explicit range is needed for OP_XCLASS. Setting a flag here
 21241  	//           causes the range to be generated later when it is known that
 21242  	//           OP_XCLASS is required. In the 8-bit library this is relevant only in
 21243  	//           utf mode, since no wide characters can exist otherwise.
 21244  
 21245  __97:
 21246  	if !(utf != 0) {
 21247  		goto __98
 21248  	}
 21249  	match_all_or_no_wide_chars = match_all_or_no_wide_chars | local_negate
 21250  __98:
 21251  	;
 21252  	goto __93
 21253  __93:
 21254  	;
 21255  __92:
 21256  	;
 21257  
 21258  	// In the non-UCP case, or when UCP makes no difference, we build the
 21259  	//         bit map for the POSIX class in a chunk of local store because we may
 21260  	//         be adding and subtracting from it, and we don't want to subtract bits
 21261  	//         that may be in the main map already. At the end we or the result into
 21262  	//         the bit map that is being built.
 21263  
 21264  	posix_class = posix_class * 3
 21265  
 21266  	// Copy in the first table (always present)
 21267  
 21268  	libc.X__builtin___memcpy_chk(tls, bp+32, cbits+uintptr(posix_class_maps[posix_class]), uint64(32)*uint64(unsafe.Sizeof(Tuint8_t(0))), libc.X__builtin_object_size(tls, bp+32, 0))
 21269  
 21270  	// If there is a second table, add or remove it as required.
 21271  
 21272  	taboffset = posix_class_maps[posix_class+1]
 21273  	tabopt = posix_class_maps[posix_class+2]
 21274  
 21275  	if !(taboffset >= 0) {
 21276  		goto __99
 21277  	}
 21278  
 21279  	if !(tabopt >= 0) {
 21280  		goto __100
 21281  	}
 21282  	{
 21283  		i = 0
 21284  	__102:
 21285  		if !(i < 32) {
 21286  			goto __104
 21287  		}
 21288  		*(*Tuint8_t)(unsafe.Pointer(bp + 32 + uintptr(i))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i+taboffset)))))
 21289  		goto __103
 21290  	__103:
 21291  		i++
 21292  		goto __102
 21293  		goto __104
 21294  	__104:
 21295  	}
 21296  	goto __101
 21297  __100:
 21298  	{
 21299  		i1 = 0
 21300  	__105:
 21301  		if !(i1 < 32) {
 21302  			goto __107
 21303  		}
 21304  		*(*Tuint8_t)(unsafe.Pointer(bp + 32 + uintptr(i1))) &= Tuint8_t(^int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i1+taboffset)))))
 21305  		goto __106
 21306  	__106:
 21307  		i1++
 21308  		goto __105
 21309  		goto __107
 21310  	__107:
 21311  	}
 21312  __101:
 21313  	;
 21314  __99:
 21315  	;
 21316  
 21317  	// Now see if we need to remove any special characters. An option
 21318  	//         value of 1 removes vertical space and 2 removes underscore.
 21319  
 21320  	if !(tabopt < 0) {
 21321  		goto __108
 21322  	}
 21323  	tabopt = -tabopt
 21324  __108:
 21325  	;
 21326  	if !(tabopt == 1) {
 21327  		goto __109
 21328  	}
 21329  	*(*Tuint8_t)(unsafe.Pointer(bp + 32 + 1)) &= libc.Uint8FromInt32(libc.CplInt32(0x3c))
 21330  	goto __110
 21331  __109:
 21332  	if !(tabopt == 2) {
 21333  		goto __111
 21334  	}
 21335  	*(*Tuint8_t)(unsafe.Pointer(bp + 32 + 11)) &= Tuint8_t(0x7f)
 21336  __111:
 21337  	;
 21338  __110:
 21339  	;
 21340  
 21341  	// Add the POSIX table or its complement into the main table that is
 21342  	//         being built and we are done.
 21343  
 21344  	if !(local_negate != 0) {
 21345  		goto __112
 21346  	}
 21347  	{
 21348  		i2 = 0
 21349  	__114:
 21350  		if !(i2 < 32) {
 21351  			goto __116
 21352  		}
 21353  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i2))) |= Tuint8_t(int32(Tuint8_t(^int32(*(*Tuint8_t)(unsafe.Pointer(bp + 32 + uintptr(i2)))))))
 21354  		goto __115
 21355  	__115:
 21356  		i2++
 21357  		goto __114
 21358  		goto __116
 21359  	__116:
 21360  	}
 21361  	goto __113
 21362  __112:
 21363  	{
 21364  		i3 = 0
 21365  	__117:
 21366  		if !(i3 < 32) {
 21367  			goto __119
 21368  		}
 21369  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i3))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer(bp + 32 + uintptr(i3)))))
 21370  		goto __118
 21371  	__118:
 21372  		i3++
 21373  		goto __117
 21374  		goto __119
 21375  	__119:
 21376  	}
 21377  __113:
 21378  	;
 21379  
 21380  	// Every class contains at least one < 256 character.
 21381  
 21382  	class_has_8bitchar = 1
 21383  	goto CONTINUE_CLASS // End of POSIX handling
 21384  __90:
 21385  	;
 21386  
 21387  	// Other than POSIX classes, the only items we should encounter are
 21388  	//       \d-type escapes and literal characters (possibly as ranges).
 21389  
 21390  	if !(meta == DMETA_BIGVALUE) {
 21391  		goto __120
 21392  	}
 21393  
 21394  	meta = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 21395  	goto CLASS_LITERAL
 21396  __120:
 21397  	;
 21398  
 21399  	// Any other non-literal must be an escape
 21400  
 21401  	if !(meta >= DMETA_END) {
 21402  		goto __121
 21403  	}
 21404  
 21405  	if !(meta&0xffff0000 != DMETA_ESCAPE) {
 21406  		goto __123
 21407  	}
 21408  
 21409  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR89 // Internal error - unrecognized.
 21410  	return 0
 21411  __123:
 21412  	;
 21413  	escape = meta & 0x0000ffff
 21414  
 21415  	// Every class contains at least one < 256 character.
 21416  
 21417  	class_has_8bitchar++
 21418  
 21419  	switch escape {
 21420  	case ESC_d:
 21421  		goto __125
 21422  
 21423  	case ESC_D:
 21424  		goto __126
 21425  
 21426  	case ESC_w:
 21427  		goto __127
 21428  
 21429  	case ESC_W:
 21430  		goto __128
 21431  
 21432  	// Perl 5.004 onwards omitted VT from \s, but restored it at Perl
 21433  	//           5.18. Before PCRE 8.34, we had to preserve the VT bit if it was
 21434  	//           previously set by something earlier in the character class.
 21435  	//           Luckily, the value of CHAR_VT is 0x0b in both ASCII and EBCDIC, so
 21436  	//           we could just adjust the appropriate bit. From PCRE 8.34 we no
 21437  	//           longer treat \s and \S specially.
 21438  
 21439  	case ESC_s:
 21440  		goto __129
 21441  
 21442  	case ESC_S:
 21443  		goto __130
 21444  
 21445  	// When adding the horizontal or vertical space lists to a class, or
 21446  	//           their complements, disable PCRE2_CASELESS, because it justs wastes
 21447  	//           time, and in the "not-x" UTF cases can create unwanted duplicates in
 21448  	//           the XCLASS list (provoked by characters that have more than one other
 21449  	//           case and by both cases being in the same "not-x" sublist).
 21450  
 21451  	case ESC_h:
 21452  		goto __131
 21453  
 21454  	case ESC_H:
 21455  		goto __132
 21456  
 21457  	case ESC_v:
 21458  		goto __133
 21459  
 21460  	case ESC_V:
 21461  		goto __134
 21462  
 21463  	// If Unicode is not supported, \P and \p are not allowed and are
 21464  	//           faulted at parse time, so will never appear here.
 21465  
 21466  	case ESC_p:
 21467  		goto __135
 21468  	case ESC_P:
 21469  		goto __136
 21470  	}
 21471  	goto __124
 21472  
 21473  __125:
 21474  	{
 21475  		i4 = 0
 21476  	__137:
 21477  		if !(i4 < 32) {
 21478  			goto __139
 21479  		}
 21480  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i4))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i4+Dcbit_digit)))))
 21481  		goto __138
 21482  	__138:
 21483  		i4++
 21484  		goto __137
 21485  		goto __139
 21486  	__139:
 21487  	}
 21488  	goto __124
 21489  
 21490  __126:
 21491  	should_flip_negation = DTRUE
 21492  	{
 21493  		i5 = 0
 21494  	__140:
 21495  		if !(i5 < 32) {
 21496  			goto __142
 21497  		}
 21498  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i5))) |= Tuint8_t(int32(Tuint8_t(^int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i5+Dcbit_digit)))))))
 21499  		goto __141
 21500  	__141:
 21501  		i5++
 21502  		goto __140
 21503  		goto __142
 21504  	__142:
 21505  	}
 21506  	goto __124
 21507  
 21508  __127:
 21509  	{
 21510  		i6 = 0
 21511  	__143:
 21512  		if !(i6 < 32) {
 21513  			goto __145
 21514  		}
 21515  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i6))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i6+Dcbit_word)))))
 21516  		goto __144
 21517  	__144:
 21518  		i6++
 21519  		goto __143
 21520  		goto __145
 21521  	__145:
 21522  	}
 21523  	goto __124
 21524  
 21525  __128:
 21526  	should_flip_negation = DTRUE
 21527  	{
 21528  		i7 = 0
 21529  	__146:
 21530  		if !(i7 < 32) {
 21531  			goto __148
 21532  		}
 21533  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i7))) |= Tuint8_t(int32(Tuint8_t(^int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i7+Dcbit_word)))))))
 21534  		goto __147
 21535  	__147:
 21536  		i7++
 21537  		goto __146
 21538  		goto __148
 21539  	__148:
 21540  	}
 21541  	goto __124
 21542  
 21543  	// Perl 5.004 onwards omitted VT from \s, but restored it at Perl
 21544  	//           5.18. Before PCRE 8.34, we had to preserve the VT bit if it was
 21545  	//           previously set by something earlier in the character class.
 21546  	//           Luckily, the value of CHAR_VT is 0x0b in both ASCII and EBCDIC, so
 21547  	//           we could just adjust the appropriate bit. From PCRE 8.34 we no
 21548  	//           longer treat \s and \S specially.
 21549  
 21550  __129:
 21551  	{
 21552  		i8 = 0
 21553  	__149:
 21554  		if !(i8 < 32) {
 21555  			goto __151
 21556  		}
 21557  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i8))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i8+Dcbit_space)))))
 21558  		goto __150
 21559  	__150:
 21560  		i8++
 21561  		goto __149
 21562  		goto __151
 21563  	__151:
 21564  	}
 21565  	goto __124
 21566  
 21567  __130:
 21568  	should_flip_negation = DTRUE
 21569  	{
 21570  		i9 = 0
 21571  	__152:
 21572  		if !(i9 < 32) {
 21573  			goto __154
 21574  		}
 21575  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i9))) |= Tuint8_t(int32(Tuint8_t(^int32(*(*Tuint8_t)(unsafe.Pointer(cbits + uintptr(i9+Dcbit_space)))))))
 21576  		goto __153
 21577  	__153:
 21578  		i9++
 21579  		goto __152
 21580  		goto __154
 21581  	__154:
 21582  	}
 21583  	goto __124
 21584  
 21585  	// When adding the horizontal or vertical space lists to a class, or
 21586  	//           their complements, disable PCRE2_CASELESS, because it justs wastes
 21587  	//           time, and in the "not-x" UTF cases can create unwanted duplicates in
 21588  	//           the XCLASS list (provoked by characters that have more than one other
 21589  	//           case and by both cases being in the same "not-x" sublist).
 21590  
 21591  __131:
 21592  	add_list_to_class(tls, bp, bp+64,
 21593  		options&libc.CplUint32(DPCRE2_CASELESS), cb, uintptr(unsafe.Pointer(&X_pcre2_hspace_list_8)), DNOTACHAR)
 21594  	goto __124
 21595  
 21596  __132:
 21597  	add_not_list_to_class(tls, bp, bp+64,
 21598  		options&libc.CplUint32(DPCRE2_CASELESS), cb, uintptr(unsafe.Pointer(&X_pcre2_hspace_list_8)))
 21599  	goto __124
 21600  
 21601  __133:
 21602  	add_list_to_class(tls, bp, bp+64,
 21603  		options&libc.CplUint32(DPCRE2_CASELESS), cb, uintptr(unsafe.Pointer(&X_pcre2_vspace_list_8)), DNOTACHAR)
 21604  	goto __124
 21605  
 21606  __134:
 21607  	add_not_list_to_class(tls, bp, bp+64,
 21608  		options&libc.CplUint32(DPCRE2_CASELESS), cb, uintptr(unsafe.Pointer(&X_pcre2_vspace_list_8)))
 21609  	goto __124
 21610  
 21611  	// If Unicode is not supported, \P and \p are not allowed and are
 21612  	//           faulted at parse time, so will never appear here.
 21613  
 21614  __135:
 21615  __136:
 21616  
 21617  	ptype = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4))) >> 16
 21618  	pdata = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)))) & Tuint32_t(0xffff)
 21619  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = func() uint8 {
 21620  		if escape == ESC_p {
 21621  			return uint8(DXCL_PROP)
 21622  		}
 21623  		return uint8(DXCL_NOTPROP)
 21624  	}()
 21625  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = TPCRE2_UCHAR8(ptype)
 21626  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = TPCRE2_UCHAR8(pdata)
 21627  	xclass_has_prop = DTRUE
 21628  	class_has_8bitchar-- // Undo!
 21629  
 21630  	goto __124
 21631  __124:
 21632  	;
 21633  
 21634  	goto CONTINUE_CLASS
 21635  	goto __122
 21636  __121:
 21637  
 21638  CLASS_LITERAL:
 21639  	c2 = libc.AssignUint32(&d2, meta)
 21640  
 21641  	// Remember if \r or \n were explicitly used
 21642  
 21643  	if !(c2 == Tuint32_t('\015') || c2 == Tuint32_t('\012')) {
 21644  		goto __155
 21645  	}
 21646  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_HASCRORLF)
 21647  __155:
 21648  	;
 21649  
 21650  	// Process a character range
 21651  
 21652  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) == DMETA_RANGE_LITERAL || *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) == DMETA_RANGE_ESCAPED) {
 21653  		goto __156
 21654  	}
 21655  
 21656  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 21657  	d2 = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */))))
 21658  	if !(d2 == DMETA_BIGVALUE) {
 21659  		goto __157
 21660  	}
 21661  	d2 = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 21662  __157:
 21663  	;
 21664  
 21665  	// Remember an explicit \r or \n, and add the range to the class.
 21666  
 21667  	if !(d2 == Tuint32_t('\015') || d2 == Tuint32_t('\012')) {
 21668  		goto __158
 21669  	}
 21670  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_HASCRORLF)
 21671  __158:
 21672  	;
 21673  
 21674  	// In an EBCDIC environment, Perl treats alphabetic ranges specially
 21675  	//           because there are holes in the encoding, and simply using the range
 21676  	//           A-Z (for example) would include the characters in the holes. This
 21677  	//           applies only to literal ranges; [\xC1-\xE9] is different to [A-Z].
 21678  
 21679  	// Not an EBCDIC special range
 21680  
 21681  	class_has_8bitchar = int32(uint32(class_has_8bitchar) + add_to_class(tls, bp, bp+64, options, cb, c2, d2))
 21682  	goto CONTINUE_CLASS // Go get the next char in the class
 21683  __156:
 21684  	; // End of range handling
 21685  
 21686  	// Handle a single character.
 21687  
 21688  	class_has_8bitchar = int32(uint32(class_has_8bitchar) + add_to_class(tls, bp, bp+64, options, cb, meta, meta))
 21689  __122:
 21690  	;
 21691  
 21692  	// Continue to the next item in the class.
 21693  
 21694  CONTINUE_CLASS:
 21695  
 21696  	// If any wide characters or Unicode properties have been encountered,
 21697  	//       set xclass = TRUE. Then, in the pre-compile phase, accumulate the length
 21698  	//       of the extra data and reset the pointer. This is so that very large
 21699  	//       classes that contain a zillion wide characters or Unicode property tests
 21700  	//       do not overwrite the workspace (which is on the stack).
 21701  
 21702  	if !(*(*uintptr)(unsafe.Pointer(bp + 64)) > class_uchardata_base) {
 21703  		goto __159
 21704  	}
 21705  
 21706  	xclass = DTRUE
 21707  	if !(lengthptr != uintptr(0)) {
 21708  		goto __160
 21709  	}
 21710  
 21711  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += Tsize_t((int64(*(*uintptr)(unsafe.Pointer(bp + 64))) - int64(class_uchardata_base)) / 1)
 21712  	*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)) = class_uchardata_base
 21713  __160:
 21714  	;
 21715  __159:
 21716  	;
 21717  
 21718  	goto __88 // Needed to avoid error when not supporting wide chars
 21719  	goto __88
 21720  __89:
 21721  	; // End of main class-processing loop
 21722  
 21723  	// If this class is the first thing in the branch, there can be no first
 21724  	//     char setting, whatever the repeat count. Any reqcu setting must remain
 21725  	//     unchanged after any kind of repeat.
 21726  
 21727  	if !(firstcuflags == DREQ_UNSET) {
 21728  		goto __161
 21729  	}
 21730  	firstcuflags = DREQ_NONE
 21731  __161:
 21732  	;
 21733  	zerofirstcu = firstcu
 21734  	zerofirstcuflags = firstcuflags
 21735  	zeroreqcu = reqcu
 21736  	zeroreqcuflags = reqcuflags
 21737  
 21738  	// If there are characters with values > 255, or Unicode property settings
 21739  	//     (\p or \P), we have to compile an extended class, with its own opcode,
 21740  	//     unless there were no property settings and there was a negated special such
 21741  	//     as \S in the class, and PCRE2_UCP is not set, because in that case all
 21742  	//     characters > 255 are in or not in the class, so any that were explicitly
 21743  	//     given as well can be ignored.
 21744  	//
 21745  	//     In the UCP case, if certain negated POSIX classes ([:^ascii:] or
 21746  	//     [^:xdigit:]) were present in a class, we either have to match or not match
 21747  	//     all wide characters (depending on whether the whole class is or is not
 21748  	//     negated). This requirement is indicated by match_all_or_no_wide_chars being
 21749  	//     true. We do this by including an explicit range, which works in both cases.
 21750  	//     This applies only in UTF and 16-bit and 32-bit non-UTF modes, since there
 21751  	//     cannot be any wide characters in 8-bit non-UTF mode.
 21752  	//
 21753  	//     When there *are* properties in a positive UTF-8 or any 16-bit or 32_bit
 21754  	//     class where \S etc is present without PCRE2_UCP, causing an extended class
 21755  	//     to be compiled, we make sure that all characters > 255 are included by
 21756  	//     forcing match_all_or_no_wide_chars to be true.
 21757  	//
 21758  	//     If, when generating an xclass, there are no characters < 256, we can omit
 21759  	//     the bitmap in the actual compiled code.
 21760  
 21761  	if !(xclass != 0 && (options&DPCRE2_UCP != Tuint32_t(0) || xclass_has_prop != 0 || !(should_flip_negation != 0))) {
 21762  		goto __162
 21763  	}
 21764  
 21765  	if !(match_all_or_no_wide_chars != 0 || utf != 0 && should_flip_negation != 0 && !(negate_class != 0) && options&DPCRE2_UCP == Tuint32_t(0)) {
 21766  		goto __163
 21767  	}
 21768  
 21769  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = TPCRE2_UCHAR8(DXCL_RANGE)
 21770  	if !(utf != 0) {
 21771  		goto __164
 21772  	} /* Will always be utf in the 8-bit library */
 21773  
 21774  	*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)) += uintptr(X_pcre2_ord2utf_8(tls, uint32(0x100), *(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */))))
 21775  	*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)) += uintptr(X_pcre2_ord2utf_8(tls, uint32(DMAX_UTF_CODE_POINT), *(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */))))
 21776  	goto __165
 21777  __164: /* Can only happen for the 16-bit & 32-bit libraries */
 21778  
 21779  	;
 21780  __165:
 21781  	;
 21782  __163:
 21783  	;
 21784  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */)), 1))) = TPCRE2_UCHAR8(DXCL_END) // Marks the end of extra data
 21785  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_XCLASS
 21786  	code += uintptr(DLINK_SIZE)
 21787  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = func() uint8 {
 21788  		if negate_class != 0 {
 21789  			return uint8(DXCL_NOT)
 21790  		}
 21791  		return uint8(0)
 21792  	}()
 21793  	if !(xclass_has_prop != 0) {
 21794  		goto __166
 21795  	}
 21796  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) |= TPCRE2_UCHAR8(DXCL_HASPROP)
 21797  __166:
 21798  	;
 21799  
 21800  	// If the map is required, move up the extra data to make room for it;
 21801  	//       otherwise just move the code pointer to the end of the extra data.
 21802  
 21803  	if !(class_has_8bitchar > 0) {
 21804  		goto __167
 21805  	}
 21806  
 21807  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) |= TPCRE2_UCHAR8(DXCL_MAP)
 21808  	libc.X__builtin___memmove_chk(tls, code+uintptr(uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0)))), code, uint64((int64(*(*uintptr)(unsafe.Pointer(bp + 64)))-int64(code))/1*int64(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code+uintptr(uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0)))), 0))
 21809  	if !(negate_class != 0 && !(xclass_has_prop != 0)) {
 21810  		goto __169
 21811  	}
 21812  
 21813  	// Using 255 ^ instead of ~ avoids clang sanitize warning.
 21814  	{
 21815  		i10 = 0
 21816  	__170:
 21817  		if !(i10 < 32) {
 21818  			goto __172
 21819  		}
 21820  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i10))) = Tuint8_t(255 ^ int32(*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i10)))))
 21821  		goto __171
 21822  	__171:
 21823  		i10++
 21824  		goto __170
 21825  		goto __172
 21826  	__172:
 21827  	}
 21828  __169:
 21829  	;
 21830  	libc.X__builtin___memcpy_chk(tls, code, bp, uint64(32), libc.X__builtin_object_size(tls, code, 0))
 21831  	code = *(*uintptr)(unsafe.Pointer(bp + 64)) + uintptr(uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 21832  	goto __168
 21833  __167:
 21834  	code = *(*uintptr)(unsafe.Pointer(bp + 64 /* class_uchardata */))
 21835  __168:
 21836  	;
 21837  
 21838  	// Now fill in the complete length of the item
 21839  
 21840  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 1)) = TPCRE2_UCHAR8(int32((int64(code)-int64(previous))/1) >> 8)
 21841  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 2)) = TPCRE2_UCHAR8(int32((int64(code)-int64(previous))/1) & 255)
 21842  	goto __12 // End of class handling
 21843  __162:
 21844  	;
 21845  
 21846  	// If there are no characters > 255, or they are all to be included or
 21847  	//     excluded, set the opcode to OP_CLASS or OP_NCLASS, depending on whether the
 21848  	//     whole class was negated and whether there were negative specials such as \S
 21849  	//     (non-UCP) in the class. Then copy the 32-byte map into the code vector,
 21850  	//     negating it if necessary.
 21851  
 21852  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 21853  		if negate_class == should_flip_negation {
 21854  			return OP_CLASS
 21855  		}
 21856  		return OP_NCLASS
 21857  	}()
 21858  	if !(lengthptr == uintptr(0)) {
 21859  		goto __173
 21860  	} /* Save time in the pre-compile phase */
 21861  
 21862  	if !(negate_class != 0) {
 21863  		goto __174
 21864  	}
 21865  
 21866  	// Using 255 ^ instead of ~ avoids clang sanitize warning.
 21867  	{
 21868  		i11 = 0
 21869  	__175:
 21870  		if !(i11 < 32) {
 21871  			goto __177
 21872  		}
 21873  		*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i11))) = Tuint8_t(255 ^ int32(*(*Tuint8_t)(unsafe.Pointer(bp + uintptr(i11)))))
 21874  		goto __176
 21875  	__176:
 21876  		i11++
 21877  		goto __175
 21878  		goto __177
 21879  	__177:
 21880  	}
 21881  __174:
 21882  	;
 21883  	libc.X__builtin___memcpy_chk(tls, code, bp, uint64(32), libc.X__builtin_object_size(tls, code, 0))
 21884  __173:
 21885  	;
 21886  	code += uintptr(uint64(32) / uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 21887  	goto __12 // End of class processing
 21888  
 21889  	// ===================================================================
 21890  	// Deal with (*VERB)s.
 21891  
 21892  	// Check for open captures before ACCEPT and close those that are within
 21893  	//     the same assertion level, also converting ACCEPT to ASSERT_ACCEPT in an
 21894  	//     assertion. In the first pass, just accumulate the length required;
 21895  	//     otherwise hitting (*ACCEPT) inside many nested parentheses can cause
 21896  	//     workspace overflow. Do not set firstcu after *ACCEPT.
 21897  
 21898  __23:
 21899  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fhad_accept = libc.AssignInt32(&had_accept, DTRUE)
 21900  	oc = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fopen_caps
 21901  __178:
 21902  	if !(oc != uintptr(0) && int32((*Topen_capitem)(unsafe.Pointer(oc)).Fassert_depth) >= int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fassert_depth)) {
 21903  		goto __180
 21904  	}
 21905  
 21906  	if !(lengthptr != uintptr(0)) {
 21907  		goto __181
 21908  	}
 21909  
 21910  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += uint64(1*(DPCRE2_CODE_UNIT_WIDTH/8) + DIMM2_SIZE)
 21911  	goto __182
 21912  __181:
 21913  
 21914  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_CLOSE
 21915  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(int32((*Topen_capitem)(unsafe.Pointer(oc)).Fnumber) >> 8)
 21916  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(int32((*Topen_capitem)(unsafe.Pointer(oc)).Fnumber) & 255)
 21917  	code += uintptr(DIMM2_SIZE)
 21918  __182:
 21919  	;
 21920  	goto __179
 21921  __179:
 21922  	oc = (*Topen_capitem)(unsafe.Pointer(oc)).Fnext
 21923  	goto __178
 21924  	goto __180
 21925  __180:
 21926  	;
 21927  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 21928  		if int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fassert_depth) > 0 {
 21929  			return OP_ASSERT_ACCEPT
 21930  		}
 21931  		return OP_ACCEPT
 21932  	}()
 21933  	if !(firstcuflags == DREQ_UNSET) {
 21934  		goto __183
 21935  	}
 21936  	firstcuflags = DREQ_NONE
 21937  __183:
 21938  	;
 21939  	goto __12
 21940  
 21941  __24:
 21942  __25:
 21943  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fhad_pruneorskip = DTRUE
 21944  	// Fall through
 21945  __26:
 21946  __27:
 21947  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(verbops[(meta-DMETA_MARK)>>16])
 21948  	goto __12
 21949  
 21950  __28:
 21951  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_HASTHEN)
 21952  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_THEN
 21953  	goto __12
 21954  
 21955  	// Handle verbs with arguments. Arguments can be very long, especially in
 21956  	//     16- and 32-bit modes, and can overflow the workspace in the first pass.
 21957  	//     However, the argument length is constrained to be small enough to fit in
 21958  	//     one code unit. This check happens in parse_regex(). In the first pass,
 21959  	//     instead of putting the argument into memory, we just update the length
 21960  	//     counter and set up an empty argument.
 21961  
 21962  __29:
 21963  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_HASTHEN)
 21964  	goto VERB_ARG
 21965  
 21966  __30:
 21967  __31:
 21968  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fhad_pruneorskip = DTRUE
 21969  	// Fall through
 21970  __32:
 21971  __33:
 21972  VERB_ARG:
 21973  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(verbops[(meta-DMETA_MARK)>>16])
 21974  	// The length is in characters.
 21975  	verbarglen = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 21976  	verbculen = Tuint32_t(0)
 21977  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) = libc.PostIncUintptr(&code, 1)
 21978  	{
 21979  		i17 = 0
 21980  	__184:
 21981  		if !(i17 < int32(verbarglen)) {
 21982  			goto __186
 21983  		}
 21984  
 21985  		meta = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 21986  		if !(utf != 0) {
 21987  			goto __187
 21988  		}
 21989  		mclength = X_pcre2_ord2utf_8(tls, meta, bp+72)
 21990  		goto __188
 21991  	__187:
 21992  
 21993  		mclength = Tuint32_t(1)
 21994  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 72)) = TPCRE2_UCHAR8(meta)
 21995  	__188:
 21996  		;
 21997  		if !(lengthptr != uintptr(0)) {
 21998  			goto __189
 21999  		}
 22000  		*(*Tsize_t)(unsafe.Pointer(lengthptr)) += Tsize_t(mclength)
 22001  		goto __190
 22002  	__189:
 22003  
 22004  		libc.X__builtin___memcpy_chk(tls, code, bp+72, uint64(mclength*Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code, 0))
 22005  		code += uintptr(mclength)
 22006  		verbculen = verbculen + mclength
 22007  	__190:
 22008  		;
 22009  		goto __185
 22010  	__185:
 22011  		i17++
 22012  		goto __184
 22013  		goto __186
 22014  	__186:
 22015  	}
 22016  
 22017  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)))) = TPCRE2_UCHAR8(verbculen) // Fill in the code unit length
 22018  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(0)                               // Terminating zero
 22019  	goto __12
 22020  
 22021  	// ===================================================================
 22022  	// Handle options change. The new setting must be passed back for use in
 22023  	//     subsequent branches. Reset the greedy defaults and the case value for
 22024  	//     firstcu and reqcu.
 22025  
 22026  __34:
 22027  	*(*Tuint32_t)(unsafe.Pointer(optionsptr)) = libc.AssignUint32(&options, *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4))))
 22028  	greedy_default = Tuint32_t(libc.Bool32(options&DPCRE2_UNGREEDY != Tuint32_t(0)))
 22029  	greedy_non_default = greedy_default ^ Tuint32_t(1)
 22030  	if options&DPCRE2_CASELESS != Tuint32_t(0) {
 22031  		req_caseopt = DREQ_CASELESS
 22032  	} else {
 22033  		req_caseopt = uint32(0)
 22034  	}
 22035  	goto __12
 22036  
 22037  	// ===================================================================
 22038  	// Handle conditional subpatterns. The case of (?(Rdigits) is ambiguous
 22039  	//     because it could be a numerical check on recursion, or a name check on a
 22040  	//     group's being set. The pre-pass sets up META_COND_RNUMBER as a name so that
 22041  	//     we can handle it either way. We first try for a name; if not found, process
 22042  	//     the number.
 22043  
 22044  __35: // (?(Rdigits)
 22045  __36: // (?(name) or (?'name') or ?(<name>)
 22046  __37: // (?(R&name) - test for recursion
 22047  	bravalue = OP_COND
 22048  
 22049  	ng = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups
 22050  	length = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 22051  
 22052  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)))
 22053  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 22054  
 22055  	name = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern + uintptr(offset)
 22056  
 22057  	// In the first pass, the names generated in the pre-pass are available,
 22058  	//       but the main name table has not yet been created. Scan the list of names
 22059  	//       generated in the pre-pass in order to get a number and whether or not
 22060  	//       this name is duplicated. If it is not duplicated, we can handle it as a
 22061  	//       numerical group.
 22062  
 22063  	i12 = uint32(0)
 22064  __191:
 22065  	if !(i12 < uint32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)) {
 22066  		goto __193
 22067  	}
 22068  
 22069  	if !(length == Tuint32_t((*Tnamed_group_8)(unsafe.Pointer(ng)).Flength) && X_pcre2_strncmp_8(tls, name, (*Tnamed_group_8)(unsafe.Pointer(ng)).Fname, uint64(length)) == 0) {
 22070  		goto __194
 22071  	}
 22072  
 22073  	if !!(int32((*Tnamed_group_8)(unsafe.Pointer(ng)).Fisdup) != 0) {
 22074  		goto __195
 22075  	}
 22076  
 22077  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = func() uint8 {
 22078  		if meta == DMETA_COND_RNAME {
 22079  			return OP_RREF
 22080  		}
 22081  		return OP_CREF
 22082  	}()
 22083  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)) = TPCRE2_UCHAR8((*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber >> 8)
 22084  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)) = TPCRE2_UCHAR8((*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber & Tuint32_t(255))
 22085  	if !((*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber > (*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref) {
 22086  		goto __196
 22087  	}
 22088  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref = (*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber
 22089  __196:
 22090  	;
 22091  	skipunits = Tuint32_t(1 + DIMM2_SIZE)
 22092  	goto GROUP_PROCESS_NOTE_EMPTY
 22093  __195:
 22094  	;
 22095  	goto __193 // Found a duplicated name
 22096  __194:
 22097  	;
 22098  	goto __192
 22099  __192:
 22100  	i12++
 22101  	ng += 16
 22102  	goto __191
 22103  	goto __193
 22104  __193:
 22105  	;
 22106  
 22107  	// If the name was not found we have a bad reference, unless we are
 22108  	//       dealing with R<digits>, which is treated as a recursion test by number.
 22109  	//
 22110  
 22111  	if !(i12 >= uint32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)) {
 22112  		goto __197
 22113  	}
 22114  
 22115  	groupnumber = Tuint32_t(0)
 22116  	if !(meta == DMETA_COND_RNUMBER) {
 22117  		goto __198
 22118  	}
 22119  
 22120  	i12 = uint32(1)
 22121  __199:
 22122  	if !(i12 < length) {
 22123  		goto __201
 22124  	}
 22125  
 22126  	groupnumber = groupnumber*Tuint32_t(10) + Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(name + uintptr(i12)))) - Tuint32_t('\060')
 22127  	if !(groupnumber > DMAX_GROUP_NUMBER) {
 22128  		goto __202
 22129  	}
 22130  
 22131  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR61
 22132  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset + Tsize_t(i12)
 22133  	return 0
 22134  __202:
 22135  	;
 22136  	goto __200
 22137  __200:
 22138  	i12++
 22139  	goto __199
 22140  	goto __201
 22141  __201:
 22142  	;
 22143  __198:
 22144  	;
 22145  
 22146  	if !(meta != DMETA_COND_RNUMBER || groupnumber > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 22147  		goto __203
 22148  	}
 22149  
 22150  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR15
 22151  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 22152  	return 0
 22153  __203:
 22154  	;
 22155  
 22156  	// (?Rdigits) treated as a recursion reference by number. A value of
 22157  	//         zero (which is the result of both (?R) and (?R0)) means "any", and is
 22158  	//         translated into RREF_ANY (which is 0xffff).
 22159  
 22160  	if !(groupnumber == Tuint32_t(0)) {
 22161  		goto __204
 22162  	}
 22163  	groupnumber = Tuint32_t(DRREF_ANY)
 22164  __204:
 22165  	;
 22166  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = OP_RREF
 22167  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)) = TPCRE2_UCHAR8(groupnumber >> 8)
 22168  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)) = TPCRE2_UCHAR8(groupnumber & Tuint32_t(255))
 22169  	skipunits = Tuint32_t(1 + DIMM2_SIZE)
 22170  	goto GROUP_PROCESS_NOTE_EMPTY
 22171  __197:
 22172  	;
 22173  
 22174  	// A duplicated name was found. Note that if an R<digits> name is found
 22175  	//       (META_COND_RNUMBER), it is a reference test, not a recursion test.
 22176  
 22177  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = func() uint8 {
 22178  		if meta == DMETA_COND_RNAME {
 22179  			return OP_RREF
 22180  		}
 22181  		return OP_CREF
 22182  	}()
 22183  
 22184  	// We have a duplicated name. In the compile pass we have to search the
 22185  	//       main table in order to get the index and count values.
 22186  
 22187  	*(*int32)(unsafe.Pointer(bp + 84 /* count */)) = 0 // Values for first pass (avoids compiler warning)
 22188  	*(*int32)(unsafe.Pointer(bp + 80 /* index */)) = 0
 22189  	if !(lengthptr == uintptr(0) && !(find_dupname_details(tls, name, length, bp+80,
 22190  		bp+84, errorcodeptr, cb) != 0)) {
 22191  		goto __205
 22192  	}
 22193  	return 0
 22194  __205:
 22195  	;
 22196  
 22197  	// Add one to the opcode to change CREF/RREF into DNCREF/DNRREF and
 22198  	//       insert appropriate data values.
 22199  
 22200  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))++
 22201  	skipunits = Tuint32_t(1 + 2*DIMM2_SIZE)
 22202  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 80)) >> 8)
 22203  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 80)) & 255)
 22204  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 6)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 84)) >> 8)
 22205  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 7)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 84)) & 255)
 22206  
 22207  	goto GROUP_PROCESS_NOTE_EMPTY
 22208  
 22209  	// The DEFINE condition is always false. Its internal groups may never
 22210  	//     be called, so matched_char must remain false, hence the jump to
 22211  	//     GROUP_PROCESS rather than GROUP_PROCESS_NOTE_EMPTY.
 22212  
 22213  __38:
 22214  	bravalue = OP_COND
 22215  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)))
 22216  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 22217  
 22218  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = OP_DEFINE
 22219  	skipunits = Tuint32_t(1)
 22220  	goto GROUP_PROCESS
 22221  
 22222  	// Conditional test of a group's being set.
 22223  
 22224  __39:
 22225  	bravalue = OP_COND
 22226  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)))
 22227  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 22228  
 22229  	groupnumber = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 22230  	if !(groupnumber > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 22231  		goto __206
 22232  	}
 22233  
 22234  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR15
 22235  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 22236  	return 0
 22237  __206:
 22238  	;
 22239  	if !(groupnumber > (*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref) {
 22240  		goto __207
 22241  	}
 22242  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref = groupnumber
 22243  __207:
 22244  	;
 22245  	offset = offset - uint64(2) // Point at initial ( for too many branches error
 22246  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = OP_CREF
 22247  	skipunits = Tuint32_t(1 + DIMM2_SIZE)
 22248  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)) = TPCRE2_UCHAR8(groupnumber >> 8)
 22249  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)) = TPCRE2_UCHAR8(groupnumber & Tuint32_t(255))
 22250  	goto GROUP_PROCESS_NOTE_EMPTY
 22251  
 22252  	// Test for the PCRE2 version.
 22253  
 22254  __40:
 22255  	bravalue = OP_COND
 22256  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) > Tuint32_t(0)) {
 22257  		goto __208
 22258  	}
 22259  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = func() uint8 {
 22260  		if Tuint32_t(DPCRE2_MAJOR) > *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) || Tuint32_t(DPCRE2_MAJOR) == *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) && Tuint32_t(DPCRE2_MINOR) >= *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 3*4)) {
 22261  			return OP_TRUE
 22262  		}
 22263  		return OP_FALSE
 22264  	}()
 22265  	goto __209
 22266  __208:
 22267  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = func() uint8 {
 22268  		if Tuint32_t(DPCRE2_MAJOR) == *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) && Tuint32_t(DPCRE2_MINOR) == *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 3*4)) {
 22269  			return OP_TRUE
 22270  		}
 22271  		return OP_FALSE
 22272  	}()
 22273  __209:
 22274  	;
 22275  	skipunits = Tuint32_t(1)
 22276  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(3)
 22277  	goto GROUP_PROCESS_NOTE_EMPTY
 22278  
 22279  	// The condition is an assertion, possibly preceded by a callout.
 22280  
 22281  __41:
 22282  	bravalue = OP_COND
 22283  	goto GROUP_PROCESS_NOTE_EMPTY
 22284  
 22285  	// ===================================================================
 22286  	// Handle all kinds of nested bracketed groups. The non-capturing,
 22287  	//     non-conditional cases are here; others come to GROUP_PROCESS via goto.
 22288  
 22289  __42:
 22290  	bravalue = OP_ASSERT
 22291  	*(*Tuint16_t)(unsafe.Pointer(cb + 182)) += Tuint16_t(1)
 22292  	goto GROUP_PROCESS
 22293  
 22294  __43:
 22295  	bravalue = OP_ASSERT_NA
 22296  	*(*Tuint16_t)(unsafe.Pointer(cb + 182)) += Tuint16_t(1)
 22297  	goto GROUP_PROCESS
 22298  
 22299  	// Optimize (?!) to (*FAIL) unless it is quantified - which is a weird
 22300  	//     thing to do, but Perl allows all assertions to be quantified, and when
 22301  	//     they contain capturing parentheses there may be a potential use for
 22302  	//     this feature. Not that that applies to a quantified (?!) but we allow
 22303  	//     it for uniformity.
 22304  
 22305  __44:
 22306  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) == DMETA_KET && (*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) < DMETA_ASTERISK || *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) > DMETA_MINMAX_QUERY)) {
 22307  		goto __210
 22308  	}
 22309  
 22310  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_FAIL
 22311  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4
 22312  	goto __211
 22313  __210:
 22314  
 22315  	bravalue = OP_ASSERT_NOT
 22316  	*(*Tuint16_t)(unsafe.Pointer(cb + 182)) += Tuint16_t(1)
 22317  	goto GROUP_PROCESS
 22318  __211:
 22319  	;
 22320  	goto __12
 22321  
 22322  __45:
 22323  	bravalue = OP_ASSERTBACK
 22324  	*(*Tuint16_t)(unsafe.Pointer(cb + 182)) += Tuint16_t(1)
 22325  	goto GROUP_PROCESS
 22326  
 22327  __46:
 22328  	bravalue = OP_ASSERTBACK_NOT
 22329  	*(*Tuint16_t)(unsafe.Pointer(cb + 182)) += Tuint16_t(1)
 22330  	goto GROUP_PROCESS
 22331  
 22332  __47:
 22333  	bravalue = OP_ASSERTBACK_NA
 22334  	*(*Tuint16_t)(unsafe.Pointer(cb + 182)) += Tuint16_t(1)
 22335  	goto GROUP_PROCESS
 22336  
 22337  __48:
 22338  	bravalue = OP_ONCE
 22339  	goto GROUP_PROCESS_NOTE_EMPTY
 22340  
 22341  __49:
 22342  	bravalue = OP_SCRIPT_RUN
 22343  	goto GROUP_PROCESS_NOTE_EMPTY
 22344  
 22345  __50:
 22346  	bravalue = OP_BRA
 22347  	// Fall through
 22348  
 22349  	// Process nested bracketed regex. The nesting depth is maintained for the
 22350  	//     benefit of the stackguard function. The test for too deep nesting is now
 22351  	//     done in parse_regex(). Assertion and DEFINE groups come to GROUP_PROCESS;
 22352  	//     others come to GROUP_PROCESS_NOTE_EMPTY, to indicate that we need to take
 22353  	//     note of whether or not they may match an empty string.
 22354  
 22355  GROUP_PROCESS_NOTE_EMPTY:
 22356  	note_group_empty = DTRUE
 22357  
 22358  GROUP_PROCESS:
 22359  	*(*Tuint16_t)(unsafe.Pointer(cb + 180)) += Tuint16_t(1)
 22360  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(bravalue)
 22361  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4
 22362  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) = code
 22363  	tempreqvary = (*Tcompile_block_8)(unsafe.Pointer(cb)).Freq_varyopt       // Save value before group
 22364  	*(*Tsize_t)(unsafe.Pointer(bp + 120 /* length_prevgroup */)) = uint64(0) // Initialize for pre-compile phase
 22365  
 22366  	if !(libc.AssignInt32(&group_return, compile_regex(tls,
 22367  		options,
 22368  		bp+88,
 22369  		bp+96,
 22370  		errorcodeptr,
 22371  		skipunits,
 22372  		bp+104,
 22373  		bp+108,
 22374  		bp+112,
 22375  		bp+116,
 22376  		bcptr,
 22377  		cb,
 22378  		func() uintptr {
 22379  			if lengthptr == uintptr(0) {
 22380  				return uintptr(0)
 22381  			}
 22382  			return bp + 120
 22383  		}())) == 0) {
 22384  		goto __212
 22385  	}
 22386  	return 0
 22387  __212:
 22388  	; // Error
 22389  
 22390  	*(*Tuint16_t)(unsafe.Pointer(cb + 180)) -= Tuint16_t(1)
 22391  
 22392  	// If that was a non-conditional significant group (not an assertion, not a
 22393  	//     DEFINE) that matches at least one character, then the current item matches
 22394  	//     a character. Conditionals are handled below.
 22395  
 22396  	if !(note_group_empty != 0 && bravalue != OP_COND && group_return > 0) {
 22397  		goto __213
 22398  	}
 22399  	matched_char = DTRUE
 22400  __213:
 22401  	;
 22402  
 22403  	// If we've just compiled an assertion, pop the assert depth.
 22404  
 22405  	if !(bravalue >= OP_ASSERT && bravalue <= OP_ASSERTBACK_NA) {
 22406  		goto __214
 22407  	}
 22408  	*(*Tuint16_t)(unsafe.Pointer(cb + 182)) -= Tuint16_t(1)
 22409  __214:
 22410  	;
 22411  
 22412  	// At the end of compiling, code is still pointing to the start of the
 22413  	//     group, while tempcode has been updated to point past the end of the group.
 22414  	//     The parsed pattern pointer (pptr) is on the closing META_KET.
 22415  	//
 22416  	//     If this is a conditional bracket, check that there are no more than
 22417  	//     two branches in the group, or just one if it's a DEFINE group. We do this
 22418  	//     in the real compile phase, not in the pre-pass, where the whole group may
 22419  	//     not be available.
 22420  
 22421  	if !(bravalue == OP_COND && lengthptr == uintptr(0)) {
 22422  		goto __215
 22423  	}
 22424  
 22425  	tc = code
 22426  	condcount = 0
 22427  
 22428  __216:
 22429  	condcount++
 22430  	tc += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tc + 2)))))
 22431  	goto __217
 22432  __217:
 22433  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tc))) != OP_KET {
 22434  		goto __216
 22435  	}
 22436  	goto __218
 22437  __218:
 22438  	;
 22439  
 22440  	// A DEFINE group is never obeyed inline (the "condition" is always
 22441  	//       false). It must have only one branch. Having checked this, change the
 22442  	//       opcode to OP_FALSE.
 22443  
 22444  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_DEFINE) {
 22445  		goto __219
 22446  	}
 22447  
 22448  	if !(condcount > 1) {
 22449  		goto __221
 22450  	}
 22451  
 22452  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 22453  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR54
 22454  	return 0
 22455  __221:
 22456  	;
 22457  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = OP_FALSE
 22458  	bravalue = OP_DEFINE // A flag to suppress char handling below
 22459  	goto __220
 22460  __219:
 22461  
 22462  	if !(condcount > 2) {
 22463  		goto __222
 22464  	}
 22465  
 22466  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 22467  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR27
 22468  	return 0
 22469  __222:
 22470  	;
 22471  	if !(condcount == 1) {
 22472  		goto __223
 22473  	}
 22474  	*(*Tuint32_t)(unsafe.Pointer(bp + 108 /* subfirstcuflags */)) = libc.AssignPtrUint32(bp+116 /* subreqcuflags */, DREQ_NONE)
 22475  	goto __224
 22476  __223:
 22477  	if !(group_return > 0) {
 22478  		goto __225
 22479  	}
 22480  	matched_char = DTRUE
 22481  __225:
 22482  	;
 22483  __224:
 22484  	;
 22485  __220:
 22486  	;
 22487  __215:
 22488  	;
 22489  
 22490  	// In the pre-compile phase, update the length by the length of the group,
 22491  	//     less the brackets at either end. Then reduce the compiled code to just a
 22492  	//     set of non-capturing brackets so that it doesn't use much memory if it is
 22493  	//     duplicated by a quantifier.
 22494  
 22495  	if !(lengthptr != uintptr(0)) {
 22496  		goto __226
 22497  	}
 22498  
 22499  	if !(uint64(2147483647-20)-*(*Tsize_t)(unsafe.Pointer(lengthptr)) < *(*Tsize_t)(unsafe.Pointer(bp + 120))-uint64(2)-uint64(2*DLINK_SIZE)) {
 22500  		goto __227
 22501  	}
 22502  
 22503  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR20
 22504  	return 0
 22505  __227:
 22506  	;
 22507  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += *(*Tsize_t)(unsafe.Pointer(bp + 120)) - uint64(2) - uint64(2*DLINK_SIZE)
 22508  	code++ // This already contains bravalue
 22509  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(int32(1+DLINK_SIZE) >> 8)
 22510  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8((1 + DLINK_SIZE) & 255)
 22511  	code += uintptr(DLINK_SIZE)
 22512  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_KET
 22513  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(int32(1+DLINK_SIZE) >> 8)
 22514  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8((1 + DLINK_SIZE) & 255)
 22515  	code += uintptr(DLINK_SIZE)
 22516  	goto __12 // No need to waste time with special character handling
 22517  __226:
 22518  	;
 22519  
 22520  	// Otherwise update the main code pointer to the end of the group.
 22521  
 22522  	code = *(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */))
 22523  
 22524  	// For a DEFINE group, required and first character settings are not
 22525  	//     relevant.
 22526  
 22527  	if !(bravalue == OP_DEFINE) {
 22528  		goto __228
 22529  	}
 22530  	goto __12
 22531  __228:
 22532  	;
 22533  
 22534  	// Handle updating of the required and first code units for other types of
 22535  	//     group. Update for normal brackets of all kinds, and conditions with two
 22536  	//     branches (see code above). If the bracket is followed by a quantifier with
 22537  	//     zero repeat, we have to back off. Hence the definition of zeroreqcu and
 22538  	//     zerofirstcu outside the main loop so that they can be accessed for the back
 22539  	//     off.
 22540  
 22541  	zeroreqcu = reqcu
 22542  	zeroreqcuflags = reqcuflags
 22543  	zerofirstcu = firstcu
 22544  	zerofirstcuflags = firstcuflags
 22545  	groupsetfirstcu = DFALSE
 22546  
 22547  	if !(bravalue >= OP_ONCE) {
 22548  		goto __229
 22549  	} /* Not an assertion */
 22550  
 22551  	// If we have not yet set a firstcu in this branch, take it from the
 22552  	//       subpattern, remembering that it was set here so that a repeat of more
 22553  	//       than one can replicate it as reqcu if necessary. If the subpattern has
 22554  	//       no firstcu, set "none" for the whole branch. In both cases, a zero
 22555  	//       repeat forces firstcu to "none".
 22556  
 22557  	if !(firstcuflags == DREQ_UNSET && *(*Tuint32_t)(unsafe.Pointer(bp + 108)) != DREQ_UNSET) {
 22558  		goto __231
 22559  	}
 22560  
 22561  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 108)) < DREQ_NONE) {
 22562  		goto __233
 22563  	}
 22564  
 22565  	firstcu = *(*Tuint32_t)(unsafe.Pointer(bp + 104 /* subfirstcu */))
 22566  	firstcuflags = *(*Tuint32_t)(unsafe.Pointer(bp + 108 /* subfirstcuflags */))
 22567  	groupsetfirstcu = DTRUE
 22568  	goto __234
 22569  __233:
 22570  	firstcuflags = DREQ_NONE
 22571  __234:
 22572  	;
 22573  	zerofirstcuflags = DREQ_NONE
 22574  	goto __232
 22575  __231:
 22576  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 108)) < DREQ_NONE && *(*Tuint32_t)(unsafe.Pointer(bp + 116)) >= DREQ_NONE) {
 22577  		goto __235
 22578  	}
 22579  
 22580  	*(*Tuint32_t)(unsafe.Pointer(bp + 112 /* subreqcu */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 104 /* subfirstcu */))
 22581  	*(*Tuint32_t)(unsafe.Pointer(bp + 116 /* subreqcuflags */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 108)) | tempreqvary
 22582  __235:
 22583  	;
 22584  __232:
 22585  	;
 22586  
 22587  	// If the subpattern set a required code unit (or set a first code unit
 22588  	//       that isn't really the first code unit - see above), set it.
 22589  
 22590  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 116)) < DREQ_NONE) {
 22591  		goto __236
 22592  	}
 22593  
 22594  	reqcu = *(*Tuint32_t)(unsafe.Pointer(bp + 112 /* subreqcu */))
 22595  	reqcuflags = *(*Tuint32_t)(unsafe.Pointer(bp + 116 /* subreqcuflags */))
 22596  __236:
 22597  	;
 22598  	goto __230
 22599  __229:
 22600  	if !((bravalue == OP_ASSERT || bravalue == OP_ASSERT_NA) && *(*Tuint32_t)(unsafe.Pointer(bp + 116)) < DREQ_NONE && *(*Tuint32_t)(unsafe.Pointer(bp + 108)) < DREQ_NONE) {
 22601  		goto __237
 22602  	}
 22603  
 22604  	reqcu = *(*Tuint32_t)(unsafe.Pointer(bp + 112 /* subreqcu */))
 22605  	reqcuflags = *(*Tuint32_t)(unsafe.Pointer(bp + 116 /* subreqcuflags */))
 22606  __237:
 22607  	;
 22608  __230:
 22609  	;
 22610  
 22611  	goto __12 // End of nested group handling
 22612  
 22613  	// ===================================================================
 22614  	// Handle named backreferences and recursions.
 22615  
 22616  __51:
 22617  __52:
 22618  
 22619  	is_dupname = DFALSE
 22620  	ng1 = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups
 22621  	length1 = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 22622  
 22623  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)))
 22624  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 22625  
 22626  	name1 = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern + uintptr(offset)
 22627  
 22628  	// In the first pass, the names generated in the pre-pass are available,
 22629  	//       but the main name table has not yet been created. Scan the list of names
 22630  	//       generated in the pre-pass in order to get a number and whether or not
 22631  	//       this name is duplicated.
 22632  
 22633  	groupnumber = Tuint32_t(0)
 22634  	{
 22635  		i13 = uint32(0)
 22636  	__238:
 22637  		if !(i13 < uint32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)) {
 22638  			goto __240
 22639  		}
 22640  
 22641  		if !(length1 == Tuint32_t((*Tnamed_group_8)(unsafe.Pointer(ng1)).Flength) && X_pcre2_strncmp_8(tls, name1, (*Tnamed_group_8)(unsafe.Pointer(ng1)).Fname, uint64(length1)) == 0) {
 22642  			goto __241
 22643  		}
 22644  
 22645  		is_dupname = TBOOL((*Tnamed_group_8)(unsafe.Pointer(ng1)).Fisdup)
 22646  		groupnumber = (*Tnamed_group_8)(unsafe.Pointer(ng1)).Fnumber
 22647  
 22648  		// For a recursion, that's all that is needed. We can now go to
 22649  		//           the code that handles numerical recursion, applying it to the first
 22650  		//           group with the given name.
 22651  
 22652  		if !(meta == DMETA_RECURSE_BYNAME) {
 22653  			goto __242
 22654  		}
 22655  
 22656  		meta_arg = groupnumber
 22657  		goto HANDLE_NUMERICAL_RECURSION
 22658  	__242:
 22659  		;
 22660  
 22661  		// For a back reference, update the back reference map and the
 22662  		//           maximum back reference.
 22663  
 22664  		*(*Tuint32_t)(unsafe.Pointer(cb + 252)) |= func() uint32 {
 22665  			if groupnumber < Tuint32_t(32) {
 22666  				return uint32(1) << groupnumber
 22667  			}
 22668  			return uint32(1)
 22669  		}()
 22670  		if !(groupnumber > (*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref) {
 22671  			goto __243
 22672  		}
 22673  		(*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref = groupnumber
 22674  	__243:
 22675  		;
 22676  	__241:
 22677  		;
 22678  		goto __239
 22679  	__239:
 22680  		i13++
 22681  		ng1 += 16
 22682  		goto __238
 22683  		goto __240
 22684  	__240:
 22685  	}
 22686  
 22687  	// If the name was not found we have a bad reference.
 22688  
 22689  	if !(groupnumber == Tuint32_t(0)) {
 22690  		goto __244
 22691  	}
 22692  
 22693  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR15
 22694  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 22695  	return 0
 22696  __244:
 22697  	;
 22698  
 22699  	// If a back reference name is not duplicated, we can handle it as
 22700  	//       a numerical reference.
 22701  
 22702  	if !!(is_dupname != 0) {
 22703  		goto __245
 22704  	}
 22705  
 22706  	meta_arg = groupnumber
 22707  	goto HANDLE_SINGLE_REFERENCE
 22708  __245:
 22709  	;
 22710  
 22711  	// If a back reference name is duplicated, we generate a different
 22712  	//       opcode to a numerical back reference. In the second pass we must
 22713  	//       search for the index and count in the final name table.
 22714  
 22715  	*(*int32)(unsafe.Pointer(bp + 132 /* count1 */)) = 0 // Values for first pass (avoids compiler warning)
 22716  	*(*int32)(unsafe.Pointer(bp + 128 /* index1 */)) = 0
 22717  	if !(lengthptr == uintptr(0) && !(find_dupname_details(tls, name1, length1, bp+128,
 22718  		bp+132, errorcodeptr, cb) != 0)) {
 22719  		goto __246
 22720  	}
 22721  	return 0
 22722  __246:
 22723  	;
 22724  
 22725  	if !(firstcuflags == DREQ_UNSET) {
 22726  		goto __247
 22727  	}
 22728  	firstcuflags = DREQ_NONE
 22729  __247:
 22730  	;
 22731  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 22732  		if options&DPCRE2_CASELESS != Tuint32_t(0) {
 22733  			return OP_DNREFI
 22734  		}
 22735  		return OP_DNREF
 22736  	}()
 22737  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 128)) >> 8)
 22738  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 128)) & 255)
 22739  	code += uintptr(DIMM2_SIZE)
 22740  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 132)) >> 8)
 22741  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(*(*int32)(unsafe.Pointer(bp + 132)) & 255)
 22742  	code += uintptr(DIMM2_SIZE)
 22743  
 22744  	goto __12
 22745  
 22746  	// ===================================================================
 22747  	// Handle a numerical callout.
 22748  
 22749  __53:
 22750  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = OP_CALLOUT
 22751  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) >> 8)
 22752  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) & Tuint32_t(255)) // Offset to next pattern item
 22753  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) >> 8)
 22754  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) & Tuint32_t(255)) // Length of next pattern item
 22755  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) + 3*4)))
 22756  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(3)
 22757  	code += uintptr(X_pcre2_OP_lengths_8[OP_CALLOUT])
 22758  	goto __12
 22759  
 22760  	// ===================================================================
 22761  	// Handle a callout with a string argument. In the pre-pass we just compute
 22762  	//     the length without generating anything. The length in pptr[3] includes both
 22763  	//     delimiters; in the actual compile only the first one is copied, but a
 22764  	//     terminating zero is added. Any doubled delimiters within the string make
 22765  	//     this an overestimate, but it is not worth bothering about.
 22766  
 22767  __54:
 22768  	if !(lengthptr != uintptr(0)) {
 22769  		goto __248
 22770  	}
 22771  
 22772  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 3*4)) + Tuint32_t(1+4*DLINK_SIZE))
 22773  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(3)
 22774  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 22775  	goto __249
 22776  __248:
 22777  
 22778  	length2 = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) + 3*4))
 22779  	callout_string = code + uintptr(1+4*DLINK_SIZE)
 22780  
 22781  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = OP_CALLOUT_STR
 22782  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) >> 8)
 22783  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)) & Tuint32_t(255)) // Offset to next pattern item
 22784  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) >> 8)
 22785  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)) & Tuint32_t(255)) // Length of next pattern item
 22786  
 22787  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(3)
 22788  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)))
 22789  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 22790  	// Offset to string in pattern
 22791  	pp = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern + uintptr(offset)
 22792  	delimiter = Tuint32_t(libc.AssignPtrUint8(libc.PostIncUintptr(&callout_string, 1), *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pp, 1)))))
 22793  	if !(delimiter == Tuint32_t('\173')) {
 22794  		goto __250
 22795  	}
 22796  	delimiter = Tuint32_t('\175')
 22797  __250:
 22798  	;
 22799  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 7)) = TPCRE2_UCHAR8(int32(offset+uint64(1)) >> 8)
 22800  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 8)) = TPCRE2_UCHAR8(int32(offset+uint64(1)) & 255) // One after delimiter
 22801  
 22802  	// The syntax of the pattern was checked in the parsing scan. The length
 22803  	//       includes both delimiters, but we have passed the opening one just above,
 22804  	//       so we reduce length before testing it. The test is for > 1 because we do
 22805  	//       not want to copy the final delimiter. This also ensures that pp[1] is
 22806  	//       accessible.
 22807  
 22808  __251:
 22809  	if !(libc.PreDecUint32(&length2, 1) > Tuint32_t(1)) {
 22810  		goto __252
 22811  	}
 22812  
 22813  	if !(Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pp))) == delimiter && Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pp + 1))) == delimiter) {
 22814  		goto __253
 22815  	}
 22816  
 22817  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&callout_string, 1))) = TPCRE2_UCHAR8(delimiter)
 22818  	pp += uintptr(2)
 22819  	length2--
 22820  	goto __254
 22821  __253:
 22822  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&callout_string, 1))) = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pp, 1)))
 22823  __254:
 22824  	;
 22825  	goto __251
 22826  __252:
 22827  	;
 22828  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&callout_string, 1))) = TPCRE2_UCHAR8(0)
 22829  
 22830  	// Set the length of the entire item, the advance to its end.
 22831  
 22832  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)) = TPCRE2_UCHAR8(int32((int64(callout_string)-int64(code))/1) >> 8)
 22833  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 6)) = TPCRE2_UCHAR8(int32((int64(callout_string)-int64(code))/1) & 255)
 22834  	code = callout_string
 22835  __249:
 22836  	;
 22837  	goto __12
 22838  
 22839  	// ===================================================================
 22840  	// Handle repetition. The different types are all sorted out in the parsing
 22841  	//     pass.
 22842  
 22843  __55:
 22844  __56:
 22845  __57:
 22846  	repeat_min = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 22847  	repeat_max = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4)))
 22848  	goto REPEAT
 22849  
 22850  __58:
 22851  __59:
 22852  __60:
 22853  	repeat_min = Tuint32_t(0)
 22854  	repeat_max = DMAX_REPEAT_COUNT + uint32(1)
 22855  	goto REPEAT
 22856  
 22857  __61:
 22858  __62:
 22859  __63:
 22860  	repeat_min = Tuint32_t(1)
 22861  	repeat_max = DMAX_REPEAT_COUNT + uint32(1)
 22862  	goto REPEAT
 22863  
 22864  __64:
 22865  __65:
 22866  __66:
 22867  	repeat_min = Tuint32_t(0)
 22868  	repeat_max = Tuint32_t(1)
 22869  
 22870  REPEAT:
 22871  	if !(previous_matched_char != 0 && repeat_min > Tuint32_t(0)) {
 22872  		goto __255
 22873  	}
 22874  	matched_char = DTRUE
 22875  __255:
 22876  	;
 22877  
 22878  	// Remember whether this is a variable length repeat, and default to
 22879  	//     single-char opcodes.
 22880  
 22881  	if repeat_min == repeat_max {
 22882  		reqvary = uint32(0)
 22883  	} else {
 22884  		reqvary = DREQ_VARY
 22885  	}
 22886  	op_type = Tuint32_t(0)
 22887  
 22888  	// Adjust first and required code units for a zero repeat.
 22889  
 22890  	if !(repeat_min == Tuint32_t(0)) {
 22891  		goto __256
 22892  	}
 22893  
 22894  	firstcu = zerofirstcu
 22895  	firstcuflags = zerofirstcuflags
 22896  	reqcu = zeroreqcu
 22897  	reqcuflags = zeroreqcuflags
 22898  __256:
 22899  	;
 22900  
 22901  	// Note the greediness and possessiveness.
 22902  
 22903  	switch meta {
 22904  	case DMETA_MINMAX_PLUS:
 22905  		goto __258
 22906  	case DMETA_ASTERISK_PLUS:
 22907  		goto __259
 22908  	case DMETA_PLUS_PLUS:
 22909  		goto __260
 22910  	case DMETA_QUERY_PLUS:
 22911  		goto __261
 22912  
 22913  	case DMETA_MINMAX_QUERY:
 22914  		goto __262
 22915  	case DMETA_ASTERISK_QUERY:
 22916  		goto __263
 22917  	case DMETA_PLUS_QUERY:
 22918  		goto __264
 22919  	case DMETA_QUERY_QUERY:
 22920  		goto __265
 22921  
 22922  	default:
 22923  		goto __266
 22924  	}
 22925  	goto __257
 22926  
 22927  __258:
 22928  __259:
 22929  __260:
 22930  __261:
 22931  	repeat_type = Tuint32_t(0) // Force greedy
 22932  	possessive_quantifier = DTRUE
 22933  	goto __257
 22934  
 22935  __262:
 22936  __263:
 22937  __264:
 22938  __265:
 22939  	repeat_type = greedy_non_default
 22940  	possessive_quantifier = DFALSE
 22941  	goto __257
 22942  
 22943  __266:
 22944  	repeat_type = greedy_default
 22945  	possessive_quantifier = DFALSE
 22946  	goto __257
 22947  __257:
 22948  	;
 22949  
 22950  	// Save start of previous item, in case we have to move it up in order to
 22951  	//     insert something before it, and remember what it was.
 22952  
 22953  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) = previous
 22954  	op_previous = *(*TPCRE2_UCHAR8)(unsafe.Pointer(previous))
 22955  
 22956  	// Now handle repetition for the different types of item. If the repeat
 22957  	//     minimum and the repeat maximum are both 1, we can ignore the quantifier for
 22958  	//     non-parenthesized items, as they have only one alternative. For anything in
 22959  	//     parentheses, we must not ignore if {1} is possessive.
 22960  
 22961  	switch int32(op_previous) {
 22962  	// If previous was a character or negated character match, abolish the
 22963  	//       item and generate a repeat item instead. If a char item has a minimum of
 22964  	//       more than one, ensure that it is set in reqcu - it might not be if a
 22965  	//       sequence such as x{3} is the first thing in a branch because the x will
 22966  	//       have gone into firstcu instead.
 22967  
 22968  	case OP_CHAR:
 22969  		goto __268
 22970  	case OP_CHARI:
 22971  		goto __269
 22972  	case OP_NOT:
 22973  		goto __270
 22974  	case OP_NOTI:
 22975  		goto __271 // Code shared with single character types
 22976  
 22977  	// If previous was a character class or a back reference, we put the
 22978  	//       repeat stuff after it, but just skip the item if the repeat was {0,0}.
 22979  
 22980  	case OP_XCLASS:
 22981  		goto __272
 22982  	case OP_CLASS:
 22983  		goto __273
 22984  	case OP_NCLASS:
 22985  		goto __274
 22986  	case OP_REF:
 22987  		goto __275
 22988  	case OP_REFI:
 22989  		goto __276
 22990  	case OP_DNREF:
 22991  		goto __277
 22992  	case OP_DNREFI:
 22993  		goto __278
 22994  
 22995  	// If previous is OP_FAIL, it was generated by an empty class []
 22996  	//       (PCRE2_ALLOW_EMPTY_CLASS is set). The other ways in which OP_FAIL can be
 22997  	//       generated, that is by (*FAIL) or (?!), disallow a quantifier at parse
 22998  	//       time. We can just ignore this repeat.
 22999  
 23000  	case OP_FAIL:
 23001  		goto __279
 23002  
 23003  	// Prior to 10.30, repeated recursions were wrapped in OP_ONCE brackets
 23004  	//       because pcre2_match() could not handle backtracking into recursively
 23005  	//       called groups. Now that this backtracking is available, we no longer need
 23006  	//       to do this. However, we still need to replicate recursions as we do for
 23007  	//       groups so as to have independent backtracking points. We can replicate
 23008  	//       for the minimum number of repeats directly. For optional repeats we now
 23009  	//       wrap the recursion in OP_BRA brackets and make use of the bracket
 23010  	//       repetition.
 23011  
 23012  	case OP_RECURSE:
 23013  		goto __280 // Set "may match empty string"
 23014  
 23015  	// Now treat as a repeated OP_BRA.
 23016  	// Fall through
 23017  
 23018  	// If previous was a bracket group, we may have to replicate it in
 23019  	//       certain cases. Note that at this point we can encounter only the "basic"
 23020  	//       bracket opcodes such as BRA and CBRA, as this is the place where they get
 23021  	//       converted into the more special varieties such as BRAPOS and SBRA.
 23022  	//       Originally, PCRE did not allow repetition of assertions, but now it does,
 23023  	//       for Perl compatibility.
 23024  
 23025  	case OP_ASSERT:
 23026  		goto __281
 23027  	case OP_ASSERT_NOT:
 23028  		goto __282
 23029  	case OP_ASSERT_NA:
 23030  		goto __283
 23031  	case OP_ASSERTBACK:
 23032  		goto __284
 23033  	case OP_ASSERTBACK_NOT:
 23034  		goto __285
 23035  	case OP_ASSERTBACK_NA:
 23036  		goto __286
 23037  	case OP_ONCE:
 23038  		goto __287
 23039  	case OP_SCRIPT_RUN:
 23040  		goto __288
 23041  	case OP_BRA:
 23042  		goto __289
 23043  	case OP_CBRA:
 23044  		goto __290
 23045  	case OP_COND:
 23046  		goto __291
 23047  
 23048  	// If previous was a character type match (\d or similar), abolish it and
 23049  	//       create a suitable repeat item. The code is shared with single-character
 23050  	//       repeats by setting op_type to add a suitable offset into repeat_type.
 23051  	//       Note the the Unicode property types will be present only when
 23052  	//       SUPPORT_UNICODE is defined, but we don't wrap the little bits of code
 23053  	//       here because it just makes it horribly messy.
 23054  
 23055  	default:
 23056  		goto __292
 23057  	}
 23058  	goto __267
 23059  
 23060  	// If previous was a character or negated character match, abolish the
 23061  	//       item and generate a repeat item instead. If a char item has a minimum of
 23062  	//       more than one, ensure that it is set in reqcu - it might not be if a
 23063  	//       sequence such as x{3} is the first thing in a branch because the x will
 23064  	//       have gone into firstcu instead.
 23065  
 23066  __268:
 23067  __269:
 23068  __270:
 23069  __271:
 23070  	if !(repeat_max == Tuint32_t(1) && repeat_min == Tuint32_t(1)) {
 23071  		goto __293
 23072  	}
 23073  	goto END_REPEAT
 23074  __293:
 23075  	;
 23076  	op_type = chartypeoffset[int32(op_previous)-OP_CHAR]
 23077  
 23078  	// Deal with UTF characters that take up more than one code unit.
 23079  
 23080  	if !(utf != 0 && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1))))&0xc0 == 0x80) {
 23081  		goto __294
 23082  	}
 23083  
 23084  	lastchar = code - uintptr(1)
 23085  __296:
 23086  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastchar)))&0xc0 == 0x80) {
 23087  		goto __297
 23088  	}
 23089  	lastchar--
 23090  	goto __296
 23091  __297:
 23092  	;
 23093  	mclength = Tuint32_t((int64(code) - int64(lastchar)) / 1)                                                                                            // Length of UTF character
 23094  	libc.X__builtin___memcpy_chk(tls, bp+72, lastchar, uint64(mclength*Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, bp+72, 0)) // Save the char
 23095  	goto __295
 23096  __294:
 23097  
 23098  	/* Handle the case of a single code unit - either with no UTF support, or
 23099  	   with UTF disabled, or for a single-code-unit UTF character. In the latter
 23100  	   case, for a repeated positive match, get the caseless flag for the
 23101  	   required code unit from the previous character, because a class like [Aa]
 23102  	   sets a caseless A but by now the req_caseopt flag has been reset. */
 23103  
 23104  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 72)) = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1)))
 23105  	mclength = Tuint32_t(1)
 23106  	if !(int32(op_previous) <= OP_CHARI && repeat_min > Tuint32_t(1)) {
 23107  		goto __298
 23108  	}
 23109  
 23110  	reqcu = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 72)))
 23111  	reqcuflags = (*Tcompile_block_8)(unsafe.Pointer(cb)).Freq_varyopt
 23112  	if !(int32(op_previous) == OP_CHARI) {
 23113  		goto __299
 23114  	}
 23115  	reqcuflags = reqcuflags | DREQ_CASELESS
 23116  __299:
 23117  	;
 23118  __298:
 23119  	;
 23120  __295:
 23121  	;
 23122  	goto OUTPUT_SINGLE_REPEAT // Code shared with single character types
 23123  
 23124  	// If previous was a character class or a back reference, we put the
 23125  	//       repeat stuff after it, but just skip the item if the repeat was {0,0}.
 23126  
 23127  __272:
 23128  __273:
 23129  __274:
 23130  __275:
 23131  __276:
 23132  __277:
 23133  __278:
 23134  
 23135  	if !(repeat_max == Tuint32_t(0)) {
 23136  		goto __300
 23137  	}
 23138  
 23139  	code = previous
 23140  	goto END_REPEAT
 23141  __300:
 23142  	;
 23143  	if !(repeat_max == Tuint32_t(1) && repeat_min == Tuint32_t(1)) {
 23144  		goto __301
 23145  	}
 23146  	goto END_REPEAT
 23147  __301:
 23148  	;
 23149  
 23150  	if !(repeat_min == Tuint32_t(0) && repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23151  		goto __302
 23152  	}
 23153  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_CRSTAR + repeat_type)
 23154  	goto __303
 23155  __302:
 23156  	if !(repeat_min == Tuint32_t(1) && repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23157  		goto __304
 23158  	}
 23159  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_CRPLUS + repeat_type)
 23160  	goto __305
 23161  __304:
 23162  	if !(repeat_min == Tuint32_t(0) && repeat_max == Tuint32_t(1)) {
 23163  		goto __306
 23164  	}
 23165  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_CRQUERY + repeat_type)
 23166  	goto __307
 23167  __306:
 23168  
 23169  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_CRRANGE + repeat_type)
 23170  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(repeat_min >> 8)
 23171  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(repeat_min & Tuint32_t(255))
 23172  	code += uintptr(DIMM2_SIZE)
 23173  	if !(repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23174  		goto __308
 23175  	}
 23176  	repeat_max = Tuint32_t(0)
 23177  __308:
 23178  	; // 2-byte encoding for max
 23179  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(repeat_max >> 8)
 23180  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(repeat_max & Tuint32_t(255))
 23181  	code += uintptr(DIMM2_SIZE)
 23182  __307:
 23183  	;
 23184  __305:
 23185  	;
 23186  __303:
 23187  	;
 23188  	goto __267
 23189  
 23190  	// If previous is OP_FAIL, it was generated by an empty class []
 23191  	//       (PCRE2_ALLOW_EMPTY_CLASS is set). The other ways in which OP_FAIL can be
 23192  	//       generated, that is by (*FAIL) or (?!), disallow a quantifier at parse
 23193  	//       time. We can just ignore this repeat.
 23194  
 23195  __279:
 23196  	goto END_REPEAT
 23197  
 23198  	// Prior to 10.30, repeated recursions were wrapped in OP_ONCE brackets
 23199  	//       because pcre2_match() could not handle backtracking into recursively
 23200  	//       called groups. Now that this backtracking is available, we no longer need
 23201  	//       to do this. However, we still need to replicate recursions as we do for
 23202  	//       groups so as to have independent backtracking points. We can replicate
 23203  	//       for the minimum number of repeats directly. For optional repeats we now
 23204  	//       wrap the recursion in OP_BRA brackets and make use of the bracket
 23205  	//       repetition.
 23206  
 23207  __280:
 23208  	if !(repeat_max == Tuint32_t(1) && repeat_min == Tuint32_t(1) && !(possessive_quantifier != 0)) {
 23209  		goto __309
 23210  	}
 23211  	goto END_REPEAT
 23212  __309:
 23213  	;
 23214  
 23215  	// Generate unwrapped repeats for a non-zero minimum, except when the
 23216  	//       minimum is 1 and the maximum unlimited, because that can be handled with
 23217  	//       OP_BRA terminated by OP_KETRMAX/MIN. When the maximum is equal to the
 23218  	//       minimum, we just need to generate the appropriate additional copies.
 23219  	//       Otherwise we need to generate one more, to simulate the situation when
 23220  	//       the minimum is zero.
 23221  
 23222  	if !(repeat_min > Tuint32_t(0) && (repeat_min != Tuint32_t(1) || repeat_max != DMAX_REPEAT_COUNT+uint32(1))) {
 23223  		goto __310
 23224  	}
 23225  
 23226  	replicate = int32(repeat_min)
 23227  	if !(repeat_min == repeat_max) {
 23228  		goto __311
 23229  	}
 23230  	replicate--
 23231  __311:
 23232  	;
 23233  
 23234  	// In the pre-compile phase, we don't actually do the replication. We
 23235  	//         just adjust the length as if we had. Do some paranoid checks for
 23236  	//         potential integer overflow. The INT64_OR_DOUBLE type is a 64-bit
 23237  	//         integer type when available, otherwise double.
 23238  
 23239  	if !(lengthptr != uintptr(0)) {
 23240  		goto __312
 23241  	}
 23242  
 23243  	delta = Tsize_t(replicate * (1 + DLINK_SIZE))
 23244  	if !(Tint64_t(replicate)*int64(1+DLINK_SIZE) > int64(2147483647) || uint64(2147483647-20)-*(*Tsize_t)(unsafe.Pointer(lengthptr)) < delta) {
 23245  		goto __314
 23246  	}
 23247  
 23248  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR20
 23249  	return 0
 23250  __314:
 23251  	;
 23252  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += delta
 23253  	goto __313
 23254  __312:
 23255  	{
 23256  		i14 = 0
 23257  	__315:
 23258  		if !(i14 < replicate) {
 23259  			goto __317
 23260  		}
 23261  
 23262  		libc.X__builtin___memcpy_chk(tls, code, previous, uint64((1+DLINK_SIZE)*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code, 0))
 23263  		previous = code
 23264  		code += uintptr(1 + DLINK_SIZE)
 23265  		goto __316
 23266  	__316:
 23267  		i14++
 23268  		goto __315
 23269  		goto __317
 23270  	__317:
 23271  	}
 23272  __313:
 23273  	;
 23274  
 23275  	// If the number of repeats is fixed, we are done. Otherwise, adjust
 23276  	//         the counts and fall through.
 23277  
 23278  	if !(repeat_min == repeat_max) {
 23279  		goto __318
 23280  	}
 23281  	goto __267
 23282  __318:
 23283  	;
 23284  	if !(repeat_max != DMAX_REPEAT_COUNT+uint32(1)) {
 23285  		goto __319
 23286  	}
 23287  	repeat_max = repeat_max - repeat_min
 23288  __319:
 23289  	;
 23290  	repeat_min = Tuint32_t(0)
 23291  __310:
 23292  	;
 23293  
 23294  	// Wrap the recursion call in OP_BRA brackets.
 23295  
 23296  	libc.X__builtin___memmove_chk(tls, previous+uintptr(1)+uintptr(DLINK_SIZE), previous, uint64((1+DLINK_SIZE)*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, previous+uintptr(1)+uintptr(DLINK_SIZE), 0))
 23297  	op_previous = libc.AssignPtrUint8(previous, OP_BRA)
 23298  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 1)) = TPCRE2_UCHAR8(int32(2+2*DLINK_SIZE) >> 8)
 23299  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 2)) = TPCRE2_UCHAR8((2 + 2*DLINK_SIZE) & 255)
 23300  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 6)) = OP_KET
 23301  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 7)) = TPCRE2_UCHAR8(int32(2+2*DLINK_SIZE) >> 8)
 23302  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 8)) = TPCRE2_UCHAR8((2 + 2*DLINK_SIZE) & 255)
 23303  	code += uintptr(2 + 2*DLINK_SIZE)
 23304  	*(*Tsize_t)(unsafe.Pointer(bp + 120 /* length_prevgroup */)) = uint64(3 + 3*DLINK_SIZE)
 23305  	group_return = -1 // Set "may match empty string"
 23306  
 23307  	// Now treat as a repeated OP_BRA.
 23308  	// Fall through
 23309  
 23310  	// If previous was a bracket group, we may have to replicate it in
 23311  	//       certain cases. Note that at this point we can encounter only the "basic"
 23312  	//       bracket opcodes such as BRA and CBRA, as this is the place where they get
 23313  	//       converted into the more special varieties such as BRAPOS and SBRA.
 23314  	//       Originally, PCRE did not allow repetition of assertions, but now it does,
 23315  	//       for Perl compatibility.
 23316  
 23317  __281:
 23318  __282:
 23319  __283:
 23320  __284:
 23321  __285:
 23322  __286:
 23323  __287:
 23324  __288:
 23325  __289:
 23326  __290:
 23327  __291:
 23328  
 23329  	len = int32((int64(code) - int64(previous)) / 1)
 23330  	bralink = uintptr(0)
 23331  	brazeroptr = uintptr(0)
 23332  
 23333  	if !(repeat_max == Tuint32_t(1) && repeat_min == Tuint32_t(1) && !(possessive_quantifier != 0)) {
 23334  		goto __320
 23335  	}
 23336  	goto END_REPEAT
 23337  __320:
 23338  	;
 23339  
 23340  	// Repeating a DEFINE group (or any group where the condition is always
 23341  	//         FALSE and there is only one branch) is pointless, but Perl allows the
 23342  	//         syntax, so we just ignore the repeat.
 23343  
 23344  	if !(int32(op_previous) == OP_COND && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 3))) == OP_FALSE && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 2)))))))) != OP_ALT) {
 23345  		goto __321
 23346  	}
 23347  	goto END_REPEAT
 23348  __321:
 23349  	;
 23350  
 23351  	// Perl allows all assertions to be quantified, and when they contain
 23352  	//         capturing parentheses and/or are optional there are potential uses for
 23353  	//         this feature. PCRE2 used to force the maximum quantifier to 1 on the
 23354  	//         invalid grounds that further repetition was never useful. This was
 23355  	//         always a bit pointless, since an assertion could be wrapped with a
 23356  	//         repeated group to achieve the effect. General repetition is now
 23357  	//         permitted, but if the maximum is unlimited it is set to one more than
 23358  	//         the minimum.
 23359  
 23360  	if !(int32(op_previous) < OP_ONCE) {
 23361  		goto __322
 23362  	} /* Assertion */
 23363  
 23364  	if !(repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23365  		goto __323
 23366  	}
 23367  	repeat_max = repeat_min + Tuint32_t(1)
 23368  __323:
 23369  	;
 23370  __322:
 23371  	;
 23372  
 23373  	// The case of a zero minimum is special because of the need to stick
 23374  	//         OP_BRAZERO in front of it, and because the group appears once in the
 23375  	//         data, whereas in other cases it appears the minimum number of times. For
 23376  	//         this reason, it is simplest to treat this case separately, as otherwise
 23377  	//         the code gets far too messy. There are several special subcases when the
 23378  	//         minimum is zero.
 23379  
 23380  	if !(repeat_min == Tuint32_t(0)) {
 23381  		goto __324
 23382  	}
 23383  
 23384  	// If the maximum is also zero, we used to just omit the group from
 23385  	//           the output altogether, like this:
 23386  	//
 23387  	//           ** if (repeat_max == 0)
 23388  	//           **   {
 23389  	//           **   code = previous;
 23390  	//           **   goto END_REPEAT;
 23391  	//           **   }
 23392  	//
 23393  	//           However, that fails when a group or a subgroup within it is
 23394  	//           referenced as a subroutine from elsewhere in the pattern, so now we
 23395  	//           stick in OP_SKIPZERO in front of it so that it is skipped on
 23396  	//           execution. As we don't have a list of which groups are referenced, we
 23397  	//           cannot do this selectively.
 23398  	//
 23399  	//           If the maximum is 1 or unlimited, we just have to stick in the
 23400  	//           BRAZERO and do no more at this point.
 23401  
 23402  	if !(repeat_max <= Tuint32_t(1) || repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23403  		goto __326
 23404  	}
 23405  
 23406  	libc.X__builtin___memmove_chk(tls, previous+uintptr(1), previous, uint64(len*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, previous+uintptr(1), 0))
 23407  	code++
 23408  	if !(repeat_max == Tuint32_t(0)) {
 23409  		goto __328
 23410  	}
 23411  
 23412  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&previous, 1))) = OP_SKIPZERO
 23413  	goto END_REPEAT
 23414  __328:
 23415  	;
 23416  	brazeroptr = previous // Save for possessive optimizing
 23417  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&previous, 1))) = TPCRE2_UCHAR8(OP_BRAZERO + repeat_type)
 23418  	goto __327
 23419  __326:
 23420  
 23421  	libc.X__builtin___memmove_chk(tls, previous+uintptr(2)+uintptr(DLINK_SIZE), previous, uint64(len*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, previous+uintptr(2)+uintptr(DLINK_SIZE), 0))
 23422  	code += uintptr(2 + DLINK_SIZE)
 23423  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&previous, 1))) = TPCRE2_UCHAR8(OP_BRAZERO + repeat_type)
 23424  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&previous, 1))) = OP_BRA
 23425  
 23426  	// We chain together the bracket link offset fields that have to be
 23427  	//             filled in later when the ends of the brackets are reached.
 23428  
 23429  	if bralink == uintptr(0) {
 23430  		linkoffset = 0
 23431  	} else {
 23432  		linkoffset = int32((int64(previous) - int64(bralink)) / 1)
 23433  	}
 23434  	bralink = previous
 23435  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous)) = TPCRE2_UCHAR8(linkoffset >> 8)
 23436  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 1)) = TPCRE2_UCHAR8(linkoffset & 255)
 23437  	previous += uintptr(DLINK_SIZE)
 23438  __327:
 23439  	;
 23440  
 23441  	if !(repeat_max != DMAX_REPEAT_COUNT+uint32(1)) {
 23442  		goto __329
 23443  	}
 23444  	repeat_max--
 23445  __329:
 23446  	;
 23447  	goto __325
 23448  __324:
 23449  
 23450  	if !(repeat_min > Tuint32_t(1)) {
 23451  		goto __330
 23452  	}
 23453  
 23454  	// In the pre-compile phase, we don't actually do the replication.
 23455  	//             We just adjust the length as if we had. Do some paranoid checks for
 23456  	//             potential integer overflow. The INT64_OR_DOUBLE type is a 64-bit
 23457  	//             integer type when available, otherwise double.
 23458  
 23459  	if !(lengthptr != uintptr(0)) {
 23460  		goto __331
 23461  	}
 23462  
 23463  	delta1 = Tsize_t(repeat_min-Tuint32_t(1)) * *(*Tsize_t)(unsafe.Pointer(bp + 120))
 23464  	if !(Tint64_t(repeat_min-Tuint32_t(1))*Tint64_t(*(*Tsize_t)(unsafe.Pointer(bp + 120))) > int64(2147483647) || uint64(2147483647-20)-*(*Tsize_t)(unsafe.Pointer(lengthptr)) < delta1) {
 23465  		goto __333
 23466  	}
 23467  
 23468  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR20
 23469  	return 0
 23470  __333:
 23471  	;
 23472  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += delta1
 23473  	goto __332
 23474  __331:
 23475  
 23476  	if !(groupsetfirstcu != 0 && reqcuflags >= DREQ_NONE) {
 23477  		goto __334
 23478  	}
 23479  
 23480  	reqcu = firstcu
 23481  	reqcuflags = firstcuflags
 23482  __334:
 23483  	;
 23484  	{
 23485  		i15 = Tuint32_t(1)
 23486  	__335:
 23487  		if !(i15 < repeat_min) {
 23488  			goto __337
 23489  		}
 23490  
 23491  		libc.X__builtin___memcpy_chk(tls, code, previous, uint64(len*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code, 0))
 23492  		code += uintptr(len)
 23493  		goto __336
 23494  	__336:
 23495  		i15++
 23496  		goto __335
 23497  		goto __337
 23498  	__337:
 23499  	}
 23500  __332:
 23501  	;
 23502  __330:
 23503  	;
 23504  
 23505  	if !(repeat_max != DMAX_REPEAT_COUNT+uint32(1)) {
 23506  		goto __338
 23507  	}
 23508  	repeat_max = repeat_max - repeat_min
 23509  __338:
 23510  	;
 23511  __325:
 23512  	;
 23513  
 23514  	// This code is common to both the zero and non-zero minimum cases. If
 23515  	//         the maximum is limited, it replicates the group in a nested fashion,
 23516  	//         remembering the bracket starts on a stack. In the case of a zero
 23517  	//         minimum, the first one was set up above. In all cases the repeat_max
 23518  	//         now specifies the number of additional copies needed. Again, we must
 23519  	//         remember to replicate entries on the forward reference list.
 23520  
 23521  	if !(repeat_max != DMAX_REPEAT_COUNT+uint32(1)) {
 23522  		goto __339
 23523  	}
 23524  
 23525  	// In the pre-compile phase, we don't actually do the replication. We
 23526  	//           just adjust the length as if we had. For each repetition we must add
 23527  	//           1 to the length for BRAZERO and for all but the last repetition we
 23528  	//           must add 2 + 2*LINKSIZE to allow for the nesting that occurs. Do some
 23529  	//           paranoid checks to avoid integer overflow. The INT64_OR_DOUBLE type
 23530  	//           is a 64-bit integer type when available, otherwise double.
 23531  
 23532  	if !(lengthptr != uintptr(0) && repeat_max > Tuint32_t(0)) {
 23533  		goto __341
 23534  	}
 23535  
 23536  	delta2 = Tsize_t(repeat_max)*(*(*Tsize_t)(unsafe.Pointer(bp + 120))+uint64(1)+uint64(2)+uint64(2*DLINK_SIZE)) - uint64(2) - uint64(2*DLINK_SIZE) // Last one doesn't nest
 23537  	if !(Tint64_t(repeat_max)*Tint64_t(*(*Tsize_t)(unsafe.Pointer(bp + 120))+uint64(1)+uint64(2)+uint64(2*DLINK_SIZE)) >
 23538  		int64(2147483647) || uint64(2147483647-20)-*(*Tsize_t)(unsafe.Pointer(lengthptr)) < delta2) {
 23539  		goto __343
 23540  	}
 23541  
 23542  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR20
 23543  	return 0
 23544  __343:
 23545  	;
 23546  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) += delta2
 23547  	goto __342
 23548  __341:
 23549  	{
 23550  		i16 = repeat_max
 23551  	__344:
 23552  		if !(i16 >= Tuint32_t(1)) {
 23553  			goto __346
 23554  		}
 23555  
 23556  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_BRAZERO + repeat_type)
 23557  
 23558  		// All but the final copy start a new nesting, maintaining the
 23559  		//             chain of brackets outstanding.
 23560  
 23561  		if !(i16 != Tuint32_t(1)) {
 23562  			goto __347
 23563  		}
 23564  
 23565  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_BRA
 23566  		if bralink == uintptr(0) {
 23567  			linkoffset1 = 0
 23568  		} else {
 23569  			linkoffset1 = int32((int64(code) - int64(bralink)) / 1)
 23570  		}
 23571  		bralink = code
 23572  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(linkoffset1 >> 8)
 23573  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(linkoffset1 & 255)
 23574  		code += uintptr(DLINK_SIZE)
 23575  	__347:
 23576  		;
 23577  
 23578  		libc.X__builtin___memcpy_chk(tls, code, previous, uint64(len*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code, 0))
 23579  		code += uintptr(len)
 23580  		goto __345
 23581  	__345:
 23582  		i16--
 23583  		goto __344
 23584  		goto __346
 23585  	__346:
 23586  	}
 23587  __342:
 23588  	;
 23589  
 23590  	// Now chain through the pending brackets, and fill in their length
 23591  	//           fields (which are holding the chain links pro tem).
 23592  
 23593  __348:
 23594  	if !(bralink != uintptr(0)) {
 23595  		goto __349
 23596  	}
 23597  
 23598  	linkoffset2 = int32((int64(code)-int64(bralink))/1 + int64(1))
 23599  	bra = code - uintptr(linkoffset2)
 23600  	oldlinkoffset = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bra + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bra + 2)))))
 23601  	if oldlinkoffset == 0 {
 23602  		bralink = uintptr(0)
 23603  	} else {
 23604  		bralink = bralink - uintptr(oldlinkoffset)
 23605  	}
 23606  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_KET
 23607  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(linkoffset2 >> 8)
 23608  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(linkoffset2 & 255)
 23609  	code += uintptr(DLINK_SIZE)
 23610  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bra + 1)) = TPCRE2_UCHAR8(linkoffset2 >> 8)
 23611  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bra + 2)) = TPCRE2_UCHAR8(linkoffset2 & 255)
 23612  	goto __348
 23613  __349:
 23614  	;
 23615  	goto __340
 23616  __339:
 23617  
 23618  	ketcode = code - uintptr(1) - uintptr(DLINK_SIZE)
 23619  	bracode = ketcode - uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ketcode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ketcode + 2)))))
 23620  
 23621  	// Convert possessive ONCE brackets to non-capturing
 23622  
 23623  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) == OP_ONCE && possessive_quantifier != 0) {
 23624  		goto __350
 23625  	}
 23626  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode)) = OP_BRA
 23627  __350:
 23628  	;
 23629  
 23630  	// For non-possessive ONCE and for SCRIPT_RUN brackets, all we need
 23631  	//           to do is to set the KET.
 23632  
 23633  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) == OP_ONCE || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) == OP_SCRIPT_RUN) {
 23634  		goto __351
 23635  	}
 23636  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(ketcode)) = TPCRE2_UCHAR8(OP_KETRMAX + repeat_type)
 23637  	goto __352
 23638  __351:
 23639  
 23640  	// In the compile phase, adjust the opcode if the group can match
 23641  	//             an empty string. For a conditional group with only one branch, the
 23642  	//             value of group_return will not show "could be empty", so we must
 23643  	//             check that separately.
 23644  
 23645  	if !(lengthptr == uintptr(0)) {
 23646  		goto __353
 23647  	}
 23648  
 23649  	if !(group_return < 0) {
 23650  		goto __354
 23651  	}
 23652  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode)) += TPCRE2_UCHAR8(OP_SBRA - OP_BRA)
 23653  __354:
 23654  	;
 23655  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) == OP_COND && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 2)))))))) != OP_ALT) {
 23656  		goto __355
 23657  	}
 23658  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode)) = OP_SCOND
 23659  __355:
 23660  	;
 23661  __353:
 23662  	;
 23663  
 23664  	// Handle possessive quantifiers.
 23665  
 23666  	if !(possessive_quantifier != 0) {
 23667  		goto __356
 23668  	}
 23669  
 23670  	// For COND brackets, we wrap the whole thing in a possessively
 23671  	//               repeated non-capturing bracket, because we have not invented POS
 23672  	//               versions of the COND opcodes.
 23673  
 23674  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) == OP_COND || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) == OP_SCOND) {
 23675  		goto __358
 23676  	}
 23677  
 23678  	nlen = int32((int64(code) - int64(bracode)) / 1)
 23679  	libc.X__builtin___memmove_chk(tls, bracode+uintptr(1)+uintptr(DLINK_SIZE), bracode, uint64(nlen*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, bracode+uintptr(1)+uintptr(DLINK_SIZE), 0))
 23680  	code += uintptr(1 + DLINK_SIZE)
 23681  	nlen = nlen + (1 + DLINK_SIZE)
 23682  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode)) = func() uint8 {
 23683  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) == OP_COND {
 23684  			return OP_BRAPOS
 23685  		}
 23686  		return OP_SBRAPOS
 23687  	}()
 23688  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_KETRPOS
 23689  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(nlen >> 8)
 23690  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(nlen & 255)
 23691  	code += uintptr(DLINK_SIZE)
 23692  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 1)) = TPCRE2_UCHAR8(nlen >> 8)
 23693  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 2)) = TPCRE2_UCHAR8(nlen & 255)
 23694  	goto __359
 23695  __358:
 23696  
 23697  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode)) += TPCRE2_UCHAR8(1) // Switch to xxxPOS opcodes
 23698  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(ketcode)) = OP_KETRPOS
 23699  __359:
 23700  	;
 23701  
 23702  	// If the minimum is zero, mark it as possessive, then unset the
 23703  	//               possessive flag when the minimum is 0 or 1.
 23704  
 23705  	if !(brazeroptr != uintptr(0)) {
 23706  		goto __360
 23707  	}
 23708  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(brazeroptr)) = OP_BRAPOSZERO
 23709  __360:
 23710  	;
 23711  	if !(repeat_min < Tuint32_t(2)) {
 23712  		goto __361
 23713  	}
 23714  	possessive_quantifier = DFALSE
 23715  __361:
 23716  	;
 23717  	goto __357
 23718  __356:
 23719  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(ketcode)) = TPCRE2_UCHAR8(OP_KETRMAX + repeat_type)
 23720  __357:
 23721  	;
 23722  __352:
 23723  	;
 23724  __340:
 23725  	;
 23726  
 23727  	goto __267
 23728  
 23729  	// If previous was a character type match (\d or similar), abolish it and
 23730  	//       create a suitable repeat item. The code is shared with single-character
 23731  	//       repeats by setting op_type to add a suitable offset into repeat_type.
 23732  	//       Note the the Unicode property types will be present only when
 23733  	//       SUPPORT_UNICODE is defined, but we don't wrap the little bits of code
 23734  	//       here because it just makes it horribly messy.
 23735  
 23736  __292:
 23737  	if !(int32(op_previous) >= OP_EODN) {
 23738  		goto __362
 23739  	} /* Not a character type - internal error */
 23740  
 23741  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR10
 23742  	return 0
 23743  	goto __363
 23744  __362:
 23745  
 23746  	if !(repeat_max == Tuint32_t(1) && repeat_min == Tuint32_t(1)) {
 23747  		goto __364
 23748  	}
 23749  	goto END_REPEAT
 23750  __364:
 23751  	;
 23752  
 23753  	op_type = Tuint32_t(OP_TYPESTAR - OP_STAR) // Use type opcodes
 23754  	mclength = Tuint32_t(0)                    // Not a character
 23755  
 23756  	if !(int32(op_previous) == OP_PROP || int32(op_previous) == OP_NOTPROP) {
 23757  		goto __365
 23758  	}
 23759  
 23760  	prop_type = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 1)))
 23761  	prop_value = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(previous + 2)))
 23762  	goto __366
 23763  __365:
 23764  
 23765  	// Come here from just above with a character in mcbuffer/mclength.
 23766  OUTPUT_SINGLE_REPEAT:
 23767  	prop_type = libc.AssignInt32(&prop_value, -1)
 23768  __366:
 23769  	;
 23770  
 23771  	// At this point, if prop_type == prop_value == -1 we either have a
 23772  	//         character in mcbuffer when mclength is greater than zero, or we have
 23773  	//         mclength zero, in which case there is a non-property character type in
 23774  	//         op_previous. If prop_type/value are not negative, we have a property
 23775  	//         character type in op_previous.
 23776  
 23777  	oldcode = code  // Save where we were
 23778  	code = previous // Usually overwrite previous item
 23779  
 23780  	// If the maximum is zero then the minimum must also be zero; Perl allows
 23781  	//         this case, so we do too - by simply omitting the item altogether.
 23782  
 23783  	if !(repeat_max == Tuint32_t(0)) {
 23784  		goto __367
 23785  	}
 23786  	goto END_REPEAT
 23787  __367:
 23788  	;
 23789  
 23790  	// Combine the op_type with the repeat_type
 23791  
 23792  	repeat_type = repeat_type + op_type
 23793  
 23794  	// A minimum of zero is handled either as the special case * or ?, or as
 23795  	//         an UPTO, with the maximum given.
 23796  
 23797  	if !(repeat_min == Tuint32_t(0)) {
 23798  		goto __368
 23799  	}
 23800  
 23801  	if !(repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23802  		goto __370
 23803  	}
 23804  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_STAR + repeat_type)
 23805  	goto __371
 23806  __370:
 23807  	if !(repeat_max == Tuint32_t(1)) {
 23808  		goto __372
 23809  	}
 23810  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_QUERY + repeat_type)
 23811  	goto __373
 23812  __372:
 23813  
 23814  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_UPTO + repeat_type)
 23815  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(repeat_max >> 8)
 23816  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(repeat_max & Tuint32_t(255))
 23817  	code += uintptr(DIMM2_SIZE)
 23818  __373:
 23819  	;
 23820  __371:
 23821  	;
 23822  	goto __369
 23823  __368:
 23824  	if !(repeat_min == Tuint32_t(1)) {
 23825  		goto __374
 23826  	}
 23827  
 23828  	if !(repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23829  		goto __376
 23830  	}
 23831  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_PLUS + repeat_type)
 23832  	goto __377
 23833  __376:
 23834  
 23835  	code = oldcode // Leave previous item in place
 23836  	if !(repeat_max == Tuint32_t(1)) {
 23837  		goto __378
 23838  	}
 23839  	goto END_REPEAT
 23840  __378:
 23841  	;
 23842  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_UPTO + repeat_type)
 23843  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8((repeat_max - Tuint32_t(1)) >> 8)
 23844  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8((repeat_max - Tuint32_t(1)) & Tuint32_t(255))
 23845  	code += uintptr(DIMM2_SIZE)
 23846  __377:
 23847  	;
 23848  	goto __375
 23849  __374:
 23850  
 23851  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_EXACT + op_type) // NB EXACT doesn't have repeat_type
 23852  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(repeat_min >> 8)
 23853  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(repeat_min & Tuint32_t(255))
 23854  	code += uintptr(DIMM2_SIZE)
 23855  
 23856  	// Unless repeat_max equals repeat_min, fill in the data for EXACT,
 23857  	//           and then generate the second opcode. For a repeated Unicode property
 23858  	//           match, there are two extra values that define the required property,
 23859  	//           and mclength is set zero to indicate this.
 23860  
 23861  	if !(repeat_max != repeat_min) {
 23862  		goto __379
 23863  	}
 23864  
 23865  	if !(mclength > Tuint32_t(0)) {
 23866  		goto __380
 23867  	}
 23868  
 23869  	libc.X__builtin___memcpy_chk(tls, code, bp+72, uint64(mclength*Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code, 0))
 23870  	code += uintptr(mclength)
 23871  	goto __381
 23872  __380:
 23873  
 23874  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = op_previous
 23875  	if !(prop_type >= 0) {
 23876  		goto __382
 23877  	}
 23878  
 23879  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(prop_type)
 23880  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(prop_value)
 23881  __382:
 23882  	;
 23883  __381:
 23884  	;
 23885  
 23886  	// Now set up the following opcode
 23887  
 23888  	if !(repeat_max == DMAX_REPEAT_COUNT+uint32(1)) {
 23889  		goto __383
 23890  	}
 23891  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_STAR + repeat_type)
 23892  	goto __384
 23893  __383:
 23894  
 23895  	repeat_max = repeat_max - repeat_min
 23896  	if !(repeat_max == Tuint32_t(1)) {
 23897  		goto __385
 23898  	}
 23899  
 23900  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_QUERY + repeat_type)
 23901  	goto __386
 23902  __385:
 23903  
 23904  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(OP_UPTO + repeat_type)
 23905  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(repeat_max >> 8)
 23906  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(repeat_max & Tuint32_t(255))
 23907  	code += uintptr(DIMM2_SIZE)
 23908  __386:
 23909  	;
 23910  __384:
 23911  	;
 23912  __379:
 23913  	;
 23914  __375:
 23915  	;
 23916  __369:
 23917  	;
 23918  
 23919  	// Fill in the character or character type for the final opcode.
 23920  
 23921  	if !(mclength > Tuint32_t(0)) {
 23922  		goto __387
 23923  	}
 23924  
 23925  	libc.X__builtin___memcpy_chk(tls, code, bp+72, uint64(mclength*Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code, 0))
 23926  	code += uintptr(mclength)
 23927  	goto __388
 23928  __387:
 23929  
 23930  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = op_previous
 23931  	if !(prop_type >= 0) {
 23932  		goto __389
 23933  	}
 23934  
 23935  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(prop_type)
 23936  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(prop_value)
 23937  __389:
 23938  	;
 23939  __388:
 23940  	;
 23941  __363:
 23942  	;
 23943  	goto __267
 23944  __267:
 23945  	; // End of switch on different op_previous values
 23946  
 23947  	// If the character following a repeat is '+', possessive_quantifier is
 23948  	//     TRUE. For some opcodes, there are special alternative opcodes for this
 23949  	//     case. For anything else, we wrap the entire repeated item inside OP_ONCE
 23950  	//     brackets. Logically, the '+' notation is just syntactic sugar, taken from
 23951  	//     Sun's Java package, but the special opcodes can optimize it.
 23952  	//
 23953  	//     Some (but not all) possessively repeated subpatterns have already been
 23954  	//     completely handled in the code just above. For them, possessive_quantifier
 23955  	//     is always FALSE at this stage. Note that the repeated item starts at
 23956  	//     tempcode, not at previous, which might be the first part of a string whose
 23957  	//     (former) last char we repeated.
 23958  
 23959  	if !(possessive_quantifier != 0) {
 23960  		goto __390
 23961  	}
 23962  
 23963  	// Possessifying an EXACT quantifier has no effect, so we can ignore it.
 23964  	//       However, QUERY, STAR, or UPTO may follow (for quantifiers such as {5,6},
 23965  	//       {5,}, or {5,10}). We skip over an EXACT item; if the length of what
 23966  	//       remains is greater than zero, there's a further opcode that can be
 23967  	//       handled. If not, do nothing, leaving the EXACT alone.
 23968  
 23969  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */))))) {
 23970  	case OP_TYPEEXACT:
 23971  		goto __392
 23972  
 23973  	// CHAR opcodes are used for exacts whose count is 1.
 23974  
 23975  	case OP_CHAR:
 23976  		goto __393
 23977  	case OP_CHARI:
 23978  		goto __394
 23979  	case OP_NOT:
 23980  		goto __395
 23981  	case OP_NOTI:
 23982  		goto __396
 23983  	case OP_EXACT:
 23984  		goto __397
 23985  	case OP_EXACTI:
 23986  		goto __398
 23987  	case OP_NOTEXACT:
 23988  		goto __399
 23989  	case OP_NOTEXACTI:
 23990  		goto __400
 23991  
 23992  	// For the class opcodes, the repeat operator appears at the end;
 23993  	//         adjust tempcode to point to it.
 23994  
 23995  	case OP_CLASS:
 23996  		goto __401
 23997  	case OP_NCLASS:
 23998  		goto __402
 23999  
 24000  	case OP_XCLASS:
 24001  		goto __403
 24002  	}
 24003  	goto __391
 24004  
 24005  __392:
 24006  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) += uintptr(int32(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88))))]) + func() int32 {
 24007  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88)) + 3))) == OP_PROP ||
 24008  			int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88)) + 3))) == OP_NOTPROP {
 24009  			return 2
 24010  		}
 24011  		return 0
 24012  	}())
 24013  	goto __391
 24014  
 24015  	// CHAR opcodes are used for exacts whose count is 1.
 24016  
 24017  __393:
 24018  __394:
 24019  __395:
 24020  __396:
 24021  __397:
 24022  __398:
 24023  __399:
 24024  __400:
 24025  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) += uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */))))])
 24026  	if !(utf != 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88)) + libc.UintptrFromInt32(-1)))) >= 0xc0) {
 24027  		goto __404
 24028  	}
 24029  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) += uintptr(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88)) + libc.UintptrFromInt32(-1))))&0x3f])
 24030  __404:
 24031  	;
 24032  	goto __391
 24033  
 24034  	// For the class opcodes, the repeat operator appears at the end;
 24035  	//         adjust tempcode to point to it.
 24036  
 24037  __401:
 24038  __402:
 24039  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) += uintptr(uint64(1) + uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 24040  	goto __391
 24041  
 24042  __403:
 24043  	*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88)) + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88)) + 2)))))
 24044  	goto __391
 24045  __391:
 24046  	;
 24047  
 24048  	// If tempcode is equal to code (which points to the end of the repeated
 24049  	//       item), it means we have skipped an EXACT item but there is no following
 24050  	//       QUERY, STAR, or UPTO; the value of len will be 0, and we do nothing. In
 24051  	//       all other cases, tempcode will be pointing to the repeat opcode, and will
 24052  	//       be less than code, so the value of len will be greater than 0.
 24053  
 24054  	len1 = int32((int64(code) - int64(*(*uintptr)(unsafe.Pointer(bp + 88)))) / 1)
 24055  	if !(len1 > 0) {
 24056  		goto __405
 24057  	}
 24058  
 24059  	repcode = uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)))))
 24060  
 24061  	// There is a table for possessifying opcodes, all of which are less
 24062  	//         than OP_CALLOUT. A zero entry means there is no possessified version.
 24063  	//
 24064  
 24065  	if !(repcode < OP_CALLOUT && int32(opcode_possessify[repcode]) > 0) {
 24066  		goto __406
 24067  	}
 24068  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)))) = opcode_possessify[repcode]
 24069  	goto __407
 24070  __406:
 24071  
 24072  	libc.X__builtin___memmove_chk(tls, *(*uintptr)(unsafe.Pointer(bp + 88))+uintptr(1)+uintptr(DLINK_SIZE), *(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)), uint64(len1*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, *(*uintptr)(unsafe.Pointer(bp + 88))+uintptr(1)+uintptr(DLINK_SIZE), 0))
 24073  	code += uintptr(1 + DLINK_SIZE)
 24074  	len1 = len1 + (1 + DLINK_SIZE)
 24075  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)))) = OP_ONCE
 24076  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_KET
 24077  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(len1 >> 8)
 24078  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(len1 & 255)
 24079  	code += uintptr(DLINK_SIZE)
 24080  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) + 1)) = TPCRE2_UCHAR8(len1 >> 8)
 24081  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 88 /* tempcode */)) + 2)) = TPCRE2_UCHAR8(len1 & 255)
 24082  __407:
 24083  	;
 24084  __405:
 24085  	;
 24086  __390:
 24087  	;
 24088  
 24089  	// We set the "follows varying string" flag for subsequently encountered
 24090  	//     reqcus if it isn't already set and we have just passed a varying length
 24091  	//     item.
 24092  
 24093  END_REPEAT:
 24094  	*(*Tuint32_t)(unsafe.Pointer(cb + 276)) |= reqvary
 24095  	goto __12
 24096  
 24097  	// ===================================================================
 24098  	// Handle a 32-bit data character with a value greater than META_END.
 24099  
 24100  __67:
 24101  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4
 24102  	goto NORMAL_CHAR
 24103  
 24104  	// ===============================================================
 24105  	// Handle a back reference by number, which is the meta argument. The
 24106  	//     pattern offsets for back references to group numbers less than 10 are held
 24107  	//     in a special vector, to avoid using more than two parsed pattern elements
 24108  	//     in 64-bit environments. We only need the offset to the first occurrence,
 24109  	//     because if that doesn't fail, subsequent ones will also be OK.
 24110  
 24111  __68:
 24112  	if !(meta_arg < Tuint32_t(10)) {
 24113  		goto __408
 24114  	}
 24115  	offset = *(*Tsize_t)(unsafe.Pointer(cb + 88 + uintptr(meta_arg)*8))
 24116  	goto __409
 24117  __408:
 24118  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)))
 24119  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 24120  __409:
 24121  	;
 24122  
 24123  	if !(meta_arg > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 24124  		goto __410
 24125  	}
 24126  
 24127  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 24128  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR15 // Non-existent subpattern
 24129  	return 0
 24130  __410:
 24131  	;
 24132  
 24133  	// Come here from named backref handling when the reference is to a
 24134  	//     single group (that is, not to a duplicated name). The back reference
 24135  	//     data will have already been updated. We must disable firstcu if not
 24136  	//     set, to cope with cases like (?=(\w+))\1: which would otherwise set ':'
 24137  	//     later.
 24138  
 24139  HANDLE_SINGLE_REFERENCE:
 24140  	if !(firstcuflags == DREQ_UNSET) {
 24141  		goto __411
 24142  	}
 24143  	zerofirstcuflags = libc.AssignUint32(&firstcuflags, DREQ_NONE)
 24144  __411:
 24145  	;
 24146  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 24147  		if options&DPCRE2_CASELESS != Tuint32_t(0) {
 24148  			return OP_REFI
 24149  		}
 24150  		return OP_REF
 24151  	}()
 24152  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = TPCRE2_UCHAR8(meta_arg >> 8)
 24153  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(meta_arg & Tuint32_t(255))
 24154  	code += uintptr(DIMM2_SIZE)
 24155  
 24156  	// Update the map of back references, and keep the highest one. We
 24157  	//     could do this in parse_regex() for numerical back references, but not
 24158  	//     for named back references, because we don't know the numbers to which
 24159  	//     named back references refer. So we do it all in this function.
 24160  
 24161  	*(*Tuint32_t)(unsafe.Pointer(cb + 252)) |= func() uint32 {
 24162  		if meta_arg < Tuint32_t(32) {
 24163  			return uint32(1) << meta_arg
 24164  		}
 24165  		return uint32(1)
 24166  	}()
 24167  	if !(meta_arg > (*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref) {
 24168  		goto __412
 24169  	}
 24170  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ftop_backref = meta_arg
 24171  __412:
 24172  	;
 24173  	goto __12
 24174  
 24175  	// ===============================================================
 24176  	// Handle recursion by inserting the number of the called group (which is
 24177  	//     the meta argument) after OP_RECURSE. At the end of compiling the pattern is
 24178  	//     scanned and these numbers are replaced by offsets within the pattern. It is
 24179  	//     done like this to avoid problems with forward references and adjusting
 24180  	//     offsets when groups are duplicated and moved (as discovered in previous
 24181  	//     implementations). Note that a recursion does not have a set first
 24182  	//     character.
 24183  
 24184  __69:
 24185  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)) + 2*4)))
 24186  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4 * uintptr(2)
 24187  
 24188  	if !(meta_arg > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 24189  		goto __413
 24190  	}
 24191  
 24192  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 24193  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR15 // Non-existent subpattern
 24194  	return 0
 24195  __413:
 24196  	;
 24197  HANDLE_NUMERICAL_RECURSION:
 24198  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)) = OP_RECURSE
 24199  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)) = TPCRE2_UCHAR8(meta_arg >> 8)
 24200  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)) = TPCRE2_UCHAR8(meta_arg & Tuint32_t(255))
 24201  	code += uintptr(1 + DLINK_SIZE)
 24202  	groupsetfirstcu = DFALSE
 24203  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fhad_recurse = DTRUE
 24204  	if !(firstcuflags == DREQ_UNSET) {
 24205  		goto __414
 24206  	}
 24207  	firstcuflags = DREQ_NONE
 24208  __414:
 24209  	;
 24210  	zerofirstcu = firstcu
 24211  	zerofirstcuflags = firstcuflags
 24212  	goto __12
 24213  
 24214  	// ===============================================================
 24215  	// Handle capturing parentheses; the number is the meta argument.
 24216  
 24217  __70:
 24218  	bravalue = OP_CBRA
 24219  	skipunits = Tuint32_t(DIMM2_SIZE)
 24220  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)) = TPCRE2_UCHAR8(meta_arg >> 8)
 24221  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)) = TPCRE2_UCHAR8(meta_arg & Tuint32_t(255))
 24222  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Flastcapture = meta_arg
 24223  	goto GROUP_PROCESS_NOTE_EMPTY
 24224  
 24225  	// ===============================================================
 24226  	// Handle escape sequence items. For ones like \d, the ESC_values are
 24227  	//     arranged to be the same as the corresponding OP_values in the default case
 24228  	//     when PCRE2_UCP is not set (which is the only case in which they will appear
 24229  	//     here).
 24230  	//
 24231  	//     Note: \Q and \E are never seen here, as they were dealt with in
 24232  	//     parse_pattern(). Neither are numerical back references or recursions, which
 24233  	//     were turned into META_BACKREF or META_RECURSE items, respectively. \k and
 24234  	//     \g, when followed by names, are turned into META_BACKREF_BYNAME or
 24235  	//     META_RECURSE_BYNAME.
 24236  
 24237  __71:
 24238  
 24239  	// We can test for escape sequences that consume a character because their
 24240  	//     values lie between ESC_b and ESC_Z; this may have to change if any new ones
 24241  	//     are ever created. For these sequences, we disable the setting of a first
 24242  	//     character if it hasn't already been set.
 24243  
 24244  	if !(meta_arg > ESC_b && meta_arg < ESC_Z) {
 24245  		goto __415
 24246  	}
 24247  
 24248  	matched_char = DTRUE
 24249  	if !(firstcuflags == DREQ_UNSET) {
 24250  		goto __416
 24251  	}
 24252  	firstcuflags = DREQ_NONE
 24253  __416:
 24254  	;
 24255  __415:
 24256  	;
 24257  
 24258  	// Set values to reset to if this is followed by a zero repeat.
 24259  
 24260  	zerofirstcu = firstcu
 24261  	zerofirstcuflags = firstcuflags
 24262  	zeroreqcu = reqcu
 24263  	zeroreqcuflags = reqcuflags
 24264  
 24265  	// If Unicode is not supported, \P and \p are not allowed and are
 24266  	//     faulted at parse time, so will never appear here.
 24267  
 24268  	if !(meta_arg == ESC_P || meta_arg == ESC_p) {
 24269  		goto __417
 24270  	}
 24271  
 24272  	ptype1 = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 96)), 4))) >> 16
 24273  	pdata1 = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96)))) & Tuint32_t(0xffff)
 24274  
 24275  	// The special case of \p{Any} is compiled to OP_ALLANY so as to benefit
 24276  	//       from the auto-anchoring code.
 24277  
 24278  	if !(meta_arg == ESC_p && ptype1 == Tuint32_t(DPT_ANY)) {
 24279  		goto __418
 24280  	}
 24281  
 24282  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_ALLANY
 24283  	goto __419
 24284  __418:
 24285  
 24286  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 24287  		if meta_arg == ESC_p {
 24288  			return OP_PROP
 24289  		}
 24290  		return OP_NOTPROP
 24291  	}()
 24292  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(ptype1)
 24293  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(pdata1)
 24294  __419:
 24295  	;
 24296  	goto __12 // End META_ESCAPE
 24297  __417:
 24298  	;
 24299  
 24300  	// \K is forbidden in lookarounds since 10.38 because that's what Perl has
 24301  	//     done. However, there's an option, in case anyone was relying on it.
 24302  
 24303  	if !(int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fassert_depth) > 0 && meta_arg == ESC_K && (*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fextra_options&DPCRE2_EXTRA_ALLOW_LOOKAROUND_BSK == Tuint32_t(0)) {
 24304  		goto __420
 24305  	}
 24306  
 24307  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR99
 24308  	return 0
 24309  __420:
 24310  	;
 24311  
 24312  	// For the rest (including \X when Unicode is supported - if not it's
 24313  	//     faulted at parse time), the OP value is the escape value when PCRE2_UCP is
 24314  	//     not set; if it is set, these escapes do not show up here because they are
 24315  	//     converted into Unicode property tests in parse_regex(). Note that \b and \B
 24316  	//     do a one-character lookbehind, and \A also behaves as if it does.
 24317  
 24318  	if !(meta_arg == ESC_C) {
 24319  		goto __421
 24320  	}
 24321  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_HASBKC)
 24322  __421:
 24323  	; // Record
 24324  	if !((meta_arg == ESC_b || meta_arg == ESC_B || meta_arg == ESC_A) && (*Tcompile_block_8)(unsafe.Pointer(cb)).Fmax_lookbehind == 0) {
 24325  		goto __422
 24326  	}
 24327  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Fmax_lookbehind = 1
 24328  __422:
 24329  	;
 24330  
 24331  	// In non-UTF mode, and for both 32-bit modes, we turn \C into OP_ALLANY
 24332  	//     instead of OP_ANYBYTE so that it works in DFA mode and in lookbehinds.
 24333  
 24334  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 24335  		if !(utf != 0) && meta_arg == ESC_C {
 24336  			return OP_ALLANY
 24337  		}
 24338  		return uint8(meta_arg)
 24339  	}()
 24340  	goto __12 // End META_ESCAPE
 24341  
 24342  	// ===================================================================
 24343  	// Handle an unrecognized meta value. A parsed pattern value less than
 24344  	//     META_END is a literal. Otherwise we have a problem.
 24345  
 24346  __72:
 24347  	if !(meta >= DMETA_END) {
 24348  		goto __423
 24349  	}
 24350  
 24351  	*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR89 // Internal error - unrecognized.
 24352  	return 0
 24353  __423:
 24354  	;
 24355  
 24356  	// Handle a literal character. We come here by goto in the case of a
 24357  	//     32-bit, non-UTF character whose value is greater than META_END.
 24358  
 24359  NORMAL_CHAR:
 24360  	meta = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)))) // Get the full 32 bits
 24361  NORMAL_CHAR_SET: // Character is already in meta
 24362  	matched_char = DTRUE
 24363  
 24364  	// For caseless UTF or UCP mode, check whether this character has more than
 24365  	//     one other case. If so, generate a special OP_PROP item instead of OP_CHARI.
 24366  	//
 24367  
 24368  	if !((utf != 0 || ucp != 0) && options&DPCRE2_CASELESS != Tuint32_t(0)) {
 24369  		goto __424
 24370  	}
 24371  
 24372  	caseset = Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(meta)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(meta)%DUCD_BLOCK_SIZE])*12)).Fcaseset)
 24373  	if !(caseset != Tuint32_t(0)) {
 24374  		goto __425
 24375  	}
 24376  
 24377  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = OP_PROP
 24378  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(DPT_CLIST)
 24379  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = TPCRE2_UCHAR8(caseset)
 24380  	if !(firstcuflags == DREQ_UNSET) {
 24381  		goto __426
 24382  	}
 24383  	firstcuflags = libc.AssignUint32(&zerofirstcuflags, DREQ_NONE)
 24384  __426:
 24385  	;
 24386  	goto __12 // End handling this meta item
 24387  __425:
 24388  	;
 24389  __424:
 24390  	;
 24391  
 24392  	// Caseful matches, or caseless and not one of the multicase characters. We
 24393  	//     come here by goto in the case of a positive class that contains only
 24394  	//     case-partners of a character with just two cases; matched_char has already
 24395  	//     been set TRUE and options fudged if necessary.
 24396  
 24397  CLASS_CASELESS_CHAR:
 24398  
 24399  	// Get the character's code units into mcbuffer, with the length in
 24400  	//     mclength. When not in UTF mode, the length is always 1.
 24401  
 24402  	if !(utf != 0) {
 24403  		goto __427
 24404  	}
 24405  	mclength = X_pcre2_ord2utf_8(tls, meta, bp+72)
 24406  	goto __428
 24407  __427:
 24408  
 24409  	mclength = Tuint32_t(1)
 24410  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 72)) = TPCRE2_UCHAR8(meta)
 24411  __428:
 24412  	;
 24413  
 24414  	// Generate the appropriate code
 24415  
 24416  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&code, 1))) = func() uint8 {
 24417  		if options&DPCRE2_CASELESS != Tuint32_t(0) {
 24418  			return OP_CHARI
 24419  		}
 24420  		return OP_CHAR
 24421  	}()
 24422  	libc.X__builtin___memcpy_chk(tls, code, bp+72, uint64(mclength*Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, code, 0))
 24423  	code += uintptr(mclength)
 24424  
 24425  	// Remember if \r or \n were seen
 24426  
 24427  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 72))) == '\015' || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 72))) == '\012') {
 24428  		goto __429
 24429  	}
 24430  	*(*Tuint32_t)(unsafe.Pointer(cb + 208)) |= Tuint32_t(DPCRE2_HASCRORLF)
 24431  __429:
 24432  	;
 24433  
 24434  	// Set the first and required code units appropriately. If no previous
 24435  	//     first code unit, set it from this character, but revert to none on a zero
 24436  	//     repeat. Otherwise, leave the firstcu value alone, and don't change it on
 24437  	//     a zero repeat.
 24438  
 24439  	if !(firstcuflags == DREQ_UNSET) {
 24440  		goto __430
 24441  	}
 24442  
 24443  	zerofirstcuflags = DREQ_NONE
 24444  	zeroreqcu = reqcu
 24445  	zeroreqcuflags = reqcuflags
 24446  
 24447  	// If the character is more than one code unit long, we can set a single
 24448  	//       firstcu only if it is not to be matched caselessly. Multiple possible
 24449  	//       starting code units may be picked up later in the studying code.
 24450  
 24451  	if !(mclength == Tuint32_t(1) || req_caseopt == Tuint32_t(0)) {
 24452  		goto __432
 24453  	}
 24454  
 24455  	firstcu = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 72)))
 24456  	firstcuflags = req_caseopt
 24457  	if !(mclength != Tuint32_t(1)) {
 24458  		goto __434
 24459  	}
 24460  
 24461  	reqcu = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1))))
 24462  	reqcuflags = (*Tcompile_block_8)(unsafe.Pointer(cb)).Freq_varyopt
 24463  __434:
 24464  	;
 24465  	goto __433
 24466  __432:
 24467  	firstcuflags = libc.AssignUint32(&reqcuflags, DREQ_NONE)
 24468  __433:
 24469  	;
 24470  	goto __431
 24471  __430:
 24472  
 24473  	zerofirstcu = firstcu
 24474  	zerofirstcuflags = firstcuflags
 24475  	zeroreqcu = reqcu
 24476  	zeroreqcuflags = reqcuflags
 24477  	if !(mclength == Tuint32_t(1) || req_caseopt == Tuint32_t(0)) {
 24478  		goto __435
 24479  	}
 24480  
 24481  	reqcu = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1))))
 24482  	reqcuflags = req_caseopt | (*Tcompile_block_8)(unsafe.Pointer(cb)).Freq_varyopt
 24483  __435:
 24484  	;
 24485  __431:
 24486  	;
 24487  
 24488  	// If caselessness was temporarily instated, reset it.
 24489  
 24490  	if !(reset_caseful != 0) {
 24491  		goto __436
 24492  	}
 24493  
 24494  	options = options & libc.CplUint32(DPCRE2_CASELESS)
 24495  	req_caseopt = Tuint32_t(0)
 24496  	reset_caseful = DFALSE
 24497  __436:
 24498  	;
 24499  
 24500  	goto __12 // End literal character handling
 24501  __12:
 24502  	; // End of big switch
 24503  	goto __2
 24504  __2:
 24505  	*(*uintptr)(unsafe.Pointer(bp + 96 /* pptr */)) += 4
 24506  	goto __1
 24507  	goto __3
 24508  __3:
 24509  	;
 24510  	return int32(0) // End of big loop
 24511  
 24512  	// Control never reaches here.
 24513  }
 24514  
 24515  // ************************************************
 24516  //
 24517  //   Compile regex: a sequence of alternatives    *
 24518  //
 24519  
 24520  // On entry, pptr is pointing past the bracket meta, but on return it points to
 24521  // the closing bracket or META_END. The code variable is pointing at the code unit
 24522  // into which the BRA operator has been stored. This function is used during the
 24523  // pre-compile phase when we are trying to find out the amount of memory needed,
 24524  // as well as during the real compile phase. The value of lengthptr distinguishes
 24525  // the two phases.
 24526  //
 24527  // Arguments:
 24528  //   options           option bits, including any changes for this subpattern
 24529  //   codeptr           -> the address of the current code pointer
 24530  //   pptrptr           -> the address of the current parsed pattern pointer
 24531  //   errorcodeptr      -> pointer to error code variable
 24532  //   skipunits         skip this many code units at start (for brackets and OP_COND)
 24533  //   firstcuptr        place to put the first required code unit
 24534  //   firstcuflagsptr   place to put the first code unit flags
 24535  //   reqcuptr          place to put the last required code unit
 24536  //   reqcuflagsptr     place to put the last required code unit flags
 24537  //   bcptr             pointer to the chain of currently open branches
 24538  //   cb                points to the data block with tables pointers etc.
 24539  //   lengthptr         NULL during the real compile phase
 24540  //                     points to length accumulator during pre-compile phase
 24541  //
 24542  // Returns:            0 There has been an error
 24543  //                    +1 Success, this group must match at least one character
 24544  //                    -1 Success, this group may match an empty string
 24545  
 24546  func compile_regex(tls *libc.TLS, options Tuint32_t, codeptr uintptr, pptrptr uintptr, errorcodeptr uintptr, skipunits Tuint32_t, firstcuptr uintptr, firstcuflagsptr uintptr, reqcuptr uintptr, reqcuflagsptr uintptr, bcptr uintptr, cb uintptr, lengthptr uintptr) int32 { /* pcre2_compile.c:8095:1: */
 24547  	bp := tls.Alloc(80)
 24548  	defer tls.Free(80)
 24549  	*(*Tuint32_t)(unsafe.Pointer(bp + 16)) = options
 24550  
 24551  	*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) = *(*uintptr)(unsafe.Pointer(codeptr))
 24552  	var last_branch uintptr = *(*uintptr)(unsafe.Pointer(bp + 24 /* code */))
 24553  	var start_bracket uintptr = *(*uintptr)(unsafe.Pointer(bp + 24 /* code */))
 24554  	var lookbehind TBOOL
 24555  	// var capitem Topen_capitem at bp, 16
 24556  
 24557  	var capnumber int32 = 0
 24558  	var okreturn int32 = 1
 24559  	*(*uintptr)(unsafe.Pointer(bp + 32 /* pptr */)) = *(*uintptr)(unsafe.Pointer(pptrptr))
 24560  	var firstcu Tuint32_t
 24561  	var reqcu Tuint32_t
 24562  	var lookbehindlength Tuint32_t
 24563  	var firstcuflags Tuint32_t
 24564  	var reqcuflags Tuint32_t
 24565  	// var branchfirstcu Tuint32_t at bp+40, 4
 24566  
 24567  	// var branchreqcu Tuint32_t at bp+48, 4
 24568  
 24569  	// var branchfirstcuflags Tuint32_t at bp+44, 4
 24570  
 24571  	// var branchreqcuflags Tuint32_t at bp+52, 4
 24572  
 24573  	// var length Tsize_t at bp+72, 8
 24574  
 24575  	// var bc Tbranch_chain_8 at bp+56, 16
 24576  
 24577  	// If set, call the external function that checks for stack availability.
 24578  
 24579  	if (*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fstack_guard != uintptr(0) && (*struct {
 24580  		f func(*libc.TLS, Tuint32_t, uintptr) int32
 24581  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fstack_guard})).f(tls, uint32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fparens_depth), (*Tpcre2_real_compile_context_8)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fcx)).Fstack_guard_data) != 0 {
 24582  		*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR33
 24583  		return 0
 24584  	}
 24585  
 24586  	// Miscellaneous initialization
 24587  
 24588  	(*Tbranch_chain_8)(unsafe.Pointer(bp + 56 /* &bc */)).Fouter = bcptr
 24589  	(*Tbranch_chain_8)(unsafe.Pointer(bp + 56 /* &bc */)).Fcurrent_branch = *(*uintptr)(unsafe.Pointer(bp + 24 /* code */))
 24590  
 24591  	firstcu = libc.AssignUint32(&reqcu, Tuint32_t(0))
 24592  	firstcuflags = libc.AssignUint32(&reqcuflags, DREQ_UNSET)
 24593  
 24594  	// Accumulate the length for use in the pre-compile phase. Start with the
 24595  	// length of the BRA and KET and any extra code units that are required at the
 24596  	// beginning. We accumulate in a local variable to save frequent testing of
 24597  	// lengthptr for NULL. We cannot do this by looking at the value of 'code' at the
 24598  	// start and end of each alternative, because compiled items are discarded during
 24599  	// the pre-compile phase so that the workspace is not exceeded.
 24600  
 24601  	*(*Tsize_t)(unsafe.Pointer(bp + 72 /* length */)) = Tsize_t(Tuint32_t(2+2*DLINK_SIZE) + skipunits)
 24602  
 24603  	// Remember if this is a lookbehind assertion, and if it is, save its length
 24604  	// and skip over the pattern offset.
 24605  
 24606  	lookbehind = libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24))))) == OP_ASSERTBACK || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24))))) == OP_ASSERTBACK_NOT || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24))))) == OP_ASSERTBACK_NA)
 24607  
 24608  	if lookbehind != 0 {
 24609  		lookbehindlength = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32)) + libc.UintptrFromInt32(-1)*4)) & 0x0000ffff
 24610  		*(*uintptr)(unsafe.Pointer(bp + 32 /* pptr */)) += 4 * uintptr(DSIZEOFFSET)
 24611  	} else {
 24612  		lookbehindlength = Tuint32_t(0)
 24613  	}
 24614  
 24615  	// If this is a capturing subpattern, add to the chain of open capturing items
 24616  	// so that we can detect them if (*ACCEPT) is encountered. Note that only OP_CBRA
 24617  	// need be tested here; changing this opcode to one of its variants, e.g.
 24618  	// OP_SCBRAPOS, happens later, after the group has been compiled.
 24619  
 24620  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24))))) == OP_CBRA {
 24621  		capnumber = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24)) + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24)) + 4)))))
 24622  		(*Topen_capitem)(unsafe.Pointer(bp /* &capitem */)).Fnumber = Tuint16_t(capnumber)
 24623  		(*Topen_capitem)(unsafe.Pointer(bp /* &capitem */)).Fnext = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fopen_caps
 24624  		(*Topen_capitem)(unsafe.Pointer(bp /* &capitem */)).Fassert_depth = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fassert_depth
 24625  		(*Tcompile_block_8)(unsafe.Pointer(cb)).Fopen_caps = bp /* &capitem */
 24626  	}
 24627  
 24628  	// Offset is set zero to mark that this bracket is still open
 24629  
 24630  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) + 1)) = TPCRE2_UCHAR8(int32(0) >> 8)
 24631  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) + 2)) = TPCRE2_UCHAR8(0 & 255)
 24632  	*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) += uintptr(Tuint32_t(1+DLINK_SIZE) + skipunits)
 24633  
 24634  	// Loop for each alternative branch
 24635  
 24636  	for {
 24637  		var branch_return int32
 24638  
 24639  		// Insert OP_REVERSE if this is as lookbehind assertion.
 24640  
 24641  		if lookbehind != 0 && lookbehindlength > Tuint32_t(0) {
 24642  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)), 1))) = OP_REVERSE
 24643  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)))) = TPCRE2_UCHAR8(lookbehindlength >> 8)
 24644  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) + 1)) = TPCRE2_UCHAR8(lookbehindlength & Tuint32_t(255))
 24645  			*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) += uintptr(DLINK_SIZE)
 24646  			*(*Tsize_t)(unsafe.Pointer(bp + 72 /* length */)) += uint64(1 + DLINK_SIZE)
 24647  		}
 24648  
 24649  		// Now compile the branch; in the pre-compile phase its length gets added
 24650  		//   into the length.
 24651  
 24652  		if libc.AssignInt32(&branch_return, compile_branch(tls, bp+16, bp+24, bp+32, errorcodeptr, bp+40,
 24653  			bp+44, bp+48, bp+52, bp+56,
 24654  			cb, func() uintptr {
 24655  				if lengthptr == uintptr(0) {
 24656  					return uintptr(0)
 24657  				}
 24658  				return bp + 72
 24659  			}())) == 0 {
 24660  			return 0
 24661  		}
 24662  
 24663  		// If a branch can match an empty string, so can the whole group.
 24664  
 24665  		if branch_return < 0 {
 24666  			okreturn = -1
 24667  		}
 24668  
 24669  		// In the real compile phase, there is some post-processing to be done.
 24670  
 24671  		if lengthptr == uintptr(0) {
 24672  			// If this is the first branch, the firstcu and reqcu values for the
 24673  			//     branch become the values for the regex.
 24674  
 24675  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(last_branch))) != OP_ALT {
 24676  				firstcu = *(*Tuint32_t)(unsafe.Pointer(bp + 40 /* branchfirstcu */))
 24677  				firstcuflags = *(*Tuint32_t)(unsafe.Pointer(bp + 44 /* branchfirstcuflags */))
 24678  				reqcu = *(*Tuint32_t)(unsafe.Pointer(bp + 48 /* branchreqcu */))
 24679  				reqcuflags = *(*Tuint32_t)(unsafe.Pointer(bp + 52 /* branchreqcuflags */))
 24680  			} else {
 24681  				// If we previously had a firstcu, but it doesn't match the new branch,
 24682  				//       we have to abandon the firstcu for the regex, but if there was
 24683  				//       previously no reqcu, it takes on the value of the old firstcu.
 24684  
 24685  				if firstcuflags != *(*Tuint32_t)(unsafe.Pointer(bp + 44)) || firstcu != *(*Tuint32_t)(unsafe.Pointer(bp + 40)) {
 24686  					if firstcuflags < DREQ_NONE {
 24687  						if reqcuflags >= DREQ_NONE {
 24688  							reqcu = firstcu
 24689  							reqcuflags = firstcuflags
 24690  						}
 24691  					}
 24692  					firstcuflags = DREQ_NONE
 24693  				}
 24694  
 24695  				// If we (now or from before) have no firstcu, a firstcu from the
 24696  				//       branch becomes a reqcu if there isn't a branch reqcu.
 24697  
 24698  				if firstcuflags >= DREQ_NONE && *(*Tuint32_t)(unsafe.Pointer(bp + 44)) < DREQ_NONE && *(*Tuint32_t)(unsafe.Pointer(bp + 52)) >= DREQ_NONE {
 24699  					*(*Tuint32_t)(unsafe.Pointer(bp + 48 /* branchreqcu */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 40 /* branchfirstcu */))
 24700  					*(*Tuint32_t)(unsafe.Pointer(bp + 52 /* branchreqcuflags */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 44 /* branchfirstcuflags */))
 24701  				}
 24702  
 24703  				// Now ensure that the reqcus match
 24704  
 24705  				if reqcuflags&libc.CplUint32(DREQ_VARY) != *(*Tuint32_t)(unsafe.Pointer(bp + 52))&libc.CplUint32(DREQ_VARY) || reqcu != *(*Tuint32_t)(unsafe.Pointer(bp + 48)) {
 24706  					reqcuflags = DREQ_NONE
 24707  				} else {
 24708  					reqcu = *(*Tuint32_t)(unsafe.Pointer(bp + 48 /* branchreqcu */))
 24709  					reqcuflags = reqcuflags | *(*Tuint32_t)(unsafe.Pointer(bp + 52)) // To "or" REQ_VARY if present
 24710  				}
 24711  			}
 24712  		}
 24713  
 24714  		// Handle reaching the end of the expression, either ')' or end of pattern.
 24715  		//   In the real compile phase, go back through the alternative branches and
 24716  		//   reverse the chain of offsets, with the field in the BRA item now becoming an
 24717  		//   offset to the first alternative. If there are no alternatives, it points to
 24718  		//   the end of the group. The length in the terminating ket is always the length
 24719  		//   of the whole bracketed item. Return leaving the pointer at the terminating
 24720  		//   char.
 24721  
 24722  		if *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32))))&0xffff0000 != DMETA_ALT {
 24723  			if lengthptr == uintptr(0) {
 24724  				var branch_length Tsize_t = Tsize_t((int64(*(*uintptr)(unsafe.Pointer(bp + 24))) - int64(last_branch)) / 1)
 24725  				for __ccgo := true; __ccgo; __ccgo = branch_length > uint64(0) {
 24726  					var prev_length Tsize_t = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(last_branch + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(last_branch + 2)))))
 24727  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(last_branch + 1)) = TPCRE2_UCHAR8(branch_length >> 8)
 24728  					*(*TPCRE2_UCHAR8)(unsafe.Pointer(last_branch + 2)) = TPCRE2_UCHAR8(branch_length & uint64(255))
 24729  					branch_length = prev_length
 24730  					last_branch -= uintptr(branch_length)
 24731  				}
 24732  			}
 24733  
 24734  			// Fill in the ket
 24735  
 24736  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)))) = OP_KET
 24737  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) + 1)) = TPCRE2_UCHAR8(int32((int64(*(*uintptr)(unsafe.Pointer(bp + 24)))-int64(start_bracket))/1) >> 8)
 24738  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) + 2)) = TPCRE2_UCHAR8(int32((int64(*(*uintptr)(unsafe.Pointer(bp + 24)))-int64(start_bracket))/1) & 255)
 24739  			*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) += uintptr(1 + DLINK_SIZE)
 24740  
 24741  			// If it was a capturing subpattern, remove the block from the chain.
 24742  
 24743  			if capnumber > 0 {
 24744  				(*Tcompile_block_8)(unsafe.Pointer(cb)).Fopen_caps = (*Topen_capitem)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fopen_caps)).Fnext
 24745  			}
 24746  
 24747  			// Set values to pass back
 24748  
 24749  			*(*uintptr)(unsafe.Pointer(codeptr)) = *(*uintptr)(unsafe.Pointer(bp + 24 /* code */))
 24750  			*(*uintptr)(unsafe.Pointer(pptrptr)) = *(*uintptr)(unsafe.Pointer(bp + 32 /* pptr */))
 24751  			*(*Tuint32_t)(unsafe.Pointer(firstcuptr)) = firstcu
 24752  			*(*Tuint32_t)(unsafe.Pointer(firstcuflagsptr)) = firstcuflags
 24753  			*(*Tuint32_t)(unsafe.Pointer(reqcuptr)) = reqcu
 24754  			*(*Tuint32_t)(unsafe.Pointer(reqcuflagsptr)) = reqcuflags
 24755  			if lengthptr != uintptr(0) {
 24756  				if uint64(2147483647-20)-*(*Tsize_t)(unsafe.Pointer(lengthptr)) < *(*Tsize_t)(unsafe.Pointer(bp + 72)) {
 24757  					*(*int32)(unsafe.Pointer(errorcodeptr)) = ERR20
 24758  					return 0
 24759  				}
 24760  				*(*Tsize_t)(unsafe.Pointer(lengthptr)) += *(*Tsize_t)(unsafe.Pointer(bp + 72))
 24761  			}
 24762  			return okreturn
 24763  		}
 24764  
 24765  		// Another branch follows. In the pre-compile phase, we can move the code
 24766  		//   pointer back to where it was for the start of the first branch. (That is,
 24767  		//   pretend that each branch is the only one.)
 24768  		//
 24769  		//   In the real compile phase, insert an ALT node. Its length field points back
 24770  		//   to the previous branch while the bracket remains open. At the end the chain
 24771  		//   is reversed. It's done like this so that the start of the bracket has a
 24772  		//   zero offset until it is closed, making it possible to detect recursion.
 24773  
 24774  		if lengthptr != uintptr(0) {
 24775  			*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) = *(*uintptr)(unsafe.Pointer(codeptr)) + uintptr(1) + uintptr(DLINK_SIZE) + uintptr(skipunits)
 24776  			*(*Tsize_t)(unsafe.Pointer(bp + 72 /* length */)) += uint64(1 + DLINK_SIZE)
 24777  		} else {
 24778  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)))) = OP_ALT
 24779  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) + 1)) = TPCRE2_UCHAR8(int32((int64(*(*uintptr)(unsafe.Pointer(bp + 24)))-int64(last_branch))/1) >> 8)
 24780  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) + 2)) = TPCRE2_UCHAR8(int32((int64(*(*uintptr)(unsafe.Pointer(bp + 24)))-int64(last_branch))/1) & 255)
 24781  			(*Tbranch_chain_8)(unsafe.Pointer(bp + 56 /* &bc */)).Fcurrent_branch = libc.AssignUintptr(&last_branch, *(*uintptr)(unsafe.Pointer(bp + 24 /* code */)))
 24782  			*(*uintptr)(unsafe.Pointer(bp + 24 /* code */)) += uintptr(1 + DLINK_SIZE)
 24783  		}
 24784  
 24785  		// Set the lookbehind length (if not in a lookbehind the value will be zero)
 24786  		//   and then advance past the vertical bar.
 24787  
 24788  		lookbehindlength = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32)))) & 0x0000ffff
 24789  		*(*uintptr)(unsafe.Pointer(bp + 32 /* pptr */)) += 4
 24790  	}
 24791  	return int32(0)
 24792  	// Control never reaches here
 24793  }
 24794  
 24795  // ************************************************
 24796  //
 24797  //          Check for anchored pattern            *
 24798  //
 24799  
 24800  // Try to find out if this is an anchored regular expression. Consider each
 24801  // alternative branch. If they all start with OP_SOD or OP_CIRC, or with a bracket
 24802  // all of whose alternatives start with OP_SOD or OP_CIRC (recurse ad lib), then
 24803  // it's anchored. However, if this is a multiline pattern, then only OP_SOD will
 24804  // be found, because ^ generates OP_CIRCM in that mode.
 24805  //
 24806  // We can also consider a regex to be anchored if OP_SOM starts all its branches.
 24807  // This is the code for \G, which means "match at start of match position, taking
 24808  // into account the match offset".
 24809  //
 24810  // A branch is also implicitly anchored if it starts with .* and DOTALL is set,
 24811  // because that will try the rest of the pattern at all possible matching points,
 24812  // so there is no point trying again.... er ....
 24813  //
 24814  // .... except when the .* appears inside capturing parentheses, and there is a
 24815  // subsequent back reference to those parentheses. We haven't enough information
 24816  // to catch that case precisely.
 24817  //
 24818  // At first, the best we could do was to detect when .* was in capturing brackets
 24819  // and the highest back reference was greater than or equal to that level.
 24820  // However, by keeping a bitmap of the first 31 back references, we can catch some
 24821  // of the more common cases more precisely.
 24822  //
 24823  // ... A second exception is when the .* appears inside an atomic group, because
 24824  // this prevents the number of characters it matches from being adjusted.
 24825  //
 24826  // Arguments:
 24827  //   code           points to start of the compiled pattern
 24828  //   bracket_map    a bitmap of which brackets we are inside while testing; this
 24829  //                    handles up to substring 31; after that we just have to take
 24830  //                    the less precise approach
 24831  //   cb             points to the compile data block
 24832  //   atomcount      atomic group level
 24833  //   inassert       TRUE if in an assertion
 24834  //
 24835  // Returns:     TRUE or FALSE
 24836  
 24837  func is_anchored(tls *libc.TLS, code TPCRE2_SPTR8, bracket_map Tuint32_t, cb uintptr, atomcount int32, inassert TBOOL) TBOOL { /* pcre2_compile.c:8394:1: */
 24838  	for __ccgo := true; __ccgo; __ccgo = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 24839  		var scode TPCRE2_SPTR8 = first_significant_code(tls,
 24840  			code+uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))]), DFALSE)
 24841  		var op int32 = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode)))
 24842  
 24843  		// Non-capturing brackets
 24844  
 24845  		if op == OP_BRA || op == OP_BRAPOS || op == OP_SBRA || op == OP_SBRAPOS {
 24846  			if !(is_anchored(tls, scode, bracket_map, cb, atomcount, inassert) != 0) {
 24847  				return DFALSE
 24848  			}
 24849  		} else if op == OP_CBRA || op == OP_CBRAPOS || op == OP_SCBRA || op == OP_SCBRAPOS {
 24850  			var n int32 = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 4)))))
 24851  			var new_map Tuint32_t = bracket_map | func() uint32 {
 24852  				if n < 32 {
 24853  					return uint32(1) << n
 24854  				}
 24855  				return uint32(1)
 24856  			}()
 24857  			if !(is_anchored(tls, scode, new_map, cb, atomcount, inassert) != 0) {
 24858  				return DFALSE
 24859  			}
 24860  		} else if op == OP_ASSERT || op == OP_ASSERT_NA {
 24861  			if !(is_anchored(tls, scode, bracket_map, cb, atomcount, DTRUE) != 0) {
 24862  				return DFALSE
 24863  			}
 24864  		} else if op == OP_COND || op == OP_SCOND {
 24865  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 2)))))))) != OP_ALT {
 24866  				return DFALSE
 24867  			}
 24868  			if !(is_anchored(tls, scode, bracket_map, cb, atomcount, inassert) != 0) {
 24869  				return DFALSE
 24870  			}
 24871  		} else if op == OP_ONCE {
 24872  			if !(is_anchored(tls, scode, bracket_map, cb, atomcount+1, inassert) != 0) {
 24873  				return DFALSE
 24874  			}
 24875  		} else if op == OP_TYPESTAR || op == OP_TYPEMINSTAR || op == OP_TYPEPOSSTAR {
 24876  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1))) != OP_ALLANY || bracket_map&(*Tcompile_block_8)(unsafe.Pointer(cb)).Fbackref_map != Tuint32_t(0) || atomcount > 0 || (*Tcompile_block_8)(unsafe.Pointer(cb)).Fhad_pruneorskip != 0 || inassert != 0 || (*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_NO_DOTSTAR_ANCHOR != Tuint32_t(0) {
 24877  				return DFALSE
 24878  			}
 24879  		} else if op != OP_SOD && op != OP_SOM && op != OP_CIRC {
 24880  			return DFALSE
 24881  		}
 24882  
 24883  		code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 24884  	} // Loop for each alternative
 24885  	return DTRUE
 24886  }
 24887  
 24888  // ************************************************
 24889  //
 24890  //         Check for starting with ^ or .*        *
 24891  //
 24892  
 24893  // This is called to find out if every branch starts with ^ or .* so that
 24894  // "first char" processing can be done to speed things up in multiline
 24895  // matching and for non-DOTALL patterns that start with .* (which must start at
 24896  // the beginning or after \n). As in the case of is_anchored() (see above), we
 24897  // have to take account of back references to capturing brackets that contain .*
 24898  // because in that case we can't make the assumption. Also, the appearance of .*
 24899  // inside atomic brackets or in an assertion, or in a pattern that contains *PRUNE
 24900  // or *SKIP does not count, because once again the assumption no longer holds.
 24901  //
 24902  // Arguments:
 24903  //   code           points to start of the compiled pattern or a group
 24904  //   bracket_map    a bitmap of which brackets we are inside while testing; this
 24905  //                    handles up to substring 31; after that we just have to take
 24906  //                    the less precise approach
 24907  //   cb             points to the compile data
 24908  //   atomcount      atomic group level
 24909  //   inassert       TRUE if in an assertion
 24910  //
 24911  // Returns:         TRUE or FALSE
 24912  
 24913  func is_startline(tls *libc.TLS, code TPCRE2_SPTR8, bracket_map uint32, cb uintptr, atomcount int32, inassert TBOOL) TBOOL { /* pcre2_compile.c:8499:1: */
 24914  	for __ccgo := true; __ccgo; __ccgo = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 24915  		var scode TPCRE2_SPTR8 = first_significant_code(tls,
 24916  			code+uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))]), DFALSE)
 24917  		var op int32 = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode)))
 24918  
 24919  		// If we are at the start of a conditional assertion group, *both* the
 24920  		//    conditional assertion *and* what follows the condition must satisfy the test
 24921  		//    for start of line. Other kinds of condition fail. Note that there may be an
 24922  		//    auto-callout at the start of a condition.
 24923  
 24924  		if op == OP_COND {
 24925  			scode += TPCRE2_SPTR8(1 + DLINK_SIZE)
 24926  
 24927  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode))) == OP_CALLOUT {
 24928  				scode += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[OP_CALLOUT])
 24929  			} else if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode))) == OP_CALLOUT_STR {
 24930  				scode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 6)))))
 24931  			}
 24932  
 24933  			switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode))) {
 24934  			case OP_CREF:
 24935  				fallthrough
 24936  			case OP_DNCREF:
 24937  				fallthrough
 24938  			case OP_RREF:
 24939  				fallthrough
 24940  			case OP_DNRREF:
 24941  				fallthrough
 24942  			case OP_FAIL:
 24943  				fallthrough
 24944  			case OP_FALSE:
 24945  				fallthrough
 24946  			case OP_TRUE:
 24947  				return DFALSE
 24948  				fallthrough
 24949  
 24950  			default: // Assertion
 24951  				if !(is_startline(tls, scode, bracket_map, cb, atomcount, DTRUE) != 0) {
 24952  					return DFALSE
 24953  				}
 24954  				for __ccgo1 := true; __ccgo1; __ccgo1 = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode))) == OP_ALT {
 24955  					scode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 2)))))
 24956  				}
 24957  				scode += TPCRE2_SPTR8(1 + DLINK_SIZE)
 24958  				break
 24959  			}
 24960  			scode = first_significant_code(tls, scode, DFALSE)
 24961  			op = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode)))
 24962  		}
 24963  
 24964  		// Non-capturing brackets
 24965  
 24966  		if op == OP_BRA || op == OP_BRAPOS || op == OP_SBRA || op == OP_SBRAPOS {
 24967  			if !(is_startline(tls, scode, bracket_map, cb, atomcount, inassert) != 0) {
 24968  				return DFALSE
 24969  			}
 24970  		} else if op == OP_CBRA || op == OP_CBRAPOS || op == OP_SCBRA || op == OP_SCBRAPOS {
 24971  			var n int32 = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 4)))))
 24972  			var new_map int32 = int32(bracket_map | func() uint32 {
 24973  				if n < 32 {
 24974  					return uint32(1) << n
 24975  				}
 24976  				return uint32(1)
 24977  			}())
 24978  			if !(is_startline(tls, scode, uint32(new_map), cb, atomcount, inassert) != 0) {
 24979  				return DFALSE
 24980  			}
 24981  		} else if op == OP_ASSERT || op == OP_ASSERT_NA {
 24982  			if !(is_startline(tls, scode, bracket_map, cb, atomcount, DTRUE) != 0) {
 24983  				return DFALSE
 24984  			}
 24985  		} else if op == OP_ONCE {
 24986  			if !(is_startline(tls, scode, bracket_map, cb, atomcount+1, inassert) != 0) {
 24987  				return DFALSE
 24988  			}
 24989  		} else if op == OP_TYPESTAR || op == OP_TYPEMINSTAR || op == OP_TYPEPOSSTAR {
 24990  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1))) != OP_ANY || bracket_map&(*Tcompile_block_8)(unsafe.Pointer(cb)).Fbackref_map != uint32(0) || atomcount > 0 || (*Tcompile_block_8)(unsafe.Pointer(cb)).Fhad_pruneorskip != 0 || inassert != 0 || (*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_NO_DOTSTAR_ANCHOR != Tuint32_t(0) {
 24991  				return DFALSE
 24992  			}
 24993  		} else if op != OP_CIRC && op != OP_CIRCM {
 24994  			return DFALSE
 24995  		}
 24996  
 24997  		// Move on to the next alternative
 24998  
 24999  		code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 25000  	} // Loop for each alternative
 25001  	return DTRUE
 25002  }
 25003  
 25004  // ************************************************
 25005  //
 25006  //   Scan compiled regex for recursion reference  *
 25007  //
 25008  
 25009  // This function scans through a compiled pattern until it finds an instance of
 25010  // OP_RECURSE.
 25011  //
 25012  // Arguments:
 25013  //   code        points to start of expression
 25014  //   utf         TRUE in UTF mode
 25015  //
 25016  // Returns:      pointer to the opcode for OP_RECURSE, or NULL if not found
 25017  
 25018  func find_recurse(tls *libc.TLS, code TPCRE2_SPTR8, utf TBOOL) TPCRE2_SPTR8 { /* pcre2_compile.c:8621:1: */
 25019  	for {
 25020  		var c TPCRE2_UCHAR8 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 25021  		if int32(c) == OP_END {
 25022  			return uintptr(0)
 25023  		}
 25024  		if int32(c) == OP_RECURSE {
 25025  			return code
 25026  		}
 25027  
 25028  		// XCLASS is used for classes that cannot be represented just by a bit map.
 25029  		//   This includes negated single high-valued characters. CALLOUT_STR is used for
 25030  		//   callouts with string arguments. In both cases the length in the table is
 25031  		//   zero; the actual length is stored in the compiled code.
 25032  
 25033  		if int32(c) == OP_XCLASS {
 25034  			code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 25035  		} else if int32(c) == OP_CALLOUT_STR {
 25036  			code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 6)))))
 25037  		} else {
 25038  			switch int32(c) {
 25039  			case OP_TYPESTAR:
 25040  				fallthrough
 25041  			case OP_TYPEMINSTAR:
 25042  				fallthrough
 25043  			case OP_TYPEPLUS:
 25044  				fallthrough
 25045  			case OP_TYPEMINPLUS:
 25046  				fallthrough
 25047  			case OP_TYPEQUERY:
 25048  				fallthrough
 25049  			case OP_TYPEMINQUERY:
 25050  				fallthrough
 25051  			case OP_TYPEPOSSTAR:
 25052  				fallthrough
 25053  			case OP_TYPEPOSPLUS:
 25054  				fallthrough
 25055  			case OP_TYPEPOSQUERY:
 25056  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) == OP_NOTPROP {
 25057  					code += uintptr(2)
 25058  				}
 25059  				break
 25060  				fallthrough
 25061  
 25062  			case OP_TYPEPOSUPTO:
 25063  				fallthrough
 25064  			case OP_TYPEUPTO:
 25065  				fallthrough
 25066  			case OP_TYPEMINUPTO:
 25067  				fallthrough
 25068  			case OP_TYPEEXACT:
 25069  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_NOTPROP {
 25070  					code += uintptr(2)
 25071  				}
 25072  				break
 25073  				fallthrough
 25074  
 25075  			case OP_MARK:
 25076  				fallthrough
 25077  			case OP_COMMIT_ARG:
 25078  				fallthrough
 25079  			case OP_PRUNE_ARG:
 25080  				fallthrough
 25081  			case OP_SKIP_ARG:
 25082  				fallthrough
 25083  			case OP_THEN_ARG:
 25084  				code += TPCRE2_SPTR8(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))
 25085  				break
 25086  			}
 25087  
 25088  			// Add in the fixed length from the table
 25089  
 25090  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 25091  
 25092  			// In UTF-8 and UTF-16 modes, opcodes that are followed by a character may
 25093  			//     be followed by a multi-unit character. The length in the table is a
 25094  			//     minimum, so we have to arrange to skip the extra units.
 25095  
 25096  			if utf != 0 {
 25097  				switch int32(c) {
 25098  				case OP_CHAR:
 25099  					fallthrough
 25100  				case OP_CHARI:
 25101  					fallthrough
 25102  				case OP_NOT:
 25103  					fallthrough
 25104  				case OP_NOTI:
 25105  					fallthrough
 25106  				case OP_EXACT:
 25107  					fallthrough
 25108  				case OP_EXACTI:
 25109  					fallthrough
 25110  				case OP_NOTEXACT:
 25111  					fallthrough
 25112  				case OP_NOTEXACTI:
 25113  					fallthrough
 25114  				case OP_UPTO:
 25115  					fallthrough
 25116  				case OP_UPTOI:
 25117  					fallthrough
 25118  				case OP_NOTUPTO:
 25119  					fallthrough
 25120  				case OP_NOTUPTOI:
 25121  					fallthrough
 25122  				case OP_MINUPTO:
 25123  					fallthrough
 25124  				case OP_MINUPTOI:
 25125  					fallthrough
 25126  				case OP_NOTMINUPTO:
 25127  					fallthrough
 25128  				case OP_NOTMINUPTOI:
 25129  					fallthrough
 25130  				case OP_POSUPTO:
 25131  					fallthrough
 25132  				case OP_POSUPTOI:
 25133  					fallthrough
 25134  				case OP_NOTPOSUPTO:
 25135  					fallthrough
 25136  				case OP_NOTPOSUPTOI:
 25137  					fallthrough
 25138  				case OP_STAR:
 25139  					fallthrough
 25140  				case OP_STARI:
 25141  					fallthrough
 25142  				case OP_NOTSTAR:
 25143  					fallthrough
 25144  				case OP_NOTSTARI:
 25145  					fallthrough
 25146  				case OP_MINSTAR:
 25147  					fallthrough
 25148  				case OP_MINSTARI:
 25149  					fallthrough
 25150  				case OP_NOTMINSTAR:
 25151  					fallthrough
 25152  				case OP_NOTMINSTARI:
 25153  					fallthrough
 25154  				case OP_POSSTAR:
 25155  					fallthrough
 25156  				case OP_POSSTARI:
 25157  					fallthrough
 25158  				case OP_NOTPOSSTAR:
 25159  					fallthrough
 25160  				case OP_NOTPOSSTARI:
 25161  					fallthrough
 25162  				case OP_PLUS:
 25163  					fallthrough
 25164  				case OP_PLUSI:
 25165  					fallthrough
 25166  				case OP_NOTPLUS:
 25167  					fallthrough
 25168  				case OP_NOTPLUSI:
 25169  					fallthrough
 25170  				case OP_MINPLUS:
 25171  					fallthrough
 25172  				case OP_MINPLUSI:
 25173  					fallthrough
 25174  				case OP_NOTMINPLUS:
 25175  					fallthrough
 25176  				case OP_NOTMINPLUSI:
 25177  					fallthrough
 25178  				case OP_POSPLUS:
 25179  					fallthrough
 25180  				case OP_POSPLUSI:
 25181  					fallthrough
 25182  				case OP_NOTPOSPLUS:
 25183  					fallthrough
 25184  				case OP_NOTPOSPLUSI:
 25185  					fallthrough
 25186  				case OP_QUERY:
 25187  					fallthrough
 25188  				case OP_QUERYI:
 25189  					fallthrough
 25190  				case OP_NOTQUERY:
 25191  					fallthrough
 25192  				case OP_NOTQUERYI:
 25193  					fallthrough
 25194  				case OP_MINQUERY:
 25195  					fallthrough
 25196  				case OP_MINQUERYI:
 25197  					fallthrough
 25198  				case OP_NOTMINQUERY:
 25199  					fallthrough
 25200  				case OP_NOTMINQUERYI:
 25201  					fallthrough
 25202  				case OP_POSQUERY:
 25203  					fallthrough
 25204  				case OP_POSQUERYI:
 25205  					fallthrough
 25206  				case OP_NOTPOSQUERY:
 25207  					fallthrough
 25208  				case OP_NOTPOSQUERYI:
 25209  					if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1)))) >= 0xc0 {
 25210  						code += TPCRE2_SPTR8(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1))))&0x3f])
 25211  					}
 25212  					break
 25213  				}
 25214  			}
 25215  		}
 25216  	}
 25217  	return TPCRE2_SPTR8(0)
 25218  }
 25219  
 25220  // ************************************************
 25221  //
 25222  //    Check for asserted fixed first code unit    *
 25223  //
 25224  
 25225  // During compilation, the "first code unit" settings from forward assertions
 25226  // are discarded, because they can cause conflicts with actual literals that
 25227  // follow. However, if we end up without a first code unit setting for an
 25228  // unanchored pattern, it is worth scanning the regex to see if there is an
 25229  // initial asserted first code unit. If all branches start with the same asserted
 25230  // code unit, or with a non-conditional bracket all of whose alternatives start
 25231  // with the same asserted code unit (recurse ad lib), then we return that code
 25232  // unit, with the flags set to zero or REQ_CASELESS; otherwise return zero with
 25233  // REQ_NONE in the flags.
 25234  //
 25235  // Arguments:
 25236  //   code       points to start of compiled pattern
 25237  //   flags      points to the first code unit flags
 25238  //   inassert   non-zero if in an assertion
 25239  //
 25240  // Returns:     the fixed first code unit, or 0 with REQ_NONE in flags
 25241  
 25242  func find_firstassertedcu(tls *libc.TLS, code TPCRE2_SPTR8, flags uintptr, inassert Tuint32_t) Tuint32_t { /* pcre2_compile.c:8777:1: */
 25243  	bp := tls.Alloc(4)
 25244  	defer tls.Free(4)
 25245  
 25246  	var c Tuint32_t = Tuint32_t(0)
 25247  	var cflags Tuint32_t = DREQ_NONE
 25248  
 25249  	*(*Tuint32_t)(unsafe.Pointer(flags)) = DREQ_NONE
 25250  	for __ccgo := true; __ccgo; __ccgo = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 25251  		var d Tuint32_t
 25252  		// var dflags Tuint32_t at bp, 4
 25253  
 25254  		var xl int32
 25255  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_CBRA || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_SCBRA || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_CBRAPOS || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_SCBRAPOS {
 25256  			xl = DIMM2_SIZE
 25257  		} else {
 25258  			xl = 0
 25259  		}
 25260  		var scode TPCRE2_SPTR8 = first_significant_code(tls, code+uintptr(1)+uintptr(DLINK_SIZE)+uintptr(xl), DTRUE)
 25261  		var op TPCRE2_UCHAR8 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(scode))
 25262  
 25263  		switch int32(op) {
 25264  		default:
 25265  			return Tuint32_t(0)
 25266  
 25267  		case OP_BRA:
 25268  			fallthrough
 25269  		case OP_BRAPOS:
 25270  			fallthrough
 25271  		case OP_CBRA:
 25272  			fallthrough
 25273  		case OP_SCBRA:
 25274  			fallthrough
 25275  		case OP_CBRAPOS:
 25276  			fallthrough
 25277  		case OP_SCBRAPOS:
 25278  			fallthrough
 25279  		case OP_ASSERT:
 25280  			fallthrough
 25281  		case OP_ASSERT_NA:
 25282  			fallthrough
 25283  		case OP_ONCE:
 25284  			fallthrough
 25285  		case OP_SCRIPT_RUN:
 25286  			d = find_firstassertedcu(tls, scode, bp, inassert+func() uint32 {
 25287  				if int32(op) == OP_ASSERT || int32(op) == OP_ASSERT_NA {
 25288  					return uint32(1)
 25289  				}
 25290  				return uint32(0)
 25291  			}())
 25292  			if *(*Tuint32_t)(unsafe.Pointer(bp)) >= DREQ_NONE {
 25293  				return Tuint32_t(0)
 25294  			}
 25295  			if cflags >= DREQ_NONE {
 25296  				c = d
 25297  				cflags = *(*Tuint32_t)(unsafe.Pointer(bp /* dflags */))
 25298  			} else if c != d || cflags != *(*Tuint32_t)(unsafe.Pointer(bp)) {
 25299  				return Tuint32_t(0)
 25300  			}
 25301  			break
 25302  
 25303  		case OP_EXACT:
 25304  			scode += TPCRE2_SPTR8(DIMM2_SIZE)
 25305  			fallthrough
 25306  		// Fall through
 25307  
 25308  		case OP_CHAR:
 25309  			fallthrough
 25310  		case OP_PLUS:
 25311  			fallthrough
 25312  		case OP_MINPLUS:
 25313  			fallthrough
 25314  		case OP_POSPLUS:
 25315  			if inassert == Tuint32_t(0) {
 25316  				return Tuint32_t(0)
 25317  			}
 25318  			if cflags >= DREQ_NONE {
 25319  				c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1)))
 25320  				cflags = Tuint32_t(0)
 25321  			} else if c != Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1))) {
 25322  				return Tuint32_t(0)
 25323  			}
 25324  			break
 25325  
 25326  		case OP_EXACTI:
 25327  			scode += TPCRE2_SPTR8(DIMM2_SIZE)
 25328  			fallthrough
 25329  		// Fall through
 25330  
 25331  		case OP_CHARI:
 25332  			fallthrough
 25333  		case OP_PLUSI:
 25334  			fallthrough
 25335  		case OP_MINPLUSI:
 25336  			fallthrough
 25337  		case OP_POSPLUSI:
 25338  			if inassert == Tuint32_t(0) {
 25339  				return Tuint32_t(0)
 25340  			}
 25341  
 25342  			// If the character is more than one code unit long, we cannot set its
 25343  			//      first code unit when matching caselessly. Later scanning may pick up
 25344  			//      multiple code units.
 25345  
 25346  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1))) >= 0x80 {
 25347  				return Tuint32_t(0)
 25348  			}
 25349  
 25350  			if cflags >= DREQ_NONE {
 25351  				c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1)))
 25352  				cflags = DREQ_CASELESS
 25353  			} else if c != Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(scode + 1))) {
 25354  				return Tuint32_t(0)
 25355  			}
 25356  			break
 25357  		}
 25358  
 25359  		code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 25360  	}
 25361  
 25362  	*(*Tuint32_t)(unsafe.Pointer(flags)) = cflags
 25363  	return c
 25364  }
 25365  
 25366  // ************************************************
 25367  //
 25368  //     Add an entry to the name/number table      *
 25369  //
 25370  
 25371  // This function is called between compiling passes to add an entry to the
 25372  // name/number table, maintaining alphabetical order. Checking for permitted
 25373  // and forbidden duplicates has already been done.
 25374  //
 25375  // Arguments:
 25376  //   cb           the compile data block
 25377  //   name         the name to add
 25378  //   length       the length of the name
 25379  //   groupno      the group number
 25380  //   tablecount   the count of names in the table so far
 25381  //
 25382  // Returns:       nothing
 25383  
 25384  func add_name_to_table(tls *libc.TLS, cb uintptr, name TPCRE2_SPTR8, length int32, groupno uint32, tablecount Tuint32_t) { /* pcre2_compile.c:8882:1: */
 25385  	var i Tuint32_t
 25386  	var slot uintptr = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_table
 25387  
 25388  	for i = Tuint32_t(0); i < tablecount; i++ {
 25389  		var crc int32 = libc.Xmemcmp(tls, name, slot+uintptr(DIMM2_SIZE), uint64(length*(DPCRE2_CODE_UNIT_WIDTH/8)))
 25390  		if crc == 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot + uintptr(DIMM2_SIZE+length)))) != 0 {
 25391  			crc = -1
 25392  		} // Current name is a substring
 25393  
 25394  		// Make space in the table and break the loop for an earlier name. For a
 25395  		//   duplicate or later name, carry on. We do this for duplicates so that in the
 25396  		//   simple case (when ?(| is not used) they are in order of their numbers. In all
 25397  		//   cases they are in the order in which they appear in the pattern.
 25398  
 25399  		if crc < 0 {
 25400  			libc.X__builtin___memmove_chk(tls, slot+uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size), slot, uint64((tablecount-i)*Tuint32_t((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size)*Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, slot+uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size), 0))
 25401  			break
 25402  		}
 25403  
 25404  		// Continue the loop for a later or duplicate name
 25405  
 25406  		slot += uintptr((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size)
 25407  	}
 25408  
 25409  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot)) = TPCRE2_UCHAR8(groupno >> 8)
 25410  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot + 1)) = TPCRE2_UCHAR8(groupno & uint32(255))
 25411  	libc.X__builtin___memcpy_chk(tls, slot+uintptr(DIMM2_SIZE), name, uint64(length*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, slot+uintptr(DIMM2_SIZE), 0))
 25412  
 25413  	// Add a terminating zero and fill the rest of the slot with zeroes so that
 25414  	// the memory is all initialized. Otherwise valgrind moans about uninitialized
 25415  	// memory when saving serialized compiled patterns.
 25416  
 25417  	libc.X__builtin___memset_chk(tls, slot+uintptr(DIMM2_SIZE)+uintptr(length), 0, uint64((int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fname_entry_size)-length-DIMM2_SIZE)*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, slot+uintptr(DIMM2_SIZE)+uintptr(length), 0))
 25418  }
 25419  
 25420  // ************************************************
 25421  //
 25422  //             Skip in parsed pattern             *
 25423  //
 25424  
 25425  // This function is called to skip parts of the parsed pattern when finding the
 25426  // length of a lookbehind branch. It is called after (*ACCEPT) and (*FAIL) to find
 25427  // the end of the branch, it is called to skip over an internal lookaround or
 25428  // (DEFINE) group, and it is also called to skip to the end of a class, during
 25429  // which it will never encounter nested groups (but there's no need to have
 25430  // special code for that).
 25431  //
 25432  // When called to find the end of a branch or group, pptr must point to the first
 25433  // meta code inside the branch, not the branch-starting code. In other cases it
 25434  // can point to the item that causes the function to be called.
 25435  //
 25436  // Arguments:
 25437  //   pptr       current pointer to skip from
 25438  //   skiptype   PSKIP_CLASS when skipping to end of class
 25439  //              PSKIP_ALT when META_ALT ends the skip
 25440  //              PSKIP_KET when only META_KET ends the skip
 25441  //
 25442  // Returns:     new value of pptr
 25443  //              NULL if META_END is reached - should never occur
 25444  //                or for an unknown meta value - likewise
 25445  
 25446  func parsed_skip(tls *libc.TLS, pptr uintptr, skiptype Tuint32_t) uintptr { /* pcre2_compile.c:8950:17: */
 25447  	var nestlevel Tuint32_t = Tuint32_t(0)
 25448  
 25449  	for ; ; pptr += 4 {
 25450  		var meta Tuint32_t = *(*Tuint32_t)(unsafe.Pointer(pptr)) & 0xffff0000
 25451  
 25452  		switch meta {
 25453  		default: // Just skip over most items
 25454  			if meta < DMETA_END {
 25455  				continue
 25456  			} // Literal
 25457  			break
 25458  
 25459  		// This should never occur.
 25460  
 25461  		case DMETA_END:
 25462  			return uintptr(0)
 25463  
 25464  		// The data for these items is variable in length.
 25465  
 25466  		case DMETA_BACKREF: // Offset is present only if group >= 10
 25467  			if *(*Tuint32_t)(unsafe.Pointer(pptr))&0x0000ffff >= Tuint32_t(10) {
 25468  				pptr += 4 * uintptr(DSIZEOFFSET)
 25469  			}
 25470  			break
 25471  
 25472  		case DMETA_ESCAPE: // A few escapes are followed by data items.
 25473  			switch *(*Tuint32_t)(unsafe.Pointer(pptr)) & 0x0000ffff {
 25474  			case ESC_P:
 25475  				fallthrough
 25476  			case ESC_p:
 25477  				pptr += 4 * uintptr(1)
 25478  				break
 25479  
 25480  			case ESC_g:
 25481  				fallthrough
 25482  			case ESC_k:
 25483  				pptr += 4 * uintptr(1+DSIZEOFFSET)
 25484  				break
 25485  			}
 25486  			break
 25487  
 25488  		case DMETA_MARK:
 25489  			fallthrough // Add the length of the name.
 25490  		case DMETA_COMMIT_ARG:
 25491  			fallthrough
 25492  		case DMETA_PRUNE_ARG:
 25493  			fallthrough
 25494  		case DMETA_SKIP_ARG:
 25495  			fallthrough
 25496  		case DMETA_THEN_ARG:
 25497  			pptr += 4 * uintptr(*(*Tuint32_t)(unsafe.Pointer(pptr + 1*4)))
 25498  			break
 25499  
 25500  		// These are the "active" items in this loop.
 25501  
 25502  		case DMETA_CLASS_END:
 25503  			if skiptype == PSKIP_CLASS {
 25504  				return pptr
 25505  			}
 25506  			break
 25507  
 25508  		case DMETA_ATOMIC:
 25509  			fallthrough
 25510  		case DMETA_CAPTURE:
 25511  			fallthrough
 25512  		case DMETA_COND_ASSERT:
 25513  			fallthrough
 25514  		case DMETA_COND_DEFINE:
 25515  			fallthrough
 25516  		case DMETA_COND_NAME:
 25517  			fallthrough
 25518  		case DMETA_COND_NUMBER:
 25519  			fallthrough
 25520  		case DMETA_COND_RNAME:
 25521  			fallthrough
 25522  		case DMETA_COND_RNUMBER:
 25523  			fallthrough
 25524  		case DMETA_COND_VERSION:
 25525  			fallthrough
 25526  		case DMETA_LOOKAHEAD:
 25527  			fallthrough
 25528  		case DMETA_LOOKAHEADNOT:
 25529  			fallthrough
 25530  		case DMETA_LOOKAHEAD_NA:
 25531  			fallthrough
 25532  		case DMETA_LOOKBEHIND:
 25533  			fallthrough
 25534  		case DMETA_LOOKBEHINDNOT:
 25535  			fallthrough
 25536  		case DMETA_LOOKBEHIND_NA:
 25537  			fallthrough
 25538  		case DMETA_NOCAPTURE:
 25539  			fallthrough
 25540  		case DMETA_SCRIPT_RUN:
 25541  			nestlevel++
 25542  			break
 25543  
 25544  		case DMETA_ALT:
 25545  			if nestlevel == Tuint32_t(0) && skiptype == PSKIP_ALT {
 25546  				return pptr
 25547  			}
 25548  			break
 25549  
 25550  		case DMETA_KET:
 25551  			if nestlevel == Tuint32_t(0) {
 25552  				return pptr
 25553  			}
 25554  			nestlevel--
 25555  			break
 25556  		}
 25557  
 25558  		// The extra data item length for each meta is in a table.
 25559  
 25560  		meta = meta >> 16 & Tuint32_t(0x7fff)
 25561  		if uint64(meta) >= uint64(unsafe.Sizeof(meta_extra_lengths)) {
 25562  			return uintptr(0)
 25563  		}
 25564  		pptr += 4 * uintptr(meta_extra_lengths[meta])
 25565  	}
 25566  	// Control never reaches here
 25567  	return pptr
 25568  }
 25569  
 25570  // ************************************************
 25571  //
 25572  //       Find length of a parsed group            *
 25573  //
 25574  
 25575  // This is called for nested groups within a branch of a lookbehind whose
 25576  // length is being computed. If all the branches in the nested group have the same
 25577  // length, that is OK. On entry, the pointer must be at the first element after
 25578  // the group initializing code. On exit it points to OP_KET. Caching is used to
 25579  // improve processing speed when the same capturing group occurs many times.
 25580  //
 25581  // Arguments:
 25582  //   pptrptr     pointer to pointer in the parsed pattern
 25583  //   isinline    FALSE if a reference or recursion; TRUE for inline group
 25584  //   errcodeptr  pointer to the errorcode
 25585  //   lcptr       pointer to the loop counter
 25586  //   group       number of captured group or -1 for a non-capturing group
 25587  //   recurses    chain of recurse_check to catch mutual recursion
 25588  //   cb          pointer to the compile data
 25589  //
 25590  // Returns:      the group length or a negative number
 25591  
 25592  func get_grouplength(tls *libc.TLS, pptrptr uintptr, isinline TBOOL, errcodeptr uintptr, lcptr uintptr, group int32, recurses uintptr, cb uintptr) int32 { /* pcre2_compile.c:9070:1: */
 25593  	var branchlength int32
 25594  	var grouplength int32
 25595  	var groupinfo Tuint32_t
 25596  	grouplength = -1
 25597  
 25598  	// The cache can be used only if there is no possibility of there being two
 25599  	// groups with the same number. We do not need to set the end pointer for a group
 25600  	// that is being processed as a back reference or recursion, but we must do so for
 25601  	// an inline group.
 25602  
 25603  	if !(group > 0 && (*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_flags&Tuint32_t(DPCRE2_DUPCAPUSED) == Tuint32_t(0)) {
 25604  		goto __1
 25605  	}
 25606  
 25607  	groupinfo = *(*Tuint32_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fgroupinfo + uintptr(group)*4))
 25608  	if !(groupinfo&DGI_NOT_FIXED_LENGTH != Tuint32_t(0)) {
 25609  		goto __2
 25610  	}
 25611  	return -1
 25612  __2:
 25613  	;
 25614  	if !(groupinfo&DGI_SET_FIXED_LENGTH != Tuint32_t(0)) {
 25615  		goto __3
 25616  	}
 25617  
 25618  	if !(isinline != 0) {
 25619  		goto __4
 25620  	}
 25621  	*(*uintptr)(unsafe.Pointer(pptrptr)) = parsed_skip(tls, *(*uintptr)(unsafe.Pointer(pptrptr)), PSKIP_KET)
 25622  __4:
 25623  	;
 25624  	return int32(groupinfo & DGI_FIXED_LENGTH_MASK)
 25625  __3:
 25626  	;
 25627  __1:
 25628  	;
 25629  
 25630  	// Scan the group. In this case we find the end pointer of necessity.
 25631  
 25632  __5:
 25633  
 25634  	branchlength = get_branchlength(tls, pptrptr, errcodeptr, lcptr, recurses, cb)
 25635  	if !(branchlength < 0) {
 25636  		goto __8
 25637  	}
 25638  	goto ISNOTFIXED
 25639  __8:
 25640  	;
 25641  	if !(grouplength == -1) {
 25642  		goto __9
 25643  	}
 25644  	grouplength = branchlength
 25645  	goto __10
 25646  __9:
 25647  	if !(grouplength != branchlength) {
 25648  		goto __11
 25649  	}
 25650  	goto ISNOTFIXED
 25651  __11:
 25652  	;
 25653  __10:
 25654  	;
 25655  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(pptrptr)))) == DMETA_KET) {
 25656  		goto __12
 25657  	}
 25658  	goto __7
 25659  __12:
 25660  	;
 25661  	*(*uintptr)(unsafe.Pointer(pptrptr)) += uintptr(1) * 4 // Skip META_ALT
 25662  	goto __6
 25663  __6:
 25664  	goto __5
 25665  	goto __7
 25666  __7:
 25667  	;
 25668  
 25669  	if !(group > 0) {
 25670  		goto __13
 25671  	}
 25672  	*(*Tuint32_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fgroupinfo + uintptr(group)*4)) |= DGI_SET_FIXED_LENGTH | uint32(grouplength)
 25673  __13:
 25674  	;
 25675  	return grouplength
 25676  
 25677  ISNOTFIXED:
 25678  	if !(group > 0) {
 25679  		goto __14
 25680  	}
 25681  	*(*Tuint32_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(cb)).Fgroupinfo + uintptr(group)*4)) |= DGI_NOT_FIXED_LENGTH
 25682  __14:
 25683  	;
 25684  	return -1
 25685  }
 25686  
 25687  // ************************************************
 25688  //
 25689  //        Find length of a parsed branch          *
 25690  //
 25691  
 25692  // Return a fixed length for a branch in a lookbehind, giving an error if the
 25693  // length is not fixed. On entry, *pptrptr points to the first element inside the
 25694  // branch. On exit it is set to point to the ALT or KET.
 25695  //
 25696  // Arguments:
 25697  //   pptrptr     pointer to pointer in the parsed pattern
 25698  //   errcodeptr  pointer to error code
 25699  //   lcptr       pointer to loop counter
 25700  //   recurses    chain of recurse_check to catch mutual recursion
 25701  //   cb          pointer to compile block
 25702  //
 25703  // Returns:      the length, or a negative value on error
 25704  
 25705  func get_branchlength(tls *libc.TLS, pptrptr uintptr, errcodeptr uintptr, lcptr uintptr, recurses uintptr, cb uintptr) int32 { /* pcre2_compile.c:9134:1: */
 25706  	bp := tls.Alloc(32)
 25707  	defer tls.Free(32)
 25708  
 25709  	var branchlength int32
 25710  	var grouplength int32
 25711  	var lastitemlength Tuint32_t
 25712  	// var pptr uintptr at bp, 8
 25713  
 25714  	var offset Tsize_t
 25715  	// var this_recurse Tparsed_recurse_check at bp+16, 16
 25716  
 25717  	var i int32
 25718  	var name TPCRE2_SPTR8
 25719  	var is_dupname TBOOL
 25720  	var ng uintptr
 25721  	var meta_code Tuint32_t
 25722  	var length Tuint32_t
 25723  	var r uintptr
 25724  	// var gptr uintptr at bp+8, 8
 25725  
 25726  	var gptrend uintptr
 25727  	var escape Tuint32_t
 25728  	var group Tuint32_t
 25729  	var itemlength Tuint32_t
 25730  	branchlength = 0
 25731  	lastitemlength = Tuint32_t(0)
 25732  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) = *(*uintptr)(unsafe.Pointer(pptrptr))
 25733  
 25734  	// A large and/or complex regex can take too long to process. This can happen
 25735  	// more often when (?| groups are present in the pattern because their length
 25736  	// cannot be cached.
 25737  
 25738  	if !(libc.PostIncInt32(&*(*int32)(unsafe.Pointer(lcptr)), 1) > 2000) {
 25739  		goto __1
 25740  	}
 25741  
 25742  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR35 // Lookbehind is too complicated
 25743  	return -1
 25744  __1:
 25745  	;
 25746  
 25747  	// Scan the branch, accumulating the length.
 25748  
 25749  __2:
 25750  	;
 25751  	group = Tuint32_t(0)
 25752  	itemlength = Tuint32_t(0)
 25753  
 25754  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) < DMETA_END) {
 25755  		goto __5
 25756  	}
 25757  
 25758  	itemlength = Tuint32_t(1)
 25759  	goto __6
 25760  __5:
 25761  	switch *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) & 0xffff0000 {
 25762  	case DMETA_KET:
 25763  		goto __8
 25764  	case DMETA_ALT:
 25765  		goto __9
 25766  
 25767  	// (*ACCEPT) and (*FAIL) terminate the branch, but we must skip to the
 25768  	//     actual termination.
 25769  
 25770  	case DMETA_ACCEPT:
 25771  		goto __10
 25772  	case DMETA_FAIL:
 25773  		goto __11
 25774  
 25775  	case DMETA_MARK:
 25776  		goto __12
 25777  	case DMETA_COMMIT_ARG:
 25778  		goto __13
 25779  	case DMETA_PRUNE_ARG:
 25780  		goto __14
 25781  	case DMETA_SKIP_ARG:
 25782  		goto __15
 25783  	case DMETA_THEN_ARG:
 25784  		goto __16
 25785  
 25786  	case DMETA_CIRCUMFLEX:
 25787  		goto __17
 25788  	case DMETA_COMMIT:
 25789  		goto __18
 25790  	case DMETA_DOLLAR:
 25791  		goto __19
 25792  	case DMETA_PRUNE:
 25793  		goto __20
 25794  	case DMETA_SKIP:
 25795  		goto __21
 25796  	case DMETA_THEN:
 25797  		goto __22
 25798  
 25799  	case DMETA_OPTIONS:
 25800  		goto __23
 25801  
 25802  	case DMETA_BIGVALUE:
 25803  		goto __24
 25804  
 25805  	case DMETA_CLASS:
 25806  		goto __25
 25807  	case DMETA_CLASS_NOT:
 25808  		goto __26
 25809  
 25810  	case DMETA_CLASS_EMPTY_NOT:
 25811  		goto __27
 25812  	case DMETA_DOT:
 25813  		goto __28
 25814  
 25815  	case DMETA_CALLOUT_NUMBER:
 25816  		goto __29
 25817  
 25818  	case DMETA_CALLOUT_STRING:
 25819  		goto __30
 25820  
 25821  	// Only some escapes consume a character. Of those, \R and \X are never
 25822  	//     allowed because they might match more than character. \C is allowed only in
 25823  	//     32-bit and non-UTF 8/16-bit modes.
 25824  
 25825  	case DMETA_ESCAPE:
 25826  		goto __31
 25827  
 25828  	// Lookaheads do not contribute to the length of this branch, but they may
 25829  	//     contain lookbehinds within them whose lengths need to be set.
 25830  
 25831  	case DMETA_LOOKAHEAD:
 25832  		goto __32
 25833  	case DMETA_LOOKAHEADNOT:
 25834  		goto __33
 25835  	case DMETA_LOOKAHEAD_NA:
 25836  		goto __34
 25837  
 25838  	// A nested lookbehind does not contribute any length to this lookbehind,
 25839  	//     but must itself be checked and have its lengths set.
 25840  
 25841  	case DMETA_LOOKBEHIND:
 25842  		goto __35
 25843  	case DMETA_LOOKBEHINDNOT:
 25844  		goto __36
 25845  	case DMETA_LOOKBEHIND_NA:
 25846  		goto __37
 25847  
 25848  	// Back references and recursions are handled by very similar code. At this
 25849  	//     stage, the names generated in the parsing pass are available, but the main
 25850  	//     name table has not yet been created. So for the named varieties, scan the
 25851  	//     list of names in order to get the number of the first one in the pattern,
 25852  	//     and whether or not this name is duplicated.
 25853  
 25854  	case DMETA_BACKREF_BYNAME:
 25855  		goto __38
 25856  	// Fall through
 25857  
 25858  	case DMETA_RECURSE_BYNAME:
 25859  		goto __39 // Duplicate name or number
 25860  
 25861  	// The offset values for back references < 10 are in a separate vector
 25862  	//     because otherwise they would use more than two parsed pattern elements on
 25863  	//     64-bit systems.
 25864  
 25865  	case DMETA_BACKREF:
 25866  		goto __40
 25867  
 25868  	// Fall through
 25869  	// For groups >= 10 - picking up group twice does no harm.
 25870  
 25871  	// A true recursion implies not fixed length, but a subroutine call may
 25872  	//     be OK. Back reference "recursions" are also failed.
 25873  
 25874  	case DMETA_RECURSE:
 25875  		goto __41
 25876  
 25877  	// A (DEFINE) group is never obeyed inline and so it does not contribute to
 25878  	//     the length of this branch. Skip from the following item to the next
 25879  	//     unpaired ket.
 25880  
 25881  	case DMETA_COND_DEFINE:
 25882  		goto __42
 25883  
 25884  	// Check other nested groups - advance past the initial data for each type
 25885  	//     and then seek a fixed length with get_grouplength().
 25886  
 25887  	case DMETA_COND_NAME:
 25888  		goto __43
 25889  	case DMETA_COND_NUMBER:
 25890  		goto __44
 25891  	case DMETA_COND_RNAME:
 25892  		goto __45
 25893  	case DMETA_COND_RNUMBER:
 25894  		goto __46
 25895  
 25896  	case DMETA_COND_ASSERT:
 25897  		goto __47
 25898  
 25899  	case DMETA_COND_VERSION:
 25900  		goto __48
 25901  
 25902  	case DMETA_CAPTURE:
 25903  		goto __49
 25904  	// Fall through
 25905  
 25906  	case DMETA_ATOMIC:
 25907  		goto __50
 25908  	case DMETA_NOCAPTURE:
 25909  		goto __51
 25910  	case DMETA_SCRIPT_RUN:
 25911  		goto __52
 25912  
 25913  	// Exact repetition is OK; variable repetition is not. A repetition of zero
 25914  	//     must subtract the length that has already been added.
 25915  
 25916  	case DMETA_MINMAX:
 25917  		goto __53
 25918  	case DMETA_MINMAX_PLUS:
 25919  		goto __54
 25920  	case DMETA_MINMAX_QUERY:
 25921  		goto __55
 25922  	// Fall through
 25923  
 25924  	// Any other item means this branch does not have a fixed length.
 25925  
 25926  	default:
 25927  		goto __56
 25928  	}
 25929  	goto __7
 25930  
 25931  __8:
 25932  __9:
 25933  	goto EXIT
 25934  
 25935  	// (*ACCEPT) and (*FAIL) terminate the branch, but we must skip to the
 25936  	//     actual termination.
 25937  
 25938  __10:
 25939  __11:
 25940  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) = parsed_skip(tls, *(*uintptr)(unsafe.Pointer(bp /* pptr */)), PSKIP_ALT)
 25941  	if !(*(*uintptr)(unsafe.Pointer(bp)) == uintptr(0)) {
 25942  		goto __57
 25943  	}
 25944  	goto PARSED_SKIP_FAILED
 25945  __57:
 25946  	;
 25947  	goto EXIT
 25948  
 25949  __12:
 25950  __13:
 25951  __14:
 25952  __15:
 25953  __16:
 25954  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 1*4))+Tuint32_t(1))
 25955  	goto __7
 25956  
 25957  __17:
 25958  __18:
 25959  __19:
 25960  __20:
 25961  __21:
 25962  __22:
 25963  	goto __7
 25964  
 25965  __23:
 25966  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(1)
 25967  	goto __7
 25968  
 25969  __24:
 25970  	itemlength = Tuint32_t(1)
 25971  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(1)
 25972  	goto __7
 25973  
 25974  __25:
 25975  __26:
 25976  	itemlength = Tuint32_t(1)
 25977  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) = parsed_skip(tls, *(*uintptr)(unsafe.Pointer(bp /* pptr */)), PSKIP_CLASS)
 25978  	if !(*(*uintptr)(unsafe.Pointer(bp)) == uintptr(0)) {
 25979  		goto __58
 25980  	}
 25981  	goto PARSED_SKIP_FAILED
 25982  __58:
 25983  	;
 25984  	goto __7
 25985  
 25986  __27:
 25987  __28:
 25988  	itemlength = Tuint32_t(1)
 25989  	goto __7
 25990  
 25991  __29:
 25992  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(3)
 25993  	goto __7
 25994  
 25995  __30:
 25996  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(3+DSIZEOFFSET)
 25997  	goto __7
 25998  
 25999  	// Only some escapes consume a character. Of those, \R and \X are never
 26000  	//     allowed because they might match more than character. \C is allowed only in
 26001  	//     32-bit and non-UTF 8/16-bit modes.
 26002  
 26003  __31:
 26004  	escape = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) & 0x0000ffff
 26005  	if !(escape == ESC_R || escape == ESC_X) {
 26006  		goto __59
 26007  	}
 26008  	return -1
 26009  __59:
 26010  	;
 26011  	if !(escape > ESC_b && escape < ESC_Z) {
 26012  		goto __60
 26013  	}
 26014  
 26015  	if !((*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_UTF != Tuint32_t(0) && escape == ESC_C) {
 26016  		goto __61
 26017  	}
 26018  
 26019  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR36
 26020  	return -1
 26021  __61:
 26022  	;
 26023  	itemlength = Tuint32_t(1)
 26024  	if !(escape == ESC_p || escape == ESC_P) {
 26025  		goto __62
 26026  	}
 26027  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4
 26028  __62:
 26029  	; // Skip prop data
 26030  __60:
 26031  	;
 26032  	goto __7
 26033  
 26034  	// Lookaheads do not contribute to the length of this branch, but they may
 26035  	//     contain lookbehinds within them whose lengths need to be set.
 26036  
 26037  __32:
 26038  __33:
 26039  __34:
 26040  	*(*int32)(unsafe.Pointer(errcodeptr)) = check_lookbehinds(tls, *(*uintptr)(unsafe.Pointer(bp))+uintptr(1)*4, bp, recurses, cb, lcptr)
 26041  	if !(*(*int32)(unsafe.Pointer(errcodeptr)) != 0) {
 26042  		goto __63
 26043  	}
 26044  	return -1
 26045  __63:
 26046  	;
 26047  
 26048  	// Ignore any qualifiers that follow a lookahead assertion.
 26049  
 26050  	switch *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pptr */)) + 1*4)) {
 26051  	case DMETA_ASTERISK:
 26052  		goto __65
 26053  	case DMETA_ASTERISK_PLUS:
 26054  		goto __66
 26055  	case DMETA_ASTERISK_QUERY:
 26056  		goto __67
 26057  	case DMETA_PLUS:
 26058  		goto __68
 26059  	case DMETA_PLUS_PLUS:
 26060  		goto __69
 26061  	case DMETA_PLUS_QUERY:
 26062  		goto __70
 26063  	case DMETA_QUERY:
 26064  		goto __71
 26065  	case DMETA_QUERY_PLUS:
 26066  		goto __72
 26067  	case DMETA_QUERY_QUERY:
 26068  		goto __73
 26069  
 26070  	case DMETA_MINMAX:
 26071  		goto __74
 26072  	case DMETA_MINMAX_PLUS:
 26073  		goto __75
 26074  	case DMETA_MINMAX_QUERY:
 26075  		goto __76
 26076  
 26077  	default:
 26078  		goto __77
 26079  	}
 26080  	goto __64
 26081  
 26082  __65:
 26083  __66:
 26084  __67:
 26085  __68:
 26086  __69:
 26087  __70:
 26088  __71:
 26089  __72:
 26090  __73:
 26091  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4
 26092  	goto __64
 26093  
 26094  __74:
 26095  __75:
 26096  __76:
 26097  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(3)
 26098  	goto __64
 26099  
 26100  __77:
 26101  	goto __64
 26102  __64:
 26103  	;
 26104  	goto __7
 26105  
 26106  	// A nested lookbehind does not contribute any length to this lookbehind,
 26107  	//     but must itself be checked and have its lengths set.
 26108  
 26109  __35:
 26110  __36:
 26111  __37:
 26112  	if !!(set_lookbehind_lengths(tls, bp, errcodeptr, lcptr, recurses, cb) != 0) {
 26113  		goto __78
 26114  	}
 26115  	return -1
 26116  __78:
 26117  	;
 26118  	goto __7
 26119  
 26120  	// Back references and recursions are handled by very similar code. At this
 26121  	//     stage, the names generated in the parsing pass are available, but the main
 26122  	//     name table has not yet been created. So for the named varieties, scan the
 26123  	//     list of names in order to get the number of the first one in the pattern,
 26124  	//     and whether or not this name is duplicated.
 26125  
 26126  __38:
 26127  	if !((*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_MATCH_UNSET_BACKREF != Tuint32_t(0)) {
 26128  		goto __79
 26129  	}
 26130  	goto ISNOTFIXED
 26131  __79:
 26132  	;
 26133  	// Fall through
 26134  
 26135  __39:
 26136  
 26137  	is_dupname = DFALSE
 26138  	ng = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fnamed_groups
 26139  	meta_code = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) & 0xffff0000
 26140  	length = *(*Tuint32_t)(unsafe.Pointer(libc.PreIncUintptr(&*(*uintptr)(unsafe.Pointer(bp)), 4)))
 26141  
 26142  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 2*4)))
 26143  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(2)
 26144  
 26145  	name = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fstart_pattern + uintptr(offset)
 26146  	i = 0
 26147  __80:
 26148  	if !(i < int32((*Tcompile_block_8)(unsafe.Pointer(cb)).Fnames_found)) {
 26149  		goto __82
 26150  	}
 26151  
 26152  	if !(length == Tuint32_t((*Tnamed_group_8)(unsafe.Pointer(ng)).Flength) && X_pcre2_strncmp_8(tls, name, (*Tnamed_group_8)(unsafe.Pointer(ng)).Fname, uint64(length)) == 0) {
 26153  		goto __83
 26154  	}
 26155  
 26156  	group = (*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber
 26157  	is_dupname = TBOOL((*Tnamed_group_8)(unsafe.Pointer(ng)).Fisdup)
 26158  	goto __82
 26159  __83:
 26160  	;
 26161  	goto __81
 26162  __81:
 26163  	i++
 26164  	ng += 16
 26165  	goto __80
 26166  	goto __82
 26167  __82:
 26168  	;
 26169  
 26170  	if !(group == Tuint32_t(0)) {
 26171  		goto __84
 26172  	}
 26173  
 26174  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR15 // Non-existent subpattern
 26175  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 26176  	return -1
 26177  __84:
 26178  	;
 26179  
 26180  	// A numerical back reference can be fixed length if duplicate capturing
 26181  	//       groups are not being used. A non-duplicate named back reference can also
 26182  	//       be handled.
 26183  
 26184  	if !(meta_code == DMETA_RECURSE_BYNAME || !(is_dupname != 0) && (*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_flags&Tuint32_t(DPCRE2_DUPCAPUSED) == Tuint32_t(0)) {
 26185  		goto __85
 26186  	}
 26187  	goto RECURSE_OR_BACKREF_LENGTH
 26188  __85:
 26189  	; // Handle as a numbered version.
 26190  
 26191  	goto ISNOTFIXED // Duplicate name or number
 26192  
 26193  	// The offset values for back references < 10 are in a separate vector
 26194  	//     because otherwise they would use more than two parsed pattern elements on
 26195  	//     64-bit systems.
 26196  
 26197  __40:
 26198  	if !((*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_options&DPCRE2_MATCH_UNSET_BACKREF != Tuint32_t(0) || (*Tcompile_block_8)(unsafe.Pointer(cb)).Fexternal_flags&Tuint32_t(DPCRE2_DUPCAPUSED) != Tuint32_t(0)) {
 26199  		goto __86
 26200  	}
 26201  	goto ISNOTFIXED
 26202  __86:
 26203  	;
 26204  	group = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) & 0x0000ffff
 26205  	if !(group < Tuint32_t(10)) {
 26206  		goto __87
 26207  	}
 26208  
 26209  	offset = *(*Tsize_t)(unsafe.Pointer(cb + 88 + uintptr(group)*8))
 26210  	goto RECURSE_OR_BACKREF_LENGTH
 26211  __87:
 26212  	;
 26213  
 26214  	// Fall through
 26215  	// For groups >= 10 - picking up group twice does no harm.
 26216  
 26217  	// A true recursion implies not fixed length, but a subroutine call may
 26218  	//     be OK. Back reference "recursions" are also failed.
 26219  
 26220  __41:
 26221  	group = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) & 0x0000ffff
 26222  	offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 2*4)))
 26223  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(2)
 26224  
 26225  RECURSE_OR_BACKREF_LENGTH:
 26226  	if !(group > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fbracount) {
 26227  		goto __88
 26228  	}
 26229  
 26230  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 26231  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR15 // Non-existent subpattern
 26232  	return -1
 26233  __88:
 26234  	;
 26235  	if !(group == Tuint32_t(0)) {
 26236  		goto __89
 26237  	}
 26238  	goto ISNOTFIXED
 26239  __89:
 26240  	; // Local recursion
 26241  	*(*uintptr)(unsafe.Pointer(bp + 8 /* gptr */)) = (*Tcompile_block_8)(unsafe.Pointer(cb)).Fparsed_pattern
 26242  __90:
 26243  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 8)))) != DMETA_END) {
 26244  		goto __92
 26245  	}
 26246  
 26247  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 8))))&0xffff0000 == DMETA_BIGVALUE) {
 26248  		goto __93
 26249  	}
 26250  	*(*uintptr)(unsafe.Pointer(bp + 8 /* gptr */)) += 4
 26251  	goto __94
 26252  __93:
 26253  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 8)))) == DMETA_CAPTURE|group) {
 26254  		goto __95
 26255  	}
 26256  	goto __92
 26257  __95:
 26258  	;
 26259  __94:
 26260  	;
 26261  	goto __91
 26262  __91:
 26263  	*(*uintptr)(unsafe.Pointer(bp + 8 /* gptr */)) += 4
 26264  	goto __90
 26265  	goto __92
 26266  __92:
 26267  	;
 26268  
 26269  	// We must start the search for the end of the group at the first meta code
 26270  	//     inside the group. Otherwise it will be treated as an enclosed group.
 26271  
 26272  	gptrend = parsed_skip(tls, *(*uintptr)(unsafe.Pointer(bp + 8))+uintptr(1)*4, PSKIP_KET)
 26273  	if !(gptrend == uintptr(0)) {
 26274  		goto __96
 26275  	}
 26276  	goto PARSED_SKIP_FAILED
 26277  __96:
 26278  	;
 26279  	if !(*(*uintptr)(unsafe.Pointer(bp)) > *(*uintptr)(unsafe.Pointer(bp + 8)) && *(*uintptr)(unsafe.Pointer(bp)) < gptrend) {
 26280  		goto __97
 26281  	}
 26282  	goto ISNOTFIXED
 26283  __97:
 26284  	; // Local recursion
 26285  	r = recurses
 26286  __98:
 26287  	if !(r != uintptr(0)) {
 26288  		goto __100
 26289  	}
 26290  	if !((*Tparsed_recurse_check)(unsafe.Pointer(r)).Fgroupptr == *(*uintptr)(unsafe.Pointer(bp + 8))) {
 26291  		goto __101
 26292  	}
 26293  	goto __100
 26294  __101:
 26295  	;
 26296  	goto __99
 26297  __99:
 26298  	r = (*Tparsed_recurse_check)(unsafe.Pointer(r)).Fprev
 26299  	goto __98
 26300  	goto __100
 26301  __100:
 26302  	;
 26303  	if !(r != uintptr(0)) {
 26304  		goto __102
 26305  	}
 26306  	goto ISNOTFIXED
 26307  __102:
 26308  	; // Mutual recursion
 26309  	(*Tparsed_recurse_check)(unsafe.Pointer(bp + 16 /* &this_recurse */)).Fprev = recurses
 26310  	(*Tparsed_recurse_check)(unsafe.Pointer(bp + 16 /* &this_recurse */)).Fgroupptr = *(*uintptr)(unsafe.Pointer(bp + 8 /* gptr */))
 26311  
 26312  	// We do not need to know the position of the end of the group, that is,
 26313  	//     gptr is not used after the call to get_grouplength(). Setting the second
 26314  	//     argument FALSE stops it scanning for the end when the length can be found
 26315  	//     in the cache.
 26316  
 26317  	*(*uintptr)(unsafe.Pointer(bp + 8 /* gptr */)) += 4
 26318  	grouplength = get_grouplength(tls, bp+8, DFALSE, errcodeptr, lcptr, int32(group),
 26319  		bp+16, cb)
 26320  	if !(grouplength < 0) {
 26321  		goto __103
 26322  	}
 26323  
 26324  	if !(*(*int32)(unsafe.Pointer(errcodeptr)) == 0) {
 26325  		goto __104
 26326  	}
 26327  	goto ISNOTFIXED
 26328  __104:
 26329  	;
 26330  	return -1 // Error already set
 26331  __103:
 26332  	;
 26333  	itemlength = Tuint32_t(grouplength)
 26334  	goto __7
 26335  
 26336  	// A (DEFINE) group is never obeyed inline and so it does not contribute to
 26337  	//     the length of this branch. Skip from the following item to the next
 26338  	//     unpaired ket.
 26339  
 26340  __42:
 26341  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) = parsed_skip(tls, *(*uintptr)(unsafe.Pointer(bp))+uintptr(1)*4, PSKIP_KET)
 26342  	goto __7
 26343  
 26344  	// Check other nested groups - advance past the initial data for each type
 26345  	//     and then seek a fixed length with get_grouplength().
 26346  
 26347  __43:
 26348  __44:
 26349  __45:
 26350  __46:
 26351  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(2+DSIZEOFFSET)
 26352  	goto CHECK_GROUP
 26353  
 26354  __47:
 26355  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(1)
 26356  	goto CHECK_GROUP
 26357  
 26358  __48:
 26359  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(4)
 26360  	goto CHECK_GROUP
 26361  
 26362  __49:
 26363  	group = *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) & 0x0000ffff
 26364  	// Fall through
 26365  
 26366  __50:
 26367  __51:
 26368  __52:
 26369  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4
 26370  CHECK_GROUP:
 26371  	grouplength = get_grouplength(tls, bp, DTRUE, errcodeptr, lcptr, int32(group),
 26372  		recurses, cb)
 26373  	if !(grouplength < 0) {
 26374  		goto __105
 26375  	}
 26376  	return -1
 26377  __105:
 26378  	;
 26379  	itemlength = Tuint32_t(grouplength)
 26380  	goto __7
 26381  
 26382  	// Exact repetition is OK; variable repetition is not. A repetition of zero
 26383  	//     must subtract the length that has already been added.
 26384  
 26385  __53:
 26386  __54:
 26387  __55:
 26388  	if !(*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 1*4)) == *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 2*4))) {
 26389  		goto __106
 26390  	}
 26391  
 26392  	switch *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp /* pptr */)) + 1*4)) {
 26393  	case Tuint32_t(0):
 26394  		goto __108
 26395  
 26396  	case Tuint32_t(1):
 26397  		goto __109
 26398  
 26399  	default:
 26400  		goto __110
 26401  	}
 26402  	goto __107
 26403  
 26404  __108:
 26405  	branchlength = int32(Tuint32_t(branchlength) - lastitemlength)
 26406  	goto __107
 26407  
 26408  __109:
 26409  	itemlength = Tuint32_t(0)
 26410  	goto __107
 26411  
 26412  __110: // Check for integer overflow
 26413  	if !(lastitemlength != Tuint32_t(0) && Tuint32_t(2147483647)/lastitemlength < *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 1*4))-Tuint32_t(1)) {
 26414  		goto __111
 26415  	}
 26416  
 26417  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR87 // Integer overflow; lookbehind too big
 26418  	return -1
 26419  __111:
 26420  	;
 26421  	itemlength = (*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 1*4)) - Tuint32_t(1)) * lastitemlength
 26422  	goto __107
 26423  __107:
 26424  	;
 26425  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(2)
 26426  	goto __7
 26427  __106:
 26428  	;
 26429  	// Fall through
 26430  
 26431  	// Any other item means this branch does not have a fixed length.
 26432  
 26433  __56:
 26434  ISNOTFIXED:
 26435  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR25 // Not fixed length
 26436  	return -1
 26437  __7:
 26438  	;
 26439  __6:
 26440  	;
 26441  
 26442  	// Add the item length to the branchlength, checking for integer overflow and
 26443  	//   for the branch length exceeding the limit.
 26444  
 26445  	if !(2147483647-branchlength < int32(itemlength) || uint32(libc.AssignAddInt32(&branchlength, int32(itemlength))) > 65535) {
 26446  		goto __112
 26447  	}
 26448  
 26449  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR87
 26450  	return -1
 26451  __112:
 26452  	;
 26453  
 26454  	// Save this item length for use if the next item is a quantifier.
 26455  
 26456  	lastitemlength = itemlength
 26457  	goto __3
 26458  __3:
 26459  	*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4
 26460  	goto __2
 26461  	goto __4
 26462  __4:
 26463  	;
 26464  
 26465  EXIT:
 26466  	*(*uintptr)(unsafe.Pointer(pptrptr)) = *(*uintptr)(unsafe.Pointer(bp /* pptr */))
 26467  	return branchlength
 26468  
 26469  PARSED_SKIP_FAILED:
 26470  	*(*int32)(unsafe.Pointer(errcodeptr)) = ERR90
 26471  	return -1
 26472  }
 26473  
 26474  // ************************************************
 26475  //
 26476  //        Set lengths in a lookbehind             *
 26477  //
 26478  
 26479  // This function is called for each lookbehind, to set the lengths in its
 26480  // branches. An error occurs if any branch does not have a fixed length that is
 26481  // less than the maximum (65535). On exit, the pointer must be left on the final
 26482  // ket.
 26483  //
 26484  // The function also maintains the max_lookbehind value. Any lookbehind branch
 26485  // that contains a nested lookbehind may actually look further back than the
 26486  // length of the branch. The additional amount is passed back from
 26487  // get_branchlength() as an "extra" value.
 26488  //
 26489  // Arguments:
 26490  //   pptrptr     pointer to pointer in the parsed pattern
 26491  //   errcodeptr  pointer to error code
 26492  //   lcptr       pointer to loop counter
 26493  //   recurses    chain of recurse_check to catch mutual recursion
 26494  //   cb          pointer to compile block
 26495  //
 26496  // Returns:      TRUE if all is well
 26497  //               FALSE otherwise, with error code and offset set
 26498  
 26499  func set_lookbehind_lengths(tls *libc.TLS, pptrptr uintptr, errcodeptr uintptr, lcptr uintptr, recurses uintptr, cb uintptr) TBOOL { /* pcre2_compile.c:9545:1: */
 26500  	var offset Tsize_t
 26501  	var branchlength int32
 26502  	var bptr uintptr = *(*uintptr)(unsafe.Pointer(pptrptr))
 26503  
 26504  	{
 26505  		offset = Tsize_t(*(*Tuint32_t)(unsafe.Pointer(bptr + 1*4)))<<32 | Tsize_t(*(*Tuint32_t)(unsafe.Pointer(bptr + 2*4)))
 26506  	}
 26507  	// Offset for error messages
 26508  	*(*uintptr)(unsafe.Pointer(pptrptr)) += uintptr(DSIZEOFFSET) * 4
 26509  
 26510  	for __ccgo := true; __ccgo; __ccgo = *(*Tuint32_t)(unsafe.Pointer(bptr)) == DMETA_ALT {
 26511  		*(*uintptr)(unsafe.Pointer(pptrptr)) += uintptr(1) * 4
 26512  		branchlength = get_branchlength(tls, pptrptr, errcodeptr, lcptr, recurses, cb)
 26513  		if branchlength < 0 {
 26514  			// The errorcode and offset may already be set from a nested lookbehind.
 26515  			if *(*int32)(unsafe.Pointer(errcodeptr)) == 0 {
 26516  				*(*int32)(unsafe.Pointer(errcodeptr)) = ERR25
 26517  			}
 26518  			if (*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset == libc.CplUint64(uint64(0)) {
 26519  				(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = offset
 26520  			}
 26521  			return DFALSE
 26522  		}
 26523  		if branchlength > (*Tcompile_block_8)(unsafe.Pointer(cb)).Fmax_lookbehind {
 26524  			(*Tcompile_block_8)(unsafe.Pointer(cb)).Fmax_lookbehind = branchlength
 26525  		}
 26526  		*(*Tuint32_t)(unsafe.Pointer(bptr)) |= Tuint32_t(branchlength) // branchlength never more than 65535
 26527  		bptr = *(*uintptr)(unsafe.Pointer(pptrptr))
 26528  	}
 26529  
 26530  	return DTRUE
 26531  }
 26532  
 26533  // ************************************************
 26534  //
 26535  //         Check parsed pattern lookbehinds       *
 26536  //
 26537  
 26538  // This function is called at the end of parsing a pattern if any lookbehinds
 26539  // were encountered. It scans the parsed pattern for them, calling
 26540  // set_lookbehind_lengths() for each one. At the start, the errorcode is zero and
 26541  // the error offset is marked unset. The enables the functions above not to
 26542  // override settings from deeper nestings.
 26543  //
 26544  // This function is called recursively from get_branchlength() for lookaheads in
 26545  // order to process any lookbehinds that they may contain. It stops when it hits a
 26546  // non-nested closing parenthesis in this case, returning a pointer to it.
 26547  //
 26548  // Arguments
 26549  //   pptr      points to where to start (start of pattern or start of lookahead)
 26550  //   retptr    if not NULL, return the ket pointer here
 26551  //   recurses  chain of recurse_check to catch mutual recursion
 26552  //   cb        points to the compile block
 26553  //   lcptr     points to loop counter
 26554  //
 26555  // Returns:    0 on success, or an errorcode (cb->erroroffset will be set)
 26556  
 26557  func check_lookbehinds(tls *libc.TLS, pptr uintptr, retptr uintptr, recurses uintptr, cb uintptr, lcptr uintptr) int32 { /* pcre2_compile.c:9602:1: */
 26558  	bp := tls.Alloc(12)
 26559  	defer tls.Free(12)
 26560  	*(*uintptr)(unsafe.Pointer(bp)) = pptr
 26561  
 26562  	*(*int32)(unsafe.Pointer(bp + 8 /* errorcode */)) = 0
 26563  	var nestlevel int32 = 0
 26564  
 26565  	(*Tcompile_block_8)(unsafe.Pointer(cb)).Ferroroffset = libc.CplUint64(uint64(0))
 26566  
 26567  	for ; *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) != DMETA_END; *(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 {
 26568  		if *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) < DMETA_END {
 26569  			continue
 26570  		} // Literal
 26571  
 26572  		switch *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)))) & 0xffff0000 {
 26573  		default:
 26574  			return ERR70 // Unrecognized meta code
 26575  
 26576  		case DMETA_ESCAPE:
 26577  			if *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp))))-DMETA_ESCAPE == ESC_P || *(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp))))-DMETA_ESCAPE == ESC_p {
 26578  				*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(1)
 26579  			}
 26580  			break
 26581  
 26582  		case DMETA_KET:
 26583  			if libc.PreDecInt32(&nestlevel, 1) < 0 {
 26584  				if retptr != uintptr(0) {
 26585  					*(*uintptr)(unsafe.Pointer(retptr)) = *(*uintptr)(unsafe.Pointer(bp /* pptr */))
 26586  				}
 26587  				return 0
 26588  			}
 26589  			break
 26590  
 26591  		case DMETA_ATOMIC:
 26592  			fallthrough
 26593  		case DMETA_CAPTURE:
 26594  			fallthrough
 26595  		case DMETA_COND_ASSERT:
 26596  			fallthrough
 26597  		case DMETA_LOOKAHEAD:
 26598  			fallthrough
 26599  		case DMETA_LOOKAHEADNOT:
 26600  			fallthrough
 26601  		case DMETA_LOOKAHEAD_NA:
 26602  			fallthrough
 26603  		case DMETA_NOCAPTURE:
 26604  			fallthrough
 26605  		case DMETA_SCRIPT_RUN:
 26606  			nestlevel++
 26607  			break
 26608  
 26609  		case DMETA_ACCEPT:
 26610  			fallthrough
 26611  		case DMETA_ALT:
 26612  			fallthrough
 26613  		case DMETA_ASTERISK:
 26614  			fallthrough
 26615  		case DMETA_ASTERISK_PLUS:
 26616  			fallthrough
 26617  		case DMETA_ASTERISK_QUERY:
 26618  			fallthrough
 26619  		case DMETA_BACKREF:
 26620  			fallthrough
 26621  		case DMETA_CIRCUMFLEX:
 26622  			fallthrough
 26623  		case DMETA_CLASS:
 26624  			fallthrough
 26625  		case DMETA_CLASS_EMPTY:
 26626  			fallthrough
 26627  		case DMETA_CLASS_EMPTY_NOT:
 26628  			fallthrough
 26629  		case DMETA_CLASS_END:
 26630  			fallthrough
 26631  		case DMETA_CLASS_NOT:
 26632  			fallthrough
 26633  		case DMETA_COMMIT:
 26634  			fallthrough
 26635  		case DMETA_DOLLAR:
 26636  			fallthrough
 26637  		case DMETA_DOT:
 26638  			fallthrough
 26639  		case DMETA_FAIL:
 26640  			fallthrough
 26641  		case DMETA_PLUS:
 26642  			fallthrough
 26643  		case DMETA_PLUS_PLUS:
 26644  			fallthrough
 26645  		case DMETA_PLUS_QUERY:
 26646  			fallthrough
 26647  		case DMETA_PRUNE:
 26648  			fallthrough
 26649  		case DMETA_QUERY:
 26650  			fallthrough
 26651  		case DMETA_QUERY_PLUS:
 26652  			fallthrough
 26653  		case DMETA_QUERY_QUERY:
 26654  			fallthrough
 26655  		case DMETA_RANGE_ESCAPED:
 26656  			fallthrough
 26657  		case DMETA_RANGE_LITERAL:
 26658  			fallthrough
 26659  		case DMETA_SKIP:
 26660  			fallthrough
 26661  		case DMETA_THEN:
 26662  			break
 26663  
 26664  		case DMETA_RECURSE:
 26665  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(DSIZEOFFSET)
 26666  			break
 26667  
 26668  		case DMETA_BACKREF_BYNAME:
 26669  			fallthrough
 26670  		case DMETA_RECURSE_BYNAME:
 26671  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(1+DSIZEOFFSET)
 26672  			break
 26673  
 26674  		case DMETA_COND_DEFINE:
 26675  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(DSIZEOFFSET)
 26676  			nestlevel++
 26677  			break
 26678  
 26679  		case DMETA_COND_NAME:
 26680  			fallthrough
 26681  		case DMETA_COND_NUMBER:
 26682  			fallthrough
 26683  		case DMETA_COND_RNAME:
 26684  			fallthrough
 26685  		case DMETA_COND_RNUMBER:
 26686  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(1+DSIZEOFFSET)
 26687  			nestlevel++
 26688  			break
 26689  
 26690  		case DMETA_COND_VERSION:
 26691  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(3)
 26692  			nestlevel++
 26693  			break
 26694  
 26695  		case DMETA_CALLOUT_STRING:
 26696  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(3+DSIZEOFFSET)
 26697  			break
 26698  
 26699  		case DMETA_BIGVALUE:
 26700  			fallthrough
 26701  		case DMETA_OPTIONS:
 26702  			fallthrough
 26703  		case DMETA_POSIX:
 26704  			fallthrough
 26705  		case DMETA_POSIX_NEG:
 26706  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(1)
 26707  			break
 26708  
 26709  		case DMETA_MINMAX:
 26710  			fallthrough
 26711  		case DMETA_MINMAX_QUERY:
 26712  			fallthrough
 26713  		case DMETA_MINMAX_PLUS:
 26714  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(2)
 26715  			break
 26716  
 26717  		case DMETA_CALLOUT_NUMBER:
 26718  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(3)
 26719  			break
 26720  
 26721  		case DMETA_MARK:
 26722  			fallthrough
 26723  		case DMETA_COMMIT_ARG:
 26724  			fallthrough
 26725  		case DMETA_PRUNE_ARG:
 26726  			fallthrough
 26727  		case DMETA_SKIP_ARG:
 26728  			fallthrough
 26729  		case DMETA_THEN_ARG:
 26730  			*(*uintptr)(unsafe.Pointer(bp /* pptr */)) += 4 * uintptr(Tuint32_t(1)+*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp)) + 1*4)))
 26731  			break
 26732  
 26733  		case DMETA_LOOKBEHIND:
 26734  			fallthrough
 26735  		case DMETA_LOOKBEHINDNOT:
 26736  			fallthrough
 26737  		case DMETA_LOOKBEHIND_NA:
 26738  			if !(set_lookbehind_lengths(tls, bp, bp+8, lcptr, recurses, cb) != 0) {
 26739  				return *(*int32)(unsafe.Pointer(bp + 8 /* errorcode */))
 26740  			}
 26741  			break
 26742  		}
 26743  	}
 26744  
 26745  	return 0
 26746  }
 26747  
 26748  // ************************************************
 26749  //
 26750  //     External function to compile a pattern     *
 26751  //
 26752  
 26753  // This function reads a regular expression in the form of a string and returns
 26754  // a pointer to a block of store holding a compiled version of the expression.
 26755  //
 26756  // Arguments:
 26757  //   pattern       the regular expression
 26758  //   patlen        the length of the pattern, or PCRE2_ZERO_TERMINATED
 26759  //   options       option bits
 26760  //   errorptr      pointer to errorcode
 26761  //   erroroffset   pointer to error offset
 26762  //   ccontext      points to a compile context or is NULL
 26763  //
 26764  // Returns:        pointer to compiled data block, or NULL on error,
 26765  //                 with errorcode and erroroffset set
 26766  
 26767  func Xpcre2_compile_8(tls *libc.TLS, pattern TPCRE2_SPTR8, patlen Tsize_t, options Tuint32_t, errorptr uintptr, erroroffset uintptr, ccontext uintptr) uintptr { /* pcre2_compile.c:9761:27: */
 26768  	bp := tls.Alloc(17928)
 26769  	defer tls.Free(17928)
 26770  
 26771  	var utf TBOOL // Set TRUE for UTF mode
 26772  	var ucp TBOOL // Set TRUE for UCP mode
 26773  	// var has_lookbehind TBOOL at bp+17744, 4
 26774  	// Set TRUE if a lookbehind is found
 26775  	var zero_terminated TBOOL
 26776  	_ = zero_terminated // Set TRUE for zero-terminated pattern
 26777  	var re uintptr      // What we will return
 26778  	// var cb Tcompile_block_8 at bp+17440, 304
 26779  	// "Static" compile-time data
 26780  	var tables uintptr // Char tables base pointer
 26781  
 26782  	// var code uintptr at bp+17752, 8
 26783  	// Current pointer in compiled code
 26784  	var codestart TPCRE2_SPTR8 // Start of compiled code
 26785  	var ptr TPCRE2_SPTR8       // Current pointer in pattern
 26786  	// var pptr uintptr at bp+17760, 8
 26787  	// Current pointer in parsed pattern
 26788  
 26789  	// var length Tsize_t at bp+17792, 8
 26790  	// Allow for final END opcode
 26791  	var usedlength Tsize_t         // Actual length used
 26792  	var re_blocksize Tsize_t       // Size of memory block
 26793  	var big32count Tsize_t         // 32-bit literals >= 0x80000000
 26794  	var parsed_size_needed Tsize_t // Needed for parsed pattern
 26795  
 26796  	// var firstcuflags Tuint32_t at bp+17776, 4
 26797  
 26798  	// var reqcuflags Tuint32_t at bp+17784, 4
 26799  	// Type of first/req code unit
 26800  	// var firstcu Tuint32_t at bp+17772, 4
 26801  
 26802  	// var reqcu Tuint32_t at bp+17780, 4
 26803  	// Value of first/req code unit
 26804  	var setflags Tuint32_t // NL and BSR set flags
 26805  
 26806  	var skipatstart Tuint32_t // When checking (*UTF) etc
 26807  	var limit_heap Tuint32_t
 26808  	var limit_match Tuint32_t // Unset match limits
 26809  	var limit_depth Tuint32_t
 26810  	var newline int32 // Unset; can be set by the pattern
 26811  	var bsr int32     // Unset; can be set by the pattern
 26812  	// var errorcode int32 at bp+17768, 4
 26813  	// Initialize to avoid compiler warn
 26814  	var regexrc int32 // Return from compile
 26815  
 26816  	var i Tuint32_t // Local loop counter
 26817  
 26818  	// Comments at the head of this file explain about these variables.
 26819  
 26820  	// var stack_groupinfo [256]Tuint32_t at bp+12000, 1024
 26821  
 26822  	// var stack_parsed_pattern [1024]Tuint32_t at bp+13344, 4096
 26823  
 26824  	// var named_groups [20]Tnamed_group_8 at bp+13024, 320
 26825  
 26826  	// The workspace is used in different ways in the different compiling phases.
 26827  	// It needs to be 16-bit aligned for the preliminary parsing scan.
 26828  
 26829  	// var c16workspace [3000]Tuint32_t at bp, 12000
 26830  
 26831  	var cworkspace uintptr
 26832  	var c Tuint32_t
 26833  	var pp Tuint32_t
 26834  	var p uintptr
 26835  	var heap_parsed_pattern uintptr
 26836  	// var loopcount int32 at bp+17748, 4
 26837  
 26838  	var ng uintptr
 26839  	var search_from TPCRE2_SPTR8
 26840  	var p1 int32
 26841  	var groupnumber int32
 26842  	var rcode uintptr
 26843  	var rgroup TPCRE2_SPTR8
 26844  	var ccount uint32
 26845  	var start int32
 26846  	// var rc [8]Trecurse_cache at bp+17800, 128
 26847  
 26848  	var temp uintptr
 26849  	var minminlength int32
 26850  	*(*TBOOL)(unsafe.Pointer(bp + 17744 /* has_lookbehind */)) = DFALSE
 26851  	re = uintptr(0)
 26852  	*(*Tsize_t)(unsafe.Pointer(bp + 17792 /* length */)) = uint64(1)
 26853  	big32count = uint64(0)
 26854  	setflags = Tuint32_t(0)
 26855  	limit_heap = 4294967295
 26856  	limit_match = 4294967295
 26857  	limit_depth = 4294967295
 26858  	newline = 0
 26859  	bsr = 0
 26860  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = 0
 26861  	cworkspace = bp /* c16workspace */
 26862  
 26863  	// -------------- Check arguments and set up the pattern -----------------
 26864  
 26865  	// There must be error code and offset pointers.
 26866  
 26867  	if !(errorptr == uintptr(0) || erroroffset == uintptr(0)) {
 26868  		goto __1
 26869  	}
 26870  	return uintptr(0)
 26871  __1:
 26872  	;
 26873  	*(*int32)(unsafe.Pointer(errorptr)) = ERR0
 26874  	*(*Tsize_t)(unsafe.Pointer(erroroffset)) = uint64(0)
 26875  
 26876  	// There must be a pattern!
 26877  
 26878  	if !(pattern == uintptr(0)) {
 26879  		goto __2
 26880  	}
 26881  
 26882  	*(*int32)(unsafe.Pointer(errorptr)) = ERR16
 26883  	return uintptr(0)
 26884  __2:
 26885  	;
 26886  
 26887  	// A NULL compile context means "use a default context"
 26888  
 26889  	if !(ccontext == uintptr(0)) {
 26890  		goto __3
 26891  	}
 26892  	ccontext = uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8))
 26893  __3:
 26894  	;
 26895  
 26896  	// PCRE2_MATCH_INVALID_UTF implies UTF
 26897  
 26898  	if !(options&DPCRE2_MATCH_INVALID_UTF != Tuint32_t(0)) {
 26899  		goto __4
 26900  	}
 26901  	options = options | DPCRE2_UTF
 26902  __4:
 26903  	;
 26904  
 26905  	// Check that all undefined public option bits are zero.
 26906  
 26907  	if !(options&libc.CplUint32(DPCRE2_ANCHORED|DPCRE2_AUTO_CALLOUT|DPCRE2_CASELESS|DPCRE2_ENDANCHORED|DPCRE2_FIRSTLINE|DPCRE2_LITERAL|DPCRE2_MATCH_INVALID_UTF|DPCRE2_NO_START_OPTIMIZE|DPCRE2_NO_UTF_CHECK|DPCRE2_USE_OFFSET_LIMIT|DPCRE2_UTF|DPCRE2_ALLOW_EMPTY_CLASS|DPCRE2_ALT_BSUX|DPCRE2_ALT_CIRCUMFLEX|DPCRE2_ALT_VERBNAMES|DPCRE2_DOLLAR_ENDONLY|DPCRE2_DOTALL|DPCRE2_DUPNAMES|DPCRE2_EXTENDED|DPCRE2_EXTENDED_MORE|DPCRE2_MATCH_UNSET_BACKREF|DPCRE2_MULTILINE|DPCRE2_NEVER_BACKSLASH_C|DPCRE2_NEVER_UCP|DPCRE2_NEVER_UTF|DPCRE2_NO_AUTO_CAPTURE|DPCRE2_NO_AUTO_POSSESS|DPCRE2_NO_DOTSTAR_ANCHOR|DPCRE2_UCP|DPCRE2_UNGREEDY) != Tuint32_t(0) || (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fextra_options&libc.CplUint32(DPCRE2_EXTRA_MATCH_LINE|DPCRE2_EXTRA_MATCH_WORD|DPCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES|DPCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL|DPCRE2_EXTRA_ESCAPED_CR_IS_LF|DPCRE2_EXTRA_ALT_BSUX|DPCRE2_EXTRA_ALLOW_LOOKAROUND_BSK) != Tuint32_t(0)) {
 26908  		goto __5
 26909  	}
 26910  
 26911  	*(*int32)(unsafe.Pointer(errorptr)) = ERR17
 26912  	return uintptr(0)
 26913  __5:
 26914  	;
 26915  
 26916  	if !(options&DPCRE2_LITERAL != Tuint32_t(0) && (options&libc.CplUint32(DPCRE2_ANCHORED|DPCRE2_AUTO_CALLOUT|DPCRE2_CASELESS|DPCRE2_ENDANCHORED|DPCRE2_FIRSTLINE|DPCRE2_LITERAL|DPCRE2_MATCH_INVALID_UTF|DPCRE2_NO_START_OPTIMIZE|DPCRE2_NO_UTF_CHECK|DPCRE2_USE_OFFSET_LIMIT|DPCRE2_UTF) != Tuint32_t(0) || (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fextra_options&libc.CplUint32(DPCRE2_EXTRA_MATCH_LINE|DPCRE2_EXTRA_MATCH_WORD) != Tuint32_t(0))) {
 26917  		goto __6
 26918  	}
 26919  
 26920  	*(*int32)(unsafe.Pointer(errorptr)) = ERR92
 26921  	return uintptr(0)
 26922  __6:
 26923  	;
 26924  
 26925  	// A zero-terminated pattern is indicated by the special length value
 26926  	// PCRE2_ZERO_TERMINATED. Check for an overlong pattern.
 26927  
 26928  	if !(libc.AssignInt32(&zero_terminated, libc.Bool32(patlen == libc.CplUint64(uint64(0)))) != 0) {
 26929  		goto __7
 26930  	}
 26931  	patlen = X_pcre2_strlen_8(tls, pattern)
 26932  __7:
 26933  	;
 26934  
 26935  	if !(patlen > (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmax_pattern_length) {
 26936  		goto __8
 26937  	}
 26938  
 26939  	*(*int32)(unsafe.Pointer(errorptr)) = ERR88
 26940  	return uintptr(0)
 26941  __8:
 26942  	;
 26943  
 26944  	// From here on, all returns from this function should end up going via the
 26945  	// EXIT label.
 26946  
 26947  	// ------------ Initialize the "static" compile data --------------
 26948  
 26949  	if (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Ftables != uintptr(0) {
 26950  		tables = (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Ftables
 26951  	} else {
 26952  		tables = uintptr(unsafe.Pointer(&X_pcre2_default_tables_8))
 26953  	}
 26954  
 26955  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Flcc = tables + uintptr(Dlcc_offset)     // Individual
 26956  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Ffcc = tables + uintptr(Dfcc_offset)     //   character
 26957  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fcbits = tables + uintptr(Dcbits_offset) //      tables
 26958  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fctypes = tables + uintptr(Dcbits_offset+Dcbit_length)
 26959  
 26960  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fassert_depth = Tuint16_t(0)
 26961  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fbracount = Tuint32_t(0)
 26962  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fcx = ccontext
 26963  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fdupnames = DFALSE
 26964  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fend_pattern = pattern + uintptr(patlen)
 26965  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Ferroroffset = uint64(0)
 26966  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fexternal_flags = Tuint32_t(0)
 26967  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fexternal_options = options
 26968  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fgroupinfo = bp + 12000 /* &stack_groupinfo[0] */
 26969  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fhad_recurse = DFALSE
 26970  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Flastcapture = Tuint32_t(0)
 26971  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fmax_lookbehind = 0
 26972  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fname_entry_size = Tuint16_t(0)
 26973  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fname_table = uintptr(0)
 26974  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnamed_groups = bp + 13024 /* &named_groups[0] */
 26975  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnamed_group_list_size = Tuint32_t(DNAMED_GROUP_LIST_SIZE)
 26976  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnames_found = Tuint16_t(0)
 26977  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fopen_caps = uintptr(0)
 26978  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fparens_depth = Tuint16_t(0)
 26979  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fparsed_pattern = bp + 13344 /* &stack_parsed_pattern[0] */
 26980  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Freq_varyopt = Tuint32_t(0)
 26981  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fstart_code = cworkspace
 26982  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fstart_pattern = pattern
 26983  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fstart_workspace = cworkspace
 26984  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fworkspace_size = uint64(3000 * DLINK_SIZE)
 26985  
 26986  	// Maximum back reference and backref bitmap. The bitmap records up to 31 back
 26987  	// references to help in deciding whether (.*) can be treated as anchored or not.
 26988  
 26989  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Ftop_backref = Tuint32_t(0)
 26990  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fbackref_map = Tuint32_t(0)
 26991  
 26992  	// Escape sequences \1 to \9 are always back references, but as they are only
 26993  	// two characters long, only two elements can be used in the parsed_pattern
 26994  	// vector. The first contains the reference, and we'd like to use the second to
 26995  	// record the offset in the pattern, so that forward references to non-existent
 26996  	// groups can be diagnosed later with an offset. However, on 64-bit systems,
 26997  	// PCRE2_SIZE won't fit. Instead, we have a vector of offsets for the first
 26998  	// occurrence of \1 to \9, indexed by the second parsed_pattern value. All other
 26999  	// references have enough space for the offset to be put into the parsed pattern.
 27000  
 27001  	i = Tuint32_t(0)
 27002  __9:
 27003  	if !(i < Tuint32_t(10)) {
 27004  		goto __11
 27005  	}
 27006  	*(*Tsize_t)(unsafe.Pointer(bp + 17440 + 88 + uintptr(i)*8)) = libc.CplUint64(uint64(0))
 27007  	goto __10
 27008  __10:
 27009  	i++
 27010  	goto __9
 27011  	goto __11
 27012  __11:
 27013  	;
 27014  
 27015  	// --------------- Start looking at the pattern ---------------
 27016  
 27017  	// Unless PCRE2_LITERAL is set, check for global one-time option settings at
 27018  	// the start of the pattern, and remember the offset to the actual regex. With
 27019  	// valgrind support, make the terminator of a zero-terminated pattern
 27020  	// inaccessible. This catches bugs that would otherwise only show up for
 27021  	// non-zero-terminated patterns.
 27022  
 27023  	ptr = pattern
 27024  	skipatstart = Tuint32_t(0)
 27025  
 27026  	if !(options&DPCRE2_LITERAL == Tuint32_t(0)) {
 27027  		goto __12
 27028  	}
 27029  
 27030  __13:
 27031  	if !(patlen-Tsize_t(skipatstart) >= uint64(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(skipatstart)))) == '\050' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(skipatstart+Tuint32_t(1))))) == '\052') {
 27032  		goto __14
 27033  	}
 27034  
 27035  	i = Tuint32_t(0)
 27036  __15:
 27037  	if !(uint64(i) < uint64(unsafe.Sizeof(pso_list))/uint64(unsafe.Sizeof(Tpso{}))) {
 27038  		goto __17
 27039  	}
 27040  
 27041  	p = uintptr(unsafe.Pointer(&pso_list)) + uintptr(i)*16
 27042  
 27043  	if !(patlen-Tsize_t(skipatstart)-uint64(2) >= Tsize_t((*Tpso)(unsafe.Pointer(p)).Flength) && X_pcre2_strncmp_c8_8(tls, ptr+uintptr(skipatstart)+uintptr(2), (*Tpso)(unsafe.Pointer(p)).Fname,
 27044  		uint64((*Tpso)(unsafe.Pointer(p)).Flength)) == 0) {
 27045  		goto __18
 27046  	}
 27047  
 27048  	skipatstart = skipatstart + Tuint32_t(int32((*Tpso)(unsafe.Pointer(p)).Flength)+2)
 27049  	switch int32((*Tpso)(unsafe.Pointer(p)).Ftype) {
 27050  	case PSO_OPT:
 27051  		goto __20
 27052  
 27053  	case PSO_FLG:
 27054  		goto __21
 27055  
 27056  	case PSO_NL:
 27057  		goto __22
 27058  
 27059  	case PSO_BSR:
 27060  		goto __23
 27061  
 27062  	case PSO_LIMM:
 27063  		goto __24
 27064  	case PSO_LIMD:
 27065  		goto __25
 27066  	case PSO_LIMH:
 27067  		goto __26
 27068  	}
 27069  	goto __19
 27070  
 27071  __20:
 27072  	*(*Tuint32_t)(unsafe.Pointer(bp + 17440 + 204)) |= (*Tpso)(unsafe.Pointer(p)).Fvalue
 27073  	goto __19
 27074  
 27075  __21:
 27076  	setflags = setflags | (*Tpso)(unsafe.Pointer(p)).Fvalue
 27077  	goto __19
 27078  
 27079  __22:
 27080  	newline = int32((*Tpso)(unsafe.Pointer(p)).Fvalue)
 27081  	setflags = setflags | Tuint32_t(DPCRE2_NL_SET)
 27082  	goto __19
 27083  
 27084  __23:
 27085  	bsr = int32((*Tpso)(unsafe.Pointer(p)).Fvalue)
 27086  	setflags = setflags | Tuint32_t(DPCRE2_BSR_SET)
 27087  	goto __19
 27088  
 27089  __24:
 27090  __25:
 27091  __26:
 27092  	c = Tuint32_t(0)
 27093  	pp = skipatstart
 27094  	if !!(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(pp)))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(pp)))) <= '\071') {
 27095  		goto __27
 27096  	}
 27097  
 27098  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR60
 27099  	ptr += TPCRE2_SPTR8(pp)
 27100  	goto HAD_EARLY_ERROR
 27101  __27:
 27102  	;
 27103  __28:
 27104  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(pp)))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(pp)))) <= '\071') {
 27105  		goto __29
 27106  	}
 27107  
 27108  	if !(c > 4294967295/uint32(10)-uint32(1)) {
 27109  		goto __30
 27110  	}
 27111  	goto __29
 27112  __30:
 27113  	; // Integer overflow
 27114  	c = c*Tuint32_t(10) + Tuint32_t(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(libc.PostIncUint32(&pp, 1)))))-'\060')
 27115  	goto __28
 27116  __29:
 27117  	;
 27118  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(libc.PostIncUint32(&pp, 1))))) != '\051') {
 27119  		goto __31
 27120  	}
 27121  
 27122  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR60
 27123  	ptr += TPCRE2_SPTR8(pp)
 27124  	goto HAD_EARLY_ERROR
 27125  __31:
 27126  	;
 27127  	if !(int32((*Tpso)(unsafe.Pointer(p)).Ftype) == PSO_LIMH) {
 27128  		goto __32
 27129  	}
 27130  	limit_heap = c
 27131  	goto __33
 27132  __32:
 27133  	if !(int32((*Tpso)(unsafe.Pointer(p)).Ftype) == PSO_LIMM) {
 27134  		goto __34
 27135  	}
 27136  	limit_match = c
 27137  	goto __35
 27138  __34:
 27139  	limit_depth = c
 27140  __35:
 27141  	;
 27142  __33:
 27143  	;
 27144  	skipatstart = skipatstart + (pp - skipatstart)
 27145  	goto __19
 27146  __19:
 27147  	;
 27148  	goto __17 // Out of the table scan loop
 27149  __18:
 27150  	;
 27151  	goto __16
 27152  __16:
 27153  	i++
 27154  	goto __15
 27155  	goto __17
 27156  __17:
 27157  	;
 27158  	if !(uint64(i) >= uint64(unsafe.Sizeof(pso_list))/uint64(unsafe.Sizeof(Tpso{}))) {
 27159  		goto __36
 27160  	}
 27161  	goto __14
 27162  __36:
 27163  	; // Out of pso loop
 27164  	goto __13
 27165  __14:
 27166  	;
 27167  __12:
 27168  	;
 27169  
 27170  	// End of pattern-start options; advance to start of real regex.
 27171  
 27172  	ptr += TPCRE2_SPTR8(skipatstart)
 27173  
 27174  	// Can't support UTF or UCP if PCRE2 was built without Unicode support.
 27175  
 27176  	// Check UTF. We have the original options in 'options', with that value as
 27177  	// modified by (*UTF) etc in cb->external_options. The extra option
 27178  	// PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES is not permitted in UTF-16 mode because the
 27179  	// surrogate code points cannot be represented in UTF-16.
 27180  
 27181  	utf = libc.Bool32((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fexternal_options&DPCRE2_UTF != Tuint32_t(0))
 27182  	if !(utf != 0) {
 27183  		goto __37
 27184  	}
 27185  
 27186  	if !(options&DPCRE2_NEVER_UTF != Tuint32_t(0)) {
 27187  		goto __38
 27188  	}
 27189  
 27190  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR74
 27191  	goto HAD_EARLY_ERROR
 27192  __38:
 27193  	;
 27194  	if !(options&DPCRE2_NO_UTF_CHECK == Tuint32_t(0) && libc.AssignPtrInt32(bp+17768, X_pcre2_valid_utf_8(tls, pattern, patlen, erroroffset)) != 0) {
 27195  		goto __39
 27196  	}
 27197  	goto HAD_ERROR
 27198  __39:
 27199  	; // Offset was set by valid_utf()
 27200  
 27201  __37:
 27202  	;
 27203  
 27204  	// Check UCP lockout.
 27205  
 27206  	ucp = libc.Bool32((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fexternal_options&DPCRE2_UCP != Tuint32_t(0))
 27207  	if !(ucp != 0 && (*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fexternal_options&DPCRE2_NEVER_UCP != Tuint32_t(0)) {
 27208  		goto __40
 27209  	}
 27210  
 27211  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR75
 27212  	goto HAD_EARLY_ERROR
 27213  __40:
 27214  	;
 27215  
 27216  	// Process the BSR setting.
 27217  
 27218  	if !(bsr == 0) {
 27219  		goto __41
 27220  	}
 27221  	bsr = int32((*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fbsr_convention)
 27222  __41:
 27223  	;
 27224  
 27225  	// Process the newline setting.
 27226  
 27227  	if !(newline == 0) {
 27228  		goto __42
 27229  	}
 27230  	newline = int32((*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fnewline_convention)
 27231  __42:
 27232  	;
 27233  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnltype = Tuint32_t(DNLTYPE_FIXED)
 27234  	switch newline {
 27235  	case DPCRE2_NEWLINE_CR:
 27236  		goto __44
 27237  
 27238  	case DPCRE2_NEWLINE_LF:
 27239  		goto __45
 27240  
 27241  	case DPCRE2_NEWLINE_NUL:
 27242  		goto __46
 27243  
 27244  	case DPCRE2_NEWLINE_CRLF:
 27245  		goto __47
 27246  
 27247  	case DPCRE2_NEWLINE_ANY:
 27248  		goto __48
 27249  
 27250  	case DPCRE2_NEWLINE_ANYCRLF:
 27251  		goto __49
 27252  
 27253  	default:
 27254  		goto __50
 27255  	}
 27256  	goto __43
 27257  
 27258  __44:
 27259  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnllen = Tuint32_t(1)
 27260  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 17440 + 272)) = TPCRE2_UCHAR8('\015')
 27261  	goto __43
 27262  
 27263  __45:
 27264  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnllen = Tuint32_t(1)
 27265  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 17440 + 272)) = TPCRE2_UCHAR8('\012')
 27266  	goto __43
 27267  
 27268  __46:
 27269  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnllen = Tuint32_t(1)
 27270  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 17440 + 272)) = TPCRE2_UCHAR8(0)
 27271  	goto __43
 27272  
 27273  __47:
 27274  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnllen = Tuint32_t(2)
 27275  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 17440 + 272)) = TPCRE2_UCHAR8('\015')
 27276  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 17440 + 272 + 1)) = TPCRE2_UCHAR8('\012')
 27277  	goto __43
 27278  
 27279  __48:
 27280  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnltype = Tuint32_t(DNLTYPE_ANY)
 27281  	goto __43
 27282  
 27283  __49:
 27284  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnltype = Tuint32_t(DNLTYPE_ANYCRLF)
 27285  	goto __43
 27286  
 27287  __50:
 27288  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR56
 27289  	goto HAD_EARLY_ERROR
 27290  __43:
 27291  	;
 27292  
 27293  	// Pre-scan the pattern to do two things: (1) Discover the named groups and
 27294  	// their numerical equivalents, so that this information is always available for
 27295  	// the remaining processing. (2) At the same time, parse the pattern and put a
 27296  	// processed version into the parsed_pattern vector. This has escapes interpreted
 27297  	// and comments removed (amongst other things).
 27298  	//
 27299  	// In all but one case, when PCRE2_AUTO_CALLOUT is not set, the number of unsigned
 27300  	// 32-bit ints in the parsed pattern is bounded by the length of the pattern plus
 27301  	// one (for the terminator) plus four if PCRE2_EXTRA_WORD or PCRE2_EXTRA_LINE is
 27302  	// set. The exceptional case is when running in 32-bit, non-UTF mode, when literal
 27303  	// characters greater than META_END (0x80000000) have to be coded as two units. In
 27304  	// this case, therefore, we scan the pattern to check for such values.
 27305  
 27306  	// Ensure that the parsed pattern buffer is big enough. When PCRE2_AUTO_CALLOUT
 27307  	// is set we have to assume a numerical callout (4 elements) for each character
 27308  	// plus one at the end. This is overkill, but memory is plentiful these days. For
 27309  	// many smaller patterns the vector on the stack (which was set up above) can be
 27310  	// used.
 27311  
 27312  	parsed_size_needed = patlen - Tsize_t(skipatstart) + big32count
 27313  
 27314  	if !((*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fextra_options&(DPCRE2_EXTRA_MATCH_WORD|DPCRE2_EXTRA_MATCH_LINE) != Tuint32_t(0)) {
 27315  		goto __51
 27316  	}
 27317  	parsed_size_needed = parsed_size_needed + uint64(4)
 27318  __51:
 27319  	;
 27320  
 27321  	if !(options&DPCRE2_AUTO_CALLOUT != Tuint32_t(0)) {
 27322  		goto __52
 27323  	}
 27324  	parsed_size_needed = (parsed_size_needed + uint64(1)) * uint64(5)
 27325  __52:
 27326  	;
 27327  
 27328  	if !(parsed_size_needed >= uint64(DPARSED_PATTERN_DEFAULT_SIZE)) {
 27329  		goto __53
 27330  	}
 27331  
 27332  	heap_parsed_pattern = (*struct {
 27333  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 27334  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmalloc})).f(tls,
 27335  		(parsed_size_needed+uint64(1))*Tsize_t(unsafe.Sizeof(Tuint32_t(0))), (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 27336  	if !(heap_parsed_pattern == uintptr(0)) {
 27337  		goto __54
 27338  	}
 27339  
 27340  	*(*int32)(unsafe.Pointer(errorptr)) = ERR21
 27341  	goto EXIT
 27342  __54:
 27343  	;
 27344  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fparsed_pattern = heap_parsed_pattern
 27345  __53:
 27346  	;
 27347  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fparsed_pattern_end = (*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fparsed_pattern + uintptr(parsed_size_needed)*4 + uintptr(1)*4
 27348  
 27349  	// Do the parsing scan.
 27350  
 27351  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = parse_regex(tls, ptr, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fexternal_options, bp+17744, bp+17440)
 27352  	if !(*(*int32)(unsafe.Pointer(bp + 17768)) != 0) {
 27353  		goto __55
 27354  	}
 27355  	goto HAD_CB_ERROR
 27356  __55:
 27357  	;
 27358  
 27359  	// Workspace is needed to remember information about numbered groups: whether a
 27360  	// group can match an empty string and what its fixed length is. This is done to
 27361  	// avoid the possibility of recursive references causing very long compile times
 27362  	// when checking these features. Unnumbered groups do not have this exposure since
 27363  	// they cannot be referenced. We use an indexed vector for this purpose. If there
 27364  	// are sufficiently few groups, the default vector on the stack, as set up above,
 27365  	// can be used. Otherwise we have to get/free a special vector. The vector must be
 27366  	// initialized to zero.
 27367  
 27368  	if !((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fbracount >= Tuint32_t(DGROUPINFO_DEFAULT_SIZE)) {
 27369  		goto __56
 27370  	}
 27371  
 27372  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fgroupinfo = (*struct {
 27373  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 27374  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmalloc})).f(tls,
 27375  		uint64((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fbracount+Tuint32_t(1))*uint64(unsafe.Sizeof(Tuint32_t(0))), (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 27376  	if !((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fgroupinfo == uintptr(0)) {
 27377  		goto __57
 27378  	}
 27379  
 27380  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR21
 27381  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Ferroroffset = uint64(0)
 27382  	goto HAD_CB_ERROR
 27383  __57:
 27384  	;
 27385  __56:
 27386  	;
 27387  	libc.X__builtin___memset_chk(tls, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fgroupinfo, 0, uint64((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fbracount+Tuint32_t(1))*uint64(unsafe.Sizeof(Tuint32_t(0))), libc.X__builtin_object_size(tls, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fgroupinfo, 0))
 27388  
 27389  	// If there were any lookbehinds, scan the parsed pattern to figure out their
 27390  	// lengths.
 27391  
 27392  	if !(*(*TBOOL)(unsafe.Pointer(bp + 17744)) != 0) {
 27393  		goto __58
 27394  	}
 27395  
 27396  	*(*int32)(unsafe.Pointer(bp + 17748 /* loopcount */)) = 0
 27397  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = check_lookbehinds(tls, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fparsed_pattern, uintptr(0), uintptr(0), bp+17440, bp+17748)
 27398  	if !(*(*int32)(unsafe.Pointer(bp + 17768)) != 0) {
 27399  		goto __59
 27400  	}
 27401  	goto HAD_CB_ERROR
 27402  __59:
 27403  	;
 27404  __58:
 27405  	;
 27406  
 27407  	// For debugging, there is a function that shows the parsed data vector.
 27408  
 27409  	// For debugging capturing information this code can be enabled.
 27410  
 27411  	// Pretend to compile the pattern while actually just accumulating the amount
 27412  	// of memory required in the 'length' variable. This behaviour is triggered by
 27413  	// passing a non-NULL final argument to compile_regex(). We pass a block of
 27414  	// workspace (cworkspace) for it to compile parts of the pattern into; the
 27415  	// compiled code is discarded when it is no longer needed, so hopefully this
 27416  	// workspace will never overflow, though there is a test for its doing so.
 27417  	//
 27418  	// On error, errorcode will be set non-zero, so we don't need to look at the
 27419  	// result of the function. The initial options have been put into the cb block,
 27420  	// but we still have to pass a separate options variable (the first argument)
 27421  	// because the options may change as the pattern is processed.
 27422  
 27423  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Ferroroffset = patlen // For any subsequent errors that do not set it
 27424  	*(*uintptr)(unsafe.Pointer(bp + 17760 /* pptr */)) = (*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fparsed_pattern
 27425  	*(*uintptr)(unsafe.Pointer(bp + 17752 /* code */)) = cworkspace
 27426  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 17752 /* code */)))) = OP_BRA
 27427  
 27428  	compile_regex(tls, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fexternal_options, bp+17752, bp+17760, bp+17768, uint32(0), bp+17772,
 27429  		bp+17776, bp+17780, bp+17784, uintptr(0), bp+17440, bp+17792)
 27430  
 27431  	if !(*(*int32)(unsafe.Pointer(bp + 17768)) != 0) {
 27432  		goto __60
 27433  	}
 27434  	goto HAD_CB_ERROR
 27435  __60:
 27436  	; // Offset is in cb.erroroffset
 27437  
 27438  	// This should be caught in compile_regex(), but just in case...
 27439  
 27440  	if !(*(*Tsize_t)(unsafe.Pointer(bp + 17792)) > uint64(int32(1)<<16)) {
 27441  		goto __61
 27442  	}
 27443  
 27444  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR20
 27445  	goto HAD_CB_ERROR
 27446  __61:
 27447  	;
 27448  
 27449  	// Compute the size of, and then get and initialize, the data block for storing
 27450  	// the compiled pattern and names table. Integer overflow should no longer be
 27451  	// possible because nowadays we limit the maximum value of cb.names_found and
 27452  	// cb.name_entry_size.
 27453  
 27454  	re_blocksize = uint64(unsafe.Sizeof(Tpcre2_real_code_8{})) + (*(*Tsize_t)(unsafe.Pointer(bp + 17792))+Tsize_t((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fnames_found)*Tsize_t((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fname_entry_size))*uint64(DPCRE2_CODE_UNIT_WIDTH/8)
 27455  	re = (*struct {
 27456  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 27457  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmalloc})).f(tls, re_blocksize, (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 27458  	if !(re == uintptr(0)) {
 27459  		goto __62
 27460  	}
 27461  
 27462  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR21
 27463  	goto HAD_CB_ERROR
 27464  __62:
 27465  	;
 27466  
 27467  	// The compiler may put padding at the end of the pcre2_real_code structure in
 27468  	// order to round it up to a multiple of 4 or 8 bytes. This means that when a
 27469  	// compiled pattern is copied (for example, when serialized) undefined bytes are
 27470  	// read, and this annoys debuggers such as valgrind. To avoid this, we explicitly
 27471  	// write to the last 8 bytes of the structure before setting the fields.
 27472  
 27473  	libc.X__builtin___memset_chk(tls, re+uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{})))-uintptr(8), 0, uint64(8), libc.X__builtin_object_size(tls, re+uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{})))-uintptr(8), 0))
 27474  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmemctl = (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl
 27475  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables = tables
 27476  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fexecutable_jit = uintptr(0)
 27477  	libc.X__builtin___memset_chk(tls, re+40, 0, uint64(32)*uint64(unsafe.Sizeof(Tuint8_t(0))), libc.X__builtin_object_size(tls, re+40, 0))
 27478  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fblocksize = re_blocksize
 27479  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmagic_number = uint32(DMAGIC_NUMBER)
 27480  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fcompile_options = options
 27481  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options = (*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fexternal_options
 27482  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fextra_options = (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fextra_options
 27483  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags = Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8) | (*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fexternal_flags | setflags
 27484  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_heap = limit_heap
 27485  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_match = limit_match
 27486  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_depth = limit_depth
 27487  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ffirst_codeunit = Tuint32_t(0)
 27488  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flast_codeunit = Tuint32_t(0)
 27489  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fbsr_convention = Tuint16_t(bsr)
 27490  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fnewline_convention = Tuint16_t(newline)
 27491  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmax_lookbehind = Tuint16_t(0)
 27492  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fminlength = Tuint16_t(0)
 27493  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_bracket = Tuint16_t(0)
 27494  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_backref = Tuint16_t(0)
 27495  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size = (*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fname_entry_size
 27496  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count = (*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnames_found
 27497  
 27498  	// The basic block is immediately followed by the name table, and the compiled
 27499  	// code follows after that.
 27500  
 27501  	codestart = re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{}))) + uintptr(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size)*int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count))
 27502  
 27503  	// Update the compile data block for the actual compile. The starting points of
 27504  	// the name/number translation table and of the code are passed around in the
 27505  	// compile data block. The start/end pattern and initial options are already set
 27506  	// from the pre-compile phase, as is the name_entry_size field.
 27507  
 27508  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fparens_depth = Tuint16_t(0)
 27509  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fassert_depth = Tuint16_t(0)
 27510  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Flastcapture = Tuint32_t(0)
 27511  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fname_table = re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{})))
 27512  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fstart_code = codestart
 27513  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Freq_varyopt = Tuint32_t(0)
 27514  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fhad_accept = DFALSE
 27515  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fhad_pruneorskip = DFALSE
 27516  	(*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fopen_caps = uintptr(0)
 27517  
 27518  	// If any named groups were found, create the name/number table from the list
 27519  	// created in the pre-pass.
 27520  
 27521  	if !(int32((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fnames_found) > 0) {
 27522  		goto __63
 27523  	}
 27524  
 27525  	ng = (*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fnamed_groups
 27526  	i = Tuint32_t(0)
 27527  __64:
 27528  	if !(i < Tuint32_t((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fnames_found)) {
 27529  		goto __66
 27530  	}
 27531  	add_name_to_table(tls, bp+17440, (*Tnamed_group_8)(unsafe.Pointer(ng)).Fname, int32((*Tnamed_group_8)(unsafe.Pointer(ng)).Flength), (*Tnamed_group_8)(unsafe.Pointer(ng)).Fnumber, i)
 27532  	goto __65
 27533  __65:
 27534  	i++
 27535  	ng += 16
 27536  	goto __64
 27537  	goto __66
 27538  __66:
 27539  	;
 27540  __63:
 27541  	;
 27542  
 27543  	// Set up a starting, non-extracting bracket, then compile the expression. On
 27544  	// error, errorcode will be set non-zero, so we don't need to look at the result
 27545  	// of the function here.
 27546  
 27547  	*(*uintptr)(unsafe.Pointer(bp + 17760 /* pptr */)) = (*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fparsed_pattern
 27548  	*(*uintptr)(unsafe.Pointer(bp + 17752 /* code */)) = codestart
 27549  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 17752 /* code */)))) = OP_BRA
 27550  	regexrc = compile_regex(tls, (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options, bp+17752, bp+17760, bp+17768, uint32(0),
 27551  		bp+17772, bp+17776, bp+17780, bp+17784, uintptr(0), bp+17440, uintptr(0))
 27552  	if !(regexrc < 0) {
 27553  		goto __67
 27554  	}
 27555  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_MATCH_EMPTY)
 27556  __67:
 27557  	;
 27558  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_bracket = Tuint16_t((*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fbracount)
 27559  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_backref = Tuint16_t((*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Ftop_backref)
 27560  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmax_lookbehind = Tuint16_t((*Tcompile_block_8)(unsafe.Pointer(bp + 17440 /* &cb */)).Fmax_lookbehind)
 27561  
 27562  	if !((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fhad_accept != 0) {
 27563  		goto __68
 27564  	}
 27565  
 27566  	*(*Tuint32_t)(unsafe.Pointer(bp + 17780 /* reqcu */)) = Tuint32_t(0) // Must disable after (*ACCEPT)
 27567  	*(*Tuint32_t)(unsafe.Pointer(bp + 17784 /* reqcuflags */)) = DREQ_NONE
 27568  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_HASACCEPT) // Disables minimum length
 27569  __68:
 27570  	;
 27571  
 27572  	// Fill in the final opcode and check for disastrous overflow. If no overflow,
 27573  	// but the estimated length exceeds the really used length, adjust the value of
 27574  	// re->blocksize, and if valgrind support is configured, mark the extra allocated
 27575  	// memory as unaddressable, so that any out-of-bound reads can be detected.
 27576  
 27577  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*uintptr)(unsafe.Pointer(bp + 17752 /* code */)), 1))) = OP_END
 27578  	usedlength = Tsize_t((int64(*(*uintptr)(unsafe.Pointer(bp + 17752))) - int64(codestart)) / 1)
 27579  	if !(usedlength > *(*Tsize_t)(unsafe.Pointer(bp + 17792))) {
 27580  		goto __69
 27581  	}
 27582  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR23
 27583  	goto __70
 27584  __69:
 27585  
 27586  	*(*Tsize_t)(unsafe.Pointer(re + 72)) -= (*(*Tsize_t)(unsafe.Pointer(bp + 17792)) - usedlength) * uint64(DPCRE2_CODE_UNIT_WIDTH/8)
 27587  __70:
 27588  	;
 27589  
 27590  	// Scan the pattern for recursion/subroutine calls and convert the group
 27591  	// numbers into offsets. Maintain a small cache so that repeated groups containing
 27592  	// recursions are efficiently handled.
 27593  
 27594  	if !(*(*int32)(unsafe.Pointer(bp + 17768)) == 0 && (*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fhad_recurse != 0) {
 27595  		goto __71
 27596  	}
 27597  
 27598  	ccount = uint32(0)
 27599  	start = DRSCAN_CACHE_SIZE
 27600  
 27601  	rcode = find_recurse(tls, codestart, utf)
 27602  __72:
 27603  	if !(rcode != uintptr(0)) {
 27604  		goto __74
 27605  	}
 27606  
 27607  	groupnumber = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(rcode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(rcode + 2)))))
 27608  	if !(groupnumber == 0) {
 27609  		goto __75
 27610  	}
 27611  	rgroup = codestart
 27612  	goto __76
 27613  __75:
 27614  
 27615  	search_from = codestart
 27616  	rgroup = uintptr(0)
 27617  	i = Tuint32_t(0)
 27618  	p1 = start
 27619  __77:
 27620  	if !(i < ccount) {
 27621  		goto __79
 27622  	}
 27623  
 27624  	if !(groupnumber == (*Trecurse_cache)(unsafe.Pointer(bp+17800+uintptr(p1)*16)).Fgroupnumber) {
 27625  		goto __80
 27626  	}
 27627  
 27628  	rgroup = (*Trecurse_cache)(unsafe.Pointer(bp + 17800 + uintptr(p1)*16)).Fgroup
 27629  	goto __79
 27630  __80:
 27631  	;
 27632  
 27633  	// Group n+1 must always start to the right of group n, so we can save
 27634  	//         search time below when the new group number is greater than any of the
 27635  	//         previously found groups.
 27636  
 27637  	if !(groupnumber > (*Trecurse_cache)(unsafe.Pointer(bp+17800+uintptr(p1)*16)).Fgroupnumber) {
 27638  		goto __81
 27639  	}
 27640  	search_from = (*Trecurse_cache)(unsafe.Pointer(bp + 17800 + uintptr(p1)*16)).Fgroup
 27641  __81:
 27642  	;
 27643  	goto __78
 27644  __78:
 27645  	i++
 27646  	p1 = (p1 + 1) & 7
 27647  	goto __77
 27648  	goto __79
 27649  __79:
 27650  	;
 27651  
 27652  	if !(rgroup == uintptr(0)) {
 27653  		goto __82
 27654  	}
 27655  
 27656  	rgroup = X_pcre2_find_bracket_8(tls, search_from, utf, groupnumber)
 27657  	if !(rgroup == uintptr(0)) {
 27658  		goto __83
 27659  	}
 27660  
 27661  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR53
 27662  	goto __74
 27663  __83:
 27664  	;
 27665  	if !(libc.PreDecInt32(&start, 1) < 0) {
 27666  		goto __84
 27667  	}
 27668  	start = DRSCAN_CACHE_SIZE - 1
 27669  __84:
 27670  	;
 27671  	(*Trecurse_cache)(unsafe.Pointer(bp + 17800 + uintptr(start)*16)).Fgroupnumber = groupnumber
 27672  	(*Trecurse_cache)(unsafe.Pointer(bp + 17800 + uintptr(start)*16)).Fgroup = rgroup
 27673  	if !(ccount < uint32(DRSCAN_CACHE_SIZE)) {
 27674  		goto __85
 27675  	}
 27676  	ccount++
 27677  __85:
 27678  	;
 27679  __82:
 27680  	;
 27681  __76:
 27682  	;
 27683  
 27684  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(rcode + 1)) = TPCRE2_UCHAR8((int64(rgroup) - int64(codestart)) / 1 >> 8)
 27685  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(rcode + 2)) = TPCRE2_UCHAR8((int64(rgroup) - int64(codestart)) / 1 & int64(255))
 27686  	goto __73
 27687  __73:
 27688  	rcode = find_recurse(tls, rcode+uintptr(1)+uintptr(DLINK_SIZE), utf)
 27689  	goto __72
 27690  	goto __74
 27691  __74:
 27692  	;
 27693  __71:
 27694  	;
 27695  
 27696  	// In rare debugging situations we sometimes need to look at the compiled code
 27697  	// at this stage.
 27698  
 27699  	// Unless disabled, check whether any single character iterators can be
 27700  	// auto-possessified. The function overwrites the appropriate opcode values, so
 27701  	// the type of the pointer must be cast. NOTE: the intermediate variable "temp" is
 27702  	// used in this code because at least one compiler gives a warning about loss of
 27703  	// "const" attribute if the cast (PCRE2_UCHAR *)codestart is used directly in the
 27704  	// function call.
 27705  
 27706  	if !(*(*int32)(unsafe.Pointer(bp + 17768)) == 0 && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_NO_AUTO_POSSESS == Tuint32_t(0)) {
 27707  		goto __86
 27708  	}
 27709  
 27710  	temp = codestart
 27711  	if !(X_pcre2_auto_possessify_8(tls, temp, bp+17440) != 0) {
 27712  		goto __87
 27713  	}
 27714  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR80
 27715  __87:
 27716  	;
 27717  __86:
 27718  	;
 27719  
 27720  	// Failed to compile, or error while post-processing.
 27721  
 27722  	if !(*(*int32)(unsafe.Pointer(bp + 17768)) != 0) {
 27723  		goto __88
 27724  	}
 27725  	goto HAD_CB_ERROR
 27726  __88:
 27727  	;
 27728  
 27729  	// Successful compile. If the anchored option was not passed, set it if
 27730  	// we can determine that the pattern is anchored by virtue of ^ characters or \A
 27731  	// or anything else, such as starting with non-atomic .* when DOTALL is set and
 27732  	// there are no occurrences of *PRUNE or *SKIP (though there is an option to
 27733  	// disable this case).
 27734  
 27735  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_ANCHORED == Tuint32_t(0) && is_anchored(tls, codestart, uint32(0), bp+17440, 0, DFALSE) != 0) {
 27736  		goto __89
 27737  	}
 27738  	*(*Tuint32_t)(unsafe.Pointer(re + 88)) |= DPCRE2_ANCHORED
 27739  __89:
 27740  	;
 27741  
 27742  	// Set up the first code unit or startline flag, the required code unit, and
 27743  	// then study the pattern. This code need not be obeyed if PCRE2_NO_START_OPTIMIZE
 27744  	// is set, as the data it would create will not be used. Note that a first code
 27745  	// unit (but not the startline flag) is useful for anchored patterns because it
 27746  	// can still give a quick "no match" and also avoid searching for a last code
 27747  	// unit.
 27748  
 27749  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_NO_START_OPTIMIZE == Tuint32_t(0)) {
 27750  		goto __90
 27751  	}
 27752  
 27753  	minminlength = 0 // For minimal minlength from first/required CU
 27754  
 27755  	// If we do not have a first code unit, see if there is one that is asserted
 27756  	//   (these are not saved during the compile because they can cause conflicts with
 27757  	//   actual literals that follow).
 27758  
 27759  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 17776)) >= DREQ_NONE) {
 27760  		goto __91
 27761  	}
 27762  	*(*Tuint32_t)(unsafe.Pointer(bp + 17772 /* firstcu */)) = find_firstassertedcu(tls, codestart, bp+17776, uint32(0))
 27763  __91:
 27764  	;
 27765  
 27766  	// Save the data for a first code unit. The existence of one means the
 27767  	//   minimum length must be at least 1.
 27768  
 27769  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 17776)) < DREQ_NONE) {
 27770  		goto __92
 27771  	}
 27772  
 27773  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ffirst_codeunit = *(*Tuint32_t)(unsafe.Pointer(bp + 17772 /* firstcu */))
 27774  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_FIRSTSET)
 27775  	minminlength++
 27776  
 27777  	// Handle caseless first code units.
 27778  
 27779  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 17776))&DREQ_CASELESS != Tuint32_t(0)) {
 27780  		goto __94
 27781  	}
 27782  
 27783  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 17772)) < Tuint32_t(128) || !(utf != 0) && !(ucp != 0) && *(*Tuint32_t)(unsafe.Pointer(bp + 17772)) < Tuint32_t(255)) {
 27784  		goto __95
 27785  	}
 27786  
 27787  	if !(Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Ffcc + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 17772)))))) != *(*Tuint32_t)(unsafe.Pointer(bp + 17772))) {
 27788  		goto __97
 27789  	}
 27790  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_FIRSTCASELESS)
 27791  __97:
 27792  	;
 27793  	goto __96
 27794  __95:
 27795  	if !(ucp != 0 && !(utf != 0) && Tuint32_t(int32(*(*Tuint32_t)(unsafe.Pointer(bp + 17772)))+(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(bp + 17772)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(bp + 17772)))%DUCD_BLOCK_SIZE])*12)).Fother_case) != *(*Tuint32_t)(unsafe.Pointer(bp + 17772))) {
 27796  		goto __98
 27797  	}
 27798  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_FIRSTCASELESS)
 27799  __98:
 27800  	;
 27801  __96:
 27802  	;
 27803  __94:
 27804  	;
 27805  	goto __93
 27806  __92:
 27807  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_ANCHORED == Tuint32_t(0) && is_startline(tls, codestart, uint32(0), bp+17440, 0, DFALSE) != 0) {
 27808  		goto __99
 27809  	}
 27810  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_STARTLINE)
 27811  __99:
 27812  	;
 27813  __93:
 27814  	;
 27815  
 27816  	// Handle the "required code unit", if one is set. In the UTF case we can
 27817  	//   increment the minimum minimum length only if we are sure this really is a
 27818  	//   different character and not a non-starting code unit of the first character,
 27819  	//   because the minimum length count is in characters, not code units.
 27820  
 27821  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 17784)) < DREQ_NONE) {
 27822  		goto __100
 27823  	}
 27824  
 27825  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UTF == Tuint32_t(0) || *(*Tuint32_t)(unsafe.Pointer(bp + 17776)) >= DREQ_NONE || *(*Tuint32_t)(unsafe.Pointer(bp + 17772))&Tuint32_t(0x80) == Tuint32_t(0) || *(*Tuint32_t)(unsafe.Pointer(bp + 17780))&Tuint32_t(0x80) == Tuint32_t(0)) {
 27826  		goto __101
 27827  	} /* Req is ASCII */
 27828  
 27829  	minminlength++
 27830  __101:
 27831  	;
 27832  
 27833  	// In the case of an anchored pattern, set up the value only if it follows
 27834  	//     a variable length item in the pattern.
 27835  
 27836  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_ANCHORED == Tuint32_t(0) || *(*Tuint32_t)(unsafe.Pointer(bp + 17784))&DREQ_VARY != Tuint32_t(0)) {
 27837  		goto __102
 27838  	}
 27839  
 27840  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flast_codeunit = *(*Tuint32_t)(unsafe.Pointer(bp + 17780 /* reqcu */))
 27841  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_LASTSET)
 27842  
 27843  	// Handle caseless required code units as for first code units (above).
 27844  
 27845  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 17784))&DREQ_CASELESS != Tuint32_t(0)) {
 27846  		goto __103
 27847  	}
 27848  
 27849  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 17780)) < Tuint32_t(128) || !(utf != 0) && !(ucp != 0) && *(*Tuint32_t)(unsafe.Pointer(bp + 17780)) < Tuint32_t(255)) {
 27850  		goto __104
 27851  	}
 27852  
 27853  	if !(Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Ffcc + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 17780)))))) != *(*Tuint32_t)(unsafe.Pointer(bp + 17780))) {
 27854  		goto __106
 27855  	}
 27856  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_LASTCASELESS)
 27857  __106:
 27858  	;
 27859  	goto __105
 27860  __104:
 27861  	if !(ucp != 0 && !(utf != 0) && Tuint32_t(int32(*(*Tuint32_t)(unsafe.Pointer(bp + 17780)))+(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(bp + 17780)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(bp + 17780)))%DUCD_BLOCK_SIZE])*12)).Fother_case) != *(*Tuint32_t)(unsafe.Pointer(bp + 17780))) {
 27862  		goto __107
 27863  	}
 27864  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= Tuint32_t(DPCRE2_LASTCASELESS)
 27865  __107:
 27866  	;
 27867  __105:
 27868  	;
 27869  __103:
 27870  	;
 27871  __102:
 27872  	;
 27873  __100:
 27874  	;
 27875  
 27876  	// Study the compiled pattern to set up information such as a bitmap of
 27877  	//   starting code units and a minimum matching length.
 27878  
 27879  	if !(X_pcre2_study_8(tls, re) != 0) {
 27880  		goto __108
 27881  	}
 27882  
 27883  	*(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */)) = ERR31
 27884  	goto HAD_CB_ERROR
 27885  __108:
 27886  	;
 27887  
 27888  	// If study() set a bitmap of starting code units, it implies a minimum
 27889  	//   length of at least one.
 27890  
 27891  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTMAPSET) != Tuint32_t(0) && minminlength == 0) {
 27892  		goto __109
 27893  	}
 27894  	minminlength = 1
 27895  __109:
 27896  	;
 27897  
 27898  	// If the minimum length set (or not set) by study() is less than the minimum
 27899  	//   implied by required code units, override it.
 27900  
 27901  	if !(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fminlength) < minminlength) {
 27902  		goto __110
 27903  	}
 27904  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fminlength = Tuint16_t(minminlength)
 27905  __110:
 27906  	;
 27907  __90:
 27908  	; // End of start-of-match optimizations.
 27909  
 27910  	// Control ends up here in all cases. When running under valgrind, make a
 27911  	// pattern's terminating zero defined again. If memory was obtained for the parsed
 27912  	// version of the pattern, free it before returning. Also free the list of named
 27913  	// groups if a larger one had to be obtained, and likewise the group information
 27914  	// vector.
 27915  
 27916  EXIT:
 27917  	if !((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fparsed_pattern != bp+13344) {
 27918  		goto __111
 27919  	}
 27920  	(*struct {
 27921  		f func(*libc.TLS, uintptr, uintptr)
 27922  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Ffree})).f(tls, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fparsed_pattern, (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 27923  __111:
 27924  	;
 27925  	if !((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fnamed_group_list_size > Tuint32_t(DNAMED_GROUP_LIST_SIZE)) {
 27926  		goto __112
 27927  	}
 27928  	(*struct {
 27929  		f func(*libc.TLS, uintptr, uintptr)
 27930  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Ffree})).f(tls, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fnamed_groups, (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 27931  __112:
 27932  	;
 27933  	if !((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Fgroupinfo != bp+12000) {
 27934  		goto __113
 27935  	}
 27936  	(*struct {
 27937  		f func(*libc.TLS, uintptr, uintptr)
 27938  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Ffree})).f(tls, (*Tcompile_block_8)(unsafe.Pointer(bp+17440 /* &cb */)).Fgroupinfo, (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 27939  __113:
 27940  	;
 27941  	return re // Will be NULL after an error
 27942  
 27943  	// Errors discovered in parse_regex() set the offset value in the compile
 27944  	// block. Errors discovered before it is called must compute it from the ptr
 27945  	// value. After parse_regex() is called, the offset in the compile block is set to
 27946  	// the end of the pattern, but certain errors in compile_regex() may reset it if
 27947  	// an offset is available in the parsed pattern.
 27948  
 27949  HAD_CB_ERROR:
 27950  	ptr = pattern + uintptr((*Tcompile_block_8)(unsafe.Pointer(bp+17440)).Ferroroffset)
 27951  
 27952  HAD_EARLY_ERROR:
 27953  	*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t((int64(ptr) - int64(pattern)) / 1)
 27954  
 27955  HAD_ERROR:
 27956  	*(*int32)(unsafe.Pointer(errorptr)) = *(*int32)(unsafe.Pointer(bp + 17768 /* errorcode */))
 27957  	Xpcre2_code_free_8(tls, re)
 27958  	re = uintptr(0)
 27959  	goto EXIT
 27960  	return uintptr(0)
 27961  }
 27962  
 27963  // These #undefs are here to enable unity builds with CMake.
 27964  
 27965  // End of pcre2_compile.c
 27966  
 27967  // ************************************************
 27968  //
 27969  //      Perl-Compatible Regular Expressions       *
 27970  //
 27971  
 27972  // PCRE is a library of functions to support regular expressions whose syntax
 27973  // and semantics are as close as possible to those of the Perl 5 language.
 27974  //
 27975  //                        Written by Philip Hazel
 27976  //      Original API code Copyright (c) 1997-2012 University of Cambridge
 27977  //           New API code Copyright (c) 2016-2020 University of Cambridge
 27978  //
 27979  // -----------------------------------------------------------------------------
 27980  // Redistribution and use in source and binary forms, with or without
 27981  // modification, are permitted provided that the following conditions are met:
 27982  //
 27983  //     * Redistributions of source code must retain the above copyright notice,
 27984  //       this list of conditions and the following disclaimer.
 27985  //
 27986  //     * Redistributions in binary form must reproduce the above copyright
 27987  //       notice, this list of conditions and the following disclaimer in the
 27988  //       documentation and/or other materials provided with the distribution.
 27989  //
 27990  //     * Neither the name of the University of Cambridge nor the names of its
 27991  //       contributors may be used to endorse or promote products derived from
 27992  //       this software without specific prior written permission.
 27993  //
 27994  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 27995  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 27996  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 27997  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 27998  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 27999  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 28000  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 28001  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 28002  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 28003  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 28004  // POSSIBILITY OF SUCH DAMAGE.
 28005  // -----------------------------------------------------------------------------
 28006  
 28007  // src/config.h.  Generated from config.h.in by configure.
 28008  // src/config.h.in.  Generated from configure.ac by autoheader.
 28009  
 28010  // PCRE2 is written in Standard C, but there are a few non-standard things it
 28011  // can cope with, allowing it to run on SunOS4 and other "close to standard"
 28012  // systems.
 28013  //
 28014  // In environments that support the GNU autotools, config.h.in is converted into
 28015  // config.h by the "configure" script. In environments that use CMake,
 28016  // config-cmake.in is converted into config.h. If you are going to build PCRE2 "by
 28017  // hand" without using "configure" or CMake, you should copy the distributed
 28018  // config.h.generic to config.h, and edit the macro definitions to be the way you
 28019  // need them. You must then add -DHAVE_CONFIG_H to all of your compile commands,
 28020  // so that config.h is included at the start of every source.
 28021  //
 28022  // Alternatively, you can avoid editing by using -D on the compiler command line
 28023  // to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H,
 28024  // but if you do, default values will be taken from config.h for non-boolean
 28025  // macros that are not defined on the command line.
 28026  //
 28027  // Boolean macros such as HAVE_STDLIB_H and SUPPORT_PCRE2_8 should either be
 28028  // defined (conventionally to 1) for TRUE, and not defined at all for FALSE. All
 28029  // such macros are listed as a commented #undef in config.h.generic. Macros such
 28030  // as MATCH_LIMIT, whose actual value is relevant, have defaults defined, but are
 28031  // surrounded by #ifndef/#endif lines so that the value can be overridden by -D.
 28032  //
 28033  // PCRE2 uses memmove() if HAVE_MEMMOVE is defined; otherwise it uses bcopy() if
 28034  // HAVE_BCOPY is defined. If your system has neither bcopy() nor memmove(), make
 28035  // sure both macros are undefined; an emulation function will then be used.
 28036  
 28037  // By default, the \R escape sequence matches any Unicode line ending
 28038  //    character or sequence of characters. If BSR_ANYCRLF is defined (to any
 28039  //    value), this is changed so that backslash-R matches only CR, LF, or CRLF.
 28040  //    The build-time default can be overridden by the user of PCRE2 at runtime.
 28041  //
 28042  // #undef BSR_ANYCRLF
 28043  
 28044  // Define to any value to disable the use of the z and t modifiers in
 28045  //    formatting settings such as %zu or %td (this is rarely needed).
 28046  // #undef DISABLE_PERCENT_ZT
 28047  
 28048  // If you are compiling for a system that uses EBCDIC instead of ASCII
 28049  //    character codes, define this macro to any value. When EBCDIC is set, PCRE2
 28050  //    assumes that all input strings are in EBCDIC. If you do not define this
 28051  //    macro, PCRE2 will assume input strings are ASCII or UTF-8/16/32 Unicode. It
 28052  //    is not possible to build a version of PCRE2 that supports both EBCDIC and
 28053  //    UTF-8/16/32.
 28054  // #undef EBCDIC
 28055  
 28056  // In an EBCDIC environment, define this macro to any value to arrange for the
 28057  //    NL character to be 0x25 instead of the default 0x15. NL plays the role that
 28058  //    LF does in an ASCII/Unicode environment.
 28059  // #undef EBCDIC_NL25
 28060  
 28061  // Define this if your compiler supports __attribute__((uninitialized))
 28062  
 28063  // Define to 1 if you have the `bcopy' function.
 28064  
 28065  // Define to 1 if you have the <bzlib.h> header file.
 28066  
 28067  // Define to 1 if you have the <dirent.h> header file.
 28068  
 28069  // Define to 1 if you have the <dlfcn.h> header file.
 28070  
 28071  // Define to 1 if you have the <editline/readline.h> header file.
 28072  // #undef HAVE_EDITLINE_READLINE_H
 28073  
 28074  // Define to 1 if you have the <edit/readline/readline.h> header file.
 28075  // #undef HAVE_EDIT_READLINE_READLINE_H
 28076  
 28077  // Define to 1 if you have the <inttypes.h> header file.
 28078  
 28079  // Define to 1 if you have the <limits.h> header file.
 28080  
 28081  // Define to 1 if you have the `memfd_create' function.
 28082  // #undef HAVE_MEMFD_CREATE
 28083  
 28084  // Define to 1 if you have the `memmove' function.
 28085  
 28086  // Define to 1 if you have the <minix/config.h> header file.
 28087  // #undef HAVE_MINIX_CONFIG_H
 28088  
 28089  // Define to 1 if you have the `mkostemp' function.
 28090  
 28091  // Define if you have POSIX threads libraries and header files.
 28092  // #undef HAVE_PTHREAD
 28093  
 28094  // Have PTHREAD_PRIO_INHERIT.
 28095  // #undef HAVE_PTHREAD_PRIO_INHERIT
 28096  
 28097  // Define to 1 if you have the <readline.h> header file.
 28098  // #undef HAVE_READLINE_H
 28099  
 28100  // Define to 1 if you have the <readline/history.h> header file.
 28101  // #undef HAVE_READLINE_HISTORY_H
 28102  
 28103  // Define to 1 if you have the <readline/readline.h> header file.
 28104  // #undef HAVE_READLINE_READLINE_H
 28105  
 28106  // Define to 1 if you have the `realpath' function.
 28107  
 28108  // Define to 1 if you have the `secure_getenv' function.
 28109  // #undef HAVE_SECURE_GETENV
 28110  
 28111  // Define to 1 if you have the <stdint.h> header file.
 28112  
 28113  // Define to 1 if you have the <stdio.h> header file.
 28114  
 28115  // Define to 1 if you have the <stdlib.h> header file.
 28116  
 28117  // Define to 1 if you have the `strerror' function.
 28118  
 28119  // Define to 1 if you have the <strings.h> header file.
 28120  
 28121  // Define to 1 if you have the <string.h> header file.
 28122  
 28123  // Define to 1 if you have the <sys/stat.h> header file.
 28124  
 28125  // Define to 1 if you have the <sys/types.h> header file.
 28126  
 28127  // Define to 1 if you have the <sys/wait.h> header file.
 28128  
 28129  // Define to 1 if you have the <unistd.h> header file.
 28130  
 28131  // Define to 1 if the compiler supports simple visibility declarations.
 28132  
 28133  // Define to 1 if you have the <wchar.h> header file.
 28134  
 28135  // Define to 1 if you have the <windows.h> header file.
 28136  // #undef HAVE_WINDOWS_H
 28137  
 28138  // Define to 1 if you have the <zlib.h> header file.
 28139  
 28140  // This limits the amount of memory that may be used while matching a pattern.
 28141  //    It applies to both pcre2_match() and pcre2_dfa_match(). It does not apply
 28142  //    to JIT matching. The value is in kibibytes (units of 1024 bytes).
 28143  
 28144  // The value of LINK_SIZE determines the number of bytes used to store links
 28145  //    as offsets within the compiled regex. The default is 2, which allows for
 28146  //    compiled patterns up to 65535 code units long. This covers the vast
 28147  //    majority of cases. However, PCRE2 can also be compiled to use 3 or 4 bytes
 28148  //    instead. This allows for longer patterns in extreme cases.
 28149  
 28150  // Define to the sub-directory where libtool stores uninstalled libraries.
 28151  
 28152  // The value of MATCH_LIMIT determines the default number of times the
 28153  //    pcre2_match() function can record a backtrack position during a single
 28154  //    matching attempt. The value is also used to limit a loop counter in
 28155  //    pcre2_dfa_match(). There is a runtime interface for setting a different
 28156  //    limit. The limit exists in order to catch runaway regular expressions that
 28157  //    take for ever to determine that they do not match. The default is set very
 28158  //    large so that it does not accidentally catch legitimate cases.
 28159  
 28160  // The above limit applies to all backtracks, whether or not they are nested.
 28161  //    In some environments it is desirable to limit the nesting of backtracking
 28162  //    (that is, the depth of tree that is searched) more strictly, in order to
 28163  //    restrict the maximum amount of heap memory that is used. The value of
 28164  //    MATCH_LIMIT_DEPTH provides this facility. To have any useful effect, it
 28165  //    must be less than the value of MATCH_LIMIT. The default is to use the same
 28166  //    value as MATCH_LIMIT. There is a runtime method for setting a different
 28167  //    limit. In the case of pcre2_dfa_match(), this limit controls the depth of
 28168  //    the internal nested function calls that are used for pattern recursions,
 28169  //    lookarounds, and atomic groups.
 28170  
 28171  // This limit is parameterized just in case anybody ever wants to change it.
 28172  //    Care must be taken if it is increased, because it guards against integer
 28173  //    overflow caused by enormously large patterns.
 28174  
 28175  // This limit is parameterized just in case anybody ever wants to change it.
 28176  //    Care must be taken if it is increased, because it guards against integer
 28177  //    overflow caused by enormously large patterns.
 28178  
 28179  // Defining NEVER_BACKSLASH_C locks out the use of \C in all patterns.
 28180  // #undef NEVER_BACKSLASH_C
 28181  
 28182  // The value of NEWLINE_DEFAULT determines the default newline character
 28183  //    sequence. PCRE2 client programs can override this by selecting other values
 28184  //    at run time. The valid values are 1 (CR), 2 (LF), 3 (CRLF), 4 (ANY), 5
 28185  //    (ANYCRLF), and 6 (NUL).
 28186  
 28187  // Name of package
 28188  
 28189  // Define to the address where bug reports for this package should be sent.
 28190  
 28191  // Define to the full name of this package.
 28192  
 28193  // Define to the full name and version of this package.
 28194  
 28195  // Define to the one symbol short name of this package.
 28196  
 28197  // Define to the home page for this package.
 28198  
 28199  // Define to the version of this package.
 28200  
 28201  // The value of PARENS_NEST_LIMIT specifies the maximum depth of nested
 28202  //    parentheses (of any kind) in a pattern. This limits the amount of system
 28203  //    stack that is used while compiling a pattern.
 28204  
 28205  // The value of PCRE2GREP_BUFSIZE is the starting size of the buffer used by
 28206  //    pcre2grep to hold parts of the file it is searching. The buffer will be
 28207  //    expanded up to PCRE2GREP_MAX_BUFSIZE if necessary, for files containing
 28208  //    very long lines. The actual amount of memory used by pcre2grep is three
 28209  //    times this number, because it allows for the buffering of "before" and
 28210  //    "after" lines.
 28211  
 28212  // The value of PCRE2GREP_MAX_BUFSIZE specifies the maximum size of the buffer
 28213  //    used by pcre2grep to hold parts of the file it is searching. The actual
 28214  //    amount of memory used by pcre2grep is three times this number, because it
 28215  //    allows for the buffering of "before" and "after" lines.
 28216  
 28217  // to make a symbol visible
 28218  
 28219  // to make a symbol visible
 28220  
 28221  // Define to any value to include debugging code.
 28222  // #undef PCRE2_DEBUG
 28223  
 28224  // to make a symbol visible
 28225  
 28226  // If you are compiling for a system other than a Unix-like system or
 28227  //    Win32, and it needs some magic to be inserted before the definition
 28228  //    of a function that is exported by the library, define this macro to
 28229  //    contain the relevant magic. If you do not define this macro, a suitable
 28230  //     __declspec value is used for Windows systems; in other environments
 28231  //    "extern" is used for a C compiler and "extern C" for a C++ compiler.
 28232  //    This macro apears at the start of every exported function that is part
 28233  //    of the external API. It does not appear on functions that are "external"
 28234  //    in the C sense, but which are internal to the library.
 28235  
 28236  // Define to any value if linking statically (TODO: make nice with Libtool)
 28237  // #undef PCRE2_STATIC
 28238  
 28239  // Define to necessary symbol if this constant uses a non-standard name on
 28240  //    your system.
 28241  // #undef PTHREAD_CREATE_JOINABLE
 28242  
 28243  // Define to any non-zero number to enable support for SELinux compatible
 28244  //    executable memory allocator in JIT. Note that this will have no effect
 28245  //    unless SUPPORT_JIT is also defined.
 28246  // #undef SLJIT_PROT_EXECUTABLE_ALLOCATOR
 28247  
 28248  // Define to 1 if all of the C90 standard headers exist (not just the ones
 28249  //    required in a freestanding environment). This macro is provided for
 28250  //    backward compatibility; new code need not use it.
 28251  
 28252  // Define to any value to enable support for Just-In-Time compiling.
 28253  // #undef SUPPORT_JIT
 28254  
 28255  // Define to any value to allow pcre2grep to be linked with libbz2, so that it
 28256  //    is able to handle .bz2 files.
 28257  // #undef SUPPORT_LIBBZ2
 28258  
 28259  // Define to any value to allow pcre2test to be linked with libedit.
 28260  // #undef SUPPORT_LIBEDIT
 28261  
 28262  // Define to any value to allow pcre2test to be linked with libreadline.
 28263  // #undef SUPPORT_LIBREADLINE
 28264  
 28265  // Define to any value to allow pcre2grep to be linked with libz, so that it
 28266  //    is able to handle .gz files.
 28267  // #undef SUPPORT_LIBZ
 28268  
 28269  // Define to any value to enable callout script support in pcre2grep.
 28270  
 28271  // Define to any value to enable fork support in pcre2grep callout scripts.
 28272  //    This will have no effect unless SUPPORT_PCRE2GREP_CALLOUT is also defined.
 28273  //
 28274  
 28275  // Define to any value to enable JIT support in pcre2grep. Note that this will
 28276  //    have no effect unless SUPPORT_JIT is also defined.
 28277  // #undef SUPPORT_PCRE2GREP_JIT
 28278  
 28279  // Define to any value to enable the 16 bit PCRE2 library.
 28280  // #undef SUPPORT_PCRE2_16
 28281  
 28282  // Define to any value to enable the 32 bit PCRE2 library.
 28283  // #undef SUPPORT_PCRE2_32
 28284  
 28285  // Define to any value to enable the 8 bit PCRE2 library.
 28286  
 28287  // Define to any value to enable support for Unicode and UTF encoding. This
 28288  //    will work even in an EBCDIC environment, but it is incompatible with the
 28289  //    EBCDIC macro. That is, PCRE2 can support *either* EBCDIC code *or*
 28290  //    ASCII/Unicode, but not both at once.
 28291  
 28292  // Define to any value for valgrind support to find invalid memory reads.
 28293  // #undef SUPPORT_VALGRIND
 28294  
 28295  // Enable extensions on AIX 3, Interix.
 28296  // Enable general extensions on macOS.
 28297  // Enable general extensions on Solaris.
 28298  // Enable GNU extensions on systems that have them.
 28299  // Enable X/Open compliant socket functions that do not require linking
 28300  //    with -lxnet on HP-UX 11.11.
 28301  // Identify the host operating system as Minix.
 28302  //    This macro does not affect the system headers' behavior.
 28303  //    A future release of Autoconf may stop defining this macro.
 28304  // # undef _MINIX
 28305  // Enable general extensions on NetBSD.
 28306  //    Enable NetBSD compatibility extensions on Minix.
 28307  // Enable OpenBSD compatibility extensions on NetBSD.
 28308  //    Oddly enough, this does nothing on OpenBSD.
 28309  // Define to 1 if needed for POSIX-compatible behavior.
 28310  // # undef _POSIX_SOURCE
 28311  // Define to 2 if needed for POSIX-compatible behavior.
 28312  // # undef _POSIX_1_SOURCE
 28313  // Enable POSIX-compatible threading on Solaris.
 28314  // Enable extensions specified by ISO/IEC TS 18661-5:2014.
 28315  // Enable extensions specified by ISO/IEC TS 18661-1:2014.
 28316  // Enable extensions specified by ISO/IEC TS 18661-2:2015.
 28317  // Enable extensions specified by ISO/IEC TS 18661-4:2015.
 28318  // Enable extensions specified by ISO/IEC TS 18661-3:2015.
 28319  // Enable extensions specified by ISO/IEC TR 24731-2:2010.
 28320  // Enable extensions specified by ISO/IEC 24747:2009.
 28321  // Enable extensions on HP NonStop.
 28322  // Enable X/Open extensions.  Define to 500 only if necessary
 28323  //    to make mbstate_t available.
 28324  // # undef _XOPEN_SOURCE
 28325  
 28326  // Version number of package
 28327  
 28328  // Define to empty if `const' does not conform to ANSI C.
 28329  // #undef const
 28330  
 28331  // Define to the type of a signed integer type of width exactly 64 bits if
 28332  //    such a type exists and the standard includes do not define it.
 28333  // #undef int64_t
 28334  
 28335  // Define to `unsigned int' if <sys/types.h> does not define.
 28336  // #undef size_t
 28337  
 28338  // Save the configured link size, which is in bytes. In 16-bit and 32-bit modes
 28339  // its value gets changed by pcre2_intmodedep.h (included by pcre2_internal.h) to
 28340  // be in code units.
 28341  
 28342  var configured_link_size int32 = DLINK_SIZE /* pcre2_config.c:49:12 */
 28343  
 28344  // This function is needed only when memmove() is not available.
 28345  
 28346  // End of pcre2_internal.h
 28347  
 28348  // These macros are the standard way of turning unquoted text into C strings.
 28349  // They allow macros like PCRE2_MAJOR to be defined without quotes, which is
 28350  // convenient for user programs that want to test their values.
 28351  
 28352  // ************************************************
 28353  //
 28354  // Return info about what features are configured *
 28355  //
 28356  
 28357  // If where is NULL, the length of memory required is returned.
 28358  //
 28359  // Arguments:
 28360  //   what             what information is required
 28361  //   where            where to put the information
 28362  //
 28363  // Returns:           0 if a numerical value is returned
 28364  //                    >= 0 if a string value
 28365  //                    PCRE2_ERROR_BADOPTION if "where" not recognized
 28366  //                      or JIT target requested when JIT not enabled
 28367  
 28368  func Xpcre2_config_8(tls *libc.TLS, what Tuint32_t, where uintptr) int32 { /* pcre2_config.c:78:1: */
 28369  	if where == uintptr(0) {
 28370  		switch what {
 28371  		default:
 28372  			return -34
 28373  			fallthrough
 28374  
 28375  		case Tuint32_t(DPCRE2_CONFIG_BSR):
 28376  			fallthrough
 28377  		case Tuint32_t(DPCRE2_CONFIG_COMPILED_WIDTHS):
 28378  			fallthrough
 28379  		case Tuint32_t(DPCRE2_CONFIG_DEPTHLIMIT):
 28380  			fallthrough
 28381  		case Tuint32_t(DPCRE2_CONFIG_HEAPLIMIT):
 28382  			fallthrough
 28383  		case Tuint32_t(DPCRE2_CONFIG_JIT):
 28384  			fallthrough
 28385  		case Tuint32_t(DPCRE2_CONFIG_LINKSIZE):
 28386  			fallthrough
 28387  		case Tuint32_t(DPCRE2_CONFIG_MATCHLIMIT):
 28388  			fallthrough
 28389  		case Tuint32_t(DPCRE2_CONFIG_NEVER_BACKSLASH_C):
 28390  			fallthrough
 28391  		case Tuint32_t(DPCRE2_CONFIG_NEWLINE):
 28392  			fallthrough
 28393  		case Tuint32_t(DPCRE2_CONFIG_PARENSLIMIT):
 28394  			fallthrough
 28395  		case Tuint32_t(DPCRE2_CONFIG_STACKRECURSE):
 28396  			fallthrough // Obsolete
 28397  		case Tuint32_t(DPCRE2_CONFIG_TABLES_LENGTH):
 28398  			fallthrough
 28399  		case Tuint32_t(DPCRE2_CONFIG_UNICODE):
 28400  			return int32(unsafe.Sizeof(Tuint32_t(0)))
 28401  			fallthrough
 28402  
 28403  		// These are handled below
 28404  
 28405  		case Tuint32_t(DPCRE2_CONFIG_JITTARGET):
 28406  			fallthrough
 28407  		case Tuint32_t(DPCRE2_CONFIG_UNICODE_VERSION):
 28408  			fallthrough
 28409  		case Tuint32_t(DPCRE2_CONFIG_VERSION):
 28410  			break
 28411  		}
 28412  	}
 28413  
 28414  	switch what {
 28415  	default:
 28416  		return -34
 28417  
 28418  	case Tuint32_t(DPCRE2_CONFIG_BSR):
 28419  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(DPCRE2_BSR_UNICODE)
 28420  		break
 28421  
 28422  	case Tuint32_t(DPCRE2_CONFIG_COMPILED_WIDTHS):
 28423  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(0 +
 28424  			1)
 28425  		break
 28426  
 28427  	case Tuint32_t(DPCRE2_CONFIG_DEPTHLIMIT):
 28428  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(DMATCH_LIMIT)
 28429  		break
 28430  
 28431  	case Tuint32_t(DPCRE2_CONFIG_HEAPLIMIT):
 28432  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(DHEAP_LIMIT)
 28433  		break
 28434  
 28435  	case Tuint32_t(DPCRE2_CONFIG_JIT):
 28436  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(0)
 28437  		break
 28438  
 28439  	case Tuint32_t(DPCRE2_CONFIG_JITTARGET):
 28440  		return -34
 28441  
 28442  	case Tuint32_t(DPCRE2_CONFIG_LINKSIZE):
 28443  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(configured_link_size)
 28444  		break
 28445  
 28446  	case Tuint32_t(DPCRE2_CONFIG_MATCHLIMIT):
 28447  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(DMATCH_LIMIT)
 28448  		break
 28449  
 28450  	case Tuint32_t(DPCRE2_CONFIG_NEWLINE):
 28451  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(DNEWLINE_DEFAULT)
 28452  		break
 28453  
 28454  	case Tuint32_t(DPCRE2_CONFIG_NEVER_BACKSLASH_C):
 28455  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(0)
 28456  		break
 28457  
 28458  	case Tuint32_t(DPCRE2_CONFIG_PARENSLIMIT):
 28459  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(DPARENS_NEST_LIMIT)
 28460  		break
 28461  
 28462  	// This is now obsolete. The stack is no longer used via recursion for
 28463  	//   handling backtracking in pcre2_match().
 28464  
 28465  	case Tuint32_t(DPCRE2_CONFIG_STACKRECURSE):
 28466  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(0)
 28467  		break
 28468  
 28469  	case Tuint32_t(DPCRE2_CONFIG_TABLES_LENGTH):
 28470  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(Dcbits_offset + Dcbit_length + 256)
 28471  		break
 28472  
 28473  	case Tuint32_t(DPCRE2_CONFIG_UNICODE_VERSION):
 28474  		{
 28475  			var v uintptr = X_pcre2_unicode_version_8
 28476  			return int32(uint64(1) + func() uint64 {
 28477  				if where == uintptr(0) {
 28478  					return libc.Xstrlen(tls, v)
 28479  				}
 28480  				return X_pcre2_strcpy_c8_8(tls, where, v)
 28481  			}())
 28482  
 28483  		}
 28484  		break
 28485  
 28486  	case Tuint32_t(DPCRE2_CONFIG_UNICODE):
 28487  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(1)
 28488  		break
 28489  
 28490  	// The hackery in setting "v" below is to cope with the case when
 28491  	//   PCRE2_PRERELEASE is set to an empty string (which it is for real releases).
 28492  	//   If the second alternative is used in this case, it does not leave a space
 28493  	//   before the date. On the other hand, if all four macros are put into a single
 28494  	//   XSTRING when PCRE2_PRERELEASE is not empty, an unwanted space is inserted.
 28495  	//   There are problems using an "obvious" approach like this:
 28496  	//
 28497  	//      XSTRING(PCRE2_MAJOR) "." XSTRING(PCRE_MINOR)
 28498  	//      XSTRING(PCRE2_PRERELEASE) " " XSTRING(PCRE_DATE)
 28499  	//
 28500  	//   because, when PCRE2_PRERELEASE is empty, this leads to an attempted expansion
 28501  	//   of STRING(). The C standard states: "If (before argument substitution) any
 28502  	//   argument consists of no preprocessing tokens, the behavior is undefined." It
 28503  	//   turns out the gcc treats this case as a single empty string - which is what
 28504  	//   we really want - but Visual C grumbles about the lack of an argument for the
 28505  	//   macro. Unfortunately, both are within their rights. As there seems to be no
 28506  	//   way to test for a macro's value being empty at compile time, we have to
 28507  	//   resort to a runtime test.
 28508  
 28509  	case Tuint32_t(DPCRE2_CONFIG_VERSION):
 28510  		{
 28511  			var v uintptr
 28512  			if int32(*(*int8)(unsafe.Pointer(ts + 630 + 1))) == 0 {
 28513  				v = ts + 632 /* "10.40 2022-04-14" */
 28514  			} else {
 28515  				v = ts + 649 /* "10.402022-04-14" */
 28516  			}
 28517  			return int32(uint64(1) + func() uint64 {
 28518  				if where == uintptr(0) {
 28519  					return libc.Xstrlen(tls, v)
 28520  				}
 28521  				return X_pcre2_strcpy_c8_8(tls, where, v)
 28522  			}())
 28523  
 28524  		}
 28525  	}
 28526  
 28527  	return 0
 28528  }
 28529  
 28530  // End of pcre2_config.c
 28531  
 28532  // This function is needed only when memmove() is not available.
 28533  
 28534  // End of pcre2_internal.h
 28535  
 28536  // ************************************************
 28537  //
 28538  //          Default malloc/free functions         *
 28539  //
 28540  
 28541  // Ignore the "user data" argument in each case.
 28542  
 28543  func default_malloc(tls *libc.TLS, size Tsize_t, data uintptr) uintptr { /* pcre2_context.c:56:13: */
 28544  	_ = data
 28545  	return libc.Xmalloc(tls, size)
 28546  }
 28547  
 28548  func default_free(tls *libc.TLS, block uintptr, data uintptr) { /* pcre2_context.c:63:13: */
 28549  	_ = data
 28550  	libc.Xfree(tls, block)
 28551  }
 28552  
 28553  // ************************************************
 28554  //
 28555  //        Get a block and save memory control     *
 28556  //
 28557  
 28558  // This internal function is called to get a block of memory in which the
 28559  // memory control data is to be stored at the start for future use.
 28560  //
 28561  // Arguments:
 28562  //   size        amount of memory required
 28563  //   memctl      pointer to a memctl block or NULL
 28564  //
 28565  // Returns:      pointer to memory or NULL on failure
 28566  
 28567  func X_pcre2_memctl_malloc_8(tls *libc.TLS, size Tsize_t, memctl uintptr) uintptr { /* pcre2_context.c:85:13: */
 28568  	var newmemctl uintptr
 28569  	var yield uintptr
 28570  	if memctl == uintptr(0) {
 28571  		yield = libc.Xmalloc(tls, size)
 28572  	} else {
 28573  		yield = (*struct {
 28574  			f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28575  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmalloc})).f(tls, size, (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 28576  	}
 28577  	if yield == uintptr(0) {
 28578  		return uintptr(0)
 28579  	}
 28580  	newmemctl = yield
 28581  	if memctl == uintptr(0) {
 28582  		(*Tpcre2_memctl)(unsafe.Pointer(newmemctl)).Fmalloc = *(*uintptr)(unsafe.Pointer(&struct {
 28583  			f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28584  		}{default_malloc}))
 28585  		(*Tpcre2_memctl)(unsafe.Pointer(newmemctl)).Ffree = *(*uintptr)(unsafe.Pointer(&struct {
 28586  			f func(*libc.TLS, uintptr, uintptr)
 28587  		}{default_free}))
 28588  		(*Tpcre2_memctl)(unsafe.Pointer(newmemctl)).Fmemory_data = uintptr(0)
 28589  	} else {
 28590  		*(*Tpcre2_memctl)(unsafe.Pointer(newmemctl)) = *(*Tpcre2_memctl)(unsafe.Pointer(memctl))
 28591  	}
 28592  	return yield
 28593  }
 28594  
 28595  // ************************************************
 28596  //
 28597  //          Create and initialize contexts        *
 28598  //
 28599  
 28600  // Initializing for compile and match contexts is done in separate, private
 28601  // functions so that these can be called from functions such as pcre2_compile()
 28602  // when an external context is not supplied. The initializing functions have an
 28603  // option to set up default memory management.
 28604  
 28605  func Xpcre2_general_context_create_8(tls *libc.TLS, private_malloc uintptr, private_free uintptr, memory_data uintptr) uintptr { /* pcre2_context.c:114:38: */
 28606  	var gcontext uintptr
 28607  	if private_malloc == uintptr(0) {
 28608  		private_malloc = *(*uintptr)(unsafe.Pointer(&struct {
 28609  			f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28610  		}{default_malloc}))
 28611  	}
 28612  	if private_free == uintptr(0) {
 28613  		private_free = *(*uintptr)(unsafe.Pointer(&struct {
 28614  			f func(*libc.TLS, uintptr, uintptr)
 28615  		}{default_free}))
 28616  	}
 28617  	gcontext = (*struct {
 28618  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28619  	})(unsafe.Pointer(&struct{ uintptr }{private_malloc})).f(tls, uint64(unsafe.Sizeof(Tpcre2_real_general_context_8{})), memory_data)
 28620  	if gcontext == uintptr(0) {
 28621  		return uintptr(0)
 28622  	}
 28623  	(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmalloc = private_malloc
 28624  	(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Ffree = private_free
 28625  	(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmemory_data = memory_data
 28626  	return gcontext
 28627  }
 28628  
 28629  // A default compile context is set up to save having to initialize at run time
 28630  // when no context is supplied to the compile function.
 28631  
 28632  var X_pcre2_default_compile_context_8 = Tpcre2_compile_context_8{
 28633  	Fmemctl:             Tpcre2_memctl{Fmalloc: 0, Ffree: 0}, // Stack guard data
 28634  	Ftables:             0,                                   // Character tables
 28635  	Fmax_pattern_length: libc.CplUint64(uint64(0)),
 28636  	Fbsr_convention:     Tuint16_t(DPCRE2_BSR_UNICODE), // Backslash R default
 28637  	Fnewline_convention: Tuint16_t(DNEWLINE_DEFAULT),   // Newline convention
 28638  	Fparens_nest_limit:  Tuint32_t(DPARENS_NEST_LIMIT)} /* pcre2_context.c:133:29 */
 28639  
 28640  // Extra options
 28641  
 28642  // The create function copies the default into the new memory, but must
 28643  // override the default memory handling functions if a gcontext was provided.
 28644  
 28645  func Xpcre2_compile_context_create_8(tls *libc.TLS, gcontext uintptr) uintptr { /* pcre2_context.c:147:38: */
 28646  	var ccontext uintptr = X_pcre2_memctl_malloc_8(tls,
 28647  		uint64(unsafe.Sizeof(Tpcre2_real_compile_context_8{})), gcontext)
 28648  	if ccontext == uintptr(0) {
 28649  		return uintptr(0)
 28650  	}
 28651  	*(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)) = X_pcre2_default_compile_context_8
 28652  	if gcontext != uintptr(0) {
 28653  		*(*Tpcre2_memctl)(unsafe.Pointer(ccontext)) = *(*Tpcre2_memctl)(unsafe.Pointer(gcontext))
 28654  	}
 28655  	return ccontext
 28656  }
 28657  
 28658  // A default match context is set up to save having to initialize at run time
 28659  // when no context is supplied to a match function.
 28660  
 28661  var X_pcre2_default_match_context_8 = Tpcre2_match_context_8{
 28662  	Fmemctl:       Tpcre2_memctl{Fmalloc: 0, Ffree: 0}, // Substitute callout data
 28663  	Foffset_limit: libc.CplUint64(uint64(0)),
 28664  	Fheap_limit:   Tuint32_t(DHEAP_LIMIT),
 28665  	Fmatch_limit:  Tuint32_t(DMATCH_LIMIT),
 28666  	Fdepth_limit:  Tuint32_t(DMATCH_LIMIT)} /* pcre2_context.c:163:27 */
 28667  
 28668  // The create function copies the default into the new memory, but must
 28669  // override the default memory handling functions if a gcontext was provided.
 28670  
 28671  func Xpcre2_match_context_create_8(tls *libc.TLS, gcontext uintptr) uintptr { /* pcre2_context.c:181:36: */
 28672  	var mcontext uintptr = X_pcre2_memctl_malloc_8(tls,
 28673  		uint64(unsafe.Sizeof(Tpcre2_real_match_context_8{})), gcontext)
 28674  	if mcontext == uintptr(0) {
 28675  		return uintptr(0)
 28676  	}
 28677  	*(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)) = X_pcre2_default_match_context_8
 28678  	if gcontext != uintptr(0) {
 28679  		*(*Tpcre2_memctl)(unsafe.Pointer(mcontext)) = *(*Tpcre2_memctl)(unsafe.Pointer(gcontext))
 28680  	}
 28681  	return mcontext
 28682  }
 28683  
 28684  // A default convert context is set up to save having to initialize at run time
 28685  // when no context is supplied to the convert function.
 28686  
 28687  var X_pcre2_default_convert_context_8 = Tpcre2_convert_context_8{
 28688  	Fmemctl:         Tpcre2_memctl{Fmalloc: 0, Ffree: 0}, // Default memory handling
 28689  	Fglob_separator: Tuint32_t('\057'),                   // Default path separator
 28690  	Fglob_escape:    Tuint32_t('\134'),                   // Default escape character
 28691  } /* pcre2_context.c:197:29 */
 28692  
 28693  // The create function copies the default into the new memory, but must
 28694  // override the default memory handling functions if a gcontext was provided.
 28695  
 28696  func Xpcre2_convert_context_create_8(tls *libc.TLS, gcontext uintptr) uintptr { /* pcre2_context.c:211:38: */
 28697  	var ccontext uintptr = X_pcre2_memctl_malloc_8(tls,
 28698  		uint64(unsafe.Sizeof(Tpcre2_real_convert_context_8{})), gcontext)
 28699  	if ccontext == uintptr(0) {
 28700  		return uintptr(0)
 28701  	}
 28702  	*(*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)) = X_pcre2_default_convert_context_8
 28703  	if gcontext != uintptr(0) {
 28704  		*(*Tpcre2_memctl)(unsafe.Pointer(ccontext)) = *(*Tpcre2_memctl)(unsafe.Pointer(gcontext))
 28705  	}
 28706  	return ccontext
 28707  }
 28708  
 28709  // ************************************************
 28710  //
 28711  //              Context copy functions            *
 28712  //
 28713  
 28714  func Xpcre2_general_context_copy_8(tls *libc.TLS, gcontext uintptr) uintptr { /* pcre2_context.c:228:38: */
 28715  	var new uintptr = (*struct {
 28716  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28717  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmalloc})).f(tls, uint64(unsafe.Sizeof(Tpcre2_real_general_context_8{})),
 28718  		(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmemory_data)
 28719  	if new == uintptr(0) {
 28720  		return uintptr(0)
 28721  	}
 28722  	libc.X__builtin___memcpy_chk(tls, new, gcontext, uint64(unsafe.Sizeof(Tpcre2_real_general_context_8{})), libc.X__builtin_object_size(tls, new, 0))
 28723  	return new
 28724  }
 28725  
 28726  func Xpcre2_compile_context_copy_8(tls *libc.TLS, ccontext uintptr) uintptr { /* pcre2_context.c:240:38: */
 28727  	var new uintptr = (*struct {
 28728  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28729  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmalloc})).f(tls, uint64(unsafe.Sizeof(Tpcre2_real_compile_context_8{})),
 28730  		(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 28731  	if new == uintptr(0) {
 28732  		return uintptr(0)
 28733  	}
 28734  	libc.X__builtin___memcpy_chk(tls, new, ccontext, uint64(unsafe.Sizeof(Tpcre2_real_compile_context_8{})), libc.X__builtin_object_size(tls, new, 0))
 28735  	return new
 28736  }
 28737  
 28738  func Xpcre2_match_context_copy_8(tls *libc.TLS, mcontext uintptr) uintptr { /* pcre2_context.c:252:36: */
 28739  	var new uintptr = (*struct {
 28740  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28741  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmemctl.Fmalloc})).f(tls, uint64(unsafe.Sizeof(Tpcre2_real_match_context_8{})),
 28742  		(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmemctl.Fmemory_data)
 28743  	if new == uintptr(0) {
 28744  		return uintptr(0)
 28745  	}
 28746  	libc.X__builtin___memcpy_chk(tls, new, mcontext, uint64(unsafe.Sizeof(Tpcre2_real_match_context_8{})), libc.X__builtin_object_size(tls, new, 0))
 28747  	return new
 28748  }
 28749  
 28750  func Xpcre2_convert_context_copy_8(tls *libc.TLS, ccontext uintptr) uintptr { /* pcre2_context.c:265:38: */
 28751  	var new uintptr = (*struct {
 28752  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 28753  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmalloc})).f(tls, uint64(unsafe.Sizeof(Tpcre2_real_convert_context_8{})),
 28754  		(*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 28755  	if new == uintptr(0) {
 28756  		return uintptr(0)
 28757  	}
 28758  	libc.X__builtin___memcpy_chk(tls, new, ccontext, uint64(unsafe.Sizeof(Tpcre2_real_convert_context_8{})), libc.X__builtin_object_size(tls, new, 0))
 28759  	return new
 28760  }
 28761  
 28762  // ************************************************
 28763  //
 28764  //              Context free functions            *
 28765  //
 28766  
 28767  func Xpcre2_general_context_free_8(tls *libc.TLS, gcontext uintptr) { /* pcre2_context.c:282:1: */
 28768  	if gcontext != uintptr(0) {
 28769  		(*struct {
 28770  			f func(*libc.TLS, uintptr, uintptr)
 28771  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Ffree})).f(tls, gcontext, (*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmemory_data)
 28772  	}
 28773  }
 28774  
 28775  func Xpcre2_compile_context_free_8(tls *libc.TLS, ccontext uintptr) { /* pcre2_context.c:290:1: */
 28776  	if ccontext != uintptr(0) {
 28777  		(*struct {
 28778  			f func(*libc.TLS, uintptr, uintptr)
 28779  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Ffree})).f(tls, ccontext, (*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 28780  	}
 28781  }
 28782  
 28783  func Xpcre2_match_context_free_8(tls *libc.TLS, mcontext uintptr) { /* pcre2_context.c:298:1: */
 28784  	if mcontext != uintptr(0) {
 28785  		(*struct {
 28786  			f func(*libc.TLS, uintptr, uintptr)
 28787  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmemctl.Ffree})).f(tls, mcontext, (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmemctl.Fmemory_data)
 28788  	}
 28789  }
 28790  
 28791  func Xpcre2_convert_context_free_8(tls *libc.TLS, ccontext uintptr) { /* pcre2_context.c:306:1: */
 28792  	if ccontext != uintptr(0) {
 28793  		(*struct {
 28794  			f func(*libc.TLS, uintptr, uintptr)
 28795  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Ffree})).f(tls, ccontext, (*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fmemctl.Fmemory_data)
 28796  	}
 28797  }
 28798  
 28799  // ************************************************
 28800  //
 28801  //             Set values in contexts             *
 28802  //
 28803  
 28804  // All these functions return 0 for success or PCRE2_ERROR_BADDATA if invalid
 28805  // data is given. Only some of the functions are able to test the validity of the
 28806  // data.
 28807  
 28808  // ------------ Compile context ------------
 28809  
 28810  func Xpcre2_set_character_tables_8(tls *libc.TLS, ccontext uintptr, tables uintptr) int32 { /* pcre2_context.c:325:1: */
 28811  	(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Ftables = tables
 28812  	return 0
 28813  }
 28814  
 28815  func Xpcre2_set_bsr_8(tls *libc.TLS, ccontext uintptr, value Tuint32_t) int32 { /* pcre2_context.c:333:1: */
 28816  	switch value {
 28817  	case Tuint32_t(DPCRE2_BSR_ANYCRLF):
 28818  		fallthrough
 28819  	case Tuint32_t(DPCRE2_BSR_UNICODE):
 28820  		(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fbsr_convention = Tuint16_t(value)
 28821  		return 0
 28822  
 28823  	default:
 28824  		return -29
 28825  	}
 28826  	return int32(0)
 28827  }
 28828  
 28829  func Xpcre2_set_max_pattern_length_8(tls *libc.TLS, ccontext uintptr, length Tsize_t) int32 { /* pcre2_context.c:348:1: */
 28830  	(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fmax_pattern_length = length
 28831  	return 0
 28832  }
 28833  
 28834  func Xpcre2_set_newline_8(tls *libc.TLS, ccontext uintptr, newline Tuint32_t) int32 { /* pcre2_context.c:355:1: */
 28835  	switch newline {
 28836  	case Tuint32_t(DPCRE2_NEWLINE_CR):
 28837  		fallthrough
 28838  	case Tuint32_t(DPCRE2_NEWLINE_LF):
 28839  		fallthrough
 28840  	case Tuint32_t(DPCRE2_NEWLINE_CRLF):
 28841  		fallthrough
 28842  	case Tuint32_t(DPCRE2_NEWLINE_ANY):
 28843  		fallthrough
 28844  	case Tuint32_t(DPCRE2_NEWLINE_ANYCRLF):
 28845  		fallthrough
 28846  	case Tuint32_t(DPCRE2_NEWLINE_NUL):
 28847  		(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fnewline_convention = Tuint16_t(newline)
 28848  		return 0
 28849  
 28850  	default:
 28851  		return -29
 28852  	}
 28853  	return int32(0)
 28854  }
 28855  
 28856  func Xpcre2_set_parens_nest_limit_8(tls *libc.TLS, ccontext uintptr, limit Tuint32_t) int32 { /* pcre2_context.c:374:1: */
 28857  	(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fparens_nest_limit = limit
 28858  	return 0
 28859  }
 28860  
 28861  func Xpcre2_set_compile_extra_options_8(tls *libc.TLS, ccontext uintptr, options Tuint32_t) int32 { /* pcre2_context.c:381:1: */
 28862  	(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fextra_options = options
 28863  	return 0
 28864  }
 28865  
 28866  func Xpcre2_set_compile_recursion_guard_8(tls *libc.TLS, ccontext uintptr, guard uintptr, user_data uintptr) int32 { /* pcre2_context.c:388:1: */
 28867  	(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fstack_guard = guard
 28868  	(*Tpcre2_compile_context_8)(unsafe.Pointer(ccontext)).Fstack_guard_data = user_data
 28869  	return 0
 28870  }
 28871  
 28872  // ------------ Match context ------------
 28873  
 28874  func Xpcre2_set_callout_8(tls *libc.TLS, mcontext uintptr, callout uintptr, callout_data uintptr) int32 { /* pcre2_context.c:400:1: */
 28875  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fcallout = callout
 28876  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fcallout_data = callout_data
 28877  	return 0
 28878  }
 28879  
 28880  func Xpcre2_set_substitute_callout_8(tls *libc.TLS, mcontext uintptr, substitute_callout uintptr, substitute_callout_data uintptr) int32 { /* pcre2_context.c:409:1: */
 28881  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fsubstitute_callout = substitute_callout
 28882  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fsubstitute_callout_data = substitute_callout_data
 28883  	return 0
 28884  }
 28885  
 28886  func Xpcre2_set_heap_limit_8(tls *libc.TLS, mcontext uintptr, limit Tuint32_t) int32 { /* pcre2_context.c:419:1: */
 28887  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fheap_limit = limit
 28888  	return 0
 28889  }
 28890  
 28891  func Xpcre2_set_match_limit_8(tls *libc.TLS, mcontext uintptr, limit Tuint32_t) int32 { /* pcre2_context.c:426:1: */
 28892  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmatch_limit = limit
 28893  	return 0
 28894  }
 28895  
 28896  func Xpcre2_set_depth_limit_8(tls *libc.TLS, mcontext uintptr, limit Tuint32_t) int32 { /* pcre2_context.c:433:1: */
 28897  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fdepth_limit = limit
 28898  	return 0
 28899  }
 28900  
 28901  func Xpcre2_set_offset_limit_8(tls *libc.TLS, mcontext uintptr, limit Tsize_t) int32 { /* pcre2_context.c:440:1: */
 28902  	(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Foffset_limit = limit
 28903  	return 0
 28904  }
 28905  
 28906  // This function became obsolete at release 10.30. It is kept as a synonym for
 28907  // backwards compatibility.
 28908  
 28909  func Xpcre2_set_recursion_limit_8(tls *libc.TLS, mcontext uintptr, limit Tuint32_t) int32 { /* pcre2_context.c:450:1: */
 28910  	return Xpcre2_set_depth_limit_8(tls, mcontext, limit)
 28911  }
 28912  
 28913  func Xpcre2_set_recursion_memory_management_8(tls *libc.TLS, mcontext uintptr, mymalloc uintptr, myfree uintptr, mydata uintptr) int32 { /* pcre2_context.c:456:1: */
 28914  	_ = mcontext
 28915  	_ = mymalloc
 28916  	_ = myfree
 28917  	_ = mydata
 28918  	return 0
 28919  }
 28920  
 28921  // ------------ Convert context ------------
 28922  
 28923  func Xpcre2_set_glob_separator_8(tls *libc.TLS, ccontext uintptr, separator Tuint32_t) int32 { /* pcre2_context.c:470:1: */
 28924  	if separator != Tuint32_t('\057') && separator != Tuint32_t('\134') && separator != Tuint32_t('\056') {
 28925  		return -29
 28926  	}
 28927  	(*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fglob_separator = separator
 28928  	return 0
 28929  }
 28930  
 28931  func Xpcre2_set_glob_escape_8(tls *libc.TLS, ccontext uintptr, escape Tuint32_t) int32 { /* pcre2_context.c:479:1: */
 28932  	if escape > Tuint32_t(255) || escape != Tuint32_t(0) && !(Xispunct(tls, int32(escape)) != 0) {
 28933  		return -29
 28934  	}
 28935  	(*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fglob_escape = escape
 28936  	return 0
 28937  }
 28938  
 28939  // End of pcre2_context.c
 28940  
 28941  // Macro to add a character string to the output buffer, checking for overflow.
 28942  
 28943  // Literals that must be escaped: \ ? * + | . ^ $ { } [ ] ( )
 28944  
 28945  var pcre2_escaped_literals uintptr = ts + 665 /* "\\?*+|.^${}[]()" */ /* pcre2_convert.c:86:19 */
 28946  
 28947  // Recognized escaped metacharacters in POSIX basic patterns.
 28948  
 28949  var posix_meta_escapes uintptr = ts + 680 /* "(){}123456789" */ /* pcre2_convert.c:95:19 */
 28950  
 28951  // ************************************************
 28952  //
 28953  //           Convert a POSIX pattern              *
 28954  //
 28955  
 28956  // This function handles both basic and extended POSIX patterns.
 28957  //
 28958  // Arguments:
 28959  //   pattype        the pattern type
 28960  //   pattern        the pattern
 28961  //   plength        length in code units
 28962  //   utf            TRUE if UTF
 28963  //   use_buffer     where to put the output
 28964  //   use_length     length of use_buffer
 28965  //   bufflenptr     where to put the used length
 28966  //   dummyrun       TRUE if a dummy run
 28967  //   ccontext       the convert context
 28968  //
 28969  // Returns:         0 => success
 28970  //                 !0 => error code
 28971  
 28972  func convert_posix(tls *libc.TLS, pattype Tuint32_t, pattern TPCRE2_SPTR8, plength Tsize_t, utf TBOOL, use_buffer uintptr, use_length Tsize_t, bufflenptr uintptr, dummyrun TBOOL, ccontext uintptr) int32 { /* pcre2_convert.c:124:1: */
 28973  	var s uintptr
 28974  	var posix TPCRE2_SPTR8
 28975  	var p uintptr
 28976  	var pp uintptr
 28977  	var endp uintptr // Allow for trailing zero
 28978  	var convlength Tsize_t
 28979  	var bracount Tuint32_t
 28980  	var posix_state Tuint32_t
 28981  	var lastspecial Tuint32_t
 28982  	var extended TBOOL
 28983  	var nextisliteral TBOOL
 28984  	var c Tuint32_t
 28985  	var sc Tuint32_t
 28986  	var clength int32
 28987  	posix = pattern
 28988  	p = use_buffer
 28989  	pp = p
 28990  	endp = p + uintptr(use_length) - uintptr(1)
 28991  	convlength = uint64(0)
 28992  	bracount = Tuint32_t(0)
 28993  	posix_state = POSIX_START_REGEX
 28994  	lastspecial = Tuint32_t(0)
 28995  	extended = libc.Bool32(pattype&DPCRE2_CONVERT_POSIX_EXTENDED != Tuint32_t(0))
 28996  	nextisliteral = DFALSE
 28997  
 28998  	_ = utf      // Not used when Unicode not supported
 28999  	_ = ccontext // Not currently used
 29000  
 29001  	// Initialize default for error offset as end of input.
 29002  
 29003  	*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = plength
 29004  	s = ts + 694
 29005  __1:
 29006  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29007  		goto __3
 29008  	}
 29009  	if !(p >= endp) {
 29010  		goto __4
 29011  	}
 29012  	return -48
 29013  __4:
 29014  	;
 29015  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29016  	goto __2
 29017  __2:
 29018  	s++
 29019  	goto __1
 29020  	goto __3
 29021  __3:
 29022  	;
 29023  
 29024  	// Now scan the input.
 29025  
 29026  __5:
 29027  	if !(plength > uint64(0)) {
 29028  		goto __6
 29029  	}
 29030  	clength = 1
 29031  
 29032  	// Add in the length of the last item, then, if in the dummy run, pull the
 29033  	//   pointer back to the start of the (temporary) buffer and then remember the
 29034  	//   start of the next item.
 29035  
 29036  	convlength = convlength + Tsize_t((int64(p)-int64(pp))/1)
 29037  	if !(dummyrun != 0) {
 29038  		goto __7
 29039  	}
 29040  	p = use_buffer
 29041  __7:
 29042  	;
 29043  	pp = p
 29044  
 29045  	// Pick up the next character
 29046  
 29047  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix)))
 29048  	if !(utf != 0 && c >= 0xc0) {
 29049  		goto __8
 29050  	}
 29051  	if !(c&0x20 == Tuint32_t(0)) {
 29052  		goto __9
 29053  	}
 29054  	c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 1)))&0x3f
 29055  	clength++
 29056  	goto __10
 29057  __9:
 29058  	if !(c&0x10 == Tuint32_t(0)) {
 29059  		goto __11
 29060  	}
 29061  	c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 2)))&0x3f
 29062  	clength = clength + 2
 29063  	goto __12
 29064  __11:
 29065  	if !(c&0x08 == Tuint32_t(0)) {
 29066  		goto __13
 29067  	}
 29068  	c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 3)))&0x3f
 29069  	clength = clength + 3
 29070  	goto __14
 29071  __13:
 29072  	if !(c&0x04 == Tuint32_t(0)) {
 29073  		goto __15
 29074  	}
 29075  	c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 4)))&0x3f
 29076  	clength = clength + 4
 29077  	goto __16
 29078  __15:
 29079  	c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix + 5)))&0x3f
 29080  	clength = clength + 5
 29081  __16:
 29082  	;
 29083  __14:
 29084  	;
 29085  __12:
 29086  	;
 29087  __10:
 29088  	;
 29089  __8:
 29090  	;
 29091  
 29092  	posix += TPCRE2_SPTR8(clength)
 29093  	plength = plength - Tsize_t(clength)
 29094  
 29095  	if nextisliteral != 0 {
 29096  		sc = uint32(0)
 29097  	} else {
 29098  		sc = c
 29099  	}
 29100  	nextisliteral = DFALSE
 29101  
 29102  	// Handle a character within a class.
 29103  
 29104  	if !(posix_state >= POSIX_CLASS_NOT_STARTED) {
 29105  		goto __17
 29106  	}
 29107  
 29108  	if !(c == Tuint32_t('\135')) {
 29109  		goto __19
 29110  	}
 29111  
 29112  	s = ts + 701
 29113  __21:
 29114  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29115  		goto __23
 29116  	}
 29117  	if !(p >= endp) {
 29118  		goto __24
 29119  	}
 29120  	return -48
 29121  __24:
 29122  	;
 29123  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29124  	goto __22
 29125  __22:
 29126  	s++
 29127  	goto __21
 29128  	goto __23
 29129  __23:
 29130  	;
 29131  
 29132  	posix_state = POSIX_NOT_BRACKET
 29133  	goto __20
 29134  __19:
 29135  
 29136  	switch posix_state {
 29137  	case POSIX_CLASS_STARTED:
 29138  		goto __26
 29139  	// Fall through
 29140  
 29141  	case POSIX_CLASS_NOT_STARTED:
 29142  		goto __27
 29143  
 29144  	case POSIX_CLASS_STARTING:
 29145  		goto __28
 29146  	}
 29147  	goto __25
 29148  
 29149  __26:
 29150  	if !(c <= Tuint32_t(127) && Xislower(tls, int32(c)) != 0) {
 29151  		goto __29
 29152  	}
 29153  	goto __25
 29154  __29:
 29155  	; // Remain in started state
 29156  	posix_state = POSIX_CLASS_NOT_STARTED
 29157  	if !(c == Tuint32_t('\072') && plength > uint64(0) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix))) == '\135') {
 29158  		goto __30
 29159  	}
 29160  
 29161  	s = ts + 703
 29162  __31:
 29163  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29164  		goto __33
 29165  	}
 29166  	if !(p >= endp) {
 29167  		goto __34
 29168  	}
 29169  	return -48
 29170  __34:
 29171  	;
 29172  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29173  	goto __32
 29174  __32:
 29175  	s++
 29176  	goto __31
 29177  	goto __33
 29178  __33:
 29179  	;
 29180  
 29181  	plength--
 29182  	posix++
 29183  	goto __5 // With next character after :]
 29184  __30:
 29185  	;
 29186  	// Fall through
 29187  
 29188  __27:
 29189  	if !(c == Tuint32_t('\133')) {
 29190  		goto __35
 29191  	}
 29192  	posix_state = POSIX_CLASS_STARTING
 29193  __35:
 29194  	;
 29195  	goto __25
 29196  
 29197  __28:
 29198  	if !(c == Tuint32_t('\072')) {
 29199  		goto __36
 29200  	}
 29201  	posix_state = POSIX_CLASS_STARTED
 29202  __36:
 29203  	;
 29204  	goto __25
 29205  __25:
 29206  	;
 29207  
 29208  	if !(c == Tuint32_t('\134')) {
 29209  		goto __37
 29210  	}
 29211  	s = ts + 706
 29212  __38:
 29213  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29214  		goto __40
 29215  	}
 29216  	if !(p >= endp) {
 29217  		goto __41
 29218  	}
 29219  	return -48
 29220  __41:
 29221  	;
 29222  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29223  	goto __39
 29224  __39:
 29225  	s++
 29226  	goto __38
 29227  	goto __40
 29228  __40:
 29229  	;
 29230  __37:
 29231  	;
 29232  
 29233  	if !(p+uintptr(clength) > endp) {
 29234  		goto __42
 29235  	}
 29236  	return -48
 29237  __42:
 29238  	;
 29239  	libc.X__builtin___memcpy_chk(tls, p, posix-uintptr(clength), uint64(clength*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, p, 0))
 29240  	p += uintptr(clength)
 29241  __20:
 29242  	;
 29243  	goto __18
 29244  __17:
 29245  	switch sc {
 29246  	case Tuint32_t('\133'):
 29247  		goto __44
 29248  
 29249  	case Tuint32_t('\134'):
 29250  		goto __45
 29251  
 29252  	case Tuint32_t('\051'):
 29253  		goto __46
 29254  
 29255  	case Tuint32_t('\050'):
 29256  		goto __47
 29257  	// Fall through
 29258  
 29259  	case Tuint32_t('\077'):
 29260  		goto __48
 29261  	case Tuint32_t('\053'):
 29262  		goto __49
 29263  	case Tuint32_t('\173'):
 29264  		goto __50
 29265  	case Tuint32_t('\175'):
 29266  		goto __51
 29267  	case Tuint32_t('\174'):
 29268  		goto __52
 29269  	// Fall through
 29270  
 29271  	case Tuint32_t('\056'):
 29272  		goto __53
 29273  	case Tuint32_t('\044'):
 29274  		goto __54
 29275  
 29276  	case Tuint32_t('\052'):
 29277  		goto __55 // Ignore second and subsequent asterisks
 29278  
 29279  	case Tuint32_t('\136'):
 29280  		goto __56
 29281  	// Fall through
 29282  
 29283  	default:
 29284  		goto __57
 29285  	}
 29286  	goto __43
 29287  
 29288  __44:
 29289  	s = ts + 708
 29290  __58:
 29291  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29292  		goto __60
 29293  	}
 29294  	if !(p >= endp) {
 29295  		goto __61
 29296  	}
 29297  	return -48
 29298  __61:
 29299  	;
 29300  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29301  	goto __59
 29302  __59:
 29303  	s++
 29304  	goto __58
 29305  	goto __60
 29306  __60:
 29307  	;
 29308  
 29309  	// Handle start of "normal" character classes
 29310  
 29311  	posix_state = POSIX_CLASS_NOT_STARTED
 29312  
 29313  	// Handle ^ and ] as first characters
 29314  
 29315  	if !(plength > uint64(0)) {
 29316  		goto __62
 29317  	}
 29318  
 29319  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix))) == '\136') {
 29320  		goto __63
 29321  	}
 29322  
 29323  	posix++
 29324  	plength--
 29325  	s = ts + 710
 29326  __64:
 29327  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29328  		goto __66
 29329  	}
 29330  	if !(p >= endp) {
 29331  		goto __67
 29332  	}
 29333  	return -48
 29334  __67:
 29335  	;
 29336  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29337  	goto __65
 29338  __65:
 29339  	s++
 29340  	goto __64
 29341  	goto __66
 29342  __66:
 29343  	;
 29344  
 29345  __63:
 29346  	;
 29347  	if !(plength > uint64(0) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix))) == '\135') {
 29348  		goto __68
 29349  	}
 29350  
 29351  	posix++
 29352  	plength--
 29353  	s = ts + 701
 29354  __69:
 29355  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29356  		goto __71
 29357  	}
 29358  	if !(p >= endp) {
 29359  		goto __72
 29360  	}
 29361  	return -48
 29362  __72:
 29363  	;
 29364  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29365  	goto __70
 29366  __70:
 29367  	s++
 29368  	goto __69
 29369  	goto __71
 29370  __71:
 29371  	;
 29372  
 29373  __68:
 29374  	;
 29375  __62:
 29376  	;
 29377  	goto __43
 29378  
 29379  __45:
 29380  	if !(plength == uint64(0)) {
 29381  		goto __73
 29382  	}
 29383  	return DPCRE2_ERROR_END_BACKSLASH
 29384  __73:
 29385  	;
 29386  	if !(extended != 0) {
 29387  		goto __74
 29388  	}
 29389  	nextisliteral = DTRUE
 29390  	goto __75
 29391  __74:
 29392  
 29393  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix))) < 127 && libc.Xstrchr(tls, posix_meta_escapes, int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix)))) != uintptr(0)) {
 29394  		goto __76
 29395  	}
 29396  
 29397  	if !(Xisdigit(tls, int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(posix)))) != 0) {
 29398  		goto __78
 29399  	}
 29400  	s = ts + 706
 29401  __79:
 29402  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29403  		goto __81
 29404  	}
 29405  	if !(p >= endp) {
 29406  		goto __82
 29407  	}
 29408  	return -48
 29409  __82:
 29410  	;
 29411  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29412  	goto __80
 29413  __80:
 29414  	s++
 29415  	goto __79
 29416  	goto __81
 29417  __81:
 29418  	;
 29419  __78:
 29420  	;
 29421  
 29422  	if !(p+uintptr(1) > endp) {
 29423  		goto __83
 29424  	}
 29425  	return -48
 29426  __83:
 29427  	;
 29428  	lastspecial = Tuint32_t(libc.AssignPtrUint8(libc.PostIncUintptr(&p, 1), *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&posix, 1)))))
 29429  	plength--
 29430  	goto __77
 29431  __76:
 29432  	nextisliteral = DTRUE
 29433  __77:
 29434  	;
 29435  __75:
 29436  	;
 29437  	goto __43
 29438  
 29439  __46:
 29440  	if !(!(extended != 0) || bracount == Tuint32_t(0)) {
 29441  		goto __84
 29442  	}
 29443  	goto ESCAPE_LITERAL
 29444  __84:
 29445  	;
 29446  	bracount--
 29447  	goto COPY_SPECIAL
 29448  
 29449  __47:
 29450  	bracount++
 29451  	// Fall through
 29452  
 29453  __48:
 29454  __49:
 29455  __50:
 29456  __51:
 29457  __52:
 29458  	if !!(extended != 0) {
 29459  		goto __85
 29460  	}
 29461  	goto ESCAPE_LITERAL
 29462  __85:
 29463  	;
 29464  	// Fall through
 29465  
 29466  __53:
 29467  __54:
 29468  	posix_state = POSIX_NOT_BRACKET
 29469  COPY_SPECIAL:
 29470  	lastspecial = c
 29471  	if !(p+uintptr(1) > endp) {
 29472  		goto __86
 29473  	}
 29474  	return -48
 29475  __86:
 29476  	;
 29477  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(c)
 29478  	goto __43
 29479  
 29480  __55:
 29481  	if !(lastspecial != Tuint32_t('\052')) {
 29482  		goto __87
 29483  	}
 29484  
 29485  	if !(!(extended != 0) && (posix_state < POSIX_NOT_BRACKET || lastspecial == Tuint32_t('\050'))) {
 29486  		goto __88
 29487  	}
 29488  	goto ESCAPE_LITERAL
 29489  __88:
 29490  	;
 29491  	goto COPY_SPECIAL
 29492  __87:
 29493  	;
 29494  	goto __43 // Ignore second and subsequent asterisks
 29495  
 29496  __56:
 29497  	if !(extended != 0) {
 29498  		goto __89
 29499  	}
 29500  	goto COPY_SPECIAL
 29501  __89:
 29502  	;
 29503  	if !(posix_state == POSIX_START_REGEX || lastspecial == Tuint32_t('\050')) {
 29504  		goto __90
 29505  	}
 29506  
 29507  	posix_state = POSIX_ANCHORED
 29508  	goto COPY_SPECIAL
 29509  __90:
 29510  	;
 29511  	// Fall through
 29512  
 29513  __57:
 29514  	if !(c < Tuint32_t(128) && libc.Xstrchr(tls, pcre2_escaped_literals, int32(c)) != uintptr(0)) {
 29515  		goto __91
 29516  	}
 29517  
 29518  ESCAPE_LITERAL:
 29519  	s = ts + 706
 29520  __92:
 29521  	if !(int32(*(*int8)(unsafe.Pointer(s))) != 0) {
 29522  		goto __94
 29523  	}
 29524  	if !(p >= endp) {
 29525  		goto __95
 29526  	}
 29527  	return -48
 29528  __95:
 29529  	;
 29530  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(s)))
 29531  	goto __93
 29532  __93:
 29533  	s++
 29534  	goto __92
 29535  	goto __94
 29536  __94:
 29537  	;
 29538  
 29539  __91:
 29540  	;
 29541  	lastspecial = Tuint32_t(0xff) // Indicates nothing special
 29542  	if !(p+uintptr(clength) > endp) {
 29543  		goto __96
 29544  	}
 29545  	return -48
 29546  __96:
 29547  	;
 29548  	libc.X__builtin___memcpy_chk(tls, p, posix-uintptr(clength), uint64(clength*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, p, 0))
 29549  	p += uintptr(clength)
 29550  	posix_state = POSIX_NOT_BRACKET
 29551  	goto __43
 29552  __43:
 29553  	;
 29554  __18:
 29555  	;
 29556  	goto __5
 29557  __6:
 29558  	;
 29559  
 29560  	if !(posix_state >= POSIX_CLASS_NOT_STARTED) {
 29561  		goto __97
 29562  	}
 29563  	return DPCRE2_ERROR_MISSING_SQUARE_BRACKET
 29564  __97:
 29565  	;
 29566  	convlength = convlength + Tsize_t((int64(p)-int64(pp))/1) // Final segment
 29567  	*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = convlength
 29568  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = TPCRE2_UCHAR8(0)
 29569  	return 0
 29570  }
 29571  
 29572  // ************************************************
 29573  //
 29574  //           Convert a glob pattern               *
 29575  //
 29576  
 29577  // Context for writing the output into a buffer.
 29578  
 29579  type Spcre2_output_context = struct {
 29580  	Foutput      uintptr
 29581  	Foutput_end  TPCRE2_SPTR8
 29582  	Foutput_size Tsize_t
 29583  	Fout_str     [8]Tuint8_t
 29584  } /* pcre2_convert.c:368:9 */
 29585  
 29586  // ************************************************
 29587  //
 29588  //           Convert a glob pattern               *
 29589  //
 29590  
 29591  // Context for writing the output into a buffer.
 29592  
 29593  type Tpcre2_output_context = Spcre2_output_context /* pcre2_convert.c:373:3 */
 29594  
 29595  // Write a character into the output.
 29596  //
 29597  // Arguments:
 29598  //   out            output context
 29599  //   chr            the next character
 29600  
 29601  func convert_glob_write(tls *libc.TLS, out uintptr, chr TPCRE2_UCHAR8) { /* pcre2_convert.c:384:1: */
 29602  	(*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput_size++
 29603  
 29604  	if (*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput < (*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput_end {
 29605  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput, 1))) = chr
 29606  	}
 29607  }
 29608  
 29609  // Write a string into the output.
 29610  //
 29611  // Arguments:
 29612  //   out            output context
 29613  //   length         length of out->out_str
 29614  
 29615  func convert_glob_write_str(tls *libc.TLS, out uintptr, length Tsize_t) { /* pcre2_convert.c:401:1: */
 29616  	var out_str uintptr = out + 24 /* &.out_str */
 29617  	var output uintptr = (*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput
 29618  	var output_end TPCRE2_SPTR8 = (*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput_end
 29619  	var output_size Tsize_t = (*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput_size
 29620  
 29621  	for __ccgo := true; __ccgo; __ccgo = libc.PreDecUint64(&length, 1) != uint64(0) {
 29622  		output_size++
 29623  
 29624  		if output < output_end {
 29625  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&output, 1))) = *(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&out_str, 1)))
 29626  		}
 29627  	}
 29628  
 29629  	(*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput = output
 29630  	(*Tpcre2_output_context)(unsafe.Pointer(out)).Foutput_size = output_size
 29631  }
 29632  
 29633  // Prints the separator into the output.
 29634  //
 29635  // Arguments:
 29636  //   out            output context
 29637  //   separator      glob separator
 29638  //   with_escape    backslash is needed before separator
 29639  
 29640  func convert_glob_print_separator(tls *libc.TLS, out uintptr, separator TPCRE2_UCHAR8, with_escape TBOOL) { /* pcre2_convert.c:431:1: */
 29641  	if with_escape != 0 {
 29642  		convert_glob_write(tls, out, uint8('\134'))
 29643  	}
 29644  
 29645  	convert_glob_write(tls, out, separator)
 29646  }
 29647  
 29648  // Prints a wildcard into the output.
 29649  //
 29650  // Arguments:
 29651  //   out            output context
 29652  //   separator      glob separator
 29653  //   with_escape    backslash is needed before separator
 29654  
 29655  func convert_glob_print_wildcard(tls *libc.TLS, out uintptr, separator TPCRE2_UCHAR8, with_escape TBOOL) { /* pcre2_convert.c:450:1: */
 29656  	*(*Tuint8_t)(unsafe.Pointer(out + 24)) = Tuint8_t('\133')
 29657  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 1)) = Tuint8_t('\136')
 29658  	convert_glob_write_str(tls, out, uint64(2))
 29659  
 29660  	convert_glob_print_separator(tls, out, separator, with_escape)
 29661  
 29662  	convert_glob_write(tls, out, uint8('\135'))
 29663  }
 29664  
 29665  // Parse a posix class.
 29666  //
 29667  // Arguments:
 29668  //   from           starting point of scanning the range
 29669  //   pattern_end    end of pattern
 29670  //   out            output context
 29671  //
 29672  // Returns:  >0 => class index
 29673  //           0  => malformed class
 29674  
 29675  func convert_glob_parse_class(tls *libc.TLS, from uintptr, pattern_end TPCRE2_SPTR8, out uintptr) int32 { /* pcre2_convert.c:475:1: */
 29676  	var start TPCRE2_SPTR8 = *(*TPCRE2_SPTR8)(unsafe.Pointer(from)) + uintptr(1)
 29677  	var pattern TPCRE2_SPTR8 = start
 29678  	var class_ptr uintptr
 29679  	var c TPCRE2_UCHAR8
 29680  	var class_index int32
 29681  
 29682  	for 1 != 0 {
 29683  		if pattern >= pattern_end {
 29684  			return 0
 29685  		}
 29686  
 29687  		c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1)))
 29688  
 29689  		if int32(c) < '\141' || int32(c) > '\172' {
 29690  			break
 29691  		}
 29692  	}
 29693  
 29694  	if int32(c) != '\072' || pattern >= pattern_end || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) != '\135' {
 29695  		return 0
 29696  	}
 29697  
 29698  	class_ptr = posix_classes
 29699  	class_index = 1
 29700  
 29701  	for 1 != 0 {
 29702  		if int32(*(*int8)(unsafe.Pointer(class_ptr))) == 0 {
 29703  			return 0
 29704  		}
 29705  
 29706  		pattern = start
 29707  
 29708  		for int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) == int32(TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(class_ptr)))) {
 29709  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) == '\072' {
 29710  				pattern += uintptr(2)
 29711  				start -= uintptr(2)
 29712  
 29713  				for __ccgo := true; __ccgo; __ccgo = start < pattern {
 29714  					convert_glob_write(tls, out, *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&start, 1))))
 29715  				}
 29716  
 29717  				*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 29718  				return class_index
 29719  			}
 29720  			pattern++
 29721  			class_ptr++
 29722  		}
 29723  
 29724  		for int32(*(*int8)(unsafe.Pointer(class_ptr))) != '\072' {
 29725  			class_ptr++
 29726  		}
 29727  		class_ptr++
 29728  		class_index++
 29729  	}
 29730  	return int32(0)
 29731  }
 29732  
 29733  var posix_classes uintptr = ts + 712 /* "alnum:alpha:asci..." */ /* pcre2_convert.c:478:19 */
 29734  
 29735  // Checks whether the character is in the class.
 29736  //
 29737  // Arguments:
 29738  //   class_index    class index
 29739  //   c              character
 29740  //
 29741  // Returns:   !0 => character is found in the class
 29742  //             0 => otherwise
 29743  
 29744  func convert_glob_char_in_class(tls *libc.TLS, class_index int32, c TPCRE2_UCHAR8) TBOOL { /* pcre2_convert.c:541:1: */
 29745  	switch class_index {
 29746  	case 1:
 29747  		return Xisalnum(tls, int32(c))
 29748  	case 2:
 29749  		return Xisalpha(tls, int32(c))
 29750  	case 3:
 29751  		return 1
 29752  	case 4:
 29753  		return libc.Bool32(int32(c) == '\011' || int32(c) == '\040')
 29754  	case 5:
 29755  		return Xiscntrl(tls, int32(c))
 29756  	case 6:
 29757  		return Xisdigit(tls, int32(c))
 29758  	case 7:
 29759  		return Xisgraph(tls, int32(c))
 29760  	case 8:
 29761  		return Xislower(tls, int32(c))
 29762  	case 9:
 29763  		return Xisprint(tls, int32(c))
 29764  	case 10:
 29765  		return Xispunct(tls, int32(c))
 29766  	case 11:
 29767  		return Xisspace(tls, int32(c))
 29768  	case 12:
 29769  		return Xisupper(tls, int32(c))
 29770  	case 13:
 29771  		return libc.Bool32(Xisalnum(tls, int32(c)) != 0 || int32(c) == '\137')
 29772  	default:
 29773  		return Xisxdigit(tls, int32(c))
 29774  	}
 29775  	return TBOOL(0)
 29776  }
 29777  
 29778  // Parse a range of characters.
 29779  //
 29780  // Arguments:
 29781  //   from           starting point of scanning the range
 29782  //   pattern_end    end of pattern
 29783  //   out            output context
 29784  //   separator      glob separator
 29785  //   with_escape    backslash is needed before separator
 29786  //
 29787  // Returns:         0 => success
 29788  //                 !0 => error code
 29789  
 29790  func convert_glob_parse_range(tls *libc.TLS, from uintptr, pattern_end TPCRE2_SPTR8, out uintptr, utf TBOOL, separator TPCRE2_UCHAR8, with_escape TBOOL, escape TPCRE2_UCHAR8, no_wildsep TBOOL) int32 { /* pcre2_convert.c:576:1: */
 29791  	var is_negative TBOOL = DFALSE
 29792  	var separator_seen TBOOL = DFALSE
 29793  	var has_prev_c TBOOL
 29794  	var pattern TPCRE2_SPTR8 = *(*TPCRE2_SPTR8)(unsafe.Pointer(from))
 29795  	var char_start TPCRE2_SPTR8 = uintptr(0)
 29796  	var c Tuint32_t
 29797  	var prev_c Tuint32_t
 29798  	var len int32
 29799  	var class_index int32
 29800  
 29801  	_ = utf // Avoid compiler warning.
 29802  
 29803  	if pattern >= pattern_end {
 29804  		*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 29805  		return DPCRE2_ERROR_MISSING_SQUARE_BRACKET
 29806  	}
 29807  
 29808  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) == '\041' ||
 29809  		int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) == '\136' {
 29810  		pattern++
 29811  
 29812  		if pattern >= pattern_end {
 29813  			*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 29814  			return DPCRE2_ERROR_MISSING_SQUARE_BRACKET
 29815  		}
 29816  
 29817  		is_negative = DTRUE
 29818  
 29819  		*(*Tuint8_t)(unsafe.Pointer(out + 24)) = Tuint8_t('\133')
 29820  		*(*Tuint8_t)(unsafe.Pointer(out + 24 + 1)) = Tuint8_t('\136')
 29821  		len = 2
 29822  
 29823  		if !(no_wildsep != 0) {
 29824  			if with_escape != 0 {
 29825  				*(*Tuint8_t)(unsafe.Pointer(out + 24 + uintptr(len))) = Tuint8_t('\134')
 29826  				len++
 29827  			}
 29828  			*(*Tuint8_t)(unsafe.Pointer(out + 24 + uintptr(len))) = separator
 29829  		}
 29830  
 29831  		convert_glob_write_str(tls, out, uint64(len+1))
 29832  	} else {
 29833  		convert_glob_write(tls, out, uint8('\133'))
 29834  	}
 29835  
 29836  	has_prev_c = DFALSE
 29837  	prev_c = Tuint32_t(0)
 29838  
 29839  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) == '\135' {
 29840  		*(*Tuint8_t)(unsafe.Pointer(out + 24)) = Tuint8_t('\134')
 29841  		*(*Tuint8_t)(unsafe.Pointer(out + 24 + 1)) = Tuint8_t('\135')
 29842  		convert_glob_write_str(tls, out, uint64(2))
 29843  		has_prev_c = DTRUE
 29844  		prev_c = Tuint32_t('\135')
 29845  		pattern++
 29846  	}
 29847  
 29848  	for pattern < pattern_end {
 29849  		char_start = pattern
 29850  		c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))
 29851  		if utf != 0 && c >= 0xc0 {
 29852  			if c&0x20 == Tuint32_t(0) {
 29853  				c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))&0x3f
 29854  			} else if c&0x10 == Tuint32_t(0) {
 29855  				c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f
 29856  				pattern += uintptr(2)
 29857  			} else if c&0x08 == Tuint32_t(0) {
 29858  				c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f
 29859  				pattern += uintptr(3)
 29860  			} else if c&0x04 == Tuint32_t(0) {
 29861  				c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f
 29862  				pattern += uintptr(4)
 29863  			} else {
 29864  				c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 4)))&0x3f
 29865  				pattern += uintptr(5)
 29866  			}
 29867  		}
 29868  
 29869  		if c == Tuint32_t('\135') {
 29870  			convert_glob_write(tls, out, uint8(c))
 29871  
 29872  			if !(is_negative != 0) && !(no_wildsep != 0) && separator_seen != 0 {
 29873  				*(*Tuint8_t)(unsafe.Pointer(out + 24)) = Tuint8_t('\050')
 29874  				*(*Tuint8_t)(unsafe.Pointer(out + 24 + 1)) = Tuint8_t('\077')
 29875  				*(*Tuint8_t)(unsafe.Pointer(out + 24 + 2)) = Tuint8_t('\074')
 29876  				*(*Tuint8_t)(unsafe.Pointer(out + 24 + 3)) = Tuint8_t('\041')
 29877  				convert_glob_write_str(tls, out, uint64(4))
 29878  
 29879  				convert_glob_print_separator(tls, out, separator, with_escape)
 29880  				convert_glob_write(tls, out, uint8('\051'))
 29881  			}
 29882  
 29883  			*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 29884  			return 0
 29885  		}
 29886  
 29887  		if pattern >= pattern_end {
 29888  			break
 29889  		}
 29890  
 29891  		if c == Tuint32_t('\133') && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) == '\072' {
 29892  			*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 29893  			class_index = convert_glob_parse_class(tls, from, pattern_end, out)
 29894  
 29895  			if class_index != 0 {
 29896  				pattern = *(*TPCRE2_SPTR8)(unsafe.Pointer(from))
 29897  
 29898  				has_prev_c = DFALSE
 29899  				prev_c = Tuint32_t(0)
 29900  
 29901  				if !(is_negative != 0) && convert_glob_char_in_class(tls, class_index, separator) != 0 {
 29902  					separator_seen = DTRUE
 29903  				}
 29904  				continue
 29905  			}
 29906  		} else if c == Tuint32_t('\055') && has_prev_c != 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) != '\135' {
 29907  			convert_glob_write(tls, out, uint8('\055'))
 29908  
 29909  			char_start = pattern
 29910  			c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))
 29911  			if utf != 0 && c >= 0xc0 {
 29912  				if c&0x20 == Tuint32_t(0) {
 29913  					c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))&0x3f
 29914  				} else if c&0x10 == Tuint32_t(0) {
 29915  					c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f
 29916  					pattern += uintptr(2)
 29917  				} else if c&0x08 == Tuint32_t(0) {
 29918  					c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f
 29919  					pattern += uintptr(3)
 29920  				} else if c&0x04 == Tuint32_t(0) {
 29921  					c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f
 29922  					pattern += uintptr(4)
 29923  				} else {
 29924  					c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 4)))&0x3f
 29925  					pattern += uintptr(5)
 29926  				}
 29927  			}
 29928  
 29929  			if pattern >= pattern_end {
 29930  				break
 29931  			}
 29932  
 29933  			if int32(escape) != 0 && c == Tuint32_t(escape) {
 29934  				char_start = pattern
 29935  				c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))
 29936  				if utf != 0 && c >= 0xc0 {
 29937  					if c&0x20 == Tuint32_t(0) {
 29938  						c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))&0x3f
 29939  					} else if c&0x10 == Tuint32_t(0) {
 29940  						c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f
 29941  						pattern += uintptr(2)
 29942  					} else if c&0x08 == Tuint32_t(0) {
 29943  						c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f
 29944  						pattern += uintptr(3)
 29945  					} else if c&0x04 == Tuint32_t(0) {
 29946  						c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f
 29947  						pattern += uintptr(4)
 29948  					} else {
 29949  						c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 4)))&0x3f
 29950  						pattern += uintptr(5)
 29951  					}
 29952  				}
 29953  
 29954  			} else if c == Tuint32_t('\133') && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern))) == '\072' {
 29955  				*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 29956  				return -64
 29957  			}
 29958  
 29959  			if prev_c > c {
 29960  				*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 29961  				return -64
 29962  			}
 29963  
 29964  			if prev_c < Tuint32_t(separator) && Tuint32_t(separator) < c {
 29965  				separator_seen = DTRUE
 29966  			}
 29967  
 29968  			has_prev_c = DFALSE
 29969  			prev_c = Tuint32_t(0)
 29970  		} else {
 29971  			if int32(escape) != 0 && c == Tuint32_t(escape) {
 29972  				char_start = pattern
 29973  				c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))
 29974  				if utf != 0 && c >= 0xc0 {
 29975  					if c&0x20 == Tuint32_t(0) {
 29976  						c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&pattern, 1))))&0x3f
 29977  					} else if c&0x10 == Tuint32_t(0) {
 29978  						c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f
 29979  						pattern += uintptr(2)
 29980  					} else if c&0x08 == Tuint32_t(0) {
 29981  						c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f
 29982  						pattern += uintptr(3)
 29983  					} else if c&0x04 == Tuint32_t(0) {
 29984  						c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f
 29985  						pattern += uintptr(4)
 29986  					} else {
 29987  						c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(pattern + 4)))&0x3f
 29988  						pattern += uintptr(5)
 29989  					}
 29990  				}
 29991  
 29992  				if pattern >= pattern_end {
 29993  					break
 29994  				}
 29995  			}
 29996  
 29997  			has_prev_c = DTRUE
 29998  			prev_c = c
 29999  		}
 30000  
 30001  		if c == Tuint32_t('\133') || c == Tuint32_t('\135') || c == Tuint32_t('\134') || c == Tuint32_t('\055') {
 30002  			convert_glob_write(tls, out, uint8('\134'))
 30003  		}
 30004  
 30005  		if c == Tuint32_t(separator) {
 30006  			separator_seen = DTRUE
 30007  		}
 30008  
 30009  		for __ccgo := true; __ccgo; __ccgo = char_start < pattern {
 30010  			convert_glob_write(tls, out, *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&char_start, 1))))
 30011  		}
 30012  	}
 30013  
 30014  	*(*TPCRE2_SPTR8)(unsafe.Pointer(from)) = pattern
 30015  	return DPCRE2_ERROR_MISSING_SQUARE_BRACKET
 30016  }
 30017  
 30018  // Prints a (*COMMIT) into the output.
 30019  //
 30020  // Arguments:
 30021  //   out            output context
 30022  
 30023  func convert_glob_print_commit(tls *libc.TLS, out uintptr) { /* pcre2_convert.c:753:1: */
 30024  	*(*Tuint8_t)(unsafe.Pointer(out + 24)) = Tuint8_t('\050')
 30025  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 1)) = Tuint8_t('\052')
 30026  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 2)) = Tuint8_t('\103')
 30027  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 3)) = Tuint8_t('\117')
 30028  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 4)) = Tuint8_t('\115')
 30029  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 5)) = Tuint8_t('\115')
 30030  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 6)) = Tuint8_t('\111')
 30031  	*(*Tuint8_t)(unsafe.Pointer(out + 24 + 7)) = Tuint8_t('\124')
 30032  	convert_glob_write_str(tls, out, uint64(8))
 30033  	convert_glob_write(tls, out, uint8('\051'))
 30034  }
 30035  
 30036  // Bash glob converter.
 30037  //
 30038  // Arguments:
 30039  //   pattype        the pattern type
 30040  //   pattern        the pattern
 30041  //   plength        length in code units
 30042  //   utf            TRUE if UTF
 30043  //   use_buffer     where to put the output
 30044  //   use_length     length of use_buffer
 30045  //   bufflenptr     where to put the used length
 30046  //   dummyrun       TRUE if a dummy run
 30047  //   ccontext       the convert context
 30048  //
 30049  // Returns:         0 => success
 30050  //                 !0 => error code
 30051  
 30052  func convert_glob(tls *libc.TLS, options Tuint32_t, pattern TPCRE2_SPTR8, plength Tsize_t, utf TBOOL, use_buffer uintptr, use_length Tsize_t, bufflenptr uintptr, dummyrun TBOOL, ccontext uintptr) int32 { /* pcre2_convert.c:786:1: */
 30053  	bp := tls.Alloc(40)
 30054  	defer tls.Free(40)
 30055  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) = pattern
 30056  
 30057  	// var out Tpcre2_output_context at bp, 32
 30058  
 30059  	var pattern_start TPCRE2_SPTR8 = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */))
 30060  	var pattern_end TPCRE2_SPTR8 = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) + uintptr(plength)
 30061  	var separator TPCRE2_UCHAR8 = TPCRE2_UCHAR8((*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fglob_separator)
 30062  	var escape TPCRE2_UCHAR8 = TPCRE2_UCHAR8((*Tpcre2_convert_context_8)(unsafe.Pointer(ccontext)).Fglob_escape)
 30063  	var c TPCRE2_UCHAR8
 30064  	var no_wildsep TBOOL = libc.Bool32(options&DPCRE2_CONVERT_GLOB_NO_WILD_SEPARATOR != Tuint32_t(0))
 30065  	var no_starstar TBOOL = libc.Bool32(options&DPCRE2_CONVERT_GLOB_NO_STARSTAR != Tuint32_t(0))
 30066  	var in_atomic TBOOL = DFALSE
 30067  	var after_starstar TBOOL = DFALSE
 30068  	var no_slash_z TBOOL = DFALSE
 30069  	var with_escape TBOOL
 30070  	var is_start TBOOL
 30071  	var after_separator TBOOL
 30072  	var result int32 = 0
 30073  
 30074  	_ = utf // Avoid compiler warning.
 30075  
 30076  	if utf != 0 && (int32(separator) >= 128 || int32(escape) >= 128) {
 30077  		// Currently only ASCII characters are supported.
 30078  		*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = uint64(0)
 30079  		return -64
 30080  	}
 30081  
 30082  	with_escape = libc.Bool32(libc.Xstrchr(tls, pcre2_escaped_literals, int32(separator)) != uintptr(0))
 30083  
 30084  	// Initialize default for error offset as end of input.
 30085  	(*Tpcre2_output_context)(unsafe.Pointer(bp /* &out */)).Foutput = use_buffer
 30086  	(*Tpcre2_output_context)(unsafe.Pointer(bp /* &out */)).Foutput_end = use_buffer + uintptr(use_length)
 30087  	(*Tpcre2_output_context)(unsafe.Pointer(bp /* &out */)).Foutput_size = uint64(0)
 30088  
 30089  	*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\050')
 30090  	*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\077')
 30091  	*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 2)) = Tuint8_t('\163')
 30092  	*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 3)) = Tuint8_t('\051')
 30093  	convert_glob_write_str(tls, bp, uint64(4))
 30094  
 30095  	is_start = DTRUE
 30096  
 30097  	if *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) < pattern_end && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) == '\052' {
 30098  		if no_wildsep != 0 {
 30099  			is_start = DFALSE
 30100  		} else if !(no_starstar != 0) && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))+uintptr(1) < pattern_end && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) + 1))) == '\052' {
 30101  			is_start = DFALSE
 30102  		}
 30103  	}
 30104  
 30105  	if is_start != 0 {
 30106  		*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\134')
 30107  		*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\101')
 30108  		convert_glob_write_str(tls, bp, uint64(2))
 30109  	}
 30110  
 30111  	for *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) < pattern_end {
 30112  		c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */)), 1)))
 30113  
 30114  		if int32(c) == '\052' {
 30115  			is_start = libc.Bool32(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) == pattern_start+uintptr(1))
 30116  
 30117  			if in_atomic != 0 {
 30118  				convert_glob_write(tls, bp, uint8('\051'))
 30119  				in_atomic = DFALSE
 30120  			}
 30121  
 30122  			if !(no_starstar != 0) && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) < pattern_end && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) == '\052' {
 30123  				after_separator = libc.Bool32(is_start != 0 || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) + libc.UintptrFromInt32(-2)))) == int32(separator))
 30124  
 30125  				for __ccgo := true; __ccgo; __ccgo = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) < pattern_end && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) == '\052' {
 30126  					*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */))++
 30127  				}
 30128  
 30129  				if *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) >= pattern_end {
 30130  					no_slash_z = DTRUE
 30131  					break
 30132  				}
 30133  
 30134  				after_starstar = DTRUE
 30135  
 30136  				if after_separator != 0 && int32(escape) != 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) == int32(escape) && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))+uintptr(1) < pattern_end && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) + 1))) == int32(separator) {
 30137  					*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */))++
 30138  				}
 30139  
 30140  				if is_start != 0 {
 30141  					if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) != int32(separator) {
 30142  						continue
 30143  					}
 30144  
 30145  					*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\050')
 30146  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\077')
 30147  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 2)) = Tuint8_t('\072')
 30148  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 3)) = Tuint8_t('\134')
 30149  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 4)) = Tuint8_t('\101')
 30150  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 5)) = Tuint8_t('\174')
 30151  					convert_glob_write_str(tls, bp, uint64(6))
 30152  
 30153  					convert_glob_print_separator(tls, bp, separator, with_escape)
 30154  					convert_glob_write(tls, bp, uint8('\051'))
 30155  
 30156  					*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */))++
 30157  					continue
 30158  				}
 30159  
 30160  				convert_glob_print_commit(tls, bp)
 30161  
 30162  				if !(after_separator != 0) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) != int32(separator) {
 30163  					*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\056')
 30164  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\052')
 30165  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 2)) = Tuint8_t('\077')
 30166  					convert_glob_write_str(tls, bp, uint64(3))
 30167  					continue
 30168  				}
 30169  
 30170  				*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\050')
 30171  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\077')
 30172  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 2)) = Tuint8_t('\072')
 30173  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 3)) = Tuint8_t('\056')
 30174  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 4)) = Tuint8_t('\052')
 30175  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 5)) = Tuint8_t('\077')
 30176  
 30177  				convert_glob_write_str(tls, bp, uint64(6))
 30178  
 30179  				convert_glob_print_separator(tls, bp, separator, with_escape)
 30180  
 30181  				*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\051')
 30182  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\077')
 30183  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 2)) = Tuint8_t('\077')
 30184  				convert_glob_write_str(tls, bp, uint64(3))
 30185  
 30186  				*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */))++
 30187  				continue
 30188  			}
 30189  
 30190  			if *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) < pattern_end && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) == '\052' {
 30191  				for __ccgo1 := true; __ccgo1; __ccgo1 = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) < pattern_end && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))))) == '\052' {
 30192  					*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */))++
 30193  				}
 30194  			}
 30195  
 30196  			if no_wildsep != 0 {
 30197  				if *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) >= pattern_end {
 30198  					no_slash_z = DTRUE
 30199  					break
 30200  				}
 30201  
 30202  				// Start check must be after the end check.
 30203  				if is_start != 0 {
 30204  					continue
 30205  				}
 30206  			}
 30207  
 30208  			if !(is_start != 0) {
 30209  				if after_starstar != 0 {
 30210  					*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\050')
 30211  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\077')
 30212  					*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 2)) = Tuint8_t('\076')
 30213  					convert_glob_write_str(tls, bp, uint64(3))
 30214  					in_atomic = DTRUE
 30215  				} else {
 30216  					convert_glob_print_commit(tls, bp)
 30217  				}
 30218  			}
 30219  
 30220  			if no_wildsep != 0 {
 30221  				convert_glob_write(tls, bp, uint8('\056'))
 30222  			} else {
 30223  				convert_glob_print_wildcard(tls, bp, separator, with_escape)
 30224  			}
 30225  
 30226  			*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\052')
 30227  			*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\077')
 30228  			if *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) >= pattern_end {
 30229  				*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\053')
 30230  			}
 30231  			convert_glob_write_str(tls, bp, uint64(2))
 30232  			continue
 30233  		}
 30234  
 30235  		if int32(c) == '\077' {
 30236  			if no_wildsep != 0 {
 30237  				convert_glob_write(tls, bp, uint8('\056'))
 30238  			} else {
 30239  				convert_glob_print_wildcard(tls, bp, separator, with_escape)
 30240  			}
 30241  			continue
 30242  		}
 30243  
 30244  		if int32(c) == '\133' {
 30245  			result = convert_glob_parse_range(tls, bp+32, pattern_end,
 30246  				bp, utf, separator, with_escape, escape, no_wildsep)
 30247  			if result != 0 {
 30248  				break
 30249  			}
 30250  			continue
 30251  		}
 30252  
 30253  		if int32(escape) != 0 && int32(c) == int32(escape) {
 30254  			if *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32)) >= pattern_end {
 30255  				result = -64
 30256  				break
 30257  			}
 30258  			c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32 /* pattern */)), 1)))
 30259  		}
 30260  
 30261  		if int32(c) < 128 && libc.Xstrchr(tls, pcre2_escaped_literals, int32(c)) != uintptr(0) {
 30262  			convert_glob_write(tls, bp, uint8('\134'))
 30263  		}
 30264  
 30265  		convert_glob_write(tls, bp, c)
 30266  	}
 30267  
 30268  	if result == 0 {
 30269  		if !(no_slash_z != 0) {
 30270  			*(*Tuint8_t)(unsafe.Pointer(bp + 24)) = Tuint8_t('\134')
 30271  			*(*Tuint8_t)(unsafe.Pointer(bp + 24 + 1)) = Tuint8_t('\172')
 30272  			convert_glob_write_str(tls, bp, uint64(2))
 30273  		}
 30274  
 30275  		if in_atomic != 0 {
 30276  			convert_glob_write(tls, bp, uint8('\051'))
 30277  		}
 30278  
 30279  		convert_glob_write(tls, bp, uint8(0))
 30280  
 30281  		if !(dummyrun != 0) && (*Tpcre2_output_context)(unsafe.Pointer(bp)).Foutput_size != Tsize_t((int64((*Tpcre2_output_context)(unsafe.Pointer(bp)).Foutput)-int64(use_buffer))/1) {
 30282  			result = -48
 30283  		}
 30284  	}
 30285  
 30286  	if result != 0 {
 30287  		*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 32))) - int64(pattern_start)) / 1)
 30288  		return result
 30289  	}
 30290  
 30291  	*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = (*Tpcre2_output_context)(unsafe.Pointer(bp)).Foutput_size - uint64(1)
 30292  	return 0
 30293  }
 30294  
 30295  // ************************************************
 30296  //
 30297  //                Convert pattern                 *
 30298  //
 30299  
 30300  // This is the external-facing function for converting other forms of pattern
 30301  // into PCRE2 regular expression patterns. On error, the bufflenptr argument is
 30302  // used to return an offset in the original pattern.
 30303  //
 30304  // Arguments:
 30305  //   pattern     the input pattern
 30306  //   plength     length of input, or PCRE2_ZERO_TERMINATED
 30307  //   options     options bits
 30308  //   buffptr     pointer to pointer to output buffer
 30309  //   bufflenptr  pointer to length of output buffer
 30310  //   ccontext    convert context or NULL
 30311  //
 30312  // Returns:      0 for success, else an error code (+ve or -ve)
 30313  
 30314  func Xpcre2_pattern_convert_8(tls *libc.TLS, pattern TPCRE2_SPTR8, plength Tsize_t, options Tuint32_t, buffptr uintptr, bufflenptr uintptr, ccontext uintptr) int32 { /* pcre2_convert.c:1056:1: */
 30315  	bp := tls.Alloc(112)
 30316  	defer tls.Free(112)
 30317  
 30318  	var i int32
 30319  	var rc int32
 30320  	// var dummy_buffer [100]TPCRE2_UCHAR8 at bp, 100
 30321  
 30322  	var use_buffer uintptr = bp /* dummy_buffer */
 30323  	var use_length Tsize_t = uint64(DDUMMY_BUFFER_SIZE)
 30324  	var utf TBOOL = libc.Bool32(options&DPCRE2_CONVERT_UTF != Tuint32_t(0))
 30325  	var pattype Tuint32_t = options & (DPCRE2_CONVERT_GLOB | DPCRE2_CONVERT_POSIX_BASIC | DPCRE2_CONVERT_POSIX_EXTENDED)
 30326  
 30327  	if pattern == uintptr(0) || bufflenptr == uintptr(0) {
 30328  		return -51
 30329  	}
 30330  
 30331  	if options&libc.CplUint32(DPCRE2_CONVERT_UTF|DPCRE2_CONVERT_NO_UTF_CHECK|DPCRE2_CONVERT_GLOB_NO_WILD_SEPARATOR|DPCRE2_CONVERT_GLOB_NO_STARSTAR|(DPCRE2_CONVERT_GLOB|DPCRE2_CONVERT_POSIX_BASIC|DPCRE2_CONVERT_POSIX_EXTENDED)) != Tuint32_t(0) || pattype&(^pattype+Tuint32_t(1)) != pattype || pattype == Tuint32_t(0) {
 30332  		*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = uint64(0) // Error offset
 30333  		return -34
 30334  	}
 30335  
 30336  	if plength == libc.CplUint64(uint64(0)) {
 30337  		plength = X_pcre2_strlen_8(tls, pattern)
 30338  	}
 30339  	if ccontext == uintptr(0) {
 30340  		ccontext = uintptr(unsafe.Pointer(&X_pcre2_default_convert_context_8))
 30341  	}
 30342  
 30343  	// Check UTF if required.
 30344  
 30345  	if utf != 0 && options&DPCRE2_CONVERT_NO_UTF_CHECK == Tuint32_t(0) {
 30346  		// var erroroffset Tsize_t at bp+104, 8
 30347  
 30348  		rc = X_pcre2_valid_utf_8(tls, pattern, plength, bp+104)
 30349  		if rc != 0 {
 30350  			*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = *(*Tsize_t)(unsafe.Pointer(bp + 104 /* erroroffset */))
 30351  			return rc
 30352  		}
 30353  	}
 30354  
 30355  	// If buffptr is not NULL, and what it points to is not NULL, we are being
 30356  	// provided with a buffer and a length, so set them as the buffer to use.
 30357  
 30358  	if buffptr != uintptr(0) && *(*uintptr)(unsafe.Pointer(buffptr)) != uintptr(0) {
 30359  		use_buffer = *(*uintptr)(unsafe.Pointer(buffptr))
 30360  		use_length = *(*Tsize_t)(unsafe.Pointer(bufflenptr))
 30361  	}
 30362  
 30363  	// Call an individual converter, either just once (if a buffer was provided or
 30364  	// just the length is needed), or twice (if a memory allocation is required).
 30365  
 30366  	for i = 0; i < 2; i++ {
 30367  		var allocated uintptr
 30368  		var dummyrun TBOOL = libc.Bool32(buffptr == uintptr(0) || *(*uintptr)(unsafe.Pointer(buffptr)) == uintptr(0))
 30369  
 30370  		switch pattype {
 30371  		case DPCRE2_CONVERT_GLOB:
 30372  			rc = convert_glob(tls, options&libc.CplUint32(DPCRE2_CONVERT_GLOB), pattern, plength, utf,
 30373  				use_buffer, use_length, bufflenptr, dummyrun, ccontext)
 30374  			break
 30375  
 30376  		case DPCRE2_CONVERT_POSIX_BASIC:
 30377  			fallthrough
 30378  		case DPCRE2_CONVERT_POSIX_EXTENDED:
 30379  			rc = convert_posix(tls, pattype, pattern, plength, utf, use_buffer, use_length,
 30380  				bufflenptr, dummyrun, ccontext)
 30381  			break
 30382  
 30383  		default:
 30384  			*(*Tsize_t)(unsafe.Pointer(bufflenptr)) = uint64(0) // Error offset
 30385  			return -44
 30386  		}
 30387  
 30388  		if rc != 0 || buffptr == uintptr(0) || *(*uintptr)(unsafe.Pointer(buffptr)) != uintptr(0) { // Buffer was provided or allocated
 30389  			return rc
 30390  		}
 30391  
 30392  		// Allocate memory for the buffer, with hidden space for an allocator at
 30393  		//   the start. The next time round the loop runs the conversion for real.
 30394  
 30395  		allocated = X_pcre2_memctl_malloc_8(tls, uint64(unsafe.Sizeof(Tpcre2_memctl{}))+(*(*Tsize_t)(unsafe.Pointer(bufflenptr))+uint64(1))*uint64(DPCRE2_CODE_UNIT_WIDTH), ccontext)
 30396  		if allocated == uintptr(0) {
 30397  			return -48
 30398  		}
 30399  		*(*uintptr)(unsafe.Pointer(buffptr)) = allocated + uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{})))
 30400  
 30401  		use_buffer = *(*uintptr)(unsafe.Pointer(buffptr))
 30402  		use_length = *(*Tsize_t)(unsafe.Pointer(bufflenptr)) + uint64(1)
 30403  	}
 30404  
 30405  	// Control should never get here.
 30406  
 30407  	return -44
 30408  }
 30409  
 30410  // ************************************************
 30411  //
 30412  //            Free converted pattern              *
 30413  //
 30414  
 30415  // This frees a converted pattern that was put in newly-allocated memory.
 30416  //
 30417  // Argument:   the converted pattern
 30418  // Returns:    nothing
 30419  
 30420  func Xpcre2_converted_pattern_free_8(tls *libc.TLS, converted uintptr) { /* pcre2_convert.c:1171:1: */
 30421  	if converted != uintptr(0) {
 30422  		var memctl uintptr = converted - uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{})))
 30423  		(*struct {
 30424  			f func(*libc.TLS, uintptr, uintptr)
 30425  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Ffree})).f(tls, memctl, (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 30426  	}
 30427  }
 30428  
 30429  // End of pcre2_convert.c
 30430  
 30431  // This function is needed only when memmove() is not available.
 30432  
 30433  // End of pcre2_internal.h
 30434  
 30435  // ************************************************
 30436  //
 30437  //      Code parameters and static tables         *
 30438  //
 30439  
 30440  // These are offsets that are used to turn the OP_TYPESTAR and friends opcodes
 30441  // into others, under special conditions. A gap of 20 between the blocks should be
 30442  // enough. The resulting opcodes don't have to be less than 256 because they are
 30443  // never stored, so we push them well clear of the normal opcodes.
 30444  
 30445  // This table identifies those opcodes that are followed immediately by a
 30446  // character that is to be tested in some way. This makes it possible to
 30447  // centralize the loading of these characters. In the case of Type * etc, the
 30448  // "character" is the opcode for \D, \d, \S, \s, \W, or \w, which will always be a
 30449  // small value. Non-zero values in the table are the offsets from the opcode where
 30450  // the character is to be found. ***NOTE*** If the start of this table is
 30451  // modified, the three tables that follow must also be modified.
 30452  
 30453  var coptable = [168]Tuint8_t{
 30454  	Tuint8_t(0),                                                     // End
 30455  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // \A, \G, \K, \B, \b
 30456  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // \D, \d, \S, \s, \W, \w
 30457  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // Any, AllAny, Anybyte
 30458  	Tuint8_t(0), Tuint8_t(0), // \P, \p
 30459  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // \R, \H, \h, \V, \v
 30460  	Tuint8_t(0),                                                                  // \X
 30461  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // \Z, \z, $, $M, ^, ^M
 30462  	Tuint8_t(1), // Char
 30463  	Tuint8_t(1), // Chari
 30464  	Tuint8_t(1), // not
 30465  	Tuint8_t(1), // noti
 30466  	// Positive single-char repeats
 30467  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // *, *?, +, +?, ?, ??
 30468  	Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + DIMM2_SIZE),
 30469  	Tuint8_t(1 + DIMM2_SIZE),
 30470  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1 + DIMM2_SIZE),
 30471  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // *I, *?I, +I, +?I, ?I, ??I
 30472  	Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + DIMM2_SIZE),
 30473  	Tuint8_t(1 + DIMM2_SIZE),
 30474  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1 + DIMM2_SIZE),
 30475  	// Negative single-char repeats - only for chars < 256
 30476  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT *, *?, +, +?, ?, ??
 30477  	Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + DIMM2_SIZE),
 30478  	Tuint8_t(1 + DIMM2_SIZE),
 30479  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1 + DIMM2_SIZE),
 30480  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT *I, *?I, +I, +?I, ?I, ??I
 30481  	Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + DIMM2_SIZE),
 30482  	Tuint8_t(1 + DIMM2_SIZE),
 30483  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1 + DIMM2_SIZE),
 30484  	// Positive type repeats
 30485  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // Type *, *?, +, +?, ?, ??
 30486  	Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + DIMM2_SIZE),
 30487  	Tuint8_t(1 + DIMM2_SIZE),
 30488  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1 + DIMM2_SIZE),
 30489  	// Character class & ref repeats
 30490  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // *, *?, +, +?, ?, ??
 30491  	Tuint8_t(0), Tuint8_t(0), // CRRANGE, CRMINRANGE
 30492  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // Possessive *+, ++, ?+, CRPOSRANGE
 30493  	Tuint8_t(0),                                                     // CLASS
 30494  	Tuint8_t(0),                                                     // NCLASS
 30495  	Tuint8_t(0),                                                     // XCLASS - variable length
 30496  	Tuint8_t(0),                                                     // REF
 30497  	Tuint8_t(0),                                                     // REFI
 30498  	Tuint8_t(0),                                                     // DNREF
 30499  	Tuint8_t(0),                                                     // DNREFI
 30500  	Tuint8_t(0),                                                     // RECURSE
 30501  	Tuint8_t(0),                                                     // CALLOUT
 30502  	Tuint8_t(0),                                                     // CALLOUT_STR
 30503  	Tuint8_t(0),                                                     // Alt
 30504  	Tuint8_t(0),                                                     // Ket
 30505  	Tuint8_t(0),                                                     // KetRmax
 30506  	Tuint8_t(0),                                                     // KetRmin
 30507  	Tuint8_t(0),                                                     // KetRpos
 30508  	Tuint8_t(0),                                                     // Reverse
 30509  	Tuint8_t(0),                                                     // Assert
 30510  	Tuint8_t(0),                                                     // Assert not
 30511  	Tuint8_t(0),                                                     // Assert behind
 30512  	Tuint8_t(0),                                                     // Assert behind not
 30513  	Tuint8_t(0),                                                     // NA assert
 30514  	Tuint8_t(0),                                                     // NA assert behind
 30515  	Tuint8_t(0),                                                     // ONCE
 30516  	Tuint8_t(0),                                                     // SCRIPT_RUN
 30517  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // BRA, BRAPOS, CBRA, CBRAPOS, COND
 30518  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // SBRA, SBRAPOS, SCBRA, SCBRAPOS, SCOND
 30519  	Tuint8_t(0), Tuint8_t(0), // CREF, DNCREF
 30520  	Tuint8_t(0), Tuint8_t(0), // RREF, DNRREF
 30521  	Tuint8_t(0), Tuint8_t(0), // FALSE, TRUE
 30522  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // BRAZERO, BRAMINZERO, BRAPOSZERO
 30523  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // MARK, PRUNE, PRUNE_ARG
 30524  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // SKIP, SKIP_ARG, THEN, THEN_ARG
 30525  	Tuint8_t(0), Tuint8_t(0), // COMMIT, COMMIT_ARG
 30526  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // FAIL, ACCEPT, ASSERT_ACCEPT
 30527  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // CLOSE, SKIPZERO, DEFINE
 30528  } /* pcre2_dfa_match.c:116:22 */
 30529  
 30530  // This table identifies those opcodes that inspect a character. It is used to
 30531  // remember the fact that a character could have been inspected when the end of
 30532  // the subject is reached. ***NOTE*** If the start of this table is modified, the
 30533  // two tables that follow must also be modified.
 30534  
 30535  var poptable = [168]Tuint8_t{
 30536  	Tuint8_t(0),                                                     // End
 30537  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(1), Tuint8_t(1), // \A, \G, \K, \B, \b
 30538  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // \D, \d, \S, \s, \W, \w
 30539  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // Any, AllAny, Anybyte
 30540  	Tuint8_t(1), Tuint8_t(1), // \P, \p
 30541  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // \R, \H, \h, \V, \v
 30542  	Tuint8_t(1),                                                                  // \X
 30543  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // \Z, \z, $, $M, ^, ^M
 30544  	Tuint8_t(1), // Char
 30545  	Tuint8_t(1), // Chari
 30546  	Tuint8_t(1), // not
 30547  	Tuint8_t(1), // noti
 30548  	// Positive single-char repeats
 30549  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // *, *?, +, +?, ?, ??
 30550  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // upto, minupto, exact
 30551  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // *+, ++, ?+, upto+
 30552  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // *I, *?I, +I, +?I, ?I, ??I
 30553  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // upto I, minupto I, exact I
 30554  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // *+I, ++I, ?+I, upto+I
 30555  	// Negative single-char repeats - only for chars < 256
 30556  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT *, *?, +, +?, ?, ??
 30557  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT upto, minupto, exact
 30558  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT *+, ++, ?+, upto+
 30559  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT *I, *?I, +I, +?I, ?I, ??I
 30560  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT upto I, minupto I, exact I
 30561  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // NOT *+I, ++I, ?+I, upto+I
 30562  	// Positive type repeats
 30563  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // Type *, *?, +, +?, ?, ??
 30564  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // Type upto, minupto, exact
 30565  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // Type *+, ++, ?+, upto+
 30566  	// Character class & ref repeats
 30567  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // *, *?, +, +?, ?, ??
 30568  	Tuint8_t(1), Tuint8_t(1), // CRRANGE, CRMINRANGE
 30569  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), // Possessive *+, ++, ?+, CRPOSRANGE
 30570  	Tuint8_t(1),                                                     // CLASS
 30571  	Tuint8_t(1),                                                     // NCLASS
 30572  	Tuint8_t(1),                                                     // XCLASS - variable length
 30573  	Tuint8_t(0),                                                     // REF
 30574  	Tuint8_t(0),                                                     // REFI
 30575  	Tuint8_t(0),                                                     // DNREF
 30576  	Tuint8_t(0),                                                     // DNREFI
 30577  	Tuint8_t(0),                                                     // RECURSE
 30578  	Tuint8_t(0),                                                     // CALLOUT
 30579  	Tuint8_t(0),                                                     // CALLOUT_STR
 30580  	Tuint8_t(0),                                                     // Alt
 30581  	Tuint8_t(0),                                                     // Ket
 30582  	Tuint8_t(0),                                                     // KetRmax
 30583  	Tuint8_t(0),                                                     // KetRmin
 30584  	Tuint8_t(0),                                                     // KetRpos
 30585  	Tuint8_t(0),                                                     // Reverse
 30586  	Tuint8_t(0),                                                     // Assert
 30587  	Tuint8_t(0),                                                     // Assert not
 30588  	Tuint8_t(0),                                                     // Assert behind
 30589  	Tuint8_t(0),                                                     // Assert behind not
 30590  	Tuint8_t(0),                                                     // NA assert
 30591  	Tuint8_t(0),                                                     // NA assert behind
 30592  	Tuint8_t(0),                                                     // ONCE
 30593  	Tuint8_t(0),                                                     // SCRIPT_RUN
 30594  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // BRA, BRAPOS, CBRA, CBRAPOS, COND
 30595  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // SBRA, SBRAPOS, SCBRA, SCBRAPOS, SCOND
 30596  	Tuint8_t(0), Tuint8_t(0), // CREF, DNCREF
 30597  	Tuint8_t(0), Tuint8_t(0), // RREF, DNRREF
 30598  	Tuint8_t(0), Tuint8_t(0), // FALSE, TRUE
 30599  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // BRAZERO, BRAMINZERO, BRAPOSZERO
 30600  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // MARK, PRUNE, PRUNE_ARG
 30601  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // SKIP, SKIP_ARG, THEN, THEN_ARG
 30602  	Tuint8_t(0), Tuint8_t(0), // COMMIT, COMMIT_ARG
 30603  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // FAIL, ACCEPT, ASSERT_ACCEPT
 30604  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), // CLOSE, SKIPZERO, DEFINE
 30605  } /* pcre2_dfa_match.c:198:22 */
 30606  
 30607  // These 2 tables allow for compact code for testing for \D, \d, \S, \s, \W,
 30608  // and \w
 30609  
 30610  var toptable1 = [14]Tuint8_t{
 30611  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0),
 30612  	Tuint8_t(Dctype_digit), Tuint8_t(Dctype_digit),
 30613  	Tuint8_t(Dctype_space), Tuint8_t(Dctype_space),
 30614  	Tuint8_t(Dctype_word), Tuint8_t(Dctype_word),
 30615  	Tuint8_t(0), Tuint8_t(0), // OP_ANY, OP_ALLANY
 30616  } /* pcre2_dfa_match.c:273:22 */
 30617  
 30618  var toptable2 = [14]Tuint8_t{
 30619  	Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0), Tuint8_t(0),
 30620  	Tuint8_t(Dctype_digit), Tuint8_t(0),
 30621  	Tuint8_t(Dctype_space), Tuint8_t(0),
 30622  	Tuint8_t(Dctype_word), Tuint8_t(0),
 30623  	Tuint8_t(1), Tuint8_t(1), // OP_ANY, OP_ALLANY
 30624  } /* pcre2_dfa_match.c:281:22 */
 30625  
 30626  // Structure for holding data about a particular state, which is in effect the
 30627  // current data for an active path through the match tree. It must consist
 30628  // entirely of ints because the working vector we are passed, and which we put
 30629  // these structures in, is a vector of ints.
 30630  
 30631  type Sstateblock = struct {
 30632  	Foffset int32
 30633  	Fcount  int32
 30634  	Fdata   int32
 30635  } /* pcre2_dfa_match.c:295:9 */
 30636  
 30637  // Structure for holding data about a particular state, which is in effect the
 30638  // current data for an active path through the match tree. It must consist
 30639  // entirely of ints because the working vector we are passed, and which we put
 30640  // these structures in, is a vector of ints.
 30641  
 30642  type Tstateblock = Sstateblock /* pcre2_dfa_match.c:299:3 */
 30643  
 30644  // Before version 10.32 the recursive calls of internal_dfa_match() were passed
 30645  // local working space and output vectors that were created on the stack. This has
 30646  // caused issues for some patterns, especially in small-stack environments such as
 30647  // Windows. A new scheme is now in use which sets up a vector on the stack, but if
 30648  // this is too small, heap memory is used, up to the heap_limit. The main
 30649  // parameters are all numbers of ints because the workspace is a vector of ints.
 30650  //
 30651  // The size of the starting stack vector, DFA_START_RWS_SIZE, is in bytes, and is
 30652  // defined in pcre2_internal.h so as to be available to pcre2test when it is
 30653  // finding the minimum heap requirement for a match.
 30654  
 30655  // This structure is at the start of each workspace block.
 30656  
 30657  type SRWS_anchor = struct {
 30658  	Fnext uintptr
 30659  	Fsize Tuint32_t
 30660  	Ffree Tuint32_t
 30661  } /* pcre2_dfa_match.c:324:9 */
 30662  
 30663  // Before version 10.32 the recursive calls of internal_dfa_match() were passed
 30664  // local working space and output vectors that were created on the stack. This has
 30665  // caused issues for some patterns, especially in small-stack environments such as
 30666  // Windows. A new scheme is now in use which sets up a vector on the stack, but if
 30667  // this is too small, heap memory is used, up to the heap_limit. The main
 30668  // parameters are all numbers of ints because the workspace is a vector of ints.
 30669  //
 30670  // The size of the starting stack vector, DFA_START_RWS_SIZE, is in bytes, and is
 30671  // defined in pcre2_internal.h so as to be available to pcre2test when it is
 30672  // finding the minimum heap requirement for a match.
 30673  
 30674  // This structure is at the start of each workspace block.
 30675  
 30676  type TRWS_anchor = SRWS_anchor /* pcre2_dfa_match.c:328:3 */
 30677  
 30678  // ************************************************
 30679  //
 30680  //               Process a callout                *
 30681  //
 30682  
 30683  // This function is called to perform a callout.
 30684  //
 30685  // Arguments:
 30686  //   code              current code pointer
 30687  //   offsets           points to current capture offsets
 30688  //   current_subject   start of current subject match
 30689  //   ptr               current position in subject
 30690  //   mb                the match block
 30691  //   extracode         extra code offset when called from condition
 30692  //   lengthptr         where to return the callout length
 30693  //
 30694  // Returns:            the return from the callout
 30695  
 30696  func do_callout_dfa(tls *libc.TLS, code TPCRE2_SPTR8, offsets uintptr, current_subject TPCRE2_SPTR8, ptr TPCRE2_SPTR8, mb uintptr, extracode Tsize_t, lengthptr uintptr) int32 { /* pcre2_dfa_match.c:353:1: */
 30697  	var cb uintptr = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcb
 30698  
 30699  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) = func() uint64 {
 30700  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(extracode)))) == OP_CALLOUT {
 30701  			return Tsize_t(X_pcre2_OP_lengths_8[OP_CALLOUT])
 30702  		}
 30703  		return Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1+2*DLINK_SIZE)+extracode))))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1+2*DLINK_SIZE)+extracode+uint64(1)))))))
 30704  	}()
 30705  
 30706  	if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcallout == uintptr(0) {
 30707  		return 0
 30708  	} // No callout provided
 30709  
 30710  	// Fixed fields in the callout block are set once and for all at the start of
 30711  	// matching.
 30712  
 30713  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Foffset_vector = offsets
 30714  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fstart_match = Tsize_t((int64(current_subject) - int64((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 30715  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcurrent_position = Tsize_t((int64(ptr) - int64((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 30716  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fpattern_position = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1)+extracode))))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1)+extracode+uint64(1)))))))
 30717  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fnext_item_length = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1+DLINK_SIZE)+extracode))))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1+DLINK_SIZE)+extracode+uint64(1)))))))
 30718  
 30719  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(extracode)))) == OP_CALLOUT {
 30720  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_number = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1+2*DLINK_SIZE)+extracode))))
 30721  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_offset = uint64(0)
 30722  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string = uintptr(0)
 30723  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_length = uint64(0)
 30724  	} else {
 30725  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_number = Tuint32_t(0)
 30726  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_offset = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1+3*DLINK_SIZE)+extracode))))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(uint64(1+3*DLINK_SIZE)+extracode+uint64(1)))))))
 30727  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string = code + uintptr(uint64(1+4*DLINK_SIZE)+extracode) + uintptr(1)
 30728  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_length = *(*Tsize_t)(unsafe.Pointer(lengthptr)) - uint64(1+4*DLINK_SIZE) - uint64(2)
 30729  	}
 30730  
 30731  	return (*struct {
 30732  		f func(*libc.TLS, uintptr, uintptr) int32
 30733  	})(unsafe.Pointer(&struct{ uintptr }{(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcallout})).f(tls, cb, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcallout_data)
 30734  }
 30735  
 30736  // ************************************************
 30737  //
 30738  //         Expand local workspace memory          *
 30739  //
 30740  
 30741  // This function is called when internal_dfa_match() is about to be called
 30742  // recursively and there is insufficient working space left in the current
 30743  // workspace block. If there's an existing next block, use it; otherwise get a new
 30744  // block unless the heap limit is reached.
 30745  //
 30746  // Arguments:
 30747  //   rwsptr     pointer to block pointer (updated)
 30748  //   ovecsize   space needed for an ovector
 30749  //   mb         the match block
 30750  //
 30751  // Returns:     0 rwsptr has been updated
 30752  //             !0 an error code
 30753  
 30754  func more_workspace(tls *libc.TLS, rwsptr uintptr, ovecsize uint32, mb uintptr) int32 { /* pcre2_dfa_match.c:413:1: */
 30755  	var rws uintptr = *(*uintptr)(unsafe.Pointer(rwsptr))
 30756  	var new uintptr
 30757  
 30758  	if (*TRWS_anchor)(unsafe.Pointer(rws)).Fnext != uintptr(0) {
 30759  		new = (*TRWS_anchor)(unsafe.Pointer(rws)).Fnext
 30760  	} else {
 30761  		var newsize Tuint32_t
 30762  		if (*TRWS_anchor)(unsafe.Pointer(rws)).Fsize >= 4294967295/uint32(2) {
 30763  			newsize = 4294967295 / uint32(2)
 30764  		} else {
 30765  			newsize = (*TRWS_anchor)(unsafe.Pointer(rws)).Fsize * Tuint32_t(2)
 30766  		}
 30767  		var newsizeK Tuint32_t = Tuint32_t(uint64(newsize) / (uint64(1024) / uint64(unsafe.Sizeof(int32(0)))))
 30768  
 30769  		if Tsize_t(newsizeK)+(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_used > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_limit {
 30770  			newsizeK = Tuint32_t((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_limit - (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_used)
 30771  		}
 30772  		newsize = Tuint32_t(uint64(newsizeK) * (uint64(1024) / uint64(unsafe.Sizeof(int32(0)))))
 30773  
 30774  		if uint64(newsize) < uint64(uint32(DRWS_RSIZE)+ovecsize)+uint64(unsafe.Sizeof(TRWS_anchor{}))/uint64(unsafe.Sizeof(int32(0))) {
 30775  			return -63
 30776  		}
 30777  		new = (*struct {
 30778  			f func(*libc.TLS, Tsize_t, uintptr) uintptr
 30779  		})(unsafe.Pointer(&struct{ uintptr }{(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmalloc})).f(tls, uint64(newsize)*uint64(unsafe.Sizeof(int32(0))), (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmemory_data)
 30780  		if new == uintptr(0) {
 30781  			return -48
 30782  		}
 30783  		*(*Tsize_t)(unsafe.Pointer(mb + 88)) += Tsize_t(newsizeK)
 30784  		(*TRWS_anchor)(unsafe.Pointer(new)).Fnext = uintptr(0)
 30785  		(*TRWS_anchor)(unsafe.Pointer(new)).Fsize = newsize
 30786  		(*TRWS_anchor)(unsafe.Pointer(rws)).Fnext = new
 30787  	}
 30788  
 30789  	(*TRWS_anchor)(unsafe.Pointer(new)).Ffree = Tuint32_t(uint64((*TRWS_anchor)(unsafe.Pointer(new)).Fsize) - uint64(unsafe.Sizeof(TRWS_anchor{}))/uint64(unsafe.Sizeof(int32(0))))
 30790  	*(*uintptr)(unsafe.Pointer(rwsptr)) = new
 30791  	return 0
 30792  }
 30793  
 30794  // ************************************************
 30795  //
 30796  //     Match a Regular Expression - DFA engine    *
 30797  //
 30798  
 30799  // This internal function applies a compiled pattern to a subject string,
 30800  // starting at a given point, using a DFA engine. This function is called from the
 30801  // external one, possibly multiple times if the pattern is not anchored. The
 30802  // function calls itself recursively for some kinds of subpattern.
 30803  //
 30804  // Arguments:
 30805  //   mb                the match_data block with fixed information
 30806  //   this_start_code   the opening bracket of this subexpression's code
 30807  //   current_subject   where we currently are in the subject string
 30808  //   start_offset      start offset in the subject string
 30809  //   offsets           vector to contain the matching string offsets
 30810  //   offsetcount       size of same
 30811  //   workspace         vector of workspace
 30812  //   wscount           size of same
 30813  //   rlevel            function call recursion level
 30814  //
 30815  // Returns:            > 0 => number of match offset pairs placed in offsets
 30816  //                     = 0 => offsets overflowed; longest matches are present
 30817  //                      -1 => failed to match
 30818  //                    < -1 => some kind of unexpected problem
 30819  //
 30820  // The following macros are used for adding states to the two state vectors (one
 30821  // for the current character, one for the following character).
 30822  
 30823  // And now, here is the code
 30824  
 30825  func internal_dfa_match(tls *libc.TLS, mb uintptr, this_start_code TPCRE2_SPTR8, current_subject TPCRE2_SPTR8, start_offset Tsize_t, offsets uintptr, offsetcount Tuint32_t, workspace uintptr, wscount int32, rlevel Tuint32_t, RWS uintptr) int32 { /* pcre2_dfa_match.c:522:1: */
 30826  	bp := tls.Alloc(96)
 30827  	defer tls.Free(96)
 30828  
 30829  	var active_states uintptr
 30830  	var new_states uintptr
 30831  	var temp_states uintptr
 30832  	var next_active_state uintptr
 30833  	var next_new_state uintptr
 30834  	var ctypes uintptr
 30835  	var lcc uintptr
 30836  	var fcc uintptr
 30837  	var ptr TPCRE2_SPTR8
 30838  	var end_code TPCRE2_SPTR8
 30839  	// var new_recursive Tdfa_recursion_info at bp+48, 24
 30840  
 30841  	var active_count int32
 30842  	var new_count int32
 30843  	var match_count int32
 30844  
 30845  	// Some fields in the mb block are frequently referenced, so we load them into
 30846  	// independent variables in the hope that this will perform better.
 30847  
 30848  	var start_subject TPCRE2_SPTR8
 30849  	var end_subject TPCRE2_SPTR8
 30850  	var start_code TPCRE2_SPTR8
 30851  	var utf TBOOL
 30852  	var utf_or_ucp TBOOL
 30853  	var reset_could_continue TBOOL
 30854  	var back Tsize_t
 30855  	var current_offset Tsize_t
 30856  	var bstate int32
 30857  	var revlen Tuint32_t
 30858  	var back1 Tsize_t
 30859  	var max_back Tsize_t
 30860  	var gone_back Tsize_t
 30861  	var length int32
 30862  	var cat Tuint32_t
 30863  	var temp TPCRE2_SPTR8
 30864  	var temp1 TPCRE2_SPTR8
 30865  	var cat1 Tuint32_t
 30866  	var left_word int32
 30867  	var right_word int32
 30868  	var OK TBOOL
 30869  	var cp uintptr
 30870  	var prop uintptr
 30871  	var OK1 TBOOL
 30872  	var cp1 uintptr
 30873  	var prop1 uintptr
 30874  	// var ncount int32 at bp, 4
 30875  
 30876  	var ncount1 int32
 30877  	var OK2 TBOOL
 30878  	var OK3 TBOOL
 30879  	var OK4 TBOOL
 30880  	var cp2 uintptr
 30881  	var prop2 uintptr
 30882  	// var ncount2 int32 at bp+4, 4
 30883  
 30884  	var ncount3 int32
 30885  	var OK5 TBOOL
 30886  	var OK6 TBOOL
 30887  	var OK7 TBOOL
 30888  	var cp3 uintptr
 30889  	var prop3 uintptr
 30890  	var nptr TPCRE2_SPTR8
 30891  	// var ncount4 int32 at bp+8, 4
 30892  
 30893  	var ncount5 int32
 30894  	var OK8 TBOOL
 30895  	var OK9 TBOOL
 30896  	var othercase uint32
 30897  	// var ncount6 int32 at bp+12, 4
 30898  
 30899  	var nptr1 TPCRE2_SPTR8
 30900  	var otherd Tuint32_t
 30901  	var otherd1 Tuint32_t
 30902  	var otherd2 Tuint32_t
 30903  	var otherd3 Tuint32_t
 30904  	var otherd4 Tuint32_t
 30905  	var otherd5 Tuint32_t
 30906  	var max int32
 30907  	var isinclass TBOOL
 30908  	var next_state_offset int32
 30909  	var ecode TPCRE2_SPTR8
 30910  	var rc int32
 30911  	var local_workspace uintptr
 30912  	var local_offsets uintptr
 30913  	var endasscode TPCRE2_SPTR8
 30914  	// var rws uintptr at bp+16, 8
 30915  
 30916  	// var callout_length Tsize_t at bp+24, 8
 30917  
 30918  	var value uint32
 30919  	var rc1 int32
 30920  	var local_workspace1 uintptr
 30921  	var local_offsets1 uintptr
 30922  	var asscode TPCRE2_SPTR8
 30923  	var endasscode1 TPCRE2_SPTR8
 30924  	// var rws1 uintptr at bp+32, 8
 30925  
 30926  	var codelink int32
 30927  	var condcode TPCRE2_UCHAR8
 30928  	var p TPCRE2_SPTR8
 30929  	var pp TPCRE2_SPTR8
 30930  	var charcount Tsize_t
 30931  	var rc2 int32
 30932  	var local_workspace2 uintptr
 30933  	var local_offsets2 uintptr
 30934  	// var rws2 uintptr at bp+40, 8
 30935  
 30936  	var ri uintptr
 30937  	var callpat TPCRE2_SPTR8
 30938  	var recno Tuint32_t
 30939  	var p1 TPCRE2_SPTR8
 30940  	var pp1 TPCRE2_SPTR8
 30941  	var end_subpattern TPCRE2_SPTR8
 30942  	var next_state_offset1 int32
 30943  	var rc3 int32
 30944  	var local_workspace3 uintptr
 30945  	var local_offsets3 uintptr
 30946  	var charcount1 Tsize_t
 30947  	var matched_count Tsize_t
 30948  	var local_ptr TPCRE2_SPTR8
 30949  	// var rws3 uintptr at bp+72, 8
 30950  
 30951  	var allow_zero TBOOL
 30952  	var p2 TPCRE2_SPTR8
 30953  	var pp2 TPCRE2_SPTR8
 30954  	var end_subpattern1 TPCRE2_SPTR8
 30955  	var charcount2 Tsize_t
 30956  	var next_state_offset2 int32
 30957  	var repeat_state_offset int32
 30958  	var rc4 int32
 30959  	var local_workspace4 uintptr
 30960  	var local_offsets4 uintptr
 30961  	// var rws4 uintptr at bp+80, 8
 30962  
 30963  	// var callout_length1 Tsize_t at bp+88, 8
 30964  
 30965  	var current_state uintptr
 30966  	var caseless TBOOL
 30967  	var code TPCRE2_SPTR8
 30968  	var codevalue Tuint32_t
 30969  	var state_offset int32
 30970  	var rrc int32
 30971  	var count int32
 30972  	var i int32
 30973  	var j int32
 30974  	var clen int32
 30975  	var dlen int32
 30976  	var c Tuint32_t
 30977  	var d Tuint32_t
 30978  	var forced_fail int32
 30979  	var partial_newline TBOOL
 30980  	var could_continue TBOOL
 30981  	start_subject = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject
 30982  	end_subject = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject
 30983  	start_code = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_code
 30984  	utf = libc.Bool32((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UTF != Tuint32_t(0))
 30985  	utf_or_ucp = libc.Bool32(utf != 0 || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UCP != Tuint32_t(0))
 30986  	reset_could_continue = DFALSE
 30987  
 30988  	if !(libc.PostIncUint32(&(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_call_count, 1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit) {
 30989  		goto __1
 30990  	}
 30991  	return -47
 30992  __1:
 30993  	;
 30994  	if !(libc.PostIncUint32(&rlevel, 1) > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit_depth) {
 30995  		goto __2
 30996  	}
 30997  	return -53
 30998  __2:
 30999  	;
 31000  	offsetcount = offsetcount & libc.Uint32(libc.Uint32FromInt32(-2)) // Round down
 31001  
 31002  	wscount = wscount - 2
 31003  	wscount = (wscount - wscount%(int32(uint64(unsafe.Sizeof(Tstateblock{}))/uint64(unsafe.Sizeof(int32(0))))*2)) / (2 * int32(uint64(unsafe.Sizeof(Tstateblock{}))/uint64(unsafe.Sizeof(int32(0)))))
 31004  
 31005  	ctypes = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Ftables + uintptr(Dcbits_offset+Dcbit_length)
 31006  	lcc = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Ftables + uintptr(Dlcc_offset)
 31007  	fcc = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Ftables + uintptr(Dfcc_offset)
 31008  
 31009  	match_count = -1 // A negative number
 31010  
 31011  	active_states = workspace + uintptr(2)*4
 31012  	next_new_state = libc.AssignUintptr(&new_states, active_states+uintptr(wscount)*12)
 31013  	new_count = 0
 31014  
 31015  	// The first thing in any (sub) pattern is a bracket of some sort. Push all
 31016  	// the alternative states onto the list, and find out where the end is. This
 31017  	// makes is possible to use this function recursively, when we want to stop at a
 31018  	// matching internal ket rather than at the end.
 31019  	//
 31020  	// If we are dealing with a backward assertion we have to find out the maximum
 31021  	// amount to move back, and set up each alternative appropriately.
 31022  
 31023  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(this_start_code))) == OP_ASSERTBACK || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(this_start_code))) == OP_ASSERTBACK_NOT) {
 31024  		goto __3
 31025  	}
 31026  
 31027  	max_back = uint64(0)
 31028  
 31029  	end_code = this_start_code
 31030  __5:
 31031  
 31032  	back = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 4)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 5)))))
 31033  	if !(back > max_back) {
 31034  		goto __8
 31035  	}
 31036  	max_back = back
 31037  __8:
 31038  	;
 31039  	end_code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 2)))))
 31040  	goto __6
 31041  __6:
 31042  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code))) == OP_ALT {
 31043  		goto __5
 31044  	}
 31045  	goto __7
 31046  __7:
 31047  	;
 31048  
 31049  	// If we can't go back the amount required for the longest lookbehind
 31050  	//   pattern, go back as far as we can; some alternatives may still be viable.
 31051  
 31052  	// In character mode we have to step back character by character
 31053  
 31054  	if !(utf != 0) {
 31055  		goto __9
 31056  	}
 31057  
 31058  	gone_back = uint64(0)
 31059  __11:
 31060  	if !(gone_back < max_back) {
 31061  		goto __13
 31062  	}
 31063  
 31064  	if !(current_subject <= start_subject) {
 31065  		goto __14
 31066  	}
 31067  	goto __13
 31068  __14:
 31069  	;
 31070  	current_subject--
 31071  __15:
 31072  	if !(current_subject > start_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(current_subject)))&0xc0 == 0x80) {
 31073  		goto __16
 31074  	}
 31075  	current_subject--
 31076  	goto __15
 31077  __16:
 31078  	;
 31079  	goto __12
 31080  __12:
 31081  	gone_back++
 31082  	goto __11
 31083  	goto __13
 31084  __13:
 31085  	;
 31086  	goto __10
 31087  __9:
 31088  
 31089  	/* In byte-mode we can do this quickly. */
 31090  
 31091  	current_offset = Tsize_t((int64(current_subject) - int64(start_subject)) / 1)
 31092  	if current_offset < max_back {
 31093  		gone_back = current_offset
 31094  	} else {
 31095  		gone_back = max_back
 31096  	}
 31097  	current_subject -= TPCRE2_SPTR8(gone_back)
 31098  __10:
 31099  	;
 31100  
 31101  	// Save the earliest consulted character
 31102  
 31103  	if !(current_subject < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr) {
 31104  		goto __17
 31105  	}
 31106  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr = current_subject
 31107  __17:
 31108  	;
 31109  
 31110  	// Now we can process the individual branches. There will be an OP_REVERSE at
 31111  	//   the start of each branch, except when the length of the branch is zero.
 31112  
 31113  	end_code = this_start_code
 31114  __18:
 31115  
 31116  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 3))) == OP_REVERSE {
 31117  		revlen = uint32(1 + DLINK_SIZE)
 31118  	} else {
 31119  		revlen = uint32(0)
 31120  	}
 31121  	if revlen == Tuint32_t(0) {
 31122  		back1 = uint64(0)
 31123  	} else {
 31124  		back1 = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 4)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 5)))))
 31125  	}
 31126  	if !(back1 <= gone_back) {
 31127  		goto __21
 31128  	}
 31129  
 31130  	bstate = int32((int64(end_code)-int64(start_code))/1 + int64(1) + int64(DLINK_SIZE) + int64(revlen))
 31131  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 31132  		goto __22
 31133  	}
 31134  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -bstate
 31135  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 31136  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = int32(gone_back - back1)
 31137  	next_new_state += 12
 31138  	goto __23
 31139  __22:
 31140  	return -43
 31141  __23:
 31142  	;
 31143  __21:
 31144  	;
 31145  	end_code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 2)))))
 31146  	goto __19
 31147  __19:
 31148  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code))) == OP_ALT {
 31149  		goto __18
 31150  	}
 31151  	goto __20
 31152  __20:
 31153  	;
 31154  	goto __4
 31155  __3:
 31156  
 31157  	end_code = this_start_code
 31158  
 31159  	// Restarting
 31160  
 31161  	if !(rlevel == Tuint32_t(1) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_DFA_RESTART != Tuint32_t(0)) {
 31162  		goto __24
 31163  	}
 31164  
 31165  __26:
 31166  	end_code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 2)))))
 31167  	goto __27
 31168  __27:
 31169  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code))) == OP_ALT {
 31170  		goto __26
 31171  	}
 31172  	goto __28
 31173  __28:
 31174  	;
 31175  	new_count = *(*int32)(unsafe.Pointer(workspace + 1*4))
 31176  	if !!(*(*int32)(unsafe.Pointer(workspace)) != 0) {
 31177  		goto __29
 31178  	}
 31179  	libc.X__builtin___memcpy_chk(tls, new_states, active_states, Tsize_t(new_count)*Tsize_t(unsafe.Sizeof(Tstateblock{})), libc.X__builtin_object_size(tls, new_states, 0))
 31180  __29:
 31181  	;
 31182  	goto __25
 31183  __24:
 31184  
 31185  	length = 1 + DLINK_SIZE + func() int32 {
 31186  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(this_start_code))) == OP_CBRA || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(this_start_code))) == OP_SCBRA || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(this_start_code))) == OP_CBRAPOS || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(this_start_code))) == OP_SCBRAPOS {
 31187  			return DIMM2_SIZE
 31188  		}
 31189  		return 0
 31190  	}()
 31191  __30:
 31192  
 31193  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 31194  		goto __33
 31195  	}
 31196  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = int32((int64(end_code)-int64(start_code))/1 + int64(length))
 31197  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 31198  	next_new_state += 12
 31199  	goto __34
 31200  __33:
 31201  	return -43
 31202  __34:
 31203  	;
 31204  	end_code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code + 2)))))
 31205  	length = 1 + DLINK_SIZE
 31206  	goto __31
 31207  __31:
 31208  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_code))) == OP_ALT {
 31209  		goto __30
 31210  	}
 31211  	goto __32
 31212  __32:
 31213  	;
 31214  __25:
 31215  	;
 31216  __4:
 31217  	;
 31218  
 31219  	*(*int32)(unsafe.Pointer(workspace)) = 0 // Bit indicating which vector is current
 31220  
 31221  	// Loop for scanning the subject
 31222  
 31223  	ptr = current_subject
 31224  __35:
 31225  	forced_fail = 0
 31226  	partial_newline = DFALSE
 31227  	could_continue = reset_could_continue
 31228  	reset_could_continue = DFALSE
 31229  
 31230  	if !(ptr > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 31231  		goto __38
 31232  	}
 31233  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = ptr
 31234  __38:
 31235  	;
 31236  
 31237  	// Make the new state list into the active state list and empty the
 31238  	//   new state list.
 31239  
 31240  	temp_states = active_states
 31241  	active_states = new_states
 31242  	new_states = temp_states
 31243  	active_count = new_count
 31244  	new_count = 0
 31245  
 31246  	*(*int32)(unsafe.Pointer(workspace)) ^= 1 // Remember for the restarting feature
 31247  	*(*int32)(unsafe.Pointer(workspace + 1*4)) = active_count
 31248  
 31249  	// Set the pointers for adding new states
 31250  
 31251  	next_active_state = active_states + uintptr(active_count)*12
 31252  	next_new_state = new_states
 31253  
 31254  	// Load the current character from the subject outside the loop, as many
 31255  	//   different states may want to look at it, and we assume that at least one
 31256  	//   will.
 31257  
 31258  	if !(ptr < end_subject) {
 31259  		goto __39
 31260  	}
 31261  
 31262  	clen = 1 // Number of data items in the character
 31263  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))
 31264  	if !(utf != 0 && c >= 0xc0) {
 31265  		goto __41
 31266  	}
 31267  	if !(c&0x20 == Tuint32_t(0)) {
 31268  		goto __42
 31269  	}
 31270  	c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f
 31271  	clen++
 31272  	goto __43
 31273  __42:
 31274  	if !(c&0x10 == Tuint32_t(0)) {
 31275  		goto __44
 31276  	}
 31277  	c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f
 31278  	clen = clen + 2
 31279  	goto __45
 31280  __44:
 31281  	if !(c&0x08 == Tuint32_t(0)) {
 31282  		goto __46
 31283  	}
 31284  	c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f
 31285  	clen = clen + 3
 31286  	goto __47
 31287  __46:
 31288  	if !(c&0x04 == Tuint32_t(0)) {
 31289  		goto __48
 31290  	}
 31291  	c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f
 31292  	clen = clen + 4
 31293  	goto __49
 31294  __48:
 31295  	c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 5)))&0x3f
 31296  	clen = clen + 5
 31297  __49:
 31298  	;
 31299  __47:
 31300  	;
 31301  __45:
 31302  	;
 31303  __43:
 31304  	;
 31305  __41:
 31306  	;
 31307  
 31308  	goto __40
 31309  __39:
 31310  
 31311  	clen = 0 // This indicates the end of the subject
 31312  	c = DNOTACHAR // This value should never actually be used
 31313  __40:
 31314  	;
 31315  
 31316  	// Scan up the active states and act on each one. The result of an action
 31317  	//   may be to add more states to the currently active list (e.g. on hitting a
 31318  	//   parenthesis) or it may be to put states on the new list, for considering
 31319  	//   when we move the character pointer on.
 31320  
 31321  	i = 0
 31322  __50:
 31323  	if !(i < active_count) {
 31324  		goto __52
 31325  	}
 31326  	current_state = active_states + uintptr(i)*12
 31327  	caseless = DFALSE
 31328  	state_offset = (*Tstateblock)(unsafe.Pointer(current_state)).Foffset
 31329  
 31330  	// A negative offset is a special case meaning "hold off going to this
 31331  	//     (negated) state until the number of characters in the data field have
 31332  	//     been skipped". If the could_continue flag was passed over from a previous
 31333  	//     state, arrange for it to passed on.
 31334  
 31335  	if !(state_offset < 0) {
 31336  		goto __53
 31337  	}
 31338  
 31339  	if !((*Tstateblock)(unsafe.Pointer(current_state)).Fdata > 0) {
 31340  		goto __54
 31341  	}
 31342  
 31343  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 31344  		goto __56
 31345  	}
 31346  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 31347  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount
 31348  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = (*Tstateblock)(unsafe.Pointer(current_state)).Fdata - 1
 31349  	next_new_state += 12
 31350  	goto __57
 31351  __56:
 31352  	return -43
 31353  __57:
 31354  	;
 31355  	if !(could_continue != 0) {
 31356  		goto __58
 31357  	}
 31358  	reset_could_continue = DTRUE
 31359  __58:
 31360  	;
 31361  	goto __51
 31362  	goto __55
 31363  __54:
 31364  
 31365  	(*Tstateblock)(unsafe.Pointer(current_state)).Foffset = libc.AssignInt32(&state_offset, -state_offset)
 31366  __55:
 31367  	;
 31368  __53:
 31369  	;
 31370  
 31371  	// Check for a duplicate state with the same count, and skip if found.
 31372  	//     See the note at the head of this module about the possibility of improving
 31373  	//     performance here.
 31374  
 31375  	j = 0
 31376  __59:
 31377  	if !(j < i) {
 31378  		goto __61
 31379  	}
 31380  
 31381  	if !((*Tstateblock)(unsafe.Pointer(active_states+uintptr(j)*12)).Foffset == state_offset && (*Tstateblock)(unsafe.Pointer(active_states+uintptr(j)*12)).Fcount == (*Tstateblock)(unsafe.Pointer(current_state)).Fcount) {
 31382  		goto __62
 31383  	}
 31384  	goto NEXT_ACTIVE_STATE
 31385  __62:
 31386  	;
 31387  	goto __60
 31388  __60:
 31389  	j++
 31390  	goto __59
 31391  	goto __61
 31392  __61:
 31393  	;
 31394  
 31395  	// The state offset is the offset to the opcode
 31396  
 31397  	code = start_code + uintptr(state_offset)
 31398  	codevalue = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code)))
 31399  
 31400  	// If this opcode inspects a character, but we are at the end of the
 31401  	//     subject, remember the fact for use when testing for a partial match.
 31402  
 31403  	if !(clen == 0 && int32(poptable[codevalue]) != 0) {
 31404  		goto __63
 31405  	}
 31406  	could_continue = DTRUE
 31407  __63:
 31408  	;
 31409  
 31410  	// If this opcode is followed by an inline character, load it. It is
 31411  	//     tempting to test for the presence of a subject character here, but that
 31412  	//     is wrong, because sometimes zero repetitions of the subject are
 31413  	//     permitted.
 31414  	//
 31415  	//     We also use this mechanism for opcodes such as OP_TYPEPLUS that take an
 31416  	//     argument that is not a data character - but is always one byte long because
 31417  	//     the values are small. We have to take special action to deal with  \P, \p,
 31418  	//     \H, \h, \V, \v and \X in this case. To keep the other cases fast, convert
 31419  	//     these ones to new opcodes.
 31420  
 31421  	if !(int32(coptable[codevalue]) > 0) {
 31422  		goto __64
 31423  	}
 31424  
 31425  	dlen = 1
 31426  	if !(utf != 0) {
 31427  		goto __66
 31428  	}
 31429  	d = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]))))
 31430  	if !(d >= 0xc0) {
 31431  		goto __68
 31432  	}
 31433  	if !(d&0x20 == Tuint32_t(0)) {
 31434  		goto __69
 31435  	}
 31436  	d = d&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 1)))&0x3f
 31437  	dlen++
 31438  	goto __70
 31439  __69:
 31440  	if !(d&0x10 == Tuint32_t(0)) {
 31441  		goto __71
 31442  	}
 31443  	d = d&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 2)))&0x3f
 31444  	dlen = dlen + 2
 31445  	goto __72
 31446  __71:
 31447  	if !(d&0x08 == Tuint32_t(0)) {
 31448  		goto __73
 31449  	}
 31450  	d = d&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 3)))&0x3f
 31451  	dlen = dlen + 3
 31452  	goto __74
 31453  __73:
 31454  	if !(d&0x04 == Tuint32_t(0)) {
 31455  		goto __75
 31456  	}
 31457  	d = d&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 4)))&0x3f
 31458  	dlen = dlen + 4
 31459  	goto __76
 31460  __75:
 31461  	d = d&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]) + 5)))&0x3f
 31462  	dlen = dlen + 5
 31463  __76:
 31464  	;
 31465  __74:
 31466  	;
 31467  __72:
 31468  	;
 31469  __70:
 31470  	;
 31471  __68:
 31472  	;
 31473  
 31474  	goto __67
 31475  __66:
 31476  	d = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + uintptr(coptable[codevalue]))))
 31477  __67:
 31478  	;
 31479  	if !(codevalue >= OP_TYPESTAR) {
 31480  		goto __77
 31481  	}
 31482  
 31483  	switch d {
 31484  	case OP_ANYBYTE:
 31485  		goto __79
 31486  	case OP_NOTPROP:
 31487  		goto __80
 31488  	case OP_PROP:
 31489  		goto __81
 31490  	case OP_ANYNL:
 31491  		goto __82
 31492  	case OP_EXTUNI:
 31493  		goto __83
 31494  	case OP_NOT_HSPACE:
 31495  		goto __84
 31496  	case OP_HSPACE:
 31497  		goto __85
 31498  	case OP_NOT_VSPACE:
 31499  		goto __86
 31500  	case OP_VSPACE:
 31501  		goto __87
 31502  	default:
 31503  		goto __88
 31504  	}
 31505  	goto __78
 31506  
 31507  __79:
 31508  	return -42
 31509  __80:
 31510  __81:
 31511  	codevalue = codevalue + Tuint32_t(DOP_PROP_EXTRA)
 31512  	goto __78
 31513  __82:
 31514  	codevalue = codevalue + Tuint32_t(DOP_ANYNL_EXTRA)
 31515  	goto __78
 31516  __83:
 31517  	codevalue = codevalue + Tuint32_t(DOP_EXTUNI_EXTRA)
 31518  	goto __78
 31519  __84:
 31520  __85:
 31521  	codevalue = codevalue + Tuint32_t(DOP_HSPACE_EXTRA)
 31522  	goto __78
 31523  __86:
 31524  __87:
 31525  	codevalue = codevalue + Tuint32_t(DOP_VSPACE_EXTRA)
 31526  	goto __78
 31527  __88:
 31528  	goto __78
 31529  __78:
 31530  	;
 31531  __77:
 31532  	;
 31533  	goto __65
 31534  __64:
 31535  
 31536  	dlen = 0 // Not strictly necessary, but compilers moan
 31537  	d = DNOTACHAR // if these variables are not set.
 31538  __65:
 31539  	;
 31540  
 31541  	// Now process the individual opcodes
 31542  
 31543  	switch codevalue {
 31544  	// ==========================================================================
 31545  	// These cases are never obeyed. This is a fudge that causes a compile-
 31546  	//       time error if the vectors coptable or poptable, which are indexed by
 31547  	//       opcode, are not the correct length. It seems to be the only way to do
 31548  	//       such a check at compile time, as the sizeof() operator does not work
 31549  	//       in the C preprocessor.
 31550  
 31551  	case OP_TABLE_LENGTH:
 31552  		goto __90
 31553  	case Tuint32_t(OP_TABLE_LENGTH + libc.Bool32(uint64(unsafe.Sizeof(coptable)) == OP_TABLE_LENGTH && uint64(unsafe.Sizeof(poptable)) == OP_TABLE_LENGTH)):
 31554  		goto __91
 31555  
 31556  		// ==========================================================================
 31557  	// Reached a closing bracket. If not at the end of the pattern, carry
 31558  	//       on with the next opcode. For repeating opcodes, also add the repeat
 31559  	//       state. Note that KETRPOS will always be encountered at the end of the
 31560  	//       subpattern, because the possessive subpattern repeats are always handled
 31561  	//       using recursive calls. Thus, it never adds any new states.
 31562  	//
 31563  	//       At the end of the (sub)pattern, unless we have an empty string and
 31564  	//       PCRE2_NOTEMPTY is set, or PCRE2_NOTEMPTY_ATSTART is set and we are at the
 31565  	//       start of the subject, save the match data, shifting up all previous
 31566  	//       matches so we always have the longest first.
 31567  
 31568  	case OP_KET:
 31569  		goto __92
 31570  	case OP_KETRMIN:
 31571  		goto __93
 31572  	case OP_KETRMAX:
 31573  		goto __94
 31574  	case OP_KETRPOS:
 31575  		goto __95
 31576  
 31577  		// ==========================================================================
 31578  	// These opcodes add to the current list of states without looking
 31579  	//       at the current character.
 31580  
 31581  	//-----------------------------------------------------------------
 31582  	case OP_ALT:
 31583  		goto __96
 31584  
 31585  	//-----------------------------------------------------------------
 31586  	case OP_BRA:
 31587  		goto __97
 31588  	case OP_SBRA:
 31589  		goto __98
 31590  
 31591  	//-----------------------------------------------------------------
 31592  	case OP_CBRA:
 31593  		goto __99
 31594  	case OP_SCBRA:
 31595  		goto __100
 31596  
 31597  	//-----------------------------------------------------------------
 31598  	case OP_BRAZERO:
 31599  		goto __101
 31600  	case OP_BRAMINZERO:
 31601  		goto __102
 31602  
 31603  	//-----------------------------------------------------------------
 31604  	case OP_SKIPZERO:
 31605  		goto __103
 31606  
 31607  	//-----------------------------------------------------------------
 31608  	case OP_CIRC:
 31609  		goto __104
 31610  
 31611  	//-----------------------------------------------------------------
 31612  	case OP_CIRCM:
 31613  		goto __105
 31614  
 31615  	//-----------------------------------------------------------------
 31616  	case OP_EOD:
 31617  		goto __106
 31618  
 31619  	//-----------------------------------------------------------------
 31620  	case OP_SOD:
 31621  		goto __107
 31622  
 31623  	//-----------------------------------------------------------------
 31624  	case OP_SOM:
 31625  		goto __108
 31626  
 31627  		// ==========================================================================
 31628  	// These opcodes inspect the next subject character, and sometimes
 31629  	//       the previous one as well, but do not have an argument. The variable
 31630  	//       clen contains the length of the current character and is zero if we are
 31631  	//       at the end of the subject.
 31632  
 31633  	//-----------------------------------------------------------------
 31634  	case OP_ANY:
 31635  		goto __109
 31636  
 31637  	//-----------------------------------------------------------------
 31638  	case OP_ALLANY:
 31639  		goto __110
 31640  
 31641  	//-----------------------------------------------------------------
 31642  	case OP_EODN:
 31643  		goto __111
 31644  
 31645  	//-----------------------------------------------------------------
 31646  	case OP_DOLL:
 31647  		goto __112
 31648  
 31649  	//-----------------------------------------------------------------
 31650  	case OP_DOLLM:
 31651  		goto __113
 31652  
 31653  	//-----------------------------------------------------------------
 31654  
 31655  	case OP_DIGIT:
 31656  		goto __114
 31657  	case OP_WHITESPACE:
 31658  		goto __115
 31659  	case OP_WORDCHAR:
 31660  		goto __116
 31661  
 31662  	//-----------------------------------------------------------------
 31663  	case OP_NOT_DIGIT:
 31664  		goto __117
 31665  	case OP_NOT_WHITESPACE:
 31666  		goto __118
 31667  	case OP_NOT_WORDCHAR:
 31668  		goto __119
 31669  
 31670  	//-----------------------------------------------------------------
 31671  	case OP_WORD_BOUNDARY:
 31672  		goto __120
 31673  	case OP_NOT_WORD_BOUNDARY:
 31674  		goto __121
 31675  
 31676  	//-----------------------------------------------------------------
 31677  	// Check the next character by Unicode property. We will get here only
 31678  	//       if the support is in the binary; otherwise a compile-time error occurs.
 31679  	//
 31680  
 31681  	case OP_PROP:
 31682  		goto __122
 31683  	case OP_NOTPROP:
 31684  		goto __123
 31685  
 31686  		// ==========================================================================
 31687  	// These opcodes likewise inspect the subject character, but have an
 31688  	//       argument that is not a data character. It is one of these opcodes:
 31689  	//       OP_ANY, OP_ALLANY, OP_DIGIT, OP_NOT_DIGIT, OP_WHITESPACE, OP_NOT_SPACE,
 31690  	//       OP_WORDCHAR, OP_NOT_WORDCHAR. The value is loaded into d.
 31691  
 31692  	case OP_TYPEPLUS:
 31693  		goto __124
 31694  	case OP_TYPEMINPLUS:
 31695  		goto __125
 31696  	case OP_TYPEPOSPLUS:
 31697  		goto __126
 31698  
 31699  	//-----------------------------------------------------------------
 31700  	case OP_TYPEQUERY:
 31701  		goto __127
 31702  	case OP_TYPEMINQUERY:
 31703  		goto __128
 31704  	case OP_TYPEPOSQUERY:
 31705  		goto __129
 31706  
 31707  	//-----------------------------------------------------------------
 31708  	case OP_TYPESTAR:
 31709  		goto __130
 31710  	case OP_TYPEMINSTAR:
 31711  		goto __131
 31712  	case OP_TYPEPOSSTAR:
 31713  		goto __132
 31714  
 31715  	//-----------------------------------------------------------------
 31716  	case OP_TYPEEXACT:
 31717  		goto __133
 31718  
 31719  	//-----------------------------------------------------------------
 31720  	case OP_TYPEUPTO:
 31721  		goto __134
 31722  	case OP_TYPEMINUPTO:
 31723  		goto __135
 31724  	case OP_TYPEPOSUPTO:
 31725  		goto __136
 31726  
 31727  		// ==========================================================================
 31728  	// These are virtual opcodes that are used when something like
 31729  	//       OP_TYPEPLUS has OP_PROP, OP_NOTPROP, OP_ANYNL, or OP_EXTUNI as its
 31730  	//       argument. It keeps the code above fast for the other cases. The argument
 31731  	//       is in the d variable.
 31732  
 31733  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEPLUS):
 31734  		goto __137
 31735  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEMINPLUS):
 31736  		goto __138
 31737  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEPOSPLUS):
 31738  		goto __139
 31739  
 31740  	//-----------------------------------------------------------------
 31741  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEPLUS):
 31742  		goto __140
 31743  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEMINPLUS):
 31744  		goto __141
 31745  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEPOSPLUS):
 31746  		goto __142
 31747  
 31748  	//-----------------------------------------------------------------
 31749  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEPLUS):
 31750  		goto __143
 31751  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEMINPLUS):
 31752  		goto __144
 31753  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEPOSPLUS):
 31754  		goto __145
 31755  
 31756  	//-----------------------------------------------------------------
 31757  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEPLUS):
 31758  		goto __146
 31759  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEMINPLUS):
 31760  		goto __147
 31761  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEPOSPLUS):
 31762  		goto __148
 31763  
 31764  	//-----------------------------------------------------------------
 31765  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEPLUS):
 31766  		goto __149
 31767  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEMINPLUS):
 31768  		goto __150
 31769  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEPOSPLUS):
 31770  		goto __151
 31771  
 31772  	//-----------------------------------------------------------------
 31773  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEQUERY):
 31774  		goto __152
 31775  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEMINQUERY):
 31776  		goto __153
 31777  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEPOSQUERY):
 31778  		goto __154
 31779  
 31780  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPESTAR):
 31781  		goto __155
 31782  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEMINSTAR):
 31783  		goto __156
 31784  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEPOSSTAR):
 31785  		goto __157
 31786  
 31787  	//-----------------------------------------------------------------
 31788  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEQUERY):
 31789  		goto __158
 31790  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEMINQUERY):
 31791  		goto __159
 31792  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEPOSQUERY):
 31793  		goto __160
 31794  
 31795  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPESTAR):
 31796  		goto __161
 31797  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEMINSTAR):
 31798  		goto __162
 31799  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEPOSSTAR):
 31800  		goto __163
 31801  
 31802  	//-----------------------------------------------------------------
 31803  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEQUERY):
 31804  		goto __164
 31805  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEMINQUERY):
 31806  		goto __165
 31807  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEPOSQUERY):
 31808  		goto __166
 31809  
 31810  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPESTAR):
 31811  		goto __167
 31812  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEMINSTAR):
 31813  		goto __168
 31814  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEPOSSTAR):
 31815  		goto __169
 31816  
 31817  	//-----------------------------------------------------------------
 31818  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEQUERY):
 31819  		goto __170
 31820  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEMINQUERY):
 31821  		goto __171
 31822  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEPOSQUERY):
 31823  		goto __172
 31824  
 31825  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPESTAR):
 31826  		goto __173
 31827  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEMINSTAR):
 31828  		goto __174
 31829  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEPOSSTAR):
 31830  		goto __175
 31831  
 31832  	//-----------------------------------------------------------------
 31833  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEQUERY):
 31834  		goto __176
 31835  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEMINQUERY):
 31836  		goto __177
 31837  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEPOSQUERY):
 31838  		goto __178
 31839  
 31840  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPESTAR):
 31841  		goto __179
 31842  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEMINSTAR):
 31843  		goto __180
 31844  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEPOSSTAR):
 31845  		goto __181
 31846  
 31847  	//-----------------------------------------------------------------
 31848  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEEXACT):
 31849  		goto __182
 31850  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEUPTO):
 31851  		goto __183
 31852  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEMINUPTO):
 31853  		goto __184
 31854  	case Tuint32_t(DOP_PROP_EXTRA + OP_TYPEPOSUPTO):
 31855  		goto __185
 31856  
 31857  	//-----------------------------------------------------------------
 31858  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEEXACT):
 31859  		goto __186
 31860  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEUPTO):
 31861  		goto __187
 31862  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEMINUPTO):
 31863  		goto __188
 31864  	case Tuint32_t(DOP_EXTUNI_EXTRA + OP_TYPEPOSUPTO):
 31865  		goto __189
 31866  
 31867  	//-----------------------------------------------------------------
 31868  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEEXACT):
 31869  		goto __190
 31870  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEUPTO):
 31871  		goto __191
 31872  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEMINUPTO):
 31873  		goto __192
 31874  	case Tuint32_t(DOP_ANYNL_EXTRA + OP_TYPEPOSUPTO):
 31875  		goto __193
 31876  
 31877  	//-----------------------------------------------------------------
 31878  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEEXACT):
 31879  		goto __194
 31880  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEUPTO):
 31881  		goto __195
 31882  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEMINUPTO):
 31883  		goto __196
 31884  	case Tuint32_t(DOP_VSPACE_EXTRA + OP_TYPEPOSUPTO):
 31885  		goto __197
 31886  
 31887  	//-----------------------------------------------------------------
 31888  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEEXACT):
 31889  		goto __198
 31890  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEUPTO):
 31891  		goto __199
 31892  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEMINUPTO):
 31893  		goto __200
 31894  	case Tuint32_t(DOP_HSPACE_EXTRA + OP_TYPEPOSUPTO):
 31895  		goto __201
 31896  
 31897  		// ==========================================================================
 31898  	// These opcodes are followed by a character that is usually compared
 31899  	//       to the current subject character; it is loaded into d. We still get
 31900  	//       here even if there is no subject character, because in some cases zero
 31901  	//       repetitions are permitted.
 31902  
 31903  	//-----------------------------------------------------------------
 31904  	case OP_CHAR:
 31905  		goto __202
 31906  
 31907  	//-----------------------------------------------------------------
 31908  	case OP_CHARI:
 31909  		goto __203
 31910  
 31911  	//-----------------------------------------------------------------
 31912  	// This is a tricky one because it can match more than one character.
 31913  	//       Find out how many characters to skip, and then set up a negative state
 31914  	//       to wait for them to pass before continuing.
 31915  
 31916  	case OP_EXTUNI:
 31917  		goto __204
 31918  
 31919  	//-----------------------------------------------------------------
 31920  	// This is a tricky like EXTUNI because it too can match more than one
 31921  	//       character (when CR is followed by LF). In this case, set up a negative
 31922  	//       state to wait for one character to pass before continuing.
 31923  
 31924  	case OP_ANYNL:
 31925  		goto __205
 31926  
 31927  	//-----------------------------------------------------------------
 31928  	case OP_NOT_VSPACE:
 31929  		goto __206
 31930  
 31931  	//-----------------------------------------------------------------
 31932  	case OP_VSPACE:
 31933  		goto __207
 31934  
 31935  	//-----------------------------------------------------------------
 31936  	case OP_NOT_HSPACE:
 31937  		goto __208
 31938  
 31939  	//-----------------------------------------------------------------
 31940  	case OP_HSPACE:
 31941  		goto __209
 31942  
 31943  	//-----------------------------------------------------------------
 31944  	// Match a negated single character casefully.
 31945  
 31946  	case OP_NOT:
 31947  		goto __210
 31948  
 31949  	//-----------------------------------------------------------------
 31950  	// Match a negated single character caselessly.
 31951  
 31952  	case OP_NOTI:
 31953  		goto __211
 31954  
 31955  	//-----------------------------------------------------------------
 31956  	case OP_PLUSI:
 31957  		goto __212
 31958  	case OP_MINPLUSI:
 31959  		goto __213
 31960  	case OP_POSPLUSI:
 31961  		goto __214
 31962  	case OP_NOTPLUSI:
 31963  		goto __215
 31964  	case OP_NOTMINPLUSI:
 31965  		goto __216
 31966  	case OP_NOTPOSPLUSI:
 31967  		goto __217
 31968  
 31969  	// Fall through
 31970  	case OP_PLUS:
 31971  		goto __218
 31972  	case OP_MINPLUS:
 31973  		goto __219
 31974  	case OP_POSPLUS:
 31975  		goto __220
 31976  	case OP_NOTPLUS:
 31977  		goto __221
 31978  	case OP_NOTMINPLUS:
 31979  		goto __222
 31980  	case OP_NOTPOSPLUS:
 31981  		goto __223
 31982  
 31983  	//-----------------------------------------------------------------
 31984  	case OP_QUERYI:
 31985  		goto __224
 31986  	case OP_MINQUERYI:
 31987  		goto __225
 31988  	case OP_POSQUERYI:
 31989  		goto __226
 31990  	case OP_NOTQUERYI:
 31991  		goto __227
 31992  	case OP_NOTMINQUERYI:
 31993  		goto __228
 31994  	case OP_NOTPOSQUERYI:
 31995  		goto __229
 31996  	// Fall through
 31997  	case OP_QUERY:
 31998  		goto __230
 31999  	case OP_MINQUERY:
 32000  		goto __231
 32001  	case OP_POSQUERY:
 32002  		goto __232
 32003  	case OP_NOTQUERY:
 32004  		goto __233
 32005  	case OP_NOTMINQUERY:
 32006  		goto __234
 32007  	case OP_NOTPOSQUERY:
 32008  		goto __235
 32009  
 32010  	//-----------------------------------------------------------------
 32011  	case OP_STARI:
 32012  		goto __236
 32013  	case OP_MINSTARI:
 32014  		goto __237
 32015  	case OP_POSSTARI:
 32016  		goto __238
 32017  	case OP_NOTSTARI:
 32018  		goto __239
 32019  	case OP_NOTMINSTARI:
 32020  		goto __240
 32021  	case OP_NOTPOSSTARI:
 32022  		goto __241
 32023  	// Fall through
 32024  	case OP_STAR:
 32025  		goto __242
 32026  	case OP_MINSTAR:
 32027  		goto __243
 32028  	case OP_POSSTAR:
 32029  		goto __244
 32030  	case OP_NOTSTAR:
 32031  		goto __245
 32032  	case OP_NOTMINSTAR:
 32033  		goto __246
 32034  	case OP_NOTPOSSTAR:
 32035  		goto __247
 32036  
 32037  	//-----------------------------------------------------------------
 32038  	case OP_EXACTI:
 32039  		goto __248
 32040  	case OP_NOTEXACTI:
 32041  		goto __249
 32042  	// Fall through
 32043  	case OP_EXACT:
 32044  		goto __250
 32045  	case OP_NOTEXACT:
 32046  		goto __251
 32047  
 32048  	//-----------------------------------------------------------------
 32049  	case OP_UPTOI:
 32050  		goto __252
 32051  	case OP_MINUPTOI:
 32052  		goto __253
 32053  	case OP_POSUPTOI:
 32054  		goto __254
 32055  	case OP_NOTUPTOI:
 32056  		goto __255
 32057  	case OP_NOTMINUPTOI:
 32058  		goto __256
 32059  	case OP_NOTPOSUPTOI:
 32060  		goto __257
 32061  	// Fall through
 32062  	case OP_UPTO:
 32063  		goto __258
 32064  	case OP_MINUPTO:
 32065  		goto __259
 32066  	case OP_POSUPTO:
 32067  		goto __260
 32068  	case OP_NOTUPTO:
 32069  		goto __261
 32070  	case OP_NOTMINUPTO:
 32071  		goto __262
 32072  	case OP_NOTPOSUPTO:
 32073  		goto __263
 32074  
 32075  		// ==========================================================================
 32076  	// These are the class-handling opcodes
 32077  
 32078  	case OP_CLASS:
 32079  		goto __264
 32080  	case OP_NCLASS:
 32081  		goto __265
 32082  	case OP_XCLASS:
 32083  		goto __266
 32084  
 32085  		// ==========================================================================
 32086  	// These are the opcodes for fancy brackets of various kinds. We have
 32087  	//       to use recursion in order to handle them. The "always failing" assertion
 32088  	//       (?!) is optimised to OP_FAIL when compiling, so we have to support that,
 32089  	//       though the other "backtracking verbs" are not supported.
 32090  
 32091  	case OP_FAIL:
 32092  		goto __267
 32093  
 32094  	case OP_ASSERT:
 32095  		goto __268
 32096  	case OP_ASSERT_NOT:
 32097  		goto __269
 32098  	case OP_ASSERTBACK:
 32099  		goto __270
 32100  	case OP_ASSERTBACK_NOT:
 32101  		goto __271
 32102  
 32103  	//-----------------------------------------------------------------
 32104  	case OP_COND:
 32105  		goto __272
 32106  	case OP_SCOND:
 32107  		goto __273
 32108  
 32109  	//-----------------------------------------------------------------
 32110  	case OP_RECURSE:
 32111  		goto __274
 32112  
 32113  	//-----------------------------------------------------------------
 32114  	case OP_BRAPOS:
 32115  		goto __275
 32116  	case OP_SBRAPOS:
 32117  		goto __276
 32118  	case OP_CBRAPOS:
 32119  		goto __277
 32120  	case OP_SCBRAPOS:
 32121  		goto __278
 32122  	case OP_BRAPOSZERO:
 32123  		goto __279
 32124  
 32125  	//-----------------------------------------------------------------
 32126  	case OP_ONCE:
 32127  		goto __280
 32128  
 32129  		// ==========================================================================
 32130  	// Handle callouts
 32131  
 32132  	case OP_CALLOUT:
 32133  		goto __281
 32134  	case OP_CALLOUT_STR:
 32135  		goto __282
 32136  
 32137  		// ==========================================================================
 32138  	default:
 32139  		goto __283
 32140  	}
 32141  	goto __89
 32142  
 32143  	// ==========================================================================
 32144  	// These cases are never obeyed. This is a fudge that causes a compile-
 32145  	//       time error if the vectors coptable or poptable, which are indexed by
 32146  	//       opcode, are not the correct length. It seems to be the only way to do
 32147  	//       such a check at compile time, as the sizeof() operator does not work
 32148  	//       in the C preprocessor.
 32149  
 32150  __90:
 32151  __91:
 32152  	return 0
 32153  
 32154  	// ==========================================================================
 32155  	// Reached a closing bracket. If not at the end of the pattern, carry
 32156  	//       on with the next opcode. For repeating opcodes, also add the repeat
 32157  	//       state. Note that KETRPOS will always be encountered at the end of the
 32158  	//       subpattern, because the possessive subpattern repeats are always handled
 32159  	//       using recursive calls. Thus, it never adds any new states.
 32160  	//
 32161  	//       At the end of the (sub)pattern, unless we have an empty string and
 32162  	//       PCRE2_NOTEMPTY is set, or PCRE2_NOTEMPTY_ATSTART is set and we are at the
 32163  	//       start of the subject, save the match data, shifting up all previous
 32164  	//       matches so we always have the longest first.
 32165  
 32166  __92:
 32167  __93:
 32168  __94:
 32169  __95:
 32170  	if !(code != end_code) {
 32171  		goto __284
 32172  	}
 32173  
 32174  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32175  		goto __286
 32176  	}
 32177  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1 + DLINK_SIZE
 32178  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32179  	next_active_state += 12
 32180  	goto __287
 32181  __286:
 32182  	return -43
 32183  __287:
 32184  	;
 32185  	if !(codevalue != OP_KET) {
 32186  		goto __288
 32187  	}
 32188  
 32189  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32190  		goto __289
 32191  	}
 32192  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset - int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 32193  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32194  	next_active_state += 12
 32195  	goto __290
 32196  __289:
 32197  	return -43
 32198  __290:
 32199  	;
 32200  __288:
 32201  	;
 32202  	goto __285
 32203  __284:
 32204  
 32205  	if !(ptr > current_subject || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEMPTY == Tuint32_t(0) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEMPTY_ATSTART == Tuint32_t(0) || current_subject > start_subject+uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_offset))) {
 32206  		goto __291
 32207  	}
 32208  
 32209  	if !(match_count < 0) {
 32210  		goto __292
 32211  	}
 32212  	if offsetcount >= Tuint32_t(2) {
 32213  		match_count = 1
 32214  	} else {
 32215  		match_count = 0
 32216  	}
 32217  	goto __293
 32218  __292:
 32219  	if !(match_count > 0 && libc.PreIncInt32(&match_count, 1)*2 > int32(offsetcount)) {
 32220  		goto __294
 32221  	}
 32222  	match_count = 0
 32223  __294:
 32224  	;
 32225  __293:
 32226  	;
 32227  	count = func() int32 {
 32228  		if match_count == 0 {
 32229  			return int32(offsetcount)
 32230  		}
 32231  		return match_count * 2
 32232  	}() - 2
 32233  	if !(count > 0) {
 32234  		goto __295
 32235  	}
 32236  	libc.X__builtin___memmove_chk(tls, offsets+uintptr(2)*8, offsets, Tsize_t(count)*Tsize_t(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, offsets+uintptr(2)*8, 0))
 32237  __295:
 32238  	;
 32239  	if !(offsetcount >= Tuint32_t(2)) {
 32240  		goto __296
 32241  	}
 32242  
 32243  	*(*Tsize_t)(unsafe.Pointer(offsets)) = Tsize_t((int64(current_subject) - int64(start_subject)) / 1)
 32244  	*(*Tsize_t)(unsafe.Pointer(offsets + 1*8)) = Tsize_t((int64(ptr) - int64(start_subject)) / 1)
 32245  __296:
 32246  	;
 32247  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_DFA_SHORTEST != Tuint32_t(0)) {
 32248  		goto __297
 32249  	}
 32250  	return match_count
 32251  __297:
 32252  	;
 32253  __291:
 32254  	;
 32255  __285:
 32256  	;
 32257  	goto __89
 32258  
 32259  	// ==========================================================================
 32260  	// These opcodes add to the current list of states without looking
 32261  	//       at the current character.
 32262  
 32263  	//-----------------------------------------------------------------
 32264  __96:
 32265  __298:
 32266  	code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 32267  	goto __299
 32268  __299:
 32269  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 32270  		goto __298
 32271  	}
 32272  	goto __300
 32273  __300:
 32274  	;
 32275  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32276  		goto __301
 32277  	}
 32278  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(code) - int64(start_code)) / 1)
 32279  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32280  	next_active_state += 12
 32281  	goto __302
 32282  __301:
 32283  	return -43
 32284  __302:
 32285  	;
 32286  	goto __89
 32287  
 32288  	//-----------------------------------------------------------------
 32289  __97:
 32290  __98:
 32291  __303:
 32292  
 32293  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32294  		goto __306
 32295  	}
 32296  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(code)-int64(start_code))/1 + int64(1) + int64(DLINK_SIZE))
 32297  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32298  	next_active_state += 12
 32299  	goto __307
 32300  __306:
 32301  	return -43
 32302  __307:
 32303  	;
 32304  	code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 32305  	goto __304
 32306  __304:
 32307  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 32308  		goto __303
 32309  	}
 32310  	goto __305
 32311  __305:
 32312  	;
 32313  	goto __89
 32314  
 32315  	//-----------------------------------------------------------------
 32316  __99:
 32317  __100:
 32318  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32319  		goto __308
 32320  	}
 32321  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(code)-int64(start_code))/1 + int64(1) + int64(DLINK_SIZE) + int64(DIMM2_SIZE))
 32322  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32323  	next_active_state += 12
 32324  	goto __309
 32325  __308:
 32326  	return -43
 32327  __309:
 32328  	;
 32329  	code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 32330  __310:
 32331  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT) {
 32332  		goto __311
 32333  	}
 32334  
 32335  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32336  		goto __312
 32337  	}
 32338  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(code)-int64(start_code))/1 + int64(1) + int64(DLINK_SIZE))
 32339  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32340  	next_active_state += 12
 32341  	goto __313
 32342  __312:
 32343  	return -43
 32344  __313:
 32345  	;
 32346  	code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 32347  	goto __310
 32348  __311:
 32349  	;
 32350  	goto __89
 32351  
 32352  	//-----------------------------------------------------------------
 32353  __101:
 32354  __102:
 32355  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32356  		goto __314
 32357  	}
 32358  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32359  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32360  	next_active_state += 12
 32361  	goto __315
 32362  __314:
 32363  	return -43
 32364  __315:
 32365  	;
 32366  	code += TPCRE2_SPTR8(uint32(1) + uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))))
 32367  __316:
 32368  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT) {
 32369  		goto __317
 32370  	}
 32371  	code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 32372  	goto __316
 32373  __317:
 32374  	;
 32375  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32376  		goto __318
 32377  	}
 32378  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(code)-int64(start_code))/1 + int64(1) + int64(DLINK_SIZE))
 32379  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32380  	next_active_state += 12
 32381  	goto __319
 32382  __318:
 32383  	return -43
 32384  __319:
 32385  	;
 32386  	goto __89
 32387  
 32388  	//-----------------------------------------------------------------
 32389  __103:
 32390  	code += TPCRE2_SPTR8(uint32(1) + uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))))
 32391  __320:
 32392  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT) {
 32393  		goto __321
 32394  	}
 32395  	code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 32396  	goto __320
 32397  __321:
 32398  	;
 32399  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32400  		goto __322
 32401  	}
 32402  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(code)-int64(start_code))/1 + int64(1) + int64(DLINK_SIZE))
 32403  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32404  	next_active_state += 12
 32405  	goto __323
 32406  __322:
 32407  	return -43
 32408  __323:
 32409  	;
 32410  	goto __89
 32411  
 32412  	//-----------------------------------------------------------------
 32413  __104:
 32414  	if !(ptr == start_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTBOL == Tuint32_t(0)) {
 32415  		goto __324
 32416  	}
 32417  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32418  		goto __325
 32419  	}
 32420  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32421  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32422  	next_active_state += 12
 32423  	goto __326
 32424  __325:
 32425  	return -43
 32426  __326:
 32427  	;
 32428  __324:
 32429  	;
 32430  	goto __89
 32431  
 32432  	//-----------------------------------------------------------------
 32433  __105:
 32434  	if !(ptr == start_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTBOL == Tuint32_t(0) || (ptr != end_subject || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_ALT_CIRCUMFLEX != Tuint32_t(0)) &&
 32435  		func() int32 {
 32436  			if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 32437  				return libc.Bool32(ptr > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject && X_pcre2_was_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject, mb+120, utf) != 0)
 32438  			}
 32439  			return libc.Bool32(ptr >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr - uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr - uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 32440  		}() != 0) {
 32441  		goto __327
 32442  	}
 32443  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32444  		goto __328
 32445  	}
 32446  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32447  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32448  	next_active_state += 12
 32449  	goto __329
 32450  __328:
 32451  	return -43
 32452  __329:
 32453  	;
 32454  __327:
 32455  	;
 32456  	goto __89
 32457  
 32458  	//-----------------------------------------------------------------
 32459  __106:
 32460  	if !(ptr >= end_subject) {
 32461  		goto __330
 32462  	}
 32463  
 32464  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 32465  		goto __331
 32466  	}
 32467  	return -2
 32468  	goto __332
 32469  __331:
 32470  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32471  		goto __333
 32472  	}
 32473  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32474  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32475  	next_active_state += 12
 32476  	goto __334
 32477  __333:
 32478  	return -43
 32479  __334:
 32480  	;
 32481  __332:
 32482  	;
 32483  __330:
 32484  	;
 32485  	goto __89
 32486  
 32487  	//-----------------------------------------------------------------
 32488  __107:
 32489  	if !(ptr == start_subject) {
 32490  		goto __335
 32491  	}
 32492  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32493  		goto __336
 32494  	}
 32495  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32496  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32497  	next_active_state += 12
 32498  	goto __337
 32499  __336:
 32500  	return -43
 32501  __337:
 32502  	;
 32503  __335:
 32504  	;
 32505  	goto __89
 32506  
 32507  	//-----------------------------------------------------------------
 32508  __108:
 32509  	if !(ptr == start_subject+uintptr(start_offset)) {
 32510  		goto __338
 32511  	}
 32512  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32513  		goto __339
 32514  	}
 32515  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32516  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32517  	next_active_state += 12
 32518  	goto __340
 32519  __339:
 32520  	return -43
 32521  __340:
 32522  	;
 32523  __338:
 32524  	;
 32525  	goto __89
 32526  
 32527  	// ==========================================================================
 32528  	// These opcodes inspect the next subject character, and sometimes
 32529  	//       the previous one as well, but do not have an argument. The variable
 32530  	//       clen contains the length of the current character and is zero if we are
 32531  	//       at the end of the subject.
 32532  
 32533  	//-----------------------------------------------------------------
 32534  __109:
 32535  	if !(clen > 0 && !(func() int32 {
 32536  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 32537  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 32538  		}
 32539  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 32540  	}() != 0)) {
 32541  		goto __341
 32542  	}
 32543  
 32544  	if !(ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 32545  		goto __342
 32546  	}
 32547  
 32548  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 32549  	goto __343
 32550  __342:
 32551  
 32552  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 32553  		goto __344
 32554  	}
 32555  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 32556  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 32557  	next_new_state += 12
 32558  	goto __345
 32559  __344:
 32560  	return -43
 32561  __345:
 32562  	;
 32563  __343:
 32564  	;
 32565  __341:
 32566  	;
 32567  	goto __89
 32568  
 32569  	//-----------------------------------------------------------------
 32570  __110:
 32571  	if !(clen > 0) {
 32572  		goto __346
 32573  	}
 32574  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 32575  		goto __347
 32576  	}
 32577  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 32578  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 32579  	next_new_state += 12
 32580  	goto __348
 32581  __347:
 32582  	return -43
 32583  __348:
 32584  	;
 32585  __346:
 32586  	;
 32587  	goto __89
 32588  
 32589  	//-----------------------------------------------------------------
 32590  __111:
 32591  	if !(clen == 0 || func() int32 {
 32592  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 32593  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 32594  		}
 32595  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 32596  	}() != 0 && ptr == end_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen)) {
 32597  		goto __349
 32598  	}
 32599  
 32600  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 32601  		goto __350
 32602  	}
 32603  	return -2
 32604  __350:
 32605  	;
 32606  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32607  		goto __351
 32608  	}
 32609  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32610  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32611  	next_active_state += 12
 32612  	goto __352
 32613  __351:
 32614  	return -43
 32615  __352:
 32616  	;
 32617  __349:
 32618  	;
 32619  	goto __89
 32620  
 32621  	//-----------------------------------------------------------------
 32622  __112:
 32623  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEOL == Tuint32_t(0)) {
 32624  		goto __353
 32625  	}
 32626  
 32627  	if !(clen == 0 && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 32628  		goto __354
 32629  	}
 32630  	could_continue = DTRUE
 32631  	goto __355
 32632  __354:
 32633  	if !(clen == 0 || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_DOLLAR_ENDONLY == Tuint32_t(0) && func() int32 {
 32634  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 32635  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 32636  		}
 32637  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 32638  	}() != 0 && ptr == end_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen)) {
 32639  		goto __356
 32640  	}
 32641  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32642  		goto __358
 32643  	}
 32644  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32645  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32646  	next_active_state += 12
 32647  	goto __359
 32648  __358:
 32649  	return -43
 32650  __359:
 32651  	;
 32652  	goto __357
 32653  __356:
 32654  	if !(ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&(DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT) != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 32655  		goto __360
 32656  	}
 32657  
 32658  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 32659  		goto __361
 32660  	}
 32661  
 32662  	reset_could_continue = DTRUE
 32663  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 32664  		goto __363
 32665  	}
 32666  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 1)
 32667  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 32668  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 1
 32669  	next_new_state += 12
 32670  	goto __364
 32671  __363:
 32672  	return -43
 32673  __364:
 32674  	;
 32675  	goto __362
 32676  __361:
 32677  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 32678  __362:
 32679  	;
 32680  __360:
 32681  	;
 32682  __357:
 32683  	;
 32684  __355:
 32685  	;
 32686  __353:
 32687  	;
 32688  	goto __89
 32689  
 32690  	//-----------------------------------------------------------------
 32691  __113:
 32692  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEOL == Tuint32_t(0)) {
 32693  		goto __365
 32694  	}
 32695  
 32696  	if !(clen == 0 && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 32697  		goto __367
 32698  	}
 32699  	could_continue = DTRUE
 32700  	goto __368
 32701  __367:
 32702  	if !(clen == 0 || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_DOLLAR_ENDONLY == Tuint32_t(0) && func() int32 {
 32703  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 32704  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 32705  		}
 32706  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 32707  	}() != 0) {
 32708  		goto __369
 32709  	}
 32710  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32711  		goto __371
 32712  	}
 32713  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32714  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32715  	next_active_state += 12
 32716  	goto __372
 32717  __371:
 32718  	return -43
 32719  __372:
 32720  	;
 32721  	goto __370
 32722  __369:
 32723  	if !(ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&(DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT) != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 32724  		goto __373
 32725  	}
 32726  
 32727  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 32728  		goto __374
 32729  	}
 32730  
 32731  	reset_could_continue = DTRUE
 32732  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 32733  		goto __376
 32734  	}
 32735  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 1)
 32736  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 32737  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 1
 32738  	next_new_state += 12
 32739  	goto __377
 32740  __376:
 32741  	return -43
 32742  __377:
 32743  	;
 32744  	goto __375
 32745  __374:
 32746  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 32747  __375:
 32748  	;
 32749  __373:
 32750  	;
 32751  __370:
 32752  	;
 32753  __368:
 32754  	;
 32755  	goto __366
 32756  __365:
 32757  	if !(func() int32 {
 32758  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 32759  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 32760  		}
 32761  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 32762  	}() != 0) {
 32763  		goto __378
 32764  	}
 32765  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32766  		goto __379
 32767  	}
 32768  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32769  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32770  	next_active_state += 12
 32771  	goto __380
 32772  __379:
 32773  	return -43
 32774  __380:
 32775  	;
 32776  __378:
 32777  	;
 32778  __366:
 32779  	;
 32780  	goto __89
 32781  
 32782  	//-----------------------------------------------------------------
 32783  
 32784  __114:
 32785  __115:
 32786  __116:
 32787  	if !(clen > 0 && c < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&int32(toptable1[codevalue])^int32(toptable2[codevalue]) != 0) {
 32788  		goto __381
 32789  	}
 32790  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 32791  		goto __382
 32792  	}
 32793  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 32794  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 32795  	next_new_state += 12
 32796  	goto __383
 32797  __382:
 32798  	return -43
 32799  __383:
 32800  	;
 32801  __381:
 32802  	;
 32803  	goto __89
 32804  
 32805  	//-----------------------------------------------------------------
 32806  __117:
 32807  __118:
 32808  __119:
 32809  	if !(clen > 0 && (c >= Tuint32_t(256) || int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&int32(toptable1[codevalue])^int32(toptable2[codevalue]) != 0)) {
 32810  		goto __384
 32811  	}
 32812  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 32813  		goto __385
 32814  	}
 32815  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 32816  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 32817  	next_new_state += 12
 32818  	goto __386
 32819  __385:
 32820  	return -43
 32821  __386:
 32822  	;
 32823  __384:
 32824  	;
 32825  	goto __89
 32826  
 32827  	//-----------------------------------------------------------------
 32828  __120:
 32829  __121:
 32830  
 32831  	if !(ptr > start_subject) {
 32832  		goto __387
 32833  	}
 32834  
 32835  	temp = ptr - uintptr(1)
 32836  	if !(temp < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr) {
 32837  		goto __389
 32838  	}
 32839  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr = temp
 32840  __389:
 32841  	;
 32842  	if !(utf != 0) {
 32843  		goto __390
 32844  	}
 32845  __391:
 32846  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp)))&0xc0 == 0x80) {
 32847  		goto __392
 32848  	}
 32849  	temp--
 32850  	goto __391
 32851  __392:
 32852  	;
 32853  __390:
 32854  	;
 32855  	d = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp)))
 32856  	if !(utf != 0 && d >= 0xc0) {
 32857  		goto __393
 32858  	}
 32859  	if !(d&0x20 == Tuint32_t(0)) {
 32860  		goto __394
 32861  	}
 32862  	d = d&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 1)))&0x3f
 32863  	goto __395
 32864  __394:
 32865  	if !(d&0x10 == Tuint32_t(0)) {
 32866  		goto __396
 32867  	}
 32868  	d = d&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 2)))&0x3f
 32869  	goto __397
 32870  __396:
 32871  	if !(d&0x08 == Tuint32_t(0)) {
 32872  		goto __398
 32873  	}
 32874  	d = d&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 3)))&0x3f
 32875  	goto __399
 32876  __398:
 32877  	if !(d&0x04 == Tuint32_t(0)) {
 32878  		goto __400
 32879  	}
 32880  	d = d&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 4)))&0x3f
 32881  	goto __401
 32882  __400:
 32883  	d = d&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp + 5)))&0x3f
 32884  __401:
 32885  	;
 32886  __399:
 32887  	;
 32888  __397:
 32889  	;
 32890  __395:
 32891  	;
 32892  __393:
 32893  	;
 32894  
 32895  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UCP != Tuint32_t(0)) {
 32896  		goto __402
 32897  	}
 32898  
 32899  	if !(d == Tuint32_t('_')) {
 32900  		goto __404
 32901  	}
 32902  	left_word = DTRUE
 32903  	goto __405
 32904  __404:
 32905  
 32906  	cat = X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12)).Fchartype]
 32907  	left_word = libc.Bool32(cat == ucp_L || cat == ucp_N)
 32908  __405:
 32909  	;
 32910  	goto __403
 32911  __402:
 32912  	left_word = libc.Bool32(d < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(d))))&Dctype_word != 0)
 32913  __403:
 32914  	;
 32915  	goto __388
 32916  __387:
 32917  	left_word = DFALSE
 32918  __388:
 32919  	;
 32920  
 32921  	if !(clen > 0) {
 32922  		goto __406
 32923  	}
 32924  
 32925  	if !(ptr >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 32926  		goto __408
 32927  	}
 32928  
 32929  	temp1 = ptr + uintptr(1)
 32930  	if !(utf != 0) {
 32931  		goto __409
 32932  	}
 32933  __410:
 32934  	if !(temp1 < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(temp1)))&0xc0 == 0x80) {
 32935  		goto __411
 32936  	}
 32937  	temp1++
 32938  	goto __410
 32939  __411:
 32940  	;
 32941  __409:
 32942  	;
 32943  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = temp1
 32944  __408:
 32945  	;
 32946  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UCP != Tuint32_t(0)) {
 32947  		goto __412
 32948  	}
 32949  
 32950  	if !(c == Tuint32_t('_')) {
 32951  		goto __414
 32952  	}
 32953  	right_word = DTRUE
 32954  	goto __415
 32955  __414:
 32956  
 32957  	cat1 = X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fchartype]
 32958  	right_word = libc.Bool32(cat1 == ucp_L || cat1 == ucp_N)
 32959  __415:
 32960  	;
 32961  	goto __413
 32962  __412:
 32963  	right_word = libc.Bool32(c < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&Dctype_word != 0)
 32964  __413:
 32965  	;
 32966  	goto __407
 32967  __406:
 32968  	right_word = DFALSE
 32969  __407:
 32970  	;
 32971  
 32972  	if !(libc.Bool32(left_word == right_word) == libc.Bool32(codevalue == OP_NOT_WORD_BOUNDARY)) {
 32973  		goto __416
 32974  	}
 32975  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 32976  		goto __417
 32977  	}
 32978  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1
 32979  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 32980  	next_active_state += 12
 32981  	goto __418
 32982  __417:
 32983  	return -43
 32984  __418:
 32985  	;
 32986  __416:
 32987  	;
 32988  
 32989  	goto __89
 32990  
 32991  	//-----------------------------------------------------------------
 32992  	// Check the next character by Unicode property. We will get here only
 32993  	//       if the support is in the binary; otherwise a compile-time error occurs.
 32994  	//
 32995  
 32996  __122:
 32997  __123:
 32998  	if !(clen > 0) {
 32999  		goto __419
 33000  	}
 33001  
 33002  	prop = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12
 33003  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) {
 33004  	case DPT_ANY:
 33005  		goto __421
 33006  
 33007  	case DPT_LAMP:
 33008  		goto __422
 33009  
 33010  	case DPT_GC:
 33011  		goto __423
 33012  
 33013  	case DPT_PC:
 33014  		goto __424
 33015  
 33016  	case DPT_SC:
 33017  		goto __425
 33018  
 33019  	case DPT_SCX:
 33020  		goto __426
 33021  
 33022  	// These are specials for combination cases.
 33023  
 33024  	case DPT_ALNUM:
 33025  		goto __427
 33026  
 33027  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 33028  	//           which means that Perl space and POSIX space are now identical. PCRE
 33029  	//           was changed at release 8.34.
 33030  
 33031  	case DPT_SPACE:
 33032  		goto __428 // Perl space
 33033  	case DPT_PXSPACE:
 33034  		goto __429
 33035  
 33036  	case DPT_WORD:
 33037  		goto __430
 33038  
 33039  	case DPT_CLIST:
 33040  		goto __431
 33041  
 33042  	case DPT_UCNC:
 33043  		goto __432
 33044  
 33045  	case DPT_BIDICL:
 33046  		goto __433
 33047  
 33048  	case DPT_BOOL:
 33049  		goto __434
 33050  
 33051  	// Should never occur, but keep compilers from grumbling.
 33052  
 33053  	default:
 33054  		goto __435
 33055  	}
 33056  	goto __420
 33057  
 33058  __421:
 33059  	OK = DTRUE
 33060  	goto __420
 33061  
 33062  __422:
 33063  	OK = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lu || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Ll || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lt)
 33064  	goto __420
 33065  
 33066  __423:
 33067  	OK = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))))
 33068  	goto __420
 33069  
 33070  __424:
 33071  	OK = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))))
 33072  	goto __420
 33073  
 33074  __425:
 33075  	OK = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))))
 33076  	goto __420
 33077  
 33078  __426:
 33079  	OK = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))%32)) != Tuint32_t(0))
 33080  	goto __420
 33081  
 33082  	// These are specials for combination cases.
 33083  
 33084  __427:
 33085  	OK = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N)
 33086  	goto __420
 33087  
 33088  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 33089  	//           which means that Perl space and POSIX space are now identical. PCRE
 33090  	//           was changed at release 8.34.
 33091  
 33092  __428: // Perl space
 33093  __429: // POSIX space
 33094  	switch c {
 33095  	case Tuint32_t('\011'):
 33096  		goto __437
 33097  	case Tuint32_t('\040'):
 33098  		goto __438
 33099  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 33100  		goto __439
 33101  	case Tuint32_t(0x1680):
 33102  		goto __440 /* OGHAM SPACE MARK */
 33103  	case Tuint32_t(0x180e):
 33104  		goto __441 /* MONGOLIAN VOWEL SEPARATOR */
 33105  	case Tuint32_t(0x2000):
 33106  		goto __442 /* EN QUAD */
 33107  	case Tuint32_t(0x2001):
 33108  		goto __443 /* EM QUAD */
 33109  	case Tuint32_t(0x2002):
 33110  		goto __444 /* EN SPACE */
 33111  	case Tuint32_t(0x2003):
 33112  		goto __445 /* EM SPACE */
 33113  	case Tuint32_t(0x2004):
 33114  		goto __446 /* THREE-PER-EM SPACE */
 33115  	case Tuint32_t(0x2005):
 33116  		goto __447 /* FOUR-PER-EM SPACE */
 33117  	case Tuint32_t(0x2006):
 33118  		goto __448 /* SIX-PER-EM SPACE */
 33119  	case Tuint32_t(0x2007):
 33120  		goto __449 /* FIGURE SPACE */
 33121  	case Tuint32_t(0x2008):
 33122  		goto __450 /* PUNCTUATION SPACE */
 33123  	case Tuint32_t(0x2009):
 33124  		goto __451 /* THIN SPACE */
 33125  	case Tuint32_t(0x200A):
 33126  		goto __452 /* HAIR SPACE */
 33127  	case Tuint32_t(0x202f):
 33128  		goto __453 /* NARROW NO-BREAK SPACE */
 33129  	case Tuint32_t(0x205f):
 33130  		goto __454 /* MEDIUM MATHEMATICAL SPACE */
 33131  	case Tuint32_t(0x3000):
 33132  		goto __455
 33133  	case Tuint32_t('\012'):
 33134  		goto __456
 33135  	case Tuint32_t('\013'):
 33136  		goto __457
 33137  	case Tuint32_t('\014'):
 33138  		goto __458
 33139  	case Tuint32_t('\015'):
 33140  		goto __459
 33141  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 33142  		goto __460
 33143  	case Tuint32_t(0x2028):
 33144  		goto __461 /* LINE SEPARATOR */
 33145  	case Tuint32_t(0x2029):
 33146  		goto __462
 33147  
 33148  	default:
 33149  		goto __463
 33150  	}
 33151  	goto __436
 33152  
 33153  __437:
 33154  __438:
 33155  __439:
 33156  __440: /* OGHAM SPACE MARK */
 33157  __441: /* MONGOLIAN VOWEL SEPARATOR */
 33158  __442: /* EN QUAD */
 33159  __443: /* EM QUAD */
 33160  __444: /* EN SPACE */
 33161  __445: /* EM SPACE */
 33162  __446: /* THREE-PER-EM SPACE */
 33163  __447: /* FOUR-PER-EM SPACE */
 33164  __448: /* SIX-PER-EM SPACE */
 33165  __449: /* FIGURE SPACE */
 33166  __450: /* PUNCTUATION SPACE */
 33167  __451: /* THIN SPACE */
 33168  __452: /* HAIR SPACE */
 33169  __453: /* NARROW NO-BREAK SPACE */
 33170  __454: /* MEDIUM MATHEMATICAL SPACE */
 33171  __455:
 33172  __456:
 33173  __457:
 33174  __458:
 33175  __459:
 33176  __460:
 33177  __461: /* LINE SEPARATOR */
 33178  __462:
 33179  	OK = DTRUE
 33180  	goto __436
 33181  
 33182  __463:
 33183  	OK = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_Z)
 33184  	goto __436
 33185  __436:
 33186  	;
 33187  	goto __420
 33188  
 33189  __430:
 33190  	OK = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N || c == Tuint32_t('\137'))
 33191  	goto __420
 33192  
 33193  __431:
 33194  	cp = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))*4
 33195  __464:
 33196  
 33197  	if !(c < *(*Tuint32_t)(unsafe.Pointer(cp))) {
 33198  		goto __467
 33199  	}
 33200  	OK = DFALSE
 33201  	goto __466
 33202  __467:
 33203  	;
 33204  	if !(c == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp, 4)))) {
 33205  		goto __468
 33206  	}
 33207  	OK = DTRUE
 33208  	goto __466
 33209  __468:
 33210  	;
 33211  	goto __465
 33212  __465:
 33213  	goto __464
 33214  	goto __466
 33215  __466:
 33216  	;
 33217  	goto __420
 33218  
 33219  __432:
 33220  	OK = libc.Bool32(c == Tuint32_t('\044') || c == Tuint32_t('\100') || c == Tuint32_t('\140') || c >= Tuint32_t(0xa0) && c <= Tuint32_t(0xd7ff) || c >= Tuint32_t(0xe000))
 33221  	goto __420
 33222  
 33223  __433:
 33224  	OK = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))))
 33225  	goto __420
 33226  
 33227  __434:
 33228  	OK = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))%32)) != Tuint32_t(0))
 33229  	goto __420
 33230  
 33231  	// Should never occur, but keep compilers from grumbling.
 33232  
 33233  __435:
 33234  	OK = libc.Bool32(codevalue != OP_PROP)
 33235  	goto __420
 33236  __420:
 33237  	;
 33238  
 33239  	if !(OK == libc.Bool32(codevalue == OP_PROP)) {
 33240  		goto __469
 33241  	}
 33242  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33243  		goto __470
 33244  	}
 33245  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 3
 33246  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 33247  	next_new_state += 12
 33248  	goto __471
 33249  __470:
 33250  	return -43
 33251  __471:
 33252  	;
 33253  __469:
 33254  	;
 33255  __419:
 33256  	;
 33257  	goto __89
 33258  
 33259  	// ==========================================================================
 33260  	// These opcodes likewise inspect the subject character, but have an
 33261  	//       argument that is not a data character. It is one of these opcodes:
 33262  	//       OP_ANY, OP_ALLANY, OP_DIGIT, OP_NOT_DIGIT, OP_WHITESPACE, OP_NOT_SPACE,
 33263  	//       OP_WORDCHAR, OP_NOT_WORDCHAR. The value is loaded into d.
 33264  
 33265  __124:
 33266  __125:
 33267  __126:
 33268  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 33269  	if !(count > 0) {
 33270  		goto __472
 33271  	}
 33272  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 33273  		goto __473
 33274  	}
 33275  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 33276  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 33277  	next_active_state += 12
 33278  	goto __474
 33279  __473:
 33280  	return -43
 33281  __474:
 33282  	;
 33283  __472:
 33284  	;
 33285  	if !(clen > 0) {
 33286  		goto __475
 33287  	}
 33288  
 33289  	if !(d == OP_ANY && ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 33290  		goto __476
 33291  	}
 33292  
 33293  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 33294  	goto __477
 33295  __476:
 33296  	if !(c >= Tuint32_t(256) && d != OP_DIGIT && d != OP_WHITESPACE && d != OP_WORDCHAR || c < Tuint32_t(256) && (d != OP_ANY || !(func() int32 {
 33297  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 33298  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 33299  		}
 33300  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 33301  	}() != 0)) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&int32(toptable1[d])^int32(toptable2[d]) != 0) {
 33302  		goto __478
 33303  	}
 33304  
 33305  	if !(count > 0 && codevalue == OP_TYPEPOSPLUS) {
 33306  		goto __479
 33307  	}
 33308  
 33309  	active_count-- // Remove non-match possibility
 33310  	next_active_state -= 12
 33311  __479:
 33312  	;
 33313  	count++
 33314  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33315  		goto __480
 33316  	}
 33317  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 33318  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 33319  	next_new_state += 12
 33320  	goto __481
 33321  __480:
 33322  	return -43
 33323  __481:
 33324  	;
 33325  __478:
 33326  	;
 33327  __477:
 33328  	;
 33329  __475:
 33330  	;
 33331  	goto __89
 33332  
 33333  	//-----------------------------------------------------------------
 33334  __127:
 33335  __128:
 33336  __129:
 33337  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 33338  		goto __482
 33339  	}
 33340  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 33341  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 33342  	next_active_state += 12
 33343  	goto __483
 33344  __482:
 33345  	return -43
 33346  __483:
 33347  	;
 33348  	if !(clen > 0) {
 33349  		goto __484
 33350  	}
 33351  
 33352  	if !(d == OP_ANY && ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 33353  		goto __485
 33354  	}
 33355  
 33356  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 33357  	goto __486
 33358  __485:
 33359  	if !(c >= Tuint32_t(256) && d != OP_DIGIT && d != OP_WHITESPACE && d != OP_WORDCHAR || c < Tuint32_t(256) && (d != OP_ANY || !(func() int32 {
 33360  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 33361  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 33362  		}
 33363  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 33364  	}() != 0)) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&int32(toptable1[d])^int32(toptable2[d]) != 0) {
 33365  		goto __487
 33366  	}
 33367  
 33368  	if !(codevalue == OP_TYPEPOSQUERY) {
 33369  		goto __488
 33370  	}
 33371  
 33372  	active_count-- // Remove non-match possibility
 33373  	next_active_state -= 12
 33374  __488:
 33375  	;
 33376  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33377  		goto __489
 33378  	}
 33379  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 2
 33380  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 33381  	next_new_state += 12
 33382  	goto __490
 33383  __489:
 33384  	return -43
 33385  __490:
 33386  	;
 33387  __487:
 33388  	;
 33389  __486:
 33390  	;
 33391  __484:
 33392  	;
 33393  	goto __89
 33394  
 33395  	//-----------------------------------------------------------------
 33396  __130:
 33397  __131:
 33398  __132:
 33399  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 33400  		goto __491
 33401  	}
 33402  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 33403  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 33404  	next_active_state += 12
 33405  	goto __492
 33406  __491:
 33407  	return -43
 33408  __492:
 33409  	;
 33410  	if !(clen > 0) {
 33411  		goto __493
 33412  	}
 33413  
 33414  	if !(d == OP_ANY && ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 33415  		goto __494
 33416  	}
 33417  
 33418  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 33419  	goto __495
 33420  __494:
 33421  	if !(c >= Tuint32_t(256) && d != OP_DIGIT && d != OP_WHITESPACE && d != OP_WORDCHAR || c < Tuint32_t(256) && (d != OP_ANY || !(func() int32 {
 33422  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 33423  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 33424  		}
 33425  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 33426  	}() != 0)) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&int32(toptable1[d])^int32(toptable2[d]) != 0) {
 33427  		goto __496
 33428  	}
 33429  
 33430  	if !(codevalue == OP_TYPEPOSSTAR) {
 33431  		goto __497
 33432  	}
 33433  
 33434  	active_count-- // Remove non-match possibility
 33435  	next_active_state -= 12
 33436  __497:
 33437  	;
 33438  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33439  		goto __498
 33440  	}
 33441  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 33442  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 33443  	next_new_state += 12
 33444  	goto __499
 33445  __498:
 33446  	return -43
 33447  __499:
 33448  	;
 33449  __496:
 33450  	;
 33451  __495:
 33452  	;
 33453  __493:
 33454  	;
 33455  	goto __89
 33456  
 33457  	//-----------------------------------------------------------------
 33458  __133:
 33459  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 33460  	if !(clen > 0) {
 33461  		goto __500
 33462  	}
 33463  
 33464  	if !(d == OP_ANY && ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 33465  		goto __501
 33466  	}
 33467  
 33468  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 33469  	goto __502
 33470  __501:
 33471  	if !(c >= Tuint32_t(256) && d != OP_DIGIT && d != OP_WHITESPACE && d != OP_WORDCHAR || c < Tuint32_t(256) && (d != OP_ANY || !(func() int32 {
 33472  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 33473  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 33474  		}
 33475  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 33476  	}() != 0)) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&int32(toptable1[d])^int32(toptable2[d]) != 0) {
 33477  		goto __503
 33478  	}
 33479  
 33480  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 33481  		goto __504
 33482  	}
 33483  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33484  		goto __506
 33485  	}
 33486  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1 + DIMM2_SIZE + 1
 33487  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 33488  	next_new_state += 12
 33489  	goto __507
 33490  __506:
 33491  	return -43
 33492  __507:
 33493  	;
 33494  	goto __505
 33495  __504:
 33496  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33497  		goto __508
 33498  	}
 33499  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 33500  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 33501  	next_new_state += 12
 33502  	goto __509
 33503  __508:
 33504  	return -43
 33505  __509:
 33506  	;
 33507  __505:
 33508  	;
 33509  __503:
 33510  	;
 33511  __502:
 33512  	;
 33513  __500:
 33514  	;
 33515  	goto __89
 33516  
 33517  	//-----------------------------------------------------------------
 33518  __134:
 33519  __135:
 33520  __136:
 33521  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 33522  		goto __510
 33523  	}
 33524  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2 + DIMM2_SIZE
 33525  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 33526  	next_active_state += 12
 33527  	goto __511
 33528  __510:
 33529  	return -43
 33530  __511:
 33531  	;
 33532  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 33533  	if !(clen > 0) {
 33534  		goto __512
 33535  	}
 33536  
 33537  	if !(d == OP_ANY && ptr+uintptr(1) >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && c == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)))) {
 33538  		goto __513
 33539  	}
 33540  
 33541  	could_continue = libc.AssignInt32(&partial_newline, DTRUE)
 33542  	goto __514
 33543  __513:
 33544  	if !(c >= Tuint32_t(256) && d != OP_DIGIT && d != OP_WHITESPACE && d != OP_WORDCHAR || c < Tuint32_t(256) && (d != OP_ANY || !(func() int32 {
 33545  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 33546  			return libc.Bool32(ptr < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, ptr, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 33547  		}
 33548  		return libc.Bool32(ptr <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 33549  	}() != 0)) && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(c))))&int32(toptable1[d])^int32(toptable2[d]) != 0) {
 33550  		goto __515
 33551  	}
 33552  
 33553  	if !(codevalue == OP_TYPEPOSUPTO) {
 33554  		goto __516
 33555  	}
 33556  
 33557  	active_count-- // Remove non-match possibility
 33558  	next_active_state -= 12
 33559  __516:
 33560  	;
 33561  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 33562  		goto __517
 33563  	}
 33564  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33565  		goto __519
 33566  	}
 33567  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 2 + DIMM2_SIZE
 33568  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 33569  	next_new_state += 12
 33570  	goto __520
 33571  __519:
 33572  	return -43
 33573  __520:
 33574  	;
 33575  	goto __518
 33576  __517:
 33577  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33578  		goto __521
 33579  	}
 33580  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 33581  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 33582  	next_new_state += 12
 33583  	goto __522
 33584  __521:
 33585  	return -43
 33586  __522:
 33587  	;
 33588  __518:
 33589  	;
 33590  __515:
 33591  	;
 33592  __514:
 33593  	;
 33594  __512:
 33595  	;
 33596  	goto __89
 33597  
 33598  	// ==========================================================================
 33599  	// These are virtual opcodes that are used when something like
 33600  	//       OP_TYPEPLUS has OP_PROP, OP_NOTPROP, OP_ANYNL, or OP_EXTUNI as its
 33601  	//       argument. It keeps the code above fast for the other cases. The argument
 33602  	//       is in the d variable.
 33603  
 33604  __137:
 33605  __138:
 33606  __139:
 33607  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 33608  	if !(count > 0) {
 33609  		goto __523
 33610  	}
 33611  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 33612  		goto __524
 33613  	}
 33614  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 4
 33615  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 33616  	next_active_state += 12
 33617  	goto __525
 33618  __524:
 33619  	return -43
 33620  __525:
 33621  	;
 33622  __523:
 33623  	;
 33624  	if !(clen > 0) {
 33625  		goto __526
 33626  	}
 33627  
 33628  	prop1 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12
 33629  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))) {
 33630  	case DPT_ANY:
 33631  		goto __528
 33632  
 33633  	case DPT_LAMP:
 33634  		goto __529
 33635  
 33636  	case DPT_GC:
 33637  		goto __530
 33638  
 33639  	case DPT_PC:
 33640  		goto __531
 33641  
 33642  	case DPT_SC:
 33643  		goto __532
 33644  
 33645  	case DPT_SCX:
 33646  		goto __533
 33647  
 33648  	// These are specials for combination cases.
 33649  
 33650  	case DPT_ALNUM:
 33651  		goto __534
 33652  
 33653  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 33654  	//           which means that Perl space and POSIX space are now identical. PCRE
 33655  	//           was changed at release 8.34.
 33656  
 33657  	case DPT_SPACE:
 33658  		goto __535 // Perl space
 33659  	case DPT_PXSPACE:
 33660  		goto __536
 33661  
 33662  	case DPT_WORD:
 33663  		goto __537
 33664  
 33665  	case DPT_CLIST:
 33666  		goto __538
 33667  
 33668  	case DPT_UCNC:
 33669  		goto __539
 33670  
 33671  	case DPT_BIDICL:
 33672  		goto __540
 33673  
 33674  	case DPT_BOOL:
 33675  		goto __541
 33676  
 33677  	// Should never occur, but keep compilers from grumbling.
 33678  
 33679  	default:
 33680  		goto __542
 33681  	}
 33682  	goto __527
 33683  
 33684  __528:
 33685  	OK1 = DTRUE
 33686  	goto __527
 33687  
 33688  __529:
 33689  	OK1 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop1)).Fchartype) == ucp_Lu || int32((*Tucd_record)(unsafe.Pointer(prop1)).Fchartype) == ucp_Ll || int32((*Tucd_record)(unsafe.Pointer(prop1)).Fchartype) == ucp_Lt)
 33690  	goto __527
 33691  
 33692  __530:
 33693  	OK1 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop1)).Fchartype] == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 33694  	goto __527
 33695  
 33696  __531:
 33697  	OK1 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop1)).Fchartype) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 33698  	goto __527
 33699  
 33700  __532:
 33701  	OK1 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop1)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 33702  	goto __527
 33703  
 33704  __533:
 33705  	OK1 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop1)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop1)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))%32)) != Tuint32_t(0))
 33706  	goto __527
 33707  
 33708  	// These are specials for combination cases.
 33709  
 33710  __534:
 33711  	OK1 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop1)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop1)).Fchartype] == ucp_N)
 33712  	goto __527
 33713  
 33714  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 33715  	//           which means that Perl space and POSIX space are now identical. PCRE
 33716  	//           was changed at release 8.34.
 33717  
 33718  __535: // Perl space
 33719  __536: // POSIX space
 33720  	switch c {
 33721  	case Tuint32_t('\011'):
 33722  		goto __544
 33723  	case Tuint32_t('\040'):
 33724  		goto __545
 33725  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 33726  		goto __546
 33727  	case Tuint32_t(0x1680):
 33728  		goto __547 /* OGHAM SPACE MARK */
 33729  	case Tuint32_t(0x180e):
 33730  		goto __548 /* MONGOLIAN VOWEL SEPARATOR */
 33731  	case Tuint32_t(0x2000):
 33732  		goto __549 /* EN QUAD */
 33733  	case Tuint32_t(0x2001):
 33734  		goto __550 /* EM QUAD */
 33735  	case Tuint32_t(0x2002):
 33736  		goto __551 /* EN SPACE */
 33737  	case Tuint32_t(0x2003):
 33738  		goto __552 /* EM SPACE */
 33739  	case Tuint32_t(0x2004):
 33740  		goto __553 /* THREE-PER-EM SPACE */
 33741  	case Tuint32_t(0x2005):
 33742  		goto __554 /* FOUR-PER-EM SPACE */
 33743  	case Tuint32_t(0x2006):
 33744  		goto __555 /* SIX-PER-EM SPACE */
 33745  	case Tuint32_t(0x2007):
 33746  		goto __556 /* FIGURE SPACE */
 33747  	case Tuint32_t(0x2008):
 33748  		goto __557 /* PUNCTUATION SPACE */
 33749  	case Tuint32_t(0x2009):
 33750  		goto __558 /* THIN SPACE */
 33751  	case Tuint32_t(0x200A):
 33752  		goto __559 /* HAIR SPACE */
 33753  	case Tuint32_t(0x202f):
 33754  		goto __560 /* NARROW NO-BREAK SPACE */
 33755  	case Tuint32_t(0x205f):
 33756  		goto __561 /* MEDIUM MATHEMATICAL SPACE */
 33757  	case Tuint32_t(0x3000):
 33758  		goto __562
 33759  	case Tuint32_t('\012'):
 33760  		goto __563
 33761  	case Tuint32_t('\013'):
 33762  		goto __564
 33763  	case Tuint32_t('\014'):
 33764  		goto __565
 33765  	case Tuint32_t('\015'):
 33766  		goto __566
 33767  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 33768  		goto __567
 33769  	case Tuint32_t(0x2028):
 33770  		goto __568 /* LINE SEPARATOR */
 33771  	case Tuint32_t(0x2029):
 33772  		goto __569
 33773  
 33774  	default:
 33775  		goto __570
 33776  	}
 33777  	goto __543
 33778  
 33779  __544:
 33780  __545:
 33781  __546:
 33782  __547: /* OGHAM SPACE MARK */
 33783  __548: /* MONGOLIAN VOWEL SEPARATOR */
 33784  __549: /* EN QUAD */
 33785  __550: /* EM QUAD */
 33786  __551: /* EN SPACE */
 33787  __552: /* EM SPACE */
 33788  __553: /* THREE-PER-EM SPACE */
 33789  __554: /* FOUR-PER-EM SPACE */
 33790  __555: /* SIX-PER-EM SPACE */
 33791  __556: /* FIGURE SPACE */
 33792  __557: /* PUNCTUATION SPACE */
 33793  __558: /* THIN SPACE */
 33794  __559: /* HAIR SPACE */
 33795  __560: /* NARROW NO-BREAK SPACE */
 33796  __561: /* MEDIUM MATHEMATICAL SPACE */
 33797  __562:
 33798  __563:
 33799  __564:
 33800  __565:
 33801  __566:
 33802  __567:
 33803  __568: /* LINE SEPARATOR */
 33804  __569:
 33805  	OK1 = DTRUE
 33806  	goto __543
 33807  
 33808  __570:
 33809  	OK1 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop1)).Fchartype] == ucp_Z)
 33810  	goto __543
 33811  __543:
 33812  	;
 33813  	goto __527
 33814  
 33815  __537:
 33816  	OK1 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop1)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop1)).Fchartype] == ucp_N || c == Tuint32_t('\137'))
 33817  	goto __527
 33818  
 33819  __538:
 33820  	cp1 = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))*4
 33821  __571:
 33822  
 33823  	if !(c < *(*Tuint32_t)(unsafe.Pointer(cp1))) {
 33824  		goto __574
 33825  	}
 33826  	OK1 = DFALSE
 33827  	goto __573
 33828  __574:
 33829  	;
 33830  	if !(c == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp1, 4)))) {
 33831  		goto __575
 33832  	}
 33833  	OK1 = DTRUE
 33834  	goto __573
 33835  __575:
 33836  	;
 33837  	goto __572
 33838  __572:
 33839  	goto __571
 33840  	goto __573
 33841  __573:
 33842  	;
 33843  	goto __527
 33844  
 33845  __539:
 33846  	OK1 = libc.Bool32(c == Tuint32_t('\044') || c == Tuint32_t('\100') || c == Tuint32_t('\140') || c >= Tuint32_t(0xa0) && c <= Tuint32_t(0xd7ff) || c >= Tuint32_t(0xe000))
 33847  	goto __527
 33848  
 33849  __540:
 33850  	OK1 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 33851  	goto __527
 33852  
 33853  __541:
 33854  	OK1 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop1)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))%32)) != Tuint32_t(0))
 33855  	goto __527
 33856  
 33857  	// Should never occur, but keep compilers from grumbling.
 33858  
 33859  __542:
 33860  	OK1 = libc.Bool32(codevalue != OP_PROP)
 33861  	goto __527
 33862  __527:
 33863  	;
 33864  
 33865  	if !(OK1 == libc.Bool32(d == OP_PROP)) {
 33866  		goto __576
 33867  	}
 33868  
 33869  	if !(count > 0 && codevalue == Tuint32_t(DOP_PROP_EXTRA+OP_TYPEPOSPLUS)) {
 33870  		goto __577
 33871  	}
 33872  
 33873  	active_count-- // Remove non-match possibility
 33874  	next_active_state -= 12
 33875  __577:
 33876  	;
 33877  	count++
 33878  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33879  		goto __578
 33880  	}
 33881  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 33882  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 33883  	next_new_state += 12
 33884  	goto __579
 33885  __578:
 33886  	return -43
 33887  __579:
 33888  	;
 33889  __576:
 33890  	;
 33891  __526:
 33892  	;
 33893  	goto __89
 33894  
 33895  	//-----------------------------------------------------------------
 33896  __140:
 33897  __141:
 33898  __142:
 33899  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 33900  	if !(count > 0) {
 33901  		goto __580
 33902  	}
 33903  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 33904  		goto __581
 33905  	}
 33906  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 33907  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 33908  	next_active_state += 12
 33909  	goto __582
 33910  __581:
 33911  	return -43
 33912  __582:
 33913  	;
 33914  __580:
 33915  	;
 33916  	if !(clen > 0) {
 33917  		goto __583
 33918  	}
 33919  
 33920  	*(*int32)(unsafe.Pointer(bp /* ncount */)) = 0
 33921  	if !(count > 0 && codevalue == Tuint32_t(DOP_EXTUNI_EXTRA+OP_TYPEPOSPLUS)) {
 33922  		goto __584
 33923  	}
 33924  
 33925  	active_count-- // Remove non-match possibility
 33926  	next_active_state -= 12
 33927  __584:
 33928  	;
 33929  	X_pcre2_extuni_8(tls, c, ptr+uintptr(clen), (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject, end_subject, utf,
 33930  		bp)
 33931  	count++
 33932  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 33933  		goto __585
 33934  	}
 33935  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 33936  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 33937  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = *(*int32)(unsafe.Pointer(bp))
 33938  	next_new_state += 12
 33939  	goto __586
 33940  __585:
 33941  	return -43
 33942  __586:
 33943  	;
 33944  __583:
 33945  	;
 33946  	goto __89
 33947  
 33948  	//-----------------------------------------------------------------
 33949  __143:
 33950  __144:
 33951  __145:
 33952  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 33953  	if !(count > 0) {
 33954  		goto __587
 33955  	}
 33956  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 33957  		goto __588
 33958  	}
 33959  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 33960  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 33961  	next_active_state += 12
 33962  	goto __589
 33963  __588:
 33964  	return -43
 33965  __589:
 33966  	;
 33967  __587:
 33968  	;
 33969  	if !(clen > 0) {
 33970  		goto __590
 33971  	}
 33972  	ncount1 = 0
 33973  	switch c {
 33974  	case Tuint32_t('\013'):
 33975  		goto __592
 33976  	case Tuint32_t('\014'):
 33977  		goto __593
 33978  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 33979  		goto __594
 33980  	case Tuint32_t(0x2028):
 33981  		goto __595
 33982  	case Tuint32_t(0x2029):
 33983  		goto __596
 33984  
 33985  	case Tuint32_t('\015'):
 33986  		goto __597
 33987  	case Tuint32_t('\012'):
 33988  		goto __598
 33989  
 33990  	default:
 33991  		goto __599
 33992  	}
 33993  	goto __591
 33994  
 33995  __592:
 33996  __593:
 33997  __594:
 33998  __595:
 33999  __596:
 34000  	if !(int32((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 34001  		goto __600
 34002  	}
 34003  	goto __591
 34004  __600:
 34005  	;
 34006  	goto ANYNL01
 34007  
 34008  __597:
 34009  	if !(ptr+uintptr(1) < end_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == '\012') {
 34010  		goto __601
 34011  	}
 34012  	ncount1 = 1
 34013  __601:
 34014  	;
 34015  	// Fall through
 34016  
 34017  ANYNL01:
 34018  __598:
 34019  	if !(count > 0 && codevalue == Tuint32_t(DOP_ANYNL_EXTRA+OP_TYPEPOSPLUS)) {
 34020  		goto __602
 34021  	}
 34022  
 34023  	active_count-- // Remove non-match possibility
 34024  	next_active_state -= 12
 34025  __602:
 34026  	;
 34027  	count++
 34028  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34029  		goto __603
 34030  	}
 34031  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 34032  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 34033  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = ncount1
 34034  	next_new_state += 12
 34035  	goto __604
 34036  __603:
 34037  	return -43
 34038  __604:
 34039  	;
 34040  	goto __591
 34041  
 34042  __599:
 34043  	goto __591
 34044  __591:
 34045  	;
 34046  __590:
 34047  	;
 34048  	goto __89
 34049  
 34050  	//-----------------------------------------------------------------
 34051  __146:
 34052  __147:
 34053  __148:
 34054  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 34055  	if !(count > 0) {
 34056  		goto __605
 34057  	}
 34058  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34059  		goto __606
 34060  	}
 34061  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 34062  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34063  	next_active_state += 12
 34064  	goto __607
 34065  __606:
 34066  	return -43
 34067  __607:
 34068  	;
 34069  __605:
 34070  	;
 34071  	if !(clen > 0) {
 34072  		goto __608
 34073  	}
 34074  
 34075  	switch c {
 34076  	case Tuint32_t('\012'):
 34077  		goto __610
 34078  	case Tuint32_t('\013'):
 34079  		goto __611
 34080  	case Tuint32_t('\014'):
 34081  		goto __612
 34082  	case Tuint32_t('\015'):
 34083  		goto __613
 34084  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 34085  		goto __614
 34086  	case Tuint32_t(0x2028):
 34087  		goto __615 /* LINE SEPARATOR */
 34088  	case Tuint32_t(0x2029):
 34089  		goto __616
 34090  
 34091  	default:
 34092  		goto __617
 34093  	}
 34094  	goto __609
 34095  
 34096  __610:
 34097  __611:
 34098  __612:
 34099  __613:
 34100  __614:
 34101  __615: /* LINE SEPARATOR */
 34102  __616:
 34103  	OK2 = DTRUE
 34104  	goto __609
 34105  
 34106  __617:
 34107  	OK2 = DFALSE
 34108  	goto __609
 34109  __609:
 34110  	;
 34111  
 34112  	if !(OK2 == libc.Bool32(d == OP_VSPACE)) {
 34113  		goto __618
 34114  	}
 34115  
 34116  	if !(count > 0 && codevalue == Tuint32_t(DOP_VSPACE_EXTRA+OP_TYPEPOSPLUS)) {
 34117  		goto __619
 34118  	}
 34119  
 34120  	active_count-- // Remove non-match possibility
 34121  	next_active_state -= 12
 34122  __619:
 34123  	;
 34124  	count++
 34125  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34126  		goto __620
 34127  	}
 34128  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 34129  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 34130  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 34131  	next_new_state += 12
 34132  	goto __621
 34133  __620:
 34134  	return -43
 34135  __621:
 34136  	;
 34137  __618:
 34138  	;
 34139  __608:
 34140  	;
 34141  	goto __89
 34142  
 34143  	//-----------------------------------------------------------------
 34144  __149:
 34145  __150:
 34146  __151:
 34147  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 34148  	if !(count > 0) {
 34149  		goto __622
 34150  	}
 34151  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34152  		goto __623
 34153  	}
 34154  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 34155  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34156  	next_active_state += 12
 34157  	goto __624
 34158  __623:
 34159  	return -43
 34160  __624:
 34161  	;
 34162  __622:
 34163  	;
 34164  	if !(clen > 0) {
 34165  		goto __625
 34166  	}
 34167  
 34168  	switch c {
 34169  	case Tuint32_t('\011'):
 34170  		goto __627
 34171  	case Tuint32_t('\040'):
 34172  		goto __628
 34173  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 34174  		goto __629
 34175  	case Tuint32_t(0x1680):
 34176  		goto __630 /* OGHAM SPACE MARK */
 34177  	case Tuint32_t(0x180e):
 34178  		goto __631 /* MONGOLIAN VOWEL SEPARATOR */
 34179  	case Tuint32_t(0x2000):
 34180  		goto __632 /* EN QUAD */
 34181  	case Tuint32_t(0x2001):
 34182  		goto __633 /* EM QUAD */
 34183  	case Tuint32_t(0x2002):
 34184  		goto __634 /* EN SPACE */
 34185  	case Tuint32_t(0x2003):
 34186  		goto __635 /* EM SPACE */
 34187  	case Tuint32_t(0x2004):
 34188  		goto __636 /* THREE-PER-EM SPACE */
 34189  	case Tuint32_t(0x2005):
 34190  		goto __637 /* FOUR-PER-EM SPACE */
 34191  	case Tuint32_t(0x2006):
 34192  		goto __638 /* SIX-PER-EM SPACE */
 34193  	case Tuint32_t(0x2007):
 34194  		goto __639 /* FIGURE SPACE */
 34195  	case Tuint32_t(0x2008):
 34196  		goto __640 /* PUNCTUATION SPACE */
 34197  	case Tuint32_t(0x2009):
 34198  		goto __641 /* THIN SPACE */
 34199  	case Tuint32_t(0x200A):
 34200  		goto __642 /* HAIR SPACE */
 34201  	case Tuint32_t(0x202f):
 34202  		goto __643 /* NARROW NO-BREAK SPACE */
 34203  	case Tuint32_t(0x205f):
 34204  		goto __644 /* MEDIUM MATHEMATICAL SPACE */
 34205  	case Tuint32_t(0x3000):
 34206  		goto __645
 34207  
 34208  	default:
 34209  		goto __646
 34210  	}
 34211  	goto __626
 34212  
 34213  __627:
 34214  __628:
 34215  __629:
 34216  __630: /* OGHAM SPACE MARK */
 34217  __631: /* MONGOLIAN VOWEL SEPARATOR */
 34218  __632: /* EN QUAD */
 34219  __633: /* EM QUAD */
 34220  __634: /* EN SPACE */
 34221  __635: /* EM SPACE */
 34222  __636: /* THREE-PER-EM SPACE */
 34223  __637: /* FOUR-PER-EM SPACE */
 34224  __638: /* SIX-PER-EM SPACE */
 34225  __639: /* FIGURE SPACE */
 34226  __640: /* PUNCTUATION SPACE */
 34227  __641: /* THIN SPACE */
 34228  __642: /* HAIR SPACE */
 34229  __643: /* NARROW NO-BREAK SPACE */
 34230  __644: /* MEDIUM MATHEMATICAL SPACE */
 34231  __645:
 34232  	OK3 = DTRUE
 34233  	goto __626
 34234  
 34235  __646:
 34236  	OK3 = DFALSE
 34237  	goto __626
 34238  __626:
 34239  	;
 34240  
 34241  	if !(OK3 == libc.Bool32(d == OP_HSPACE)) {
 34242  		goto __647
 34243  	}
 34244  
 34245  	if !(count > 0 && codevalue == Tuint32_t(DOP_HSPACE_EXTRA+OP_TYPEPOSPLUS)) {
 34246  		goto __648
 34247  	}
 34248  
 34249  	active_count-- // Remove non-match possibility
 34250  	next_active_state -= 12
 34251  __648:
 34252  	;
 34253  	count++
 34254  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34255  		goto __649
 34256  	}
 34257  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 34258  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 34259  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 34260  	next_new_state += 12
 34261  	goto __650
 34262  __649:
 34263  	return -43
 34264  __650:
 34265  	;
 34266  __647:
 34267  	;
 34268  __625:
 34269  	;
 34270  	goto __89
 34271  
 34272  	//-----------------------------------------------------------------
 34273  __152:
 34274  __153:
 34275  __154:
 34276  	count = 4
 34277  	goto QS1
 34278  
 34279  __155:
 34280  __156:
 34281  __157:
 34282  	count = 0
 34283  
 34284  QS1:
 34285  
 34286  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34287  		goto __651
 34288  	}
 34289  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 4
 34290  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34291  	next_active_state += 12
 34292  	goto __652
 34293  __651:
 34294  	return -43
 34295  __652:
 34296  	;
 34297  	if !(clen > 0) {
 34298  		goto __653
 34299  	}
 34300  
 34301  	prop2 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12
 34302  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))) {
 34303  	case DPT_ANY:
 34304  		goto __655
 34305  
 34306  	case DPT_LAMP:
 34307  		goto __656
 34308  
 34309  	case DPT_GC:
 34310  		goto __657
 34311  
 34312  	case DPT_PC:
 34313  		goto __658
 34314  
 34315  	case DPT_SC:
 34316  		goto __659
 34317  
 34318  	case DPT_SCX:
 34319  		goto __660
 34320  
 34321  	// These are specials for combination cases.
 34322  
 34323  	case DPT_ALNUM:
 34324  		goto __661
 34325  
 34326  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 34327  	//           which means that Perl space and POSIX space are now identical. PCRE
 34328  	//           was changed at release 8.34.
 34329  
 34330  	case DPT_SPACE:
 34331  		goto __662 // Perl space
 34332  	case DPT_PXSPACE:
 34333  		goto __663
 34334  
 34335  	case DPT_WORD:
 34336  		goto __664
 34337  
 34338  	case DPT_CLIST:
 34339  		goto __665
 34340  
 34341  	case DPT_UCNC:
 34342  		goto __666
 34343  
 34344  	case DPT_BIDICL:
 34345  		goto __667
 34346  
 34347  	case DPT_BOOL:
 34348  		goto __668
 34349  
 34350  	// Should never occur, but keep compilers from grumbling.
 34351  
 34352  	default:
 34353  		goto __669
 34354  	}
 34355  	goto __654
 34356  
 34357  __655:
 34358  	OK4 = DTRUE
 34359  	goto __654
 34360  
 34361  __656:
 34362  	OK4 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop2)).Fchartype) == ucp_Lu || int32((*Tucd_record)(unsafe.Pointer(prop2)).Fchartype) == ucp_Ll || int32((*Tucd_record)(unsafe.Pointer(prop2)).Fchartype) == ucp_Lt)
 34363  	goto __654
 34364  
 34365  __657:
 34366  	OK4 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop2)).Fchartype] == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 34367  	goto __654
 34368  
 34369  __658:
 34370  	OK4 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop2)).Fchartype) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 34371  	goto __654
 34372  
 34373  __659:
 34374  	OK4 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop2)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 34375  	goto __654
 34376  
 34377  __660:
 34378  	OK4 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop2)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop2)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))%32)) != Tuint32_t(0))
 34379  	goto __654
 34380  
 34381  	// These are specials for combination cases.
 34382  
 34383  __661:
 34384  	OK4 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop2)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop2)).Fchartype] == ucp_N)
 34385  	goto __654
 34386  
 34387  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 34388  	//           which means that Perl space and POSIX space are now identical. PCRE
 34389  	//           was changed at release 8.34.
 34390  
 34391  __662: // Perl space
 34392  __663: // POSIX space
 34393  	switch c {
 34394  	case Tuint32_t('\011'):
 34395  		goto __671
 34396  	case Tuint32_t('\040'):
 34397  		goto __672
 34398  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 34399  		goto __673
 34400  	case Tuint32_t(0x1680):
 34401  		goto __674 /* OGHAM SPACE MARK */
 34402  	case Tuint32_t(0x180e):
 34403  		goto __675 /* MONGOLIAN VOWEL SEPARATOR */
 34404  	case Tuint32_t(0x2000):
 34405  		goto __676 /* EN QUAD */
 34406  	case Tuint32_t(0x2001):
 34407  		goto __677 /* EM QUAD */
 34408  	case Tuint32_t(0x2002):
 34409  		goto __678 /* EN SPACE */
 34410  	case Tuint32_t(0x2003):
 34411  		goto __679 /* EM SPACE */
 34412  	case Tuint32_t(0x2004):
 34413  		goto __680 /* THREE-PER-EM SPACE */
 34414  	case Tuint32_t(0x2005):
 34415  		goto __681 /* FOUR-PER-EM SPACE */
 34416  	case Tuint32_t(0x2006):
 34417  		goto __682 /* SIX-PER-EM SPACE */
 34418  	case Tuint32_t(0x2007):
 34419  		goto __683 /* FIGURE SPACE */
 34420  	case Tuint32_t(0x2008):
 34421  		goto __684 /* PUNCTUATION SPACE */
 34422  	case Tuint32_t(0x2009):
 34423  		goto __685 /* THIN SPACE */
 34424  	case Tuint32_t(0x200A):
 34425  		goto __686 /* HAIR SPACE */
 34426  	case Tuint32_t(0x202f):
 34427  		goto __687 /* NARROW NO-BREAK SPACE */
 34428  	case Tuint32_t(0x205f):
 34429  		goto __688 /* MEDIUM MATHEMATICAL SPACE */
 34430  	case Tuint32_t(0x3000):
 34431  		goto __689
 34432  	case Tuint32_t('\012'):
 34433  		goto __690
 34434  	case Tuint32_t('\013'):
 34435  		goto __691
 34436  	case Tuint32_t('\014'):
 34437  		goto __692
 34438  	case Tuint32_t('\015'):
 34439  		goto __693
 34440  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 34441  		goto __694
 34442  	case Tuint32_t(0x2028):
 34443  		goto __695 /* LINE SEPARATOR */
 34444  	case Tuint32_t(0x2029):
 34445  		goto __696
 34446  
 34447  	default:
 34448  		goto __697
 34449  	}
 34450  	goto __670
 34451  
 34452  __671:
 34453  __672:
 34454  __673:
 34455  __674: /* OGHAM SPACE MARK */
 34456  __675: /* MONGOLIAN VOWEL SEPARATOR */
 34457  __676: /* EN QUAD */
 34458  __677: /* EM QUAD */
 34459  __678: /* EN SPACE */
 34460  __679: /* EM SPACE */
 34461  __680: /* THREE-PER-EM SPACE */
 34462  __681: /* FOUR-PER-EM SPACE */
 34463  __682: /* SIX-PER-EM SPACE */
 34464  __683: /* FIGURE SPACE */
 34465  __684: /* PUNCTUATION SPACE */
 34466  __685: /* THIN SPACE */
 34467  __686: /* HAIR SPACE */
 34468  __687: /* NARROW NO-BREAK SPACE */
 34469  __688: /* MEDIUM MATHEMATICAL SPACE */
 34470  __689:
 34471  __690:
 34472  __691:
 34473  __692:
 34474  __693:
 34475  __694:
 34476  __695: /* LINE SEPARATOR */
 34477  __696:
 34478  	OK4 = DTRUE
 34479  	goto __670
 34480  
 34481  __697:
 34482  	OK4 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop2)).Fchartype] == ucp_Z)
 34483  	goto __670
 34484  __670:
 34485  	;
 34486  	goto __654
 34487  
 34488  __664:
 34489  	OK4 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop2)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop2)).Fchartype] == ucp_N || c == Tuint32_t('\137'))
 34490  	goto __654
 34491  
 34492  __665:
 34493  	cp2 = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))*4
 34494  __698:
 34495  
 34496  	if !(c < *(*Tuint32_t)(unsafe.Pointer(cp2))) {
 34497  		goto __701
 34498  	}
 34499  	OK4 = DFALSE
 34500  	goto __700
 34501  __701:
 34502  	;
 34503  	if !(c == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp2, 4)))) {
 34504  		goto __702
 34505  	}
 34506  	OK4 = DTRUE
 34507  	goto __700
 34508  __702:
 34509  	;
 34510  	goto __699
 34511  __699:
 34512  	goto __698
 34513  	goto __700
 34514  __700:
 34515  	;
 34516  	goto __654
 34517  
 34518  __666:
 34519  	OK4 = libc.Bool32(c == Tuint32_t('\044') || c == Tuint32_t('\100') || c == Tuint32_t('\140') || c >= Tuint32_t(0xa0) && c <= Tuint32_t(0xd7ff) || c >= Tuint32_t(0xe000))
 34520  	goto __654
 34521  
 34522  __667:
 34523  	OK4 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))))
 34524  	goto __654
 34525  
 34526  __668:
 34527  	OK4 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop2)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))%32)) != Tuint32_t(0))
 34528  	goto __654
 34529  
 34530  	// Should never occur, but keep compilers from grumbling.
 34531  
 34532  __669:
 34533  	OK4 = libc.Bool32(codevalue != OP_PROP)
 34534  	goto __654
 34535  __654:
 34536  	;
 34537  
 34538  	if !(OK4 == libc.Bool32(d == OP_PROP)) {
 34539  		goto __703
 34540  	}
 34541  
 34542  	if !(codevalue == Tuint32_t(DOP_PROP_EXTRA+OP_TYPEPOSSTAR) || codevalue == Tuint32_t(DOP_PROP_EXTRA+OP_TYPEPOSQUERY)) {
 34543  		goto __704
 34544  	}
 34545  
 34546  	active_count-- // Remove non-match possibility
 34547  	next_active_state -= 12
 34548  __704:
 34549  	;
 34550  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34551  		goto __705
 34552  	}
 34553  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + count
 34554  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 34555  	next_new_state += 12
 34556  	goto __706
 34557  __705:
 34558  	return -43
 34559  __706:
 34560  	;
 34561  __703:
 34562  	;
 34563  __653:
 34564  	;
 34565  	goto __89
 34566  
 34567  	//-----------------------------------------------------------------
 34568  __158:
 34569  __159:
 34570  __160:
 34571  	count = 2
 34572  	goto QS2
 34573  
 34574  __161:
 34575  __162:
 34576  __163:
 34577  	count = 0
 34578  
 34579  QS2:
 34580  
 34581  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34582  		goto __707
 34583  	}
 34584  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 34585  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34586  	next_active_state += 12
 34587  	goto __708
 34588  __707:
 34589  	return -43
 34590  __708:
 34591  	;
 34592  	if !(clen > 0) {
 34593  		goto __709
 34594  	}
 34595  
 34596  	*(*int32)(unsafe.Pointer(bp + 4 /* ncount2 */)) = 0
 34597  	if !(codevalue == Tuint32_t(DOP_EXTUNI_EXTRA+OP_TYPEPOSSTAR) || codevalue == Tuint32_t(DOP_EXTUNI_EXTRA+OP_TYPEPOSQUERY)) {
 34598  		goto __710
 34599  	}
 34600  
 34601  	active_count-- // Remove non-match possibility
 34602  	next_active_state -= 12
 34603  __710:
 34604  	;
 34605  	X_pcre2_extuni_8(tls, c, ptr+uintptr(clen), (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject, end_subject, utf,
 34606  		bp+4)
 34607  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34608  		goto __711
 34609  	}
 34610  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + count)
 34611  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 34612  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = *(*int32)(unsafe.Pointer(bp + 4))
 34613  	next_new_state += 12
 34614  	goto __712
 34615  __711:
 34616  	return -43
 34617  __712:
 34618  	;
 34619  __709:
 34620  	;
 34621  	goto __89
 34622  
 34623  	//-----------------------------------------------------------------
 34624  __164:
 34625  __165:
 34626  __166:
 34627  	count = 2
 34628  	goto QS3
 34629  
 34630  __167:
 34631  __168:
 34632  __169:
 34633  	count = 0
 34634  
 34635  QS3:
 34636  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34637  		goto __713
 34638  	}
 34639  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 34640  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34641  	next_active_state += 12
 34642  	goto __714
 34643  __713:
 34644  	return -43
 34645  __714:
 34646  	;
 34647  	if !(clen > 0) {
 34648  		goto __715
 34649  	}
 34650  	ncount3 = 0
 34651  	switch c {
 34652  	case Tuint32_t('\013'):
 34653  		goto __717
 34654  	case Tuint32_t('\014'):
 34655  		goto __718
 34656  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 34657  		goto __719
 34658  	case Tuint32_t(0x2028):
 34659  		goto __720
 34660  	case Tuint32_t(0x2029):
 34661  		goto __721
 34662  
 34663  	case Tuint32_t('\015'):
 34664  		goto __722
 34665  	case Tuint32_t('\012'):
 34666  		goto __723
 34667  
 34668  	default:
 34669  		goto __724
 34670  	}
 34671  	goto __716
 34672  
 34673  __717:
 34674  __718:
 34675  __719:
 34676  __720:
 34677  __721:
 34678  	if !(int32((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 34679  		goto __725
 34680  	}
 34681  	goto __716
 34682  __725:
 34683  	;
 34684  	goto ANYNL02
 34685  
 34686  __722:
 34687  	if !(ptr+uintptr(1) < end_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == '\012') {
 34688  		goto __726
 34689  	}
 34690  	ncount3 = 1
 34691  __726:
 34692  	;
 34693  	// Fall through
 34694  
 34695  ANYNL02:
 34696  __723:
 34697  	if !(codevalue == Tuint32_t(DOP_ANYNL_EXTRA+OP_TYPEPOSSTAR) || codevalue == Tuint32_t(DOP_ANYNL_EXTRA+OP_TYPEPOSQUERY)) {
 34698  		goto __727
 34699  	}
 34700  
 34701  	active_count-- // Remove non-match possibility
 34702  	next_active_state -= 12
 34703  __727:
 34704  	;
 34705  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34706  		goto __728
 34707  	}
 34708  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + count)
 34709  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 34710  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = ncount3
 34711  	next_new_state += 12
 34712  	goto __729
 34713  __728:
 34714  	return -43
 34715  __729:
 34716  	;
 34717  	goto __716
 34718  
 34719  __724:
 34720  	goto __716
 34721  __716:
 34722  	;
 34723  __715:
 34724  	;
 34725  	goto __89
 34726  
 34727  	//-----------------------------------------------------------------
 34728  __170:
 34729  __171:
 34730  __172:
 34731  	count = 2
 34732  	goto QS4
 34733  
 34734  __173:
 34735  __174:
 34736  __175:
 34737  	count = 0
 34738  
 34739  QS4:
 34740  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34741  		goto __730
 34742  	}
 34743  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 34744  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34745  	next_active_state += 12
 34746  	goto __731
 34747  __730:
 34748  	return -43
 34749  __731:
 34750  	;
 34751  	if !(clen > 0) {
 34752  		goto __732
 34753  	}
 34754  
 34755  	switch c {
 34756  	case Tuint32_t('\012'):
 34757  		goto __734
 34758  	case Tuint32_t('\013'):
 34759  		goto __735
 34760  	case Tuint32_t('\014'):
 34761  		goto __736
 34762  	case Tuint32_t('\015'):
 34763  		goto __737
 34764  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 34765  		goto __738
 34766  	case Tuint32_t(0x2028):
 34767  		goto __739 /* LINE SEPARATOR */
 34768  	case Tuint32_t(0x2029):
 34769  		goto __740
 34770  
 34771  	default:
 34772  		goto __741
 34773  	}
 34774  	goto __733
 34775  
 34776  __734:
 34777  __735:
 34778  __736:
 34779  __737:
 34780  __738:
 34781  __739: /* LINE SEPARATOR */
 34782  __740:
 34783  	OK5 = DTRUE
 34784  	goto __733
 34785  
 34786  __741:
 34787  	OK5 = DFALSE
 34788  	goto __733
 34789  __733:
 34790  	;
 34791  	if !(OK5 == libc.Bool32(d == OP_VSPACE)) {
 34792  		goto __742
 34793  	}
 34794  
 34795  	if !(codevalue == Tuint32_t(DOP_VSPACE_EXTRA+OP_TYPEPOSSTAR) || codevalue == Tuint32_t(DOP_VSPACE_EXTRA+OP_TYPEPOSQUERY)) {
 34796  		goto __743
 34797  	}
 34798  
 34799  	active_count-- // Remove non-match possibility
 34800  	next_active_state -= 12
 34801  __743:
 34802  	;
 34803  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34804  		goto __744
 34805  	}
 34806  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + count)
 34807  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 34808  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 34809  	next_new_state += 12
 34810  	goto __745
 34811  __744:
 34812  	return -43
 34813  __745:
 34814  	;
 34815  __742:
 34816  	;
 34817  __732:
 34818  	;
 34819  	goto __89
 34820  
 34821  	//-----------------------------------------------------------------
 34822  __176:
 34823  __177:
 34824  __178:
 34825  	count = 2
 34826  	goto QS5
 34827  
 34828  __179:
 34829  __180:
 34830  __181:
 34831  	count = 0
 34832  
 34833  QS5:
 34834  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34835  		goto __746
 34836  	}
 34837  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2
 34838  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34839  	next_active_state += 12
 34840  	goto __747
 34841  __746:
 34842  	return -43
 34843  __747:
 34844  	;
 34845  	if !(clen > 0) {
 34846  		goto __748
 34847  	}
 34848  
 34849  	switch c {
 34850  	case Tuint32_t('\011'):
 34851  		goto __750
 34852  	case Tuint32_t('\040'):
 34853  		goto __751
 34854  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 34855  		goto __752
 34856  	case Tuint32_t(0x1680):
 34857  		goto __753 /* OGHAM SPACE MARK */
 34858  	case Tuint32_t(0x180e):
 34859  		goto __754 /* MONGOLIAN VOWEL SEPARATOR */
 34860  	case Tuint32_t(0x2000):
 34861  		goto __755 /* EN QUAD */
 34862  	case Tuint32_t(0x2001):
 34863  		goto __756 /* EM QUAD */
 34864  	case Tuint32_t(0x2002):
 34865  		goto __757 /* EN SPACE */
 34866  	case Tuint32_t(0x2003):
 34867  		goto __758 /* EM SPACE */
 34868  	case Tuint32_t(0x2004):
 34869  		goto __759 /* THREE-PER-EM SPACE */
 34870  	case Tuint32_t(0x2005):
 34871  		goto __760 /* FOUR-PER-EM SPACE */
 34872  	case Tuint32_t(0x2006):
 34873  		goto __761 /* SIX-PER-EM SPACE */
 34874  	case Tuint32_t(0x2007):
 34875  		goto __762 /* FIGURE SPACE */
 34876  	case Tuint32_t(0x2008):
 34877  		goto __763 /* PUNCTUATION SPACE */
 34878  	case Tuint32_t(0x2009):
 34879  		goto __764 /* THIN SPACE */
 34880  	case Tuint32_t(0x200A):
 34881  		goto __765 /* HAIR SPACE */
 34882  	case Tuint32_t(0x202f):
 34883  		goto __766 /* NARROW NO-BREAK SPACE */
 34884  	case Tuint32_t(0x205f):
 34885  		goto __767 /* MEDIUM MATHEMATICAL SPACE */
 34886  	case Tuint32_t(0x3000):
 34887  		goto __768
 34888  
 34889  	default:
 34890  		goto __769
 34891  	}
 34892  	goto __749
 34893  
 34894  __750:
 34895  __751:
 34896  __752:
 34897  __753: /* OGHAM SPACE MARK */
 34898  __754: /* MONGOLIAN VOWEL SEPARATOR */
 34899  __755: /* EN QUAD */
 34900  __756: /* EM QUAD */
 34901  __757: /* EN SPACE */
 34902  __758: /* EM SPACE */
 34903  __759: /* THREE-PER-EM SPACE */
 34904  __760: /* FOUR-PER-EM SPACE */
 34905  __761: /* SIX-PER-EM SPACE */
 34906  __762: /* FIGURE SPACE */
 34907  __763: /* PUNCTUATION SPACE */
 34908  __764: /* THIN SPACE */
 34909  __765: /* HAIR SPACE */
 34910  __766: /* NARROW NO-BREAK SPACE */
 34911  __767: /* MEDIUM MATHEMATICAL SPACE */
 34912  __768:
 34913  	OK6 = DTRUE
 34914  	goto __749
 34915  
 34916  __769:
 34917  	OK6 = DFALSE
 34918  	goto __749
 34919  __749:
 34920  	;
 34921  
 34922  	if !(OK6 == libc.Bool32(d == OP_HSPACE)) {
 34923  		goto __770
 34924  	}
 34925  
 34926  	if !(codevalue == Tuint32_t(DOP_HSPACE_EXTRA+OP_TYPEPOSSTAR) || codevalue == Tuint32_t(DOP_HSPACE_EXTRA+OP_TYPEPOSQUERY)) {
 34927  		goto __771
 34928  	}
 34929  
 34930  	active_count-- // Remove non-match possibility
 34931  	next_active_state -= 12
 34932  __771:
 34933  	;
 34934  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 34935  		goto __772
 34936  	}
 34937  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + count)
 34938  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 34939  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 34940  	next_new_state += 12
 34941  	goto __773
 34942  __772:
 34943  	return -43
 34944  __773:
 34945  	;
 34946  __770:
 34947  	;
 34948  __748:
 34949  	;
 34950  	goto __89
 34951  
 34952  	//-----------------------------------------------------------------
 34953  __182:
 34954  __183:
 34955  __184:
 34956  __185:
 34957  	if !(codevalue != Tuint32_t(DOP_PROP_EXTRA+OP_TYPEEXACT)) {
 34958  		goto __774
 34959  	}
 34960  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 34961  		goto __775
 34962  	}
 34963  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 1 + DIMM2_SIZE + 3
 34964  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 34965  	next_active_state += 12
 34966  	goto __776
 34967  __775:
 34968  	return -43
 34969  __776:
 34970  	;
 34971  __774:
 34972  	;
 34973  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 34974  	if !(clen > 0) {
 34975  		goto __777
 34976  	}
 34977  
 34978  	prop3 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12
 34979  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4))) {
 34980  	case DPT_ANY:
 34981  		goto __779
 34982  
 34983  	case DPT_LAMP:
 34984  		goto __780
 34985  
 34986  	case DPT_GC:
 34987  		goto __781
 34988  
 34989  	case DPT_PC:
 34990  		goto __782
 34991  
 34992  	case DPT_SC:
 34993  		goto __783
 34994  
 34995  	case DPT_SCX:
 34996  		goto __784
 34997  
 34998  	// These are specials for combination cases.
 34999  
 35000  	case DPT_ALNUM:
 35001  		goto __785
 35002  
 35003  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 35004  	//           which means that Perl space and POSIX space are now identical. PCRE
 35005  	//           was changed at release 8.34.
 35006  
 35007  	case DPT_SPACE:
 35008  		goto __786 // Perl space
 35009  	case DPT_PXSPACE:
 35010  		goto __787
 35011  
 35012  	case DPT_WORD:
 35013  		goto __788
 35014  
 35015  	case DPT_CLIST:
 35016  		goto __789
 35017  
 35018  	case DPT_UCNC:
 35019  		goto __790
 35020  
 35021  	case DPT_BIDICL:
 35022  		goto __791
 35023  
 35024  	case DPT_BOOL:
 35025  		goto __792
 35026  
 35027  	// Should never occur, but keep compilers from grumbling.
 35028  
 35029  	default:
 35030  		goto __793
 35031  	}
 35032  	goto __778
 35033  
 35034  __779:
 35035  	OK7 = DTRUE
 35036  	goto __778
 35037  
 35038  __780:
 35039  	OK7 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop3)).Fchartype) == ucp_Lu || int32((*Tucd_record)(unsafe.Pointer(prop3)).Fchartype) == ucp_Ll || int32((*Tucd_record)(unsafe.Pointer(prop3)).Fchartype) == ucp_Lt)
 35040  	goto __778
 35041  
 35042  __781:
 35043  	OK7 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop3)).Fchartype] == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5))))
 35044  	goto __778
 35045  
 35046  __782:
 35047  	OK7 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop3)).Fchartype) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5))))
 35048  	goto __778
 35049  
 35050  __783:
 35051  	OK7 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop3)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5))))
 35052  	goto __778
 35053  
 35054  __784:
 35055  	OK7 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop3)).Fscript) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5))) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop3)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))%32)) != Tuint32_t(0))
 35056  	goto __778
 35057  
 35058  	// These are specials for combination cases.
 35059  
 35060  __785:
 35061  	OK7 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop3)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop3)).Fchartype] == ucp_N)
 35062  	goto __778
 35063  
 35064  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 35065  	//           which means that Perl space and POSIX space are now identical. PCRE
 35066  	//           was changed at release 8.34.
 35067  
 35068  __786: // Perl space
 35069  __787: // POSIX space
 35070  	switch c {
 35071  	case Tuint32_t('\011'):
 35072  		goto __795
 35073  	case Tuint32_t('\040'):
 35074  		goto __796
 35075  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 35076  		goto __797
 35077  	case Tuint32_t(0x1680):
 35078  		goto __798 /* OGHAM SPACE MARK */
 35079  	case Tuint32_t(0x180e):
 35080  		goto __799 /* MONGOLIAN VOWEL SEPARATOR */
 35081  	case Tuint32_t(0x2000):
 35082  		goto __800 /* EN QUAD */
 35083  	case Tuint32_t(0x2001):
 35084  		goto __801 /* EM QUAD */
 35085  	case Tuint32_t(0x2002):
 35086  		goto __802 /* EN SPACE */
 35087  	case Tuint32_t(0x2003):
 35088  		goto __803 /* EM SPACE */
 35089  	case Tuint32_t(0x2004):
 35090  		goto __804 /* THREE-PER-EM SPACE */
 35091  	case Tuint32_t(0x2005):
 35092  		goto __805 /* FOUR-PER-EM SPACE */
 35093  	case Tuint32_t(0x2006):
 35094  		goto __806 /* SIX-PER-EM SPACE */
 35095  	case Tuint32_t(0x2007):
 35096  		goto __807 /* FIGURE SPACE */
 35097  	case Tuint32_t(0x2008):
 35098  		goto __808 /* PUNCTUATION SPACE */
 35099  	case Tuint32_t(0x2009):
 35100  		goto __809 /* THIN SPACE */
 35101  	case Tuint32_t(0x200A):
 35102  		goto __810 /* HAIR SPACE */
 35103  	case Tuint32_t(0x202f):
 35104  		goto __811 /* NARROW NO-BREAK SPACE */
 35105  	case Tuint32_t(0x205f):
 35106  		goto __812 /* MEDIUM MATHEMATICAL SPACE */
 35107  	case Tuint32_t(0x3000):
 35108  		goto __813
 35109  	case Tuint32_t('\012'):
 35110  		goto __814
 35111  	case Tuint32_t('\013'):
 35112  		goto __815
 35113  	case Tuint32_t('\014'):
 35114  		goto __816
 35115  	case Tuint32_t('\015'):
 35116  		goto __817
 35117  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 35118  		goto __818
 35119  	case Tuint32_t(0x2028):
 35120  		goto __819 /* LINE SEPARATOR */
 35121  	case Tuint32_t(0x2029):
 35122  		goto __820
 35123  
 35124  	default:
 35125  		goto __821
 35126  	}
 35127  	goto __794
 35128  
 35129  __795:
 35130  __796:
 35131  __797:
 35132  __798: /* OGHAM SPACE MARK */
 35133  __799: /* MONGOLIAN VOWEL SEPARATOR */
 35134  __800: /* EN QUAD */
 35135  __801: /* EM QUAD */
 35136  __802: /* EN SPACE */
 35137  __803: /* EM SPACE */
 35138  __804: /* THREE-PER-EM SPACE */
 35139  __805: /* FOUR-PER-EM SPACE */
 35140  __806: /* SIX-PER-EM SPACE */
 35141  __807: /* FIGURE SPACE */
 35142  __808: /* PUNCTUATION SPACE */
 35143  __809: /* THIN SPACE */
 35144  __810: /* HAIR SPACE */
 35145  __811: /* NARROW NO-BREAK SPACE */
 35146  __812: /* MEDIUM MATHEMATICAL SPACE */
 35147  __813:
 35148  __814:
 35149  __815:
 35150  __816:
 35151  __817:
 35152  __818:
 35153  __819: /* LINE SEPARATOR */
 35154  __820:
 35155  	OK7 = DTRUE
 35156  	goto __794
 35157  
 35158  __821:
 35159  	OK7 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop3)).Fchartype] == ucp_Z)
 35160  	goto __794
 35161  __794:
 35162  	;
 35163  	goto __778
 35164  
 35165  __788:
 35166  	OK7 = libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop3)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop3)).Fchartype] == ucp_N || c == Tuint32_t('\137'))
 35167  	goto __778
 35168  
 35169  __789:
 35170  	cp3 = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))*4
 35171  __822:
 35172  
 35173  	if !(c < *(*Tuint32_t)(unsafe.Pointer(cp3))) {
 35174  		goto __825
 35175  	}
 35176  	OK7 = DFALSE
 35177  	goto __824
 35178  __825:
 35179  	;
 35180  	if !(c == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp3, 4)))) {
 35181  		goto __826
 35182  	}
 35183  	OK7 = DTRUE
 35184  	goto __824
 35185  __826:
 35186  	;
 35187  	goto __823
 35188  __823:
 35189  	goto __822
 35190  	goto __824
 35191  __824:
 35192  	;
 35193  	goto __778
 35194  
 35195  __790:
 35196  	OK7 = libc.Bool32(c == Tuint32_t('\044') || c == Tuint32_t('\100') || c == Tuint32_t('\140') || c >= Tuint32_t(0xa0) && c <= Tuint32_t(0xd7ff) || c >= Tuint32_t(0xe000))
 35197  	goto __778
 35198  
 35199  __791:
 35200  	OK7 = libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5))))
 35201  	goto __778
 35202  
 35203  __792:
 35204  	OK7 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop3)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))%32)) != Tuint32_t(0))
 35205  	goto __778
 35206  
 35207  	// Should never occur, but keep compilers from grumbling.
 35208  
 35209  __793:
 35210  	OK7 = libc.Bool32(codevalue != OP_PROP)
 35211  	goto __778
 35212  __778:
 35213  	;
 35214  
 35215  	if !(OK7 == libc.Bool32(d == OP_PROP)) {
 35216  		goto __827
 35217  	}
 35218  
 35219  	if !(codevalue == Tuint32_t(DOP_PROP_EXTRA+OP_TYPEPOSUPTO)) {
 35220  		goto __828
 35221  	}
 35222  
 35223  	active_count-- // Remove non-match possibility
 35224  	next_active_state -= 12
 35225  __828:
 35226  	;
 35227  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 35228  		goto __829
 35229  	}
 35230  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35231  		goto __831
 35232  	}
 35233  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1 + DIMM2_SIZE + 3
 35234  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35235  	next_new_state += 12
 35236  	goto __832
 35237  __831:
 35238  	return -43
 35239  __832:
 35240  	;
 35241  	goto __830
 35242  __829:
 35243  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35244  		goto __833
 35245  	}
 35246  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 35247  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 35248  	next_new_state += 12
 35249  	goto __834
 35250  __833:
 35251  	return -43
 35252  __834:
 35253  	;
 35254  __830:
 35255  	;
 35256  __827:
 35257  	;
 35258  __777:
 35259  	;
 35260  	goto __89
 35261  
 35262  	//-----------------------------------------------------------------
 35263  __186:
 35264  __187:
 35265  __188:
 35266  __189:
 35267  	if !(codevalue != Tuint32_t(DOP_EXTUNI_EXTRA+OP_TYPEEXACT)) {
 35268  		goto __835
 35269  	}
 35270  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 35271  		goto __836
 35272  	}
 35273  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2 + DIMM2_SIZE
 35274  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 35275  	next_active_state += 12
 35276  	goto __837
 35277  __836:
 35278  	return -43
 35279  __837:
 35280  	;
 35281  __835:
 35282  	;
 35283  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 35284  	if !(clen > 0) {
 35285  		goto __838
 35286  	}
 35287  
 35288  	*(*int32)(unsafe.Pointer(bp + 8 /* ncount4 */)) = 0
 35289  	if !(codevalue == Tuint32_t(DOP_EXTUNI_EXTRA+OP_TYPEPOSUPTO)) {
 35290  		goto __839
 35291  	}
 35292  
 35293  	active_count-- // Remove non-match possibility
 35294  	next_active_state -= 12
 35295  __839:
 35296  	;
 35297  	nptr = X_pcre2_extuni_8(tls, c, ptr+uintptr(clen), (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject, end_subject, utf,
 35298  		bp+8)
 35299  	if !(nptr >= end_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 35300  		goto __840
 35301  	}
 35302  	reset_could_continue = DTRUE
 35303  __840:
 35304  	;
 35305  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 35306  		goto __841
 35307  	}
 35308  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35309  		goto __843
 35310  	}
 35311  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 2 + DIMM2_SIZE)
 35312  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35313  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = *(*int32)(unsafe.Pointer(bp + 8))
 35314  	next_new_state += 12
 35315  	goto __844
 35316  __843:
 35317  	return -43
 35318  __844:
 35319  	;
 35320  	goto __842
 35321  __841:
 35322  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35323  		goto __845
 35324  	}
 35325  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 35326  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 35327  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = *(*int32)(unsafe.Pointer(bp + 8))
 35328  	next_new_state += 12
 35329  	goto __846
 35330  __845:
 35331  	return -43
 35332  __846:
 35333  	;
 35334  __842:
 35335  	;
 35336  __838:
 35337  	;
 35338  	goto __89
 35339  
 35340  	//-----------------------------------------------------------------
 35341  __190:
 35342  __191:
 35343  __192:
 35344  __193:
 35345  	if !(codevalue != Tuint32_t(DOP_ANYNL_EXTRA+OP_TYPEEXACT)) {
 35346  		goto __847
 35347  	}
 35348  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 35349  		goto __848
 35350  	}
 35351  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2 + DIMM2_SIZE
 35352  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 35353  	next_active_state += 12
 35354  	goto __849
 35355  __848:
 35356  	return -43
 35357  __849:
 35358  	;
 35359  __847:
 35360  	;
 35361  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 35362  	if !(clen > 0) {
 35363  		goto __850
 35364  	}
 35365  	ncount5 = 0
 35366  	switch c {
 35367  	case Tuint32_t('\013'):
 35368  		goto __852
 35369  	case Tuint32_t('\014'):
 35370  		goto __853
 35371  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 35372  		goto __854
 35373  	case Tuint32_t(0x2028):
 35374  		goto __855
 35375  	case Tuint32_t(0x2029):
 35376  		goto __856
 35377  
 35378  	case Tuint32_t('\015'):
 35379  		goto __857
 35380  	case Tuint32_t('\012'):
 35381  		goto __858
 35382  
 35383  	default:
 35384  		goto __859
 35385  	}
 35386  	goto __851
 35387  
 35388  __852:
 35389  __853:
 35390  __854:
 35391  __855:
 35392  __856:
 35393  	if !(int32((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 35394  		goto __860
 35395  	}
 35396  	goto __851
 35397  __860:
 35398  	;
 35399  	goto ANYNL03
 35400  
 35401  __857:
 35402  	if !(ptr+uintptr(1) < end_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == '\012') {
 35403  		goto __861
 35404  	}
 35405  	ncount5 = 1
 35406  __861:
 35407  	;
 35408  	// Fall through
 35409  
 35410  ANYNL03:
 35411  __858:
 35412  	if !(codevalue == Tuint32_t(DOP_ANYNL_EXTRA+OP_TYPEPOSUPTO)) {
 35413  		goto __862
 35414  	}
 35415  
 35416  	active_count-- // Remove non-match possibility
 35417  	next_active_state -= 12
 35418  __862:
 35419  	;
 35420  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 35421  		goto __863
 35422  	}
 35423  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35424  		goto __865
 35425  	}
 35426  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 2 + DIMM2_SIZE)
 35427  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35428  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = ncount5
 35429  	next_new_state += 12
 35430  	goto __866
 35431  __865:
 35432  	return -43
 35433  __866:
 35434  	;
 35435  	goto __864
 35436  __863:
 35437  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35438  		goto __867
 35439  	}
 35440  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 35441  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 35442  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = ncount5
 35443  	next_new_state += 12
 35444  	goto __868
 35445  __867:
 35446  	return -43
 35447  __868:
 35448  	;
 35449  __864:
 35450  	;
 35451  	goto __851
 35452  
 35453  __859:
 35454  	goto __851
 35455  __851:
 35456  	;
 35457  __850:
 35458  	;
 35459  	goto __89
 35460  
 35461  	//-----------------------------------------------------------------
 35462  __194:
 35463  __195:
 35464  __196:
 35465  __197:
 35466  	if !(codevalue != Tuint32_t(DOP_VSPACE_EXTRA+OP_TYPEEXACT)) {
 35467  		goto __869
 35468  	}
 35469  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 35470  		goto __870
 35471  	}
 35472  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2 + DIMM2_SIZE
 35473  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 35474  	next_active_state += 12
 35475  	goto __871
 35476  __870:
 35477  	return -43
 35478  __871:
 35479  	;
 35480  __869:
 35481  	;
 35482  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 35483  	if !(clen > 0) {
 35484  		goto __872
 35485  	}
 35486  
 35487  	switch c {
 35488  	case Tuint32_t('\012'):
 35489  		goto __874
 35490  	case Tuint32_t('\013'):
 35491  		goto __875
 35492  	case Tuint32_t('\014'):
 35493  		goto __876
 35494  	case Tuint32_t('\015'):
 35495  		goto __877
 35496  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 35497  		goto __878
 35498  	case Tuint32_t(0x2028):
 35499  		goto __879 /* LINE SEPARATOR */
 35500  	case Tuint32_t(0x2029):
 35501  		goto __880
 35502  
 35503  	default:
 35504  		goto __881
 35505  	}
 35506  	goto __873
 35507  
 35508  __874:
 35509  __875:
 35510  __876:
 35511  __877:
 35512  __878:
 35513  __879: /* LINE SEPARATOR */
 35514  __880:
 35515  	OK8 = DTRUE
 35516  	goto __873
 35517  
 35518  __881:
 35519  	OK8 = DFALSE
 35520  __873:
 35521  	;
 35522  
 35523  	if !(OK8 == libc.Bool32(d == OP_VSPACE)) {
 35524  		goto __882
 35525  	}
 35526  
 35527  	if !(codevalue == Tuint32_t(DOP_VSPACE_EXTRA+OP_TYPEPOSUPTO)) {
 35528  		goto __883
 35529  	}
 35530  
 35531  	active_count-- // Remove non-match possibility
 35532  	next_active_state -= 12
 35533  __883:
 35534  	;
 35535  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 35536  		goto __884
 35537  	}
 35538  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35539  		goto __886
 35540  	}
 35541  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 2 + DIMM2_SIZE)
 35542  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35543  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 35544  	next_new_state += 12
 35545  	goto __887
 35546  __886:
 35547  	return -43
 35548  __887:
 35549  	;
 35550  	goto __885
 35551  __884:
 35552  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35553  		goto __888
 35554  	}
 35555  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 35556  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 35557  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 35558  	next_new_state += 12
 35559  	goto __889
 35560  __888:
 35561  	return -43
 35562  __889:
 35563  	;
 35564  __885:
 35565  	;
 35566  __882:
 35567  	;
 35568  __872:
 35569  	;
 35570  	goto __89
 35571  
 35572  	//-----------------------------------------------------------------
 35573  __198:
 35574  __199:
 35575  __200:
 35576  __201:
 35577  	if !(codevalue != Tuint32_t(DOP_HSPACE_EXTRA+OP_TYPEEXACT)) {
 35578  		goto __890
 35579  	}
 35580  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 35581  		goto __891
 35582  	}
 35583  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + 2 + DIMM2_SIZE
 35584  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 35585  	next_active_state += 12
 35586  	goto __892
 35587  __891:
 35588  	return -43
 35589  __892:
 35590  	;
 35591  __890:
 35592  	;
 35593  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 35594  	if !(clen > 0) {
 35595  		goto __893
 35596  	}
 35597  
 35598  	switch c {
 35599  	case Tuint32_t('\011'):
 35600  		goto __895
 35601  	case Tuint32_t('\040'):
 35602  		goto __896
 35603  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 35604  		goto __897
 35605  	case Tuint32_t(0x1680):
 35606  		goto __898 /* OGHAM SPACE MARK */
 35607  	case Tuint32_t(0x180e):
 35608  		goto __899 /* MONGOLIAN VOWEL SEPARATOR */
 35609  	case Tuint32_t(0x2000):
 35610  		goto __900 /* EN QUAD */
 35611  	case Tuint32_t(0x2001):
 35612  		goto __901 /* EM QUAD */
 35613  	case Tuint32_t(0x2002):
 35614  		goto __902 /* EN SPACE */
 35615  	case Tuint32_t(0x2003):
 35616  		goto __903 /* EM SPACE */
 35617  	case Tuint32_t(0x2004):
 35618  		goto __904 /* THREE-PER-EM SPACE */
 35619  	case Tuint32_t(0x2005):
 35620  		goto __905 /* FOUR-PER-EM SPACE */
 35621  	case Tuint32_t(0x2006):
 35622  		goto __906 /* SIX-PER-EM SPACE */
 35623  	case Tuint32_t(0x2007):
 35624  		goto __907 /* FIGURE SPACE */
 35625  	case Tuint32_t(0x2008):
 35626  		goto __908 /* PUNCTUATION SPACE */
 35627  	case Tuint32_t(0x2009):
 35628  		goto __909 /* THIN SPACE */
 35629  	case Tuint32_t(0x200A):
 35630  		goto __910 /* HAIR SPACE */
 35631  	case Tuint32_t(0x202f):
 35632  		goto __911 /* NARROW NO-BREAK SPACE */
 35633  	case Tuint32_t(0x205f):
 35634  		goto __912 /* MEDIUM MATHEMATICAL SPACE */
 35635  	case Tuint32_t(0x3000):
 35636  		goto __913
 35637  
 35638  	default:
 35639  		goto __914
 35640  	}
 35641  	goto __894
 35642  
 35643  __895:
 35644  __896:
 35645  __897:
 35646  __898: /* OGHAM SPACE MARK */
 35647  __899: /* MONGOLIAN VOWEL SEPARATOR */
 35648  __900: /* EN QUAD */
 35649  __901: /* EM QUAD */
 35650  __902: /* EN SPACE */
 35651  __903: /* EM SPACE */
 35652  __904: /* THREE-PER-EM SPACE */
 35653  __905: /* FOUR-PER-EM SPACE */
 35654  __906: /* SIX-PER-EM SPACE */
 35655  __907: /* FIGURE SPACE */
 35656  __908: /* PUNCTUATION SPACE */
 35657  __909: /* THIN SPACE */
 35658  __910: /* HAIR SPACE */
 35659  __911: /* NARROW NO-BREAK SPACE */
 35660  __912: /* MEDIUM MATHEMATICAL SPACE */
 35661  __913:
 35662  	OK9 = DTRUE
 35663  	goto __894
 35664  
 35665  __914:
 35666  	OK9 = DFALSE
 35667  	goto __894
 35668  __894:
 35669  	;
 35670  
 35671  	if !(OK9 == libc.Bool32(d == OP_HSPACE)) {
 35672  		goto __915
 35673  	}
 35674  
 35675  	if !(codevalue == Tuint32_t(DOP_HSPACE_EXTRA+OP_TYPEPOSUPTO)) {
 35676  		goto __916
 35677  	}
 35678  
 35679  	active_count-- // Remove non-match possibility
 35680  	next_active_state -= 12
 35681  __916:
 35682  	;
 35683  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 35684  		goto __917
 35685  	}
 35686  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35687  		goto __919
 35688  	}
 35689  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 2 + DIMM2_SIZE)
 35690  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35691  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 35692  	next_new_state += 12
 35693  	goto __920
 35694  __919:
 35695  	return -43
 35696  __920:
 35697  	;
 35698  	goto __918
 35699  __917:
 35700  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35701  		goto __921
 35702  	}
 35703  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -state_offset
 35704  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 35705  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 0
 35706  	next_new_state += 12
 35707  	goto __922
 35708  __921:
 35709  	return -43
 35710  __922:
 35711  	;
 35712  __918:
 35713  	;
 35714  __915:
 35715  	;
 35716  __893:
 35717  	;
 35718  	goto __89
 35719  
 35720  	// ==========================================================================
 35721  	// These opcodes are followed by a character that is usually compared
 35722  	//       to the current subject character; it is loaded into d. We still get
 35723  	//       here even if there is no subject character, because in some cases zero
 35724  	//       repetitions are permitted.
 35725  
 35726  	//-----------------------------------------------------------------
 35727  __202:
 35728  	if !(clen > 0 && c == d) {
 35729  		goto __923
 35730  	}
 35731  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35732  		goto __924
 35733  	}
 35734  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1
 35735  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35736  	next_new_state += 12
 35737  	goto __925
 35738  __924:
 35739  	return -43
 35740  __925:
 35741  	;
 35742  __923:
 35743  	;
 35744  	goto __89
 35745  
 35746  	//-----------------------------------------------------------------
 35747  __203:
 35748  	if !(clen == 0) {
 35749  		goto __926
 35750  	}
 35751  	goto __89
 35752  __926:
 35753  	;
 35754  
 35755  	if !(utf_or_ucp != 0) {
 35756  		goto __927
 35757  	}
 35758  
 35759  	if !(c == d) {
 35760  		goto __929
 35761  	}
 35762  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35763  		goto __931
 35764  	}
 35765  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1
 35766  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35767  	next_new_state += 12
 35768  	goto __932
 35769  __931:
 35770  	return -43
 35771  __932:
 35772  	;
 35773  	goto __930
 35774  __929:
 35775  
 35776  	if !(c < Tuint32_t(128)) {
 35777  		goto __933
 35778  	}
 35779  	othercase = uint32(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(c))))
 35780  	goto __934
 35781  __933:
 35782  	othercase = Tuint32_t(int32(c) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 35783  __934:
 35784  	;
 35785  	if !(d == othercase) {
 35786  		goto __935
 35787  	}
 35788  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35789  		goto __936
 35790  	}
 35791  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1
 35792  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35793  	next_new_state += 12
 35794  	goto __937
 35795  __936:
 35796  	return -43
 35797  __937:
 35798  	;
 35799  __935:
 35800  	;
 35801  __930:
 35802  	;
 35803  	goto __928
 35804  __927:
 35805  	/* Not UTF or UCP mode */
 35806  
 35807  	if !(int32(*(*Tuint8_t)(unsafe.Pointer(lcc + uintptr(c)))) == int32(*(*Tuint8_t)(unsafe.Pointer(lcc + uintptr(d))))) {
 35808  		goto __938
 35809  	}
 35810  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35811  		goto __939
 35812  	}
 35813  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 2
 35814  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35815  	next_new_state += 12
 35816  	goto __940
 35817  __939:
 35818  	return -43
 35819  __940:
 35820  	;
 35821  __938:
 35822  	;
 35823  __928:
 35824  	;
 35825  	goto __89
 35826  
 35827  	//-----------------------------------------------------------------
 35828  	// This is a tricky one because it can match more than one character.
 35829  	//       Find out how many characters to skip, and then set up a negative state
 35830  	//       to wait for them to pass before continuing.
 35831  
 35832  __204:
 35833  	if !(clen > 0) {
 35834  		goto __941
 35835  	}
 35836  
 35837  	*(*int32)(unsafe.Pointer(bp + 12 /* ncount6 */)) = 0
 35838  	nptr1 = X_pcre2_extuni_8(tls, c, ptr+uintptr(clen), (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject,
 35839  		end_subject, utf, bp+12)
 35840  	if !(nptr1 >= end_subject && (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 35841  		goto __942
 35842  	}
 35843  	reset_could_continue = DTRUE
 35844  __942:
 35845  	;
 35846  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35847  		goto __943
 35848  	}
 35849  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 1)
 35850  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35851  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = *(*int32)(unsafe.Pointer(bp + 12))
 35852  	next_new_state += 12
 35853  	goto __944
 35854  __943:
 35855  	return -43
 35856  __944:
 35857  	;
 35858  __941:
 35859  	;
 35860  	goto __89
 35861  
 35862  	//-----------------------------------------------------------------
 35863  	// This is a tricky like EXTUNI because it too can match more than one
 35864  	//       character (when CR is followed by LF). In this case, set up a negative
 35865  	//       state to wait for one character to pass before continuing.
 35866  
 35867  __205:
 35868  	if !(clen > 0) {
 35869  		goto __945
 35870  	}
 35871  	switch c {
 35872  	case Tuint32_t('\013'):
 35873  		goto __947
 35874  	case Tuint32_t('\014'):
 35875  		goto __948
 35876  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 35877  		goto __949
 35878  	case Tuint32_t(0x2028):
 35879  		goto __950
 35880  	case Tuint32_t(0x2029):
 35881  		goto __951
 35882  	// Fall through
 35883  
 35884  	case Tuint32_t('\012'):
 35885  		goto __952
 35886  
 35887  	case Tuint32_t('\015'):
 35888  		goto __953
 35889  	}
 35890  	goto __946
 35891  
 35892  __947:
 35893  __948:
 35894  __949:
 35895  __950:
 35896  __951:
 35897  	if !(int32((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 35898  		goto __954
 35899  	}
 35900  	goto __946
 35901  __954:
 35902  	;
 35903  	// Fall through
 35904  
 35905  __952:
 35906  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35907  		goto __955
 35908  	}
 35909  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 35910  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35911  	next_new_state += 12
 35912  	goto __956
 35913  __955:
 35914  	return -43
 35915  __956:
 35916  	;
 35917  	goto __946
 35918  
 35919  __953:
 35920  	if !(ptr+uintptr(1) >= end_subject) {
 35921  		goto __957
 35922  	}
 35923  
 35924  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35925  		goto __959
 35926  	}
 35927  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 35928  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35929  	next_new_state += 12
 35930  	goto __960
 35931  __959:
 35932  	return -43
 35933  __960:
 35934  	;
 35935  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0)) {
 35936  		goto __961
 35937  	}
 35938  	reset_could_continue = DTRUE
 35939  __961:
 35940  	;
 35941  	goto __958
 35942  __957:
 35943  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + uintptr(1)))) == '\012') {
 35944  		goto __962
 35945  	}
 35946  
 35947  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35948  		goto __964
 35949  	}
 35950  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + 1)
 35951  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35952  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = 1
 35953  	next_new_state += 12
 35954  	goto __965
 35955  __964:
 35956  	return -43
 35957  __965:
 35958  	;
 35959  	goto __963
 35960  __962:
 35961  
 35962  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 35963  		goto __966
 35964  	}
 35965  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 35966  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 35967  	next_new_state += 12
 35968  	goto __967
 35969  __966:
 35970  	return -43
 35971  __967:
 35972  	;
 35973  __963:
 35974  	;
 35975  __958:
 35976  	;
 35977  	goto __946
 35978  __946:
 35979  	;
 35980  __945:
 35981  	;
 35982  	goto __89
 35983  
 35984  	//-----------------------------------------------------------------
 35985  __206:
 35986  	if !(clen > 0) {
 35987  		goto __968
 35988  	}
 35989  	switch c {
 35990  	case Tuint32_t('\012'):
 35991  		goto __970
 35992  	case Tuint32_t('\013'):
 35993  		goto __971
 35994  	case Tuint32_t('\014'):
 35995  		goto __972
 35996  	case Tuint32_t('\015'):
 35997  		goto __973
 35998  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 35999  		goto __974
 36000  	case Tuint32_t(0x2028):
 36001  		goto __975 /* LINE SEPARATOR */
 36002  	case Tuint32_t(0x2029):
 36003  		goto __976
 36004  
 36005  	default:
 36006  		goto __977
 36007  	}
 36008  	goto __969
 36009  
 36010  __970:
 36011  __971:
 36012  __972:
 36013  __973:
 36014  __974:
 36015  __975: /* LINE SEPARATOR */
 36016  __976:
 36017  	goto __969
 36018  
 36019  __977:
 36020  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36021  		goto __978
 36022  	}
 36023  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 36024  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36025  	next_new_state += 12
 36026  	goto __979
 36027  __978:
 36028  	return -43
 36029  __979:
 36030  	;
 36031  	goto __969
 36032  __969:
 36033  	;
 36034  __968:
 36035  	;
 36036  	goto __89
 36037  
 36038  	//-----------------------------------------------------------------
 36039  __207:
 36040  	if !(clen > 0) {
 36041  		goto __980
 36042  	}
 36043  	switch c {
 36044  	case Tuint32_t('\012'):
 36045  		goto __982
 36046  	case Tuint32_t('\013'):
 36047  		goto __983
 36048  	case Tuint32_t('\014'):
 36049  		goto __984
 36050  	case Tuint32_t('\015'):
 36051  		goto __985
 36052  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 36053  		goto __986
 36054  	case Tuint32_t(0x2028):
 36055  		goto __987 /* LINE SEPARATOR */
 36056  	case Tuint32_t(0x2029):
 36057  		goto __988
 36058  
 36059  	default:
 36060  		goto __989
 36061  	}
 36062  	goto __981
 36063  
 36064  __982:
 36065  __983:
 36066  __984:
 36067  __985:
 36068  __986:
 36069  __987: /* LINE SEPARATOR */
 36070  __988:
 36071  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36072  		goto __990
 36073  	}
 36074  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 36075  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36076  	next_new_state += 12
 36077  	goto __991
 36078  __990:
 36079  	return -43
 36080  __991:
 36081  	;
 36082  	goto __981
 36083  
 36084  __989:
 36085  	goto __981
 36086  __981:
 36087  	;
 36088  __980:
 36089  	;
 36090  	goto __89
 36091  
 36092  	//-----------------------------------------------------------------
 36093  __208:
 36094  	if !(clen > 0) {
 36095  		goto __992
 36096  	}
 36097  	switch c {
 36098  	case Tuint32_t('\011'):
 36099  		goto __994
 36100  	case Tuint32_t('\040'):
 36101  		goto __995
 36102  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 36103  		goto __996
 36104  	case Tuint32_t(0x1680):
 36105  		goto __997 /* OGHAM SPACE MARK */
 36106  	case Tuint32_t(0x180e):
 36107  		goto __998 /* MONGOLIAN VOWEL SEPARATOR */
 36108  	case Tuint32_t(0x2000):
 36109  		goto __999 /* EN QUAD */
 36110  	case Tuint32_t(0x2001):
 36111  		goto __1000 /* EM QUAD */
 36112  	case Tuint32_t(0x2002):
 36113  		goto __1001 /* EN SPACE */
 36114  	case Tuint32_t(0x2003):
 36115  		goto __1002 /* EM SPACE */
 36116  	case Tuint32_t(0x2004):
 36117  		goto __1003 /* THREE-PER-EM SPACE */
 36118  	case Tuint32_t(0x2005):
 36119  		goto __1004 /* FOUR-PER-EM SPACE */
 36120  	case Tuint32_t(0x2006):
 36121  		goto __1005 /* SIX-PER-EM SPACE */
 36122  	case Tuint32_t(0x2007):
 36123  		goto __1006 /* FIGURE SPACE */
 36124  	case Tuint32_t(0x2008):
 36125  		goto __1007 /* PUNCTUATION SPACE */
 36126  	case Tuint32_t(0x2009):
 36127  		goto __1008 /* THIN SPACE */
 36128  	case Tuint32_t(0x200A):
 36129  		goto __1009 /* HAIR SPACE */
 36130  	case Tuint32_t(0x202f):
 36131  		goto __1010 /* NARROW NO-BREAK SPACE */
 36132  	case Tuint32_t(0x205f):
 36133  		goto __1011 /* MEDIUM MATHEMATICAL SPACE */
 36134  	case Tuint32_t(0x3000):
 36135  		goto __1012
 36136  
 36137  	default:
 36138  		goto __1013
 36139  	}
 36140  	goto __993
 36141  
 36142  __994:
 36143  __995:
 36144  __996:
 36145  __997: /* OGHAM SPACE MARK */
 36146  __998: /* MONGOLIAN VOWEL SEPARATOR */
 36147  __999: /* EN QUAD */
 36148  __1000: /* EM QUAD */
 36149  __1001: /* EN SPACE */
 36150  __1002: /* EM SPACE */
 36151  __1003: /* THREE-PER-EM SPACE */
 36152  __1004: /* FOUR-PER-EM SPACE */
 36153  __1005: /* SIX-PER-EM SPACE */
 36154  __1006: /* FIGURE SPACE */
 36155  __1007: /* PUNCTUATION SPACE */
 36156  __1008: /* THIN SPACE */
 36157  __1009: /* HAIR SPACE */
 36158  __1010: /* NARROW NO-BREAK SPACE */
 36159  __1011: /* MEDIUM MATHEMATICAL SPACE */
 36160  __1012:
 36161  	goto __993
 36162  
 36163  __1013:
 36164  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36165  		goto __1014
 36166  	}
 36167  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 36168  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36169  	next_new_state += 12
 36170  	goto __1015
 36171  __1014:
 36172  	return -43
 36173  __1015:
 36174  	;
 36175  	goto __993
 36176  __993:
 36177  	;
 36178  __992:
 36179  	;
 36180  	goto __89
 36181  
 36182  	//-----------------------------------------------------------------
 36183  __209:
 36184  	if !(clen > 0) {
 36185  		goto __1016
 36186  	}
 36187  	switch c {
 36188  	case Tuint32_t('\011'):
 36189  		goto __1018
 36190  	case Tuint32_t('\040'):
 36191  		goto __1019
 36192  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 36193  		goto __1020
 36194  	case Tuint32_t(0x1680):
 36195  		goto __1021 /* OGHAM SPACE MARK */
 36196  	case Tuint32_t(0x180e):
 36197  		goto __1022 /* MONGOLIAN VOWEL SEPARATOR */
 36198  	case Tuint32_t(0x2000):
 36199  		goto __1023 /* EN QUAD */
 36200  	case Tuint32_t(0x2001):
 36201  		goto __1024 /* EM QUAD */
 36202  	case Tuint32_t(0x2002):
 36203  		goto __1025 /* EN SPACE */
 36204  	case Tuint32_t(0x2003):
 36205  		goto __1026 /* EM SPACE */
 36206  	case Tuint32_t(0x2004):
 36207  		goto __1027 /* THREE-PER-EM SPACE */
 36208  	case Tuint32_t(0x2005):
 36209  		goto __1028 /* FOUR-PER-EM SPACE */
 36210  	case Tuint32_t(0x2006):
 36211  		goto __1029 /* SIX-PER-EM SPACE */
 36212  	case Tuint32_t(0x2007):
 36213  		goto __1030 /* FIGURE SPACE */
 36214  	case Tuint32_t(0x2008):
 36215  		goto __1031 /* PUNCTUATION SPACE */
 36216  	case Tuint32_t(0x2009):
 36217  		goto __1032 /* THIN SPACE */
 36218  	case Tuint32_t(0x200A):
 36219  		goto __1033 /* HAIR SPACE */
 36220  	case Tuint32_t(0x202f):
 36221  		goto __1034 /* NARROW NO-BREAK SPACE */
 36222  	case Tuint32_t(0x205f):
 36223  		goto __1035 /* MEDIUM MATHEMATICAL SPACE */
 36224  	case Tuint32_t(0x3000):
 36225  		goto __1036
 36226  
 36227  	default:
 36228  		goto __1037
 36229  	}
 36230  	goto __1017
 36231  
 36232  __1018:
 36233  __1019:
 36234  __1020:
 36235  __1021: /* OGHAM SPACE MARK */
 36236  __1022: /* MONGOLIAN VOWEL SEPARATOR */
 36237  __1023: /* EN QUAD */
 36238  __1024: /* EM QUAD */
 36239  __1025: /* EN SPACE */
 36240  __1026: /* EM SPACE */
 36241  __1027: /* THREE-PER-EM SPACE */
 36242  __1028: /* FOUR-PER-EM SPACE */
 36243  __1029: /* SIX-PER-EM SPACE */
 36244  __1030: /* FIGURE SPACE */
 36245  __1031: /* PUNCTUATION SPACE */
 36246  __1032: /* THIN SPACE */
 36247  __1033: /* HAIR SPACE */
 36248  __1034: /* NARROW NO-BREAK SPACE */
 36249  __1035: /* MEDIUM MATHEMATICAL SPACE */
 36250  __1036:
 36251  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36252  		goto __1038
 36253  	}
 36254  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + 1
 36255  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36256  	next_new_state += 12
 36257  	goto __1039
 36258  __1038:
 36259  	return -43
 36260  __1039:
 36261  	;
 36262  	goto __1017
 36263  
 36264  __1037:
 36265  	goto __1017
 36266  __1017:
 36267  	;
 36268  __1016:
 36269  	;
 36270  	goto __89
 36271  
 36272  	//-----------------------------------------------------------------
 36273  	// Match a negated single character casefully.
 36274  
 36275  __210:
 36276  	if !(clen > 0 && c != d) {
 36277  		goto __1040
 36278  	}
 36279  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36280  		goto __1041
 36281  	}
 36282  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1
 36283  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36284  	next_new_state += 12
 36285  	goto __1042
 36286  __1041:
 36287  	return -43
 36288  __1042:
 36289  	;
 36290  __1040:
 36291  	;
 36292  	goto __89
 36293  
 36294  	//-----------------------------------------------------------------
 36295  	// Match a negated single character caselessly.
 36296  
 36297  __211:
 36298  	if !(clen > 0) {
 36299  		goto __1043
 36300  	}
 36301  
 36302  	if !(utf_or_ucp != 0 && d >= Tuint32_t(128)) {
 36303  		goto __1044
 36304  	}
 36305  	otherd = Tuint32_t(int32(d) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 36306  	goto __1045
 36307  __1044:
 36308  	otherd = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(d))))
 36309  __1045:
 36310  	;
 36311  	if !(c != d && c != otherd) {
 36312  		goto __1046
 36313  	}
 36314  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36315  		goto __1047
 36316  	}
 36317  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1
 36318  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36319  	next_new_state += 12
 36320  	goto __1048
 36321  __1047:
 36322  	return -43
 36323  __1048:
 36324  	;
 36325  __1046:
 36326  	;
 36327  __1043:
 36328  	;
 36329  	goto __89
 36330  
 36331  	//-----------------------------------------------------------------
 36332  __212:
 36333  __213:
 36334  __214:
 36335  __215:
 36336  __216:
 36337  __217:
 36338  	caseless = DTRUE
 36339  	codevalue = codevalue - Tuint32_t(OP_STARI-OP_STAR)
 36340  
 36341  	// Fall through
 36342  __218:
 36343  __219:
 36344  __220:
 36345  __221:
 36346  __222:
 36347  __223:
 36348  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 36349  	if !(count > 0) {
 36350  		goto __1049
 36351  	}
 36352  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36353  		goto __1050
 36354  	}
 36355  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + dlen + 1
 36356  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36357  	next_active_state += 12
 36358  	goto __1051
 36359  __1050:
 36360  	return -43
 36361  __1051:
 36362  	;
 36363  __1049:
 36364  	;
 36365  	if !(clen > 0) {
 36366  		goto __1052
 36367  	}
 36368  
 36369  	otherd1 = DNOTACHAR
 36370  	if !(caseless != 0) {
 36371  		goto __1053
 36372  	}
 36373  
 36374  	if !(utf_or_ucp != 0 && d >= Tuint32_t(128)) {
 36375  		goto __1054
 36376  	}
 36377  	otherd1 = Tuint32_t(int32(d) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 36378  	goto __1055
 36379  __1054:
 36380  	otherd1 = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(d))))
 36381  __1055:
 36382  	;
 36383  __1053:
 36384  	;
 36385  	if !(libc.Bool32(c == d || c == otherd1) == libc.Bool32(codevalue < OP_NOTSTAR)) {
 36386  		goto __1056
 36387  	}
 36388  
 36389  	if !(count > 0 && (codevalue == OP_POSPLUS || codevalue == OP_NOTPOSPLUS)) {
 36390  		goto __1057
 36391  	}
 36392  
 36393  	active_count-- // Remove non-match possibility
 36394  	next_active_state -= 12
 36395  __1057:
 36396  	;
 36397  	count++
 36398  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36399  		goto __1058
 36400  	}
 36401  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 36402  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 36403  	next_new_state += 12
 36404  	goto __1059
 36405  __1058:
 36406  	return -43
 36407  __1059:
 36408  	;
 36409  __1056:
 36410  	;
 36411  __1052:
 36412  	;
 36413  	goto __89
 36414  
 36415  	//-----------------------------------------------------------------
 36416  __224:
 36417  __225:
 36418  __226:
 36419  __227:
 36420  __228:
 36421  __229:
 36422  	caseless = DTRUE
 36423  	codevalue = codevalue - Tuint32_t(OP_STARI-OP_STAR)
 36424  	// Fall through
 36425  __230:
 36426  __231:
 36427  __232:
 36428  __233:
 36429  __234:
 36430  __235:
 36431  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36432  		goto __1060
 36433  	}
 36434  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + dlen + 1
 36435  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36436  	next_active_state += 12
 36437  	goto __1061
 36438  __1060:
 36439  	return -43
 36440  __1061:
 36441  	;
 36442  	if !(clen > 0) {
 36443  		goto __1062
 36444  	}
 36445  
 36446  	otherd2 = DNOTACHAR
 36447  	if !(caseless != 0) {
 36448  		goto __1063
 36449  	}
 36450  
 36451  	if !(utf_or_ucp != 0 && d >= Tuint32_t(128)) {
 36452  		goto __1064
 36453  	}
 36454  	otherd2 = Tuint32_t(int32(d) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 36455  	goto __1065
 36456  __1064:
 36457  	otherd2 = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(d))))
 36458  __1065:
 36459  	;
 36460  __1063:
 36461  	;
 36462  	if !(libc.Bool32(c == d || c == otherd2) == libc.Bool32(codevalue < OP_NOTSTAR)) {
 36463  		goto __1066
 36464  	}
 36465  
 36466  	if !(codevalue == OP_POSQUERY || codevalue == OP_NOTPOSQUERY) {
 36467  		goto __1067
 36468  	}
 36469  
 36470  	active_count-- // Remove non-match possibility
 36471  	next_active_state -= 12
 36472  __1067:
 36473  	;
 36474  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36475  		goto __1068
 36476  	}
 36477  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1
 36478  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36479  	next_new_state += 12
 36480  	goto __1069
 36481  __1068:
 36482  	return -43
 36483  __1069:
 36484  	;
 36485  __1066:
 36486  	;
 36487  __1062:
 36488  	;
 36489  	goto __89
 36490  
 36491  	//-----------------------------------------------------------------
 36492  __236:
 36493  __237:
 36494  __238:
 36495  __239:
 36496  __240:
 36497  __241:
 36498  	caseless = DTRUE
 36499  	codevalue = codevalue - Tuint32_t(OP_STARI-OP_STAR)
 36500  	// Fall through
 36501  __242:
 36502  __243:
 36503  __244:
 36504  __245:
 36505  __246:
 36506  __247:
 36507  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36508  		goto __1070
 36509  	}
 36510  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + dlen + 1
 36511  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36512  	next_active_state += 12
 36513  	goto __1071
 36514  __1070:
 36515  	return -43
 36516  __1071:
 36517  	;
 36518  	if !(clen > 0) {
 36519  		goto __1072
 36520  	}
 36521  
 36522  	otherd3 = DNOTACHAR
 36523  	if !(caseless != 0) {
 36524  		goto __1073
 36525  	}
 36526  
 36527  	if !(utf_or_ucp != 0 && d >= Tuint32_t(128)) {
 36528  		goto __1074
 36529  	}
 36530  	otherd3 = Tuint32_t(int32(d) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 36531  	goto __1075
 36532  __1074:
 36533  	otherd3 = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(d))))
 36534  __1075:
 36535  	;
 36536  __1073:
 36537  	;
 36538  	if !(libc.Bool32(c == d || c == otherd3) == libc.Bool32(codevalue < OP_NOTSTAR)) {
 36539  		goto __1076
 36540  	}
 36541  
 36542  	if !(codevalue == OP_POSSTAR || codevalue == OP_NOTPOSSTAR) {
 36543  		goto __1077
 36544  	}
 36545  
 36546  	active_count-- // Remove non-match possibility
 36547  	next_active_state -= 12
 36548  __1077:
 36549  	;
 36550  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36551  		goto __1078
 36552  	}
 36553  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 36554  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36555  	next_new_state += 12
 36556  	goto __1079
 36557  __1078:
 36558  	return -43
 36559  __1079:
 36560  	;
 36561  __1076:
 36562  	;
 36563  __1072:
 36564  	;
 36565  	goto __89
 36566  
 36567  	//-----------------------------------------------------------------
 36568  __248:
 36569  __249:
 36570  	caseless = DTRUE
 36571  	codevalue = codevalue - Tuint32_t(OP_STARI-OP_STAR)
 36572  	// Fall through
 36573  __250:
 36574  __251:
 36575  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 36576  	if !(clen > 0) {
 36577  		goto __1080
 36578  	}
 36579  
 36580  	otherd4 = DNOTACHAR
 36581  	if !(caseless != 0) {
 36582  		goto __1081
 36583  	}
 36584  
 36585  	if !(utf_or_ucp != 0 && d >= Tuint32_t(128)) {
 36586  		goto __1082
 36587  	}
 36588  	otherd4 = Tuint32_t(int32(d) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 36589  	goto __1083
 36590  __1082:
 36591  	otherd4 = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(d))))
 36592  __1083:
 36593  	;
 36594  __1081:
 36595  	;
 36596  	if !(libc.Bool32(c == d || c == otherd4) == libc.Bool32(codevalue < OP_NOTSTAR)) {
 36597  		goto __1084
 36598  	}
 36599  
 36600  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 36601  		goto __1085
 36602  	}
 36603  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36604  		goto __1087
 36605  	}
 36606  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1 + DIMM2_SIZE
 36607  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36608  	next_new_state += 12
 36609  	goto __1088
 36610  __1087:
 36611  	return -43
 36612  __1088:
 36613  	;
 36614  	goto __1086
 36615  __1085:
 36616  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36617  		goto __1089
 36618  	}
 36619  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 36620  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 36621  	next_new_state += 12
 36622  	goto __1090
 36623  __1089:
 36624  	return -43
 36625  __1090:
 36626  	;
 36627  __1086:
 36628  	;
 36629  __1084:
 36630  	;
 36631  __1080:
 36632  	;
 36633  	goto __89
 36634  
 36635  	//-----------------------------------------------------------------
 36636  __252:
 36637  __253:
 36638  __254:
 36639  __255:
 36640  __256:
 36641  __257:
 36642  	caseless = DTRUE
 36643  	codevalue = codevalue - Tuint32_t(OP_STARI-OP_STAR)
 36644  	// Fall through
 36645  __258:
 36646  __259:
 36647  __260:
 36648  __261:
 36649  __262:
 36650  __263:
 36651  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36652  		goto __1091
 36653  	}
 36654  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + dlen + 1 + DIMM2_SIZE
 36655  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36656  	next_active_state += 12
 36657  	goto __1092
 36658  __1091:
 36659  	return -43
 36660  __1092:
 36661  	;
 36662  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Number already matched
 36663  	if !(clen > 0) {
 36664  		goto __1093
 36665  	}
 36666  
 36667  	otherd5 = DNOTACHAR
 36668  	if !(caseless != 0) {
 36669  		goto __1094
 36670  	}
 36671  
 36672  	if !(utf_or_ucp != 0 && d >= Tuint32_t(128)) {
 36673  		goto __1095
 36674  	}
 36675  	otherd5 = Tuint32_t(int32(d) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 36676  	goto __1096
 36677  __1095:
 36678  	otherd5 = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer(fcc + uintptr(d))))
 36679  __1096:
 36680  	;
 36681  __1094:
 36682  	;
 36683  	if !(libc.Bool32(c == d || c == otherd5) == libc.Bool32(codevalue < OP_NOTSTAR)) {
 36684  		goto __1097
 36685  	}
 36686  
 36687  	if !(codevalue == OP_POSUPTO || codevalue == OP_NOTPOSUPTO) {
 36688  		goto __1098
 36689  	}
 36690  
 36691  	active_count-- // Remove non-match possibility
 36692  	next_active_state -= 12
 36693  __1098:
 36694  	;
 36695  	if !(libc.PreIncInt32(&count, 1) >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))) {
 36696  		goto __1099
 36697  	}
 36698  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36699  		goto __1101
 36700  	}
 36701  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset + dlen + 1 + DIMM2_SIZE
 36702  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36703  	next_new_state += 12
 36704  	goto __1102
 36705  __1101:
 36706  	return -43
 36707  __1102:
 36708  	;
 36709  	goto __1100
 36710  __1099:
 36711  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36712  		goto __1103
 36713  	}
 36714  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 36715  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 36716  	next_new_state += 12
 36717  	goto __1104
 36718  __1103:
 36719  	return -43
 36720  __1104:
 36721  	;
 36722  __1100:
 36723  	;
 36724  __1097:
 36725  	;
 36726  __1093:
 36727  	;
 36728  	goto __89
 36729  
 36730  	// ==========================================================================
 36731  	// These are the class-handling opcodes
 36732  
 36733  __264:
 36734  __265:
 36735  __266:
 36736  
 36737  	isinclass = DFALSE
 36738  
 36739  	// For a simple class, there is always just a 32-byte table, and we
 36740  	//         can set isinclass from it.
 36741  
 36742  	if !(codevalue != OP_XCLASS) {
 36743  		goto __1105
 36744  	}
 36745  
 36746  	ecode = code + uintptr(1) + uintptr(uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 36747  	if !(clen > 0) {
 36748  		goto __1107
 36749  	}
 36750  
 36751  	if c > Tuint32_t(255) {
 36752  		isinclass = libc.Bool32(codevalue == OP_NCLASS)
 36753  	} else {
 36754  		isinclass = libc.Bool32(uint32(*(*Tuint8_t)(unsafe.Pointer(code + uintptr(1) + uintptr(c/Tuint32_t(8)))))&(uint32(1)<<(c&Tuint32_t(7))) != uint32(0))
 36755  	}
 36756  __1107:
 36757  	;
 36758  	goto __1106
 36759  __1105:
 36760  
 36761  	ecode = code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 36762  	if !(clen > 0) {
 36763  		goto __1108
 36764  	}
 36765  	isinclass = X_pcre2_xclass_8(tls, c, code+uintptr(1)+uintptr(DLINK_SIZE), utf)
 36766  __1108:
 36767  	;
 36768  __1106:
 36769  	;
 36770  
 36771  	// At this point, isinclass is set for all kinds of class, and ecode
 36772  	//         points to the byte after the end of the class. If there is a
 36773  	//         quantifier, this is where it will be.
 36774  
 36775  	next_state_offset = int32((int64(ecode) - int64(start_code)) / 1)
 36776  
 36777  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode))) {
 36778  	case OP_CRSTAR:
 36779  		goto __1110
 36780  	case OP_CRMINSTAR:
 36781  		goto __1111
 36782  	case OP_CRPOSSTAR:
 36783  		goto __1112
 36784  
 36785  	case OP_CRPLUS:
 36786  		goto __1113
 36787  	case OP_CRMINPLUS:
 36788  		goto __1114
 36789  	case OP_CRPOSPLUS:
 36790  		goto __1115
 36791  
 36792  	case OP_CRQUERY:
 36793  		goto __1116
 36794  	case OP_CRMINQUERY:
 36795  		goto __1117
 36796  	case OP_CRPOSQUERY:
 36797  		goto __1118
 36798  
 36799  	case OP_CRRANGE:
 36800  		goto __1119
 36801  	case OP_CRMINRANGE:
 36802  		goto __1120
 36803  	case OP_CRPOSRANGE:
 36804  		goto __1121
 36805  
 36806  	default:
 36807  		goto __1122
 36808  	}
 36809  	goto __1109
 36810  
 36811  __1110:
 36812  __1111:
 36813  __1112:
 36814  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36815  		goto __1123
 36816  	}
 36817  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = next_state_offset + 1
 36818  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36819  	next_active_state += 12
 36820  	goto __1124
 36821  __1123:
 36822  	return -43
 36823  __1124:
 36824  	;
 36825  	if !(isinclass != 0) {
 36826  		goto __1125
 36827  	}
 36828  
 36829  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode))) == OP_CRPOSSTAR) {
 36830  		goto __1126
 36831  	}
 36832  
 36833  	active_count-- // Remove non-match possibility
 36834  	next_active_state -= 12
 36835  __1126:
 36836  	;
 36837  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36838  		goto __1127
 36839  	}
 36840  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 36841  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36842  	next_new_state += 12
 36843  	goto __1128
 36844  __1127:
 36845  	return -43
 36846  __1128:
 36847  	;
 36848  __1125:
 36849  	;
 36850  	goto __1109
 36851  
 36852  __1113:
 36853  __1114:
 36854  __1115:
 36855  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 36856  	if !(count > 0) {
 36857  		goto __1129
 36858  	}
 36859  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36860  		goto __1130
 36861  	}
 36862  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = next_state_offset + 1
 36863  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36864  	next_active_state += 12
 36865  	goto __1131
 36866  __1130:
 36867  	return -43
 36868  __1131:
 36869  	;
 36870  __1129:
 36871  	;
 36872  	if !(isinclass != 0) {
 36873  		goto __1132
 36874  	}
 36875  
 36876  	if !(count > 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode))) == OP_CRPOSPLUS) {
 36877  		goto __1133
 36878  	}
 36879  
 36880  	active_count-- // Remove non-match possibility
 36881  	next_active_state -= 12
 36882  __1133:
 36883  	;
 36884  	count++
 36885  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36886  		goto __1134
 36887  	}
 36888  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 36889  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 36890  	next_new_state += 12
 36891  	goto __1135
 36892  __1134:
 36893  	return -43
 36894  __1135:
 36895  	;
 36896  __1132:
 36897  	;
 36898  	goto __1109
 36899  
 36900  __1116:
 36901  __1117:
 36902  __1118:
 36903  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36904  		goto __1136
 36905  	}
 36906  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = next_state_offset + 1
 36907  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36908  	next_active_state += 12
 36909  	goto __1137
 36910  __1136:
 36911  	return -43
 36912  __1137:
 36913  	;
 36914  	if !(isinclass != 0) {
 36915  		goto __1138
 36916  	}
 36917  
 36918  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode))) == OP_CRPOSQUERY) {
 36919  		goto __1139
 36920  	}
 36921  
 36922  	active_count-- // Remove non-match possibility
 36923  	next_active_state -= 12
 36924  __1139:
 36925  	;
 36926  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36927  		goto __1140
 36928  	}
 36929  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = next_state_offset + 1
 36930  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36931  	next_new_state += 12
 36932  	goto __1141
 36933  __1140:
 36934  	return -43
 36935  __1141:
 36936  	;
 36937  __1138:
 36938  	;
 36939  	goto __1109
 36940  
 36941  __1119:
 36942  __1120:
 36943  __1121:
 36944  	count = (*Tstateblock)(unsafe.Pointer(current_state)).Fcount // Already matched
 36945  	if !(count >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode + 2)))))) {
 36946  		goto __1142
 36947  	}
 36948  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 36949  		goto __1143
 36950  	}
 36951  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = next_state_offset + 1 + 2*DIMM2_SIZE
 36952  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 36953  	next_active_state += 12
 36954  	goto __1144
 36955  __1143:
 36956  	return -43
 36957  __1144:
 36958  	;
 36959  __1142:
 36960  	;
 36961  	if !(isinclass != 0) {
 36962  		goto __1145
 36963  	}
 36964  
 36965  	max = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode + 4)))))
 36966  
 36967  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode))) == OP_CRPOSRANGE && count >= int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ecode + 2)))))) {
 36968  		goto __1146
 36969  	}
 36970  
 36971  	active_count-- // Remove non-match possibility
 36972  	next_active_state -= 12
 36973  __1146:
 36974  	;
 36975  
 36976  	if !(libc.PreIncInt32(&count, 1) >= max && max != 0) {
 36977  		goto __1147
 36978  	} /* Max 0 => no limit */
 36979  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36980  		goto __1149
 36981  	}
 36982  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = next_state_offset + 1 + 2*DIMM2_SIZE
 36983  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 36984  	next_new_state += 12
 36985  	goto __1150
 36986  __1149:
 36987  	return -43
 36988  __1150:
 36989  	;
 36990  	goto __1148
 36991  __1147:
 36992  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 36993  		goto __1151
 36994  	}
 36995  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = state_offset
 36996  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = count
 36997  	next_new_state += 12
 36998  	goto __1152
 36999  __1151:
 37000  	return -43
 37001  __1152:
 37002  	;
 37003  __1148:
 37004  	;
 37005  __1145:
 37006  	;
 37007  	goto __1109
 37008  
 37009  __1122:
 37010  	if !(isinclass != 0) {
 37011  		goto __1153
 37012  	}
 37013  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 37014  		goto __1154
 37015  	}
 37016  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = next_state_offset
 37017  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 37018  	next_new_state += 12
 37019  	goto __1155
 37020  __1154:
 37021  	return -43
 37022  __1155:
 37023  	;
 37024  __1153:
 37025  	;
 37026  	goto __1109
 37027  __1109:
 37028  	;
 37029  
 37030  	goto __89
 37031  
 37032  	// ==========================================================================
 37033  	// These are the opcodes for fancy brackets of various kinds. We have
 37034  	//       to use recursion in order to handle them. The "always failing" assertion
 37035  	//       (?!) is optimised to OP_FAIL when compiling, so we have to support that,
 37036  	//       though the other "backtracking verbs" are not supported.
 37037  
 37038  __267:
 37039  	forced_fail++ // Count FAILs for multiple states
 37040  	goto __89
 37041  
 37042  __268:
 37043  __269:
 37044  __270:
 37045  __271:
 37046  
 37047  	endasscode = code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 37048  	*(*uintptr)(unsafe.Pointer(bp + 16 /* rws */)) = RWS
 37049  
 37050  	if !(uint64((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16)))).Ffree) < uint64(DRWS_RSIZE)+uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))) {
 37051  		goto __1156
 37052  	}
 37053  
 37054  	rc = more_workspace(tls, bp+16, uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))), mb)
 37055  	if !(rc != 0) {
 37056  		goto __1157
 37057  	}
 37058  	return rc
 37059  __1157:
 37060  	;
 37061  	RWS = *(*uintptr)(unsafe.Pointer(bp + 16 /* rws */))
 37062  __1156:
 37063  	;
 37064  
 37065  	local_offsets = RWS + uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16)))).Fsize)*4 - uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16)))).Ffree)*4
 37066  	local_workspace = local_offsets + uintptr(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))*4
 37067  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16)) + 12)) -= uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37068  
 37069  __1158:
 37070  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(endasscode))) == OP_ALT) {
 37071  		goto __1159
 37072  	}
 37073  	endasscode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(endasscode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(endasscode + 2)))))
 37074  	goto __1158
 37075  __1159:
 37076  	;
 37077  
 37078  	rc = internal_dfa_match(tls,
 37079  		mb,   // static match data
 37080  		code, // this subexpression's code
 37081  		ptr,  // where we currently are
 37082  		Tsize_t((int64(ptr)-int64(start_subject))/1),
 37083  		local_offsets, // offset vector
 37084  		uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))/(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))),
 37085  		local_workspace, // workspace vector
 37086  		DRWS_RSIZE,      // size of same
 37087  		rlevel,          // function recursion level
 37088  		RWS)             // recursion workspace
 37089  
 37090  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 16)) + 12)) += uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37091  
 37092  	if !(rc < 0 && rc != -1) {
 37093  		goto __1160
 37094  	}
 37095  	return rc
 37096  __1160:
 37097  	;
 37098  	if !(libc.Bool32(rc >= 0) == libc.Bool32(codevalue == OP_ASSERT || codevalue == OP_ASSERTBACK)) {
 37099  		goto __1161
 37100  	}
 37101  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37102  		goto __1162
 37103  	}
 37104  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(endasscode+uintptr(DLINK_SIZE)+uintptr(1)) - int64(start_code)) / 1)
 37105  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37106  	next_active_state += 12
 37107  	goto __1163
 37108  __1162:
 37109  	return -43
 37110  __1163:
 37111  	;
 37112  __1161:
 37113  	;
 37114  
 37115  	goto __89
 37116  
 37117  	//-----------------------------------------------------------------
 37118  __272:
 37119  __273:
 37120  
 37121  	codelink = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 37122  
 37123  	// Because of the way auto-callout works during compile, a callout item
 37124  	//         is inserted between OP_COND and an assertion condition. This does not
 37125  	//         happen for the other conditions.
 37126  
 37127  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_CALLOUT ||
 37128  		int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_CALLOUT_STR) {
 37129  		goto __1164
 37130  	}
 37131  
 37132  	rrc = do_callout_dfa(tls, code, offsets, current_subject, ptr, mb,
 37133  		uint64(1+DLINK_SIZE), bp+24)
 37134  	if !(rrc < 0) {
 37135  		goto __1165
 37136  	}
 37137  	return rrc
 37138  __1165:
 37139  	; // Abandon
 37140  	if !(rrc > 0) {
 37141  		goto __1166
 37142  	}
 37143  	goto __89
 37144  __1166:
 37145  	;                                                                               // Fail this thread
 37146  	code += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp + 24 /* callout_length */))) // Skip callout data
 37147  __1164:
 37148  	;
 37149  
 37150  	condcode = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))
 37151  
 37152  	// Back reference conditions and duplicate named recursion conditions
 37153  	//         are not supported
 37154  
 37155  	if !(int32(condcode) == OP_CREF || int32(condcode) == OP_DNCREF || int32(condcode) == OP_DNRREF) {
 37156  		goto __1167
 37157  	}
 37158  	return -40
 37159  __1167:
 37160  	;
 37161  
 37162  	// The DEFINE condition is always false, and the assertion (?!) is
 37163  	//         converted to OP_FAIL.
 37164  
 37165  	if !(int32(condcode) == OP_FALSE || int32(condcode) == OP_FAIL) {
 37166  		goto __1168
 37167  	}
 37168  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37169  		goto __1170
 37170  	}
 37171  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + codelink + DLINK_SIZE + 1
 37172  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37173  	next_active_state += 12
 37174  	goto __1171
 37175  __1170:
 37176  	return -43
 37177  __1171:
 37178  	;
 37179  	goto __1169
 37180  __1168:
 37181  	if !(int32(condcode) == OP_TRUE) {
 37182  		goto __1172
 37183  	}
 37184  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37185  		goto __1174
 37186  	}
 37187  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + DLINK_SIZE + 2
 37188  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37189  	next_active_state += 12
 37190  	goto __1175
 37191  __1174:
 37192  	return -43
 37193  __1175:
 37194  	;
 37195  	goto __1173
 37196  __1172:
 37197  	if !(int32(condcode) == OP_RREF) {
 37198  		goto __1176
 37199  	}
 37200  
 37201  	value = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5))))
 37202  	if !(value != uint32(DRREF_ANY)) {
 37203  		goto __1178
 37204  	}
 37205  	return -40
 37206  __1178:
 37207  	;
 37208  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Frecursive != uintptr(0)) {
 37209  		goto __1179
 37210  	}
 37211  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37212  		goto __1181
 37213  	}
 37214  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + DLINK_SIZE + 2 + DIMM2_SIZE
 37215  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37216  	next_active_state += 12
 37217  	goto __1182
 37218  __1181:
 37219  	return -43
 37220  __1182:
 37221  	;
 37222  	goto __1180
 37223  __1179:
 37224  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37225  		goto __1183
 37226  	}
 37227  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + codelink + DLINK_SIZE + 1
 37228  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37229  	next_active_state += 12
 37230  	goto __1184
 37231  __1183:
 37232  	return -43
 37233  __1184:
 37234  	;
 37235  __1180:
 37236  	;
 37237  	goto __1177
 37238  __1176:
 37239  
 37240  	asscode = code + uintptr(DLINK_SIZE) + uintptr(1)
 37241  	endasscode1 = asscode + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(asscode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(asscode + 2)))))
 37242  	*(*uintptr)(unsafe.Pointer(bp + 32 /* rws1 */)) = RWS
 37243  
 37244  	if !(uint64((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32)))).Ffree) < uint64(DRWS_RSIZE)+uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))) {
 37245  		goto __1185
 37246  	}
 37247  
 37248  	rc1 = more_workspace(tls, bp+32, uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))), mb)
 37249  	if !(rc1 != 0) {
 37250  		goto __1186
 37251  	}
 37252  	return rc1
 37253  __1186:
 37254  	;
 37255  	RWS = *(*uintptr)(unsafe.Pointer(bp + 32 /* rws1 */))
 37256  __1185:
 37257  	;
 37258  
 37259  	local_offsets1 = RWS + uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32)))).Fsize)*4 - uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32)))).Ffree)*4
 37260  	local_workspace1 = local_offsets1 + uintptr(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))*4
 37261  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32)) + 12)) -= uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37262  
 37263  __1187:
 37264  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(endasscode1))) == OP_ALT) {
 37265  		goto __1188
 37266  	}
 37267  	endasscode1 += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(endasscode1 + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(endasscode1 + 2)))))
 37268  	goto __1187
 37269  __1188:
 37270  	;
 37271  
 37272  	rc1 = internal_dfa_match(tls,
 37273  		mb,      // fixed match data
 37274  		asscode, // this subexpression's code
 37275  		ptr,     // where we currently are
 37276  		Tsize_t((int64(ptr)-int64(start_subject))/1),
 37277  		local_offsets1, // offset vector
 37278  		uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))/(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))),
 37279  		local_workspace1, // workspace vector
 37280  		DRWS_RSIZE,       // size of same
 37281  		rlevel,           // function recursion level
 37282  		RWS)              // recursion workspace
 37283  
 37284  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 32)) + 12)) += uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37285  
 37286  	if !(rc1 < 0 && rc1 != -1) {
 37287  		goto __1189
 37288  	}
 37289  	return rc1
 37290  __1189:
 37291  	;
 37292  	if !(libc.Bool32(rc1 >= 0) == libc.Bool32(int32(condcode) == OP_ASSERT || int32(condcode) == OP_ASSERTBACK)) {
 37293  		goto __1190
 37294  	}
 37295  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37296  		goto __1192
 37297  	}
 37298  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = int32((int64(endasscode1+uintptr(DLINK_SIZE)+uintptr(1)) - int64(start_code)) / 1)
 37299  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37300  	next_active_state += 12
 37301  	goto __1193
 37302  __1192:
 37303  	return -43
 37304  __1193:
 37305  	;
 37306  	goto __1191
 37307  __1190:
 37308  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37309  		goto __1194
 37310  	}
 37311  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + codelink + DLINK_SIZE + 1
 37312  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37313  	next_active_state += 12
 37314  	goto __1195
 37315  __1194:
 37316  	return -43
 37317  __1195:
 37318  	;
 37319  __1191:
 37320  	;
 37321  __1177:
 37322  	;
 37323  __1173:
 37324  	;
 37325  __1169:
 37326  	;
 37327  
 37328  	goto __89
 37329  
 37330  	//-----------------------------------------------------------------
 37331  __274:
 37332  
 37333  	*(*uintptr)(unsafe.Pointer(bp + 40 /* rws2 */)) = RWS
 37334  	callpat = start_code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 37335  	if callpat == (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_code {
 37336  		recno = uint32(0)
 37337  	} else {
 37338  		recno = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(callpat + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(callpat + 4))))
 37339  	}
 37340  
 37341  	if !(uint64((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 40)))).Ffree) < uint64(DRWS_RSIZE)+uint64(1000)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))) {
 37342  		goto __1196
 37343  	}
 37344  
 37345  	rc2 = more_workspace(tls, bp+40, uint32(uint64(1000)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))), mb)
 37346  	if !(rc2 != 0) {
 37347  		goto __1197
 37348  	}
 37349  	return rc2
 37350  __1197:
 37351  	;
 37352  	RWS = *(*uintptr)(unsafe.Pointer(bp + 40 /* rws2 */))
 37353  __1196:
 37354  	;
 37355  
 37356  	local_offsets2 = RWS + uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 40)))).Fsize)*4 - uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 40)))).Ffree)*4
 37357  	local_workspace2 = local_offsets2 + uintptr(uint64(1000)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))*4
 37358  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 40)) + 12)) -= uint32(uint64(DRWS_RSIZE) + uint64(1000)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37359  
 37360  	// Check for repeating a recursion without advancing the subject
 37361  	//         pointer. This should catch convoluted mutual recursions. (Some simple
 37362  	//         cases are caught at compile time.)
 37363  
 37364  	ri = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Frecursive
 37365  __1198:
 37366  	if !(ri != uintptr(0)) {
 37367  		goto __1200
 37368  	}
 37369  	if !(recno == (*Tdfa_recursion_info)(unsafe.Pointer(ri)).Fgroup_num && ptr == (*Tdfa_recursion_info)(unsafe.Pointer(ri)).Fsubject_position) {
 37370  		goto __1201
 37371  	}
 37372  	return -52
 37373  __1201:
 37374  	;
 37375  	goto __1199
 37376  __1199:
 37377  	ri = (*Tdfa_recursion_info)(unsafe.Pointer(ri)).Fprevrec
 37378  	goto __1198
 37379  	goto __1200
 37380  __1200:
 37381  	;
 37382  
 37383  	// Remember this recursion and where we started it so as to
 37384  	//         catch infinite loops.
 37385  
 37386  	(*Tdfa_recursion_info)(unsafe.Pointer(bp + 48 /* &new_recursive */)).Fgroup_num = recno
 37387  	(*Tdfa_recursion_info)(unsafe.Pointer(bp + 48 /* &new_recursive */)).Fsubject_position = ptr
 37388  	(*Tdfa_recursion_info)(unsafe.Pointer(bp + 48 /* &new_recursive */)).Fprevrec = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Frecursive
 37389  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Frecursive = bp + 48 /* &new_recursive */
 37390  
 37391  	rc2 = internal_dfa_match(tls,
 37392  		mb,      // fixed match data
 37393  		callpat, // this subexpression's code
 37394  		ptr,     // where we currently are
 37395  		Tsize_t((int64(ptr)-int64(start_subject))/1),
 37396  		local_offsets2, // offset vector
 37397  		uint32(uint64(1000)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))/(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))),
 37398  		local_workspace2, // workspace vector
 37399  		DRWS_RSIZE,       // size of same
 37400  		rlevel,           // function recursion level
 37401  		RWS)              // recursion workspace
 37402  
 37403  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 40)) + 12)) += uint32(uint64(DRWS_RSIZE) + uint64(1000)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37404  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Frecursive = (*Tdfa_recursion_info)(unsafe.Pointer(bp + 48 /* &new_recursive */)).Fprevrec // Done this recursion
 37405  
 37406  	// Ran out of internal offsets
 37407  
 37408  	if !(rc2 == 0) {
 37409  		goto __1202
 37410  	}
 37411  	return -39
 37412  __1202:
 37413  	;
 37414  
 37415  	// For each successful matched substring, set up the next state with a
 37416  	//         count of characters to skip before trying it. Note that the count is in
 37417  	//         characters, not bytes.
 37418  
 37419  	if !(rc2 > 0) {
 37420  		goto __1203
 37421  	}
 37422  
 37423  	rc2 = rc2*2 - 2
 37424  __1205:
 37425  	if !(rc2 >= 0) {
 37426  		goto __1207
 37427  	}
 37428  
 37429  	charcount = *(*Tsize_t)(unsafe.Pointer(local_offsets2 + uintptr(rc2+1)*8)) - *(*Tsize_t)(unsafe.Pointer(local_offsets2 + uintptr(rc2)*8))
 37430  	if !(utf != 0) {
 37431  		goto __1208
 37432  	}
 37433  
 37434  	p = start_subject + uintptr(*(*Tsize_t)(unsafe.Pointer(local_offsets2 + uintptr(rc2)*8)))
 37435  	pp = start_subject + uintptr(*(*Tsize_t)(unsafe.Pointer(local_offsets2 + uintptr(rc2+1)*8)))
 37436  __1209:
 37437  	if !(p < pp) {
 37438  		goto __1210
 37439  	}
 37440  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))))&0xc0 == 0x80) {
 37441  		goto __1211
 37442  	}
 37443  	charcount--
 37444  __1211:
 37445  	;
 37446  	goto __1209
 37447  __1210:
 37448  	;
 37449  __1208:
 37450  	;
 37451  	if !(charcount > uint64(0)) {
 37452  		goto __1212
 37453  	}
 37454  
 37455  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 37456  		goto __1214
 37457  	}
 37458  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -(state_offset + DLINK_SIZE + 1)
 37459  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 37460  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = int32(charcount - uint64(1))
 37461  	next_new_state += 12
 37462  	goto __1215
 37463  __1214:
 37464  	return -43
 37465  __1215:
 37466  	;
 37467  	goto __1213
 37468  __1212:
 37469  
 37470  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37471  		goto __1216
 37472  	}
 37473  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + DLINK_SIZE + 1
 37474  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37475  	next_active_state += 12
 37476  	goto __1217
 37477  __1216:
 37478  	return -43
 37479  __1217:
 37480  	;
 37481  __1213:
 37482  	;
 37483  	goto __1206
 37484  __1206:
 37485  	rc2 = rc2 - 2
 37486  	goto __1205
 37487  	goto __1207
 37488  __1207:
 37489  	;
 37490  	goto __1204
 37491  __1203:
 37492  	if !(rc2 != -1) {
 37493  		goto __1218
 37494  	}
 37495  	return rc2
 37496  __1218:
 37497  	;
 37498  __1204:
 37499  	;
 37500  
 37501  	goto __89
 37502  
 37503  	//-----------------------------------------------------------------
 37504  __275:
 37505  __276:
 37506  __277:
 37507  __278:
 37508  __279:
 37509  
 37510  	local_ptr = ptr
 37511  	*(*uintptr)(unsafe.Pointer(bp + 72 /* rws3 */)) = RWS
 37512  
 37513  	if !(uint64((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 72)))).Ffree) < uint64(DRWS_RSIZE)+uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))) {
 37514  		goto __1219
 37515  	}
 37516  
 37517  	rc3 = more_workspace(tls, bp+72, uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))), mb)
 37518  	if !(rc3 != 0) {
 37519  		goto __1220
 37520  	}
 37521  	return rc3
 37522  __1220:
 37523  	;
 37524  	RWS = *(*uintptr)(unsafe.Pointer(bp + 72 /* rws3 */))
 37525  __1219:
 37526  	;
 37527  
 37528  	local_offsets3 = RWS + uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 72)))).Fsize)*4 - uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 72)))).Ffree)*4
 37529  	local_workspace3 = local_offsets3 + uintptr(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))*4
 37530  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 72)) + 12)) -= uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37531  
 37532  	if !(codevalue == OP_BRAPOSZERO) {
 37533  		goto __1221
 37534  	}
 37535  
 37536  	allow_zero = DTRUE
 37537  	codevalue = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&code, 1)))) // Codevalue will be one of above BRAs
 37538  	goto __1222
 37539  __1221:
 37540  	allow_zero = DFALSE
 37541  __1222:
 37542  	;
 37543  
 37544  	// Loop to match the subpattern as many times as possible as if it were
 37545  	//         a complete pattern.
 37546  
 37547  	matched_count = uint64(0)
 37548  __1223:
 37549  	;
 37550  
 37551  	rc3 = internal_dfa_match(tls,
 37552  		mb,        // fixed match data
 37553  		code,      // this subexpression's code
 37554  		local_ptr, // where we currently are
 37555  		Tsize_t((int64(ptr)-int64(start_subject))/1),
 37556  		local_offsets3, // offset vector
 37557  		uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))/(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))),
 37558  		local_workspace3, // workspace vector
 37559  		DRWS_RSIZE,       // size of same
 37560  		rlevel,           // function recursion level
 37561  		RWS)              // recursion workspace
 37562  
 37563  	// Failed to match
 37564  
 37565  	if !(rc3 < 0) {
 37566  		goto __1226
 37567  	}
 37568  
 37569  	if !(rc3 != -1) {
 37570  		goto __1227
 37571  	}
 37572  	return rc3
 37573  __1227:
 37574  	;
 37575  	goto __1225
 37576  __1226:
 37577  	;
 37578  
 37579  	// Matched: break the loop if zero characters matched.
 37580  
 37581  	charcount1 = *(*Tsize_t)(unsafe.Pointer(local_offsets3 + 1*8)) - *(*Tsize_t)(unsafe.Pointer(local_offsets3))
 37582  	if !(charcount1 == uint64(0)) {
 37583  		goto __1228
 37584  	}
 37585  	goto __1225
 37586  __1228:
 37587  	;
 37588  	local_ptr += TPCRE2_SPTR8(charcount1) // Advance temporary position ptr
 37589  	goto __1224
 37590  __1224:
 37591  	matched_count++
 37592  	goto __1223
 37593  	goto __1225
 37594  __1225:
 37595  	;
 37596  
 37597  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 72)) + 12)) += uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37598  
 37599  	// At this point we have matched the subpattern matched_count
 37600  	//         times, and local_ptr is pointing to the character after the end of the
 37601  	//         last match.
 37602  
 37603  	if !(matched_count > uint64(0) || allow_zero != 0) {
 37604  		goto __1229
 37605  	}
 37606  
 37607  	end_subpattern = code
 37608  
 37609  __1230:
 37610  	end_subpattern += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern + 2)))))
 37611  	goto __1231
 37612  __1231:
 37613  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern))) == OP_ALT {
 37614  		goto __1230
 37615  	}
 37616  	goto __1232
 37617  __1232:
 37618  	;
 37619  	next_state_offset1 = int32((int64(end_subpattern)-int64(start_code))/1 + int64(DLINK_SIZE) + int64(1))
 37620  
 37621  	// Optimization: if there are no more active states, and there
 37622  	//           are no new states yet set up, then skip over the subject string
 37623  	//           right here, to save looping. Otherwise, set up the new state to swing
 37624  	//           into action when the end of the matched substring is reached.
 37625  
 37626  	if !(i+1 >= active_count && new_count == 0) {
 37627  		goto __1233
 37628  	}
 37629  
 37630  	ptr = local_ptr
 37631  	clen = 0
 37632  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 37633  		goto __1235
 37634  	}
 37635  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = next_state_offset1
 37636  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 37637  	next_new_state += 12
 37638  	goto __1236
 37639  __1235:
 37640  	return -43
 37641  __1236:
 37642  	;
 37643  	goto __1234
 37644  __1233:
 37645  
 37646  	p1 = ptr
 37647  	pp1 = local_ptr
 37648  	charcount1 = Tsize_t((int64(pp1) - int64(p1)) / 1)
 37649  	if !(utf != 0) {
 37650  		goto __1237
 37651  	}
 37652  __1238:
 37653  	if !(p1 < pp1) {
 37654  		goto __1239
 37655  	}
 37656  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p1, 1))))&0xc0 == 0x80) {
 37657  		goto __1240
 37658  	}
 37659  	charcount1--
 37660  __1240:
 37661  	;
 37662  	goto __1238
 37663  __1239:
 37664  	;
 37665  __1237:
 37666  	;
 37667  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 37668  		goto __1241
 37669  	}
 37670  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -next_state_offset1
 37671  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 37672  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = int32(charcount1 - uint64(1))
 37673  	next_new_state += 12
 37674  	goto __1242
 37675  __1241:
 37676  	return -43
 37677  __1242:
 37678  	;
 37679  __1234:
 37680  	;
 37681  __1229:
 37682  	;
 37683  
 37684  	goto __89
 37685  
 37686  	//-----------------------------------------------------------------
 37687  __280:
 37688  
 37689  	*(*uintptr)(unsafe.Pointer(bp + 80 /* rws4 */)) = RWS
 37690  
 37691  	if !(uint64((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 80)))).Ffree) < uint64(DRWS_RSIZE)+uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))) {
 37692  		goto __1243
 37693  	}
 37694  
 37695  	rc4 = more_workspace(tls, bp+80, uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))), mb)
 37696  	if !(rc4 != 0) {
 37697  		goto __1244
 37698  	}
 37699  	return rc4
 37700  __1244:
 37701  	;
 37702  	RWS = *(*uintptr)(unsafe.Pointer(bp + 80 /* rws4 */))
 37703  __1243:
 37704  	;
 37705  
 37706  	local_offsets4 = RWS + uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 80)))).Fsize)*4 - uintptr((*TRWS_anchor)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 80)))).Ffree)*4
 37707  	local_workspace4 = local_offsets4 + uintptr(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))*4
 37708  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 80)) + 12)) -= uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37709  
 37710  	rc4 = internal_dfa_match(tls,
 37711  		mb,   // fixed match data
 37712  		code, // this subexpression's code
 37713  		ptr,  // where we currently are
 37714  		Tsize_t((int64(ptr)-int64(start_subject))/1),
 37715  		local_offsets4, // offset vector
 37716  		uint32(uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))/(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0))))),
 37717  		local_workspace4, // workspace vector
 37718  		DRWS_RSIZE,       // size of same
 37719  		rlevel,           // function recursion level
 37720  		RWS)              // recursion workspace
 37721  
 37722  	*(*Tuint32_t)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(bp + 80)) + 12)) += uint32(uint64(DRWS_RSIZE) + uint64(2)*(uint64(unsafe.Sizeof(Tsize_t(0)))/uint64(unsafe.Sizeof(int32(0)))))
 37723  
 37724  	if !(rc4 >= 0) {
 37725  		goto __1245
 37726  	}
 37727  
 37728  	end_subpattern1 = code
 37729  	charcount2 = *(*Tsize_t)(unsafe.Pointer(local_offsets4 + 1*8)) - *(*Tsize_t)(unsafe.Pointer(local_offsets4))
 37730  
 37731  __1247:
 37732  	end_subpattern1 += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern1 + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern1 + 2)))))
 37733  	goto __1248
 37734  __1248:
 37735  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern1))) == OP_ALT {
 37736  		goto __1247
 37737  	}
 37738  	goto __1249
 37739  __1249:
 37740  	;
 37741  	next_state_offset2 = int32((int64(end_subpattern1)-int64(start_code))/1 + int64(DLINK_SIZE) + int64(1))
 37742  
 37743  	// If the end of this subpattern is KETRMAX or KETRMIN, we must
 37744  	//           arrange for the repeat state also to be added to the relevant list.
 37745  	//           Calculate the offset, or set -1 for no repeat.
 37746  
 37747  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern1))) == OP_KETRMAX || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern1))) == OP_KETRMIN {
 37748  		repeat_state_offset = int32((int64(end_subpattern1)-int64(start_code))/1 - int64(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern1 + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(end_subpattern1 + 2))))))
 37749  	} else {
 37750  		repeat_state_offset = -1
 37751  	}
 37752  
 37753  	// If we have matched an empty string, add the next state at the
 37754  	//           current character pointer. This is important so that the duplicate
 37755  	//           checking kicks in, which is what breaks infinite loops that match an
 37756  	//           empty string.
 37757  
 37758  	if !(charcount2 == uint64(0)) {
 37759  		goto __1250
 37760  	}
 37761  
 37762  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37763  		goto __1252
 37764  	}
 37765  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = next_state_offset2
 37766  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37767  	next_active_state += 12
 37768  	goto __1253
 37769  __1252:
 37770  	return -43
 37771  __1253:
 37772  	;
 37773  	goto __1251
 37774  __1250:
 37775  	if !(i+1 >= active_count && new_count == 0) {
 37776  		goto __1254
 37777  	}
 37778  
 37779  	ptr += TPCRE2_SPTR8(charcount2)
 37780  	clen = 0
 37781  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 37782  		goto __1256
 37783  	}
 37784  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = next_state_offset2
 37785  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 37786  	next_new_state += 12
 37787  	goto __1257
 37788  __1256:
 37789  	return -43
 37790  __1257:
 37791  	;
 37792  
 37793  	// If we are adding a repeat state at the new character position,
 37794  	//             we must fudge things so that it is the only current state.
 37795  	//             Otherwise, it might be a duplicate of one we processed before, and
 37796  	//             that would cause it to be skipped.
 37797  
 37798  	if !(repeat_state_offset >= 0) {
 37799  		goto __1258
 37800  	}
 37801  
 37802  	next_active_state = active_states
 37803  	active_count = 0
 37804  	i = -1
 37805  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37806  		goto __1259
 37807  	}
 37808  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = repeat_state_offset
 37809  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37810  	next_active_state += 12
 37811  	goto __1260
 37812  __1259:
 37813  	return -43
 37814  __1260:
 37815  	;
 37816  __1258:
 37817  	;
 37818  	goto __1255
 37819  __1254:
 37820  
 37821  	if !(utf != 0) {
 37822  		goto __1261
 37823  	}
 37824  
 37825  	p2 = start_subject + uintptr(*(*Tsize_t)(unsafe.Pointer(local_offsets4)))
 37826  	pp2 = start_subject + uintptr(*(*Tsize_t)(unsafe.Pointer(local_offsets4 + 1*8)))
 37827  __1262:
 37828  	if !(p2 < pp2) {
 37829  		goto __1263
 37830  	}
 37831  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p2, 1))))&0xc0 == 0x80) {
 37832  		goto __1264
 37833  	}
 37834  	charcount2--
 37835  __1264:
 37836  	;
 37837  	goto __1262
 37838  __1263:
 37839  	;
 37840  __1261:
 37841  	;
 37842  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 37843  		goto __1265
 37844  	}
 37845  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -next_state_offset2
 37846  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 37847  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = int32(charcount2 - uint64(1))
 37848  	next_new_state += 12
 37849  	goto __1266
 37850  __1265:
 37851  	return -43
 37852  __1266:
 37853  	;
 37854  	if !(repeat_state_offset >= 0) {
 37855  		goto __1267
 37856  	}
 37857  	if !(libc.PostIncInt32(&new_count, 1) < wscount) {
 37858  		goto __1268
 37859  	}
 37860  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Foffset = -repeat_state_offset
 37861  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fcount = 0
 37862  	(*Tstateblock)(unsafe.Pointer(next_new_state)).Fdata = int32(charcount2 - uint64(1))
 37863  	next_new_state += 12
 37864  	goto __1269
 37865  __1268:
 37866  	return -43
 37867  __1269:
 37868  	;
 37869  __1267:
 37870  	;
 37871  __1255:
 37872  	;
 37873  __1251:
 37874  	;
 37875  	goto __1246
 37876  __1245:
 37877  	if !(rc4 != -1) {
 37878  		goto __1270
 37879  	}
 37880  	return rc4
 37881  __1270:
 37882  	;
 37883  __1246:
 37884  	;
 37885  
 37886  	goto __89
 37887  
 37888  	// ==========================================================================
 37889  	// Handle callouts
 37890  
 37891  __281:
 37892  __282:
 37893  
 37894  	rrc = do_callout_dfa(tls, code, offsets, current_subject, ptr, mb, uint64(0),
 37895  		bp+88)
 37896  	if !(rrc < 0) {
 37897  		goto __1271
 37898  	}
 37899  	return rrc
 37900  __1271:
 37901  	; // Abandon
 37902  	if !(rrc == 0) {
 37903  		goto __1272
 37904  	}
 37905  	if !(libc.PostIncInt32(&active_count, 1) < wscount) {
 37906  		goto __1273
 37907  	}
 37908  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Foffset = state_offset + int32(*(*Tsize_t)(unsafe.Pointer(bp + 88)))
 37909  	(*Tstateblock)(unsafe.Pointer(next_active_state)).Fcount = 0
 37910  	next_active_state += 12
 37911  	goto __1274
 37912  __1273:
 37913  	return -43
 37914  __1274:
 37915  	;
 37916  __1272:
 37917  	;
 37918  
 37919  	goto __89
 37920  
 37921  	// ==========================================================================
 37922  __283: // Unsupported opcode
 37923  	return -42
 37924  __89:
 37925  	;
 37926  
 37927  NEXT_ACTIVE_STATE:
 37928  	goto __51
 37929  
 37930  	goto __51
 37931  __51:
 37932  	i++
 37933  	goto __50
 37934  	goto __52
 37935  __52:
 37936  	; // End of loop scanning active states
 37937  
 37938  	// We have finished the processing at the current subject character. If no
 37939  	//   new states have been set for the next character, we have found all the
 37940  	//   matches that we are going to find. If partial matching has been requested,
 37941  	//   check for appropriate conditions.
 37942  	//
 37943  	//   The "forced_ fail" variable counts the number of (*F) encountered for the
 37944  	//   character. If it is equal to the original active_count (saved in
 37945  	//   workspace[1]) it means that (*F) was found on every active state. In this
 37946  	//   case we don't want to give a partial match.
 37947  	//
 37948  	//   The "could_continue" variable is true if a state could have continued but
 37949  	//   for the fact that the end of the subject was reached.
 37950  
 37951  	if !(new_count <= 0) {
 37952  		goto __1275
 37953  	}
 37954  
 37955  	if !(could_continue != 0 && forced_fail != *(*int32)(unsafe.Pointer(workspace + 1*4)) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_HARD != Tuint32_t(0) ||
 37956  		(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_PARTIAL_SOFT != Tuint32_t(0) && match_count < 0) && (partial_newline != 0 || ptr >= end_subject && (ptr > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0))) {
 37957  		goto __1276
 37958  	}
 37959  	match_count = -2
 37960  __1276:
 37961  	;
 37962  	goto __37 // Exit from loop along the subject string
 37963  __1275:
 37964  	;
 37965  
 37966  	// One or more states are active for the next character.
 37967  
 37968  	ptr += TPCRE2_SPTR8(clen) // Advance to next subject character
 37969  	goto __36
 37970  __36:
 37971  	goto __35
 37972  	goto __37
 37973  __37:
 37974  	; // Loop to move along the subject string
 37975  
 37976  	// Control gets here from "break" a few lines above. If we have a match and
 37977  	// PCRE2_ENDANCHORED is set, the match fails.
 37978  
 37979  	if !(match_count >= 0 && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions|(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions)&DPCRE2_ENDANCHORED != Tuint32_t(0) && ptr < end_subject) {
 37980  		goto __1277
 37981  	}
 37982  	match_count = -1
 37983  __1277:
 37984  	;
 37985  
 37986  	return match_count
 37987  }
 37988  
 37989  // ************************************************
 37990  //
 37991  //     Match a pattern using the DFA algorithm    *
 37992  //
 37993  
 37994  // This function matches a compiled pattern to a subject string, using the
 37995  // alternate matching algorithm that finds all matches at once.
 37996  //
 37997  // Arguments:
 37998  //   code          points to the compiled pattern
 37999  //   subject       subject string
 38000  //   length        length of subject string
 38001  //   startoffset   where to start matching in the subject
 38002  //   options       option bits
 38003  //   match_data    points to a match data structure
 38004  //   gcontext      points to a match context
 38005  //   workspace     pointer to workspace
 38006  //   wscount       size of workspace
 38007  //
 38008  // Returns:        > 0 => number of match offset pairs placed in offsets
 38009  //                 = 0 => offsets overflowed; longest matches are present
 38010  //                  -1 => failed to match
 38011  //                < -1 => some kind of unexpected problem
 38012  
 38013  func Xpcre2_dfa_match_8(tls *libc.TLS, code uintptr, subject TPCRE2_SPTR8, length Tsize_t, start_offset Tsize_t, options Tuint32_t, match_data uintptr, mcontext uintptr, workspace uintptr, wscount Tsize_t) int32 { /* pcre2_dfa_match.c:3297:1: */
 38014  	bp := tls.Alloc(31000)
 38015  	defer tls.Free(31000)
 38016  
 38017  	var rc int32
 38018  	var was_zero_terminated int32
 38019  	var re uintptr
 38020  	var start_match TPCRE2_SPTR8
 38021  	var end_subject TPCRE2_SPTR8
 38022  	var bumpalong_limit TPCRE2_SPTR8
 38023  	var req_cu_ptr TPCRE2_SPTR8
 38024  	var utf TBOOL
 38025  	var anchored TBOOL
 38026  	var startline TBOOL
 38027  	var firstline TBOOL
 38028  	var has_first_cu TBOOL
 38029  	var has_req_cu TBOOL
 38030  	var memchr_found_first_cu TPCRE2_SPTR8
 38031  	var memchr_found_first_cu2 TPCRE2_SPTR8
 38032  	var first_cu TPCRE2_UCHAR8
 38033  	var first_cu2 TPCRE2_UCHAR8
 38034  	var req_cu TPCRE2_UCHAR8
 38035  	var req_cu2 TPCRE2_UCHAR8
 38036  	var start_bits uintptr
 38037  
 38038  	// We need to have mb pointing to a match block, because the IS_NEWLINE macro
 38039  	// is used below, and it expects NLBLOCK to be defined as a pointer.
 38040  
 38041  	// var cb Tpcre2_callout_block_8 at bp+30888, 112
 38042  
 38043  	// var actual_match_block Tdfa_match_block_8 at bp, 168
 38044  
 38045  	var mb uintptr
 38046  
 38047  	// Set up a starting block of memory for use during recursive calls to
 38048  	// internal_dfa_match(). By putting this on the stack, it minimizes resource use
 38049  	// in the case when it is not needed. If this is too small, more memory is
 38050  	// obtained from the heap. At the start of each block is an anchor structure.
 38051  
 38052  	// var base_recursion_workspace [7680]int32 at bp+168, 30720
 38053  
 38054  	var rws uintptr
 38055  	var i uint32
 38056  	var check_subject TPCRE2_SPTR8
 38057  	var t TPCRE2_SPTR8
 38058  	var c TPCRE2_UCHAR8
 38059  	var ok TBOOL
 38060  	// In 16-bit and 32_bit modes we have to do our own search, so can
 38061  	//           look for both cases at once.
 38062  
 38063  	// In 8-bit mode, the use of memchr() gives a big speed up, even
 38064  	//           though we have to call it twice in order to find the earliest
 38065  	//           occurrence of the code unit in either of its cases. Caching is used
 38066  	//           to remember the positions of previously found code units. This can
 38067  	//           make a huge difference when the strings are very long and only one
 38068  	//           case is actually present.
 38069  
 38070  	var pp1 TPCRE2_SPTR8
 38071  	var pp2 TPCRE2_SPTR8
 38072  	var searchlength Tsize_t
 38073  	var c1 Tuint32_t
 38074  	var pp TPCRE2_SPTR8
 38075  	var check_length Tsize_t
 38076  	var p TPCRE2_SPTR8
 38077  	var next uintptr
 38078  	was_zero_terminated = 0
 38079  	re = code
 38080  	has_first_cu = DFALSE
 38081  	has_req_cu = DFALSE
 38082  	memchr_found_first_cu = uintptr(0)
 38083  	memchr_found_first_cu2 = uintptr(0)
 38084  	first_cu = TPCRE2_UCHAR8(0)
 38085  	first_cu2 = TPCRE2_UCHAR8(0)
 38086  	req_cu = TPCRE2_UCHAR8(0)
 38087  	req_cu2 = TPCRE2_UCHAR8(0)
 38088  	start_bits = uintptr(0)
 38089  	mb = bp        /* &actual_match_block */
 38090  	rws = bp + 168 /* base_recursion_workspace */
 38091  	(*TRWS_anchor)(unsafe.Pointer(rws)).Fnext = uintptr(0)
 38092  	(*TRWS_anchor)(unsafe.Pointer(rws)).Fsize = uint32(uint64(DDFA_START_RWS_SIZE) / uint64(unsafe.Sizeof(int32(0))))
 38093  	(*TRWS_anchor)(unsafe.Pointer(rws)).Ffree = uint32(uint64(DDFA_START_RWS_SIZE)/uint64(unsafe.Sizeof(int32(0))) - uint64(unsafe.Sizeof(TRWS_anchor{}))/uint64(unsafe.Sizeof(int32(0))))
 38094  
 38095  	// Recognize NULL, length 0 as an empty string.
 38096  
 38097  	if !(subject == uintptr(0) && length == uint64(0)) {
 38098  		goto __1
 38099  	}
 38100  	subject = ts + 797 /* "" */
 38101  __1:
 38102  	;
 38103  
 38104  	// Plausibility checks
 38105  
 38106  	if !(options&libc.CplUint32(DPCRE2_ANCHORED|DPCRE2_ENDANCHORED|DPCRE2_NOTBOL|DPCRE2_NOTEOL|DPCRE2_NOTEMPTY|DPCRE2_NOTEMPTY_ATSTART|DPCRE2_NO_UTF_CHECK|DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT|DPCRE2_DFA_SHORTEST|DPCRE2_DFA_RESTART|DPCRE2_COPY_MATCHED_SUBJECT) != Tuint32_t(0)) {
 38107  		goto __2
 38108  	}
 38109  	return -34
 38110  __2:
 38111  	;
 38112  	if !(re == uintptr(0) || subject == uintptr(0) || workspace == uintptr(0) || match_data == uintptr(0)) {
 38113  		goto __3
 38114  	}
 38115  	return -51
 38116  __3:
 38117  	;
 38118  
 38119  	if !(length == libc.CplUint64(uint64(0))) {
 38120  		goto __4
 38121  	}
 38122  
 38123  	length = X_pcre2_strlen_8(tls, subject)
 38124  	was_zero_terminated = 1
 38125  __4:
 38126  	;
 38127  
 38128  	if !(wscount < uint64(20)) {
 38129  		goto __5
 38130  	}
 38131  	return -43
 38132  __5:
 38133  	;
 38134  	if !(start_offset > length) {
 38135  		goto __6
 38136  	}
 38137  	return -33
 38138  __6:
 38139  	;
 38140  
 38141  	// Partial matching and PCRE2_ENDANCHORED are currently not allowed at the same
 38142  	// time.
 38143  
 38144  	if !(options&(DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT) != Tuint32_t(0) && ((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options|options)&DPCRE2_ENDANCHORED != Tuint32_t(0)) {
 38145  		goto __7
 38146  	}
 38147  	return -34
 38148  __7:
 38149  	;
 38150  
 38151  	// Invalid UTF support is not available for DFA matching.
 38152  
 38153  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_MATCH_INVALID_UTF != Tuint32_t(0)) {
 38154  		goto __8
 38155  	}
 38156  	return -66
 38157  __8:
 38158  	;
 38159  
 38160  	// Check that the first field in the block is the magic number. If it is not,
 38161  	// return with PCRE2_ERROR_BADMAGIC.
 38162  
 38163  	if !(uint64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmagic_number) != DMAGIC_NUMBER) {
 38164  		goto __9
 38165  	}
 38166  	return -31
 38167  __9:
 38168  	;
 38169  
 38170  	// Check the code unit width.
 38171  
 38172  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_MODE8|DPCRE2_MODE16|DPCRE2_MODE32) != Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)) {
 38173  		goto __10
 38174  	}
 38175  	return -32
 38176  __10:
 38177  	;
 38178  
 38179  	// PCRE2_NOTEMPTY and PCRE2_NOTEMPTY_ATSTART are match-time flags in the
 38180  	// options variable for this function. Users of PCRE2 who are not calling the
 38181  	// function directly would like to have a way of setting these flags, in the same
 38182  	// way that they can set pcre2_compile() flags like PCRE2_NO_AUTOPOSSESS with
 38183  	// constructions like (*NO_AUTOPOSSESS). To enable this, (*NOTEMPTY) and
 38184  	// (*NOTEMPTY_ATSTART) set bits in the pattern's "flag" function which can now be
 38185  	// transferred to the options for this function. The bits are guaranteed to be
 38186  	// adjacent, but do not have the same values. This bit of Boolean trickery assumes
 38187  	// that the match-time bits are not more significant than the flag bits. If by
 38188  	// accident this is not the case, a compile-time division by zero error will
 38189  	// occur.
 38190  
 38191  	options = options | (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_NOTEMPTY_SET|DPCRE2_NE_ATST_SET)/(uint32((DPCRE2_NOTEMPTY_SET|DPCRE2_NE_ATST_SET)&(libc.CplInt32(DPCRE2_NOTEMPTY_SET|DPCRE2_NE_ATST_SET)+1))/((DPCRE2_NOTEMPTY|DPCRE2_NOTEMPTY_ATSTART)&(libc.CplUint32(DPCRE2_NOTEMPTY|DPCRE2_NOTEMPTY_ATSTART)+uint32(1))))
 38192  
 38193  	// If restarting after a partial match, do some sanity checks on the contents
 38194  	// of the workspace.
 38195  
 38196  	if !(options&DPCRE2_DFA_RESTART != Tuint32_t(0)) {
 38197  		goto __11
 38198  	}
 38199  
 38200  	if !(*(*int32)(unsafe.Pointer(workspace))&-2 != 0 || *(*int32)(unsafe.Pointer(workspace + 1*4)) < 1 || *(*int32)(unsafe.Pointer(workspace + 1*4)) > int32((wscount-uint64(2))/Tsize_t(int32(uint64(unsafe.Sizeof(Tstateblock{}))/uint64(unsafe.Sizeof(int32(0))))))) {
 38201  		goto __12
 38202  	}
 38203  	return -38
 38204  __12:
 38205  	;
 38206  __11:
 38207  	;
 38208  
 38209  	// Set some local values
 38210  
 38211  	utf = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UTF != Tuint32_t(0))
 38212  	start_match = subject + uintptr(start_offset)
 38213  	end_subject = subject + uintptr(length)
 38214  	req_cu_ptr = start_match - uintptr(1)
 38215  	anchored = libc.Bool32(options&(DPCRE2_ANCHORED|DPCRE2_DFA_RESTART) != Tuint32_t(0) || (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_ANCHORED != Tuint32_t(0))
 38216  
 38217  	// The "must be at the start of a line" flags are used in a loop when finding
 38218  	// where to start.
 38219  
 38220  	startline = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_STARTLINE) != Tuint32_t(0))
 38221  	firstline = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_FIRSTLINE != Tuint32_t(0))
 38222  	bumpalong_limit = end_subject
 38223  
 38224  	// Initialize and set up the fixed fields in the callout block, with a pointer
 38225  	// in the match block.
 38226  
 38227  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcb = bp + 30888 /* &cb */
 38228  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 30888 /* &cb */)).Fversion = Tuint32_t(2)
 38229  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 30888 /* &cb */)).Fsubject = subject
 38230  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 30888 /* &cb */)).Fsubject_length = Tsize_t((int64(end_subject) - int64(subject)) / 1)
 38231  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 30888 /* &cb */)).Fcallout_flags = Tuint32_t(0)
 38232  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 30888 /* &cb */)).Fcapture_top = Tuint32_t(1) // No capture support
 38233  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 30888 /* &cb */)).Fcapture_last = Tuint32_t(0)
 38234  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 30888 /* &cb */)).Fmark = uintptr(0) // No (*MARK) support
 38235  
 38236  	// Get data from the match context, if present, and fill in the remaining
 38237  	// fields in the match block. It is an error to set an offset limit without
 38238  	// setting the flag at compile time.
 38239  
 38240  	if !(mcontext == uintptr(0)) {
 38241  		goto __13
 38242  	}
 38243  
 38244  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcallout = uintptr(0)
 38245  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmemctl = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmemctl
 38246  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit = X_pcre2_default_match_context_8.Fmatch_limit
 38247  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit_depth = X_pcre2_default_match_context_8.Fdepth_limit
 38248  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_limit = Tsize_t(X_pcre2_default_match_context_8.Fheap_limit)
 38249  	goto __14
 38250  __13:
 38251  
 38252  	if !((*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Foffset_limit != libc.CplUint64(uint64(0))) {
 38253  		goto __15
 38254  	}
 38255  
 38256  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_USE_OFFSET_LIMIT == Tuint32_t(0)) {
 38257  		goto __16
 38258  	}
 38259  	return -56
 38260  __16:
 38261  	;
 38262  	bumpalong_limit = subject + uintptr((*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Foffset_limit)
 38263  __15:
 38264  	;
 38265  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcallout = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fcallout
 38266  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fcallout_data = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fcallout_data
 38267  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmemctl = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmemctl
 38268  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmatch_limit
 38269  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit_depth = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fdepth_limit
 38270  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_limit = Tsize_t((*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fheap_limit)
 38271  __14:
 38272  	;
 38273  
 38274  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit > (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_match) {
 38275  		goto __17
 38276  	}
 38277  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_match
 38278  __17:
 38279  	;
 38280  
 38281  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit_depth > (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_depth) {
 38282  		goto __18
 38283  	}
 38284  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_limit_depth = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_depth
 38285  __18:
 38286  	;
 38287  
 38288  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_limit > Tsize_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_heap)) {
 38289  		goto __19
 38290  	}
 38291  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_limit = Tsize_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_heap)
 38292  __19:
 38293  	;
 38294  
 38295  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_code = re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{}))) + uintptr(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count)*int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size))
 38296  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Ftables = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables
 38297  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject = subject
 38298  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject = end_subject
 38299  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_offset = start_offset
 38300  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fallowemptypartial = libc.Bool32(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmax_lookbehind) > 0 || (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_MATCH_EMPTY) != Tuint32_t(0))
 38301  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions = options
 38302  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fpoptions = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options
 38303  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmatch_call_count = Tuint32_t(0)
 38304  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fheap_used = uint64(0)
 38305  
 38306  	// Process the \R and newline settings.
 38307  
 38308  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fbsr_convention = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fbsr_convention
 38309  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype = Tuint32_t(DNLTYPE_FIXED)
 38310  	switch int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fnewline_convention) {
 38311  	case DPCRE2_NEWLINE_CR:
 38312  		goto __21
 38313  
 38314  	case DPCRE2_NEWLINE_LF:
 38315  		goto __22
 38316  
 38317  	case DPCRE2_NEWLINE_NUL:
 38318  		goto __23
 38319  
 38320  	case DPCRE2_NEWLINE_CRLF:
 38321  		goto __24
 38322  
 38323  	case DPCRE2_NEWLINE_ANY:
 38324  		goto __25
 38325  
 38326  	case DPCRE2_NEWLINE_ANYCRLF:
 38327  		goto __26
 38328  
 38329  	default:
 38330  		goto __27
 38331  	}
 38332  	goto __20
 38333  
 38334  __21:
 38335  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(1)
 38336  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)) = TPCRE2_UCHAR8('\015')
 38337  	goto __20
 38338  
 38339  __22:
 38340  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(1)
 38341  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)) = TPCRE2_UCHAR8('\012')
 38342  	goto __20
 38343  
 38344  __23:
 38345  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(1)
 38346  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)) = TPCRE2_UCHAR8(0)
 38347  	goto __20
 38348  
 38349  __24:
 38350  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(2)
 38351  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128)) = TPCRE2_UCHAR8('\015')
 38352  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)) = TPCRE2_UCHAR8('\012')
 38353  	goto __20
 38354  
 38355  __25:
 38356  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype = Tuint32_t(DNLTYPE_ANY)
 38357  	goto __20
 38358  
 38359  __26:
 38360  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype = Tuint32_t(DNLTYPE_ANYCRLF)
 38361  	goto __20
 38362  
 38363  __27:
 38364  	return -44
 38365  __20:
 38366  	;
 38367  
 38368  	// Check a UTF string for validity if required. For 8-bit and 16-bit strings,
 38369  	// we must also check that a starting offset does not point into the middle of a
 38370  	// multiunit character. We check only the portion of the subject that is going to
 38371  	// be inspected during matching - from the offset minus the maximum back reference
 38372  	// to the given length. This saves time when a small part of a large subject is
 38373  	// being matched by the use of a starting offset. Note that the maximum lookbehind
 38374  	// is a number of characters, not code units.
 38375  
 38376  	if !(utf != 0 && options&DPCRE2_NO_UTF_CHECK == Tuint32_t(0)) {
 38377  		goto __28
 38378  	}
 38379  
 38380  	check_subject = start_match // start_match includes offset
 38381  
 38382  	if !(start_offset > uint64(0)) {
 38383  		goto __29
 38384  	}
 38385  
 38386  	if !(start_match < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))&0xc0 == 0x80) {
 38387  		goto __30
 38388  	}
 38389  	return -36
 38390  __30:
 38391  	;
 38392  	i = uint32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmax_lookbehind)
 38393  __31:
 38394  	if !(i > uint32(0) && check_subject > subject) {
 38395  		goto __33
 38396  	}
 38397  
 38398  	check_subject--
 38399  __34:
 38400  	if !(check_subject > subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(check_subject)))&0xc0 == 0x80) {
 38401  		goto __35
 38402  	}
 38403  	check_subject--
 38404  	goto __34
 38405  __35:
 38406  	;
 38407  	goto __32
 38408  __32:
 38409  	i--
 38410  	goto __31
 38411  	goto __33
 38412  __33:
 38413  	;
 38414  __29:
 38415  	;
 38416  
 38417  	// Validate the relevant portion of the subject. After an error, adjust the
 38418  	//   offset to be an absolute offset in the whole string.
 38419  
 38420  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = X_pcre2_valid_utf_8(tls, check_subject,
 38421  		length-Tsize_t((int64(check_subject)-int64(subject))/1), match_data+64)
 38422  	if !((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc != 0) {
 38423  		goto __36
 38424  	}
 38425  
 38426  	*(*Tsize_t)(unsafe.Pointer(match_data + 64)) += Tsize_t((int64(check_subject) - int64(subject)) / 1)
 38427  	return (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc
 38428  __36:
 38429  	;
 38430  __28:
 38431  	;
 38432  
 38433  	// Set up the first code unit to match, if available. If there's no first code
 38434  	// unit there may be a bitmap of possible first characters.
 38435  
 38436  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTSET) != Tuint32_t(0)) {
 38437  		goto __37
 38438  	}
 38439  
 38440  	has_first_cu = DTRUE
 38441  	first_cu = libc.AssignUint8(&first_cu2, TPCRE2_UCHAR8((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ffirst_codeunit))
 38442  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTCASELESS) != Tuint32_t(0)) {
 38443  		goto __39
 38444  	}
 38445  
 38446  	first_cu2 = *(*Tuint8_t)(unsafe.Pointer((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Ftables + uintptr(Dfcc_offset) + uintptr(first_cu)))
 38447  	if !(int32(first_cu) > 127 && !(utf != 0) && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UCP != Tuint32_t(0)) {
 38448  		goto __40
 38449  	}
 38450  	first_cu2 = TPCRE2_UCHAR8(Tuint32_t(int32(first_cu) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(first_cu)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(first_cu)%DUCD_BLOCK_SIZE])*12)).Fother_case))
 38451  __40:
 38452  	;
 38453  __39:
 38454  	;
 38455  	goto __38
 38456  __37:
 38457  	if !(!(startline != 0) && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTMAPSET) != Tuint32_t(0)) {
 38458  		goto __41
 38459  	}
 38460  	start_bits = re + 40 /* &.start_bitmap */
 38461  __41:
 38462  	;
 38463  __38:
 38464  	;
 38465  
 38466  	// There may be a "last known required code unit" set.
 38467  
 38468  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_LASTSET) != Tuint32_t(0)) {
 38469  		goto __42
 38470  	}
 38471  
 38472  	has_req_cu = DTRUE
 38473  	req_cu = libc.AssignUint8(&req_cu2, TPCRE2_UCHAR8((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flast_codeunit))
 38474  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_LASTCASELESS) != Tuint32_t(0)) {
 38475  		goto __43
 38476  	}
 38477  
 38478  	req_cu2 = *(*Tuint8_t)(unsafe.Pointer((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Ftables + uintptr(Dfcc_offset) + uintptr(req_cu)))
 38479  	if !(int32(req_cu) > 127 && !(utf != 0) && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UCP != Tuint32_t(0)) {
 38480  		goto __44
 38481  	}
 38482  	req_cu2 = TPCRE2_UCHAR8(Tuint32_t(int32(req_cu) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(req_cu)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(req_cu)%DUCD_BLOCK_SIZE])*12)).Fother_case))
 38483  __44:
 38484  	;
 38485  __43:
 38486  	;
 38487  __42:
 38488  	;
 38489  
 38490  	// If the match data block was previously used with PCRE2_COPY_MATCHED_SUBJECT,
 38491  	// free the memory that was obtained.
 38492  
 38493  	if !(uint32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fflags)&DPCRE2_MD_COPIED_SUBJECT != uint32(0)) {
 38494  		goto __45
 38495  	}
 38496  
 38497  	(*struct {
 38498  		f func(*libc.TLS, uintptr, uintptr)
 38499  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Ffree})).f(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject,
 38500  		(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmemory_data)
 38501  	*(*Tuint8_t)(unsafe.Pointer(match_data + 73)) &= libc.Uint8FromUint32(libc.CplUint32(DPCRE2_MD_COPIED_SUBJECT))
 38502  __45:
 38503  	;
 38504  
 38505  	// Fill in fields that are always returned in the match data.
 38506  
 38507  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fcode = re
 38508  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject = uintptr(0) // Default for no match
 38509  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmark = uintptr(0)
 38510  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmatchedby = PCRE2_MATCHEDBY_DFA_INTERPRETER
 38511  
 38512  	// Call the main matching function, looping for a non-anchored regex after a
 38513  	// failed match. If not restarting, perform certain optimizations at the start of
 38514  	// a match.
 38515  
 38516  __46:
 38517  
 38518  	// ----------------- Start of match optimizations ----------------
 38519  
 38520  	// There are some optimizations that avoid running the match if a known
 38521  	//   starting point is not found, or if a known later code unit is not present.
 38522  	//   However, there is an option (settable at compile time) that disables
 38523  	//   these, for testing and for ensuring that all callouts do actually occur.
 38524  	//   The optimizations must also be avoided when restarting a DFA match.
 38525  
 38526  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_NO_START_OPTIMIZE == Tuint32_t(0) && options&DPCRE2_DFA_RESTART == Tuint32_t(0)) {
 38527  		goto __49
 38528  	}
 38529  
 38530  	// If firstline is TRUE, the start of the match is constrained to the first
 38531  	//     line of a multiline string. That is, the match must be before or at the
 38532  	//     first newline following the start of matching. Temporarily adjust
 38533  	//     end_subject so that we stop the optimization scans for a first code unit
 38534  	//     immediately after the first character of a newline (the first code unit can
 38535  	//     legitimately be a newline). If the match fails at the newline, later code
 38536  	//     breaks this loop.
 38537  
 38538  	if !(firstline != 0) {
 38539  		goto __50
 38540  	}
 38541  
 38542  	t = start_match
 38543  	if !(utf != 0) {
 38544  		goto __51
 38545  	}
 38546  
 38547  __53:
 38548  	if !(t < end_subject && !(func() int32 {
 38549  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 38550  			return libc.Bool32(t < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, t, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 38551  		}
 38552  		return libc.Bool32(t <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 38553  	}() != 0)) {
 38554  		goto __54
 38555  	}
 38556  
 38557  	t++
 38558  __55:
 38559  	if !(t < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t)))&0xc0 == 0x80) {
 38560  		goto __56
 38561  	}
 38562  	t++
 38563  	goto __55
 38564  __56:
 38565  	;
 38566  	goto __53
 38567  __54:
 38568  	;
 38569  	goto __52
 38570  __51:
 38571  __57:
 38572  	if !(t < end_subject && !(func() int32 {
 38573  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 38574  			return libc.Bool32(t < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, t, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 38575  		}
 38576  		return libc.Bool32(t <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 38577  	}() != 0)) {
 38578  		goto __58
 38579  	}
 38580  	t++
 38581  	goto __57
 38582  __58:
 38583  	;
 38584  __52:
 38585  	;
 38586  	end_subject = t
 38587  __50:
 38588  	;
 38589  
 38590  	// Anchored: check the first code unit if one is recorded. This may seem
 38591  	//     pointless but it can help in detecting a no match case without scanning for
 38592  	//     the required code unit.
 38593  
 38594  	if !(anchored != 0) {
 38595  		goto __59
 38596  	}
 38597  
 38598  	if !(has_first_cu != 0 || start_bits != uintptr(0)) {
 38599  		goto __61
 38600  	}
 38601  
 38602  	ok = libc.Bool32(start_match < end_subject)
 38603  	if !(ok != 0) {
 38604  		goto __62
 38605  	}
 38606  
 38607  	c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))
 38608  	ok = libc.Bool32(has_first_cu != 0 && (int32(c) == int32(first_cu) || int32(c) == int32(first_cu2)))
 38609  	if !(!(ok != 0) && start_bits != uintptr(0)) {
 38610  		goto __63
 38611  	}
 38612  
 38613  	ok = libc.Bool32(uint32(*(*Tuint8_t)(unsafe.Pointer(start_bits + uintptr(int32(c)/8))))&(uint32(1)<<(int32(c)&7)) != uint32(0))
 38614  __63:
 38615  	;
 38616  __62:
 38617  	;
 38618  	if !!(ok != 0) {
 38619  		goto __64
 38620  	}
 38621  	goto __48
 38622  __64:
 38623  	;
 38624  __61:
 38625  	;
 38626  	goto __60
 38627  __59:
 38628  
 38629  	if !(has_first_cu != 0) {
 38630  		goto __65
 38631  	}
 38632  
 38633  	if !(int32(first_cu) != int32(first_cu2)) {
 38634  		goto __67
 38635  	} /* Caseless */
 38636  
 38637  	// In 16-bit and 32_bit modes we have to do our own search, so can
 38638  	//           look for both cases at once.
 38639  
 38640  	// In 8-bit mode, the use of memchr() gives a big speed up, even
 38641  	//           though we have to call it twice in order to find the earliest
 38642  	//           occurrence of the code unit in either of its cases. Caching is used
 38643  	//           to remember the positions of previously found code units. This can
 38644  	//           make a huge difference when the strings are very long and only one
 38645  	//           case is actually present.
 38646  
 38647  	pp1 = uintptr(0)
 38648  	pp2 = uintptr(0)
 38649  	searchlength = Tsize_t((int64(end_subject) - int64(start_match)) / 1)
 38650  
 38651  	// If we haven't got a previously found position for first_cu, or if
 38652  	//           the current starting position is later, we need to do a search. If
 38653  	//           the code unit is not found, set it to the end.
 38654  
 38655  	if !(memchr_found_first_cu == uintptr(0) || start_match > memchr_found_first_cu) {
 38656  		goto __69
 38657  	}
 38658  
 38659  	pp1 = libc.Xmemchr(tls, start_match, int32(first_cu), searchlength)
 38660  	if pp1 == uintptr(0) {
 38661  		memchr_found_first_cu = end_subject
 38662  	} else {
 38663  		memchr_found_first_cu = pp1
 38664  	}
 38665  	goto __70
 38666  __69:
 38667  	if memchr_found_first_cu == end_subject {
 38668  		pp1 = uintptr(0)
 38669  	} else {
 38670  		pp1 = memchr_found_first_cu
 38671  	}
 38672  __70:
 38673  	;
 38674  
 38675  	// Do the same thing for the other case.
 38676  
 38677  	if !(memchr_found_first_cu2 == uintptr(0) || start_match > memchr_found_first_cu2) {
 38678  		goto __71
 38679  	}
 38680  
 38681  	pp2 = libc.Xmemchr(tls, start_match, int32(first_cu2), searchlength)
 38682  	if pp2 == uintptr(0) {
 38683  		memchr_found_first_cu2 = end_subject
 38684  	} else {
 38685  		memchr_found_first_cu2 = pp2
 38686  	}
 38687  	goto __72
 38688  __71:
 38689  	if memchr_found_first_cu2 == end_subject {
 38690  		pp2 = uintptr(0)
 38691  	} else {
 38692  		pp2 = memchr_found_first_cu2
 38693  	}
 38694  __72:
 38695  	;
 38696  
 38697  	// Set the start to the end of the subject if neither case was found.
 38698  	//           Otherwise, use the earlier found point.
 38699  
 38700  	if !(pp1 == uintptr(0)) {
 38701  		goto __73
 38702  	}
 38703  	if pp2 == uintptr(0) {
 38704  		start_match = end_subject
 38705  	} else {
 38706  		start_match = pp2
 38707  	}
 38708  	goto __74
 38709  __73:
 38710  	if pp2 == uintptr(0) || pp1 < pp2 {
 38711  		start_match = pp1
 38712  	} else {
 38713  		start_match = pp2
 38714  	}
 38715  __74:
 38716  	;
 38717  
 38718  	goto __68
 38719  __67:
 38720  
 38721  	start_match = libc.Xmemchr(tls, start_match, int32(first_cu), uint64((int64(end_subject)-int64(start_match))/1))
 38722  	if !(start_match == uintptr(0)) {
 38723  		goto __75
 38724  	}
 38725  	start_match = end_subject
 38726  __75:
 38727  	;
 38728  __68:
 38729  	;
 38730  
 38731  	// If we can't find the required code unit, having reached the true end
 38732  	//         of the subject, break the bumpalong loop, to force a match failure,
 38733  	//         except when doing partial matching, when we let the next cycle run at
 38734  	//         the end of the subject. To see why, consider the pattern /(?<=abc)def/,
 38735  	//         which partially matches "abc", even though the string does not contain
 38736  	//         the starting character "d". If we have not reached the true end of the
 38737  	//         subject (PCRE2_FIRSTLINE caused end_subject to be temporarily modified)
 38738  	//         we also let the cycle run, because the matching string is legitimately
 38739  	//         allowed to start with the first code unit of a newline.
 38740  
 38741  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&(DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT) == Tuint32_t(0) && start_match >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 38742  		goto __76
 38743  	}
 38744  	goto __48
 38745  __76:
 38746  	;
 38747  	goto __66
 38748  __65:
 38749  	if !(startline != 0) {
 38750  		goto __77
 38751  	}
 38752  
 38753  	if !(start_match > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr(start_offset)) {
 38754  		goto __79
 38755  	}
 38756  
 38757  	if !(utf != 0) {
 38758  		goto __80
 38759  	}
 38760  
 38761  __82:
 38762  	if !(start_match < end_subject && !(func() int32 {
 38763  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 38764  			return libc.Bool32(start_match > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject && X_pcre2_was_newline_8(tls, start_match, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject, mb+120, utf) != 0)
 38765  		}
 38766  		return libc.Bool32(start_match >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 38767  	}() != 0)) {
 38768  		goto __83
 38769  	}
 38770  
 38771  	start_match++
 38772  __84:
 38773  	if !(start_match < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))&0xc0 == 0x80) {
 38774  		goto __85
 38775  	}
 38776  	start_match++
 38777  	goto __84
 38778  __85:
 38779  	;
 38780  	goto __82
 38781  __83:
 38782  	;
 38783  	goto __81
 38784  __80:
 38785  __86:
 38786  	if !(start_match < end_subject && !(func() int32 {
 38787  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 38788  			return libc.Bool32(start_match > (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject && X_pcre2_was_newline_8(tls, start_match, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject, mb+120, utf) != 0)
 38789  		}
 38790  		return libc.Bool32(start_match >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 38791  	}() != 0)) {
 38792  		goto __87
 38793  	}
 38794  	start_match++
 38795  	goto __86
 38796  __87:
 38797  	;
 38798  __81:
 38799  	;
 38800  
 38801  	// If we have just passed a CR and the newline option is ANY or
 38802  	//           ANYCRLF, and we are now at a LF, advance the match position by one
 38803  	//           more code unit.
 38804  
 38805  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match + libc.UintptrFromInt32(-1)))) == '\015' && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANY) || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANYCRLF)) && start_match < end_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))) == '\012') {
 38806  		goto __88
 38807  	}
 38808  	start_match++
 38809  __88:
 38810  	;
 38811  __79:
 38812  	;
 38813  	goto __78
 38814  __77:
 38815  	if !(start_bits != uintptr(0)) {
 38816  		goto __89
 38817  	}
 38818  
 38819  __90:
 38820  	if !(start_match < end_subject) {
 38821  		goto __91
 38822  	}
 38823  
 38824  	c1 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))
 38825  	if !(uint32(*(*Tuint8_t)(unsafe.Pointer(start_bits + uintptr(c1/Tuint32_t(8)))))&(uint32(1)<<(c1&Tuint32_t(7))) != uint32(0)) {
 38826  		goto __92
 38827  	}
 38828  	goto __91
 38829  __92:
 38830  	;
 38831  	start_match++
 38832  	goto __90
 38833  __91:
 38834  	;
 38835  
 38836  	// See comment above in first_cu checking about the next line.
 38837  
 38838  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&(DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT) == Tuint32_t(0) && start_match >= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 38839  		goto __93
 38840  	}
 38841  	goto __48
 38842  __93:
 38843  	;
 38844  __89:
 38845  	;
 38846  __78:
 38847  	;
 38848  __66:
 38849  	;
 38850  __60:
 38851  	; // End of first code unit handling
 38852  
 38853  	// Restore fudged end_subject
 38854  
 38855  	end_subject = (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject
 38856  
 38857  	// The following two optimizations are disabled for partial matching.
 38858  
 38859  	if !((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmoptions&(DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT) == Tuint32_t(0)) {
 38860  		goto __94
 38861  	}
 38862  
 38863  	// The minimum matching length is a lower bound; no actual string of that
 38864  	//       length may actually match the pattern. Although the value is, strictly,
 38865  	//       in characters, we treat it as code units to avoid spending too much time
 38866  	//       in this optimization.
 38867  
 38868  	if !((int64(end_subject)-int64(start_match))/1 < int64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fminlength)) {
 38869  		goto __95
 38870  	}
 38871  	goto NOMATCH_EXIT
 38872  __95:
 38873  	;
 38874  
 38875  	// If req_cu is set, we know that that code unit must appear in the
 38876  	//       subject for the match to succeed. If the first code unit is set, req_cu
 38877  	//       must be later in the subject; otherwise the test starts at the match
 38878  	//       point. This optimization can save a huge amount of backtracking in
 38879  	//       patterns with nested unlimited repeats that aren't going to match.
 38880  	//       Writing separate code for cased/caseless versions makes it go faster, as
 38881  	//       does using an autoincrement and backing off on a match. As in the case of
 38882  	//       the first code unit, using memchr() in the 8-bit library gives a big
 38883  	//       speed up. Unlike the first_cu check above, we do not need to call
 38884  	//       memchr() twice in the caseless case because we only need to check for the
 38885  	//       presence of the character in either case, not find the first occurrence.
 38886  	//
 38887  	//       The search can be skipped if the code unit was found later than the
 38888  	//       current starting point in a previous iteration of the bumpalong loop.
 38889  	//
 38890  	//       HOWEVER: when the subject string is very, very long, searching to its end
 38891  	//       can take a long time, and give bad performance on quite ordinary
 38892  	//       patterns. This showed up when somebody was matching something like
 38893  	//       /^\d+C/ on a 32-megabyte string... so we don't do this when the string is
 38894  	//       sufficiently long, but it's worth searching a lot more for unanchored
 38895  	//       patterns.
 38896  
 38897  	p = start_match + uintptr(func() int32 {
 38898  		if has_first_cu != 0 {
 38899  			return 1
 38900  		}
 38901  		return 0
 38902  	}())
 38903  	if !(has_req_cu != 0 && p > req_cu_ptr) {
 38904  		goto __96
 38905  	}
 38906  
 38907  	check_length = Tsize_t((int64(end_subject) - int64(start_match)) / 1)
 38908  
 38909  	if !(check_length < uint64(DREQ_CU_MAX) || !(anchored != 0) && check_length < uint64(DREQ_CU_MAX*1000)) {
 38910  		goto __97
 38911  	}
 38912  
 38913  	if !(int32(req_cu) != int32(req_cu2)) {
 38914  		goto __98
 38915  	} /* Caseless */
 38916  
 38917  	pp = p
 38918  	p = libc.Xmemchr(tls, pp, int32(req_cu), uint64((int64(end_subject)-int64(pp))/1))
 38919  	if !(p == uintptr(0)) {
 38920  		goto __100
 38921  	}
 38922  
 38923  	p = libc.Xmemchr(tls, pp, int32(req_cu2), uint64((int64(end_subject)-int64(pp))/1))
 38924  	if !(p == uintptr(0)) {
 38925  		goto __101
 38926  	}
 38927  	p = end_subject
 38928  __101:
 38929  	;
 38930  __100:
 38931  	;
 38932  	goto __99
 38933  __98:
 38934  
 38935  	p = libc.Xmemchr(tls, p, int32(req_cu), uint64((int64(end_subject)-int64(p))/1))
 38936  	if !(p == uintptr(0)) {
 38937  		goto __102
 38938  	}
 38939  	p = end_subject
 38940  __102:
 38941  	;
 38942  __99:
 38943  	;
 38944  
 38945  	// If we can't find the required code unit, break the matching loop,
 38946  	//           forcing a match failure.
 38947  
 38948  	if !(p >= end_subject) {
 38949  		goto __103
 38950  	}
 38951  	goto __48
 38952  __103:
 38953  	;
 38954  
 38955  	// If we have found the required code unit, save the point where we
 38956  	//           found it, so that we don't search again next time round the loop if
 38957  	//           the start hasn't passed this code unit yet.
 38958  
 38959  	req_cu_ptr = p
 38960  __97:
 38961  	;
 38962  __96:
 38963  	;
 38964  __94:
 38965  	;
 38966  __49:
 38967  	;
 38968  
 38969  	// ------------ End of start of match optimizations ------------
 38970  
 38971  	// Give no match if we have passed the bumpalong limit.
 38972  
 38973  	if !(start_match > bumpalong_limit) {
 38974  		goto __104
 38975  	}
 38976  	goto __48
 38977  __104:
 38978  	;
 38979  
 38980  	// OK, now we can do the business
 38981  
 38982  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr = start_match
 38983  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = start_match
 38984  	(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Frecursive = uintptr(0)
 38985  
 38986  	rc = internal_dfa_match(tls,
 38987  		mb, // fixed match data
 38988  		(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_code, // this subexpression's code
 38989  		start_match,  // where we currently are
 38990  		start_offset, // start offset in subject
 38991  		match_data+80,
 38992  		Tuint32_t((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount)*Tuint32_t(2),
 38993  		workspace,      // workspace vector
 38994  		int32(wscount), // size of same
 38995  		uint32(0),      // function recurse level
 38996  		bp+168)         // initial workspace for recursion
 38997  
 38998  	// Anything other than "no match" means we are done, always; otherwise, carry
 38999  	//   on only if not anchored.
 39000  
 39001  	if !(rc != -1 || anchored != 0) {
 39002  		goto __105
 39003  	}
 39004  
 39005  	if !(rc == -2 && int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) > 0) {
 39006  		goto __106
 39007  	}
 39008  
 39009  	*(*Tsize_t)(unsafe.Pointer(match_data + 80)) = Tsize_t((int64(start_match) - int64(subject)) / 1)
 39010  	*(*Tsize_t)(unsafe.Pointer(match_data + 80 + 1*8)) = Tsize_t((int64(end_subject) - int64(subject)) / 1)
 39011  __106:
 39012  	;
 39013  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fleftchar = Tsize_t((int64((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr) - int64(subject)) / 1)
 39014  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frightchar = Tsize_t((int64((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) - int64(subject)) / 1)
 39015  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fstartchar = Tsize_t((int64(start_match) - int64(subject)) / 1)
 39016  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = rc
 39017  
 39018  	if !(rc >= 0 && options&DPCRE2_COPY_MATCHED_SUBJECT != Tuint32_t(0)) {
 39019  		goto __107
 39020  	}
 39021  
 39022  	length = (length + Tsize_t(was_zero_terminated)) * uint64(DPCRE2_CODE_UNIT_WIDTH/8)
 39023  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject = (*struct {
 39024  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 39025  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmalloc})).f(tls, length,
 39026  		(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmemory_data)
 39027  	if !((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject == uintptr(0)) {
 39028  		goto __109
 39029  	}
 39030  	return -48
 39031  __109:
 39032  	;
 39033  	libc.X__builtin___memcpy_chk(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject, subject, length, libc.X__builtin_object_size(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject, 0))
 39034  	*(*Tuint8_t)(unsafe.Pointer(match_data + 73)) |= uint8(DPCRE2_MD_COPIED_SUBJECT)
 39035  	goto __108
 39036  __107:
 39037  
 39038  	if !(rc >= 0 || rc == -2) {
 39039  		goto __110
 39040  	}
 39041  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject = subject
 39042  __110:
 39043  	;
 39044  __108:
 39045  	;
 39046  	goto EXIT
 39047  __105:
 39048  	;
 39049  
 39050  	// Advance to the next subject character unless we are at the end of a line
 39051  	//   and firstline is set.
 39052  
 39053  	if !(firstline != 0 && func() int32 {
 39054  		if (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 39055  			return libc.Bool32(start_match < (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, start_match, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+120, utf) != 0)
 39056  		}
 39057  		return libc.Bool32(start_match <= (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128))) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 128 + 1)))))
 39058  	}() != 0) {
 39059  		goto __111
 39060  	}
 39061  	goto __48
 39062  __111:
 39063  	;
 39064  	start_match++
 39065  	if !(utf != 0) {
 39066  		goto __112
 39067  	}
 39068  
 39069  __113:
 39070  	if !(start_match < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))&0xc0 == 0x80) {
 39071  		goto __114
 39072  	}
 39073  	start_match++
 39074  	goto __113
 39075  __114:
 39076  	;
 39077  __112:
 39078  	;
 39079  	if !(start_match > end_subject) {
 39080  		goto __115
 39081  	}
 39082  	goto __48
 39083  __115:
 39084  	;
 39085  
 39086  	// If we have just passed a CR and we are now at a LF, and the pattern does
 39087  	//   not contain any explicit matches for \r or \n, and the newline option is CRLF
 39088  	//   or ANY or ANYCRLF, advance the match position by one more character.
 39089  
 39090  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr(1)))) == '\015' && start_match < end_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))) == '\012' && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_HASCRORLF) == Tuint32_t(0) && ((*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANY) || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANYCRLF) || (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2))) {
 39091  		goto __116
 39092  	}
 39093  	start_match++
 39094  __116:
 39095  	;
 39096  
 39097  	goto __47
 39098  __47:
 39099  	goto __46
 39100  	goto __48
 39101  __48:
 39102  	; // "Bumpalong" loop
 39103  
 39104  NOMATCH_EXIT:
 39105  	rc = -1
 39106  
 39107  EXIT:
 39108  __117:
 39109  	if !((*TRWS_anchor)(unsafe.Pointer(rws)).Fnext != uintptr(0)) {
 39110  		goto __118
 39111  	}
 39112  
 39113  	next = (*TRWS_anchor)(unsafe.Pointer(rws)).Fnext
 39114  	(*TRWS_anchor)(unsafe.Pointer(rws)).Fnext = (*TRWS_anchor)(unsafe.Pointer(next)).Fnext
 39115  	(*struct {
 39116  		f func(*libc.TLS, uintptr, uintptr)
 39117  	})(unsafe.Pointer(&struct{ uintptr }{(*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmemctl.Ffree})).f(tls, next, (*Tdfa_match_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmemory_data)
 39118  	goto __117
 39119  __118:
 39120  	;
 39121  
 39122  	return rc
 39123  }
 39124  
 39125  // These #undefs are here to enable unity builds with CMake.
 39126  
 39127  // End of pcre2_dfa_match.c
 39128  
 39129  // This function is needed only when memmove() is not available.
 39130  
 39131  // End of pcre2_internal.h
 39132  
 39133  // The texts of compile-time error messages. Compile-time error numbers start
 39134  // at COMPILE_ERROR_BASE (100).
 39135  //
 39136  // This used to be a table of strings, but in order to reduce the number of
 39137  // relocations needed when a shared library is loaded dynamically, it is now one
 39138  // long string. We cannot use a table of offsets, because the lengths of inserts
 39139  // such as XSTRING(MAX_NAME_SIZE) are not known. Instead,
 39140  // pcre2_get_error_message() counts through to the one it wants - this isn't a
 39141  // performance issue because these strings are used only when there is an error.
 39142  //
 39143  // Each substring ends with \0 to insert a null character. This includes the final
 39144  // substring, so that the whole string ends with \0\0, which can be detected when
 39145  // counting through.
 39146  
 39147  var compile_error_texts =
 39148  
 39149  // 5
 39150  
 39151  // 10
 39152  
 39153  // 15
 39154  
 39155  // 20
 39156  
 39157  // 25
 39158  
 39159  // 30
 39160  
 39161  // 35
 39162  
 39163  // 40
 39164  
 39165  // 45
 39166  
 39167  // 50
 39168  
 39169  // 55
 39170  
 39171  // "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)\0"
 39172  // Was the above
 39173  // 60
 39174  
 39175  // 65
 39176  
 39177  // 70
 39178  
 39179  // 75
 39180  
 39181  // 80
 39182  
 39183  // 85
 39184  
 39185  // 90
 39186  
 39187  // 95
 39188  
 39189  *(*[4381]uint8)(unsafe.Pointer(ts + 798)) /* pcre2_error.c:65:28 */
 39190  
 39191  // Match-time and UTF error texts are in the same format.
 39192  
 39193  var match_error_texts =
 39194  
 39195  // 5
 39196  
 39197  // 10
 39198  
 39199  // 15
 39200  
 39201  // 20
 39202  
 39203  // 25
 39204  
 39205  // 30
 39206  
 39207  // 35
 39208  
 39209  // Never returned by PCRE2 itself
 39210  
 39211  // 40
 39212  
 39213  // 45
 39214  
 39215  // 50
 39216  
 39217  // 55
 39218  
 39219  // 60
 39220  
 39221  // 65
 39222  
 39223  *(*[2476]uint8)(unsafe.Pointer(ts + 5179)) /* pcre2_error.c:194:28 */
 39224  
 39225  // ************************************************
 39226  //
 39227  //            Return error message                *
 39228  //
 39229  
 39230  // This function copies an error message into a buffer whose units are of an
 39231  // appropriate width. Error numbers are positive for compile-time errors, and
 39232  // negative for match-time errors (except for UTF errors), but the numbers are all
 39233  // distinct.
 39234  //
 39235  // Arguments:
 39236  //   enumber       error number
 39237  //   buffer        where to put the message (zero terminated)
 39238  //   size          size of the buffer in code units
 39239  //
 39240  // Returns:        length of message if all is well
 39241  //                 negative on error
 39242  
 39243  func Xpcre2_get_error_message_8(tls *libc.TLS, enumber int32, buffer uintptr, size Tsize_t) int32 { /* pcre2_error.c:297:1: */
 39244  	var message uintptr
 39245  	var i Tsize_t
 39246  	var n int32
 39247  
 39248  	if size == uint64(0) {
 39249  		return -48
 39250  	}
 39251  
 39252  	if enumber >= DCOMPILE_ERROR_BASE {
 39253  		message = uintptr(unsafe.Pointer(&compile_error_texts))
 39254  		n = enumber - DCOMPILE_ERROR_BASE
 39255  	} else if enumber < 0 {
 39256  		message = uintptr(unsafe.Pointer(&match_error_texts))
 39257  		n = -enumber
 39258  	} else {
 39259  		message = ts + 7655 /* "\x00" */ // Empty message list
 39260  		n = 1
 39261  	}
 39262  
 39263  	for ; n > 0; n-- {
 39264  		for int32(*(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&message, 1)))) != 0 {
 39265  		}
 39266  
 39267  		if int32(*(*uint8)(unsafe.Pointer(message))) == 0 {
 39268  			return -29
 39269  		}
 39270  	}
 39271  
 39272  	for i = uint64(0); int32(*(*uint8)(unsafe.Pointer(message))) != 0; i++ {
 39273  		if i >= size-uint64(1) {
 39274  			*(*TPCRE2_UCHAR8)(unsafe.Pointer(buffer + uintptr(i))) = TPCRE2_UCHAR8(0) // Terminate partial message
 39275  			return -48
 39276  		}
 39277  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(buffer + uintptr(i))) = *(*uint8)(unsafe.Pointer(libc.PostIncUintptr(&message, 1)))
 39278  	}
 39279  
 39280  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(buffer + uintptr(i))) = TPCRE2_UCHAR8(0)
 39281  	return int32(i)
 39282  }
 39283  
 39284  // End of pcre2_error.c
 39285  
 39286  // This function is needed only when memmove() is not available.
 39287  
 39288  // End of pcre2_internal.h
 39289  
 39290  // Dummy function
 39291  
 39292  // ************************************************
 39293  //
 39294  //      Match an extended grapheme sequence       *
 39295  //
 39296  
 39297  //
 39298  // Arguments:
 39299  //   c              the first character
 39300  //   eptr           pointer to next character
 39301  //   start_subject  pointer to start of subject
 39302  //   end_subject    pointer to end of subject
 39303  //   utf            TRUE if in UTF mode
 39304  //   xcount         pointer to count of additional characters,
 39305  //                    or NULL if count not needed
 39306  //
 39307  // Returns:         pointer after the end of the sequence
 39308  
 39309  func X_pcre2_extuni_8(tls *libc.TLS, c Tuint32_t, eptr TPCRE2_SPTR8, start_subject TPCRE2_SPTR8, end_subject TPCRE2_SPTR8, utf TBOOL, xcount uintptr) TPCRE2_SPTR8 { /* pcre2_extuni.c:92:1: */
 39310  	var lgb int32 = int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fgbprop)
 39311  
 39312  	for eptr < end_subject {
 39313  		var rgb int32
 39314  		var len int32 = 1
 39315  		if !(utf != 0) {
 39316  			c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr)))
 39317  		} else {
 39318  			c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr)))
 39319  			if c >= 0xc0 {
 39320  				if c&0x20 == Tuint32_t(0) {
 39321  					c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f
 39322  					len++
 39323  				} else if c&0x10 == Tuint32_t(0) {
 39324  					c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 2)))&0x3f
 39325  					len = len + 2
 39326  				} else if c&0x08 == Tuint32_t(0) {
 39327  					c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 3)))&0x3f
 39328  					len = len + 3
 39329  				} else if c&0x04 == Tuint32_t(0) {
 39330  					c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 4)))&0x3f
 39331  					len = len + 4
 39332  				} else {
 39333  					c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 5)))&0x3f
 39334  					len = len + 5
 39335  				}
 39336  			}
 39337  
 39338  		}
 39339  		rgb = int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fgbprop)
 39340  		if X_pcre2_ucp_gbtable_8[lgb]&(uint32(1)<<rgb) == Tuint32_t(0) {
 39341  			break
 39342  		}
 39343  
 39344  		// Not breaking between Regional Indicators is allowed only if there
 39345  		//   are an even number of preceding RIs.
 39346  
 39347  		if lgb == ucp_gbRegional_Indicator && rgb == ucp_gbRegional_Indicator {
 39348  			var ricount int32 = 0
 39349  			var bptr TPCRE2_SPTR8 = eptr - uintptr(1)
 39350  			if utf != 0 {
 39351  				for uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr)))&0xc0 == 0x80 {
 39352  					bptr--
 39353  				}
 39354  			}
 39355  
 39356  			// bptr is pointing to the left-hand character
 39357  
 39358  			for bptr > start_subject {
 39359  				bptr--
 39360  				if utf != 0 {
 39361  					for uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr)))&0xc0 == 0x80 {
 39362  						bptr--
 39363  					}
 39364  					c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr)))
 39365  					if c >= 0xc0 {
 39366  						if c&0x20 == Tuint32_t(0) {
 39367  							c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 1)))&0x3f
 39368  						} else if c&0x10 == Tuint32_t(0) {
 39369  							c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 2)))&0x3f
 39370  						} else if c&0x08 == Tuint32_t(0) {
 39371  							c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 3)))&0x3f
 39372  						} else if c&0x04 == Tuint32_t(0) {
 39373  							c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 4)))&0x3f
 39374  						} else {
 39375  							c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr + 5)))&0x3f
 39376  						}
 39377  					}
 39378  
 39379  				} else {
 39380  					c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bptr)))
 39381  				}
 39382  				if int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fgbprop) != ucp_gbRegional_Indicator {
 39383  					break
 39384  				}
 39385  				ricount++
 39386  			}
 39387  			if ricount&1 != 0 {
 39388  				break
 39389  			} // Grapheme break required
 39390  		}
 39391  
 39392  		// If Extend or ZWJ follows Extended_Pictographic, do not update lgb; this
 39393  		//   allows any number of them before a following Extended_Pictographic.
 39394  
 39395  		if rgb != ucp_gbExtend && rgb != ucp_gbZWJ || lgb != ucp_gbExtended_Pictographic {
 39396  			lgb = rgb
 39397  		}
 39398  
 39399  		eptr += TPCRE2_SPTR8(len)
 39400  		if xcount != uintptr(0) {
 39401  			*(*int32)(unsafe.Pointer(xcount)) += 1
 39402  		}
 39403  	}
 39404  
 39405  	return eptr
 39406  }
 39407  
 39408  // End of pcre2_extuni.c
 39409  
 39410  // This function is needed only when memmove() is not available.
 39411  
 39412  // End of pcre2_internal.h
 39413  
 39414  // ************************************************
 39415  //
 39416  //    Scan compiled regex for specific bracket    *
 39417  //
 39418  
 39419  //
 39420  // Arguments:
 39421  //   code        points to start of expression
 39422  //   utf         TRUE in UTF mode
 39423  //   number      the required bracket number or negative to find a lookbehind
 39424  //
 39425  // Returns:      pointer to the opcode for the bracket, or NULL if not found
 39426  
 39427  func X_pcre2_find_bracket_8(tls *libc.TLS, code TPCRE2_SPTR8, utf TBOOL, number int32) TPCRE2_SPTR8 { /* pcre2_find_bracket.c:70:1: */
 39428  	for {
 39429  		var c TPCRE2_UCHAR8 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(code))
 39430  
 39431  		if int32(c) == OP_END {
 39432  			return uintptr(0)
 39433  		}
 39434  
 39435  		// XCLASS is used for classes that cannot be represented just by a bit map.
 39436  		//   This includes negated single high-valued characters. CALLOUT_STR is used for
 39437  		//   callouts with string arguments. In both cases the length in the table is
 39438  		//   zero; the actual length is stored in the compiled code.
 39439  
 39440  		if int32(c) == OP_XCLASS {
 39441  			code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 39442  		} else if int32(c) == OP_CALLOUT_STR {
 39443  			code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 6)))))
 39444  		} else if int32(c) == OP_REVERSE {
 39445  			if number < 0 {
 39446  				return code
 39447  			}
 39448  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 39449  		} else if int32(c) == OP_CBRA || int32(c) == OP_SCBRA || int32(c) == OP_CBRAPOS || int32(c) == OP_SCBRAPOS {
 39450  			var n int32 = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 4)))))
 39451  			if n == number {
 39452  				return code
 39453  			}
 39454  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 39455  		} else {
 39456  			switch int32(c) {
 39457  			case OP_TYPESTAR:
 39458  				fallthrough
 39459  			case OP_TYPEMINSTAR:
 39460  				fallthrough
 39461  			case OP_TYPEPLUS:
 39462  				fallthrough
 39463  			case OP_TYPEMINPLUS:
 39464  				fallthrough
 39465  			case OP_TYPEQUERY:
 39466  				fallthrough
 39467  			case OP_TYPEMINQUERY:
 39468  				fallthrough
 39469  			case OP_TYPEPOSSTAR:
 39470  				fallthrough
 39471  			case OP_TYPEPOSPLUS:
 39472  				fallthrough
 39473  			case OP_TYPEPOSQUERY:
 39474  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1))) == OP_NOTPROP {
 39475  					code += uintptr(2)
 39476  				}
 39477  				break
 39478  				fallthrough
 39479  
 39480  			case OP_TYPEUPTO:
 39481  				fallthrough
 39482  			case OP_TYPEMINUPTO:
 39483  				fallthrough
 39484  			case OP_TYPEEXACT:
 39485  				fallthrough
 39486  			case OP_TYPEPOSUPTO:
 39487  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 3))) == OP_NOTPROP {
 39488  					code += uintptr(2)
 39489  				}
 39490  				break
 39491  				fallthrough
 39492  
 39493  			case OP_MARK:
 39494  				fallthrough
 39495  			case OP_COMMIT_ARG:
 39496  				fallthrough
 39497  			case OP_PRUNE_ARG:
 39498  				fallthrough
 39499  			case OP_SKIP_ARG:
 39500  				fallthrough
 39501  			case OP_THEN_ARG:
 39502  				code += TPCRE2_SPTR8(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))
 39503  				break
 39504  			}
 39505  
 39506  			// Add in the fixed length from the table
 39507  
 39508  			code += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[c])
 39509  
 39510  			// In UTF-8 and UTF-16 modes, opcodes that are followed by a character may be
 39511  			//   followed by a multi-byte character. The length in the table is a minimum, so
 39512  			//   we have to arrange to skip the extra bytes.
 39513  
 39514  			if utf != 0 {
 39515  				switch int32(c) {
 39516  				case OP_CHAR:
 39517  					fallthrough
 39518  				case OP_CHARI:
 39519  					fallthrough
 39520  				case OP_NOT:
 39521  					fallthrough
 39522  				case OP_NOTI:
 39523  					fallthrough
 39524  				case OP_EXACT:
 39525  					fallthrough
 39526  				case OP_EXACTI:
 39527  					fallthrough
 39528  				case OP_NOTEXACT:
 39529  					fallthrough
 39530  				case OP_NOTEXACTI:
 39531  					fallthrough
 39532  				case OP_UPTO:
 39533  					fallthrough
 39534  				case OP_UPTOI:
 39535  					fallthrough
 39536  				case OP_NOTUPTO:
 39537  					fallthrough
 39538  				case OP_NOTUPTOI:
 39539  					fallthrough
 39540  				case OP_MINUPTO:
 39541  					fallthrough
 39542  				case OP_MINUPTOI:
 39543  					fallthrough
 39544  				case OP_NOTMINUPTO:
 39545  					fallthrough
 39546  				case OP_NOTMINUPTOI:
 39547  					fallthrough
 39548  				case OP_POSUPTO:
 39549  					fallthrough
 39550  				case OP_POSUPTOI:
 39551  					fallthrough
 39552  				case OP_NOTPOSUPTO:
 39553  					fallthrough
 39554  				case OP_NOTPOSUPTOI:
 39555  					fallthrough
 39556  				case OP_STAR:
 39557  					fallthrough
 39558  				case OP_STARI:
 39559  					fallthrough
 39560  				case OP_NOTSTAR:
 39561  					fallthrough
 39562  				case OP_NOTSTARI:
 39563  					fallthrough
 39564  				case OP_MINSTAR:
 39565  					fallthrough
 39566  				case OP_MINSTARI:
 39567  					fallthrough
 39568  				case OP_NOTMINSTAR:
 39569  					fallthrough
 39570  				case OP_NOTMINSTARI:
 39571  					fallthrough
 39572  				case OP_POSSTAR:
 39573  					fallthrough
 39574  				case OP_POSSTARI:
 39575  					fallthrough
 39576  				case OP_NOTPOSSTAR:
 39577  					fallthrough
 39578  				case OP_NOTPOSSTARI:
 39579  					fallthrough
 39580  				case OP_PLUS:
 39581  					fallthrough
 39582  				case OP_PLUSI:
 39583  					fallthrough
 39584  				case OP_NOTPLUS:
 39585  					fallthrough
 39586  				case OP_NOTPLUSI:
 39587  					fallthrough
 39588  				case OP_MINPLUS:
 39589  					fallthrough
 39590  				case OP_MINPLUSI:
 39591  					fallthrough
 39592  				case OP_NOTMINPLUS:
 39593  					fallthrough
 39594  				case OP_NOTMINPLUSI:
 39595  					fallthrough
 39596  				case OP_POSPLUS:
 39597  					fallthrough
 39598  				case OP_POSPLUSI:
 39599  					fallthrough
 39600  				case OP_NOTPOSPLUS:
 39601  					fallthrough
 39602  				case OP_NOTPOSPLUSI:
 39603  					fallthrough
 39604  				case OP_QUERY:
 39605  					fallthrough
 39606  				case OP_QUERYI:
 39607  					fallthrough
 39608  				case OP_NOTQUERY:
 39609  					fallthrough
 39610  				case OP_NOTQUERYI:
 39611  					fallthrough
 39612  				case OP_MINQUERY:
 39613  					fallthrough
 39614  				case OP_MINQUERYI:
 39615  					fallthrough
 39616  				case OP_NOTMINQUERY:
 39617  					fallthrough
 39618  				case OP_NOTMINQUERYI:
 39619  					fallthrough
 39620  				case OP_POSQUERY:
 39621  					fallthrough
 39622  				case OP_POSQUERYI:
 39623  					fallthrough
 39624  				case OP_NOTPOSQUERY:
 39625  					fallthrough
 39626  				case OP_NOTPOSQUERYI:
 39627  					if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1)))) >= 0xc0 {
 39628  						code += TPCRE2_SPTR8(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + libc.UintptrFromInt32(-1))))&0x3f])
 39629  					}
 39630  					break
 39631  				}
 39632  			}
 39633  		}
 39634  	}
 39635  	return TPCRE2_SPTR8(0)
 39636  }
 39637  
 39638  // End of pcre2_find_bracket.c
 39639  
 39640  // This function is needed only when memmove() is not available.
 39641  
 39642  // End of pcre2_internal.h
 39643  
 39644  // ************************************************
 39645  //
 39646  //        JIT compile a Regular Expression        *
 39647  //
 39648  
 39649  // This function used JIT to convert a previously-compiled pattern into machine
 39650  // code.
 39651  //
 39652  // Arguments:
 39653  //   code          a compiled pattern
 39654  //   options       JIT option bits
 39655  //
 39656  // Returns:        0: success or (*NOJIT) was used
 39657  //                <0: an error code
 39658  
 39659  func Xpcre2_jit_compile_8(tls *libc.TLS, code uintptr, options Tuint32_t) int32 { /* pcre2_jit_compile.c:14382:1: */
 39660  	var re uintptr = code
 39661  
 39662  	if code == uintptr(0) {
 39663  		return -51
 39664  	}
 39665  
 39666  	if options&libc.CplUint32(DPCRE2_JIT_COMPLETE|DPCRE2_JIT_PARTIAL_SOFT|DPCRE2_JIT_PARTIAL_HARD|DPCRE2_JIT_INVALID_UTF) != Tuint32_t(0) {
 39667  		return -45
 39668  	}
 39669  
 39670  	// Support for invalid UTF was first introduced in JIT, with the option
 39671  	// PCRE2_JIT_INVALID_UTF. Later, support was added to the interpreter, and the
 39672  	// compile-time option PCRE2_MATCH_INVALID_UTF was created. This is now the
 39673  	// preferred feature, with the earlier option deprecated. However, for backward
 39674  	// compatibility, if the earlier option is set, it forces the new option so that
 39675  	// if JIT matching falls back to the interpreter, there is still support for
 39676  	// invalid UTF. However, if this function has already been successfully called
 39677  	// without PCRE2_JIT_INVALID_UTF and without PCRE2_MATCH_INVALID_UTF (meaning that
 39678  	// non-invalid-supporting JIT code was compiled), give an error.
 39679  	//
 39680  	// If in the future support for PCRE2_JIT_INVALID_UTF is withdrawn, the following
 39681  	// actions are needed:
 39682  	//
 39683  	//   1. Remove the definition from pcre2.h.in and from the list in
 39684  	//      PUBLIC_JIT_COMPILE_OPTIONS above.
 39685  	//
 39686  	//   2. Replace PCRE2_JIT_INVALID_UTF with a local flag in this module.
 39687  	//
 39688  	//   3. Replace PCRE2_JIT_INVALID_UTF in pcre2_jit_test.c.
 39689  	//
 39690  	//   4. Delete the following short block of code. The setting of "re" and
 39691  	//      "functions" can be moved into the JIT-only block below, but if that is
 39692  	//      done, (void)re and (void)functions will be needed in the non-JIT case, to
 39693  	//      avoid compiler warnings.
 39694  
 39695  	if options&DPCRE2_JIT_INVALID_UTF != Tuint32_t(0) {
 39696  		if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_MATCH_INVALID_UTF == Tuint32_t(0) {
 39697  			*(*Tuint32_t)(unsafe.Pointer(re + 88)) |= DPCRE2_MATCH_INVALID_UTF
 39698  		}
 39699  	}
 39700  
 39701  	// The above tests are run with and without JIT support. This means that
 39702  	// PCRE2_JIT_INVALID_UTF propagates back into the regex options (ensuring
 39703  	// interpreter support) even in the absence of JIT. But now, if there is no JIT
 39704  	// support, give an error return.
 39705  
 39706  	return -45
 39707  }
 39708  
 39709  // JIT compiler uses an all-in-one approach. This improves security,
 39710  //    since the code generator functions are not exported.
 39711  
 39712  // ************************************************
 39713  //
 39714  //      Perl-Compatible Regular Expressions       *
 39715  //
 39716  
 39717  // PCRE is a library of functions to support regular expressions whose syntax
 39718  // and semantics are as close as possible to those of the Perl 5 language.
 39719  //
 39720  //                        Written by Philip Hazel
 39721  //      Original API code Copyright (c) 1997-2012 University of Cambridge
 39722  //           New API code Copyright (c) 2016-2018 University of Cambridge
 39723  //
 39724  // -----------------------------------------------------------------------------
 39725  // Redistribution and use in source and binary forms, with or without
 39726  // modification, are permitted provided that the following conditions are met:
 39727  //
 39728  //     * Redistributions of source code must retain the above copyright notice,
 39729  //       this list of conditions and the following disclaimer.
 39730  //
 39731  //     * Redistributions in binary form must reproduce the above copyright
 39732  //       notice, this list of conditions and the following disclaimer in the
 39733  //       documentation and/or other materials provided with the distribution.
 39734  //
 39735  //     * Neither the name of the University of Cambridge nor the names of its
 39736  //       contributors may be used to endorse or promote products derived from
 39737  //       this software without specific prior written permission.
 39738  //
 39739  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 39740  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 39741  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 39742  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 39743  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 39744  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 39745  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 39746  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 39747  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 39748  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 39749  // POSSIBILITY OF SUCH DAMAGE.
 39750  // -----------------------------------------------------------------------------
 39751  
 39752  // ************************************************
 39753  //
 39754  //              Do a JIT pattern match            *
 39755  //
 39756  
 39757  // This function runs a JIT pattern match.
 39758  //
 39759  // Arguments:
 39760  //   code            points to the compiled expression
 39761  //   subject         points to the subject string
 39762  //   length          length of subject string (may contain binary zeros)
 39763  //   start_offset    where to start in the subject string
 39764  //   options         option bits
 39765  //   match_data      points to a match_data block
 39766  //   mcontext        points to a match context
 39767  //
 39768  // Returns:          > 0 => success; value is the number of ovector pairs filled
 39769  //                   = 0 => success, but ovector is not big enough
 39770  //                    -1 => failed to match (PCRE_ERROR_NOMATCH)
 39771  //                  < -1 => some kind of unexpected problem
 39772  
 39773  func Xpcre2_jit_match_8(tls *libc.TLS, code uintptr, subject TPCRE2_SPTR8, length Tsize_t, start_offset Tsize_t, options Tuint32_t, match_data uintptr, mcontext uintptr) int32 { /* pcre2_jit_match.c:85:1: */
 39774  
 39775  	_ = code
 39776  	_ = subject
 39777  	_ = length
 39778  	_ = start_offset
 39779  	_ = options
 39780  	_ = match_data
 39781  	_ = mcontext
 39782  	return -45
 39783  
 39784  }
 39785  
 39786  // End of pcre2_jit_match.c
 39787  // ************************************************
 39788  //
 39789  //      Perl-Compatible Regular Expressions       *
 39790  //
 39791  
 39792  // PCRE is a library of functions to support regular expressions whose syntax
 39793  // and semantics are as close as possible to those of the Perl 5 language.
 39794  //
 39795  //                        Written by Philip Hazel
 39796  //      Original API code Copyright (c) 1997-2012 University of Cambridge
 39797  //          New API code Copyright (c) 2016 University of Cambridge
 39798  //
 39799  // -----------------------------------------------------------------------------
 39800  // Redistribution and use in source and binary forms, with or without
 39801  // modification, are permitted provided that the following conditions are met:
 39802  //
 39803  //     * Redistributions of source code must retain the above copyright notice,
 39804  //       this list of conditions and the following disclaimer.
 39805  //
 39806  //     * Redistributions in binary form must reproduce the above copyright
 39807  //       notice, this list of conditions and the following disclaimer in the
 39808  //       documentation and/or other materials provided with the distribution.
 39809  //
 39810  //     * Neither the name of the University of Cambridge nor the names of its
 39811  //       contributors may be used to endorse or promote products derived from
 39812  //       this software without specific prior written permission.
 39813  //
 39814  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 39815  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 39816  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 39817  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 39818  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 39819  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 39820  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 39821  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 39822  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 39823  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 39824  // POSSIBILITY OF SUCH DAMAGE.
 39825  // -----------------------------------------------------------------------------
 39826  
 39827  // ************************************************
 39828  //
 39829  //           Free JIT read-only data              *
 39830  //
 39831  
 39832  func X_pcre2_jit_free_rodata_8(tls *libc.TLS, current uintptr, allocator_data uintptr) { /* pcre2_jit_misc.c:53:1: */
 39833  	_ = current
 39834  	_ = allocator_data
 39835  }
 39836  
 39837  // ************************************************
 39838  //
 39839  //           Free JIT compiled code               *
 39840  //
 39841  
 39842  func X_pcre2_jit_free_8(tls *libc.TLS, executable_jit uintptr, memctl uintptr) { /* pcre2_jit_misc.c:78:1: */
 39843  	_ = executable_jit
 39844  	_ = memctl
 39845  }
 39846  
 39847  // ************************************************
 39848  //
 39849  //            Free unused JIT memory              *
 39850  //
 39851  
 39852  func Xpcre2_jit_free_unused_memory_8(tls *libc.TLS, gcontext uintptr) { /* pcre2_jit_misc.c:107:1: */
 39853  	_ = gcontext // Suppress warning
 39854  }
 39855  
 39856  // ************************************************
 39857  //
 39858  //            Allocate a JIT stack                *
 39859  //
 39860  
 39861  func Xpcre2_jit_stack_create_8(tls *libc.TLS, startsize Tsize_t, maxsize Tsize_t, gcontext uintptr) uintptr { /* pcre2_jit_misc.c:123:32: */
 39862  
 39863  	_ = gcontext
 39864  	_ = startsize
 39865  	_ = maxsize
 39866  	return uintptr(0)
 39867  
 39868  }
 39869  
 39870  // ************************************************
 39871  //
 39872  //         Assign a JIT stack to a pattern        *
 39873  //
 39874  
 39875  func Xpcre2_jit_stack_assign_8(tls *libc.TLS, mcontext uintptr, callback Tpcre2_jit_callback_8, callback_data uintptr) { /* pcre2_jit_misc.c:164:1: */
 39876  	_ = mcontext
 39877  	_ = callback
 39878  	_ = callback_data
 39879  }
 39880  
 39881  // ************************************************
 39882  //
 39883  //               Free a JIT stack                 *
 39884  //
 39885  
 39886  func Xpcre2_jit_stack_free_8(tls *libc.TLS, jit_stack uintptr) { /* pcre2_jit_misc.c:186:1: */
 39887  	_ = jit_stack
 39888  }
 39889  
 39890  // ************************************************
 39891  //
 39892  //               Get target CPU type              *
 39893  //
 39894  
 39895  func X_pcre2_jit_get_target_8(tls *libc.TLS) uintptr { /* pcre2_jit_misc.c:204:11: */
 39896  	return ts + 7657 /* "JIT is not suppo..." */
 39897  }
 39898  
 39899  // ************************************************
 39900  //
 39901  //              Get size of JIT code              *
 39902  //
 39903  
 39904  func X_pcre2_jit_get_size_8(tls *libc.TLS, executable_jit uintptr) Tsize_t { /* pcre2_jit_misc.c:220:1: */
 39905  	_ = executable_jit
 39906  	return uint64(0)
 39907  }
 39908  
 39909  // End of pcre2_jit_misc.c
 39910  
 39911  // End of pcre2_jit_compile.c
 39912  
 39913  // This function is needed only when memmove() is not available.
 39914  
 39915  // End of pcre2_internal.h
 39916  
 39917  // ************************************************
 39918  //
 39919  //           Create PCRE2 character tables        *
 39920  //
 39921  
 39922  // This function builds a set of character tables for use by PCRE2 and returns
 39923  // a pointer to them. They are build using the ctype functions, and consequently
 39924  // their contents will depend upon the current locale setting. When compiled as
 39925  // part of the library, the store is obtained via a general context malloc, if
 39926  // supplied, but when PCRE2_DFTABLES is defined (when compiling the pcre2_dftables
 39927  // freestanding auxiliary program) malloc() is used, and the function has a
 39928  // different name so as not to clash with the prototype in pcre2.h.
 39929  //
 39930  // Arguments:   none when PCRE2_DFTABLES is defined
 39931  //                else a PCRE2 general context or NULL
 39932  // Returns:     pointer to the contiguous block of data
 39933  //                else NULL if memory allocation failed
 39934  
 39935  func Xpcre2_maketables_8(tls *libc.TLS, gcontext uintptr) uintptr { /* pcre2_maketables.c:81:30: */
 39936  	var yield uintptr = func() uintptr {
 39937  		if gcontext != uintptr(0) {
 39938  			return (*struct {
 39939  				f func(*libc.TLS, Tsize_t, uintptr) uintptr
 39940  			})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmalloc})).f(tls, uint64(Dcbits_offset+Dcbit_length+256), (*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmemory_data)
 39941  		}
 39942  		return libc.Xmalloc(tls, uint64(Dcbits_offset+Dcbit_length+256))
 39943  	}()
 39944  	var i int32
 39945  	var p uintptr
 39946  
 39947  	if yield == uintptr(0) {
 39948  		return uintptr(0)
 39949  	}
 39950  	p = yield
 39951  
 39952  	// First comes the lower casing table
 39953  
 39954  	for i = 0; i < 256; i++ {
 39955  		*(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = Tuint8_t(Xtolower(tls, i))
 39956  	}
 39957  
 39958  	// Next the case-flipping table
 39959  
 39960  	for i = 0; i < 256; i++ {
 39961  		*(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = func() uint8 {
 39962  			if Xislower(tls, i) != 0 {
 39963  				return uint8(Xtoupper(tls, i))
 39964  			}
 39965  			return uint8(Xtolower(tls, i))
 39966  		}()
 39967  	}
 39968  
 39969  	// Then the character class tables. Don't try to be clever and save effort on
 39970  	// exclusive ones - in some locales things may be different.
 39971  	//
 39972  	// Note that the table for "space" includes everything "isspace" gives, including
 39973  	// VT in the default locale. This makes it work for the POSIX class [:space:].
 39974  	// From PCRE1 release 8.34 and for all PCRE2 releases it is also correct for Perl
 39975  	// space, because Perl added VT at release 5.18.
 39976  	//
 39977  	// Note also that it is possible for a character to be alnum or alpha without
 39978  	// being lower or upper, such as "male and female ordinals" (\xAA and \xBA) in the
 39979  	// fr_FR locale (at least under Debian Linux's locales as of 12/2005). So we must
 39980  	// test for alnum specially.
 39981  
 39982  	libc.X__builtin___memset_chk(tls, p, 0, uint64(Dcbit_length), libc.X__builtin_object_size(tls, p, 0))
 39983  	for i = 0; i < 256; i++ {
 39984  		if Xisdigit(tls, i) != 0 {
 39985  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_digit+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 39986  		}
 39987  		if Xisupper(tls, i) != 0 {
 39988  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_upper+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 39989  		}
 39990  		if Xislower(tls, i) != 0 {
 39991  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_lower+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 39992  		}
 39993  		if Xisalnum(tls, i) != 0 {
 39994  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_word+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 39995  		}
 39996  		if i == '_' {
 39997  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_word+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 39998  		}
 39999  		if Xisspace(tls, i) != 0 {
 40000  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_space+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 40001  		}
 40002  		if Xisxdigit(tls, i) != 0 {
 40003  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_xdigit+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 40004  		}
 40005  		if Xisgraph(tls, i) != 0 {
 40006  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_graph+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 40007  		}
 40008  		if Xisprint(tls, i) != 0 {
 40009  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_print+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 40010  		}
 40011  		if Xispunct(tls, i) != 0 {
 40012  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_punct+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 40013  		}
 40014  		if Xiscntrl(tls, i) != 0 {
 40015  			*(*Tuint8_t)(unsafe.Pointer(p + uintptr(Dcbit_cntrl+i/8))) |= Tuint8_t(uint32(1) << (i & 7))
 40016  		}
 40017  	}
 40018  	p += uintptr(Dcbit_length)
 40019  
 40020  	// Finally, the character type table. In this, we used to exclude VT from the
 40021  	// white space chars, because Perl didn't recognize it as such for \s and for
 40022  	// comments within regexes. However, Perl changed at release 5.18, so PCRE1
 40023  	// changed at release 8.34 and it's always been this way for PCRE2.
 40024  
 40025  	for i = 0; i < 256; i++ {
 40026  		var x int32 = 0
 40027  		if Xisspace(tls, i) != 0 {
 40028  			x = x + Dctype_space
 40029  		}
 40030  		if Xisalpha(tls, i) != 0 {
 40031  			x = x + Dctype_letter
 40032  		}
 40033  		if Xislower(tls, i) != 0 {
 40034  			x = x + Dctype_lcletter
 40035  		}
 40036  		if Xisdigit(tls, i) != 0 {
 40037  			x = x + Dctype_digit
 40038  		}
 40039  		if Xisalnum(tls, i) != 0 || i == '_' {
 40040  			x = x + Dctype_word
 40041  		}
 40042  		*(*Tuint8_t)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))) = Tuint8_t(x)
 40043  	}
 40044  
 40045  	return yield
 40046  }
 40047  
 40048  func Xpcre2_maketables_free_8(tls *libc.TLS, gcontext uintptr, tables uintptr) { /* pcre2_maketables.c:154:1: */
 40049  	if gcontext != 0 {
 40050  		(*struct {
 40051  			f func(*libc.TLS, uintptr, uintptr)
 40052  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Ffree})).f(tls, tables, (*Tpcre2_general_context_8)(unsafe.Pointer(gcontext)).Fmemctl.Fmemory_data)
 40053  	} else {
 40054  		libc.Xfree(tls, tables)
 40055  	}
 40056  }
 40057  
 40058  // End of pcre2_maketables.c
 40059  
 40060  // Min and max values for the common repeats; a maximum of UINT32_MAX =>
 40061  // infinity.
 40062  
 40063  var rep_min = [11]Tuint32_t{
 40064  	Tuint32_t(0), Tuint32_t(0), // * and *?
 40065  	Tuint32_t(1), Tuint32_t(1), // + and +?
 40066  	Tuint32_t(0), Tuint32_t(0), // ? and ??
 40067  	Tuint32_t(0), Tuint32_t(0), // dummy placefillers for OP_CR[MIN]RANGE
 40068  	Tuint32_t(0), Tuint32_t(1), Tuint32_t(0)} /* pcre2_match.c:123:23 */ // OP_CRPOS{STAR, PLUS, QUERY}
 40069  
 40070  var rep_max = [11]Tuint32_t{
 40071  	4294967295, 4294967295, // * and *?
 40072  	4294967295, 4294967295, // + and +?
 40073  	Tuint32_t(1), Tuint32_t(1), // ? and ??
 40074  	Tuint32_t(0), Tuint32_t(0), // dummy placefillers for OP_CR[MIN]RANGE
 40075  	4294967295, 4294967295, Tuint32_t(1)} /* pcre2_match.c:130:23 */ // OP_CRPOS{STAR, PLUS, QUERY}
 40076  
 40077  // Repetition types - must include OP_CRPOSRANGE (not needed above)
 40078  
 40079  var rep_typ = [12]Tuint32_t{
 40080  	REPTYPE_MAX, REPTYPE_MIN, // * and *?
 40081  	REPTYPE_MAX, REPTYPE_MIN, // + and +?
 40082  	REPTYPE_MAX, REPTYPE_MIN, // ? and ??
 40083  	REPTYPE_MAX, REPTYPE_MIN, // OP_CRRANGE and OP_CRMINRANGE
 40084  	REPTYPE_POS, REPTYPE_POS, // OP_CRPOSSTAR, OP_CRPOSPLUS
 40085  	REPTYPE_POS, REPTYPE_POS} /* pcre2_match.c:139:23 */
 40086  
 40087  // Define short names for general fields in the current backtrack frame, which
 40088  // is always pointed to by the F variable. Occasional references to fields in
 40089  // other frames are written out explicitly. There are also some fields in the
 40090  // current frame whose names start with "temp" that are used for short-term,
 40091  // localised backtracking memory. These are #defined with Lxxx names at the point
 40092  // of use and undefined afterwards.
 40093  
 40094  // ************************************************
 40095  //
 40096  //                Process a callout               *
 40097  //
 40098  
 40099  // This function is called for all callouts, whether "standalone" or at the
 40100  // start of a conditional group. Feptr will be pointing to either OP_CALLOUT or
 40101  // OP_CALLOUT_STR. A callout block is allocated in pcre2_match() and initialized
 40102  // with fixed values.
 40103  //
 40104  // Arguments:
 40105  //   F          points to the current backtracking frame
 40106  //   mb         points to the match block
 40107  //   lengthptr  where to return the length of the callout item
 40108  //
 40109  // Returns:     the return from the callout
 40110  //              or 0 if no callout function exists
 40111  
 40112  func do_callout(tls *libc.TLS, F uintptr, mb uintptr, lengthptr uintptr) int32 { /* pcre2_match.c:267:1: */
 40113  	var rc int32
 40114  	var save0 Tsize_t
 40115  	var save1 Tsize_t
 40116  	var callout_ovector uintptr
 40117  	var cb uintptr
 40118  
 40119  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) = func() uint64 {
 40120  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_CALLOUT {
 40121  			return uint64(X_pcre2_OP_lengths_8[OP_CALLOUT])
 40122  		}
 40123  		return uint64(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 6)))))
 40124  	}()
 40125  
 40126  	if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fcallout == uintptr(0) {
 40127  		return 0
 40128  	} // No callout function provided
 40129  
 40130  	// The original matching code (pre 10.30) worked directly with the ovector
 40131  	// passed by the user, and this was passed to callouts. Now that the working
 40132  	// ovector is in the backtracking frame, it no longer needs to reserve space for
 40133  	// the overall match offsets (which would waste space in the frame). For backward
 40134  	// compatibility, however, we pass capture_top and offset_vector to the callout as
 40135  	// if for the extended ovector, and we ensure that the first two slots are unset
 40136  	// by preserving and restoring their current contents. Picky compilers complain if
 40137  	// references such as Fovector[-2] are use directly, so we set up a separate
 40138  	// pointer.
 40139  
 40140  	callout_ovector = F + 128 - uintptr(2)*8
 40141  
 40142  	// The cb->version, cb->subject, cb->subject_length, and cb->start_match fields
 40143  	// are set externally. The first 3 never change; the last is updated for each
 40144  	// bumpalong.
 40145  
 40146  	cb = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fcb
 40147  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcapture_top = Tuint32_t((*Theapframe)(unsafe.Pointer(F)).Foffset_top)/Tuint32_t(2) + Tuint32_t(1)
 40148  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcapture_last = (*Theapframe)(unsafe.Pointer(F)).Fcapture_last
 40149  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Foffset_vector = callout_ovector
 40150  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fmark = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnomatch_mark
 40151  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcurrent_position = Tsize_t((int64((*Theapframe)(unsafe.Pointer(F)).Feptr) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 40152  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fpattern_position = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 40153  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fnext_item_length = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))))
 40154  
 40155  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_CALLOUT {
 40156  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_number = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 5)))
 40157  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_offset = uint64(0)
 40158  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string = uintptr(0)
 40159  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_length = uint64(0)
 40160  	} else {
 40161  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_number = Tuint32_t(0)
 40162  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_offset = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 7)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 8)))))
 40163  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(1+4*DLINK_SIZE) + uintptr(1)
 40164  		(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_string_length = *(*Tsize_t)(unsafe.Pointer(lengthptr)) - uint64(1+4*DLINK_SIZE) - uint64(2)
 40165  	}
 40166  
 40167  	save0 = *(*Tsize_t)(unsafe.Pointer(callout_ovector))
 40168  	save1 = *(*Tsize_t)(unsafe.Pointer(callout_ovector + 1*8))
 40169  	*(*Tsize_t)(unsafe.Pointer(callout_ovector)) = libc.AssignPtrUint64(callout_ovector+1*8, libc.CplUint64(uint64(0)))
 40170  	rc = (*struct {
 40171  		f func(*libc.TLS, uintptr, uintptr) int32
 40172  	})(unsafe.Pointer(&struct{ uintptr }{(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcallout})).f(tls, cb, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fcallout_data)
 40173  	*(*Tsize_t)(unsafe.Pointer(callout_ovector)) = save0
 40174  	*(*Tsize_t)(unsafe.Pointer(callout_ovector + 1*8)) = save1
 40175  	(*Tpcre2_callout_block_8)(unsafe.Pointer(cb)).Fcallout_flags = Tuint32_t(0)
 40176  	return rc
 40177  }
 40178  
 40179  // ************************************************
 40180  //
 40181  //          Match a back-reference                *
 40182  //
 40183  
 40184  // This function is called only when it is known that the offset lies within
 40185  // the offsets that have so far been used in the match. Note that in caseless
 40186  // UTF-8 mode, the number of subject bytes matched may be different to the number
 40187  // of reference bytes. (In theory this could also happen in UTF-16 mode, but it
 40188  // seems unlikely.)
 40189  //
 40190  // Arguments:
 40191  //   offset      index into the offset vector
 40192  //   caseless    TRUE if caseless
 40193  //   F           the current backtracking frame pointer
 40194  //   mb          points to match block
 40195  //   lengthptr   pointer for returning the length matched
 40196  //
 40197  // Returns:      = 0 sucessful match; number of code units matched is set
 40198  //               < 0 no match
 40199  //               > 0 partial match
 40200  
 40201  func match_ref(tls *libc.TLS, offset Tsize_t, caseless TBOOL, F uintptr, mb uintptr, lengthptr uintptr) int32 { /* pcre2_match.c:355:1: */
 40202  	var p TPCRE2_SPTR8
 40203  	var length Tsize_t
 40204  	var eptr TPCRE2_SPTR8
 40205  	var eptr_start TPCRE2_SPTR8
 40206  
 40207  	// Deal with an unset group. The default is no match, but there is an option to
 40208  	// match an empty string.
 40209  
 40210  	if offset >= (*Theapframe)(unsafe.Pointer(F)).Foffset_top || *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset)*8)) == libc.CplUint64(uint64(0)) {
 40211  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_MATCH_UNSET_BACKREF != Tuint32_t(0) {
 40212  			*(*Tsize_t)(unsafe.Pointer(lengthptr)) = uint64(0)
 40213  			return 0 // Match
 40214  		} else {
 40215  			return -1
 40216  		} // No match
 40217  	}
 40218  
 40219  	// Separate the caseless and UTF cases for speed.
 40220  
 40221  	eptr = libc.AssignUintptr(&eptr_start, (*Theapframe)(unsafe.Pointer(F)).Feptr)
 40222  	p = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject + uintptr(*(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset)*8)))
 40223  	length = *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset+uint64(1))*8)) - *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset)*8))
 40224  
 40225  	if caseless != 0 {
 40226  		var utf TBOOL = libc.Bool32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UTF != Tuint32_t(0))
 40227  
 40228  		if utf != 0 || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UCP != Tuint32_t(0) {
 40229  			var endptr TPCRE2_SPTR8 = p + uintptr(length)
 40230  
 40231  			// Match characters up to the end of the reference. NOTE: the number of
 40232  			//     code units matched may differ, because in UTF-8 there are some characters
 40233  			//     whose upper and lower case codes have different numbers of bytes. For
 40234  			//     example, U+023A (2 bytes in UTF-8) is the upper case version of U+2C65 (3
 40235  			//     bytes in UTF-8); a sequence of 3 of the former uses 6 bytes, as does a
 40236  			//     sequence of two of the latter. It is important, therefore, to check the
 40237  			//     length along the reference, not along the subject (earlier code did this
 40238  			//     wrong). UCP without uses Unicode properties but without UTF encoding.
 40239  
 40240  			for p < endptr {
 40241  				var c Tuint32_t
 40242  				var d Tuint32_t
 40243  				var ur uintptr
 40244  				if eptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject {
 40245  					return 1
 40246  				} // Partial match
 40247  
 40248  				if utf != 0 {
 40249  					c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&eptr, 1))))
 40250  					if c >= 0xc0 {
 40251  						if c&0x20 == Tuint32_t(0) {
 40252  							c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&eptr, 1))))&0x3f
 40253  						} else if c&0x10 == Tuint32_t(0) {
 40254  							c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f
 40255  							eptr += uintptr(2)
 40256  						} else if c&0x08 == Tuint32_t(0) {
 40257  							c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 2)))&0x3f
 40258  							eptr += uintptr(3)
 40259  						} else if c&0x04 == Tuint32_t(0) {
 40260  							c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 3)))&0x3f
 40261  							eptr += uintptr(4)
 40262  						} else {
 40263  							c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr + 4)))&0x3f
 40264  							eptr += uintptr(5)
 40265  						}
 40266  					}
 40267  
 40268  					d = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))))
 40269  					if d >= 0xc0 {
 40270  						if d&0x20 == Tuint32_t(0) {
 40271  							d = d&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))))&0x3f
 40272  						} else if d&0x10 == Tuint32_t(0) {
 40273  							d = d&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f
 40274  							p += uintptr(2)
 40275  						} else if d&0x08 == Tuint32_t(0) {
 40276  							d = d&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 2)))&0x3f
 40277  							p += uintptr(3)
 40278  						} else if d&0x04 == Tuint32_t(0) {
 40279  							d = d&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 3)))&0x3f
 40280  							p += uintptr(4)
 40281  						} else {
 40282  							d = d&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 4)))&0x3f
 40283  							p += uintptr(5)
 40284  						}
 40285  					}
 40286  
 40287  				} else {
 40288  					c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&eptr, 1))))
 40289  					d = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))))
 40290  				}
 40291  
 40292  				ur = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(d)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(d)%DUCD_BLOCK_SIZE])*12
 40293  				if c != d && c != Tuint32_t(int32(d)+(*Tucd_record)(unsafe.Pointer(ur)).Fother_case) {
 40294  					var pp uintptr = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr((*Tucd_record)(unsafe.Pointer(ur)).Fcaseset)*4
 40295  					for {
 40296  						if c < *(*Tuint32_t)(unsafe.Pointer(pp)) {
 40297  							return -1
 40298  						} // No match
 40299  						if c == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&pp, 4))) {
 40300  							break
 40301  						}
 40302  					}
 40303  				}
 40304  			}
 40305  		} else {
 40306  			for ; length > uint64(0); length-- {
 40307  				var cc Tuint32_t
 40308  				var cp Tuint32_t
 40309  				if eptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject {
 40310  					return 1
 40311  				} // Partial match
 40312  				cc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(eptr)))
 40313  				cp = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))
 40314  				if int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(cp)))) != int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(cc)))) {
 40315  					return -1
 40316  				} // No match
 40317  				p++
 40318  				eptr++
 40319  			}
 40320  		}
 40321  	} else {
 40322  		if int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 {
 40323  			for ; length > uint64(0); length-- {
 40324  				if eptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject {
 40325  					return 1
 40326  				} // Partial match
 40327  				if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1)))) != int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&eptr, 1)))) {
 40328  					return -1
 40329  				} // No match
 40330  			}
 40331  		} else {
 40332  			if Tsize_t((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject)-int64(eptr))/1) < length {
 40333  				return 1
 40334  			} // Partial
 40335  			if libc.Xmemcmp(tls, p, eptr, length*uint64(DPCRE2_CODE_UNIT_WIDTH/8)) != 0 {
 40336  				return -1
 40337  			} // No match
 40338  			eptr += TPCRE2_SPTR8(length)
 40339  		}
 40340  	}
 40341  
 40342  	*(*Tsize_t)(unsafe.Pointer(lengthptr)) = Tsize_t((int64(eptr) - int64(eptr_start)) / 1)
 40343  	return 0 // Match
 40344  }
 40345  
 40346  //*****************************************************************************
 40347  //
 40348  //                    "Recursion" in the match() function
 40349  //
 40350  // The original match() function was highly recursive, but this proved to be the
 40351  // source of a number of problems over the years, mostly because of the relatively
 40352  // small system stacks that are commonly found. As new features were added to
 40353  // patterns, various kludges were invented to reduce the amount of stack used,
 40354  // making the code hard to understand in places.
 40355  //
 40356  // A version did exist that used individual frames on the heap instead of calling
 40357  // match() recursively, but this ran substantially slower. The current version is
 40358  // a refactoring that uses a vector of frames to remember backtracking points.
 40359  // This runs no slower, and possibly even a bit faster than the original recursive
 40360  // implementation. An initial vector of size START_FRAMES_SIZE (enough for maybe
 40361  // 50 frames) is allocated on the system stack. If this is not big enough, the
 40362  // heap is used for a larger vector.
 40363  //
 40364  // *******************************************************************************
 40365  // *****************************************************************************
 40366  
 40367  // ************************************************
 40368  //
 40369  //       Macros for the match() function          *
 40370  //
 40371  
 40372  // These macros pack up tests that are used for partial matching several times
 40373  // in the code. The second one is used when we already know we are past the end of
 40374  // the subject. We set the "hit end" flag if the pointer is at the end of the
 40375  // subject and either (a) the pointer is past the earliest inspected character
 40376  // (i.e. something has been matched, even if not part of the actual matched
 40377  // string), or (b) the pattern contains a lookbehind. These are the conditions for
 40378  // which adding more characters may allow the current match to continue.
 40379  //
 40380  // For hard partial matching, we immediately return a partial match. Otherwise,
 40381  // carrying on means that a complete match on the current subject will be sought.
 40382  // A partial match is returned only if no complete match can be found.
 40383  
 40384  // These macros are used to implement backtracking. They simulate a recursive
 40385  // call to the match() function by means of a local vector of frames which
 40386  // remember the backtracking points.
 40387  
 40388  // ************************************************
 40389  //
 40390  //         Match from current position            *
 40391  //
 40392  
 40393  // This function is called to run one match attempt at a single starting point
 40394  // in the subject.
 40395  //
 40396  // Performance note: It might be tempting to extract commonly used fields from the
 40397  // mb structure (e.g. end_subject) into individual variables to improve
 40398  // performance. Tests using gcc on a SPARC disproved this; in the first case, it
 40399  // made performance worse.
 40400  //
 40401  // Arguments:
 40402  //    start_eptr   starting character in subject
 40403  //    start_ecode  starting position in compiled code
 40404  //    ovector      pointer to the final output vector
 40405  //    oveccount    number of pairs in ovector
 40406  //    top_bracket  number of capturing parentheses in the pattern
 40407  //    frame_size   size of each backtracking frame
 40408  //    mb           pointer to "static" variables block
 40409  //
 40410  // Returns:        MATCH_MATCH if matched            )  these values are >= 0
 40411  //                 MATCH_NOMATCH if failed to match  )
 40412  //                 negative MATCH_xxx value for PRUNE, SKIP, etc
 40413  //                 negative PCRE2_ERROR_xxx value if aborted by an error condition
 40414  //                 (e.g. stopped by repeated call or depth limit)
 40415  
 40416  func match(tls *libc.TLS, start_eptr TPCRE2_SPTR8, start_ecode TPCRE2_SPTR8, ovector uintptr, oveccount Tuint16_t, top_bracket Tuint16_t, frame_size Tsize_t, mb uintptr) int32 { /* pcre2_match.c:583:1: */
 40417  	bp := tls.Alloc(40)
 40418  	defer tls.Free(40)
 40419  
 40420  	// Frame-handling variables
 40421  
 40422  	var F uintptr // Current frame pointer
 40423  	var N uintptr // Temporary frame pointers
 40424  	var P uintptr
 40425  	var assert_accept_frame uintptr // For passing back a frame with captures
 40426  	var frame_copy_size Tsize_t     // Amount to copy when creating a new frame
 40427  
 40428  	// Local variables that do not need to be preserved over calls to RRMATCH().
 40429  
 40430  	var bracode TPCRE2_SPTR8 // Temp pointer to start of group
 40431  	var offset Tsize_t       // Used for group offsets
 40432  	// var length Tsize_t at bp, 8
 40433  	// Used for various length calculations
 40434  
 40435  	var rrc int32      // Return from functions & backtracking "recursions"
 40436  	var proptype int32 // Type of character property
 40437  
 40438  	var i Tuint32_t                // Used for local loops
 40439  	var fc Tuint32_t               // Character values
 40440  	var number Tuint32_t           // Used for group and other numbers
 40441  	var reptype Tuint32_t          // Type of repetition (0 to avoid compiler warning)
 40442  	var group_frame_type Tuint32_t // Specifies type for new group frames
 40443  
 40444  	var condition TBOOL    // Used in conditional groups
 40445  	var cur_is_word TBOOL  // Used in "word" tests
 40446  	var prev_is_word TBOOL // Used in "word" tests
 40447  
 40448  	// UTF and UCP flags
 40449  
 40450  	var utf TBOOL
 40451  	var ucp TBOOL
 40452  	var maxsize Tsize_t
 40453  	var newsize Tsize_t
 40454  	var new uintptr
 40455  	var cc Tuint32_t
 40456  	var dc Tuint32_t
 40457  	var cc1 Tuint32_t
 40458  	var ch Tuint32_t
 40459  	var ch1 Tuint32_t
 40460  	var ch2 Tuint32_t
 40461  	var othercase Tuint32_t
 40462  	var cc2 Tuint32_t
 40463  	var cc3 Tuint32_t
 40464  	var cc4 Tuint32_t
 40465  	var d Tuint32_t
 40466  	var d1 Tuint32_t
 40467  	var len int32
 40468  	var d2 Tuint32_t
 40469  	var d3 Tuint32_t
 40470  	var d4 Tuint32_t
 40471  	var len1 int32
 40472  	var d5 Tuint32_t
 40473  	var len2 int32
 40474  	var len3 int32
 40475  	var ok TBOOL
 40476  	var ok1 TBOOL
 40477  	var cp uintptr
 40478  	var prop uintptr
 40479  	var notmatch TBOOL
 40480  	var chartype int32
 40481  	var ok2 TBOOL
 40482  	var prop1 uintptr
 40483  	var category int32
 40484  	var category1 int32
 40485  	var cp1 uintptr
 40486  	var ok3 TBOOL
 40487  	var prop2 uintptr
 40488  	var notmatch1 TBOOL
 40489  	var cc5 Tuint32_t
 40490  	var cc6 Tuint32_t
 40491  	var cc7 Tuint32_t
 40492  	var cc8 Tuint32_t
 40493  	var cc9 Tuint32_t
 40494  	var chartype1 int32
 40495  	var ok4 TBOOL
 40496  	var prop3 uintptr
 40497  	var category2 int32
 40498  	var category3 int32
 40499  	var cp2 uintptr
 40500  	var ok5 TBOOL
 40501  	var prop4 uintptr
 40502  	var len4 int32
 40503  	var chartype2 int32
 40504  	var len5 int32
 40505  	var len6 int32
 40506  	var len7 int32
 40507  	var len8 int32
 40508  	var ok6 TBOOL
 40509  	var prop5 uintptr
 40510  	var len9 int32
 40511  	var category4 int32
 40512  	var len10 int32
 40513  	var len11 int32
 40514  	var category5 int32
 40515  	var len12 int32
 40516  	var cp3 uintptr
 40517  	var len13 int32
 40518  	var len14 int32
 40519  	var len15 int32
 40520  	var ok7 TBOOL
 40521  	var prop6 uintptr
 40522  	var len16 int32
 40523  	var notmatch2 TBOOL
 40524  	var lgb int32
 40525  	var rgb int32
 40526  	var fptr TPCRE2_SPTR8
 40527  	var len17 int32
 40528  	var gotspace TBOOL
 40529  	var len18 int32
 40530  	var gotspace1 TBOOL
 40531  	var len19 int32
 40532  	var len20 int32
 40533  	var len21 int32
 40534  	var len22 int32
 40535  	var len23 int32
 40536  	var len24 int32
 40537  	var len25 int32
 40538  	var count int32
 40539  	var slot TPCRE2_SPTR8
 40540  	// var slength Tsize_t at bp+8, 8
 40541  
 40542  	// var slength1 Tsize_t at bp+16, 8
 40543  
 40544  	// var slength2 Tsize_t at bp+24, 8
 40545  
 40546  	// var slength3 Tsize_t at bp+32, 8
 40547  
 40548  	var samelengths TBOOL
 40549  	var next_ecode TPCRE2_SPTR8
 40550  	var next_ecode1 TPCRE2_SPTR8
 40551  	var next_ecode2 TPCRE2_SPTR8
 40552  	var count1 int32
 40553  	var slot1 TPCRE2_SPTR8
 40554  	var count2 int32
 40555  	var slot2 TPCRE2_SPTR8
 40556  	var y Tuint32_t
 40557  	var cat int32
 40558  	var lastptr TPCRE2_SPTR8
 40559  	var cat1 int32
 40560  	var nextptr TPCRE2_SPTR8
 40561  	N = uintptr(0)
 40562  	P = uintptr(0)
 40563  	assert_accept_frame = uintptr(0)
 40564  	reptype = Tuint32_t(0)
 40565  	utf = libc.Bool32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UTF != Tuint32_t(0))
 40566  	ucp = libc.Bool32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UCP != Tuint32_t(0))
 40567  
 40568  	// This is the length of the last part of a backtracking frame that must be
 40569  	// copied when a new frame is created.
 40570  
 40571  	frame_copy_size = frame_size - Tsize_t(uintptr(0)+80)
 40572  
 40573  	// Set up the first current frame at the start of the vector, and initialize
 40574  	// fields that are not reset for new frames.
 40575  
 40576  	F = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames
 40577  	(*Theapframe)(unsafe.Pointer(F)).Frdepth = Tuint32_t(0)                                 // "Recursion" depth
 40578  	(*Theapframe)(unsafe.Pointer(F)).Fcapture_last = Tuint32_t(0)                           // Number of most recent capture
 40579  	(*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse = DRECURSE_UNSET                      // Not pattern recursing.
 40580  	(*Theapframe)(unsafe.Pointer(F)).Fstart_match = libc.AssignPtrUintptr(F+80, start_eptr) // Current data pointer and start match
 40581  	(*Theapframe)(unsafe.Pointer(F)).Fmark = uintptr(0)                                     // Most recent mark
 40582  	(*Theapframe)(unsafe.Pointer(F)).Foffset_top = uint64(0)                                // End of captures within the frame
 40583  	(*Theapframe)(unsafe.Pointer(F)).Flast_group_offset = libc.CplUint64(uint64(0))         // Saved frame of most recent group
 40584  	group_frame_type = Tuint32_t(0)                                                         // Not a start of group frame
 40585  	goto NEW_FRAME                                                                          // Start processing with this frame
 40586  
 40587  	// Come back here when we want to create a new frame for remembering a
 40588  	// backtracking point.
 40589  
 40590  MATCH_RECURSE:
 40591  
 40592  	// Set up a new backtracking frame. If the vector is full, get a new one
 40593  	// on the heap, doubling the size, but constrained by the heap limit.
 40594  
 40595  	N = F + uintptr(frame_size)
 40596  	if !(N >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames_top) {
 40597  		goto __1
 40598  	}
 40599  
 40600  	newsize = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size * uint64(2)
 40601  
 40602  	if !(newsize/uint64(1024) > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fheap_limit) {
 40603  		goto __2
 40604  	}
 40605  
 40606  	maxsize = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fheap_limit * uint64(1024) / frame_size * frame_size
 40607  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size >= maxsize) {
 40608  		goto __3
 40609  	}
 40610  	return -63
 40611  __3:
 40612  	;
 40613  	newsize = maxsize
 40614  __2:
 40615  	;
 40616  
 40617  	new = (*struct {
 40618  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 40619  	})(unsafe.Pointer(&struct{ uintptr }{(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmalloc})).f(tls, newsize, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmemory_data)
 40620  	if !(new == uintptr(0)) {
 40621  		goto __4
 40622  	}
 40623  	return -48
 40624  __4:
 40625  	;
 40626  	libc.X__builtin___memcpy_chk(tls, new, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size, libc.X__builtin_object_size(tls, new, 0))
 40627  
 40628  	F = new + uintptr((int64(F)-int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames))/1)
 40629  	N = F + uintptr(frame_size)
 40630  
 40631  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames != (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstack_frames) {
 40632  		goto __5
 40633  	}
 40634  	(*struct {
 40635  		f func(*libc.TLS, uintptr, uintptr)
 40636  	})(unsafe.Pointer(&struct{ uintptr }{(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Ffree})).f(tls, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmemory_data)
 40637  __5:
 40638  	;
 40639  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames = new
 40640  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames_top = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames + uintptr(newsize)
 40641  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size = newsize
 40642  __1:
 40643  	;
 40644  
 40645  	// Copy those fields that must be copied into the new frame, increase the
 40646  	// "recursion" depth (i.e. the new frame's index) and then make the new frame
 40647  	// current.
 40648  
 40649  	libc.X__builtin___memcpy_chk(tls, N+uintptr(uint64(uintptr(0)+80)), F+uintptr(uint64(uintptr(0)+80)), frame_copy_size, libc.X__builtin_object_size(tls, N+uintptr(uint64(uintptr(0)+80)), 0))
 40650  
 40651  	(*Theapframe)(unsafe.Pointer(N)).Frdepth = (*Theapframe)(unsafe.Pointer(F)).Frdepth + Tuint32_t(1)
 40652  	F = N
 40653  
 40654  	// Carry on processing with a new frame.
 40655  
 40656  NEW_FRAME:
 40657  	(*Theapframe)(unsafe.Pointer(F)).Fgroup_frame_type = group_frame_type
 40658  	(*Theapframe)(unsafe.Pointer(F)).Fecode = start_ecode     // Starting code pointer
 40659  	(*Theapframe)(unsafe.Pointer(F)).Fback_frame = frame_size // Default is go back one frame
 40660  
 40661  	// If this is a special type of group frame, remember its offset for quick
 40662  	// access at the end of the group. If this is a recursion, set a new current
 40663  	// recursion value.
 40664  
 40665  	if !(group_frame_type != Tuint32_t(0)) {
 40666  		goto __6
 40667  	}
 40668  
 40669  	(*Theapframe)(unsafe.Pointer(F)).Flast_group_offset = Tsize_t((int64(F) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames)) / 1)
 40670  	if !(group_frame_type&0xffff0000 == DGF_RECURSE) {
 40671  		goto __7
 40672  	}
 40673  	(*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse = group_frame_type & 0x0000ffff
 40674  __7:
 40675  	;
 40676  	group_frame_type = Tuint32_t(0)
 40677  __6:
 40678  	;
 40679  
 40680  	// =========================================================================
 40681  	// This is the main processing loop. First check that we haven't recorded too
 40682  	// many backtracks (search tree is too large), or that we haven't exceeded the
 40683  	// recursive depth limit (used too many backtracking frames). If not, process the
 40684  	// opcodes.
 40685  
 40686  	if !(libc.PostIncUint32(&(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_call_count, 1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_limit) {
 40687  		goto __8
 40688  	}
 40689  	return -47
 40690  __8:
 40691  	;
 40692  	if !((*Theapframe)(unsafe.Pointer(F)).Frdepth >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_limit_depth) {
 40693  		goto __9
 40694  	}
 40695  	return -53
 40696  __9:
 40697  	;
 40698  
 40699  __10:
 40700  
 40701  	(*Theapframe)(unsafe.Pointer(F)).Fop = *(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)) // Cast needed for 16-bit and 32-bit modes
 40702  	switch int32((*Theapframe)(unsafe.Pointer(F)).Fop) {
 40703  	// =====================================================================
 40704  	// Before OP_ACCEPT there may be any number of OP_CLOSE opcodes, to close
 40705  	//     any currently open capturing brackets. Unlike reaching the end of a group,
 40706  	//     where we know the starting frame is at the top of the chained frames, in
 40707  	//     this case we have to search back for the relevant frame in case other types
 40708  	//     of group that use chained frames have intervened. Multiple OP_CLOSEs always
 40709  	//     come innermost first, which matches the chain order. We can ignore this in
 40710  	//     a recursion, because captures are not passed out of recursions.
 40711  
 40712  	case OP_CLOSE:
 40713  		goto __14
 40714  
 40715  	// =====================================================================
 40716  	// Real or forced end of the pattern, assertion, or recursion. In an
 40717  	//     assertion ACCEPT, update the last used pointer and remember the current
 40718  	//     frame so that the captures and mark can be fished out of it.
 40719  
 40720  	case OP_ASSERT_ACCEPT:
 40721  		goto __15
 40722  
 40723  	// If recursing, we have to find the most recent recursion.
 40724  
 40725  	case OP_ACCEPT:
 40726  		goto __16
 40727  	case OP_END:
 40728  		goto __17 // Note: NOT RRETURN
 40729  
 40730  	//=====================================================================
 40731  	// Match any single character type except newline; have to take care with
 40732  	//     CRLF newlines and partial matching.
 40733  
 40734  	case OP_ANY:
 40735  		goto __18
 40736  	// Fall through
 40737  
 40738  	// Match any single character whatsoever.
 40739  
 40740  	case OP_ALLANY:
 40741  		goto __19
 40742  
 40743  	// =====================================================================
 40744  	// Match a single code unit, even in UTF mode. This opcode really does
 40745  	//     match any code unit, even newline. (It really should be called ANYCODEUNIT,
 40746  	//     of course - the byte name is from pre-16 bit days.)
 40747  
 40748  	case OP_ANYBYTE:
 40749  		goto __20
 40750  
 40751  	// =====================================================================
 40752  	// Match a single character, casefully
 40753  
 40754  	case OP_CHAR:
 40755  		goto __21
 40756  
 40757  	// =====================================================================
 40758  	// Match a single character, caselessly. If we are at the end of the
 40759  	//     subject, give up immediately. We get here only when the pattern character
 40760  	//     has at most one other case. Characters with more than two cases are coded
 40761  	//     as OP_PROP with the pseudo-property PT_CLIST.
 40762  
 40763  	case OP_CHARI:
 40764  		goto __22
 40765  
 40766  	// =====================================================================
 40767  	// Match not a single character.
 40768  
 40769  	case OP_NOT:
 40770  		goto __23
 40771  	case OP_NOTI:
 40772  		goto __24
 40773  
 40774  	// =====================================================================
 40775  	// Match a single character repeatedly.
 40776  
 40777  	case OP_EXACT:
 40778  		goto __25
 40779  	case OP_EXACTI:
 40780  		goto __26
 40781  
 40782  	case OP_POSUPTO:
 40783  		goto __27
 40784  	case OP_POSUPTOI:
 40785  		goto __28
 40786  
 40787  	case OP_UPTO:
 40788  		goto __29
 40789  	case OP_UPTOI:
 40790  		goto __30
 40791  
 40792  	case OP_MINUPTO:
 40793  		goto __31
 40794  	case OP_MINUPTOI:
 40795  		goto __32
 40796  
 40797  	case OP_POSSTAR:
 40798  		goto __33
 40799  	case OP_POSSTARI:
 40800  		goto __34
 40801  
 40802  	case OP_POSPLUS:
 40803  		goto __35
 40804  	case OP_POSPLUSI:
 40805  		goto __36
 40806  
 40807  	case OP_POSQUERY:
 40808  		goto __37
 40809  	case OP_POSQUERYI:
 40810  		goto __38
 40811  
 40812  	case OP_STAR:
 40813  		goto __39
 40814  	case OP_STARI:
 40815  		goto __40
 40816  	case OP_MINSTAR:
 40817  		goto __41
 40818  	case OP_MINSTARI:
 40819  		goto __42
 40820  	case OP_PLUS:
 40821  		goto __43
 40822  	case OP_PLUSI:
 40823  		goto __44
 40824  	case OP_MINPLUS:
 40825  		goto __45
 40826  	case OP_MINPLUSI:
 40827  		goto __46
 40828  	case OP_QUERY:
 40829  		goto __47
 40830  	case OP_QUERYI:
 40831  		goto __48
 40832  	case OP_MINQUERY:
 40833  		goto __49
 40834  	case OP_MINQUERYI:
 40835  		goto __50
 40836  
 40837  	// =====================================================================
 40838  	// Match a negated single one-byte character repeatedly. This is almost a
 40839  	//     repeat of the code for a repeated single character, but I haven't found a
 40840  	//     nice way of commoning these up that doesn't require a test of the
 40841  	//     positive/negative option for each character match. Maybe that wouldn't add
 40842  	//     very much to the time taken, but character matching *is* what this is all
 40843  	//     about...
 40844  
 40845  	case OP_NOTEXACT:
 40846  		goto __51
 40847  	case OP_NOTEXACTI:
 40848  		goto __52
 40849  
 40850  	case OP_NOTUPTO:
 40851  		goto __53
 40852  	case OP_NOTUPTOI:
 40853  		goto __54
 40854  
 40855  	case OP_NOTMINUPTO:
 40856  		goto __55
 40857  	case OP_NOTMINUPTOI:
 40858  		goto __56
 40859  
 40860  	case OP_NOTPOSSTAR:
 40861  		goto __57
 40862  	case OP_NOTPOSSTARI:
 40863  		goto __58
 40864  
 40865  	case OP_NOTPOSPLUS:
 40866  		goto __59
 40867  	case OP_NOTPOSPLUSI:
 40868  		goto __60
 40869  
 40870  	case OP_NOTPOSQUERY:
 40871  		goto __61
 40872  	case OP_NOTPOSQUERYI:
 40873  		goto __62
 40874  
 40875  	case OP_NOTPOSUPTO:
 40876  		goto __63
 40877  	case OP_NOTPOSUPTOI:
 40878  		goto __64
 40879  
 40880  	case OP_NOTSTAR:
 40881  		goto __65
 40882  	case OP_NOTSTARI:
 40883  		goto __66
 40884  	case OP_NOTMINSTAR:
 40885  		goto __67
 40886  	case OP_NOTMINSTARI:
 40887  		goto __68
 40888  	case OP_NOTPLUS:
 40889  		goto __69
 40890  	case OP_NOTPLUSI:
 40891  		goto __70
 40892  	case OP_NOTMINPLUS:
 40893  		goto __71
 40894  	case OP_NOTMINPLUSI:
 40895  		goto __72
 40896  	case OP_NOTQUERY:
 40897  		goto __73
 40898  	case OP_NOTQUERYI:
 40899  		goto __74
 40900  	case OP_NOTMINQUERY:
 40901  		goto __75
 40902  	case OP_NOTMINQUERYI:
 40903  		goto __76
 40904  
 40905  	// =====================================================================
 40906  	// Match a bit-mapped character class, possibly repeatedly. These opcodes
 40907  	//     are used when all the characters in the class have values in the range
 40908  	//     0-255, and either the matching is caseful, or the characters are in the
 40909  	//     range 0-127 when UTF processing is enabled. The only difference between
 40910  	//     OP_CLASS and OP_NCLASS occurs when a data character outside the range is
 40911  	//     encountered.
 40912  
 40913  	case OP_NCLASS:
 40914  		goto __77
 40915  	case OP_CLASS:
 40916  		goto __78
 40917  	// Control never gets here
 40918  
 40919  	// =====================================================================
 40920  	// Match an extended character class. In the 8-bit library, this opcode is
 40921  	//     encountered only when UTF-8 mode mode is supported. In the 16-bit and
 40922  	//     32-bit libraries, codepoints greater than 255 may be encountered even when
 40923  	//     UTF is not supported.
 40924  
 40925  	case OP_XCLASS:
 40926  		goto __79
 40927  
 40928  	// =====================================================================
 40929  	// Match various character types when PCRE2_UCP is not set. These opcodes
 40930  	//     are not generated when PCRE2_UCP is set - instead appropriate property
 40931  	//     tests are compiled.
 40932  
 40933  	case OP_NOT_DIGIT:
 40934  		goto __80
 40935  
 40936  	case OP_DIGIT:
 40937  		goto __81
 40938  
 40939  	case OP_NOT_WHITESPACE:
 40940  		goto __82
 40941  
 40942  	case OP_WHITESPACE:
 40943  		goto __83
 40944  
 40945  	case OP_NOT_WORDCHAR:
 40946  		goto __84
 40947  
 40948  	case OP_WORDCHAR:
 40949  		goto __85
 40950  
 40951  	case OP_ANYNL:
 40952  		goto __86
 40953  
 40954  	case OP_NOT_HSPACE:
 40955  		goto __87
 40956  
 40957  	case OP_HSPACE:
 40958  		goto __88
 40959  
 40960  	case OP_NOT_VSPACE:
 40961  		goto __89
 40962  
 40963  	case OP_VSPACE:
 40964  		goto __90
 40965  
 40966  	// =====================================================================
 40967  	// Check the next character by Unicode property. We will get here only
 40968  	//     if the support is in the binary; otherwise a compile-time error occurs.
 40969  
 40970  	case OP_PROP:
 40971  		goto __91
 40972  	case OP_NOTPROP:
 40973  		goto __92
 40974  
 40975  	// =====================================================================
 40976  	// Match an extended Unicode sequence. We will get here only if the support
 40977  	//     is in the binary; otherwise a compile-time error occurs.
 40978  
 40979  	case OP_EXTUNI:
 40980  		goto __93
 40981  
 40982  	// =====================================================================
 40983  	// Match a single character type repeatedly. Note that the property type
 40984  	//     does not need to be in a stack frame as it is not used within an RMATCH()
 40985  	//     loop.
 40986  
 40987  	case OP_TYPEEXACT:
 40988  		goto __94
 40989  
 40990  	case OP_TYPEUPTO:
 40991  		goto __95
 40992  	case OP_TYPEMINUPTO:
 40993  		goto __96
 40994  
 40995  	case OP_TYPEPOSSTAR:
 40996  		goto __97
 40997  
 40998  	case OP_TYPEPOSPLUS:
 40999  		goto __98
 41000  
 41001  	case OP_TYPEPOSQUERY:
 41002  		goto __99
 41003  
 41004  	case OP_TYPEPOSUPTO:
 41005  		goto __100
 41006  
 41007  	case OP_TYPESTAR:
 41008  		goto __101
 41009  	case OP_TYPEMINSTAR:
 41010  		goto __102
 41011  	case OP_TYPEPLUS:
 41012  		goto __103
 41013  	case OP_TYPEMINPLUS:
 41014  		goto __104
 41015  	case OP_TYPEQUERY:
 41016  		goto __105
 41017  	case OP_TYPEMINQUERY:
 41018  		goto __106 // End of repeat character type processing
 41019  
 41020  	// =====================================================================
 41021  	// Match a back reference, possibly repeatedly. Look past the end of the
 41022  	//     item to see if there is repeat information following. The OP_REF and
 41023  	//     OP_REFI opcodes are used for a reference to a numbered group or to a
 41024  	//     non-duplicated named group. For a duplicated named group, OP_DNREF and
 41025  	//     OP_DNREFI are used. In this case we must scan the list of groups to which
 41026  	//     the name refers, and use the first one that is set.
 41027  
 41028  	case OP_DNREF:
 41029  		goto __107
 41030  	case OP_DNREFI:
 41031  		goto __108
 41032  
 41033  	case OP_REF:
 41034  		goto __109
 41035  	case OP_REFI:
 41036  		goto __110
 41037  	// Control never gets here
 41038  
 41039  	// =========================================================================
 41040  	//           Opcodes for the start of various parenthesized items
 41041  	// =========================================================================
 41042  
 41043  	// In all cases, if the result of RMATCH() is MATCH_THEN, check whether the
 41044  	//     (*THEN) is within the current branch by comparing the address of OP_THEN
 41045  	//     that is passed back with the end of the branch. If (*THEN) is within the
 41046  	//     current branch, and the branch is one of two or more alternatives (it
 41047  	//     either starts or ends with OP_ALT), we have reached the limit of THEN's
 41048  	//     action, so convert the return code to NOMATCH, which will cause normal
 41049  	//     backtracking to happen from now on. Otherwise, THEN is passed back to an
 41050  	//     outer alternative. This implements Perl's treatment of parenthesized
 41051  	//     groups, where a group not containing | does not affect the current
 41052  	//     alternative, that is, (X) is NOT the same as (X|(*F)).
 41053  
 41054  	// =====================================================================
 41055  	// BRAZERO, BRAMINZERO and SKIPZERO occur just before a non-possessive
 41056  	//     bracket group, indicating that it may occur zero times. It may repeat
 41057  	//     infinitely, or not at all - i.e. it could be ()* or ()? or even (){0} in
 41058  	//     the pattern. Brackets with fixed upper repeat limits are compiled as a
 41059  	//     number of copies, with the optional ones preceded by BRAZERO or BRAMINZERO.
 41060  	//     Possessive groups with possible zero repeats are preceded by BRAPOSZERO.
 41061  
 41062  	case OP_BRAZERO:
 41063  		goto __111
 41064  
 41065  	case OP_BRAMINZERO:
 41066  		goto __112
 41067  
 41068  	case OP_SKIPZERO:
 41069  		goto __113
 41070  
 41071  	// =====================================================================
 41072  	// Handle possessive brackets with an unlimited repeat. The end of these
 41073  	//     brackets will always be OP_KETRPOS, which returns MATCH_KETRPOS without
 41074  	//     going further in the pattern.
 41075  
 41076  	case OP_BRAPOSZERO:
 41077  		goto __114
 41078  
 41079  	case OP_BRAPOS:
 41080  		goto __115
 41081  	case OP_SBRAPOS:
 41082  		goto __116
 41083  
 41084  	case OP_CBRAPOS:
 41085  		goto __117
 41086  	case OP_SCBRAPOS:
 41087  		goto __118
 41088  
 41089  	// =====================================================================
 41090  	// Handle non-capturing brackets that cannot match an empty string. When we
 41091  	//     get to the final alternative within the brackets, as long as there are no
 41092  	//     THEN's in the pattern, we can optimize by not recording a new backtracking
 41093  	//     point. (Ideally we should test for a THEN within this group, but we don't
 41094  	//     have that information.) Don't do this if we are at the very top level,
 41095  	//     however, because that would make handling assertions and once-only brackets
 41096  	//     messier when there is nothing to go back to.
 41097  
 41098  	case OP_BRA:
 41099  		goto __119
 41100  
 41101  	// =====================================================================
 41102  	// Handle a capturing bracket, other than those that are possessive with an
 41103  	//     unlimited repeat.
 41104  
 41105  	case OP_CBRA:
 41106  		goto __120
 41107  	case OP_SCBRA:
 41108  		goto __121
 41109  
 41110  	// =====================================================================
 41111  	// Atomic groups and non-capturing brackets that can match an empty string
 41112  	//     must record a backtracking point and also set up a chained frame.
 41113  
 41114  	case OP_ONCE:
 41115  		goto __122
 41116  	case OP_SCRIPT_RUN:
 41117  		goto __123
 41118  	case OP_SBRA:
 41119  		goto __124
 41120  	// Control never reaches here.
 41121  
 41122  	// =====================================================================
 41123  	// Recursion either matches the current regex, or some subexpression. The
 41124  	//     offset data is the offset to the starting bracket from the start of the
 41125  	//     whole pattern. (This is so that it works from duplicated subpatterns.)
 41126  
 41127  	case OP_RECURSE:
 41128  		goto __125
 41129  	// Control never reaches here.
 41130  
 41131  	// =====================================================================
 41132  	// Positive assertions are like other groups except that PCRE doesn't allow
 41133  	//     the effect of (*THEN) to escape beyond an assertion; it is therefore
 41134  	//     treated as NOMATCH. (*ACCEPT) is treated as successful assertion, with its
 41135  	//     captures and mark retained. Any other return is an error.
 41136  
 41137  	case OP_ASSERT:
 41138  		goto __126
 41139  	case OP_ASSERTBACK:
 41140  		goto __127
 41141  	case OP_ASSERT_NA:
 41142  		goto __128
 41143  	case OP_ASSERTBACK_NA:
 41144  		goto __129
 41145  
 41146  	// =====================================================================
 41147  	// Handle negative assertions. Loop for each non-matching branch as for
 41148  	//     positive assertions.
 41149  
 41150  	case OP_ASSERT_NOT:
 41151  		goto __130
 41152  	case OP_ASSERTBACK_NOT:
 41153  		goto __131
 41154  
 41155  	// =====================================================================
 41156  	// The callout item calls an external function, if one is provided, passing
 41157  	//     details of the match so far. This is mainly for debugging, though the
 41158  	//     function is able to force a failure.
 41159  
 41160  	case OP_CALLOUT:
 41161  		goto __132
 41162  	case OP_CALLOUT_STR:
 41163  		goto __133
 41164  
 41165  	// =====================================================================
 41166  	// Conditional group: compilation checked that there are no more than two
 41167  	//     branches. If the condition is false, skipping the first branch takes us
 41168  	//     past the end of the item if there is only one branch, but that's exactly
 41169  	//     what we want.
 41170  
 41171  	case OP_COND:
 41172  		goto __134
 41173  	case OP_SCOND:
 41174  		goto __135
 41175  
 41176  		// =========================================================================
 41177  		//                  End of start of parenthesis opcodes
 41178  		// =========================================================================
 41179  
 41180  	// =====================================================================
 41181  	// Move the subject pointer back. This occurs only at the start of each
 41182  	//     branch of a lookbehind assertion. If we are too close to the start to move
 41183  	//     back, fail. When working with UTF-8 we move back a number of characters,
 41184  	//     not bytes.
 41185  
 41186  	case OP_REVERSE:
 41187  		goto __136
 41188  
 41189  	// =====================================================================
 41190  	// An alternation is the end of a branch; scan along to find the end of the
 41191  	//     bracketed group.
 41192  
 41193  	case OP_ALT:
 41194  		goto __137
 41195  
 41196  	// =====================================================================
 41197  	// The end of a parenthesized group. For all but OP_BRA and OP_COND, the
 41198  	//     starting frame was added to the chained frames in order to remember the
 41199  	//     starting subject position for the group.
 41200  
 41201  	case OP_KET:
 41202  		goto __138
 41203  	case OP_KETRMIN:
 41204  		goto __139
 41205  	case OP_KETRMAX:
 41206  		goto __140
 41207  	case OP_KETRPOS:
 41208  		goto __141
 41209  
 41210  	// =====================================================================
 41211  	// Start and end of line assertions, not multiline mode.
 41212  
 41213  	case OP_CIRC:
 41214  		goto __142
 41215  
 41216  	case OP_SOD:
 41217  		goto __143
 41218  
 41219  	// When PCRE2_NOTEOL is unset, assert before the subject end, or a
 41220  	//     terminating newline unless PCRE2_DOLLAR_ENDONLY is set.
 41221  
 41222  	case OP_DOLL:
 41223  		goto __144
 41224  
 41225  	// Fall through
 41226  	// Unconditional end of subject assertion (\z)
 41227  
 41228  	case OP_EOD:
 41229  		goto __145
 41230  
 41231  	// End of subject or ending \n assertion (\Z)
 41232  
 41233  	case OP_EODN:
 41234  		goto __146
 41235  
 41236  	// =====================================================================
 41237  	// Start and end of line assertions, multiline mode.
 41238  
 41239  	// Start of subject unless notbol, or after any newline except for one at
 41240  	//     the very end, unless PCRE2_ALT_CIRCUMFLEX is set.
 41241  
 41242  	case OP_CIRCM:
 41243  		goto __147
 41244  
 41245  	// Assert before any newline, or before end of subject unless noteol is
 41246  	//     set.
 41247  
 41248  	case OP_DOLLM:
 41249  		goto __148
 41250  
 41251  	// =====================================================================
 41252  	// Start of match assertion
 41253  
 41254  	case OP_SOM:
 41255  		goto __149
 41256  
 41257  	// =====================================================================
 41258  	// Reset the start of match point
 41259  
 41260  	case OP_SET_SOM:
 41261  		goto __150
 41262  
 41263  	// =====================================================================
 41264  	// Word boundary assertions. Find out if the previous and current
 41265  	//     characters are "word" characters. It takes a bit more work in UTF mode.
 41266  	//     Characters > 255 are assumed to be "non-word" characters when PCRE2_UCP is
 41267  	//     not set. When it is set, use Unicode properties if available, even when not
 41268  	//     in UTF mode. Remember the earliest and latest consulted characters.
 41269  
 41270  	case OP_NOT_WORD_BOUNDARY:
 41271  		goto __151
 41272  	case OP_WORD_BOUNDARY:
 41273  		goto __152
 41274  
 41275  	// =====================================================================
 41276  	// Backtracking (*VERB)s, with and without arguments. Note that if the
 41277  	//     pattern is successfully matched, we do not come back from RMATCH.
 41278  
 41279  	case OP_MARK:
 41280  		goto __153
 41281  
 41282  	case OP_FAIL:
 41283  		goto __154
 41284  
 41285  	// Record the current recursing group number in mb->verb_current_recurse
 41286  	//     when a backtracking return such as MATCH_COMMIT is given. This enables the
 41287  	//     recurse processing to catch verbs from within the recursion.
 41288  
 41289  	case OP_COMMIT:
 41290  		goto __155
 41291  
 41292  	case OP_COMMIT_ARG:
 41293  		goto __156
 41294  
 41295  	case OP_PRUNE:
 41296  		goto __157
 41297  
 41298  	case OP_PRUNE_ARG:
 41299  		goto __158
 41300  
 41301  	case OP_SKIP:
 41302  		goto __159
 41303  
 41304  	// Note that, for Perl compatibility, SKIP with an argument does NOT set
 41305  	//     nomatch_mark. When a pattern match ends with a SKIP_ARG for which there was
 41306  	//     not a matching mark, we have to re-run the match, ignoring the SKIP_ARG
 41307  	//     that failed and any that precede it (either they also failed, or were not
 41308  	//     triggered). To do this, we maintain a count of executed SKIP_ARGs. If a
 41309  	//     SKIP_ARG gets to top level, the match is re-run with mb->ignore_skip_arg
 41310  	//     set to the count of the one that failed.
 41311  
 41312  	case OP_SKIP_ARG:
 41313  		goto __160
 41314  
 41315  	// For THEN (and THEN_ARG) we pass back the address of the opcode, so that
 41316  	//     the branch in which it occurs can be determined.
 41317  
 41318  	case OP_THEN:
 41319  		goto __161
 41320  
 41321  	case OP_THEN_ARG:
 41322  		goto __162
 41323  
 41324  	// =====================================================================
 41325  	// There's been some horrible disaster. Arrival here can only mean there is
 41326  	//     something seriously wrong in the code above or the OP_xxx definitions.
 41327  
 41328  	default:
 41329  		goto __163
 41330  	}
 41331  	goto __13
 41332  
 41333  	// =====================================================================
 41334  	// Before OP_ACCEPT there may be any number of OP_CLOSE opcodes, to close
 41335  	//     any currently open capturing brackets. Unlike reaching the end of a group,
 41336  	//     where we know the starting frame is at the top of the chained frames, in
 41337  	//     this case we have to search back for the relevant frame in case other types
 41338  	//     of group that use chained frames have intervened. Multiple OP_CLOSEs always
 41339  	//     come innermost first, which matches the chain order. We can ignore this in
 41340  	//     a recursion, because captures are not passed out of recursions.
 41341  
 41342  __14:
 41343  	if !((*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse == DRECURSE_UNSET) {
 41344  		goto __164
 41345  	}
 41346  
 41347  	number = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 41348  	offset = (*Theapframe)(unsafe.Pointer(F)).Flast_group_offset
 41349  __165:
 41350  
 41351  	if !(offset == libc.CplUint64(uint64(0))) {
 41352  		goto __168
 41353  	}
 41354  	return -44
 41355  __168:
 41356  	;
 41357  	N = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames + uintptr(offset)
 41358  	P = N - uintptr(frame_size)
 41359  	if !((*Theapframe)(unsafe.Pointer(N)).Fgroup_frame_type == DGF_CAPTURE|number) {
 41360  		goto __169
 41361  	}
 41362  	goto __167
 41363  __169:
 41364  	;
 41365  	offset = (*Theapframe)(unsafe.Pointer(P)).Flast_group_offset
 41366  	goto __166
 41367  __166:
 41368  	goto __165
 41369  	goto __167
 41370  __167:
 41371  	;
 41372  	offset = Tsize_t(number<<1 - Tuint32_t(2))
 41373  	(*Theapframe)(unsafe.Pointer(F)).Fcapture_last = number
 41374  	*(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset)*8)) = Tsize_t((int64((*Theapframe)(unsafe.Pointer(P)).Feptr) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 41375  	*(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset+uint64(1))*8)) = Tsize_t((int64((*Theapframe)(unsafe.Pointer(F)).Feptr) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 41376  	if !(offset >= (*Theapframe)(unsafe.Pointer(F)).Foffset_top) {
 41377  		goto __170
 41378  	}
 41379  	(*Theapframe)(unsafe.Pointer(F)).Foffset_top = offset + uint64(2)
 41380  __170:
 41381  	;
 41382  __164:
 41383  	;
 41384  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 41385  	goto __13
 41386  
 41387  	// =====================================================================
 41388  	// Real or forced end of the pattern, assertion, or recursion. In an
 41389  	//     assertion ACCEPT, update the last used pointer and remember the current
 41390  	//     frame so that the captures and mark can be fished out of it.
 41391  
 41392  __15:
 41393  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 41394  		goto __171
 41395  	}
 41396  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr
 41397  __171:
 41398  	;
 41399  	assert_accept_frame = F
 41400  	rrc = -999
 41401  	goto RETURN_SWITCH
 41402  
 41403  	// If recursing, we have to find the most recent recursion.
 41404  
 41405  __16:
 41406  __17:
 41407  
 41408  	// Handle end of a recursion.
 41409  
 41410  	if !((*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse != DRECURSE_UNSET) {
 41411  		goto __172
 41412  	}
 41413  
 41414  	offset = (*Theapframe)(unsafe.Pointer(F)).Flast_group_offset
 41415  __173:
 41416  
 41417  	if !(offset == libc.CplUint64(uint64(0))) {
 41418  		goto __176
 41419  	}
 41420  	return -44
 41421  __176:
 41422  	;
 41423  	N = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames + uintptr(offset)
 41424  	P = N - uintptr(frame_size)
 41425  	if !((*Theapframe)(unsafe.Pointer(N)).Fgroup_frame_type&0xffff0000 == DGF_RECURSE) {
 41426  		goto __177
 41427  	}
 41428  	goto __175
 41429  __177:
 41430  	;
 41431  	offset = (*Theapframe)(unsafe.Pointer(P)).Flast_group_offset
 41432  	goto __174
 41433  __174:
 41434  	goto __173
 41435  	goto __175
 41436  __175:
 41437  	;
 41438  
 41439  	// N is now the frame of the recursion; the previous frame is at the
 41440  	//       OP_RECURSE position. Go back there, copying the current subject position
 41441  	//       and mark, and the start_match position (\K might have changed it), and
 41442  	//       then move on past the OP_RECURSE.
 41443  
 41444  	(*Theapframe)(unsafe.Pointer(P)).Feptr = (*Theapframe)(unsafe.Pointer(F)).Feptr
 41445  	(*Theapframe)(unsafe.Pointer(P)).Fmark = (*Theapframe)(unsafe.Pointer(F)).Fmark
 41446  	(*Theapframe)(unsafe.Pointer(P)).Fstart_match = (*Theapframe)(unsafe.Pointer(F)).Fstart_match
 41447  	F = P
 41448  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE)
 41449  	goto __11
 41450  __172:
 41451  	;
 41452  
 41453  	// Not a recursion. Fail for an empty string match if either PCRE2_NOTEMPTY
 41454  	//     is set, or if PCRE2_NOTEMPTY_ATSTART is set and we have matched at the
 41455  	//     start of the subject. In both cases, backtracking will then try other
 41456  	//     alternatives, if any.
 41457  
 41458  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == (*Theapframe)(unsafe.Pointer(F)).Fstart_match && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEMPTY != Tuint32_t(0) || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEMPTY_ATSTART != Tuint32_t(0) && (*Theapframe)(unsafe.Pointer(F)).Fstart_match == (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_offset))) {
 41459  		goto __178
 41460  	}
 41461  	rrc = DMATCH_NOMATCH
 41462  	goto RETURN_SWITCH
 41463  __178:
 41464  	;
 41465  
 41466  	// Also fail if PCRE2_ENDANCHORED is set and the end of the match is not
 41467  	//     the end of the subject. After (*ACCEPT) we fail the entire match (at this
 41468  	//     position) but backtrack on reaching the end of the pattern.
 41469  
 41470  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions|(*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions)&DPCRE2_ENDANCHORED != Tuint32_t(0)) {
 41471  		goto __179
 41472  	}
 41473  
 41474  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_END) {
 41475  		goto __180
 41476  	}
 41477  	rrc = DMATCH_NOMATCH
 41478  	goto RETURN_SWITCH
 41479  __180:
 41480  	;
 41481  
 41482  	return DMATCH_NOMATCH
 41483  __179:
 41484  	;
 41485  
 41486  	// We have a successful match of the whole pattern. Record the result and
 41487  	//     then do a direct return from the function. If there is space in the offset
 41488  	//     vector, set any pairs that follow the highest-numbered captured string but
 41489  	//     are less than the number of capturing groups in the pattern to PCRE2_UNSET.
 41490  	//     It is documented that this happens. "Gaps" are set to PCRE2_UNSET
 41491  	//     dynamically. It is only those at the end that need setting here.
 41492  
 41493  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_match_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr        // Record where we ended
 41494  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_offset_top = (*Theapframe)(unsafe.Pointer(F)).Foffset_top // and how many extracts were taken
 41495  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmark = (*Theapframe)(unsafe.Pointer(F)).Fmark                 // and the last success mark
 41496  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 41497  		goto __181
 41498  	}
 41499  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr
 41500  __181:
 41501  	;
 41502  
 41503  	*(*Tsize_t)(unsafe.Pointer(ovector)) = Tsize_t((int64((*Theapframe)(unsafe.Pointer(F)).Fstart_match) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 41504  	*(*Tsize_t)(unsafe.Pointer(ovector + 1*8)) = Tsize_t((int64((*Theapframe)(unsafe.Pointer(F)).Feptr) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 41505  
 41506  	// Set i to the smaller of the sizes of the external and frame ovectors.
 41507  
 41508  	i = Tuint32_t(2 * func() int32 {
 41509  		if int32(top_bracket)+1 > int32(oveccount) {
 41510  			return int32(oveccount)
 41511  		}
 41512  		return int32(top_bracket) + 1
 41513  	}())
 41514  	libc.X__builtin___memcpy_chk(tls, ovector+uintptr(2)*8, F+128, uint64(i-Tuint32_t(2))*uint64(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, ovector+uintptr(2)*8, 0))
 41515  __182:
 41516  	if !(Tsize_t(libc.PreDecUint32(&i, 1)) >= (*Theapframe)(unsafe.Pointer(F)).Foffset_top+uint64(2)) {
 41517  		goto __183
 41518  	}
 41519  	*(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i)*8)) = libc.CplUint64(uint64(0))
 41520  	goto __182
 41521  __183:
 41522  	;
 41523  	return DMATCH_MATCH // Note: NOT RRETURN
 41524  
 41525  	//=====================================================================
 41526  	// Match any single character type except newline; have to take care with
 41527  	//     CRLF newlines and partial matching.
 41528  
 41529  __18:
 41530  	if !(func() int32 {
 41531  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 41532  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 41533  		}
 41534  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 41535  	}() != 0) {
 41536  		goto __184
 41537  	}
 41538  	rrc = DMATCH_NOMATCH
 41539  	goto RETURN_SWITCH
 41540  __184:
 41541  	;
 41542  
 41543  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr == (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr(1) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 41544  		goto __185
 41545  	}
 41546  
 41547  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 41548  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 41549  		goto __186
 41550  	}
 41551  	return -2
 41552  __186:
 41553  	;
 41554  __185:
 41555  	;
 41556  	// Fall through
 41557  
 41558  	// Match any single character whatsoever.
 41559  
 41560  __19:
 41561  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 41562  		goto __187
 41563  	} /* DO NOT merge the Feptr++ here; it must */
 41564  	// not be updated before SCHECK_PARTIAL.
 41565  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 41566  		goto __188
 41567  	}
 41568  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 41569  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 41570  		goto __189
 41571  	}
 41572  	return -2
 41573  __189:
 41574  	;
 41575  __188:
 41576  	;
 41577  
 41578  	rrc = DMATCH_NOMATCH
 41579  	goto RETURN_SWITCH
 41580  
 41581  __187:
 41582  	;
 41583  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 41584  	if !(utf != 0) {
 41585  		goto __190
 41586  	}
 41587  __191:
 41588  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 41589  		goto __192
 41590  	}
 41591  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 41592  	goto __191
 41593  __192:
 41594  	;
 41595  __190:
 41596  	;
 41597  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 41598  	goto __13
 41599  
 41600  	// =====================================================================
 41601  	// Match a single code unit, even in UTF mode. This opcode really does
 41602  	//     match any code unit, even newline. (It really should be called ANYCODEUNIT,
 41603  	//     of course - the byte name is from pre-16 bit days.)
 41604  
 41605  __20:
 41606  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 41607  		goto __193
 41608  	} /* DO NOT merge the Feptr++ here; it must */
 41609  	// not be updated before SCHECK_PARTIAL.
 41610  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 41611  		goto __194
 41612  	}
 41613  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 41614  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 41615  		goto __195
 41616  	}
 41617  	return -2
 41618  __195:
 41619  	;
 41620  __194:
 41621  	;
 41622  
 41623  	rrc = DMATCH_NOMATCH
 41624  	goto RETURN_SWITCH
 41625  
 41626  __193:
 41627  	;
 41628  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 41629  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 41630  	goto __13
 41631  
 41632  	// =====================================================================
 41633  	// Match a single character, casefully
 41634  
 41635  __21:
 41636  	if !(utf != 0) {
 41637  		goto __196
 41638  	}
 41639  
 41640  	(*Theapframe)(unsafe.Pointer(F)).Flength = uint64(1)
 41641  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 41642  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))
 41643  	if !(fc >= 0xc0) {
 41644  		goto __198
 41645  	}
 41646  	if !(fc&0x20 == Tuint32_t(0)) {
 41647  		goto __199
 41648  	}
 41649  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f
 41650  	(*Theapframe)(unsafe.Pointer(F)).Flength++
 41651  	goto __200
 41652  __199:
 41653  	if !(fc&0x10 == Tuint32_t(0)) {
 41654  		goto __201
 41655  	}
 41656  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f
 41657  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(2)
 41658  	goto __202
 41659  __201:
 41660  	if !(fc&0x08 == Tuint32_t(0)) {
 41661  		goto __203
 41662  	}
 41663  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f
 41664  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(3)
 41665  	goto __204
 41666  __203:
 41667  	if !(fc&0x04 == Tuint32_t(0)) {
 41668  		goto __205
 41669  	}
 41670  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f
 41671  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(4)
 41672  	goto __206
 41673  __205:
 41674  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 5)))&0x3f
 41675  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(5)
 41676  __206:
 41677  	;
 41678  __204:
 41679  	;
 41680  __202:
 41681  	;
 41682  __200:
 41683  	;
 41684  __198:
 41685  	;
 41686  
 41687  	if !((*Theapframe)(unsafe.Pointer(F)).Flength > Tsize_t((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject)-int64((*Theapframe)(unsafe.Pointer(F)).Feptr))/1)) {
 41688  		goto __207
 41689  	}
 41690  
 41691  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 41692  		goto __208
 41693  	}
 41694  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 41695  		goto __209
 41696  	}
 41697  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 41698  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 41699  		goto __210
 41700  	}
 41701  	return -2
 41702  __210:
 41703  	;
 41704  __209:
 41705  	;
 41706  __208:
 41707  	;
 41708  	/* Not SCHECK_PARTIAL() */
 41709  	rrc = DMATCH_NOMATCH
 41710  	goto RETURN_SWITCH
 41711  
 41712  __207:
 41713  	;
 41714  __211:
 41715  	if !((*Theapframe)(unsafe.Pointer(F)).Flength > uint64(0)) {
 41716  		goto __213
 41717  	}
 41718  
 41719  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) != int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))) {
 41720  		goto __214
 41721  	}
 41722  	rrc = DMATCH_NOMATCH
 41723  	goto RETURN_SWITCH
 41724  __214:
 41725  	;
 41726  
 41727  	goto __212
 41728  __212:
 41729  	(*Theapframe)(unsafe.Pointer(F)).Flength--
 41730  	goto __211
 41731  	goto __213
 41732  __213:
 41733  	;
 41734  	goto __197
 41735  __196:
 41736  
 41737  	/* Not UTF mode */
 41738  
 41739  	if !((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject)-int64((*Theapframe)(unsafe.Pointer(F)).Feptr))/1 < int64(1)) {
 41740  		goto __215
 41741  	}
 41742  
 41743  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 41744  		goto __216
 41745  	}
 41746  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 41747  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 41748  		goto __217
 41749  	}
 41750  	return -2
 41751  __217:
 41752  	;
 41753  __216:
 41754  	;
 41755  	/* This one can use SCHECK_PARTIAL() */
 41756  	rrc = DMATCH_NOMATCH
 41757  	goto RETURN_SWITCH
 41758  
 41759  __215:
 41760  	;
 41761  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1))) != int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))) {
 41762  		goto __218
 41763  	}
 41764  	rrc = DMATCH_NOMATCH
 41765  	goto RETURN_SWITCH
 41766  __218:
 41767  	;
 41768  
 41769  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(2)
 41770  __197:
 41771  	;
 41772  	goto __13
 41773  
 41774  	// =====================================================================
 41775  	// Match a single character, caselessly. If we are at the end of the
 41776  	//     subject, give up immediately. We get here only when the pattern character
 41777  	//     has at most one other case. Characters with more than two cases are coded
 41778  	//     as OP_PROP with the pseudo-property PT_CLIST.
 41779  
 41780  __22:
 41781  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 41782  		goto __219
 41783  	}
 41784  
 41785  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 41786  		goto __220
 41787  	}
 41788  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 41789  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 41790  		goto __221
 41791  	}
 41792  	return -2
 41793  __221:
 41794  	;
 41795  __220:
 41796  	;
 41797  
 41798  	rrc = DMATCH_NOMATCH
 41799  	goto RETURN_SWITCH
 41800  
 41801  __219:
 41802  	;
 41803  
 41804  	if !(utf != 0) {
 41805  		goto __222
 41806  	}
 41807  
 41808  	(*Theapframe)(unsafe.Pointer(F)).Flength = uint64(1)
 41809  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 41810  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))
 41811  	if !(fc >= 0xc0) {
 41812  		goto __224
 41813  	}
 41814  	if !(fc&0x20 == Tuint32_t(0)) {
 41815  		goto __225
 41816  	}
 41817  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f
 41818  	(*Theapframe)(unsafe.Pointer(F)).Flength++
 41819  	goto __226
 41820  __225:
 41821  	if !(fc&0x10 == Tuint32_t(0)) {
 41822  		goto __227
 41823  	}
 41824  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f
 41825  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(2)
 41826  	goto __228
 41827  __227:
 41828  	if !(fc&0x08 == Tuint32_t(0)) {
 41829  		goto __229
 41830  	}
 41831  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f
 41832  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(3)
 41833  	goto __230
 41834  __229:
 41835  	if !(fc&0x04 == Tuint32_t(0)) {
 41836  		goto __231
 41837  	}
 41838  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f
 41839  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(4)
 41840  	goto __232
 41841  __231:
 41842  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 5)))&0x3f
 41843  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(5)
 41844  __232:
 41845  	;
 41846  __230:
 41847  	;
 41848  __228:
 41849  	;
 41850  __226:
 41851  	;
 41852  __224:
 41853  	;
 41854  
 41855  	// If the pattern character's value is < 128, we know that its other case
 41856  	//       (if any) is also < 128 (and therefore only one code unit long in all
 41857  	//       code-unit widths), so we can use the fast lookup table. We checked above
 41858  	//       that there is at least one character left in the subject.
 41859  
 41860  	if !(fc < Tuint32_t(128)) {
 41861  		goto __233
 41862  	}
 41863  
 41864  	cc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 41865  	if !(int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(fc)))) != int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(cc))))) {
 41866  		goto __235
 41867  	}
 41868  	rrc = DMATCH_NOMATCH
 41869  	goto RETURN_SWITCH
 41870  __235:
 41871  	;
 41872  
 41873  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 41874  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 41875  	goto __234
 41876  __233:
 41877  
 41878  	dc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 41879  	if !(dc >= 0xc0) {
 41880  		goto __236
 41881  	}
 41882  	if !(dc&0x20 == Tuint32_t(0)) {
 41883  		goto __237
 41884  	}
 41885  	dc = dc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 41886  	goto __238
 41887  __237:
 41888  	if !(dc&0x10 == Tuint32_t(0)) {
 41889  		goto __239
 41890  	}
 41891  	dc = dc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 41892  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 41893  	goto __240
 41894  __239:
 41895  	if !(dc&0x08 == Tuint32_t(0)) {
 41896  		goto __241
 41897  	}
 41898  	dc = dc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 41899  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 41900  	goto __242
 41901  __241:
 41902  	if !(dc&0x04 == Tuint32_t(0)) {
 41903  		goto __243
 41904  	}
 41905  	dc = dc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 41906  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 41907  	goto __244
 41908  __243:
 41909  	dc = dc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 41910  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 41911  __244:
 41912  	;
 41913  __242:
 41914  	;
 41915  __240:
 41916  	;
 41917  __238:
 41918  	;
 41919  __236:
 41920  	;
 41921  
 41922  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Flength)
 41923  	if !(dc != fc && dc != Tuint32_t(int32(fc)+(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fother_case)) {
 41924  		goto __245
 41925  	}
 41926  	rrc = DMATCH_NOMATCH
 41927  	goto RETURN_SWITCH
 41928  __245:
 41929  	;
 41930  
 41931  __234:
 41932  	;
 41933  	goto __223
 41934  __222:
 41935  	if !(ucp != 0) {
 41936  		goto __246
 41937  	}
 41938  
 41939  	cc1 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 41940  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 41941  	if !(fc < Tuint32_t(128)) {
 41942  		goto __248
 41943  	}
 41944  
 41945  	if !(int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(fc)))) != int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(cc1))))) {
 41946  		goto __250
 41947  	}
 41948  	rrc = DMATCH_NOMATCH
 41949  	goto RETURN_SWITCH
 41950  __250:
 41951  	;
 41952  
 41953  	goto __249
 41954  __248:
 41955  
 41956  	if !(cc1 != fc && cc1 != Tuint32_t(int32(fc)+(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fother_case)) {
 41957  		goto __251
 41958  	}
 41959  	rrc = DMATCH_NOMATCH
 41960  	goto RETURN_SWITCH
 41961  __251:
 41962  	;
 41963  
 41964  __249:
 41965  	;
 41966  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 41967  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(2)
 41968  	goto __247
 41969  __246:
 41970  
 41971  	/* Not UTF or UCP mode; use the table for characters < 256. */
 41972  
 41973  	if !(int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))))) !=
 41974  		int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))) {
 41975  		goto __252
 41976  	}
 41977  	rrc = DMATCH_NOMATCH
 41978  	goto RETURN_SWITCH
 41979  __252:
 41980  	;
 41981  
 41982  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 41983  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(2)
 41984  __247:
 41985  	;
 41986  __223:
 41987  	;
 41988  	goto __13
 41989  
 41990  	// =====================================================================
 41991  	// Match not a single character.
 41992  
 41993  __23:
 41994  __24:
 41995  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 41996  		goto __253
 41997  	}
 41998  
 41999  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42000  		goto __254
 42001  	}
 42002  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42003  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42004  		goto __255
 42005  	}
 42006  	return -2
 42007  __255:
 42008  	;
 42009  __254:
 42010  	;
 42011  
 42012  	rrc = DMATCH_NOMATCH
 42013  	goto RETURN_SWITCH
 42014  
 42015  __253:
 42016  	;
 42017  
 42018  	if !(utf != 0) {
 42019  		goto __256
 42020  	}
 42021  
 42022  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 42023  	ch = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1))))
 42024  	if !(ch >= 0xc0) {
 42025  		goto __258
 42026  	}
 42027  	if !(ch&0x20 == Tuint32_t(0)) {
 42028  		goto __259
 42029  	}
 42030  	ch = ch&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1))))&0x3f
 42031  	goto __260
 42032  __259:
 42033  	if !(ch&0x10 == Tuint32_t(0)) {
 42034  		goto __261
 42035  	}
 42036  	ch = ch&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f
 42037  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(2)
 42038  	goto __262
 42039  __261:
 42040  	if !(ch&0x08 == Tuint32_t(0)) {
 42041  		goto __263
 42042  	}
 42043  	ch = ch&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f
 42044  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(3)
 42045  	goto __264
 42046  __263:
 42047  	if !(ch&0x04 == Tuint32_t(0)) {
 42048  		goto __265
 42049  	}
 42050  	ch = ch&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f
 42051  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(4)
 42052  	goto __266
 42053  __265:
 42054  	ch = ch&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f
 42055  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(5)
 42056  __266:
 42057  	;
 42058  __264:
 42059  	;
 42060  __262:
 42061  	;
 42062  __260:
 42063  	;
 42064  __258:
 42065  	;
 42066  
 42067  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 42068  	if !(fc >= 0xc0) {
 42069  		goto __267
 42070  	}
 42071  	if !(fc&0x20 == Tuint32_t(0)) {
 42072  		goto __268
 42073  	}
 42074  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 42075  	goto __269
 42076  __268:
 42077  	if !(fc&0x10 == Tuint32_t(0)) {
 42078  		goto __270
 42079  	}
 42080  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 42081  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 42082  	goto __271
 42083  __270:
 42084  	if !(fc&0x08 == Tuint32_t(0)) {
 42085  		goto __272
 42086  	}
 42087  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 42088  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 42089  	goto __273
 42090  __272:
 42091  	if !(fc&0x04 == Tuint32_t(0)) {
 42092  		goto __274
 42093  	}
 42094  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 42095  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 42096  	goto __275
 42097  __274:
 42098  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 42099  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 42100  __275:
 42101  	;
 42102  __273:
 42103  	;
 42104  __271:
 42105  	;
 42106  __269:
 42107  	;
 42108  __267:
 42109  	;
 42110  
 42111  	if !(ch == fc) {
 42112  		goto __276
 42113  	}
 42114  
 42115  	rrc = DMATCH_NOMATCH
 42116  	goto RETURN_SWITCH
 42117  	// Caseful match
 42118  	goto __277
 42119  __276:
 42120  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_NOTI) {
 42121  		goto __278
 42122  	} /* If caseless */
 42123  
 42124  	if !(ch > Tuint32_t(127)) {
 42125  		goto __279
 42126  	}
 42127  	ch = Tuint32_t(int32(ch) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(ch)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(ch)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 42128  	goto __280
 42129  __279:
 42130  	ch = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc + uintptr(ch))))
 42131  __280:
 42132  	;
 42133  	if !(ch == fc) {
 42134  		goto __281
 42135  	}
 42136  	rrc = DMATCH_NOMATCH
 42137  	goto RETURN_SWITCH
 42138  __281:
 42139  	;
 42140  
 42141  __278:
 42142  	;
 42143  __277:
 42144  	;
 42145  	goto __257
 42146  __256:
 42147  	if !(ucp != 0) {
 42148  		goto __282
 42149  	}
 42150  
 42151  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 42152  	ch1 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 42153  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(2)
 42154  
 42155  	if !(ch1 == fc) {
 42156  		goto __284
 42157  	}
 42158  
 42159  	rrc = DMATCH_NOMATCH
 42160  	goto RETURN_SWITCH
 42161  	// Caseful match
 42162  	goto __285
 42163  __284:
 42164  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_NOTI) {
 42165  		goto __286
 42166  	} /* If caseless */
 42167  
 42168  	if !(ch1 > Tuint32_t(127)) {
 42169  		goto __287
 42170  	}
 42171  	ch1 = Tuint32_t(int32(ch1) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(ch1)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(ch1)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 42172  	goto __288
 42173  __287:
 42174  	ch1 = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc + uintptr(ch1))))
 42175  __288:
 42176  	;
 42177  	if !(ch1 == fc) {
 42178  		goto __289
 42179  	}
 42180  	rrc = DMATCH_NOMATCH
 42181  	goto RETURN_SWITCH
 42182  __289:
 42183  	;
 42184  
 42185  __286:
 42186  	;
 42187  __285:
 42188  	;
 42189  	goto __283
 42190  __282:
 42191  
 42192  	/* Neither UTF nor UCP is set */
 42193  
 42194  	ch2 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 42195  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 42196  	if !(ch2 == fc || int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_NOTI && Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc + uintptr(ch2)))) == fc) {
 42197  		goto __290
 42198  	}
 42199  	rrc = DMATCH_NOMATCH
 42200  	goto RETURN_SWITCH
 42201  __290:
 42202  	;
 42203  
 42204  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(2)
 42205  __283:
 42206  	;
 42207  __257:
 42208  	;
 42209  	goto __13
 42210  
 42211  	// =====================================================================
 42212  	// Match a single character repeatedly.
 42213  
 42214  __25:
 42215  __26:
 42216  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = libc.AssignPtrUint32(F+56+1*4, uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 42217  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 42218  	goto REPEATCHAR
 42219  
 42220  __27:
 42221  __28:
 42222  	reptype = REPTYPE_POS
 42223  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 42224  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 42225  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 42226  	goto REPEATCHAR
 42227  
 42228  __29:
 42229  __30:
 42230  	reptype = REPTYPE_MAX
 42231  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 42232  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 42233  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 42234  	goto REPEATCHAR
 42235  
 42236  __31:
 42237  __32:
 42238  	reptype = REPTYPE_MIN
 42239  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 42240  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 42241  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 42242  	goto REPEATCHAR
 42243  
 42244  __33:
 42245  __34:
 42246  	reptype = REPTYPE_POS
 42247  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 42248  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 42249  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 42250  	goto REPEATCHAR
 42251  
 42252  __35:
 42253  __36:
 42254  	reptype = REPTYPE_POS
 42255  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(1)
 42256  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 42257  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 42258  	goto REPEATCHAR
 42259  
 42260  __37:
 42261  __38:
 42262  	reptype = REPTYPE_POS
 42263  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 42264  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = Tuint32_t(1)
 42265  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 42266  	goto REPEATCHAR
 42267  
 42268  __39:
 42269  __40:
 42270  __41:
 42271  __42:
 42272  __43:
 42273  __44:
 42274  __45:
 42275  __46:
 42276  __47:
 42277  __48:
 42278  __49:
 42279  __50:
 42280  	fc = Tuint32_t(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) - func() int32 {
 42281  		if int32((*Theapframe)(unsafe.Pointer(F)).Fop) < OP_STARI {
 42282  			return OP_STAR
 42283  		}
 42284  		return OP_STARI
 42285  	}())
 42286  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = rep_min[fc]
 42287  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = rep_max[fc]
 42288  	reptype = rep_typ[fc]
 42289  
 42290  	// Common code for all repeated single-character matches. We first check
 42291  	//     for the minimum number of characters. If the minimum equals the maximum, we
 42292  	//     are done. Otherwise, if minimizing, check the rest of the pattern for a
 42293  	//     match; if there isn't one, advance up to the maximum, one character at a
 42294  	//     time.
 42295  	//
 42296  	//     If maximizing, advance up to the maximum number of matching characters,
 42297  	//     until Feptr is past the end of the maximum run. If possessive, we are
 42298  	//     then done (no backing up). Otherwise, match at this position; anything
 42299  	//     other than no match is immediately returned. For nomatch, back up one
 42300  	//     character, unless we are matching \R and the last thing matched was
 42301  	//     \r\n, in which case, back up two code units until we reach the first
 42302  	//     optional character position.
 42303  	//
 42304  	//     The various UTF/non-UTF and caseful/caseless cases are handled separately,
 42305  	//     for speed.
 42306  
 42307  REPEATCHAR:
 42308  	if !(utf != 0) {
 42309  		goto __291
 42310  	}
 42311  
 42312  	(*Theapframe)(unsafe.Pointer(F)).Flength = uint64(1)
 42313  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode
 42314  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))
 42315  	if !(fc >= 0xc0) {
 42316  		goto __293
 42317  	}
 42318  	if !(fc&0x20 == Tuint32_t(0)) {
 42319  		goto __294
 42320  	}
 42321  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f
 42322  	(*Theapframe)(unsafe.Pointer(F)).Flength++
 42323  	goto __295
 42324  __294:
 42325  	if !(fc&0x10 == Tuint32_t(0)) {
 42326  		goto __296
 42327  	}
 42328  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f
 42329  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(2)
 42330  	goto __297
 42331  __296:
 42332  	if !(fc&0x08 == Tuint32_t(0)) {
 42333  		goto __298
 42334  	}
 42335  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f
 42336  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(3)
 42337  	goto __299
 42338  __298:
 42339  	if !(fc&0x04 == Tuint32_t(0)) {
 42340  		goto __300
 42341  	}
 42342  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f
 42343  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(4)
 42344  	goto __301
 42345  __300:
 42346  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 5)))&0x3f
 42347  	*(*Tsize_t)(unsafe.Pointer(F + 24)) += uint64(5)
 42348  __301:
 42349  	;
 42350  __299:
 42351  	;
 42352  __297:
 42353  	;
 42354  __295:
 42355  	;
 42356  __293:
 42357  	;
 42358  
 42359  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Flength)
 42360  
 42361  	// Handle multi-code-unit character matching, caseful and caseless.
 42362  
 42363  	if !((*Theapframe)(unsafe.Pointer(F)).Flength > uint64(1)) {
 42364  		goto __302
 42365  	}
 42366  
 42367  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) >= OP_STARI && libc.AssignUint32(&othercase, Tuint32_t(int32(fc)+(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fother_case)) != fc) {
 42368  		goto __303
 42369  	}
 42370  	(*Theapframe)(unsafe.Pointer(F)).Ftemp_size = Tsize_t(X_pcre2_ord2utf_8(tls, othercase, F+74))
 42371  	goto __304
 42372  __303:
 42373  	(*Theapframe)(unsafe.Pointer(F)).Ftemp_size = uint64(0)
 42374  __304:
 42375  	;
 42376  
 42377  	i = Tuint32_t(1)
 42378  __305:
 42379  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 42380  		goto __307
 42381  	}
 42382  
 42383  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Theapframe)(unsafe.Pointer(F)).Flength) && libc.Xmemcmp(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)), (*Theapframe)(unsafe.Pointer(F)).Flength*uint64(DPCRE2_CODE_UNIT_WIDTH/8)) == 0) {
 42384  		goto __308
 42385  	}
 42386  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Flength)
 42387  	goto __309
 42388  __308:
 42389  	if !((*Theapframe)(unsafe.Pointer(F)).Ftemp_size > uint64(0) && (*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size) && libc.Xmemcmp(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, F+74, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size*uint64(DPCRE2_CODE_UNIT_WIDTH/8)) == 0) {
 42390  		goto __310
 42391  	}
 42392  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Ftemp_size)
 42393  	goto __311
 42394  __310:
 42395  
 42396  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42397  		goto __312
 42398  	}
 42399  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42400  		goto __313
 42401  	}
 42402  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42403  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42404  		goto __314
 42405  	}
 42406  	return -2
 42407  __314:
 42408  	;
 42409  __313:
 42410  	;
 42411  __312:
 42412  	;
 42413  
 42414  	rrc = DMATCH_NOMATCH
 42415  	goto RETURN_SWITCH
 42416  
 42417  __311:
 42418  	;
 42419  __309:
 42420  	;
 42421  	goto __306
 42422  __306:
 42423  	i++
 42424  	goto __305
 42425  	goto __307
 42426  __307:
 42427  	;
 42428  
 42429  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42430  		goto __315
 42431  	}
 42432  	goto __11
 42433  __315:
 42434  	;
 42435  
 42436  	if !(reptype == REPTYPE_MIN) {
 42437  		goto __316
 42438  	}
 42439  
 42440  __318:
 42441  
 42442  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 42443  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM202
 42444  	goto MATCH_RECURSE
 42445  L_RM202:
 42446  	;
 42447  
 42448  	if !(rrc != DMATCH_NOMATCH) {
 42449  		goto __321
 42450  	}
 42451  	rrc = rrc
 42452  	goto RETURN_SWITCH
 42453  __321:
 42454  	;
 42455  
 42456  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42457  		goto __322
 42458  	}
 42459  	rrc = DMATCH_NOMATCH
 42460  	goto RETURN_SWITCH
 42461  __322:
 42462  	;
 42463  
 42464  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Theapframe)(unsafe.Pointer(F)).Flength) && libc.Xmemcmp(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)), (*Theapframe)(unsafe.Pointer(F)).Flength*uint64(DPCRE2_CODE_UNIT_WIDTH/8)) == 0) {
 42465  		goto __323
 42466  	}
 42467  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Flength)
 42468  	goto __324
 42469  __323:
 42470  	if !((*Theapframe)(unsafe.Pointer(F)).Ftemp_size > uint64(0) && (*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size) && libc.Xmemcmp(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, F+74, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size*uint64(DPCRE2_CODE_UNIT_WIDTH/8)) == 0) {
 42471  		goto __325
 42472  	}
 42473  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Ftemp_size)
 42474  	goto __326
 42475  __325:
 42476  
 42477  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42478  		goto __327
 42479  	}
 42480  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42481  		goto __328
 42482  	}
 42483  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42484  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42485  		goto __329
 42486  	}
 42487  	return -2
 42488  __329:
 42489  	;
 42490  __328:
 42491  	;
 42492  __327:
 42493  	;
 42494  
 42495  	rrc = DMATCH_NOMATCH
 42496  	goto RETURN_SWITCH
 42497  
 42498  __326:
 42499  	;
 42500  __324:
 42501  	;
 42502  	goto __319
 42503  __319:
 42504  	goto __318
 42505  	goto __320
 42506  __320:
 42507  	;
 42508  	// Control never gets here
 42509  	goto __317
 42510  __316: /* Maximize */
 42511  
 42512  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr
 42513  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 42514  __330:
 42515  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42516  		goto __332
 42517  	}
 42518  
 42519  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Theapframe)(unsafe.Pointer(F)).Flength) && libc.Xmemcmp(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)), (*Theapframe)(unsafe.Pointer(F)).Flength*uint64(DPCRE2_CODE_UNIT_WIDTH/8)) == 0) {
 42520  		goto __333
 42521  	}
 42522  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Flength)
 42523  	goto __334
 42524  __333:
 42525  	if !((*Theapframe)(unsafe.Pointer(F)).Ftemp_size > uint64(0) && (*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size) && libc.Xmemcmp(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, F+74, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size*uint64(DPCRE2_CODE_UNIT_WIDTH/8)) == 0) {
 42526  		goto __335
 42527  	}
 42528  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Ftemp_size)
 42529  	goto __336
 42530  __335:
 42531  
 42532  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42533  		goto __337
 42534  	}
 42535  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42536  		goto __338
 42537  	}
 42538  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42539  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42540  		goto __339
 42541  	}
 42542  	return -2
 42543  __339:
 42544  	;
 42545  __338:
 42546  	;
 42547  __337:
 42548  	;
 42549  
 42550  	goto __332
 42551  __336:
 42552  	;
 42553  __334:
 42554  	;
 42555  	goto __331
 42556  __331:
 42557  	i++
 42558  	goto __330
 42559  	goto __332
 42560  __332:
 42561  	;
 42562  
 42563  	// After \C in UTF mode, Lstart_eptr might be in the middle of a
 42564  	//           Unicode character. Use <= Lstart_eptr to ensure backtracking doesn't
 42565  	//           go too far.
 42566  
 42567  	if !(reptype != REPTYPE_POS) {
 42568  		goto __340
 42569  	}
 42570  __341:
 42571  
 42572  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 42573  		goto __344
 42574  	}
 42575  	goto __343
 42576  __344:
 42577  	;
 42578  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 42579  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM203
 42580  	goto MATCH_RECURSE
 42581  L_RM203:
 42582  	;
 42583  
 42584  	if !(rrc != DMATCH_NOMATCH) {
 42585  		goto __345
 42586  	}
 42587  	rrc = rrc
 42588  	goto RETURN_SWITCH
 42589  __345:
 42590  	;
 42591  
 42592  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 42593  __346:
 42594  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 42595  		goto __347
 42596  	}
 42597  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 42598  	goto __346
 42599  __347:
 42600  	;
 42601  	goto __342
 42602  __342:
 42603  	goto __341
 42604  	goto __343
 42605  __343:
 42606  	;
 42607  __340:
 42608  	;
 42609  __317:
 42610  	;
 42611  	goto __13 // End of repeated wide character handling
 42612  __302:
 42613  	;
 42614  
 42615  	// Length of UTF character is 1. Put it into the preserved variable and
 42616  	//       fall through to the non-UTF code.
 42617  
 42618  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = fc
 42619  	goto __292
 42620  __291:
 42621  
 42622  	// When not in UTF mode, load a single-code-unit character. Then proceed as
 42623  	//     above, using Unicode casing if either UTF or UCP is set.
 42624  
 42625  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1))))
 42626  __292:
 42627  	;
 42628  
 42629  	// Caseless comparison
 42630  
 42631  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) >= OP_STARI) {
 42632  		goto __348
 42633  	}
 42634  
 42635  	if !(ucp != 0 && !(utf != 0) && *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) > Tuint32_t(127)) {
 42636  		goto __350
 42637  	}
 42638  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) = Tuint32_t(int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)))%DUCD_BLOCK_SIZE])*12)).Fother_case)
 42639  	goto __351
 42640  __350:
 42641  	// Lc will be < 128 in UTF-8 mode.
 42642  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))))))
 42643  __351:
 42644  	;
 42645  
 42646  	i = Tuint32_t(1)
 42647  __352:
 42648  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 42649  		goto __354
 42650  	}
 42651  	// Faster than PCRE2_UCHAR
 42652  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42653  		goto __355
 42654  	}
 42655  
 42656  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42657  		goto __356
 42658  	}
 42659  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42660  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42661  		goto __357
 42662  	}
 42663  	return -2
 42664  __357:
 42665  	;
 42666  __356:
 42667  	;
 42668  
 42669  	rrc = DMATCH_NOMATCH
 42670  	goto RETURN_SWITCH
 42671  
 42672  __355:
 42673  	;
 42674  	cc2 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 42675  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) != cc2 && *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) != cc2) {
 42676  		goto __358
 42677  	}
 42678  	rrc = DMATCH_NOMATCH
 42679  	goto RETURN_SWITCH
 42680  __358:
 42681  	;
 42682  
 42683  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 42684  	goto __353
 42685  __353:
 42686  	i++
 42687  	goto __352
 42688  	goto __354
 42689  __354:
 42690  	;
 42691  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42692  		goto __359
 42693  	}
 42694  	goto __11
 42695  __359:
 42696  	;
 42697  
 42698  	if !(reptype == REPTYPE_MIN) {
 42699  		goto __360
 42700  	}
 42701  
 42702  __362:
 42703  	/* Faster than PCRE2_UCHAR */
 42704  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 42705  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM25
 42706  	goto MATCH_RECURSE
 42707  L_RM25:
 42708  	;
 42709  
 42710  	if !(rrc != DMATCH_NOMATCH) {
 42711  		goto __365
 42712  	}
 42713  	rrc = rrc
 42714  	goto RETURN_SWITCH
 42715  __365:
 42716  	;
 42717  
 42718  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42719  		goto __366
 42720  	}
 42721  	rrc = DMATCH_NOMATCH
 42722  	goto RETURN_SWITCH
 42723  __366:
 42724  	;
 42725  
 42726  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42727  		goto __367
 42728  	}
 42729  
 42730  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42731  		goto __368
 42732  	}
 42733  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42734  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42735  		goto __369
 42736  	}
 42737  	return -2
 42738  __369:
 42739  	;
 42740  __368:
 42741  	;
 42742  
 42743  	rrc = DMATCH_NOMATCH
 42744  	goto RETURN_SWITCH
 42745  
 42746  __367:
 42747  	;
 42748  	cc3 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 42749  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) != cc3 && *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) != cc3) {
 42750  		goto __370
 42751  	}
 42752  	rrc = DMATCH_NOMATCH
 42753  	goto RETURN_SWITCH
 42754  __370:
 42755  	;
 42756  
 42757  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 42758  	goto __363
 42759  __363:
 42760  	goto __362
 42761  	goto __364
 42762  __364:
 42763  	;
 42764  	// Control never gets here
 42765  	goto __361
 42766  __360: /* Maximize */
 42767  
 42768  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr
 42769  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 42770  __371:
 42771  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42772  		goto __373
 42773  	}
 42774  	// Faster than PCRE2_UCHAR
 42775  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42776  		goto __374
 42777  	}
 42778  
 42779  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42780  		goto __375
 42781  	}
 42782  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42783  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42784  		goto __376
 42785  	}
 42786  	return -2
 42787  __376:
 42788  	;
 42789  __375:
 42790  	;
 42791  
 42792  	goto __373
 42793  __374:
 42794  	;
 42795  	cc4 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 42796  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) != cc4 && *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) != cc4) {
 42797  		goto __377
 42798  	}
 42799  	goto __373
 42800  __377:
 42801  	;
 42802  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 42803  	goto __372
 42804  __372:
 42805  	i++
 42806  	goto __371
 42807  	goto __373
 42808  __373:
 42809  	;
 42810  	if !(reptype != REPTYPE_POS) {
 42811  		goto __378
 42812  	}
 42813  __379:
 42814  
 42815  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 42816  		goto __382
 42817  	}
 42818  	goto __381
 42819  __382:
 42820  	;
 42821  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 42822  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM26
 42823  	goto MATCH_RECURSE
 42824  L_RM26:
 42825  	;
 42826  
 42827  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 42828  	if !(rrc != DMATCH_NOMATCH) {
 42829  		goto __383
 42830  	}
 42831  	rrc = rrc
 42832  	goto RETURN_SWITCH
 42833  __383:
 42834  	;
 42835  
 42836  	goto __380
 42837  __380:
 42838  	goto __379
 42839  	goto __381
 42840  __381:
 42841  	;
 42842  __378:
 42843  	;
 42844  __361:
 42845  	;
 42846  	goto __349
 42847  __348:
 42848  
 42849  	i = Tuint32_t(1)
 42850  __384:
 42851  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 42852  		goto __386
 42853  	}
 42854  
 42855  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42856  		goto __387
 42857  	}
 42858  
 42859  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42860  		goto __388
 42861  	}
 42862  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42863  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42864  		goto __389
 42865  	}
 42866  	return -2
 42867  __389:
 42868  	;
 42869  __388:
 42870  	;
 42871  
 42872  	rrc = DMATCH_NOMATCH
 42873  	goto RETURN_SWITCH
 42874  
 42875  __387:
 42876  	;
 42877  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) != Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))) {
 42878  		goto __390
 42879  	}
 42880  	rrc = DMATCH_NOMATCH
 42881  	goto RETURN_SWITCH
 42882  __390:
 42883  	;
 42884  
 42885  	goto __385
 42886  __385:
 42887  	i++
 42888  	goto __384
 42889  	goto __386
 42890  __386:
 42891  	;
 42892  
 42893  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42894  		goto __391
 42895  	}
 42896  	goto __11
 42897  __391:
 42898  	;
 42899  
 42900  	if !(reptype == REPTYPE_MIN) {
 42901  		goto __392
 42902  	}
 42903  
 42904  __394:
 42905  
 42906  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 42907  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM27
 42908  	goto MATCH_RECURSE
 42909  L_RM27:
 42910  	;
 42911  
 42912  	if !(rrc != DMATCH_NOMATCH) {
 42913  		goto __397
 42914  	}
 42915  	rrc = rrc
 42916  	goto RETURN_SWITCH
 42917  __397:
 42918  	;
 42919  
 42920  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42921  		goto __398
 42922  	}
 42923  	rrc = DMATCH_NOMATCH
 42924  	goto RETURN_SWITCH
 42925  __398:
 42926  	;
 42927  
 42928  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42929  		goto __399
 42930  	}
 42931  
 42932  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42933  		goto __400
 42934  	}
 42935  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42936  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42937  		goto __401
 42938  	}
 42939  	return -2
 42940  __401:
 42941  	;
 42942  __400:
 42943  	;
 42944  
 42945  	rrc = DMATCH_NOMATCH
 42946  	goto RETURN_SWITCH
 42947  
 42948  __399:
 42949  	;
 42950  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) != Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))) {
 42951  		goto __402
 42952  	}
 42953  	rrc = DMATCH_NOMATCH
 42954  	goto RETURN_SWITCH
 42955  __402:
 42956  	;
 42957  
 42958  	goto __395
 42959  __395:
 42960  	goto __394
 42961  	goto __396
 42962  __396:
 42963  	;
 42964  	// Control never gets here
 42965  	goto __393
 42966  __392: /* Maximize */
 42967  
 42968  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr
 42969  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 42970  __403:
 42971  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 42972  		goto __405
 42973  	}
 42974  
 42975  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 42976  		goto __406
 42977  	}
 42978  
 42979  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 42980  		goto __407
 42981  	}
 42982  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 42983  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 42984  		goto __408
 42985  	}
 42986  	return -2
 42987  __408:
 42988  	;
 42989  __407:
 42990  	;
 42991  
 42992  	goto __405
 42993  __406:
 42994  	;
 42995  
 42996  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) != Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))) {
 42997  		goto __409
 42998  	}
 42999  	goto __405
 43000  __409:
 43001  	;
 43002  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 43003  	goto __404
 43004  __404:
 43005  	i++
 43006  	goto __403
 43007  	goto __405
 43008  __405:
 43009  	;
 43010  
 43011  	if !(reptype != REPTYPE_POS) {
 43012  		goto __410
 43013  	}
 43014  __411:
 43015  
 43016  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 43017  		goto __414
 43018  	}
 43019  	goto __413
 43020  __414:
 43021  	;
 43022  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 43023  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM28
 43024  	goto MATCH_RECURSE
 43025  L_RM28:
 43026  	;
 43027  
 43028  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 43029  	if !(rrc != DMATCH_NOMATCH) {
 43030  		goto __415
 43031  	}
 43032  	rrc = rrc
 43033  	goto RETURN_SWITCH
 43034  __415:
 43035  	;
 43036  
 43037  	goto __412
 43038  __412:
 43039  	goto __411
 43040  	goto __413
 43041  __413:
 43042  	;
 43043  __410:
 43044  	;
 43045  __393:
 43046  	;
 43047  __349:
 43048  	;
 43049  	goto __13
 43050  
 43051  	// =====================================================================
 43052  	// Match a negated single one-byte character repeatedly. This is almost a
 43053  	//     repeat of the code for a repeated single character, but I haven't found a
 43054  	//     nice way of commoning these up that doesn't require a test of the
 43055  	//     positive/negative option for each character match. Maybe that wouldn't add
 43056  	//     very much to the time taken, but character matching *is* what this is all
 43057  	//     about...
 43058  
 43059  __51:
 43060  __52:
 43061  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = libc.AssignPtrUint32(F+56+1*4, uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 43062  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 43063  	goto REPEATNOTCHAR
 43064  
 43065  __53:
 43066  __54:
 43067  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 43068  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 43069  	reptype = REPTYPE_MAX
 43070  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 43071  	goto REPEATNOTCHAR
 43072  
 43073  __55:
 43074  __56:
 43075  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 43076  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 43077  	reptype = REPTYPE_MIN
 43078  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 43079  	goto REPEATNOTCHAR
 43080  
 43081  __57:
 43082  __58:
 43083  	reptype = REPTYPE_POS
 43084  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 43085  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 43086  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 43087  	goto REPEATNOTCHAR
 43088  
 43089  __59:
 43090  __60:
 43091  	reptype = REPTYPE_POS
 43092  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(1)
 43093  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 43094  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 43095  	goto REPEATNOTCHAR
 43096  
 43097  __61:
 43098  __62:
 43099  	reptype = REPTYPE_POS
 43100  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 43101  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = Tuint32_t(1)
 43102  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 43103  	goto REPEATNOTCHAR
 43104  
 43105  __63:
 43106  __64:
 43107  	reptype = REPTYPE_POS
 43108  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 43109  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 43110  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 43111  	goto REPEATNOTCHAR
 43112  
 43113  __65:
 43114  __66:
 43115  __67:
 43116  __68:
 43117  __69:
 43118  __70:
 43119  __71:
 43120  __72:
 43121  __73:
 43122  __74:
 43123  __75:
 43124  __76:
 43125  	fc = Tuint32_t(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) - func() int32 {
 43126  		if int32((*Theapframe)(unsafe.Pointer(F)).Fop) >= OP_NOTSTARI {
 43127  			return OP_NOTSTARI
 43128  		}
 43129  		return OP_NOTSTAR
 43130  	}())
 43131  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = rep_min[fc]
 43132  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = rep_max[fc]
 43133  	reptype = rep_typ[fc]
 43134  
 43135  	// Common code for all repeated single-character non-matches.
 43136  
 43137  REPEATNOTCHAR:
 43138  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1))))
 43139  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) >= 0xc0) {
 43140  		goto __416
 43141  	}
 43142  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x20 == Tuint32_t(0)) {
 43143  		goto __417
 43144  	}
 43145  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1))))&0x3f
 43146  	goto __418
 43147  __417:
 43148  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x10 == Tuint32_t(0)) {
 43149  		goto __419
 43150  	}
 43151  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f
 43152  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(2)
 43153  	goto __420
 43154  __419:
 43155  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x08 == Tuint32_t(0)) {
 43156  		goto __421
 43157  	}
 43158  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f
 43159  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(3)
 43160  	goto __422
 43161  __421:
 43162  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x04 == Tuint32_t(0)) {
 43163  		goto __423
 43164  	}
 43165  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f
 43166  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(4)
 43167  	goto __424
 43168  __423:
 43169  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))&0x3f
 43170  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(5)
 43171  __424:
 43172  	;
 43173  __422:
 43174  	;
 43175  __420:
 43176  	;
 43177  __418:
 43178  	;
 43179  __416:
 43180  	;
 43181  
 43182  	// The code is duplicated for the caseless and caseful cases, for speed,
 43183  	//     since matching characters is likely to be quite common. First, ensure the
 43184  	//     minimum number of matches are present. If Lmin = Lmax, we are done.
 43185  	//     Otherwise, if minimizing, keep trying the rest of the expression and
 43186  	//     advancing one matching character if failing, up to the maximum.
 43187  	//     Alternatively, if maximizing, find the maximum number of characters and
 43188  	//     work backwards.
 43189  
 43190  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) >= OP_NOTSTARI) {
 43191  		goto __425
 43192  	} /* Caseless */
 43193  
 43194  	if !((utf != 0 || ucp != 0) && *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) > Tuint32_t(127)) {
 43195  		goto __427
 43196  	}
 43197  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) = Tuint32_t(int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)))%DUCD_BLOCK_SIZE])*12)).Fother_case)
 43198  	goto __428
 43199  __427:
 43200  
 43201  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))))))
 43202  __428:
 43203  	; // Other case from table
 43204  
 43205  	if !(utf != 0) {
 43206  		goto __429
 43207  	}
 43208  
 43209  	i = Tuint32_t(1)
 43210  __431:
 43211  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 43212  		goto __433
 43213  	}
 43214  
 43215  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43216  		goto __434
 43217  	}
 43218  
 43219  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43220  		goto __435
 43221  	}
 43222  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43223  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43224  		goto __436
 43225  	}
 43226  	return -2
 43227  __436:
 43228  	;
 43229  __435:
 43230  	;
 43231  
 43232  	rrc = DMATCH_NOMATCH
 43233  	goto RETURN_SWITCH
 43234  
 43235  __434:
 43236  	;
 43237  	d = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 43238  	if !(d >= 0xc0) {
 43239  		goto __437
 43240  	}
 43241  	if !(d&0x20 == Tuint32_t(0)) {
 43242  		goto __438
 43243  	}
 43244  	d = d&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 43245  	goto __439
 43246  __438:
 43247  	if !(d&0x10 == Tuint32_t(0)) {
 43248  		goto __440
 43249  	}
 43250  	d = d&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 43251  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 43252  	goto __441
 43253  __440:
 43254  	if !(d&0x08 == Tuint32_t(0)) {
 43255  		goto __442
 43256  	}
 43257  	d = d&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 43258  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 43259  	goto __443
 43260  __442:
 43261  	if !(d&0x04 == Tuint32_t(0)) {
 43262  		goto __444
 43263  	}
 43264  	d = d&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 43265  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 43266  	goto __445
 43267  __444:
 43268  	d = d&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 43269  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 43270  __445:
 43271  	;
 43272  __443:
 43273  	;
 43274  __441:
 43275  	;
 43276  __439:
 43277  	;
 43278  __437:
 43279  	;
 43280  
 43281  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == d || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) == d) {
 43282  		goto __446
 43283  	}
 43284  	rrc = DMATCH_NOMATCH
 43285  	goto RETURN_SWITCH
 43286  __446:
 43287  	;
 43288  
 43289  	goto __432
 43290  __432:
 43291  	i++
 43292  	goto __431
 43293  	goto __433
 43294  __433:
 43295  	;
 43296  	goto __430
 43297  __429:
 43298  
 43299  	/* Not UTF mode */
 43300  
 43301  	i = Tuint32_t(1)
 43302  __447:
 43303  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 43304  		goto __449
 43305  	}
 43306  
 43307  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43308  		goto __450
 43309  	}
 43310  
 43311  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43312  		goto __451
 43313  	}
 43314  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43315  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43316  		goto __452
 43317  	}
 43318  	return -2
 43319  __452:
 43320  	;
 43321  __451:
 43322  	;
 43323  
 43324  	rrc = DMATCH_NOMATCH
 43325  	goto RETURN_SWITCH
 43326  
 43327  __450:
 43328  	;
 43329  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))) {
 43330  		goto __453
 43331  	}
 43332  	rrc = DMATCH_NOMATCH
 43333  	goto RETURN_SWITCH
 43334  __453:
 43335  	;
 43336  
 43337  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 43338  	goto __448
 43339  __448:
 43340  	i++
 43341  	goto __447
 43342  	goto __449
 43343  __449:
 43344  	;
 43345  __430:
 43346  	;
 43347  
 43348  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 43349  		goto __454
 43350  	}
 43351  	goto __11
 43352  __454:
 43353  	; // Finished for exact count
 43354  
 43355  	if !(reptype == REPTYPE_MIN) {
 43356  		goto __455
 43357  	}
 43358  
 43359  	if !(utf != 0) {
 43360  		goto __457
 43361  	}
 43362  
 43363  __459:
 43364  
 43365  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 43366  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM204
 43367  	goto MATCH_RECURSE
 43368  L_RM204:
 43369  	;
 43370  
 43371  	if !(rrc != DMATCH_NOMATCH) {
 43372  		goto __462
 43373  	}
 43374  	rrc = rrc
 43375  	goto RETURN_SWITCH
 43376  __462:
 43377  	;
 43378  
 43379  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 43380  		goto __463
 43381  	}
 43382  	rrc = DMATCH_NOMATCH
 43383  	goto RETURN_SWITCH
 43384  __463:
 43385  	;
 43386  
 43387  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43388  		goto __464
 43389  	}
 43390  
 43391  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43392  		goto __465
 43393  	}
 43394  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43395  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43396  		goto __466
 43397  	}
 43398  	return -2
 43399  __466:
 43400  	;
 43401  __465:
 43402  	;
 43403  
 43404  	rrc = DMATCH_NOMATCH
 43405  	goto RETURN_SWITCH
 43406  
 43407  __464:
 43408  	;
 43409  	d1 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 43410  	if !(d1 >= 0xc0) {
 43411  		goto __467
 43412  	}
 43413  	if !(d1&0x20 == Tuint32_t(0)) {
 43414  		goto __468
 43415  	}
 43416  	d1 = d1&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 43417  	goto __469
 43418  __468:
 43419  	if !(d1&0x10 == Tuint32_t(0)) {
 43420  		goto __470
 43421  	}
 43422  	d1 = d1&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 43423  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 43424  	goto __471
 43425  __470:
 43426  	if !(d1&0x08 == Tuint32_t(0)) {
 43427  		goto __472
 43428  	}
 43429  	d1 = d1&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 43430  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 43431  	goto __473
 43432  __472:
 43433  	if !(d1&0x04 == Tuint32_t(0)) {
 43434  		goto __474
 43435  	}
 43436  	d1 = d1&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 43437  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 43438  	goto __475
 43439  __474:
 43440  	d1 = d1&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 43441  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 43442  __475:
 43443  	;
 43444  __473:
 43445  	;
 43446  __471:
 43447  	;
 43448  __469:
 43449  	;
 43450  __467:
 43451  	;
 43452  
 43453  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == d1 || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) == d1) {
 43454  		goto __476
 43455  	}
 43456  	rrc = DMATCH_NOMATCH
 43457  	goto RETURN_SWITCH
 43458  __476:
 43459  	;
 43460  
 43461  	goto __460
 43462  __460:
 43463  	goto __459
 43464  	goto __461
 43465  __461:
 43466  	;
 43467  	goto __458
 43468  __457:
 43469  
 43470  	/* Not UTF mode */
 43471  
 43472  __477:
 43473  
 43474  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 43475  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM29
 43476  	goto MATCH_RECURSE
 43477  L_RM29:
 43478  	;
 43479  
 43480  	if !(rrc != DMATCH_NOMATCH) {
 43481  		goto __480
 43482  	}
 43483  	rrc = rrc
 43484  	goto RETURN_SWITCH
 43485  __480:
 43486  	;
 43487  
 43488  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 43489  		goto __481
 43490  	}
 43491  	rrc = DMATCH_NOMATCH
 43492  	goto RETURN_SWITCH
 43493  __481:
 43494  	;
 43495  
 43496  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43497  		goto __482
 43498  	}
 43499  
 43500  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43501  		goto __483
 43502  	}
 43503  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43504  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43505  		goto __484
 43506  	}
 43507  	return -2
 43508  __484:
 43509  	;
 43510  __483:
 43511  	;
 43512  
 43513  	rrc = DMATCH_NOMATCH
 43514  	goto RETURN_SWITCH
 43515  
 43516  __482:
 43517  	;
 43518  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))) {
 43519  		goto __485
 43520  	}
 43521  	rrc = DMATCH_NOMATCH
 43522  	goto RETURN_SWITCH
 43523  __485:
 43524  	;
 43525  
 43526  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 43527  	goto __478
 43528  __478:
 43529  	goto __477
 43530  	goto __479
 43531  __479:
 43532  	;
 43533  __458:
 43534  	;
 43535  	// Control never gets here
 43536  	goto __456
 43537  __455:
 43538  
 43539  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr
 43540  
 43541  	if !(utf != 0) {
 43542  		goto __486
 43543  	}
 43544  
 43545  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 43546  __488:
 43547  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 43548  		goto __490
 43549  	}
 43550  
 43551  	len = 1
 43552  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43553  		goto __491
 43554  	}
 43555  
 43556  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43557  		goto __492
 43558  	}
 43559  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43560  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43561  		goto __493
 43562  	}
 43563  	return -2
 43564  __493:
 43565  	;
 43566  __492:
 43567  	;
 43568  
 43569  	goto __490
 43570  __491:
 43571  	;
 43572  	d2 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 43573  	if !(d2 >= 0xc0) {
 43574  		goto __494
 43575  	}
 43576  	if !(d2&0x20 == Tuint32_t(0)) {
 43577  		goto __495
 43578  	}
 43579  	d2 = d2&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 43580  	len++
 43581  	goto __496
 43582  __495:
 43583  	if !(d2&0x10 == Tuint32_t(0)) {
 43584  		goto __497
 43585  	}
 43586  	d2 = d2&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 43587  	len = len + 2
 43588  	goto __498
 43589  __497:
 43590  	if !(d2&0x08 == Tuint32_t(0)) {
 43591  		goto __499
 43592  	}
 43593  	d2 = d2&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 43594  	len = len + 3
 43595  	goto __500
 43596  __499:
 43597  	if !(d2&0x04 == Tuint32_t(0)) {
 43598  		goto __501
 43599  	}
 43600  	d2 = d2&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 43601  	len = len + 4
 43602  	goto __502
 43603  __501:
 43604  	d2 = d2&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 43605  	len = len + 5
 43606  __502:
 43607  	;
 43608  __500:
 43609  	;
 43610  __498:
 43611  	;
 43612  __496:
 43613  	;
 43614  __494:
 43615  	;
 43616  
 43617  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == d2 || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) == d2) {
 43618  		goto __503
 43619  	}
 43620  	goto __490
 43621  __503:
 43622  	;
 43623  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len)
 43624  	goto __489
 43625  __489:
 43626  	i++
 43627  	goto __488
 43628  	goto __490
 43629  __490:
 43630  	;
 43631  
 43632  	// After \C in UTF mode, Lstart_eptr might be in the middle of a
 43633  	//           Unicode character. Use <= Lstart_eptr to ensure backtracking doesn't
 43634  	//           go too far.
 43635  
 43636  	if !(reptype != REPTYPE_POS) {
 43637  		goto __504
 43638  	}
 43639  __505:
 43640  
 43641  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 43642  		goto __508
 43643  	}
 43644  	goto __507
 43645  __508:
 43646  	;
 43647  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 43648  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM205
 43649  	goto MATCH_RECURSE
 43650  L_RM205:
 43651  	;
 43652  
 43653  	if !(rrc != DMATCH_NOMATCH) {
 43654  		goto __509
 43655  	}
 43656  	rrc = rrc
 43657  	goto RETURN_SWITCH
 43658  __509:
 43659  	;
 43660  
 43661  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 43662  __510:
 43663  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 43664  		goto __511
 43665  	}
 43666  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 43667  	goto __510
 43668  __511:
 43669  	;
 43670  	goto __506
 43671  __506:
 43672  	goto __505
 43673  	goto __507
 43674  __507:
 43675  	;
 43676  __504:
 43677  	;
 43678  	goto __487
 43679  __486:
 43680  
 43681  	/* Not UTF mode */
 43682  
 43683  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 43684  __512:
 43685  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 43686  		goto __514
 43687  	}
 43688  
 43689  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43690  		goto __515
 43691  	}
 43692  
 43693  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43694  		goto __516
 43695  	}
 43696  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43697  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43698  		goto __517
 43699  	}
 43700  	return -2
 43701  __517:
 43702  	;
 43703  __516:
 43704  	;
 43705  
 43706  	goto __514
 43707  __515:
 43708  	;
 43709  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))) {
 43710  		goto __518
 43711  	}
 43712  	goto __514
 43713  __518:
 43714  	;
 43715  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 43716  	goto __513
 43717  __513:
 43718  	i++
 43719  	goto __512
 43720  	goto __514
 43721  __514:
 43722  	;
 43723  	if !(reptype != REPTYPE_POS) {
 43724  		goto __519
 43725  	}
 43726  __520:
 43727  
 43728  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 43729  		goto __523
 43730  	}
 43731  	goto __522
 43732  __523:
 43733  	;
 43734  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 43735  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM30
 43736  	goto MATCH_RECURSE
 43737  L_RM30:
 43738  	;
 43739  
 43740  	if !(rrc != DMATCH_NOMATCH) {
 43741  		goto __524
 43742  	}
 43743  	rrc = rrc
 43744  	goto RETURN_SWITCH
 43745  __524:
 43746  	;
 43747  
 43748  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 43749  	goto __521
 43750  __521:
 43751  	goto __520
 43752  	goto __522
 43753  __522:
 43754  	;
 43755  __519:
 43756  	;
 43757  __487:
 43758  	;
 43759  __456:
 43760  	;
 43761  	goto __426
 43762  __425:
 43763  
 43764  	if !(utf != 0) {
 43765  		goto __525
 43766  	}
 43767  
 43768  	i = Tuint32_t(1)
 43769  __527:
 43770  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 43771  		goto __529
 43772  	}
 43773  
 43774  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43775  		goto __530
 43776  	}
 43777  
 43778  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43779  		goto __531
 43780  	}
 43781  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43782  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43783  		goto __532
 43784  	}
 43785  	return -2
 43786  __532:
 43787  	;
 43788  __531:
 43789  	;
 43790  
 43791  	rrc = DMATCH_NOMATCH
 43792  	goto RETURN_SWITCH
 43793  
 43794  __530:
 43795  	;
 43796  	d3 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 43797  	if !(d3 >= 0xc0) {
 43798  		goto __533
 43799  	}
 43800  	if !(d3&0x20 == Tuint32_t(0)) {
 43801  		goto __534
 43802  	}
 43803  	d3 = d3&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 43804  	goto __535
 43805  __534:
 43806  	if !(d3&0x10 == Tuint32_t(0)) {
 43807  		goto __536
 43808  	}
 43809  	d3 = d3&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 43810  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 43811  	goto __537
 43812  __536:
 43813  	if !(d3&0x08 == Tuint32_t(0)) {
 43814  		goto __538
 43815  	}
 43816  	d3 = d3&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 43817  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 43818  	goto __539
 43819  __538:
 43820  	if !(d3&0x04 == Tuint32_t(0)) {
 43821  		goto __540
 43822  	}
 43823  	d3 = d3&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 43824  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 43825  	goto __541
 43826  __540:
 43827  	d3 = d3&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 43828  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 43829  __541:
 43830  	;
 43831  __539:
 43832  	;
 43833  __537:
 43834  	;
 43835  __535:
 43836  	;
 43837  __533:
 43838  	;
 43839  
 43840  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == d3) {
 43841  		goto __542
 43842  	}
 43843  	rrc = DMATCH_NOMATCH
 43844  	goto RETURN_SWITCH
 43845  __542:
 43846  	;
 43847  
 43848  	goto __528
 43849  __528:
 43850  	i++
 43851  	goto __527
 43852  	goto __529
 43853  __529:
 43854  	;
 43855  	goto __526
 43856  __525:
 43857  	/* Not UTF mode */
 43858  
 43859  	i = Tuint32_t(1)
 43860  __543:
 43861  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 43862  		goto __545
 43863  	}
 43864  
 43865  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43866  		goto __546
 43867  	}
 43868  
 43869  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43870  		goto __547
 43871  	}
 43872  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43873  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43874  		goto __548
 43875  	}
 43876  	return -2
 43877  __548:
 43878  	;
 43879  __547:
 43880  	;
 43881  
 43882  	rrc = DMATCH_NOMATCH
 43883  	goto RETURN_SWITCH
 43884  
 43885  __546:
 43886  	;
 43887  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))) {
 43888  		goto __549
 43889  	}
 43890  	rrc = DMATCH_NOMATCH
 43891  	goto RETURN_SWITCH
 43892  __549:
 43893  	;
 43894  
 43895  	goto __544
 43896  __544:
 43897  	i++
 43898  	goto __543
 43899  	goto __545
 43900  __545:
 43901  	;
 43902  __526:
 43903  	;
 43904  
 43905  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 43906  		goto __550
 43907  	}
 43908  	goto __11
 43909  __550:
 43910  	;
 43911  
 43912  	if !(reptype == REPTYPE_MIN) {
 43913  		goto __551
 43914  	}
 43915  
 43916  	if !(utf != 0) {
 43917  		goto __553
 43918  	}
 43919  
 43920  __555:
 43921  
 43922  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 43923  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM206
 43924  	goto MATCH_RECURSE
 43925  L_RM206:
 43926  	;
 43927  
 43928  	if !(rrc != DMATCH_NOMATCH) {
 43929  		goto __558
 43930  	}
 43931  	rrc = rrc
 43932  	goto RETURN_SWITCH
 43933  __558:
 43934  	;
 43935  
 43936  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 43937  		goto __559
 43938  	}
 43939  	rrc = DMATCH_NOMATCH
 43940  	goto RETURN_SWITCH
 43941  __559:
 43942  	;
 43943  
 43944  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 43945  		goto __560
 43946  	}
 43947  
 43948  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 43949  		goto __561
 43950  	}
 43951  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 43952  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 43953  		goto __562
 43954  	}
 43955  	return -2
 43956  __562:
 43957  	;
 43958  __561:
 43959  	;
 43960  
 43961  	rrc = DMATCH_NOMATCH
 43962  	goto RETURN_SWITCH
 43963  
 43964  __560:
 43965  	;
 43966  	d4 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 43967  	if !(d4 >= 0xc0) {
 43968  		goto __563
 43969  	}
 43970  	if !(d4&0x20 == Tuint32_t(0)) {
 43971  		goto __564
 43972  	}
 43973  	d4 = d4&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 43974  	goto __565
 43975  __564:
 43976  	if !(d4&0x10 == Tuint32_t(0)) {
 43977  		goto __566
 43978  	}
 43979  	d4 = d4&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 43980  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 43981  	goto __567
 43982  __566:
 43983  	if !(d4&0x08 == Tuint32_t(0)) {
 43984  		goto __568
 43985  	}
 43986  	d4 = d4&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 43987  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 43988  	goto __569
 43989  __568:
 43990  	if !(d4&0x04 == Tuint32_t(0)) {
 43991  		goto __570
 43992  	}
 43993  	d4 = d4&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 43994  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 43995  	goto __571
 43996  __570:
 43997  	d4 = d4&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 43998  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 43999  __571:
 44000  	;
 44001  __569:
 44002  	;
 44003  __567:
 44004  	;
 44005  __565:
 44006  	;
 44007  __563:
 44008  	;
 44009  
 44010  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == d4) {
 44011  		goto __572
 44012  	}
 44013  	rrc = DMATCH_NOMATCH
 44014  	goto RETURN_SWITCH
 44015  __572:
 44016  	;
 44017  
 44018  	goto __556
 44019  __556:
 44020  	goto __555
 44021  	goto __557
 44022  __557:
 44023  	;
 44024  	goto __554
 44025  __553:
 44026  	/* Not UTF mode */
 44027  
 44028  __573:
 44029  
 44030  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 44031  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM31
 44032  	goto MATCH_RECURSE
 44033  L_RM31:
 44034  	;
 44035  
 44036  	if !(rrc != DMATCH_NOMATCH) {
 44037  		goto __576
 44038  	}
 44039  	rrc = rrc
 44040  	goto RETURN_SWITCH
 44041  __576:
 44042  	;
 44043  
 44044  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44045  		goto __577
 44046  	}
 44047  	rrc = DMATCH_NOMATCH
 44048  	goto RETURN_SWITCH
 44049  __577:
 44050  	;
 44051  
 44052  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44053  		goto __578
 44054  	}
 44055  
 44056  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44057  		goto __579
 44058  	}
 44059  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44060  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44061  		goto __580
 44062  	}
 44063  	return -2
 44064  __580:
 44065  	;
 44066  __579:
 44067  	;
 44068  
 44069  	rrc = DMATCH_NOMATCH
 44070  	goto RETURN_SWITCH
 44071  
 44072  __578:
 44073  	;
 44074  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))) {
 44075  		goto __581
 44076  	}
 44077  	rrc = DMATCH_NOMATCH
 44078  	goto RETURN_SWITCH
 44079  __581:
 44080  	;
 44081  
 44082  	goto __574
 44083  __574:
 44084  	goto __573
 44085  	goto __575
 44086  __575:
 44087  	;
 44088  __554:
 44089  	;
 44090  	// Control never gets here
 44091  	goto __552
 44092  __551:
 44093  
 44094  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr
 44095  
 44096  	if !(utf != 0) {
 44097  		goto __582
 44098  	}
 44099  
 44100  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 44101  __584:
 44102  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44103  		goto __586
 44104  	}
 44105  
 44106  	len1 = 1
 44107  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44108  		goto __587
 44109  	}
 44110  
 44111  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44112  		goto __588
 44113  	}
 44114  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44115  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44116  		goto __589
 44117  	}
 44118  	return -2
 44119  __589:
 44120  	;
 44121  __588:
 44122  	;
 44123  
 44124  	goto __586
 44125  __587:
 44126  	;
 44127  	d5 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 44128  	if !(d5 >= 0xc0) {
 44129  		goto __590
 44130  	}
 44131  	if !(d5&0x20 == Tuint32_t(0)) {
 44132  		goto __591
 44133  	}
 44134  	d5 = d5&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 44135  	len1++
 44136  	goto __592
 44137  __591:
 44138  	if !(d5&0x10 == Tuint32_t(0)) {
 44139  		goto __593
 44140  	}
 44141  	d5 = d5&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 44142  	len1 = len1 + 2
 44143  	goto __594
 44144  __593:
 44145  	if !(d5&0x08 == Tuint32_t(0)) {
 44146  		goto __595
 44147  	}
 44148  	d5 = d5&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 44149  	len1 = len1 + 3
 44150  	goto __596
 44151  __595:
 44152  	if !(d5&0x04 == Tuint32_t(0)) {
 44153  		goto __597
 44154  	}
 44155  	d5 = d5&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 44156  	len1 = len1 + 4
 44157  	goto __598
 44158  __597:
 44159  	d5 = d5&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 44160  	len1 = len1 + 5
 44161  __598:
 44162  	;
 44163  __596:
 44164  	;
 44165  __594:
 44166  	;
 44167  __592:
 44168  	;
 44169  __590:
 44170  	;
 44171  
 44172  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == d5) {
 44173  		goto __599
 44174  	}
 44175  	goto __586
 44176  __599:
 44177  	;
 44178  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len1)
 44179  	goto __585
 44180  __585:
 44181  	i++
 44182  	goto __584
 44183  	goto __586
 44184  __586:
 44185  	;
 44186  
 44187  	// After \C in UTF mode, Lstart_eptr might be in the middle of a
 44188  	//           Unicode character. Use <= Lstart_eptr to ensure backtracking doesn't
 44189  	//           go too far.
 44190  
 44191  	if !(reptype != REPTYPE_POS) {
 44192  		goto __600
 44193  	}
 44194  __601:
 44195  
 44196  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 44197  		goto __604
 44198  	}
 44199  	goto __603
 44200  __604:
 44201  	;
 44202  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 44203  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM207
 44204  	goto MATCH_RECURSE
 44205  L_RM207:
 44206  	;
 44207  
 44208  	if !(rrc != DMATCH_NOMATCH) {
 44209  		goto __605
 44210  	}
 44211  	rrc = rrc
 44212  	goto RETURN_SWITCH
 44213  __605:
 44214  	;
 44215  
 44216  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 44217  __606:
 44218  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 44219  		goto __607
 44220  	}
 44221  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 44222  	goto __606
 44223  __607:
 44224  	;
 44225  	goto __602
 44226  __602:
 44227  	goto __601
 44228  	goto __603
 44229  __603:
 44230  	;
 44231  __600:
 44232  	;
 44233  	goto __583
 44234  __582:
 44235  	/* Not UTF mode */
 44236  
 44237  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 44238  __608:
 44239  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44240  		goto __610
 44241  	}
 44242  
 44243  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44244  		goto __611
 44245  	}
 44246  
 44247  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44248  		goto __612
 44249  	}
 44250  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44251  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44252  		goto __613
 44253  	}
 44254  	return -2
 44255  __613:
 44256  	;
 44257  __612:
 44258  	;
 44259  
 44260  	goto __610
 44261  __611:
 44262  	;
 44263  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))) {
 44264  		goto __614
 44265  	}
 44266  	goto __610
 44267  __614:
 44268  	;
 44269  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 44270  	goto __609
 44271  __609:
 44272  	i++
 44273  	goto __608
 44274  	goto __610
 44275  __610:
 44276  	;
 44277  	if !(reptype != REPTYPE_POS) {
 44278  		goto __615
 44279  	}
 44280  __616:
 44281  
 44282  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 44283  		goto __619
 44284  	}
 44285  	goto __618
 44286  __619:
 44287  	;
 44288  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 44289  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM32
 44290  	goto MATCH_RECURSE
 44291  L_RM32:
 44292  	;
 44293  
 44294  	if !(rrc != DMATCH_NOMATCH) {
 44295  		goto __620
 44296  	}
 44297  	rrc = rrc
 44298  	goto RETURN_SWITCH
 44299  __620:
 44300  	;
 44301  
 44302  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 44303  	goto __617
 44304  __617:
 44305  	goto __616
 44306  	goto __618
 44307  __618:
 44308  	;
 44309  __615:
 44310  	;
 44311  __583:
 44312  	;
 44313  __552:
 44314  	;
 44315  __426:
 44316  	;
 44317  	goto __13
 44318  
 44319  	// =====================================================================
 44320  	// Match a bit-mapped character class, possibly repeatedly. These opcodes
 44321  	//     are used when all the characters in the class have values in the range
 44322  	//     0-255, and either the matching is caseful, or the characters are in the
 44323  	//     range 0-127 when UTF processing is enabled. The only difference between
 44324  	//     OP_CLASS and OP_NCLASS occurs when a data character outside the range is
 44325  	//     encountered.
 44326  
 44327  __77:
 44328  __78:
 44329  
 44330  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(1) // Save for matching
 44331  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint64(1) + uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0)))) // Advance past the item
 44332  
 44333  	// Look past the end of the item to see if there is repeat information
 44334  	//       following. Then obey similar code to character type repeats.
 44335  
 44336  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) {
 44337  	case OP_CRSTAR:
 44338  		goto __622
 44339  	case OP_CRMINSTAR:
 44340  		goto __623
 44341  	case OP_CRPLUS:
 44342  		goto __624
 44343  	case OP_CRMINPLUS:
 44344  		goto __625
 44345  	case OP_CRQUERY:
 44346  		goto __626
 44347  	case OP_CRMINQUERY:
 44348  		goto __627
 44349  	case OP_CRPOSSTAR:
 44350  		goto __628
 44351  	case OP_CRPOSPLUS:
 44352  		goto __629
 44353  	case OP_CRPOSQUERY:
 44354  		goto __630
 44355  
 44356  	case OP_CRRANGE:
 44357  		goto __631
 44358  	case OP_CRMINRANGE:
 44359  		goto __632
 44360  	case OP_CRPOSRANGE:
 44361  		goto __633
 44362  
 44363  	default:
 44364  		goto __634
 44365  	}
 44366  	goto __621
 44367  
 44368  __622:
 44369  __623:
 44370  __624:
 44371  __625:
 44372  __626:
 44373  __627:
 44374  __628:
 44375  __629:
 44376  __630:
 44377  	fc = Tuint32_t(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) - OP_CRSTAR)
 44378  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = rep_min[fc]
 44379  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = rep_max[fc]
 44380  	reptype = rep_typ[fc]
 44381  	goto __621
 44382  
 44383  __631:
 44384  __632:
 44385  __633:
 44386  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 44387  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4))))
 44388  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) == Tuint32_t(0)) {
 44389  		goto __635
 44390  	}
 44391  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 44392  __635:
 44393  	; // Max 0 => infinity
 44394  	reptype = rep_typ[int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))-OP_CRSTAR]
 44395  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + 2*DIMM2_SIZE)
 44396  	goto __621
 44397  
 44398  __634: // No repeat follows
 44399  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = libc.AssignPtrUint32(F+56+1*4, Tuint32_t(1))
 44400  	goto __621
 44401  __621:
 44402  	;
 44403  
 44404  	// First, ensure the minimum number of matches are present.
 44405  
 44406  	if !(utf != 0) {
 44407  		goto __636
 44408  	}
 44409  
 44410  	i = Tuint32_t(1)
 44411  __638:
 44412  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 44413  		goto __640
 44414  	}
 44415  
 44416  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44417  		goto __641
 44418  	}
 44419  
 44420  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44421  		goto __642
 44422  	}
 44423  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44424  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44425  		goto __643
 44426  	}
 44427  	return -2
 44428  __643:
 44429  	;
 44430  __642:
 44431  	;
 44432  
 44433  	rrc = DMATCH_NOMATCH
 44434  	goto RETURN_SWITCH
 44435  
 44436  __641:
 44437  	;
 44438  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 44439  	if !(fc >= 0xc0) {
 44440  		goto __644
 44441  	}
 44442  	if !(fc&0x20 == Tuint32_t(0)) {
 44443  		goto __645
 44444  	}
 44445  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 44446  	goto __646
 44447  __645:
 44448  	if !(fc&0x10 == Tuint32_t(0)) {
 44449  		goto __647
 44450  	}
 44451  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 44452  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 44453  	goto __648
 44454  __647:
 44455  	if !(fc&0x08 == Tuint32_t(0)) {
 44456  		goto __649
 44457  	}
 44458  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 44459  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 44460  	goto __650
 44461  __649:
 44462  	if !(fc&0x04 == Tuint32_t(0)) {
 44463  		goto __651
 44464  	}
 44465  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 44466  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 44467  	goto __652
 44468  __651:
 44469  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 44470  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 44471  __652:
 44472  	;
 44473  __650:
 44474  	;
 44475  __648:
 44476  	;
 44477  __646:
 44478  	;
 44479  __644:
 44480  	;
 44481  
 44482  	if !(fc > Tuint32_t(255)) {
 44483  		goto __653
 44484  	}
 44485  
 44486  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_CLASS) {
 44487  		goto __655
 44488  	}
 44489  	rrc = DMATCH_NOMATCH
 44490  	goto RETURN_SWITCH
 44491  __655:
 44492  	;
 44493  
 44494  	goto __654
 44495  __653:
 44496  	if !(uint32(*(*uint8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) + uintptr(fc/Tuint32_t(8)))))&(uint32(1)<<(fc&Tuint32_t(7))) == uint32(0)) {
 44497  		goto __656
 44498  	}
 44499  	rrc = DMATCH_NOMATCH
 44500  	goto RETURN_SWITCH
 44501  __656:
 44502  	;
 44503  __654:
 44504  	;
 44505  
 44506  	goto __639
 44507  __639:
 44508  	i++
 44509  	goto __638
 44510  	goto __640
 44511  __640:
 44512  	;
 44513  	goto __637
 44514  __636:
 44515  	/* Not UTF mode */
 44516  
 44517  	i = Tuint32_t(1)
 44518  __657:
 44519  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 44520  		goto __659
 44521  	}
 44522  
 44523  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44524  		goto __660
 44525  	}
 44526  
 44527  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44528  		goto __661
 44529  	}
 44530  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44531  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44532  		goto __662
 44533  	}
 44534  	return -2
 44535  __662:
 44536  	;
 44537  __661:
 44538  	;
 44539  
 44540  	rrc = DMATCH_NOMATCH
 44541  	goto RETURN_SWITCH
 44542  
 44543  __660:
 44544  	;
 44545  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 44546  	if !(uint32(*(*uint8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) + uintptr(fc/Tuint32_t(8)))))&(uint32(1)<<(fc&Tuint32_t(7))) == uint32(0)) {
 44547  		goto __663
 44548  	}
 44549  	rrc = DMATCH_NOMATCH
 44550  	goto RETURN_SWITCH
 44551  __663:
 44552  	;
 44553  
 44554  	goto __658
 44555  __658:
 44556  	i++
 44557  	goto __657
 44558  	goto __659
 44559  __659:
 44560  	;
 44561  __637:
 44562  	;
 44563  
 44564  	// If Lmax == Lmin we are done. Continue with main loop.
 44565  
 44566  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44567  		goto __664
 44568  	}
 44569  	goto __11
 44570  __664:
 44571  	;
 44572  
 44573  	// If minimizing, keep testing the rest of the expression and advancing
 44574  	//       the pointer while it matches the class.
 44575  
 44576  	if !(reptype == REPTYPE_MIN) {
 44577  		goto __665
 44578  	}
 44579  
 44580  	if !(utf != 0) {
 44581  		goto __667
 44582  	}
 44583  
 44584  __669:
 44585  
 44586  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 44587  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM200
 44588  	goto MATCH_RECURSE
 44589  L_RM200:
 44590  	;
 44591  
 44592  	if !(rrc != DMATCH_NOMATCH) {
 44593  		goto __672
 44594  	}
 44595  	rrc = rrc
 44596  	goto RETURN_SWITCH
 44597  __672:
 44598  	;
 44599  
 44600  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44601  		goto __673
 44602  	}
 44603  	rrc = DMATCH_NOMATCH
 44604  	goto RETURN_SWITCH
 44605  __673:
 44606  	;
 44607  
 44608  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44609  		goto __674
 44610  	}
 44611  
 44612  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44613  		goto __675
 44614  	}
 44615  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44616  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44617  		goto __676
 44618  	}
 44619  	return -2
 44620  __676:
 44621  	;
 44622  __675:
 44623  	;
 44624  
 44625  	rrc = DMATCH_NOMATCH
 44626  	goto RETURN_SWITCH
 44627  
 44628  __674:
 44629  	;
 44630  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 44631  	if !(fc >= 0xc0) {
 44632  		goto __677
 44633  	}
 44634  	if !(fc&0x20 == Tuint32_t(0)) {
 44635  		goto __678
 44636  	}
 44637  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 44638  	goto __679
 44639  __678:
 44640  	if !(fc&0x10 == Tuint32_t(0)) {
 44641  		goto __680
 44642  	}
 44643  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 44644  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 44645  	goto __681
 44646  __680:
 44647  	if !(fc&0x08 == Tuint32_t(0)) {
 44648  		goto __682
 44649  	}
 44650  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 44651  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 44652  	goto __683
 44653  __682:
 44654  	if !(fc&0x04 == Tuint32_t(0)) {
 44655  		goto __684
 44656  	}
 44657  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 44658  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 44659  	goto __685
 44660  __684:
 44661  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 44662  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 44663  __685:
 44664  	;
 44665  __683:
 44666  	;
 44667  __681:
 44668  	;
 44669  __679:
 44670  	;
 44671  __677:
 44672  	;
 44673  
 44674  	if !(fc > Tuint32_t(255)) {
 44675  		goto __686
 44676  	}
 44677  
 44678  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_CLASS) {
 44679  		goto __688
 44680  	}
 44681  	rrc = DMATCH_NOMATCH
 44682  	goto RETURN_SWITCH
 44683  __688:
 44684  	;
 44685  
 44686  	goto __687
 44687  __686:
 44688  	if !(uint32(*(*uint8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) + uintptr(fc/Tuint32_t(8)))))&(uint32(1)<<(fc&Tuint32_t(7))) == uint32(0)) {
 44689  		goto __689
 44690  	}
 44691  	rrc = DMATCH_NOMATCH
 44692  	goto RETURN_SWITCH
 44693  __689:
 44694  	;
 44695  __687:
 44696  	;
 44697  
 44698  	goto __670
 44699  __670:
 44700  	goto __669
 44701  	goto __671
 44702  __671:
 44703  	;
 44704  	goto __668
 44705  __667:
 44706  	/* Not UTF mode */
 44707  
 44708  __690:
 44709  
 44710  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 44711  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM23
 44712  	goto MATCH_RECURSE
 44713  L_RM23:
 44714  	;
 44715  
 44716  	if !(rrc != DMATCH_NOMATCH) {
 44717  		goto __693
 44718  	}
 44719  	rrc = rrc
 44720  	goto RETURN_SWITCH
 44721  __693:
 44722  	;
 44723  
 44724  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44725  		goto __694
 44726  	}
 44727  	rrc = DMATCH_NOMATCH
 44728  	goto RETURN_SWITCH
 44729  __694:
 44730  	;
 44731  
 44732  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44733  		goto __695
 44734  	}
 44735  
 44736  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44737  		goto __696
 44738  	}
 44739  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44740  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44741  		goto __697
 44742  	}
 44743  	return -2
 44744  __697:
 44745  	;
 44746  __696:
 44747  	;
 44748  
 44749  	rrc = DMATCH_NOMATCH
 44750  	goto RETURN_SWITCH
 44751  
 44752  __695:
 44753  	;
 44754  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 44755  	if !(uint32(*(*uint8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) + uintptr(fc/Tuint32_t(8)))))&(uint32(1)<<(fc&Tuint32_t(7))) == uint32(0)) {
 44756  		goto __698
 44757  	}
 44758  	rrc = DMATCH_NOMATCH
 44759  	goto RETURN_SWITCH
 44760  __698:
 44761  	;
 44762  
 44763  	goto __691
 44764  __691:
 44765  	goto __690
 44766  	goto __692
 44767  __692:
 44768  	;
 44769  __668:
 44770  	;
 44771  	// Control never gets here
 44772  	goto __666
 44773  __665:
 44774  
 44775  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr
 44776  
 44777  	if !(utf != 0) {
 44778  		goto __699
 44779  	}
 44780  
 44781  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 44782  __701:
 44783  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44784  		goto __703
 44785  	}
 44786  
 44787  	len2 = 1
 44788  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44789  		goto __704
 44790  	}
 44791  
 44792  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44793  		goto __705
 44794  	}
 44795  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44796  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44797  		goto __706
 44798  	}
 44799  	return -2
 44800  __706:
 44801  	;
 44802  __705:
 44803  	;
 44804  
 44805  	goto __703
 44806  __704:
 44807  	;
 44808  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 44809  	if !(fc >= 0xc0) {
 44810  		goto __707
 44811  	}
 44812  	if !(fc&0x20 == Tuint32_t(0)) {
 44813  		goto __708
 44814  	}
 44815  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 44816  	len2++
 44817  	goto __709
 44818  __708:
 44819  	if !(fc&0x10 == Tuint32_t(0)) {
 44820  		goto __710
 44821  	}
 44822  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 44823  	len2 = len2 + 2
 44824  	goto __711
 44825  __710:
 44826  	if !(fc&0x08 == Tuint32_t(0)) {
 44827  		goto __712
 44828  	}
 44829  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 44830  	len2 = len2 + 3
 44831  	goto __713
 44832  __712:
 44833  	if !(fc&0x04 == Tuint32_t(0)) {
 44834  		goto __714
 44835  	}
 44836  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 44837  	len2 = len2 + 4
 44838  	goto __715
 44839  __714:
 44840  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 44841  	len2 = len2 + 5
 44842  __715:
 44843  	;
 44844  __713:
 44845  	;
 44846  __711:
 44847  	;
 44848  __709:
 44849  	;
 44850  __707:
 44851  	;
 44852  
 44853  	if !(fc > Tuint32_t(255)) {
 44854  		goto __716
 44855  	}
 44856  
 44857  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_CLASS) {
 44858  		goto __718
 44859  	}
 44860  	goto __703
 44861  __718:
 44862  	;
 44863  	goto __717
 44864  __716:
 44865  	if !(uint32(*(*uint8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) + uintptr(fc/Tuint32_t(8)))))&(uint32(1)<<(fc&Tuint32_t(7))) == uint32(0)) {
 44866  		goto __719
 44867  	}
 44868  	goto __703
 44869  __719:
 44870  	;
 44871  __717:
 44872  	;
 44873  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len2)
 44874  	goto __702
 44875  __702:
 44876  	i++
 44877  	goto __701
 44878  	goto __703
 44879  __703:
 44880  	;
 44881  
 44882  	if !(reptype == REPTYPE_POS) {
 44883  		goto __720
 44884  	}
 44885  	goto __11
 44886  __720:
 44887  	; // No backtracking
 44888  
 44889  	// After \C in UTF mode, Lstart_eptr might be in the middle of a
 44890  	//           Unicode character. Use <= Lstart_eptr to ensure backtracking doesn't
 44891  	//           go too far.
 44892  
 44893  __721:
 44894  
 44895  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 44896  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM201
 44897  	goto MATCH_RECURSE
 44898  L_RM201:
 44899  	;
 44900  
 44901  	if !(rrc != DMATCH_NOMATCH) {
 44902  		goto __724
 44903  	}
 44904  	rrc = rrc
 44905  	goto RETURN_SWITCH
 44906  __724:
 44907  	;
 44908  
 44909  	if !(libc.PostDecUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1) <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 44910  		goto __725
 44911  	}
 44912  	goto __723
 44913  __725:
 44914  	; // Tried at original position
 44915  __726:
 44916  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 44917  		goto __727
 44918  	}
 44919  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 44920  	goto __726
 44921  __727:
 44922  	;
 44923  	goto __722
 44924  __722:
 44925  	goto __721
 44926  	goto __723
 44927  __723:
 44928  	;
 44929  	goto __700
 44930  __699:
 44931  	/* Not UTF mode */
 44932  
 44933  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 44934  __728:
 44935  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 44936  		goto __730
 44937  	}
 44938  
 44939  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 44940  		goto __731
 44941  	}
 44942  
 44943  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 44944  		goto __732
 44945  	}
 44946  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 44947  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 44948  		goto __733
 44949  	}
 44950  	return -2
 44951  __733:
 44952  	;
 44953  __732:
 44954  	;
 44955  
 44956  	goto __730
 44957  __731:
 44958  	;
 44959  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 44960  	if !(uint32(*(*uint8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) + uintptr(fc/Tuint32_t(8)))))&(uint32(1)<<(fc&Tuint32_t(7))) == uint32(0)) {
 44961  		goto __734
 44962  	}
 44963  	goto __730
 44964  __734:
 44965  	;
 44966  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 44967  	goto __729
 44968  __729:
 44969  	i++
 44970  	goto __728
 44971  	goto __730
 44972  __730:
 44973  	;
 44974  
 44975  	if !(reptype == REPTYPE_POS) {
 44976  		goto __735
 44977  	}
 44978  	goto __11
 44979  __735:
 44980  	; // No backtracking
 44981  
 44982  __736:
 44983  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 44984  		goto __737
 44985  	}
 44986  
 44987  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 44988  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM24
 44989  	goto MATCH_RECURSE
 44990  L_RM24:
 44991  	;
 44992  
 44993  	if !(rrc != DMATCH_NOMATCH) {
 44994  		goto __738
 44995  	}
 44996  	rrc = rrc
 44997  	goto RETURN_SWITCH
 44998  __738:
 44999  	;
 45000  
 45001  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 45002  	goto __736
 45003  __737:
 45004  	;
 45005  __700:
 45006  	;
 45007  
 45008  	rrc = DMATCH_NOMATCH
 45009  	goto RETURN_SWITCH
 45010  
 45011  __666:
 45012  	;
 45013  
 45014  	// Control never gets here
 45015  
 45016  	// =====================================================================
 45017  	// Match an extended character class. In the 8-bit library, this opcode is
 45018  	//     encountered only when UTF-8 mode mode is supported. In the 16-bit and
 45019  	//     32-bit libraries, codepoints greater than 255 may be encountered even when
 45020  	//     UTF is not supported.
 45021  
 45022  __79:
 45023  
 45024  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(1) + uintptr(DLINK_SIZE) // Save for matching
 45025  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))) // Advance past the item
 45026  
 45027  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) {
 45028  	case OP_CRSTAR:
 45029  		goto __740
 45030  	case OP_CRMINSTAR:
 45031  		goto __741
 45032  	case OP_CRPLUS:
 45033  		goto __742
 45034  	case OP_CRMINPLUS:
 45035  		goto __743
 45036  	case OP_CRQUERY:
 45037  		goto __744
 45038  	case OP_CRMINQUERY:
 45039  		goto __745
 45040  	case OP_CRPOSSTAR:
 45041  		goto __746
 45042  	case OP_CRPOSPLUS:
 45043  		goto __747
 45044  	case OP_CRPOSQUERY:
 45045  		goto __748
 45046  
 45047  	case OP_CRRANGE:
 45048  		goto __749
 45049  	case OP_CRMINRANGE:
 45050  		goto __750
 45051  	case OP_CRPOSRANGE:
 45052  		goto __751
 45053  
 45054  	default:
 45055  		goto __752
 45056  	}
 45057  	goto __739
 45058  
 45059  __740:
 45060  __741:
 45061  __742:
 45062  __743:
 45063  __744:
 45064  __745:
 45065  __746:
 45066  __747:
 45067  __748:
 45068  	fc = Tuint32_t(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) - OP_CRSTAR)
 45069  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = rep_min[fc]
 45070  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = rep_max[fc]
 45071  	reptype = rep_typ[fc]
 45072  	goto __739
 45073  
 45074  __749:
 45075  __750:
 45076  __751:
 45077  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 45078  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4))))
 45079  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) == Tuint32_t(0)) {
 45080  		goto __753
 45081  	}
 45082  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 45083  __753:
 45084  	; // Max 0 => infinity
 45085  	reptype = rep_typ[int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))-OP_CRSTAR]
 45086  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + 2*DIMM2_SIZE)
 45087  	goto __739
 45088  
 45089  __752: // No repeat follows
 45090  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = libc.AssignPtrUint32(F+56+1*4, Tuint32_t(1))
 45091  	goto __739
 45092  __739:
 45093  	;
 45094  
 45095  	// First, ensure the minimum number of matches are present.
 45096  
 45097  	i = Tuint32_t(1)
 45098  __754:
 45099  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 45100  		goto __756
 45101  	}
 45102  
 45103  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45104  		goto __757
 45105  	}
 45106  
 45107  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45108  		goto __758
 45109  	}
 45110  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45111  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45112  		goto __759
 45113  	}
 45114  	return -2
 45115  __759:
 45116  	;
 45117  __758:
 45118  	;
 45119  
 45120  	rrc = DMATCH_NOMATCH
 45121  	goto RETURN_SWITCH
 45122  
 45123  __757:
 45124  	;
 45125  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45126  	if !(utf != 0 && fc >= 0xc0) {
 45127  		goto __760
 45128  	}
 45129  	if !(fc&0x20 == Tuint32_t(0)) {
 45130  		goto __761
 45131  	}
 45132  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45133  	goto __762
 45134  __761:
 45135  	if !(fc&0x10 == Tuint32_t(0)) {
 45136  		goto __763
 45137  	}
 45138  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45139  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45140  	goto __764
 45141  __763:
 45142  	if !(fc&0x08 == Tuint32_t(0)) {
 45143  		goto __765
 45144  	}
 45145  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45146  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45147  	goto __766
 45148  __765:
 45149  	if !(fc&0x04 == Tuint32_t(0)) {
 45150  		goto __767
 45151  	}
 45152  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45153  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45154  	goto __768
 45155  __767:
 45156  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45157  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45158  __768:
 45159  	;
 45160  __766:
 45161  	;
 45162  __764:
 45163  	;
 45164  __762:
 45165  	;
 45166  __760:
 45167  	;
 45168  
 45169  	if !!(X_pcre2_xclass_8(tls, fc, *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)), utf) != 0) {
 45170  		goto __769
 45171  	}
 45172  	rrc = DMATCH_NOMATCH
 45173  	goto RETURN_SWITCH
 45174  __769:
 45175  	;
 45176  
 45177  	goto __755
 45178  __755:
 45179  	i++
 45180  	goto __754
 45181  	goto __756
 45182  __756:
 45183  	;
 45184  
 45185  	// If Lmax == Lmin we can just continue with the main loop.
 45186  
 45187  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 45188  		goto __770
 45189  	}
 45190  	goto __11
 45191  __770:
 45192  	;
 45193  
 45194  	// If minimizing, keep testing the rest of the expression and advancing
 45195  	//       the pointer while it matches the class.
 45196  
 45197  	if !(reptype == REPTYPE_MIN) {
 45198  		goto __771
 45199  	}
 45200  
 45201  __773:
 45202  
 45203  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 45204  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM100
 45205  	goto MATCH_RECURSE
 45206  L_RM100:
 45207  	;
 45208  
 45209  	if !(rrc != DMATCH_NOMATCH) {
 45210  		goto __776
 45211  	}
 45212  	rrc = rrc
 45213  	goto RETURN_SWITCH
 45214  __776:
 45215  	;
 45216  
 45217  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 45218  		goto __777
 45219  	}
 45220  	rrc = DMATCH_NOMATCH
 45221  	goto RETURN_SWITCH
 45222  __777:
 45223  	;
 45224  
 45225  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45226  		goto __778
 45227  	}
 45228  
 45229  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45230  		goto __779
 45231  	}
 45232  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45233  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45234  		goto __780
 45235  	}
 45236  	return -2
 45237  __780:
 45238  	;
 45239  __779:
 45240  	;
 45241  
 45242  	rrc = DMATCH_NOMATCH
 45243  	goto RETURN_SWITCH
 45244  
 45245  __778:
 45246  	;
 45247  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45248  	if !(utf != 0 && fc >= 0xc0) {
 45249  		goto __781
 45250  	}
 45251  	if !(fc&0x20 == Tuint32_t(0)) {
 45252  		goto __782
 45253  	}
 45254  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45255  	goto __783
 45256  __782:
 45257  	if !(fc&0x10 == Tuint32_t(0)) {
 45258  		goto __784
 45259  	}
 45260  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45261  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45262  	goto __785
 45263  __784:
 45264  	if !(fc&0x08 == Tuint32_t(0)) {
 45265  		goto __786
 45266  	}
 45267  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45268  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45269  	goto __787
 45270  __786:
 45271  	if !(fc&0x04 == Tuint32_t(0)) {
 45272  		goto __788
 45273  	}
 45274  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45275  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45276  	goto __789
 45277  __788:
 45278  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45279  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45280  __789:
 45281  	;
 45282  __787:
 45283  	;
 45284  __785:
 45285  	;
 45286  __783:
 45287  	;
 45288  __781:
 45289  	;
 45290  
 45291  	if !!(X_pcre2_xclass_8(tls, fc, *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)), utf) != 0) {
 45292  		goto __790
 45293  	}
 45294  	rrc = DMATCH_NOMATCH
 45295  	goto RETURN_SWITCH
 45296  __790:
 45297  	;
 45298  
 45299  	goto __774
 45300  __774:
 45301  	goto __773
 45302  	goto __775
 45303  __775:
 45304  	;
 45305  	// Control never gets here
 45306  	goto __772
 45307  __771:
 45308  
 45309  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr
 45310  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 45311  __791:
 45312  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 45313  		goto __793
 45314  	}
 45315  
 45316  	len3 = 1
 45317  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45318  		goto __794
 45319  	}
 45320  
 45321  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45322  		goto __795
 45323  	}
 45324  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45325  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45326  		goto __796
 45327  	}
 45328  	return -2
 45329  __796:
 45330  	;
 45331  __795:
 45332  	;
 45333  
 45334  	goto __793
 45335  __794:
 45336  	;
 45337  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 45338  	if !(utf != 0 && fc >= 0xc0) {
 45339  		goto __797
 45340  	}
 45341  	if !(fc&0x20 == Tuint32_t(0)) {
 45342  		goto __798
 45343  	}
 45344  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45345  	len3++
 45346  	goto __799
 45347  __798:
 45348  	if !(fc&0x10 == Tuint32_t(0)) {
 45349  		goto __800
 45350  	}
 45351  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45352  	len3 = len3 + 2
 45353  	goto __801
 45354  __800:
 45355  	if !(fc&0x08 == Tuint32_t(0)) {
 45356  		goto __802
 45357  	}
 45358  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45359  	len3 = len3 + 3
 45360  	goto __803
 45361  __802:
 45362  	if !(fc&0x04 == Tuint32_t(0)) {
 45363  		goto __804
 45364  	}
 45365  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45366  	len3 = len3 + 4
 45367  	goto __805
 45368  __804:
 45369  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 45370  	len3 = len3 + 5
 45371  __805:
 45372  	;
 45373  __803:
 45374  	;
 45375  __801:
 45376  	;
 45377  __799:
 45378  	;
 45379  __797:
 45380  	;
 45381  
 45382  	if !!(X_pcre2_xclass_8(tls, fc, *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)), utf) != 0) {
 45383  		goto __806
 45384  	}
 45385  	goto __793
 45386  __806:
 45387  	;
 45388  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len3)
 45389  	goto __792
 45390  __792:
 45391  	i++
 45392  	goto __791
 45393  	goto __793
 45394  __793:
 45395  	;
 45396  
 45397  	if !(reptype == REPTYPE_POS) {
 45398  		goto __807
 45399  	}
 45400  	goto __11
 45401  __807:
 45402  	; // No backtracking
 45403  
 45404  	// After \C in UTF mode, Lstart_eptr might be in the middle of a
 45405  	//         Unicode character. Use <= Lstart_eptr to ensure backtracking doesn't
 45406  	//         go too far.
 45407  
 45408  __808:
 45409  
 45410  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 45411  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM101
 45412  	goto MATCH_RECURSE
 45413  L_RM101:
 45414  	;
 45415  
 45416  	if !(rrc != DMATCH_NOMATCH) {
 45417  		goto __811
 45418  	}
 45419  	rrc = rrc
 45420  	goto RETURN_SWITCH
 45421  __811:
 45422  	;
 45423  
 45424  	if !(libc.PostDecUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1) <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 45425  		goto __812
 45426  	}
 45427  	goto __810
 45428  __812:
 45429  	; // Tried at original position
 45430  	if !(utf != 0) {
 45431  		goto __813
 45432  	}
 45433  __814:
 45434  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 45435  		goto __815
 45436  	}
 45437  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 45438  	goto __814
 45439  __815:
 45440  	;
 45441  __813:
 45442  	;
 45443  	goto __809
 45444  __809:
 45445  	goto __808
 45446  	goto __810
 45447  __810:
 45448  	;
 45449  	rrc = DMATCH_NOMATCH
 45450  	goto RETURN_SWITCH
 45451  
 45452  __772:
 45453  	;
 45454  
 45455  	// Control never gets here
 45456  
 45457  	// =====================================================================
 45458  	// Match various character types when PCRE2_UCP is not set. These opcodes
 45459  	//     are not generated when PCRE2_UCP is set - instead appropriate property
 45460  	//     tests are compiled.
 45461  
 45462  __80:
 45463  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45464  		goto __816
 45465  	}
 45466  
 45467  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45468  		goto __817
 45469  	}
 45470  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45471  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45472  		goto __818
 45473  	}
 45474  	return -2
 45475  __818:
 45476  	;
 45477  __817:
 45478  	;
 45479  
 45480  	rrc = DMATCH_NOMATCH
 45481  	goto RETURN_SWITCH
 45482  
 45483  __816:
 45484  	;
 45485  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45486  	if !(utf != 0 && fc >= 0xc0) {
 45487  		goto __819
 45488  	}
 45489  	if !(fc&0x20 == Tuint32_t(0)) {
 45490  		goto __820
 45491  	}
 45492  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45493  	goto __821
 45494  __820:
 45495  	if !(fc&0x10 == Tuint32_t(0)) {
 45496  		goto __822
 45497  	}
 45498  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45499  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45500  	goto __823
 45501  __822:
 45502  	if !(fc&0x08 == Tuint32_t(0)) {
 45503  		goto __824
 45504  	}
 45505  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45506  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45507  	goto __825
 45508  __824:
 45509  	if !(fc&0x04 == Tuint32_t(0)) {
 45510  		goto __826
 45511  	}
 45512  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45513  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45514  	goto __827
 45515  __826:
 45516  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45517  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45518  __827:
 45519  	;
 45520  __825:
 45521  	;
 45522  __823:
 45523  	;
 45524  __821:
 45525  	;
 45526  __819:
 45527  	;
 45528  
 45529  	if !(fc <= 255 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit != 0) {
 45530  		goto __828
 45531  	}
 45532  	rrc = DMATCH_NOMATCH
 45533  	goto RETURN_SWITCH
 45534  __828:
 45535  	;
 45536  
 45537  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 45538  	goto __13
 45539  
 45540  __81:
 45541  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45542  		goto __829
 45543  	}
 45544  
 45545  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45546  		goto __830
 45547  	}
 45548  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45549  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45550  		goto __831
 45551  	}
 45552  	return -2
 45553  __831:
 45554  	;
 45555  __830:
 45556  	;
 45557  
 45558  	rrc = DMATCH_NOMATCH
 45559  	goto RETURN_SWITCH
 45560  
 45561  __829:
 45562  	;
 45563  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45564  	if !(utf != 0 && fc >= 0xc0) {
 45565  		goto __832
 45566  	}
 45567  	if !(fc&0x20 == Tuint32_t(0)) {
 45568  		goto __833
 45569  	}
 45570  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45571  	goto __834
 45572  __833:
 45573  	if !(fc&0x10 == Tuint32_t(0)) {
 45574  		goto __835
 45575  	}
 45576  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45577  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45578  	goto __836
 45579  __835:
 45580  	if !(fc&0x08 == Tuint32_t(0)) {
 45581  		goto __837
 45582  	}
 45583  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45584  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45585  	goto __838
 45586  __837:
 45587  	if !(fc&0x04 == Tuint32_t(0)) {
 45588  		goto __839
 45589  	}
 45590  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45591  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45592  	goto __840
 45593  __839:
 45594  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45595  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45596  __840:
 45597  	;
 45598  __838:
 45599  	;
 45600  __836:
 45601  	;
 45602  __834:
 45603  	;
 45604  __832:
 45605  	;
 45606  
 45607  	if !(!(fc <= 255) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit == 0) {
 45608  		goto __841
 45609  	}
 45610  	rrc = DMATCH_NOMATCH
 45611  	goto RETURN_SWITCH
 45612  __841:
 45613  	;
 45614  
 45615  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 45616  	goto __13
 45617  
 45618  __82:
 45619  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45620  		goto __842
 45621  	}
 45622  
 45623  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45624  		goto __843
 45625  	}
 45626  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45627  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45628  		goto __844
 45629  	}
 45630  	return -2
 45631  __844:
 45632  	;
 45633  __843:
 45634  	;
 45635  
 45636  	rrc = DMATCH_NOMATCH
 45637  	goto RETURN_SWITCH
 45638  
 45639  __842:
 45640  	;
 45641  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45642  	if !(utf != 0 && fc >= 0xc0) {
 45643  		goto __845
 45644  	}
 45645  	if !(fc&0x20 == Tuint32_t(0)) {
 45646  		goto __846
 45647  	}
 45648  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45649  	goto __847
 45650  __846:
 45651  	if !(fc&0x10 == Tuint32_t(0)) {
 45652  		goto __848
 45653  	}
 45654  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45655  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45656  	goto __849
 45657  __848:
 45658  	if !(fc&0x08 == Tuint32_t(0)) {
 45659  		goto __850
 45660  	}
 45661  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45662  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45663  	goto __851
 45664  __850:
 45665  	if !(fc&0x04 == Tuint32_t(0)) {
 45666  		goto __852
 45667  	}
 45668  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45669  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45670  	goto __853
 45671  __852:
 45672  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45673  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45674  __853:
 45675  	;
 45676  __851:
 45677  	;
 45678  __849:
 45679  	;
 45680  __847:
 45681  	;
 45682  __845:
 45683  	;
 45684  
 45685  	if !(fc <= 255 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space != 0) {
 45686  		goto __854
 45687  	}
 45688  	rrc = DMATCH_NOMATCH
 45689  	goto RETURN_SWITCH
 45690  __854:
 45691  	;
 45692  
 45693  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 45694  	goto __13
 45695  
 45696  __83:
 45697  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45698  		goto __855
 45699  	}
 45700  
 45701  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45702  		goto __856
 45703  	}
 45704  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45705  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45706  		goto __857
 45707  	}
 45708  	return -2
 45709  __857:
 45710  	;
 45711  __856:
 45712  	;
 45713  
 45714  	rrc = DMATCH_NOMATCH
 45715  	goto RETURN_SWITCH
 45716  
 45717  __855:
 45718  	;
 45719  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45720  	if !(utf != 0 && fc >= 0xc0) {
 45721  		goto __858
 45722  	}
 45723  	if !(fc&0x20 == Tuint32_t(0)) {
 45724  		goto __859
 45725  	}
 45726  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45727  	goto __860
 45728  __859:
 45729  	if !(fc&0x10 == Tuint32_t(0)) {
 45730  		goto __861
 45731  	}
 45732  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45733  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45734  	goto __862
 45735  __861:
 45736  	if !(fc&0x08 == Tuint32_t(0)) {
 45737  		goto __863
 45738  	}
 45739  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45740  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45741  	goto __864
 45742  __863:
 45743  	if !(fc&0x04 == Tuint32_t(0)) {
 45744  		goto __865
 45745  	}
 45746  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45747  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45748  	goto __866
 45749  __865:
 45750  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45751  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45752  __866:
 45753  	;
 45754  __864:
 45755  	;
 45756  __862:
 45757  	;
 45758  __860:
 45759  	;
 45760  __858:
 45761  	;
 45762  
 45763  	if !(!(fc <= 255) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space == 0) {
 45764  		goto __867
 45765  	}
 45766  	rrc = DMATCH_NOMATCH
 45767  	goto RETURN_SWITCH
 45768  __867:
 45769  	;
 45770  
 45771  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 45772  	goto __13
 45773  
 45774  __84:
 45775  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45776  		goto __868
 45777  	}
 45778  
 45779  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45780  		goto __869
 45781  	}
 45782  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45783  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45784  		goto __870
 45785  	}
 45786  	return -2
 45787  __870:
 45788  	;
 45789  __869:
 45790  	;
 45791  
 45792  	rrc = DMATCH_NOMATCH
 45793  	goto RETURN_SWITCH
 45794  
 45795  __868:
 45796  	;
 45797  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45798  	if !(utf != 0 && fc >= 0xc0) {
 45799  		goto __871
 45800  	}
 45801  	if !(fc&0x20 == Tuint32_t(0)) {
 45802  		goto __872
 45803  	}
 45804  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45805  	goto __873
 45806  __872:
 45807  	if !(fc&0x10 == Tuint32_t(0)) {
 45808  		goto __874
 45809  	}
 45810  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45811  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45812  	goto __875
 45813  __874:
 45814  	if !(fc&0x08 == Tuint32_t(0)) {
 45815  		goto __876
 45816  	}
 45817  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45818  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45819  	goto __877
 45820  __876:
 45821  	if !(fc&0x04 == Tuint32_t(0)) {
 45822  		goto __878
 45823  	}
 45824  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45825  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45826  	goto __879
 45827  __878:
 45828  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45829  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45830  __879:
 45831  	;
 45832  __877:
 45833  	;
 45834  __875:
 45835  	;
 45836  __873:
 45837  	;
 45838  __871:
 45839  	;
 45840  
 45841  	if !(fc <= 255 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word != 0) {
 45842  		goto __880
 45843  	}
 45844  	rrc = DMATCH_NOMATCH
 45845  	goto RETURN_SWITCH
 45846  __880:
 45847  	;
 45848  
 45849  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 45850  	goto __13
 45851  
 45852  __85:
 45853  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45854  		goto __881
 45855  	}
 45856  
 45857  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45858  		goto __882
 45859  	}
 45860  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45861  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45862  		goto __883
 45863  	}
 45864  	return -2
 45865  __883:
 45866  	;
 45867  __882:
 45868  	;
 45869  
 45870  	rrc = DMATCH_NOMATCH
 45871  	goto RETURN_SWITCH
 45872  
 45873  __881:
 45874  	;
 45875  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45876  	if !(utf != 0 && fc >= 0xc0) {
 45877  		goto __884
 45878  	}
 45879  	if !(fc&0x20 == Tuint32_t(0)) {
 45880  		goto __885
 45881  	}
 45882  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45883  	goto __886
 45884  __885:
 45885  	if !(fc&0x10 == Tuint32_t(0)) {
 45886  		goto __887
 45887  	}
 45888  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45889  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45890  	goto __888
 45891  __887:
 45892  	if !(fc&0x08 == Tuint32_t(0)) {
 45893  		goto __889
 45894  	}
 45895  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45896  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45897  	goto __890
 45898  __889:
 45899  	if !(fc&0x04 == Tuint32_t(0)) {
 45900  		goto __891
 45901  	}
 45902  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45903  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45904  	goto __892
 45905  __891:
 45906  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45907  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45908  __892:
 45909  	;
 45910  __890:
 45911  	;
 45912  __888:
 45913  	;
 45914  __886:
 45915  	;
 45916  __884:
 45917  	;
 45918  
 45919  	if !(!(fc <= 255) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word == 0) {
 45920  		goto __893
 45921  	}
 45922  	rrc = DMATCH_NOMATCH
 45923  	goto RETURN_SWITCH
 45924  __893:
 45925  	;
 45926  
 45927  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 45928  	goto __13
 45929  
 45930  __86:
 45931  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 45932  		goto __894
 45933  	}
 45934  
 45935  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 45936  		goto __895
 45937  	}
 45938  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 45939  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 45940  		goto __896
 45941  	}
 45942  	return -2
 45943  __896:
 45944  	;
 45945  __895:
 45946  	;
 45947  
 45948  	rrc = DMATCH_NOMATCH
 45949  	goto RETURN_SWITCH
 45950  
 45951  __894:
 45952  	;
 45953  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 45954  	if !(utf != 0 && fc >= 0xc0) {
 45955  		goto __897
 45956  	}
 45957  	if !(fc&0x20 == Tuint32_t(0)) {
 45958  		goto __898
 45959  	}
 45960  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 45961  	goto __899
 45962  __898:
 45963  	if !(fc&0x10 == Tuint32_t(0)) {
 45964  		goto __900
 45965  	}
 45966  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 45967  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 45968  	goto __901
 45969  __900:
 45970  	if !(fc&0x08 == Tuint32_t(0)) {
 45971  		goto __902
 45972  	}
 45973  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 45974  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 45975  	goto __903
 45976  __902:
 45977  	if !(fc&0x04 == Tuint32_t(0)) {
 45978  		goto __904
 45979  	}
 45980  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 45981  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 45982  	goto __905
 45983  __904:
 45984  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 45985  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 45986  __905:
 45987  	;
 45988  __903:
 45989  	;
 45990  __901:
 45991  	;
 45992  __899:
 45993  	;
 45994  __897:
 45995  	;
 45996  
 45997  	switch fc {
 45998  	default:
 45999  		goto __907
 46000  
 46001  	case Tuint32_t('\015'):
 46002  		goto __908
 46003  
 46004  	case Tuint32_t('\012'):
 46005  		goto __909
 46006  
 46007  	case Tuint32_t('\013'):
 46008  		goto __910
 46009  	case Tuint32_t('\014'):
 46010  		goto __911
 46011  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 46012  		goto __912
 46013  	case Tuint32_t(0x2028):
 46014  		goto __913
 46015  	case Tuint32_t(0x2029):
 46016  		goto __914
 46017  	}
 46018  	goto __906
 46019  
 46020  __907:
 46021  	rrc = DMATCH_NOMATCH
 46022  	goto RETURN_SWITCH
 46023  
 46024  __908:
 46025  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 46026  		goto __915
 46027  	}
 46028  
 46029  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 46030  		goto __917
 46031  	}
 46032  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 46033  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 46034  		goto __918
 46035  	}
 46036  	return -2
 46037  __918:
 46038  	;
 46039  __917:
 46040  	;
 46041  
 46042  	goto __916
 46043  __915:
 46044  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012') {
 46045  		goto __919
 46046  	}
 46047  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 46048  __919:
 46049  	;
 46050  __916:
 46051  	;
 46052  	goto __906
 46053  
 46054  __909:
 46055  	goto __906
 46056  
 46057  __910:
 46058  __911:
 46059  __912:
 46060  __913:
 46061  __914:
 46062  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 46063  		goto __920
 46064  	}
 46065  	rrc = DMATCH_NOMATCH
 46066  	goto RETURN_SWITCH
 46067  __920:
 46068  	;
 46069  
 46070  	goto __906
 46071  __906:
 46072  	;
 46073  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 46074  	goto __13
 46075  
 46076  __87:
 46077  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 46078  		goto __921
 46079  	}
 46080  
 46081  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 46082  		goto __922
 46083  	}
 46084  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 46085  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 46086  		goto __923
 46087  	}
 46088  	return -2
 46089  __923:
 46090  	;
 46091  __922:
 46092  	;
 46093  
 46094  	rrc = DMATCH_NOMATCH
 46095  	goto RETURN_SWITCH
 46096  
 46097  __921:
 46098  	;
 46099  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 46100  	if !(utf != 0 && fc >= 0xc0) {
 46101  		goto __924
 46102  	}
 46103  	if !(fc&0x20 == Tuint32_t(0)) {
 46104  		goto __925
 46105  	}
 46106  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 46107  	goto __926
 46108  __925:
 46109  	if !(fc&0x10 == Tuint32_t(0)) {
 46110  		goto __927
 46111  	}
 46112  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 46113  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 46114  	goto __928
 46115  __927:
 46116  	if !(fc&0x08 == Tuint32_t(0)) {
 46117  		goto __929
 46118  	}
 46119  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 46120  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 46121  	goto __930
 46122  __929:
 46123  	if !(fc&0x04 == Tuint32_t(0)) {
 46124  		goto __931
 46125  	}
 46126  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 46127  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 46128  	goto __932
 46129  __931:
 46130  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 46131  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 46132  __932:
 46133  	;
 46134  __930:
 46135  	;
 46136  __928:
 46137  	;
 46138  __926:
 46139  	;
 46140  __924:
 46141  	;
 46142  
 46143  	switch fc {
 46144  	case Tuint32_t('\011'):
 46145  		goto __934
 46146  	case Tuint32_t('\040'):
 46147  		goto __935
 46148  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 46149  		goto __936
 46150  	case Tuint32_t(0x1680):
 46151  		goto __937 /* OGHAM SPACE MARK */
 46152  	case Tuint32_t(0x180e):
 46153  		goto __938 /* MONGOLIAN VOWEL SEPARATOR */
 46154  	case Tuint32_t(0x2000):
 46155  		goto __939 /* EN QUAD */
 46156  	case Tuint32_t(0x2001):
 46157  		goto __940 /* EM QUAD */
 46158  	case Tuint32_t(0x2002):
 46159  		goto __941 /* EN SPACE */
 46160  	case Tuint32_t(0x2003):
 46161  		goto __942 /* EM SPACE */
 46162  	case Tuint32_t(0x2004):
 46163  		goto __943 /* THREE-PER-EM SPACE */
 46164  	case Tuint32_t(0x2005):
 46165  		goto __944 /* FOUR-PER-EM SPACE */
 46166  	case Tuint32_t(0x2006):
 46167  		goto __945 /* SIX-PER-EM SPACE */
 46168  	case Tuint32_t(0x2007):
 46169  		goto __946 /* FIGURE SPACE */
 46170  	case Tuint32_t(0x2008):
 46171  		goto __947 /* PUNCTUATION SPACE */
 46172  	case Tuint32_t(0x2009):
 46173  		goto __948 /* THIN SPACE */
 46174  	case Tuint32_t(0x200A):
 46175  		goto __949 /* HAIR SPACE */
 46176  	case Tuint32_t(0x202f):
 46177  		goto __950 /* NARROW NO-BREAK SPACE */
 46178  	case Tuint32_t(0x205f):
 46179  		goto __951 /* MEDIUM MATHEMATICAL SPACE */
 46180  	case Tuint32_t(0x3000):
 46181  		goto __952 // Byte and multibyte cases
 46182  	default:
 46183  		goto __953
 46184  	}
 46185  	goto __933
 46186  
 46187  __934:
 46188  __935:
 46189  __936:
 46190  __937: /* OGHAM SPACE MARK */
 46191  __938: /* MONGOLIAN VOWEL SEPARATOR */
 46192  __939: /* EN QUAD */
 46193  __940: /* EM QUAD */
 46194  __941: /* EN SPACE */
 46195  __942: /* EM SPACE */
 46196  __943: /* THREE-PER-EM SPACE */
 46197  __944: /* FOUR-PER-EM SPACE */
 46198  __945: /* SIX-PER-EM SPACE */
 46199  __946: /* FIGURE SPACE */
 46200  __947: /* PUNCTUATION SPACE */
 46201  __948: /* THIN SPACE */
 46202  __949: /* HAIR SPACE */
 46203  __950: /* NARROW NO-BREAK SPACE */
 46204  __951: /* MEDIUM MATHEMATICAL SPACE */
 46205  __952:
 46206  	rrc = DMATCH_NOMATCH
 46207  	goto RETURN_SWITCH
 46208  	// Byte and multibyte cases
 46209  __953:
 46210  	goto __933
 46211  __933:
 46212  	;
 46213  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 46214  	goto __13
 46215  
 46216  __88:
 46217  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 46218  		goto __954
 46219  	}
 46220  
 46221  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 46222  		goto __955
 46223  	}
 46224  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 46225  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 46226  		goto __956
 46227  	}
 46228  	return -2
 46229  __956:
 46230  	;
 46231  __955:
 46232  	;
 46233  
 46234  	rrc = DMATCH_NOMATCH
 46235  	goto RETURN_SWITCH
 46236  
 46237  __954:
 46238  	;
 46239  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 46240  	if !(utf != 0 && fc >= 0xc0) {
 46241  		goto __957
 46242  	}
 46243  	if !(fc&0x20 == Tuint32_t(0)) {
 46244  		goto __958
 46245  	}
 46246  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 46247  	goto __959
 46248  __958:
 46249  	if !(fc&0x10 == Tuint32_t(0)) {
 46250  		goto __960
 46251  	}
 46252  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 46253  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 46254  	goto __961
 46255  __960:
 46256  	if !(fc&0x08 == Tuint32_t(0)) {
 46257  		goto __962
 46258  	}
 46259  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 46260  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 46261  	goto __963
 46262  __962:
 46263  	if !(fc&0x04 == Tuint32_t(0)) {
 46264  		goto __964
 46265  	}
 46266  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 46267  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 46268  	goto __965
 46269  __964:
 46270  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 46271  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 46272  __965:
 46273  	;
 46274  __963:
 46275  	;
 46276  __961:
 46277  	;
 46278  __959:
 46279  	;
 46280  __957:
 46281  	;
 46282  
 46283  	switch fc {
 46284  	case Tuint32_t('\011'):
 46285  		goto __967
 46286  	case Tuint32_t('\040'):
 46287  		goto __968
 46288  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 46289  		goto __969
 46290  	case Tuint32_t(0x1680):
 46291  		goto __970 /* OGHAM SPACE MARK */
 46292  	case Tuint32_t(0x180e):
 46293  		goto __971 /* MONGOLIAN VOWEL SEPARATOR */
 46294  	case Tuint32_t(0x2000):
 46295  		goto __972 /* EN QUAD */
 46296  	case Tuint32_t(0x2001):
 46297  		goto __973 /* EM QUAD */
 46298  	case Tuint32_t(0x2002):
 46299  		goto __974 /* EN SPACE */
 46300  	case Tuint32_t(0x2003):
 46301  		goto __975 /* EM SPACE */
 46302  	case Tuint32_t(0x2004):
 46303  		goto __976 /* THREE-PER-EM SPACE */
 46304  	case Tuint32_t(0x2005):
 46305  		goto __977 /* FOUR-PER-EM SPACE */
 46306  	case Tuint32_t(0x2006):
 46307  		goto __978 /* SIX-PER-EM SPACE */
 46308  	case Tuint32_t(0x2007):
 46309  		goto __979 /* FIGURE SPACE */
 46310  	case Tuint32_t(0x2008):
 46311  		goto __980 /* PUNCTUATION SPACE */
 46312  	case Tuint32_t(0x2009):
 46313  		goto __981 /* THIN SPACE */
 46314  	case Tuint32_t(0x200A):
 46315  		goto __982 /* HAIR SPACE */
 46316  	case Tuint32_t(0x202f):
 46317  		goto __983 /* NARROW NO-BREAK SPACE */
 46318  	case Tuint32_t(0x205f):
 46319  		goto __984 /* MEDIUM MATHEMATICAL SPACE */
 46320  	case Tuint32_t(0x3000):
 46321  		goto __985 // Byte and multibyte cases
 46322  	default:
 46323  		goto __986
 46324  	}
 46325  	goto __966
 46326  
 46327  __967:
 46328  __968:
 46329  __969:
 46330  __970: /* OGHAM SPACE MARK */
 46331  __971: /* MONGOLIAN VOWEL SEPARATOR */
 46332  __972: /* EN QUAD */
 46333  __973: /* EM QUAD */
 46334  __974: /* EN SPACE */
 46335  __975: /* EM SPACE */
 46336  __976: /* THREE-PER-EM SPACE */
 46337  __977: /* FOUR-PER-EM SPACE */
 46338  __978: /* SIX-PER-EM SPACE */
 46339  __979: /* FIGURE SPACE */
 46340  __980: /* PUNCTUATION SPACE */
 46341  __981: /* THIN SPACE */
 46342  __982: /* HAIR SPACE */
 46343  __983: /* NARROW NO-BREAK SPACE */
 46344  __984: /* MEDIUM MATHEMATICAL SPACE */
 46345  __985:
 46346  	goto __966 // Byte and multibyte cases
 46347  __986:
 46348  	rrc = DMATCH_NOMATCH
 46349  	goto RETURN_SWITCH
 46350  
 46351  __966:
 46352  	;
 46353  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 46354  	goto __13
 46355  
 46356  __89:
 46357  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 46358  		goto __987
 46359  	}
 46360  
 46361  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 46362  		goto __988
 46363  	}
 46364  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 46365  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 46366  		goto __989
 46367  	}
 46368  	return -2
 46369  __989:
 46370  	;
 46371  __988:
 46372  	;
 46373  
 46374  	rrc = DMATCH_NOMATCH
 46375  	goto RETURN_SWITCH
 46376  
 46377  __987:
 46378  	;
 46379  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 46380  	if !(utf != 0 && fc >= 0xc0) {
 46381  		goto __990
 46382  	}
 46383  	if !(fc&0x20 == Tuint32_t(0)) {
 46384  		goto __991
 46385  	}
 46386  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 46387  	goto __992
 46388  __991:
 46389  	if !(fc&0x10 == Tuint32_t(0)) {
 46390  		goto __993
 46391  	}
 46392  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 46393  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 46394  	goto __994
 46395  __993:
 46396  	if !(fc&0x08 == Tuint32_t(0)) {
 46397  		goto __995
 46398  	}
 46399  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 46400  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 46401  	goto __996
 46402  __995:
 46403  	if !(fc&0x04 == Tuint32_t(0)) {
 46404  		goto __997
 46405  	}
 46406  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 46407  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 46408  	goto __998
 46409  __997:
 46410  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 46411  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 46412  __998:
 46413  	;
 46414  __996:
 46415  	;
 46416  __994:
 46417  	;
 46418  __992:
 46419  	;
 46420  __990:
 46421  	;
 46422  
 46423  	switch fc {
 46424  	case Tuint32_t('\012'):
 46425  		goto __1000
 46426  	case Tuint32_t('\013'):
 46427  		goto __1001
 46428  	case Tuint32_t('\014'):
 46429  		goto __1002
 46430  	case Tuint32_t('\015'):
 46431  		goto __1003
 46432  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 46433  		goto __1004
 46434  	case Tuint32_t(0x2028):
 46435  		goto __1005 /* LINE SEPARATOR */
 46436  	case Tuint32_t(0x2029):
 46437  		goto __1006
 46438  	default:
 46439  		goto __1007
 46440  	}
 46441  	goto __999
 46442  
 46443  __1000:
 46444  __1001:
 46445  __1002:
 46446  __1003:
 46447  __1004:
 46448  __1005: /* LINE SEPARATOR */
 46449  __1006:
 46450  	rrc = DMATCH_NOMATCH
 46451  	goto RETURN_SWITCH
 46452  
 46453  __1007:
 46454  	goto __999
 46455  __999:
 46456  	;
 46457  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 46458  	goto __13
 46459  
 46460  __90:
 46461  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 46462  		goto __1008
 46463  	}
 46464  
 46465  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 46466  		goto __1009
 46467  	}
 46468  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 46469  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 46470  		goto __1010
 46471  	}
 46472  	return -2
 46473  __1010:
 46474  	;
 46475  __1009:
 46476  	;
 46477  
 46478  	rrc = DMATCH_NOMATCH
 46479  	goto RETURN_SWITCH
 46480  
 46481  __1008:
 46482  	;
 46483  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 46484  	if !(utf != 0 && fc >= 0xc0) {
 46485  		goto __1011
 46486  	}
 46487  	if !(fc&0x20 == Tuint32_t(0)) {
 46488  		goto __1012
 46489  	}
 46490  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 46491  	goto __1013
 46492  __1012:
 46493  	if !(fc&0x10 == Tuint32_t(0)) {
 46494  		goto __1014
 46495  	}
 46496  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 46497  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 46498  	goto __1015
 46499  __1014:
 46500  	if !(fc&0x08 == Tuint32_t(0)) {
 46501  		goto __1016
 46502  	}
 46503  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 46504  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 46505  	goto __1017
 46506  __1016:
 46507  	if !(fc&0x04 == Tuint32_t(0)) {
 46508  		goto __1018
 46509  	}
 46510  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 46511  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 46512  	goto __1019
 46513  __1018:
 46514  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 46515  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 46516  __1019:
 46517  	;
 46518  __1017:
 46519  	;
 46520  __1015:
 46521  	;
 46522  __1013:
 46523  	;
 46524  __1011:
 46525  	;
 46526  
 46527  	switch fc {
 46528  	case Tuint32_t('\012'):
 46529  		goto __1021
 46530  	case Tuint32_t('\013'):
 46531  		goto __1022
 46532  	case Tuint32_t('\014'):
 46533  		goto __1023
 46534  	case Tuint32_t('\015'):
 46535  		goto __1024
 46536  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 46537  		goto __1025
 46538  	case Tuint32_t(0x2028):
 46539  		goto __1026 /* LINE SEPARATOR */
 46540  	case Tuint32_t(0x2029):
 46541  		goto __1027
 46542  	default:
 46543  		goto __1028
 46544  	}
 46545  	goto __1020
 46546  
 46547  __1021:
 46548  __1022:
 46549  __1023:
 46550  __1024:
 46551  __1025:
 46552  __1026: /* LINE SEPARATOR */
 46553  __1027:
 46554  	goto __1020
 46555  __1028:
 46556  	rrc = DMATCH_NOMATCH
 46557  	goto RETURN_SWITCH
 46558  
 46559  __1020:
 46560  	;
 46561  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 46562  	goto __13
 46563  
 46564  	// =====================================================================
 46565  	// Check the next character by Unicode property. We will get here only
 46566  	//     if the support is in the binary; otherwise a compile-time error occurs.
 46567  
 46568  __91:
 46569  __92:
 46570  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 46571  		goto __1029
 46572  	}
 46573  
 46574  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 46575  		goto __1030
 46576  	}
 46577  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 46578  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 46579  		goto __1031
 46580  	}
 46581  	return -2
 46582  __1031:
 46583  	;
 46584  __1030:
 46585  	;
 46586  
 46587  	rrc = DMATCH_NOMATCH
 46588  	goto RETURN_SWITCH
 46589  
 46590  __1029:
 46591  	;
 46592  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 46593  	if !(utf != 0 && fc >= 0xc0) {
 46594  		goto __1032
 46595  	}
 46596  	if !(fc&0x20 == Tuint32_t(0)) {
 46597  		goto __1033
 46598  	}
 46599  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 46600  	goto __1034
 46601  __1033:
 46602  	if !(fc&0x10 == Tuint32_t(0)) {
 46603  		goto __1035
 46604  	}
 46605  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 46606  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 46607  	goto __1036
 46608  __1035:
 46609  	if !(fc&0x08 == Tuint32_t(0)) {
 46610  		goto __1037
 46611  	}
 46612  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 46613  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 46614  	goto __1038
 46615  __1037:
 46616  	if !(fc&0x04 == Tuint32_t(0)) {
 46617  		goto __1039
 46618  	}
 46619  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 46620  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 46621  	goto __1040
 46622  __1039:
 46623  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 46624  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 46625  __1040:
 46626  	;
 46627  __1038:
 46628  	;
 46629  __1036:
 46630  	;
 46631  __1034:
 46632  	;
 46633  __1032:
 46634  	;
 46635  
 46636  	prop = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12
 46637  	notmatch = libc.Bool32(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_NOTPROP)
 46638  
 46639  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1))) {
 46640  	case DPT_ANY:
 46641  		goto __1042
 46642  
 46643  	case DPT_LAMP:
 46644  		goto __1043
 46645  
 46646  	case DPT_GC:
 46647  		goto __1044
 46648  
 46649  	case DPT_PC:
 46650  		goto __1045
 46651  
 46652  	case DPT_SC:
 46653  		goto __1046
 46654  
 46655  	case DPT_SCX:
 46656  		goto __1047
 46657  
 46658  	// These are specials
 46659  
 46660  	case DPT_ALNUM:
 46661  		goto __1048
 46662  
 46663  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 46664  	//         which means that Perl space and POSIX space are now identical. PCRE
 46665  	//         was changed at release 8.34.
 46666  
 46667  	case DPT_SPACE:
 46668  		goto __1049 // Perl space
 46669  	case DPT_PXSPACE:
 46670  		goto __1050
 46671  
 46672  	case DPT_WORD:
 46673  		goto __1051
 46674  
 46675  	case DPT_CLIST:
 46676  		goto __1052
 46677  
 46678  	case DPT_UCNC:
 46679  		goto __1053
 46680  
 46681  	case DPT_BIDICL:
 46682  		goto __1054
 46683  
 46684  	case DPT_BOOL:
 46685  		goto __1055
 46686  
 46687  	// This should never occur
 46688  
 46689  	default:
 46690  		goto __1056
 46691  	}
 46692  	goto __1041
 46693  
 46694  __1042:
 46695  	if !(notmatch != 0) {
 46696  		goto __1057
 46697  	}
 46698  	rrc = DMATCH_NOMATCH
 46699  	goto RETURN_SWITCH
 46700  __1057:
 46701  	;
 46702  
 46703  	goto __1041
 46704  
 46705  __1043:
 46706  	if !(libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lu || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Ll || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lt) == notmatch) {
 46707  		goto __1058
 46708  	}
 46709  	rrc = DMATCH_NOMATCH
 46710  	goto RETURN_SWITCH
 46711  __1058:
 46712  	;
 46713  
 46714  	goto __1041
 46715  
 46716  __1044:
 46717  	if !(libc.Bool32(Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))) == X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype]) == notmatch) {
 46718  		goto __1059
 46719  	}
 46720  	rrc = DMATCH_NOMATCH
 46721  	goto RETURN_SWITCH
 46722  __1059:
 46723  	;
 46724  
 46725  	goto __1041
 46726  
 46727  __1045:
 46728  	if !(libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))) == int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype)) == notmatch) {
 46729  		goto __1060
 46730  	}
 46731  	rrc = DMATCH_NOMATCH
 46732  	goto RETURN_SWITCH
 46733  __1060:
 46734  	;
 46735  
 46736  	goto __1041
 46737  
 46738  __1046:
 46739  	if !(libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))) == int32((*Tucd_record)(unsafe.Pointer(prop)).Fscript)) == notmatch) {
 46740  		goto __1061
 46741  	}
 46742  	rrc = DMATCH_NOMATCH
 46743  	goto RETURN_SWITCH
 46744  __1061:
 46745  	;
 46746  
 46747  	goto __1041
 46748  
 46749  __1047:
 46750  
 46751  	ok = libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))) == int32((*Tucd_record)(unsafe.Pointer(prop)).Fscript) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))%32)) != Tuint32_t(0))
 46752  	if !(ok == notmatch) {
 46753  		goto __1062
 46754  	}
 46755  	rrc = DMATCH_NOMATCH
 46756  	goto RETURN_SWITCH
 46757  __1062:
 46758  	;
 46759  
 46760  	goto __1041
 46761  
 46762  	// These are specials
 46763  
 46764  __1048:
 46765  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N) == notmatch) {
 46766  		goto __1063
 46767  	}
 46768  	rrc = DMATCH_NOMATCH
 46769  	goto RETURN_SWITCH
 46770  __1063:
 46771  	;
 46772  
 46773  	goto __1041
 46774  
 46775  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 46776  	//         which means that Perl space and POSIX space are now identical. PCRE
 46777  	//         was changed at release 8.34.
 46778  
 46779  __1049: // Perl space
 46780  __1050: // POSIX space
 46781  	switch fc {
 46782  	case Tuint32_t('\011'):
 46783  		goto __1065
 46784  	case Tuint32_t('\040'):
 46785  		goto __1066
 46786  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 46787  		goto __1067
 46788  	case Tuint32_t(0x1680):
 46789  		goto __1068 /* OGHAM SPACE MARK */
 46790  	case Tuint32_t(0x180e):
 46791  		goto __1069 /* MONGOLIAN VOWEL SEPARATOR */
 46792  	case Tuint32_t(0x2000):
 46793  		goto __1070 /* EN QUAD */
 46794  	case Tuint32_t(0x2001):
 46795  		goto __1071 /* EM QUAD */
 46796  	case Tuint32_t(0x2002):
 46797  		goto __1072 /* EN SPACE */
 46798  	case Tuint32_t(0x2003):
 46799  		goto __1073 /* EM SPACE */
 46800  	case Tuint32_t(0x2004):
 46801  		goto __1074 /* THREE-PER-EM SPACE */
 46802  	case Tuint32_t(0x2005):
 46803  		goto __1075 /* FOUR-PER-EM SPACE */
 46804  	case Tuint32_t(0x2006):
 46805  		goto __1076 /* SIX-PER-EM SPACE */
 46806  	case Tuint32_t(0x2007):
 46807  		goto __1077 /* FIGURE SPACE */
 46808  	case Tuint32_t(0x2008):
 46809  		goto __1078 /* PUNCTUATION SPACE */
 46810  	case Tuint32_t(0x2009):
 46811  		goto __1079 /* THIN SPACE */
 46812  	case Tuint32_t(0x200A):
 46813  		goto __1080 /* HAIR SPACE */
 46814  	case Tuint32_t(0x202f):
 46815  		goto __1081 /* NARROW NO-BREAK SPACE */
 46816  	case Tuint32_t(0x205f):
 46817  		goto __1082 /* MEDIUM MATHEMATICAL SPACE */
 46818  	case Tuint32_t(0x3000):
 46819  		goto __1083
 46820  	case Tuint32_t('\012'):
 46821  		goto __1084
 46822  	case Tuint32_t('\013'):
 46823  		goto __1085
 46824  	case Tuint32_t('\014'):
 46825  		goto __1086
 46826  	case Tuint32_t('\015'):
 46827  		goto __1087
 46828  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 46829  		goto __1088
 46830  	case Tuint32_t(0x2028):
 46831  		goto __1089 /* LINE SEPARATOR */
 46832  	case Tuint32_t(0x2029):
 46833  		goto __1090
 46834  
 46835  	default:
 46836  		goto __1091
 46837  	}
 46838  	goto __1064
 46839  
 46840  __1065:
 46841  __1066:
 46842  __1067:
 46843  __1068: /* OGHAM SPACE MARK */
 46844  __1069: /* MONGOLIAN VOWEL SEPARATOR */
 46845  __1070: /* EN QUAD */
 46846  __1071: /* EM QUAD */
 46847  __1072: /* EN SPACE */
 46848  __1073: /* EM SPACE */
 46849  __1074: /* THREE-PER-EM SPACE */
 46850  __1075: /* FOUR-PER-EM SPACE */
 46851  __1076: /* SIX-PER-EM SPACE */
 46852  __1077: /* FIGURE SPACE */
 46853  __1078: /* PUNCTUATION SPACE */
 46854  __1079: /* THIN SPACE */
 46855  __1080: /* HAIR SPACE */
 46856  __1081: /* NARROW NO-BREAK SPACE */
 46857  __1082: /* MEDIUM MATHEMATICAL SPACE */
 46858  __1083:
 46859  __1084:
 46860  __1085:
 46861  __1086:
 46862  __1087:
 46863  __1088:
 46864  __1089: /* LINE SEPARATOR */
 46865  __1090:
 46866  	if !(notmatch != 0) {
 46867  		goto __1092
 46868  	}
 46869  	rrc = DMATCH_NOMATCH
 46870  	goto RETURN_SWITCH
 46871  __1092:
 46872  	;
 46873  
 46874  	goto __1064
 46875  
 46876  __1091:
 46877  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_Z) == notmatch) {
 46878  		goto __1093
 46879  	}
 46880  	rrc = DMATCH_NOMATCH
 46881  	goto RETURN_SWITCH
 46882  __1093:
 46883  	;
 46884  
 46885  	goto __1064
 46886  __1064:
 46887  	;
 46888  	goto __1041
 46889  
 46890  __1051:
 46891  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N || fc == Tuint32_t('\137')) == notmatch) {
 46892  		goto __1094
 46893  	}
 46894  	rrc = DMATCH_NOMATCH
 46895  	goto RETURN_SWITCH
 46896  __1094:
 46897  	;
 46898  
 46899  	goto __1041
 46900  
 46901  __1052:
 46902  	cp = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))*4
 46903  __1095:
 46904  
 46905  	if !(fc < *(*Tuint32_t)(unsafe.Pointer(cp))) {
 46906  		goto __1098
 46907  	}
 46908  	if !(notmatch != 0) {
 46909  		goto __1099
 46910  	}
 46911  	goto __1097
 46912  	goto __1100
 46913  __1099:
 46914  	rrc = DMATCH_NOMATCH
 46915  	goto RETURN_SWITCH
 46916  __1100:
 46917  	;
 46918  __1098:
 46919  	;
 46920  	if !(fc == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp, 4)))) {
 46921  		goto __1101
 46922  	}
 46923  	if !(notmatch != 0) {
 46924  		goto __1102
 46925  	}
 46926  	rrc = DMATCH_NOMATCH
 46927  	goto RETURN_SWITCH
 46928  	goto __1103
 46929  __1102:
 46930  	goto __1097
 46931  __1103:
 46932  	;
 46933  __1101:
 46934  	;
 46935  	goto __1096
 46936  __1096:
 46937  	goto __1095
 46938  	goto __1097
 46939  __1097:
 46940  	;
 46941  	goto __1041
 46942  
 46943  __1053:
 46944  	if !(libc.Bool32(fc == Tuint32_t('\044') || fc == Tuint32_t('\100') || fc == Tuint32_t('\140') || fc >= Tuint32_t(0xa0) && fc <= Tuint32_t(0xd7ff) || fc >= Tuint32_t(0xe000)) == notmatch) {
 46945  		goto __1104
 46946  	}
 46947  	rrc = DMATCH_NOMATCH
 46948  	goto RETURN_SWITCH
 46949  __1104:
 46950  	;
 46951  
 46952  	goto __1041
 46953  
 46954  __1054:
 46955  	if !(libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))) == notmatch) {
 46956  		goto __1105
 46957  	}
 46958  	rrc = DMATCH_NOMATCH
 46959  	goto RETURN_SWITCH
 46960  __1105:
 46961  	;
 46962  
 46963  	goto __1041
 46964  
 46965  __1055:
 46966  
 46967  	ok1 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))%32)) != Tuint32_t(0))
 46968  	if !(ok1 == notmatch) {
 46969  		goto __1106
 46970  	}
 46971  	rrc = DMATCH_NOMATCH
 46972  	goto RETURN_SWITCH
 46973  __1106:
 46974  	;
 46975  
 46976  	goto __1041
 46977  
 46978  	// This should never occur
 46979  
 46980  __1056:
 46981  	return -44
 46982  __1041:
 46983  	;
 46984  
 46985  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(3)
 46986  
 46987  	goto __13
 46988  
 46989  	// =====================================================================
 46990  	// Match an extended Unicode sequence. We will get here only if the support
 46991  	//     is in the binary; otherwise a compile-time error occurs.
 46992  
 46993  __93:
 46994  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 46995  		goto __1107
 46996  	}
 46997  
 46998  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 46999  		goto __1109
 47000  	}
 47001  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47002  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47003  		goto __1110
 47004  	}
 47005  	return -2
 47006  __1110:
 47007  	;
 47008  __1109:
 47009  	;
 47010  
 47011  	rrc = DMATCH_NOMATCH
 47012  	goto RETURN_SWITCH
 47013  
 47014  	goto __1108
 47015  __1107:
 47016  
 47017  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47018  	if !(utf != 0 && fc >= 0xc0) {
 47019  		goto __1111
 47020  	}
 47021  	if !(fc&0x20 == Tuint32_t(0)) {
 47022  		goto __1112
 47023  	}
 47024  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47025  	goto __1113
 47026  __1112:
 47027  	if !(fc&0x10 == Tuint32_t(0)) {
 47028  		goto __1114
 47029  	}
 47030  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47031  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47032  	goto __1115
 47033  __1114:
 47034  	if !(fc&0x08 == Tuint32_t(0)) {
 47035  		goto __1116
 47036  	}
 47037  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47038  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47039  	goto __1117
 47040  __1116:
 47041  	if !(fc&0x04 == Tuint32_t(0)) {
 47042  		goto __1118
 47043  	}
 47044  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47045  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47046  	goto __1119
 47047  __1118:
 47048  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47049  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47050  __1119:
 47051  	;
 47052  __1117:
 47053  	;
 47054  __1115:
 47055  	;
 47056  __1113:
 47057  	;
 47058  __1111:
 47059  	;
 47060  
 47061  	(*Theapframe)(unsafe.Pointer(F)).Feptr = X_pcre2_extuni_8(tls, fc, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, utf,
 47062  		uintptr(0))
 47063  __1108:
 47064  	;
 47065  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47066  		goto __1120
 47067  	}
 47068  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47069  		goto __1121
 47070  	}
 47071  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47072  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47073  		goto __1122
 47074  	}
 47075  	return -2
 47076  __1122:
 47077  	;
 47078  __1121:
 47079  	;
 47080  __1120:
 47081  	;
 47082  
 47083  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 47084  	goto __13
 47085  
 47086  	// =====================================================================
 47087  	// Match a single character type repeatedly. Note that the property type
 47088  	//     does not need to be in a stack frame as it is not used within an RMATCH()
 47089  	//     loop.
 47090  
 47091  __94:
 47092  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = libc.AssignPtrUint32(F+56+1*4, uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 47093  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 47094  	goto REPEATTYPE
 47095  
 47096  __95:
 47097  __96:
 47098  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 47099  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 47100  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_TYPEMINUPTO {
 47101  		reptype = REPTYPE_MIN
 47102  	} else {
 47103  		reptype = REPTYPE_MAX
 47104  	}
 47105  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 47106  	goto REPEATTYPE
 47107  
 47108  __97:
 47109  	reptype = REPTYPE_POS
 47110  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 47111  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 47112  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 47113  	goto REPEATTYPE
 47114  
 47115  __98:
 47116  	reptype = REPTYPE_POS
 47117  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(1)
 47118  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 47119  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 47120  	goto REPEATTYPE
 47121  
 47122  __99:
 47123  	reptype = REPTYPE_POS
 47124  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 47125  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = Tuint32_t(1)
 47126  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 47127  	goto REPEATTYPE
 47128  
 47129  __100:
 47130  	reptype = REPTYPE_POS
 47131  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 47132  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 47133  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 47134  	goto REPEATTYPE
 47135  
 47136  __101:
 47137  __102:
 47138  __103:
 47139  __104:
 47140  __105:
 47141  __106:
 47142  	fc = Tuint32_t(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) - OP_TYPESTAR)
 47143  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = rep_min[fc]
 47144  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = rep_max[fc]
 47145  	reptype = rep_typ[fc]
 47146  
 47147  	// Common code for all repeated character type matches.
 47148  
 47149  REPEATTYPE:
 47150  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) // Code for the character type
 47151  
 47152  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_PROP || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP) {
 47153  		goto __1123
 47154  	}
 47155  
 47156  	proptype = int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1))))
 47157  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1))))
 47158  	goto __1124
 47159  __1123:
 47160  	proptype = -1
 47161  __1124:
 47162  	;
 47163  
 47164  	// First, ensure the minimum number of matches are present. Use inline
 47165  	//     code for maximizing the speed, and do the type test once at the start
 47166  	//     (i.e. keep it out of the loops). As there are no calls to RMATCH in the
 47167  	//     loops, we can use an ordinary variable for "notmatch". The code for UTF
 47168  	//     mode is separated out for tidiness, except for Unicode property tests.
 47169  
 47170  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) > Tuint32_t(0)) {
 47171  		goto __1125
 47172  	}
 47173  
 47174  	if !(proptype >= 0) {
 47175  		goto __1126
 47176  	} /* Property tests in all modes */
 47177  
 47178  	notmatch1 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)
 47179  	switch proptype {
 47180  	case DPT_ANY:
 47181  		goto __1129
 47182  
 47183  	case DPT_LAMP:
 47184  		goto __1130
 47185  
 47186  	case DPT_GC:
 47187  		goto __1131
 47188  
 47189  	case DPT_PC:
 47190  		goto __1132
 47191  
 47192  	case DPT_SC:
 47193  		goto __1133
 47194  
 47195  	case DPT_SCX:
 47196  		goto __1134
 47197  
 47198  	case DPT_ALNUM:
 47199  		goto __1135
 47200  
 47201  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 47202  	//           which means that Perl space and POSIX space are now identical. PCRE
 47203  	//           was changed at release 8.34.
 47204  
 47205  	case DPT_SPACE:
 47206  		goto __1136 // Perl space
 47207  	case DPT_PXSPACE:
 47208  		goto __1137
 47209  
 47210  	case DPT_WORD:
 47211  		goto __1138
 47212  
 47213  	case DPT_CLIST:
 47214  		goto __1139
 47215  
 47216  	case DPT_UCNC:
 47217  		goto __1140
 47218  
 47219  	case DPT_BIDICL:
 47220  		goto __1141
 47221  
 47222  	case DPT_BOOL:
 47223  		goto __1142
 47224  
 47225  	// This should not occur
 47226  
 47227  	default:
 47228  		goto __1143
 47229  	}
 47230  	goto __1128
 47231  
 47232  __1129:
 47233  	if !(notmatch1 != 0) {
 47234  		goto __1144
 47235  	}
 47236  	rrc = DMATCH_NOMATCH
 47237  	goto RETURN_SWITCH
 47238  __1144:
 47239  	;
 47240  
 47241  	i = Tuint32_t(1)
 47242  __1145:
 47243  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47244  		goto __1147
 47245  	}
 47246  
 47247  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47248  		goto __1148
 47249  	}
 47250  
 47251  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47252  		goto __1149
 47253  	}
 47254  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47255  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47256  		goto __1150
 47257  	}
 47258  	return -2
 47259  __1150:
 47260  	;
 47261  __1149:
 47262  	;
 47263  
 47264  	rrc = DMATCH_NOMATCH
 47265  	goto RETURN_SWITCH
 47266  
 47267  __1148:
 47268  	;
 47269  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47270  	if !(utf != 0 && fc >= 0xc0) {
 47271  		goto __1151
 47272  	}
 47273  	if !(fc&0x20 == Tuint32_t(0)) {
 47274  		goto __1152
 47275  	}
 47276  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47277  	goto __1153
 47278  __1152:
 47279  	if !(fc&0x10 == Tuint32_t(0)) {
 47280  		goto __1154
 47281  	}
 47282  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47283  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47284  	goto __1155
 47285  __1154:
 47286  	if !(fc&0x08 == Tuint32_t(0)) {
 47287  		goto __1156
 47288  	}
 47289  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47290  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47291  	goto __1157
 47292  __1156:
 47293  	if !(fc&0x04 == Tuint32_t(0)) {
 47294  		goto __1158
 47295  	}
 47296  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47297  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47298  	goto __1159
 47299  __1158:
 47300  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47301  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47302  __1159:
 47303  	;
 47304  __1157:
 47305  	;
 47306  __1155:
 47307  	;
 47308  __1153:
 47309  	;
 47310  __1151:
 47311  	;
 47312  
 47313  	goto __1146
 47314  __1146:
 47315  	i++
 47316  	goto __1145
 47317  	goto __1147
 47318  __1147:
 47319  	;
 47320  	goto __1128
 47321  
 47322  __1130:
 47323  	i = Tuint32_t(1)
 47324  __1160:
 47325  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47326  		goto __1162
 47327  	}
 47328  
 47329  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47330  		goto __1163
 47331  	}
 47332  
 47333  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47334  		goto __1164
 47335  	}
 47336  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47337  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47338  		goto __1165
 47339  	}
 47340  	return -2
 47341  __1165:
 47342  	;
 47343  __1164:
 47344  	;
 47345  
 47346  	rrc = DMATCH_NOMATCH
 47347  	goto RETURN_SWITCH
 47348  
 47349  __1163:
 47350  	;
 47351  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47352  	if !(utf != 0 && fc >= 0xc0) {
 47353  		goto __1166
 47354  	}
 47355  	if !(fc&0x20 == Tuint32_t(0)) {
 47356  		goto __1167
 47357  	}
 47358  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47359  	goto __1168
 47360  __1167:
 47361  	if !(fc&0x10 == Tuint32_t(0)) {
 47362  		goto __1169
 47363  	}
 47364  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47365  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47366  	goto __1170
 47367  __1169:
 47368  	if !(fc&0x08 == Tuint32_t(0)) {
 47369  		goto __1171
 47370  	}
 47371  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47372  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47373  	goto __1172
 47374  __1171:
 47375  	if !(fc&0x04 == Tuint32_t(0)) {
 47376  		goto __1173
 47377  	}
 47378  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47379  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47380  	goto __1174
 47381  __1173:
 47382  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47383  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47384  __1174:
 47385  	;
 47386  __1172:
 47387  	;
 47388  __1170:
 47389  	;
 47390  __1168:
 47391  	;
 47392  __1166:
 47393  	;
 47394  
 47395  	chartype = int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype)
 47396  	if !(libc.Bool32(chartype == ucp_Lu || chartype == ucp_Ll || chartype == ucp_Lt) == notmatch1) {
 47397  		goto __1175
 47398  	}
 47399  	rrc = DMATCH_NOMATCH
 47400  	goto RETURN_SWITCH
 47401  __1175:
 47402  	;
 47403  
 47404  	goto __1161
 47405  __1161:
 47406  	i++
 47407  	goto __1160
 47408  	goto __1162
 47409  __1162:
 47410  	;
 47411  	goto __1128
 47412  
 47413  __1131:
 47414  	i = Tuint32_t(1)
 47415  __1176:
 47416  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47417  		goto __1178
 47418  	}
 47419  
 47420  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47421  		goto __1179
 47422  	}
 47423  
 47424  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47425  		goto __1180
 47426  	}
 47427  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47428  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47429  		goto __1181
 47430  	}
 47431  	return -2
 47432  __1181:
 47433  	;
 47434  __1180:
 47435  	;
 47436  
 47437  	rrc = DMATCH_NOMATCH
 47438  	goto RETURN_SWITCH
 47439  
 47440  __1179:
 47441  	;
 47442  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47443  	if !(utf != 0 && fc >= 0xc0) {
 47444  		goto __1182
 47445  	}
 47446  	if !(fc&0x20 == Tuint32_t(0)) {
 47447  		goto __1183
 47448  	}
 47449  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47450  	goto __1184
 47451  __1183:
 47452  	if !(fc&0x10 == Tuint32_t(0)) {
 47453  		goto __1185
 47454  	}
 47455  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47456  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47457  	goto __1186
 47458  __1185:
 47459  	if !(fc&0x08 == Tuint32_t(0)) {
 47460  		goto __1187
 47461  	}
 47462  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47463  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47464  	goto __1188
 47465  __1187:
 47466  	if !(fc&0x04 == Tuint32_t(0)) {
 47467  		goto __1189
 47468  	}
 47469  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47470  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47471  	goto __1190
 47472  __1189:
 47473  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47474  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47475  __1190:
 47476  	;
 47477  __1188:
 47478  	;
 47479  __1186:
 47480  	;
 47481  __1184:
 47482  	;
 47483  __1182:
 47484  	;
 47485  
 47486  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype] == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch1) {
 47487  		goto __1191
 47488  	}
 47489  	rrc = DMATCH_NOMATCH
 47490  	goto RETURN_SWITCH
 47491  __1191:
 47492  	;
 47493  
 47494  	goto __1177
 47495  __1177:
 47496  	i++
 47497  	goto __1176
 47498  	goto __1178
 47499  __1178:
 47500  	;
 47501  	goto __1128
 47502  
 47503  __1132:
 47504  	i = Tuint32_t(1)
 47505  __1192:
 47506  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47507  		goto __1194
 47508  	}
 47509  
 47510  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47511  		goto __1195
 47512  	}
 47513  
 47514  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47515  		goto __1196
 47516  	}
 47517  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47518  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47519  		goto __1197
 47520  	}
 47521  	return -2
 47522  __1197:
 47523  	;
 47524  __1196:
 47525  	;
 47526  
 47527  	rrc = DMATCH_NOMATCH
 47528  	goto RETURN_SWITCH
 47529  
 47530  __1195:
 47531  	;
 47532  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47533  	if !(utf != 0 && fc >= 0xc0) {
 47534  		goto __1198
 47535  	}
 47536  	if !(fc&0x20 == Tuint32_t(0)) {
 47537  		goto __1199
 47538  	}
 47539  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47540  	goto __1200
 47541  __1199:
 47542  	if !(fc&0x10 == Tuint32_t(0)) {
 47543  		goto __1201
 47544  	}
 47545  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47546  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47547  	goto __1202
 47548  __1201:
 47549  	if !(fc&0x08 == Tuint32_t(0)) {
 47550  		goto __1203
 47551  	}
 47552  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47553  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47554  	goto __1204
 47555  __1203:
 47556  	if !(fc&0x04 == Tuint32_t(0)) {
 47557  		goto __1205
 47558  	}
 47559  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47560  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47561  	goto __1206
 47562  __1205:
 47563  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47564  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47565  __1206:
 47566  	;
 47567  __1204:
 47568  	;
 47569  __1202:
 47570  	;
 47571  __1200:
 47572  	;
 47573  __1198:
 47574  	;
 47575  
 47576  	if !(libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch1) {
 47577  		goto __1207
 47578  	}
 47579  	rrc = DMATCH_NOMATCH
 47580  	goto RETURN_SWITCH
 47581  __1207:
 47582  	;
 47583  
 47584  	goto __1193
 47585  __1193:
 47586  	i++
 47587  	goto __1192
 47588  	goto __1194
 47589  __1194:
 47590  	;
 47591  	goto __1128
 47592  
 47593  __1133:
 47594  	i = Tuint32_t(1)
 47595  __1208:
 47596  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47597  		goto __1210
 47598  	}
 47599  
 47600  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47601  		goto __1211
 47602  	}
 47603  
 47604  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47605  		goto __1212
 47606  	}
 47607  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47608  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47609  		goto __1213
 47610  	}
 47611  	return -2
 47612  __1213:
 47613  	;
 47614  __1212:
 47615  	;
 47616  
 47617  	rrc = DMATCH_NOMATCH
 47618  	goto RETURN_SWITCH
 47619  
 47620  __1211:
 47621  	;
 47622  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47623  	if !(utf != 0 && fc >= 0xc0) {
 47624  		goto __1214
 47625  	}
 47626  	if !(fc&0x20 == Tuint32_t(0)) {
 47627  		goto __1215
 47628  	}
 47629  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47630  	goto __1216
 47631  __1215:
 47632  	if !(fc&0x10 == Tuint32_t(0)) {
 47633  		goto __1217
 47634  	}
 47635  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47636  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47637  	goto __1218
 47638  __1217:
 47639  	if !(fc&0x08 == Tuint32_t(0)) {
 47640  		goto __1219
 47641  	}
 47642  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47643  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47644  	goto __1220
 47645  __1219:
 47646  	if !(fc&0x04 == Tuint32_t(0)) {
 47647  		goto __1221
 47648  	}
 47649  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47650  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47651  	goto __1222
 47652  __1221:
 47653  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47654  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47655  __1222:
 47656  	;
 47657  __1220:
 47658  	;
 47659  __1218:
 47660  	;
 47661  __1216:
 47662  	;
 47663  __1214:
 47664  	;
 47665  
 47666  	if !(libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fscript) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch1) {
 47667  		goto __1223
 47668  	}
 47669  	rrc = DMATCH_NOMATCH
 47670  	goto RETURN_SWITCH
 47671  __1223:
 47672  	;
 47673  
 47674  	goto __1209
 47675  __1209:
 47676  	i++
 47677  	goto __1208
 47678  	goto __1210
 47679  __1210:
 47680  	;
 47681  	goto __1128
 47682  
 47683  __1134:
 47684  	i = Tuint32_t(1)
 47685  __1224:
 47686  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47687  		goto __1226
 47688  	}
 47689  
 47690  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47691  		goto __1227
 47692  	}
 47693  
 47694  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47695  		goto __1228
 47696  	}
 47697  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47698  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47699  		goto __1229
 47700  	}
 47701  	return -2
 47702  __1229:
 47703  	;
 47704  __1228:
 47705  	;
 47706  
 47707  	rrc = DMATCH_NOMATCH
 47708  	goto RETURN_SWITCH
 47709  
 47710  __1227:
 47711  	;
 47712  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47713  	if !(utf != 0 && fc >= 0xc0) {
 47714  		goto __1230
 47715  	}
 47716  	if !(fc&0x20 == Tuint32_t(0)) {
 47717  		goto __1231
 47718  	}
 47719  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47720  	goto __1232
 47721  __1231:
 47722  	if !(fc&0x10 == Tuint32_t(0)) {
 47723  		goto __1233
 47724  	}
 47725  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47726  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47727  	goto __1234
 47728  __1233:
 47729  	if !(fc&0x08 == Tuint32_t(0)) {
 47730  		goto __1235
 47731  	}
 47732  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47733  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47734  	goto __1236
 47735  __1235:
 47736  	if !(fc&0x04 == Tuint32_t(0)) {
 47737  		goto __1237
 47738  	}
 47739  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47740  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47741  	goto __1238
 47742  __1237:
 47743  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47744  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47745  __1238:
 47746  	;
 47747  __1236:
 47748  	;
 47749  __1234:
 47750  	;
 47751  __1232:
 47752  	;
 47753  __1230:
 47754  	;
 47755  
 47756  	prop1 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12
 47757  	ok2 = libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(prop1)).Fscript) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop1)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))/Tuint32_t(32))*4))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))%Tuint32_t(32))) != Tuint32_t(0))
 47758  	if !(ok2 == notmatch1) {
 47759  		goto __1239
 47760  	}
 47761  	rrc = DMATCH_NOMATCH
 47762  	goto RETURN_SWITCH
 47763  __1239:
 47764  	;
 47765  
 47766  	goto __1225
 47767  __1225:
 47768  	i++
 47769  	goto __1224
 47770  	goto __1226
 47771  __1226:
 47772  	;
 47773  	goto __1128
 47774  
 47775  __1135:
 47776  	i = Tuint32_t(1)
 47777  __1240:
 47778  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47779  		goto __1242
 47780  	}
 47781  
 47782  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47783  		goto __1243
 47784  	}
 47785  
 47786  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47787  		goto __1244
 47788  	}
 47789  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47790  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47791  		goto __1245
 47792  	}
 47793  	return -2
 47794  __1245:
 47795  	;
 47796  __1244:
 47797  	;
 47798  
 47799  	rrc = DMATCH_NOMATCH
 47800  	goto RETURN_SWITCH
 47801  
 47802  __1243:
 47803  	;
 47804  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47805  	if !(utf != 0 && fc >= 0xc0) {
 47806  		goto __1246
 47807  	}
 47808  	if !(fc&0x20 == Tuint32_t(0)) {
 47809  		goto __1247
 47810  	}
 47811  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47812  	goto __1248
 47813  __1247:
 47814  	if !(fc&0x10 == Tuint32_t(0)) {
 47815  		goto __1249
 47816  	}
 47817  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47818  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47819  	goto __1250
 47820  __1249:
 47821  	if !(fc&0x08 == Tuint32_t(0)) {
 47822  		goto __1251
 47823  	}
 47824  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47825  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47826  	goto __1252
 47827  __1251:
 47828  	if !(fc&0x04 == Tuint32_t(0)) {
 47829  		goto __1253
 47830  	}
 47831  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47832  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47833  	goto __1254
 47834  __1253:
 47835  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47836  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47837  __1254:
 47838  	;
 47839  __1252:
 47840  	;
 47841  __1250:
 47842  	;
 47843  __1248:
 47844  	;
 47845  __1246:
 47846  	;
 47847  
 47848  	category = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 47849  	if !(libc.Bool32(category == ucp_L || category == ucp_N) == notmatch1) {
 47850  		goto __1255
 47851  	}
 47852  	rrc = DMATCH_NOMATCH
 47853  	goto RETURN_SWITCH
 47854  __1255:
 47855  	;
 47856  
 47857  	goto __1241
 47858  __1241:
 47859  	i++
 47860  	goto __1240
 47861  	goto __1242
 47862  __1242:
 47863  	;
 47864  	goto __1128
 47865  
 47866  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 47867  	//           which means that Perl space and POSIX space are now identical. PCRE
 47868  	//           was changed at release 8.34.
 47869  
 47870  __1136: // Perl space
 47871  __1137: // POSIX space
 47872  	i = Tuint32_t(1)
 47873  __1256:
 47874  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 47875  		goto __1258
 47876  	}
 47877  
 47878  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 47879  		goto __1259
 47880  	}
 47881  
 47882  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 47883  		goto __1260
 47884  	}
 47885  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 47886  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 47887  		goto __1261
 47888  	}
 47889  	return -2
 47890  __1261:
 47891  	;
 47892  __1260:
 47893  	;
 47894  
 47895  	rrc = DMATCH_NOMATCH
 47896  	goto RETURN_SWITCH
 47897  
 47898  __1259:
 47899  	;
 47900  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 47901  	if !(utf != 0 && fc >= 0xc0) {
 47902  		goto __1262
 47903  	}
 47904  	if !(fc&0x20 == Tuint32_t(0)) {
 47905  		goto __1263
 47906  	}
 47907  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 47908  	goto __1264
 47909  __1263:
 47910  	if !(fc&0x10 == Tuint32_t(0)) {
 47911  		goto __1265
 47912  	}
 47913  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 47914  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 47915  	goto __1266
 47916  __1265:
 47917  	if !(fc&0x08 == Tuint32_t(0)) {
 47918  		goto __1267
 47919  	}
 47920  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 47921  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 47922  	goto __1268
 47923  __1267:
 47924  	if !(fc&0x04 == Tuint32_t(0)) {
 47925  		goto __1269
 47926  	}
 47927  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 47928  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 47929  	goto __1270
 47930  __1269:
 47931  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 47932  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 47933  __1270:
 47934  	;
 47935  __1268:
 47936  	;
 47937  __1266:
 47938  	;
 47939  __1264:
 47940  	;
 47941  __1262:
 47942  	;
 47943  
 47944  	switch fc {
 47945  	case Tuint32_t('\011'):
 47946  		goto __1272
 47947  	case Tuint32_t('\040'):
 47948  		goto __1273
 47949  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 47950  		goto __1274
 47951  	case Tuint32_t(0x1680):
 47952  		goto __1275 /* OGHAM SPACE MARK */
 47953  	case Tuint32_t(0x180e):
 47954  		goto __1276 /* MONGOLIAN VOWEL SEPARATOR */
 47955  	case Tuint32_t(0x2000):
 47956  		goto __1277 /* EN QUAD */
 47957  	case Tuint32_t(0x2001):
 47958  		goto __1278 /* EM QUAD */
 47959  	case Tuint32_t(0x2002):
 47960  		goto __1279 /* EN SPACE */
 47961  	case Tuint32_t(0x2003):
 47962  		goto __1280 /* EM SPACE */
 47963  	case Tuint32_t(0x2004):
 47964  		goto __1281 /* THREE-PER-EM SPACE */
 47965  	case Tuint32_t(0x2005):
 47966  		goto __1282 /* FOUR-PER-EM SPACE */
 47967  	case Tuint32_t(0x2006):
 47968  		goto __1283 /* SIX-PER-EM SPACE */
 47969  	case Tuint32_t(0x2007):
 47970  		goto __1284 /* FIGURE SPACE */
 47971  	case Tuint32_t(0x2008):
 47972  		goto __1285 /* PUNCTUATION SPACE */
 47973  	case Tuint32_t(0x2009):
 47974  		goto __1286 /* THIN SPACE */
 47975  	case Tuint32_t(0x200A):
 47976  		goto __1287 /* HAIR SPACE */
 47977  	case Tuint32_t(0x202f):
 47978  		goto __1288 /* NARROW NO-BREAK SPACE */
 47979  	case Tuint32_t(0x205f):
 47980  		goto __1289 /* MEDIUM MATHEMATICAL SPACE */
 47981  	case Tuint32_t(0x3000):
 47982  		goto __1290
 47983  	case Tuint32_t('\012'):
 47984  		goto __1291
 47985  	case Tuint32_t('\013'):
 47986  		goto __1292
 47987  	case Tuint32_t('\014'):
 47988  		goto __1293
 47989  	case Tuint32_t('\015'):
 47990  		goto __1294
 47991  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 47992  		goto __1295
 47993  	case Tuint32_t(0x2028):
 47994  		goto __1296 /* LINE SEPARATOR */
 47995  	case Tuint32_t(0x2029):
 47996  		goto __1297
 47997  
 47998  	default:
 47999  		goto __1298
 48000  	}
 48001  	goto __1271
 48002  
 48003  __1272:
 48004  __1273:
 48005  __1274:
 48006  __1275: /* OGHAM SPACE MARK */
 48007  __1276: /* MONGOLIAN VOWEL SEPARATOR */
 48008  __1277: /* EN QUAD */
 48009  __1278: /* EM QUAD */
 48010  __1279: /* EN SPACE */
 48011  __1280: /* EM SPACE */
 48012  __1281: /* THREE-PER-EM SPACE */
 48013  __1282: /* FOUR-PER-EM SPACE */
 48014  __1283: /* SIX-PER-EM SPACE */
 48015  __1284: /* FIGURE SPACE */
 48016  __1285: /* PUNCTUATION SPACE */
 48017  __1286: /* THIN SPACE */
 48018  __1287: /* HAIR SPACE */
 48019  __1288: /* NARROW NO-BREAK SPACE */
 48020  __1289: /* MEDIUM MATHEMATICAL SPACE */
 48021  __1290:
 48022  __1291:
 48023  __1292:
 48024  __1293:
 48025  __1294:
 48026  __1295:
 48027  __1296: /* LINE SEPARATOR */
 48028  __1297:
 48029  	if !(notmatch1 != 0) {
 48030  		goto __1299
 48031  	}
 48032  	rrc = DMATCH_NOMATCH
 48033  	goto RETURN_SWITCH
 48034  __1299:
 48035  	;
 48036  
 48037  	goto __1271
 48038  
 48039  __1298:
 48040  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype] == ucp_Z) == notmatch1) {
 48041  		goto __1300
 48042  	}
 48043  	rrc = DMATCH_NOMATCH
 48044  	goto RETURN_SWITCH
 48045  __1300:
 48046  	;
 48047  
 48048  	goto __1271
 48049  __1271:
 48050  	;
 48051  	goto __1257
 48052  __1257:
 48053  	i++
 48054  	goto __1256
 48055  	goto __1258
 48056  __1258:
 48057  	;
 48058  	goto __1128
 48059  
 48060  __1138:
 48061  	i = Tuint32_t(1)
 48062  __1301:
 48063  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48064  		goto __1303
 48065  	}
 48066  
 48067  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48068  		goto __1304
 48069  	}
 48070  
 48071  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48072  		goto __1305
 48073  	}
 48074  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48075  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48076  		goto __1306
 48077  	}
 48078  	return -2
 48079  __1306:
 48080  	;
 48081  __1305:
 48082  	;
 48083  
 48084  	rrc = DMATCH_NOMATCH
 48085  	goto RETURN_SWITCH
 48086  
 48087  __1304:
 48088  	;
 48089  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 48090  	if !(utf != 0 && fc >= 0xc0) {
 48091  		goto __1307
 48092  	}
 48093  	if !(fc&0x20 == Tuint32_t(0)) {
 48094  		goto __1308
 48095  	}
 48096  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 48097  	goto __1309
 48098  __1308:
 48099  	if !(fc&0x10 == Tuint32_t(0)) {
 48100  		goto __1310
 48101  	}
 48102  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 48103  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 48104  	goto __1311
 48105  __1310:
 48106  	if !(fc&0x08 == Tuint32_t(0)) {
 48107  		goto __1312
 48108  	}
 48109  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 48110  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 48111  	goto __1313
 48112  __1312:
 48113  	if !(fc&0x04 == Tuint32_t(0)) {
 48114  		goto __1314
 48115  	}
 48116  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 48117  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 48118  	goto __1315
 48119  __1314:
 48120  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 48121  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 48122  __1315:
 48123  	;
 48124  __1313:
 48125  	;
 48126  __1311:
 48127  	;
 48128  __1309:
 48129  	;
 48130  __1307:
 48131  	;
 48132  
 48133  	category1 = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 48134  	if !(libc.Bool32(category1 == ucp_L || category1 == ucp_N || fc == Tuint32_t('\137')) == notmatch1) {
 48135  		goto __1316
 48136  	}
 48137  	rrc = DMATCH_NOMATCH
 48138  	goto RETURN_SWITCH
 48139  __1316:
 48140  	;
 48141  
 48142  	goto __1302
 48143  __1302:
 48144  	i++
 48145  	goto __1301
 48146  	goto __1303
 48147  __1303:
 48148  	;
 48149  	goto __1128
 48150  
 48151  __1139:
 48152  	i = Tuint32_t(1)
 48153  __1317:
 48154  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48155  		goto __1319
 48156  	}
 48157  
 48158  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48159  		goto __1320
 48160  	}
 48161  
 48162  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48163  		goto __1321
 48164  	}
 48165  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48166  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48167  		goto __1322
 48168  	}
 48169  	return -2
 48170  __1322:
 48171  	;
 48172  __1321:
 48173  	;
 48174  
 48175  	rrc = DMATCH_NOMATCH
 48176  	goto RETURN_SWITCH
 48177  
 48178  __1320:
 48179  	;
 48180  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 48181  	if !(utf != 0 && fc >= 0xc0) {
 48182  		goto __1323
 48183  	}
 48184  	if !(fc&0x20 == Tuint32_t(0)) {
 48185  		goto __1324
 48186  	}
 48187  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 48188  	goto __1325
 48189  __1324:
 48190  	if !(fc&0x10 == Tuint32_t(0)) {
 48191  		goto __1326
 48192  	}
 48193  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 48194  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 48195  	goto __1327
 48196  __1326:
 48197  	if !(fc&0x08 == Tuint32_t(0)) {
 48198  		goto __1328
 48199  	}
 48200  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 48201  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 48202  	goto __1329
 48203  __1328:
 48204  	if !(fc&0x04 == Tuint32_t(0)) {
 48205  		goto __1330
 48206  	}
 48207  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 48208  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 48209  	goto __1331
 48210  __1330:
 48211  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 48212  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 48213  __1331:
 48214  	;
 48215  __1329:
 48216  	;
 48217  __1327:
 48218  	;
 48219  __1325:
 48220  	;
 48221  __1323:
 48222  	;
 48223  
 48224  	cp1 = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)))*4
 48225  __1332:
 48226  
 48227  	if !(fc < *(*Tuint32_t)(unsafe.Pointer(cp1))) {
 48228  		goto __1335
 48229  	}
 48230  
 48231  	if !(notmatch1 != 0) {
 48232  		goto __1336
 48233  	}
 48234  	goto __1334
 48235  __1336:
 48236  	;
 48237  	rrc = DMATCH_NOMATCH
 48238  	goto RETURN_SWITCH
 48239  
 48240  __1335:
 48241  	;
 48242  	if !(fc == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp1, 4)))) {
 48243  		goto __1337
 48244  	}
 48245  
 48246  	if !(notmatch1 != 0) {
 48247  		goto __1338
 48248  	}
 48249  	rrc = DMATCH_NOMATCH
 48250  	goto RETURN_SWITCH
 48251  __1338:
 48252  	;
 48253  
 48254  	goto __1334
 48255  __1337:
 48256  	;
 48257  	goto __1333
 48258  __1333:
 48259  	goto __1332
 48260  	goto __1334
 48261  __1334:
 48262  	;
 48263  	goto __1318
 48264  __1318:
 48265  	i++
 48266  	goto __1317
 48267  	goto __1319
 48268  __1319:
 48269  	;
 48270  	goto __1128
 48271  
 48272  __1140:
 48273  	i = Tuint32_t(1)
 48274  __1339:
 48275  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48276  		goto __1341
 48277  	}
 48278  
 48279  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48280  		goto __1342
 48281  	}
 48282  
 48283  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48284  		goto __1343
 48285  	}
 48286  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48287  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48288  		goto __1344
 48289  	}
 48290  	return -2
 48291  __1344:
 48292  	;
 48293  __1343:
 48294  	;
 48295  
 48296  	rrc = DMATCH_NOMATCH
 48297  	goto RETURN_SWITCH
 48298  
 48299  __1342:
 48300  	;
 48301  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 48302  	if !(utf != 0 && fc >= 0xc0) {
 48303  		goto __1345
 48304  	}
 48305  	if !(fc&0x20 == Tuint32_t(0)) {
 48306  		goto __1346
 48307  	}
 48308  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 48309  	goto __1347
 48310  __1346:
 48311  	if !(fc&0x10 == Tuint32_t(0)) {
 48312  		goto __1348
 48313  	}
 48314  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 48315  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 48316  	goto __1349
 48317  __1348:
 48318  	if !(fc&0x08 == Tuint32_t(0)) {
 48319  		goto __1350
 48320  	}
 48321  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 48322  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 48323  	goto __1351
 48324  __1350:
 48325  	if !(fc&0x04 == Tuint32_t(0)) {
 48326  		goto __1352
 48327  	}
 48328  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 48329  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 48330  	goto __1353
 48331  __1352:
 48332  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 48333  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 48334  __1353:
 48335  	;
 48336  __1351:
 48337  	;
 48338  __1349:
 48339  	;
 48340  __1347:
 48341  	;
 48342  __1345:
 48343  	;
 48344  
 48345  	if !(libc.Bool32(fc == Tuint32_t('\044') || fc == Tuint32_t('\100') || fc == Tuint32_t('\140') || fc >= Tuint32_t(0xa0) && fc <= Tuint32_t(0xd7ff) || fc >= Tuint32_t(0xe000)) == notmatch1) {
 48346  		goto __1354
 48347  	}
 48348  	rrc = DMATCH_NOMATCH
 48349  	goto RETURN_SWITCH
 48350  __1354:
 48351  	;
 48352  
 48353  	goto __1340
 48354  __1340:
 48355  	i++
 48356  	goto __1339
 48357  	goto __1341
 48358  __1341:
 48359  	;
 48360  	goto __1128
 48361  
 48362  __1141:
 48363  	i = Tuint32_t(1)
 48364  __1355:
 48365  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48366  		goto __1357
 48367  	}
 48368  
 48369  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48370  		goto __1358
 48371  	}
 48372  
 48373  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48374  		goto __1359
 48375  	}
 48376  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48377  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48378  		goto __1360
 48379  	}
 48380  	return -2
 48381  __1360:
 48382  	;
 48383  __1359:
 48384  	;
 48385  
 48386  	rrc = DMATCH_NOMATCH
 48387  	goto RETURN_SWITCH
 48388  
 48389  __1358:
 48390  	;
 48391  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 48392  	if !(utf != 0 && fc >= 0xc0) {
 48393  		goto __1361
 48394  	}
 48395  	if !(fc&0x20 == Tuint32_t(0)) {
 48396  		goto __1362
 48397  	}
 48398  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 48399  	goto __1363
 48400  __1362:
 48401  	if !(fc&0x10 == Tuint32_t(0)) {
 48402  		goto __1364
 48403  	}
 48404  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 48405  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 48406  	goto __1365
 48407  __1364:
 48408  	if !(fc&0x08 == Tuint32_t(0)) {
 48409  		goto __1366
 48410  	}
 48411  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 48412  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 48413  	goto __1367
 48414  __1366:
 48415  	if !(fc&0x04 == Tuint32_t(0)) {
 48416  		goto __1368
 48417  	}
 48418  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 48419  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 48420  	goto __1369
 48421  __1368:
 48422  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 48423  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 48424  __1369:
 48425  	;
 48426  __1367:
 48427  	;
 48428  __1365:
 48429  	;
 48430  __1363:
 48431  	;
 48432  __1361:
 48433  	;
 48434  
 48435  	if !(libc.Bool32(Tuint32_t(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch1) {
 48436  		goto __1370
 48437  	}
 48438  	rrc = DMATCH_NOMATCH
 48439  	goto RETURN_SWITCH
 48440  __1370:
 48441  	;
 48442  
 48443  	goto __1356
 48444  __1356:
 48445  	i++
 48446  	goto __1355
 48447  	goto __1357
 48448  __1357:
 48449  	;
 48450  	goto __1128
 48451  
 48452  __1142:
 48453  	i = Tuint32_t(1)
 48454  __1371:
 48455  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48456  		goto __1373
 48457  	}
 48458  
 48459  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48460  		goto __1374
 48461  	}
 48462  
 48463  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48464  		goto __1375
 48465  	}
 48466  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48467  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48468  		goto __1376
 48469  	}
 48470  	return -2
 48471  __1376:
 48472  	;
 48473  __1375:
 48474  	;
 48475  
 48476  	rrc = DMATCH_NOMATCH
 48477  	goto RETURN_SWITCH
 48478  
 48479  __1374:
 48480  	;
 48481  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 48482  	if !(utf != 0 && fc >= 0xc0) {
 48483  		goto __1377
 48484  	}
 48485  	if !(fc&0x20 == Tuint32_t(0)) {
 48486  		goto __1378
 48487  	}
 48488  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 48489  	goto __1379
 48490  __1378:
 48491  	if !(fc&0x10 == Tuint32_t(0)) {
 48492  		goto __1380
 48493  	}
 48494  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 48495  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 48496  	goto __1381
 48497  __1380:
 48498  	if !(fc&0x08 == Tuint32_t(0)) {
 48499  		goto __1382
 48500  	}
 48501  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 48502  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 48503  	goto __1383
 48504  __1382:
 48505  	if !(fc&0x04 == Tuint32_t(0)) {
 48506  		goto __1384
 48507  	}
 48508  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 48509  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 48510  	goto __1385
 48511  __1384:
 48512  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 48513  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 48514  __1385:
 48515  	;
 48516  __1383:
 48517  	;
 48518  __1381:
 48519  	;
 48520  __1379:
 48521  	;
 48522  __1377:
 48523  	;
 48524  
 48525  	prop2 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12
 48526  	ok3 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop2)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))/Tuint32_t(32))*4))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))%Tuint32_t(32))) != Tuint32_t(0))
 48527  	if !(ok3 == notmatch1) {
 48528  		goto __1386
 48529  	}
 48530  	rrc = DMATCH_NOMATCH
 48531  	goto RETURN_SWITCH
 48532  __1386:
 48533  	;
 48534  
 48535  	goto __1372
 48536  __1372:
 48537  	i++
 48538  	goto __1371
 48539  	goto __1373
 48540  __1373:
 48541  	;
 48542  	goto __1128
 48543  
 48544  	// This should not occur
 48545  
 48546  __1143:
 48547  	return -44
 48548  __1128:
 48549  	;
 48550  	goto __1127
 48551  __1126:
 48552  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_EXTUNI) {
 48553  		goto __1387
 48554  	}
 48555  
 48556  	i = Tuint32_t(1)
 48557  __1389:
 48558  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48559  		goto __1391
 48560  	}
 48561  
 48562  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48563  		goto __1392
 48564  	}
 48565  
 48566  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48567  		goto __1394
 48568  	}
 48569  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48570  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48571  		goto __1395
 48572  	}
 48573  	return -2
 48574  __1395:
 48575  	;
 48576  __1394:
 48577  	;
 48578  
 48579  	rrc = DMATCH_NOMATCH
 48580  	goto RETURN_SWITCH
 48581  
 48582  	goto __1393
 48583  __1392:
 48584  
 48585  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 48586  	if !(utf != 0 && fc >= 0xc0) {
 48587  		goto __1396
 48588  	}
 48589  	if !(fc&0x20 == Tuint32_t(0)) {
 48590  		goto __1397
 48591  	}
 48592  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 48593  	goto __1398
 48594  __1397:
 48595  	if !(fc&0x10 == Tuint32_t(0)) {
 48596  		goto __1399
 48597  	}
 48598  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 48599  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 48600  	goto __1400
 48601  __1399:
 48602  	if !(fc&0x08 == Tuint32_t(0)) {
 48603  		goto __1401
 48604  	}
 48605  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 48606  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 48607  	goto __1402
 48608  __1401:
 48609  	if !(fc&0x04 == Tuint32_t(0)) {
 48610  		goto __1403
 48611  	}
 48612  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 48613  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 48614  	goto __1404
 48615  __1403:
 48616  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 48617  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 48618  __1404:
 48619  	;
 48620  __1402:
 48621  	;
 48622  __1400:
 48623  	;
 48624  __1398:
 48625  	;
 48626  __1396:
 48627  	;
 48628  
 48629  	(*Theapframe)(unsafe.Pointer(F)).Feptr = X_pcre2_extuni_8(tls, fc, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject,
 48630  		(*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, utf, uintptr(0))
 48631  __1393:
 48632  	;
 48633  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48634  		goto __1405
 48635  	}
 48636  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48637  		goto __1406
 48638  	}
 48639  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48640  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48641  		goto __1407
 48642  	}
 48643  	return -2
 48644  __1407:
 48645  	;
 48646  __1406:
 48647  	;
 48648  __1405:
 48649  	;
 48650  
 48651  	goto __1390
 48652  __1390:
 48653  	i++
 48654  	goto __1389
 48655  	goto __1391
 48656  __1391:
 48657  	;
 48658  	goto __1388
 48659  __1387:
 48660  
 48661  	// Handle all other cases in UTF mode
 48662  
 48663  	if !(utf != 0) {
 48664  		goto __1408
 48665  	}
 48666  	switch *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) {
 48667  	case OP_ANY:
 48668  		goto __1411
 48669  
 48670  	case OP_ALLANY:
 48671  		goto __1412
 48672  
 48673  	case OP_ANYBYTE:
 48674  		goto __1413
 48675  
 48676  	case OP_ANYNL:
 48677  		goto __1414
 48678  
 48679  	case OP_NOT_HSPACE:
 48680  		goto __1415
 48681  
 48682  	case OP_HSPACE:
 48683  		goto __1416
 48684  
 48685  	case OP_NOT_VSPACE:
 48686  		goto __1417
 48687  
 48688  	case OP_VSPACE:
 48689  		goto __1418
 48690  
 48691  	case OP_NOT_DIGIT:
 48692  		goto __1419
 48693  
 48694  	case OP_DIGIT:
 48695  		goto __1420
 48696  
 48697  	case OP_NOT_WHITESPACE:
 48698  		goto __1421
 48699  
 48700  	case OP_WHITESPACE:
 48701  		goto __1422
 48702  
 48703  	case OP_NOT_WORDCHAR:
 48704  		goto __1423
 48705  
 48706  	case OP_WORDCHAR:
 48707  		goto __1424
 48708  
 48709  	default:
 48710  		goto __1425
 48711  	}
 48712  	goto __1410
 48713  
 48714  __1411:
 48715  	i = Tuint32_t(1)
 48716  __1426:
 48717  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48718  		goto __1428
 48719  	}
 48720  
 48721  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48722  		goto __1429
 48723  	}
 48724  
 48725  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48726  		goto __1430
 48727  	}
 48728  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48729  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48730  		goto __1431
 48731  	}
 48732  	return -2
 48733  __1431:
 48734  	;
 48735  __1430:
 48736  	;
 48737  
 48738  	rrc = DMATCH_NOMATCH
 48739  	goto RETURN_SWITCH
 48740  
 48741  __1429:
 48742  	;
 48743  	if !(func() int32 {
 48744  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 48745  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 48746  		}
 48747  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 48748  	}() != 0) {
 48749  		goto __1432
 48750  	}
 48751  	rrc = DMATCH_NOMATCH
 48752  	goto RETURN_SWITCH
 48753  __1432:
 48754  	;
 48755  
 48756  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr+uintptr(1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 48757  		goto __1433
 48758  	}
 48759  
 48760  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48761  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48762  		goto __1434
 48763  	}
 48764  	return -2
 48765  __1434:
 48766  	;
 48767  __1433:
 48768  	;
 48769  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 48770  __1435:
 48771  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 48772  		goto __1436
 48773  	}
 48774  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 48775  	goto __1435
 48776  __1436:
 48777  	;
 48778  	goto __1427
 48779  __1427:
 48780  	i++
 48781  	goto __1426
 48782  	goto __1428
 48783  __1428:
 48784  	;
 48785  	goto __1410
 48786  
 48787  __1412:
 48788  	i = Tuint32_t(1)
 48789  __1437:
 48790  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48791  		goto __1439
 48792  	}
 48793  
 48794  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48795  		goto __1440
 48796  	}
 48797  
 48798  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48799  		goto __1441
 48800  	}
 48801  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48802  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48803  		goto __1442
 48804  	}
 48805  	return -2
 48806  __1442:
 48807  	;
 48808  __1441:
 48809  	;
 48810  
 48811  	rrc = DMATCH_NOMATCH
 48812  	goto RETURN_SWITCH
 48813  
 48814  __1440:
 48815  	;
 48816  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 48817  __1443:
 48818  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 48819  		goto __1444
 48820  	}
 48821  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 48822  	goto __1443
 48823  __1444:
 48824  	;
 48825  	goto __1438
 48826  __1438:
 48827  	i++
 48828  	goto __1437
 48829  	goto __1439
 48830  __1439:
 48831  	;
 48832  	goto __1410
 48833  
 48834  __1413:
 48835  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56)))) {
 48836  		goto __1445
 48837  	}
 48838  	rrc = DMATCH_NOMATCH
 48839  	goto RETURN_SWITCH
 48840  __1445:
 48841  	;
 48842  
 48843  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(*(*Tuint32_t)(unsafe.Pointer(F + 56)))
 48844  	goto __1410
 48845  
 48846  __1414:
 48847  	i = Tuint32_t(1)
 48848  __1446:
 48849  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48850  		goto __1448
 48851  	}
 48852  
 48853  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48854  		goto __1449
 48855  	}
 48856  
 48857  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48858  		goto __1450
 48859  	}
 48860  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48861  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48862  		goto __1451
 48863  	}
 48864  	return -2
 48865  __1451:
 48866  	;
 48867  __1450:
 48868  	;
 48869  
 48870  	rrc = DMATCH_NOMATCH
 48871  	goto RETURN_SWITCH
 48872  
 48873  __1449:
 48874  	;
 48875  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 48876  	if !(fc >= 0xc0) {
 48877  		goto __1452
 48878  	}
 48879  	if !(fc&0x20 == Tuint32_t(0)) {
 48880  		goto __1453
 48881  	}
 48882  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 48883  	goto __1454
 48884  __1453:
 48885  	if !(fc&0x10 == Tuint32_t(0)) {
 48886  		goto __1455
 48887  	}
 48888  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 48889  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 48890  	goto __1456
 48891  __1455:
 48892  	if !(fc&0x08 == Tuint32_t(0)) {
 48893  		goto __1457
 48894  	}
 48895  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 48896  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 48897  	goto __1458
 48898  __1457:
 48899  	if !(fc&0x04 == Tuint32_t(0)) {
 48900  		goto __1459
 48901  	}
 48902  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 48903  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 48904  	goto __1460
 48905  __1459:
 48906  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 48907  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 48908  __1460:
 48909  	;
 48910  __1458:
 48911  	;
 48912  __1456:
 48913  	;
 48914  __1454:
 48915  	;
 48916  __1452:
 48917  	;
 48918  
 48919  	switch fc {
 48920  	default:
 48921  		goto __1462
 48922  
 48923  	case Tuint32_t('\015'):
 48924  		goto __1463
 48925  
 48926  	case Tuint32_t('\012'):
 48927  		goto __1464
 48928  
 48929  	case Tuint32_t('\013'):
 48930  		goto __1465
 48931  	case Tuint32_t('\014'):
 48932  		goto __1466
 48933  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 48934  		goto __1467
 48935  	case Tuint32_t(0x2028):
 48936  		goto __1468
 48937  	case Tuint32_t(0x2029):
 48938  		goto __1469
 48939  	}
 48940  	goto __1461
 48941  
 48942  __1462:
 48943  	rrc = DMATCH_NOMATCH
 48944  	goto RETURN_SWITCH
 48945  
 48946  __1463:
 48947  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012') {
 48948  		goto __1470
 48949  	}
 48950  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 48951  __1470:
 48952  	;
 48953  	goto __1461
 48954  
 48955  __1464:
 48956  	goto __1461
 48957  
 48958  __1465:
 48959  __1466:
 48960  __1467:
 48961  __1468:
 48962  __1469:
 48963  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 48964  		goto __1471
 48965  	}
 48966  	rrc = DMATCH_NOMATCH
 48967  	goto RETURN_SWITCH
 48968  __1471:
 48969  	;
 48970  
 48971  	goto __1461
 48972  __1461:
 48973  	;
 48974  	goto __1447
 48975  __1447:
 48976  	i++
 48977  	goto __1446
 48978  	goto __1448
 48979  __1448:
 48980  	;
 48981  	goto __1410
 48982  
 48983  __1415:
 48984  	i = Tuint32_t(1)
 48985  __1472:
 48986  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 48987  		goto __1474
 48988  	}
 48989  
 48990  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 48991  		goto __1475
 48992  	}
 48993  
 48994  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 48995  		goto __1476
 48996  	}
 48997  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 48998  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 48999  		goto __1477
 49000  	}
 49001  	return -2
 49002  __1477:
 49003  	;
 49004  __1476:
 49005  	;
 49006  
 49007  	rrc = DMATCH_NOMATCH
 49008  	goto RETURN_SWITCH
 49009  
 49010  __1475:
 49011  	;
 49012  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 49013  	if !(fc >= 0xc0) {
 49014  		goto __1478
 49015  	}
 49016  	if !(fc&0x20 == Tuint32_t(0)) {
 49017  		goto __1479
 49018  	}
 49019  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 49020  	goto __1480
 49021  __1479:
 49022  	if !(fc&0x10 == Tuint32_t(0)) {
 49023  		goto __1481
 49024  	}
 49025  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 49026  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 49027  	goto __1482
 49028  __1481:
 49029  	if !(fc&0x08 == Tuint32_t(0)) {
 49030  		goto __1483
 49031  	}
 49032  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 49033  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 49034  	goto __1484
 49035  __1483:
 49036  	if !(fc&0x04 == Tuint32_t(0)) {
 49037  		goto __1485
 49038  	}
 49039  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 49040  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 49041  	goto __1486
 49042  __1485:
 49043  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 49044  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 49045  __1486:
 49046  	;
 49047  __1484:
 49048  	;
 49049  __1482:
 49050  	;
 49051  __1480:
 49052  	;
 49053  __1478:
 49054  	;
 49055  
 49056  	switch fc {
 49057  	case Tuint32_t('\011'):
 49058  		goto __1488
 49059  	case Tuint32_t('\040'):
 49060  		goto __1489
 49061  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 49062  		goto __1490
 49063  	case Tuint32_t(0x1680):
 49064  		goto __1491 /* OGHAM SPACE MARK */
 49065  	case Tuint32_t(0x180e):
 49066  		goto __1492 /* MONGOLIAN VOWEL SEPARATOR */
 49067  	case Tuint32_t(0x2000):
 49068  		goto __1493 /* EN QUAD */
 49069  	case Tuint32_t(0x2001):
 49070  		goto __1494 /* EM QUAD */
 49071  	case Tuint32_t(0x2002):
 49072  		goto __1495 /* EN SPACE */
 49073  	case Tuint32_t(0x2003):
 49074  		goto __1496 /* EM SPACE */
 49075  	case Tuint32_t(0x2004):
 49076  		goto __1497 /* THREE-PER-EM SPACE */
 49077  	case Tuint32_t(0x2005):
 49078  		goto __1498 /* FOUR-PER-EM SPACE */
 49079  	case Tuint32_t(0x2006):
 49080  		goto __1499 /* SIX-PER-EM SPACE */
 49081  	case Tuint32_t(0x2007):
 49082  		goto __1500 /* FIGURE SPACE */
 49083  	case Tuint32_t(0x2008):
 49084  		goto __1501 /* PUNCTUATION SPACE */
 49085  	case Tuint32_t(0x2009):
 49086  		goto __1502 /* THIN SPACE */
 49087  	case Tuint32_t(0x200A):
 49088  		goto __1503 /* HAIR SPACE */
 49089  	case Tuint32_t(0x202f):
 49090  		goto __1504 /* NARROW NO-BREAK SPACE */
 49091  	case Tuint32_t(0x205f):
 49092  		goto __1505 /* MEDIUM MATHEMATICAL SPACE */
 49093  	case Tuint32_t(0x3000):
 49094  		goto __1506
 49095  	default:
 49096  		goto __1507
 49097  	}
 49098  	goto __1487
 49099  
 49100  __1488:
 49101  __1489:
 49102  __1490:
 49103  __1491: /* OGHAM SPACE MARK */
 49104  __1492: /* MONGOLIAN VOWEL SEPARATOR */
 49105  __1493: /* EN QUAD */
 49106  __1494: /* EM QUAD */
 49107  __1495: /* EN SPACE */
 49108  __1496: /* EM SPACE */
 49109  __1497: /* THREE-PER-EM SPACE */
 49110  __1498: /* FOUR-PER-EM SPACE */
 49111  __1499: /* SIX-PER-EM SPACE */
 49112  __1500: /* FIGURE SPACE */
 49113  __1501: /* PUNCTUATION SPACE */
 49114  __1502: /* THIN SPACE */
 49115  __1503: /* HAIR SPACE */
 49116  __1504: /* NARROW NO-BREAK SPACE */
 49117  __1505: /* MEDIUM MATHEMATICAL SPACE */
 49118  __1506:
 49119  	rrc = DMATCH_NOMATCH
 49120  	goto RETURN_SWITCH
 49121  
 49122  __1507:
 49123  	goto __1487
 49124  __1487:
 49125  	;
 49126  	goto __1473
 49127  __1473:
 49128  	i++
 49129  	goto __1472
 49130  	goto __1474
 49131  __1474:
 49132  	;
 49133  	goto __1410
 49134  
 49135  __1416:
 49136  	i = Tuint32_t(1)
 49137  __1508:
 49138  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49139  		goto __1510
 49140  	}
 49141  
 49142  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49143  		goto __1511
 49144  	}
 49145  
 49146  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49147  		goto __1512
 49148  	}
 49149  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49150  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49151  		goto __1513
 49152  	}
 49153  	return -2
 49154  __1513:
 49155  	;
 49156  __1512:
 49157  	;
 49158  
 49159  	rrc = DMATCH_NOMATCH
 49160  	goto RETURN_SWITCH
 49161  
 49162  __1511:
 49163  	;
 49164  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 49165  	if !(fc >= 0xc0) {
 49166  		goto __1514
 49167  	}
 49168  	if !(fc&0x20 == Tuint32_t(0)) {
 49169  		goto __1515
 49170  	}
 49171  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 49172  	goto __1516
 49173  __1515:
 49174  	if !(fc&0x10 == Tuint32_t(0)) {
 49175  		goto __1517
 49176  	}
 49177  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 49178  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 49179  	goto __1518
 49180  __1517:
 49181  	if !(fc&0x08 == Tuint32_t(0)) {
 49182  		goto __1519
 49183  	}
 49184  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 49185  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 49186  	goto __1520
 49187  __1519:
 49188  	if !(fc&0x04 == Tuint32_t(0)) {
 49189  		goto __1521
 49190  	}
 49191  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 49192  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 49193  	goto __1522
 49194  __1521:
 49195  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 49196  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 49197  __1522:
 49198  	;
 49199  __1520:
 49200  	;
 49201  __1518:
 49202  	;
 49203  __1516:
 49204  	;
 49205  __1514:
 49206  	;
 49207  
 49208  	switch fc {
 49209  	case Tuint32_t('\011'):
 49210  		goto __1524
 49211  	case Tuint32_t('\040'):
 49212  		goto __1525
 49213  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 49214  		goto __1526
 49215  	case Tuint32_t(0x1680):
 49216  		goto __1527 /* OGHAM SPACE MARK */
 49217  	case Tuint32_t(0x180e):
 49218  		goto __1528 /* MONGOLIAN VOWEL SEPARATOR */
 49219  	case Tuint32_t(0x2000):
 49220  		goto __1529 /* EN QUAD */
 49221  	case Tuint32_t(0x2001):
 49222  		goto __1530 /* EM QUAD */
 49223  	case Tuint32_t(0x2002):
 49224  		goto __1531 /* EN SPACE */
 49225  	case Tuint32_t(0x2003):
 49226  		goto __1532 /* EM SPACE */
 49227  	case Tuint32_t(0x2004):
 49228  		goto __1533 /* THREE-PER-EM SPACE */
 49229  	case Tuint32_t(0x2005):
 49230  		goto __1534 /* FOUR-PER-EM SPACE */
 49231  	case Tuint32_t(0x2006):
 49232  		goto __1535 /* SIX-PER-EM SPACE */
 49233  	case Tuint32_t(0x2007):
 49234  		goto __1536 /* FIGURE SPACE */
 49235  	case Tuint32_t(0x2008):
 49236  		goto __1537 /* PUNCTUATION SPACE */
 49237  	case Tuint32_t(0x2009):
 49238  		goto __1538 /* THIN SPACE */
 49239  	case Tuint32_t(0x200A):
 49240  		goto __1539 /* HAIR SPACE */
 49241  	case Tuint32_t(0x202f):
 49242  		goto __1540 /* NARROW NO-BREAK SPACE */
 49243  	case Tuint32_t(0x205f):
 49244  		goto __1541 /* MEDIUM MATHEMATICAL SPACE */
 49245  	case Tuint32_t(0x3000):
 49246  		goto __1542
 49247  	default:
 49248  		goto __1543
 49249  	}
 49250  	goto __1523
 49251  
 49252  __1524:
 49253  __1525:
 49254  __1526:
 49255  __1527: /* OGHAM SPACE MARK */
 49256  __1528: /* MONGOLIAN VOWEL SEPARATOR */
 49257  __1529: /* EN QUAD */
 49258  __1530: /* EM QUAD */
 49259  __1531: /* EN SPACE */
 49260  __1532: /* EM SPACE */
 49261  __1533: /* THREE-PER-EM SPACE */
 49262  __1534: /* FOUR-PER-EM SPACE */
 49263  __1535: /* SIX-PER-EM SPACE */
 49264  __1536: /* FIGURE SPACE */
 49265  __1537: /* PUNCTUATION SPACE */
 49266  __1538: /* THIN SPACE */
 49267  __1539: /* HAIR SPACE */
 49268  __1540: /* NARROW NO-BREAK SPACE */
 49269  __1541: /* MEDIUM MATHEMATICAL SPACE */
 49270  __1542:
 49271  	goto __1523
 49272  __1543:
 49273  	rrc = DMATCH_NOMATCH
 49274  	goto RETURN_SWITCH
 49275  
 49276  __1523:
 49277  	;
 49278  	goto __1509
 49279  __1509:
 49280  	i++
 49281  	goto __1508
 49282  	goto __1510
 49283  __1510:
 49284  	;
 49285  	goto __1410
 49286  
 49287  __1417:
 49288  	i = Tuint32_t(1)
 49289  __1544:
 49290  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49291  		goto __1546
 49292  	}
 49293  
 49294  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49295  		goto __1547
 49296  	}
 49297  
 49298  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49299  		goto __1548
 49300  	}
 49301  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49302  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49303  		goto __1549
 49304  	}
 49305  	return -2
 49306  __1549:
 49307  	;
 49308  __1548:
 49309  	;
 49310  
 49311  	rrc = DMATCH_NOMATCH
 49312  	goto RETURN_SWITCH
 49313  
 49314  __1547:
 49315  	;
 49316  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 49317  	if !(fc >= 0xc0) {
 49318  		goto __1550
 49319  	}
 49320  	if !(fc&0x20 == Tuint32_t(0)) {
 49321  		goto __1551
 49322  	}
 49323  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 49324  	goto __1552
 49325  __1551:
 49326  	if !(fc&0x10 == Tuint32_t(0)) {
 49327  		goto __1553
 49328  	}
 49329  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 49330  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 49331  	goto __1554
 49332  __1553:
 49333  	if !(fc&0x08 == Tuint32_t(0)) {
 49334  		goto __1555
 49335  	}
 49336  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 49337  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 49338  	goto __1556
 49339  __1555:
 49340  	if !(fc&0x04 == Tuint32_t(0)) {
 49341  		goto __1557
 49342  	}
 49343  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 49344  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 49345  	goto __1558
 49346  __1557:
 49347  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 49348  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 49349  __1558:
 49350  	;
 49351  __1556:
 49352  	;
 49353  __1554:
 49354  	;
 49355  __1552:
 49356  	;
 49357  __1550:
 49358  	;
 49359  
 49360  	switch fc {
 49361  	case Tuint32_t('\012'):
 49362  		goto __1560
 49363  	case Tuint32_t('\013'):
 49364  		goto __1561
 49365  	case Tuint32_t('\014'):
 49366  		goto __1562
 49367  	case Tuint32_t('\015'):
 49368  		goto __1563
 49369  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 49370  		goto __1564
 49371  	case Tuint32_t(0x2028):
 49372  		goto __1565 /* LINE SEPARATOR */
 49373  	case Tuint32_t(0x2029):
 49374  		goto __1566
 49375  	default:
 49376  		goto __1567
 49377  	}
 49378  	goto __1559
 49379  
 49380  __1560:
 49381  __1561:
 49382  __1562:
 49383  __1563:
 49384  __1564:
 49385  __1565: /* LINE SEPARATOR */
 49386  __1566:
 49387  	rrc = DMATCH_NOMATCH
 49388  	goto RETURN_SWITCH
 49389  
 49390  __1567:
 49391  	goto __1559
 49392  __1559:
 49393  	;
 49394  	goto __1545
 49395  __1545:
 49396  	i++
 49397  	goto __1544
 49398  	goto __1546
 49399  __1546:
 49400  	;
 49401  	goto __1410
 49402  
 49403  __1418:
 49404  	i = Tuint32_t(1)
 49405  __1568:
 49406  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49407  		goto __1570
 49408  	}
 49409  
 49410  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49411  		goto __1571
 49412  	}
 49413  
 49414  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49415  		goto __1572
 49416  	}
 49417  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49418  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49419  		goto __1573
 49420  	}
 49421  	return -2
 49422  __1573:
 49423  	;
 49424  __1572:
 49425  	;
 49426  
 49427  	rrc = DMATCH_NOMATCH
 49428  	goto RETURN_SWITCH
 49429  
 49430  __1571:
 49431  	;
 49432  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 49433  	if !(fc >= 0xc0) {
 49434  		goto __1574
 49435  	}
 49436  	if !(fc&0x20 == Tuint32_t(0)) {
 49437  		goto __1575
 49438  	}
 49439  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 49440  	goto __1576
 49441  __1575:
 49442  	if !(fc&0x10 == Tuint32_t(0)) {
 49443  		goto __1577
 49444  	}
 49445  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 49446  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 49447  	goto __1578
 49448  __1577:
 49449  	if !(fc&0x08 == Tuint32_t(0)) {
 49450  		goto __1579
 49451  	}
 49452  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 49453  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 49454  	goto __1580
 49455  __1579:
 49456  	if !(fc&0x04 == Tuint32_t(0)) {
 49457  		goto __1581
 49458  	}
 49459  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 49460  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 49461  	goto __1582
 49462  __1581:
 49463  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 49464  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 49465  __1582:
 49466  	;
 49467  __1580:
 49468  	;
 49469  __1578:
 49470  	;
 49471  __1576:
 49472  	;
 49473  __1574:
 49474  	;
 49475  
 49476  	switch fc {
 49477  	case Tuint32_t('\012'):
 49478  		goto __1584
 49479  	case Tuint32_t('\013'):
 49480  		goto __1585
 49481  	case Tuint32_t('\014'):
 49482  		goto __1586
 49483  	case Tuint32_t('\015'):
 49484  		goto __1587
 49485  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 49486  		goto __1588
 49487  	case Tuint32_t(0x2028):
 49488  		goto __1589 /* LINE SEPARATOR */
 49489  	case Tuint32_t(0x2029):
 49490  		goto __1590
 49491  	default:
 49492  		goto __1591
 49493  	}
 49494  	goto __1583
 49495  
 49496  __1584:
 49497  __1585:
 49498  __1586:
 49499  __1587:
 49500  __1588:
 49501  __1589: /* LINE SEPARATOR */
 49502  __1590:
 49503  	goto __1583
 49504  __1591:
 49505  	rrc = DMATCH_NOMATCH
 49506  	goto RETURN_SWITCH
 49507  
 49508  __1583:
 49509  	;
 49510  	goto __1569
 49511  __1569:
 49512  	i++
 49513  	goto __1568
 49514  	goto __1570
 49515  __1570:
 49516  	;
 49517  	goto __1410
 49518  
 49519  __1419:
 49520  	i = Tuint32_t(1)
 49521  __1592:
 49522  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49523  		goto __1594
 49524  	}
 49525  
 49526  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49527  		goto __1595
 49528  	}
 49529  
 49530  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49531  		goto __1596
 49532  	}
 49533  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49534  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49535  		goto __1597
 49536  	}
 49537  	return -2
 49538  __1597:
 49539  	;
 49540  __1596:
 49541  	;
 49542  
 49543  	rrc = DMATCH_NOMATCH
 49544  	goto RETURN_SWITCH
 49545  
 49546  __1595:
 49547  	;
 49548  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 49549  	if !(fc >= 0xc0) {
 49550  		goto __1598
 49551  	}
 49552  	if !(fc&0x20 == Tuint32_t(0)) {
 49553  		goto __1599
 49554  	}
 49555  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 49556  	goto __1600
 49557  __1599:
 49558  	if !(fc&0x10 == Tuint32_t(0)) {
 49559  		goto __1601
 49560  	}
 49561  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 49562  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 49563  	goto __1602
 49564  __1601:
 49565  	if !(fc&0x08 == Tuint32_t(0)) {
 49566  		goto __1603
 49567  	}
 49568  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 49569  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 49570  	goto __1604
 49571  __1603:
 49572  	if !(fc&0x04 == Tuint32_t(0)) {
 49573  		goto __1605
 49574  	}
 49575  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 49576  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 49577  	goto __1606
 49578  __1605:
 49579  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 49580  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 49581  __1606:
 49582  	;
 49583  __1604:
 49584  	;
 49585  __1602:
 49586  	;
 49587  __1600:
 49588  	;
 49589  __1598:
 49590  	;
 49591  
 49592  	if !(fc < Tuint32_t(128) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit != 0) {
 49593  		goto __1607
 49594  	}
 49595  	rrc = DMATCH_NOMATCH
 49596  	goto RETURN_SWITCH
 49597  __1607:
 49598  	;
 49599  
 49600  	goto __1593
 49601  __1593:
 49602  	i++
 49603  	goto __1592
 49604  	goto __1594
 49605  __1594:
 49606  	;
 49607  	goto __1410
 49608  
 49609  __1420:
 49610  	i = Tuint32_t(1)
 49611  __1608:
 49612  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49613  		goto __1610
 49614  	}
 49615  
 49616  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49617  		goto __1611
 49618  	}
 49619  
 49620  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49621  		goto __1612
 49622  	}
 49623  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49624  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49625  		goto __1613
 49626  	}
 49627  	return -2
 49628  __1613:
 49629  	;
 49630  __1612:
 49631  	;
 49632  
 49633  	rrc = DMATCH_NOMATCH
 49634  	goto RETURN_SWITCH
 49635  
 49636  __1611:
 49637  	;
 49638  	cc5 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 49639  	if !(cc5 >= Tuint32_t(128) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(cc5))))&Dctype_digit == 0) {
 49640  		goto __1614
 49641  	}
 49642  	rrc = DMATCH_NOMATCH
 49643  	goto RETURN_SWITCH
 49644  __1614:
 49645  	;
 49646  
 49647  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49648  	// No need to skip more code units - we know it has only one.
 49649  	goto __1609
 49650  __1609:
 49651  	i++
 49652  	goto __1608
 49653  	goto __1610
 49654  __1610:
 49655  	;
 49656  	goto __1410
 49657  
 49658  __1421:
 49659  	i = Tuint32_t(1)
 49660  __1615:
 49661  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49662  		goto __1617
 49663  	}
 49664  
 49665  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49666  		goto __1618
 49667  	}
 49668  
 49669  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49670  		goto __1619
 49671  	}
 49672  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49673  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49674  		goto __1620
 49675  	}
 49676  	return -2
 49677  __1620:
 49678  	;
 49679  __1619:
 49680  	;
 49681  
 49682  	rrc = DMATCH_NOMATCH
 49683  	goto RETURN_SWITCH
 49684  
 49685  __1618:
 49686  	;
 49687  	cc6 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 49688  	if !(cc6 < Tuint32_t(128) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(cc6))))&Dctype_space != 0) {
 49689  		goto __1621
 49690  	}
 49691  	rrc = DMATCH_NOMATCH
 49692  	goto RETURN_SWITCH
 49693  __1621:
 49694  	;
 49695  
 49696  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49697  __1622:
 49698  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 49699  		goto __1623
 49700  	}
 49701  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49702  	goto __1622
 49703  __1623:
 49704  	;
 49705  	goto __1616
 49706  __1616:
 49707  	i++
 49708  	goto __1615
 49709  	goto __1617
 49710  __1617:
 49711  	;
 49712  	goto __1410
 49713  
 49714  __1422:
 49715  	i = Tuint32_t(1)
 49716  __1624:
 49717  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49718  		goto __1626
 49719  	}
 49720  
 49721  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49722  		goto __1627
 49723  	}
 49724  
 49725  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49726  		goto __1628
 49727  	}
 49728  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49729  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49730  		goto __1629
 49731  	}
 49732  	return -2
 49733  __1629:
 49734  	;
 49735  __1628:
 49736  	;
 49737  
 49738  	rrc = DMATCH_NOMATCH
 49739  	goto RETURN_SWITCH
 49740  
 49741  __1627:
 49742  	;
 49743  	cc7 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 49744  	if !(cc7 >= Tuint32_t(128) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(cc7))))&Dctype_space == 0) {
 49745  		goto __1630
 49746  	}
 49747  	rrc = DMATCH_NOMATCH
 49748  	goto RETURN_SWITCH
 49749  __1630:
 49750  	;
 49751  
 49752  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49753  	// No need to skip more code units - we know it has only one.
 49754  	goto __1625
 49755  __1625:
 49756  	i++
 49757  	goto __1624
 49758  	goto __1626
 49759  __1626:
 49760  	;
 49761  	goto __1410
 49762  
 49763  __1423:
 49764  	i = Tuint32_t(1)
 49765  __1631:
 49766  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49767  		goto __1633
 49768  	}
 49769  
 49770  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49771  		goto __1634
 49772  	}
 49773  
 49774  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49775  		goto __1635
 49776  	}
 49777  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49778  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49779  		goto __1636
 49780  	}
 49781  	return -2
 49782  __1636:
 49783  	;
 49784  __1635:
 49785  	;
 49786  
 49787  	rrc = DMATCH_NOMATCH
 49788  	goto RETURN_SWITCH
 49789  
 49790  __1634:
 49791  	;
 49792  	cc8 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 49793  	if !(cc8 < Tuint32_t(128) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(cc8))))&Dctype_word != 0) {
 49794  		goto __1637
 49795  	}
 49796  	rrc = DMATCH_NOMATCH
 49797  	goto RETURN_SWITCH
 49798  __1637:
 49799  	;
 49800  
 49801  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49802  __1638:
 49803  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 49804  		goto __1639
 49805  	}
 49806  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49807  	goto __1638
 49808  __1639:
 49809  	;
 49810  	goto __1632
 49811  __1632:
 49812  	i++
 49813  	goto __1631
 49814  	goto __1633
 49815  __1633:
 49816  	;
 49817  	goto __1410
 49818  
 49819  __1424:
 49820  	i = Tuint32_t(1)
 49821  __1640:
 49822  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49823  		goto __1642
 49824  	}
 49825  
 49826  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49827  		goto __1643
 49828  	}
 49829  
 49830  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49831  		goto __1644
 49832  	}
 49833  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49834  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49835  		goto __1645
 49836  	}
 49837  	return -2
 49838  __1645:
 49839  	;
 49840  __1644:
 49841  	;
 49842  
 49843  	rrc = DMATCH_NOMATCH
 49844  	goto RETURN_SWITCH
 49845  
 49846  __1643:
 49847  	;
 49848  	cc9 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 49849  	if !(cc9 >= Tuint32_t(128) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(cc9))))&Dctype_word == 0) {
 49850  		goto __1646
 49851  	}
 49852  	rrc = DMATCH_NOMATCH
 49853  	goto RETURN_SWITCH
 49854  __1646:
 49855  	;
 49856  
 49857  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49858  	// No need to skip more code units - we know it has only one.
 49859  	goto __1641
 49860  __1641:
 49861  	i++
 49862  	goto __1640
 49863  	goto __1642
 49864  __1642:
 49865  	;
 49866  	goto __1410
 49867  
 49868  __1425:
 49869  	return -44
 49870  __1410:
 49871  	;
 49872  	goto __1409
 49873  __1408:
 49874  
 49875  	// Code for the non-UTF case for minimum matching of operators other
 49876  	//       than OP_PROP and OP_NOTPROP.
 49877  
 49878  	switch *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) {
 49879  	case OP_ANY:
 49880  		goto __1648
 49881  
 49882  	case OP_ALLANY:
 49883  		goto __1649
 49884  
 49885  	// This OP_ANYBYTE case will never be reached because \C gets turned
 49886  	//         into OP_ALLANY in non-UTF mode. Cut out the code so that coverage
 49887  	//         reports don't complain about it's never being used.
 49888  
 49889  	// case OP_ANYBYTE:
 49890  	//        if (Feptr > mb->end_subject - Lmin)
 49891  	//          {
 49892  	//          SCHECK_PARTIAL();
 49893  	//          RRETURN(MATCH_NOMATCH);
 49894  	//          }
 49895  	//        Feptr += Lmin;
 49896  	//        break;
 49897  	case OP_ANYNL:
 49898  		goto __1650
 49899  
 49900  	case OP_NOT_HSPACE:
 49901  		goto __1651
 49902  
 49903  	case OP_HSPACE:
 49904  		goto __1652
 49905  
 49906  	case OP_NOT_VSPACE:
 49907  		goto __1653
 49908  
 49909  	case OP_VSPACE:
 49910  		goto __1654
 49911  
 49912  	case OP_NOT_DIGIT:
 49913  		goto __1655
 49914  
 49915  	case OP_DIGIT:
 49916  		goto __1656
 49917  
 49918  	case OP_NOT_WHITESPACE:
 49919  		goto __1657
 49920  
 49921  	case OP_WHITESPACE:
 49922  		goto __1658
 49923  
 49924  	case OP_NOT_WORDCHAR:
 49925  		goto __1659
 49926  
 49927  	case OP_WORDCHAR:
 49928  		goto __1660
 49929  
 49930  	default:
 49931  		goto __1661
 49932  	}
 49933  	goto __1647
 49934  
 49935  __1648:
 49936  	i = Tuint32_t(1)
 49937  __1662:
 49938  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 49939  		goto __1664
 49940  	}
 49941  
 49942  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 49943  		goto __1665
 49944  	}
 49945  
 49946  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 49947  		goto __1666
 49948  	}
 49949  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49950  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49951  		goto __1667
 49952  	}
 49953  	return -2
 49954  __1667:
 49955  	;
 49956  __1666:
 49957  	;
 49958  
 49959  	rrc = DMATCH_NOMATCH
 49960  	goto RETURN_SWITCH
 49961  
 49962  __1665:
 49963  	;
 49964  	if !(func() int32 {
 49965  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 49966  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 49967  		}
 49968  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 49969  	}() != 0) {
 49970  		goto __1668
 49971  	}
 49972  	rrc = DMATCH_NOMATCH
 49973  	goto RETURN_SWITCH
 49974  __1668:
 49975  	;
 49976  
 49977  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr+uintptr(1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 49978  		goto __1669
 49979  	}
 49980  
 49981  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 49982  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 49983  		goto __1670
 49984  	}
 49985  	return -2
 49986  __1670:
 49987  	;
 49988  __1669:
 49989  	;
 49990  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 49991  	goto __1663
 49992  __1663:
 49993  	i++
 49994  	goto __1662
 49995  	goto __1664
 49996  __1664:
 49997  	;
 49998  	goto __1647
 49999  
 50000  __1649:
 50001  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56)))) {
 50002  		goto __1671
 50003  	}
 50004  
 50005  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50006  		goto __1672
 50007  	}
 50008  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50009  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50010  		goto __1673
 50011  	}
 50012  	return -2
 50013  __1673:
 50014  	;
 50015  __1672:
 50016  	;
 50017  
 50018  	rrc = DMATCH_NOMATCH
 50019  	goto RETURN_SWITCH
 50020  
 50021  __1671:
 50022  	;
 50023  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(*(*Tuint32_t)(unsafe.Pointer(F + 56)))
 50024  	goto __1647
 50025  
 50026  	// This OP_ANYBYTE case will never be reached because \C gets turned
 50027  	//         into OP_ALLANY in non-UTF mode. Cut out the code so that coverage
 50028  	//         reports don't complain about it's never being used.
 50029  
 50030  	// case OP_ANYBYTE:
 50031  	//        if (Feptr > mb->end_subject - Lmin)
 50032  	//          {
 50033  	//          SCHECK_PARTIAL();
 50034  	//          RRETURN(MATCH_NOMATCH);
 50035  	//          }
 50036  	//        Feptr += Lmin;
 50037  	//        break;
 50038  __1650:
 50039  	i = Tuint32_t(1)
 50040  __1674:
 50041  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50042  		goto __1676
 50043  	}
 50044  
 50045  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50046  		goto __1677
 50047  	}
 50048  
 50049  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50050  		goto __1678
 50051  	}
 50052  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50053  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50054  		goto __1679
 50055  	}
 50056  	return -2
 50057  __1679:
 50058  	;
 50059  __1678:
 50060  	;
 50061  
 50062  	rrc = DMATCH_NOMATCH
 50063  	goto RETURN_SWITCH
 50064  
 50065  __1677:
 50066  	;
 50067  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1)))) {
 50068  	default:
 50069  		goto __1681
 50070  
 50071  	case '\015':
 50072  		goto __1682
 50073  
 50074  	case '\012':
 50075  		goto __1683
 50076  
 50077  	case '\013':
 50078  		goto __1684
 50079  	case '\014':
 50080  		goto __1685
 50081  	case int32(libc.Uint8FromInt32(133)):
 50082  		goto __1686
 50083  	}
 50084  	goto __1680
 50085  
 50086  __1681:
 50087  	rrc = DMATCH_NOMATCH
 50088  	goto RETURN_SWITCH
 50089  
 50090  __1682:
 50091  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012') {
 50092  		goto __1687
 50093  	}
 50094  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 50095  __1687:
 50096  	;
 50097  	goto __1680
 50098  
 50099  __1683:
 50100  	goto __1680
 50101  
 50102  __1684:
 50103  __1685:
 50104  __1686:
 50105  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 50106  		goto __1688
 50107  	}
 50108  	rrc = DMATCH_NOMATCH
 50109  	goto RETURN_SWITCH
 50110  __1688:
 50111  	;
 50112  
 50113  	goto __1680
 50114  __1680:
 50115  	;
 50116  	goto __1675
 50117  __1675:
 50118  	i++
 50119  	goto __1674
 50120  	goto __1676
 50121  __1676:
 50122  	;
 50123  	goto __1647
 50124  
 50125  __1651:
 50126  	i = Tuint32_t(1)
 50127  __1689:
 50128  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50129  		goto __1691
 50130  	}
 50131  
 50132  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50133  		goto __1692
 50134  	}
 50135  
 50136  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50137  		goto __1693
 50138  	}
 50139  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50140  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50141  		goto __1694
 50142  	}
 50143  	return -2
 50144  __1694:
 50145  	;
 50146  __1693:
 50147  	;
 50148  
 50149  	rrc = DMATCH_NOMATCH
 50150  	goto RETURN_SWITCH
 50151  
 50152  __1692:
 50153  	;
 50154  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1)))) {
 50155  	default:
 50156  		goto __1696
 50157  	case '\011':
 50158  		goto __1697
 50159  	case '\040':
 50160  		goto __1698
 50161  	case int32(libc.Uint8FromInt32(160)):
 50162  		goto __1699
 50163  	}
 50164  	goto __1695
 50165  
 50166  __1696:
 50167  	goto __1695
 50168  __1697:
 50169  __1698:
 50170  __1699:
 50171  	rrc = DMATCH_NOMATCH
 50172  	goto RETURN_SWITCH
 50173  
 50174  __1695:
 50175  	;
 50176  	goto __1690
 50177  __1690:
 50178  	i++
 50179  	goto __1689
 50180  	goto __1691
 50181  __1691:
 50182  	;
 50183  	goto __1647
 50184  
 50185  __1652:
 50186  	i = Tuint32_t(1)
 50187  __1700:
 50188  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50189  		goto __1702
 50190  	}
 50191  
 50192  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50193  		goto __1703
 50194  	}
 50195  
 50196  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50197  		goto __1704
 50198  	}
 50199  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50200  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50201  		goto __1705
 50202  	}
 50203  	return -2
 50204  __1705:
 50205  	;
 50206  __1704:
 50207  	;
 50208  
 50209  	rrc = DMATCH_NOMATCH
 50210  	goto RETURN_SWITCH
 50211  
 50212  __1703:
 50213  	;
 50214  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1)))) {
 50215  	default:
 50216  		goto __1707
 50217  	case '\011':
 50218  		goto __1708
 50219  	case '\040':
 50220  		goto __1709
 50221  	case int32(libc.Uint8FromInt32(160)):
 50222  		goto __1710
 50223  	}
 50224  	goto __1706
 50225  
 50226  __1707:
 50227  	rrc = DMATCH_NOMATCH
 50228  	goto RETURN_SWITCH
 50229  
 50230  __1708:
 50231  __1709:
 50232  __1710:
 50233  	goto __1706
 50234  __1706:
 50235  	;
 50236  	goto __1701
 50237  __1701:
 50238  	i++
 50239  	goto __1700
 50240  	goto __1702
 50241  __1702:
 50242  	;
 50243  	goto __1647
 50244  
 50245  __1653:
 50246  	i = Tuint32_t(1)
 50247  __1711:
 50248  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50249  		goto __1713
 50250  	}
 50251  
 50252  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50253  		goto __1714
 50254  	}
 50255  
 50256  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50257  		goto __1715
 50258  	}
 50259  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50260  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50261  		goto __1716
 50262  	}
 50263  	return -2
 50264  __1716:
 50265  	;
 50266  __1715:
 50267  	;
 50268  
 50269  	rrc = DMATCH_NOMATCH
 50270  	goto RETURN_SWITCH
 50271  
 50272  __1714:
 50273  	;
 50274  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1)))) {
 50275  	case '\012':
 50276  		goto __1718
 50277  	case '\013':
 50278  		goto __1719
 50279  	case '\014':
 50280  		goto __1720
 50281  	case '\015':
 50282  		goto __1721
 50283  	case int32(libc.Uint8FromInt32(133)):
 50284  		goto __1722
 50285  	default:
 50286  		goto __1723
 50287  	}
 50288  	goto __1717
 50289  
 50290  __1718:
 50291  __1719:
 50292  __1720:
 50293  __1721:
 50294  __1722:
 50295  	rrc = DMATCH_NOMATCH
 50296  	goto RETURN_SWITCH
 50297  
 50298  __1723:
 50299  	goto __1717
 50300  __1717:
 50301  	;
 50302  	goto __1712
 50303  __1712:
 50304  	i++
 50305  	goto __1711
 50306  	goto __1713
 50307  __1713:
 50308  	;
 50309  	goto __1647
 50310  
 50311  __1654:
 50312  	i = Tuint32_t(1)
 50313  __1724:
 50314  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50315  		goto __1726
 50316  	}
 50317  
 50318  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50319  		goto __1727
 50320  	}
 50321  
 50322  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50323  		goto __1728
 50324  	}
 50325  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50326  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50327  		goto __1729
 50328  	}
 50329  	return -2
 50330  __1729:
 50331  	;
 50332  __1728:
 50333  	;
 50334  
 50335  	rrc = DMATCH_NOMATCH
 50336  	goto RETURN_SWITCH
 50337  
 50338  __1727:
 50339  	;
 50340  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1)))) {
 50341  	default:
 50342  		goto __1731
 50343  	case '\012':
 50344  		goto __1732
 50345  	case '\013':
 50346  		goto __1733
 50347  	case '\014':
 50348  		goto __1734
 50349  	case '\015':
 50350  		goto __1735
 50351  	case int32(libc.Uint8FromInt32(133)):
 50352  		goto __1736
 50353  	}
 50354  	goto __1730
 50355  
 50356  __1731:
 50357  	rrc = DMATCH_NOMATCH
 50358  	goto RETURN_SWITCH
 50359  
 50360  __1732:
 50361  __1733:
 50362  __1734:
 50363  __1735:
 50364  __1736:
 50365  	goto __1730
 50366  __1730:
 50367  	;
 50368  	goto __1725
 50369  __1725:
 50370  	i++
 50371  	goto __1724
 50372  	goto __1726
 50373  __1726:
 50374  	;
 50375  	goto __1647
 50376  
 50377  __1655:
 50378  	i = Tuint32_t(1)
 50379  __1737:
 50380  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50381  		goto __1739
 50382  	}
 50383  
 50384  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50385  		goto __1740
 50386  	}
 50387  
 50388  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50389  		goto __1741
 50390  	}
 50391  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50392  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50393  		goto __1742
 50394  	}
 50395  	return -2
 50396  __1742:
 50397  	;
 50398  __1741:
 50399  	;
 50400  
 50401  	rrc = DMATCH_NOMATCH
 50402  	goto RETURN_SWITCH
 50403  
 50404  __1740:
 50405  	;
 50406  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_digit != 0) {
 50407  		goto __1743
 50408  	}
 50409  	rrc = DMATCH_NOMATCH
 50410  	goto RETURN_SWITCH
 50411  __1743:
 50412  	;
 50413  
 50414  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 50415  	goto __1738
 50416  __1738:
 50417  	i++
 50418  	goto __1737
 50419  	goto __1739
 50420  __1739:
 50421  	;
 50422  	goto __1647
 50423  
 50424  __1656:
 50425  	i = Tuint32_t(1)
 50426  __1744:
 50427  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50428  		goto __1746
 50429  	}
 50430  
 50431  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50432  		goto __1747
 50433  	}
 50434  
 50435  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50436  		goto __1748
 50437  	}
 50438  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50439  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50440  		goto __1749
 50441  	}
 50442  	return -2
 50443  __1749:
 50444  	;
 50445  __1748:
 50446  	;
 50447  
 50448  	rrc = DMATCH_NOMATCH
 50449  	goto RETURN_SWITCH
 50450  
 50451  __1747:
 50452  	;
 50453  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_digit == 0) {
 50454  		goto __1750
 50455  	}
 50456  	rrc = DMATCH_NOMATCH
 50457  	goto RETURN_SWITCH
 50458  __1750:
 50459  	;
 50460  
 50461  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 50462  	goto __1745
 50463  __1745:
 50464  	i++
 50465  	goto __1744
 50466  	goto __1746
 50467  __1746:
 50468  	;
 50469  	goto __1647
 50470  
 50471  __1657:
 50472  	i = Tuint32_t(1)
 50473  __1751:
 50474  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50475  		goto __1753
 50476  	}
 50477  
 50478  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50479  		goto __1754
 50480  	}
 50481  
 50482  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50483  		goto __1755
 50484  	}
 50485  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50486  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50487  		goto __1756
 50488  	}
 50489  	return -2
 50490  __1756:
 50491  	;
 50492  __1755:
 50493  	;
 50494  
 50495  	rrc = DMATCH_NOMATCH
 50496  	goto RETURN_SWITCH
 50497  
 50498  __1754:
 50499  	;
 50500  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_space != 0) {
 50501  		goto __1757
 50502  	}
 50503  	rrc = DMATCH_NOMATCH
 50504  	goto RETURN_SWITCH
 50505  __1757:
 50506  	;
 50507  
 50508  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 50509  	goto __1752
 50510  __1752:
 50511  	i++
 50512  	goto __1751
 50513  	goto __1753
 50514  __1753:
 50515  	;
 50516  	goto __1647
 50517  
 50518  __1658:
 50519  	i = Tuint32_t(1)
 50520  __1758:
 50521  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50522  		goto __1760
 50523  	}
 50524  
 50525  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50526  		goto __1761
 50527  	}
 50528  
 50529  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50530  		goto __1762
 50531  	}
 50532  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50533  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50534  		goto __1763
 50535  	}
 50536  	return -2
 50537  __1763:
 50538  	;
 50539  __1762:
 50540  	;
 50541  
 50542  	rrc = DMATCH_NOMATCH
 50543  	goto RETURN_SWITCH
 50544  
 50545  __1761:
 50546  	;
 50547  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_space == 0) {
 50548  		goto __1764
 50549  	}
 50550  	rrc = DMATCH_NOMATCH
 50551  	goto RETURN_SWITCH
 50552  __1764:
 50553  	;
 50554  
 50555  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 50556  	goto __1759
 50557  __1759:
 50558  	i++
 50559  	goto __1758
 50560  	goto __1760
 50561  __1760:
 50562  	;
 50563  	goto __1647
 50564  
 50565  __1659:
 50566  	i = Tuint32_t(1)
 50567  __1765:
 50568  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50569  		goto __1767
 50570  	}
 50571  
 50572  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50573  		goto __1768
 50574  	}
 50575  
 50576  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50577  		goto __1769
 50578  	}
 50579  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50580  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50581  		goto __1770
 50582  	}
 50583  	return -2
 50584  __1770:
 50585  	;
 50586  __1769:
 50587  	;
 50588  
 50589  	rrc = DMATCH_NOMATCH
 50590  	goto RETURN_SWITCH
 50591  
 50592  __1768:
 50593  	;
 50594  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_word != 0) {
 50595  		goto __1771
 50596  	}
 50597  	rrc = DMATCH_NOMATCH
 50598  	goto RETURN_SWITCH
 50599  __1771:
 50600  	;
 50601  
 50602  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 50603  	goto __1766
 50604  __1766:
 50605  	i++
 50606  	goto __1765
 50607  	goto __1767
 50608  __1767:
 50609  	;
 50610  	goto __1647
 50611  
 50612  __1660:
 50613  	i = Tuint32_t(1)
 50614  __1772:
 50615  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 50616  		goto __1774
 50617  	}
 50618  
 50619  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50620  		goto __1775
 50621  	}
 50622  
 50623  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50624  		goto __1776
 50625  	}
 50626  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50627  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50628  		goto __1777
 50629  	}
 50630  	return -2
 50631  __1777:
 50632  	;
 50633  __1776:
 50634  	;
 50635  
 50636  	rrc = DMATCH_NOMATCH
 50637  	goto RETURN_SWITCH
 50638  
 50639  __1775:
 50640  	;
 50641  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_word == 0) {
 50642  		goto __1778
 50643  	}
 50644  	rrc = DMATCH_NOMATCH
 50645  	goto RETURN_SWITCH
 50646  __1778:
 50647  	;
 50648  
 50649  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 50650  	goto __1773
 50651  __1773:
 50652  	i++
 50653  	goto __1772
 50654  	goto __1774
 50655  __1774:
 50656  	;
 50657  	goto __1647
 50658  
 50659  __1661:
 50660  	return -44
 50661  __1647:
 50662  	;
 50663  __1409:
 50664  	;
 50665  __1388:
 50666  	;
 50667  __1127:
 50668  	;
 50669  __1125:
 50670  	;
 50671  
 50672  	// If Lmin = Lmax we are done. Continue with the main loop.
 50673  
 50674  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 50675  		goto __1779
 50676  	}
 50677  	goto __11
 50678  __1779:
 50679  	;
 50680  
 50681  	// If minimizing, we have to test the rest of the pattern before each
 50682  	//     subsequent match. This means we cannot use a local "notmatch" variable as
 50683  	//     in the other cases. As all 4 temporary 32-bit values in the frame are
 50684  	//     already in use, just test the type each time.
 50685  
 50686  	if !(reptype == REPTYPE_MIN) {
 50687  		goto __1780
 50688  	}
 50689  
 50690  	if !(proptype >= 0) {
 50691  		goto __1782
 50692  	}
 50693  
 50694  	switch proptype {
 50695  	case DPT_ANY:
 50696  		goto __1785
 50697  	// Control never gets here
 50698  
 50699  	case DPT_LAMP:
 50700  		goto __1786
 50701  	// Control never gets here
 50702  
 50703  	case DPT_GC:
 50704  		goto __1787
 50705  	// Control never gets here
 50706  
 50707  	case DPT_PC:
 50708  		goto __1788
 50709  	// Control never gets here
 50710  
 50711  	case DPT_SC:
 50712  		goto __1789
 50713  	// Control never gets here
 50714  
 50715  	case DPT_SCX:
 50716  		goto __1790
 50717  	// Control never gets here
 50718  
 50719  	case DPT_ALNUM:
 50720  		goto __1791
 50721  	// Control never gets here
 50722  
 50723  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 50724  	//           which means that Perl space and POSIX space are now identical. PCRE
 50725  	//           was changed at release 8.34.
 50726  
 50727  	case DPT_SPACE:
 50728  		goto __1792 // Perl space
 50729  	case DPT_PXSPACE:
 50730  		goto __1793
 50731  	// Control never gets here
 50732  
 50733  	case DPT_WORD:
 50734  		goto __1794
 50735  	// Control never gets here
 50736  
 50737  	case DPT_CLIST:
 50738  		goto __1795
 50739  	// Control never gets here
 50740  
 50741  	case DPT_UCNC:
 50742  		goto __1796
 50743  	// Control never gets here
 50744  
 50745  	case DPT_BIDICL:
 50746  		goto __1797
 50747  	// Control never gets here
 50748  
 50749  	case DPT_BOOL:
 50750  		goto __1798
 50751  	// Control never gets here
 50752  
 50753  	// This should never occur
 50754  	default:
 50755  		goto __1799
 50756  	}
 50757  	goto __1784
 50758  
 50759  __1785:
 50760  __1800:
 50761  
 50762  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 50763  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM208
 50764  	goto MATCH_RECURSE
 50765  L_RM208:
 50766  	;
 50767  
 50768  	if !(rrc != DMATCH_NOMATCH) {
 50769  		goto __1803
 50770  	}
 50771  	rrc = rrc
 50772  	goto RETURN_SWITCH
 50773  __1803:
 50774  	;
 50775  
 50776  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 50777  		goto __1804
 50778  	}
 50779  	rrc = DMATCH_NOMATCH
 50780  	goto RETURN_SWITCH
 50781  __1804:
 50782  	;
 50783  
 50784  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50785  		goto __1805
 50786  	}
 50787  
 50788  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50789  		goto __1806
 50790  	}
 50791  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50792  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50793  		goto __1807
 50794  	}
 50795  	return -2
 50796  __1807:
 50797  	;
 50798  __1806:
 50799  	;
 50800  
 50801  	rrc = DMATCH_NOMATCH
 50802  	goto RETURN_SWITCH
 50803  
 50804  __1805:
 50805  	;
 50806  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 50807  	if !(utf != 0 && fc >= 0xc0) {
 50808  		goto __1808
 50809  	}
 50810  	if !(fc&0x20 == Tuint32_t(0)) {
 50811  		goto __1809
 50812  	}
 50813  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 50814  	goto __1810
 50815  __1809:
 50816  	if !(fc&0x10 == Tuint32_t(0)) {
 50817  		goto __1811
 50818  	}
 50819  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 50820  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 50821  	goto __1812
 50822  __1811:
 50823  	if !(fc&0x08 == Tuint32_t(0)) {
 50824  		goto __1813
 50825  	}
 50826  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 50827  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 50828  	goto __1814
 50829  __1813:
 50830  	if !(fc&0x04 == Tuint32_t(0)) {
 50831  		goto __1815
 50832  	}
 50833  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 50834  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 50835  	goto __1816
 50836  __1815:
 50837  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 50838  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 50839  __1816:
 50840  	;
 50841  __1814:
 50842  	;
 50843  __1812:
 50844  	;
 50845  __1810:
 50846  	;
 50847  __1808:
 50848  	;
 50849  
 50850  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP) {
 50851  		goto __1817
 50852  	}
 50853  	rrc = DMATCH_NOMATCH
 50854  	goto RETURN_SWITCH
 50855  __1817:
 50856  	;
 50857  
 50858  	goto __1801
 50859  __1801:
 50860  	goto __1800
 50861  	goto __1802
 50862  __1802:
 50863  	;
 50864  	// Control never gets here
 50865  
 50866  __1786:
 50867  __1818:
 50868  
 50869  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 50870  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM209
 50871  	goto MATCH_RECURSE
 50872  L_RM209:
 50873  	;
 50874  
 50875  	if !(rrc != DMATCH_NOMATCH) {
 50876  		goto __1821
 50877  	}
 50878  	rrc = rrc
 50879  	goto RETURN_SWITCH
 50880  __1821:
 50881  	;
 50882  
 50883  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 50884  		goto __1822
 50885  	}
 50886  	rrc = DMATCH_NOMATCH
 50887  	goto RETURN_SWITCH
 50888  __1822:
 50889  	;
 50890  
 50891  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 50892  		goto __1823
 50893  	}
 50894  
 50895  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 50896  		goto __1824
 50897  	}
 50898  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 50899  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 50900  		goto __1825
 50901  	}
 50902  	return -2
 50903  __1825:
 50904  	;
 50905  __1824:
 50906  	;
 50907  
 50908  	rrc = DMATCH_NOMATCH
 50909  	goto RETURN_SWITCH
 50910  
 50911  __1823:
 50912  	;
 50913  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 50914  	if !(utf != 0 && fc >= 0xc0) {
 50915  		goto __1826
 50916  	}
 50917  	if !(fc&0x20 == Tuint32_t(0)) {
 50918  		goto __1827
 50919  	}
 50920  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 50921  	goto __1828
 50922  __1827:
 50923  	if !(fc&0x10 == Tuint32_t(0)) {
 50924  		goto __1829
 50925  	}
 50926  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 50927  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 50928  	goto __1830
 50929  __1829:
 50930  	if !(fc&0x08 == Tuint32_t(0)) {
 50931  		goto __1831
 50932  	}
 50933  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 50934  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 50935  	goto __1832
 50936  __1831:
 50937  	if !(fc&0x04 == Tuint32_t(0)) {
 50938  		goto __1833
 50939  	}
 50940  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 50941  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 50942  	goto __1834
 50943  __1833:
 50944  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 50945  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 50946  __1834:
 50947  	;
 50948  __1832:
 50949  	;
 50950  __1830:
 50951  	;
 50952  __1828:
 50953  	;
 50954  __1826:
 50955  	;
 50956  
 50957  	chartype1 = int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype)
 50958  	if !(libc.Bool32(chartype1 == ucp_Lu || chartype1 == ucp_Ll || chartype1 == ucp_Lt) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 50959  		goto __1835
 50960  	}
 50961  	rrc = DMATCH_NOMATCH
 50962  	goto RETURN_SWITCH
 50963  __1835:
 50964  	;
 50965  
 50966  	goto __1819
 50967  __1819:
 50968  	goto __1818
 50969  	goto __1820
 50970  __1820:
 50971  	;
 50972  	// Control never gets here
 50973  
 50974  __1787:
 50975  __1836:
 50976  
 50977  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 50978  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM210
 50979  	goto MATCH_RECURSE
 50980  L_RM210:
 50981  	;
 50982  
 50983  	if !(rrc != DMATCH_NOMATCH) {
 50984  		goto __1839
 50985  	}
 50986  	rrc = rrc
 50987  	goto RETURN_SWITCH
 50988  __1839:
 50989  	;
 50990  
 50991  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 50992  		goto __1840
 50993  	}
 50994  	rrc = DMATCH_NOMATCH
 50995  	goto RETURN_SWITCH
 50996  __1840:
 50997  	;
 50998  
 50999  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51000  		goto __1841
 51001  	}
 51002  
 51003  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51004  		goto __1842
 51005  	}
 51006  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51007  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51008  		goto __1843
 51009  	}
 51010  	return -2
 51011  __1843:
 51012  	;
 51013  __1842:
 51014  	;
 51015  
 51016  	rrc = DMATCH_NOMATCH
 51017  	goto RETURN_SWITCH
 51018  
 51019  __1841:
 51020  	;
 51021  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51022  	if !(utf != 0 && fc >= 0xc0) {
 51023  		goto __1844
 51024  	}
 51025  	if !(fc&0x20 == Tuint32_t(0)) {
 51026  		goto __1845
 51027  	}
 51028  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51029  	goto __1846
 51030  __1845:
 51031  	if !(fc&0x10 == Tuint32_t(0)) {
 51032  		goto __1847
 51033  	}
 51034  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51035  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51036  	goto __1848
 51037  __1847:
 51038  	if !(fc&0x08 == Tuint32_t(0)) {
 51039  		goto __1849
 51040  	}
 51041  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51042  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51043  	goto __1850
 51044  __1849:
 51045  	if !(fc&0x04 == Tuint32_t(0)) {
 51046  		goto __1851
 51047  	}
 51048  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51049  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51050  	goto __1852
 51051  __1851:
 51052  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51053  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51054  __1852:
 51055  	;
 51056  __1850:
 51057  	;
 51058  __1848:
 51059  	;
 51060  __1846:
 51061  	;
 51062  __1844:
 51063  	;
 51064  
 51065  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype] == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 51066  		goto __1853
 51067  	}
 51068  	rrc = DMATCH_NOMATCH
 51069  	goto RETURN_SWITCH
 51070  __1853:
 51071  	;
 51072  
 51073  	goto __1837
 51074  __1837:
 51075  	goto __1836
 51076  	goto __1838
 51077  __1838:
 51078  	;
 51079  	// Control never gets here
 51080  
 51081  __1788:
 51082  __1854:
 51083  
 51084  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51085  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM211
 51086  	goto MATCH_RECURSE
 51087  L_RM211:
 51088  	;
 51089  
 51090  	if !(rrc != DMATCH_NOMATCH) {
 51091  		goto __1857
 51092  	}
 51093  	rrc = rrc
 51094  	goto RETURN_SWITCH
 51095  __1857:
 51096  	;
 51097  
 51098  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51099  		goto __1858
 51100  	}
 51101  	rrc = DMATCH_NOMATCH
 51102  	goto RETURN_SWITCH
 51103  __1858:
 51104  	;
 51105  
 51106  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51107  		goto __1859
 51108  	}
 51109  
 51110  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51111  		goto __1860
 51112  	}
 51113  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51114  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51115  		goto __1861
 51116  	}
 51117  	return -2
 51118  __1861:
 51119  	;
 51120  __1860:
 51121  	;
 51122  
 51123  	rrc = DMATCH_NOMATCH
 51124  	goto RETURN_SWITCH
 51125  
 51126  __1859:
 51127  	;
 51128  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51129  	if !(utf != 0 && fc >= 0xc0) {
 51130  		goto __1862
 51131  	}
 51132  	if !(fc&0x20 == Tuint32_t(0)) {
 51133  		goto __1863
 51134  	}
 51135  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51136  	goto __1864
 51137  __1863:
 51138  	if !(fc&0x10 == Tuint32_t(0)) {
 51139  		goto __1865
 51140  	}
 51141  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51142  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51143  	goto __1866
 51144  __1865:
 51145  	if !(fc&0x08 == Tuint32_t(0)) {
 51146  		goto __1867
 51147  	}
 51148  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51149  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51150  	goto __1868
 51151  __1867:
 51152  	if !(fc&0x04 == Tuint32_t(0)) {
 51153  		goto __1869
 51154  	}
 51155  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51156  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51157  	goto __1870
 51158  __1869:
 51159  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51160  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51161  __1870:
 51162  	;
 51163  __1868:
 51164  	;
 51165  __1866:
 51166  	;
 51167  __1864:
 51168  	;
 51169  __1862:
 51170  	;
 51171  
 51172  	if !(libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 51173  		goto __1871
 51174  	}
 51175  	rrc = DMATCH_NOMATCH
 51176  	goto RETURN_SWITCH
 51177  __1871:
 51178  	;
 51179  
 51180  	goto __1855
 51181  __1855:
 51182  	goto __1854
 51183  	goto __1856
 51184  __1856:
 51185  	;
 51186  	// Control never gets here
 51187  
 51188  __1789:
 51189  __1872:
 51190  
 51191  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51192  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM212
 51193  	goto MATCH_RECURSE
 51194  L_RM212:
 51195  	;
 51196  
 51197  	if !(rrc != DMATCH_NOMATCH) {
 51198  		goto __1875
 51199  	}
 51200  	rrc = rrc
 51201  	goto RETURN_SWITCH
 51202  __1875:
 51203  	;
 51204  
 51205  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51206  		goto __1876
 51207  	}
 51208  	rrc = DMATCH_NOMATCH
 51209  	goto RETURN_SWITCH
 51210  __1876:
 51211  	;
 51212  
 51213  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51214  		goto __1877
 51215  	}
 51216  
 51217  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51218  		goto __1878
 51219  	}
 51220  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51221  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51222  		goto __1879
 51223  	}
 51224  	return -2
 51225  __1879:
 51226  	;
 51227  __1878:
 51228  	;
 51229  
 51230  	rrc = DMATCH_NOMATCH
 51231  	goto RETURN_SWITCH
 51232  
 51233  __1877:
 51234  	;
 51235  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51236  	if !(utf != 0 && fc >= 0xc0) {
 51237  		goto __1880
 51238  	}
 51239  	if !(fc&0x20 == Tuint32_t(0)) {
 51240  		goto __1881
 51241  	}
 51242  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51243  	goto __1882
 51244  __1881:
 51245  	if !(fc&0x10 == Tuint32_t(0)) {
 51246  		goto __1883
 51247  	}
 51248  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51249  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51250  	goto __1884
 51251  __1883:
 51252  	if !(fc&0x08 == Tuint32_t(0)) {
 51253  		goto __1885
 51254  	}
 51255  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51256  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51257  	goto __1886
 51258  __1885:
 51259  	if !(fc&0x04 == Tuint32_t(0)) {
 51260  		goto __1887
 51261  	}
 51262  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51263  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51264  	goto __1888
 51265  __1887:
 51266  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51267  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51268  __1888:
 51269  	;
 51270  __1886:
 51271  	;
 51272  __1884:
 51273  	;
 51274  __1882:
 51275  	;
 51276  __1880:
 51277  	;
 51278  
 51279  	if !(libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fscript) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 51280  		goto __1889
 51281  	}
 51282  	rrc = DMATCH_NOMATCH
 51283  	goto RETURN_SWITCH
 51284  __1889:
 51285  	;
 51286  
 51287  	goto __1873
 51288  __1873:
 51289  	goto __1872
 51290  	goto __1874
 51291  __1874:
 51292  	;
 51293  	// Control never gets here
 51294  
 51295  __1790:
 51296  __1890:
 51297  
 51298  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51299  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM225
 51300  	goto MATCH_RECURSE
 51301  L_RM225:
 51302  	;
 51303  
 51304  	if !(rrc != DMATCH_NOMATCH) {
 51305  		goto __1893
 51306  	}
 51307  	rrc = rrc
 51308  	goto RETURN_SWITCH
 51309  __1893:
 51310  	;
 51311  
 51312  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51313  		goto __1894
 51314  	}
 51315  	rrc = DMATCH_NOMATCH
 51316  	goto RETURN_SWITCH
 51317  __1894:
 51318  	;
 51319  
 51320  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51321  		goto __1895
 51322  	}
 51323  
 51324  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51325  		goto __1896
 51326  	}
 51327  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51328  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51329  		goto __1897
 51330  	}
 51331  	return -2
 51332  __1897:
 51333  	;
 51334  __1896:
 51335  	;
 51336  
 51337  	rrc = DMATCH_NOMATCH
 51338  	goto RETURN_SWITCH
 51339  
 51340  __1895:
 51341  	;
 51342  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51343  	if !(utf != 0 && fc >= 0xc0) {
 51344  		goto __1898
 51345  	}
 51346  	if !(fc&0x20 == Tuint32_t(0)) {
 51347  		goto __1899
 51348  	}
 51349  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51350  	goto __1900
 51351  __1899:
 51352  	if !(fc&0x10 == Tuint32_t(0)) {
 51353  		goto __1901
 51354  	}
 51355  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51356  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51357  	goto __1902
 51358  __1901:
 51359  	if !(fc&0x08 == Tuint32_t(0)) {
 51360  		goto __1903
 51361  	}
 51362  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51363  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51364  	goto __1904
 51365  __1903:
 51366  	if !(fc&0x04 == Tuint32_t(0)) {
 51367  		goto __1905
 51368  	}
 51369  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51370  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51371  	goto __1906
 51372  __1905:
 51373  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51374  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51375  __1906:
 51376  	;
 51377  __1904:
 51378  	;
 51379  __1902:
 51380  	;
 51381  __1900:
 51382  	;
 51383  __1898:
 51384  	;
 51385  
 51386  	prop3 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12
 51387  	ok4 = libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(prop3)).Fscript) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) ||
 51388  		*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop3)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))/Tuint32_t(32))*4))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))%Tuint32_t(32))) != Tuint32_t(0))
 51389  	if !(ok4 == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 51390  		goto __1907
 51391  	}
 51392  	rrc = DMATCH_NOMATCH
 51393  	goto RETURN_SWITCH
 51394  __1907:
 51395  	;
 51396  
 51397  	goto __1891
 51398  __1891:
 51399  	goto __1890
 51400  	goto __1892
 51401  __1892:
 51402  	;
 51403  	// Control never gets here
 51404  
 51405  __1791:
 51406  __1908:
 51407  
 51408  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51409  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM213
 51410  	goto MATCH_RECURSE
 51411  L_RM213:
 51412  	;
 51413  
 51414  	if !(rrc != DMATCH_NOMATCH) {
 51415  		goto __1911
 51416  	}
 51417  	rrc = rrc
 51418  	goto RETURN_SWITCH
 51419  __1911:
 51420  	;
 51421  
 51422  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51423  		goto __1912
 51424  	}
 51425  	rrc = DMATCH_NOMATCH
 51426  	goto RETURN_SWITCH
 51427  __1912:
 51428  	;
 51429  
 51430  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51431  		goto __1913
 51432  	}
 51433  
 51434  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51435  		goto __1914
 51436  	}
 51437  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51438  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51439  		goto __1915
 51440  	}
 51441  	return -2
 51442  __1915:
 51443  	;
 51444  __1914:
 51445  	;
 51446  
 51447  	rrc = DMATCH_NOMATCH
 51448  	goto RETURN_SWITCH
 51449  
 51450  __1913:
 51451  	;
 51452  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51453  	if !(utf != 0 && fc >= 0xc0) {
 51454  		goto __1916
 51455  	}
 51456  	if !(fc&0x20 == Tuint32_t(0)) {
 51457  		goto __1917
 51458  	}
 51459  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51460  	goto __1918
 51461  __1917:
 51462  	if !(fc&0x10 == Tuint32_t(0)) {
 51463  		goto __1919
 51464  	}
 51465  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51466  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51467  	goto __1920
 51468  __1919:
 51469  	if !(fc&0x08 == Tuint32_t(0)) {
 51470  		goto __1921
 51471  	}
 51472  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51473  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51474  	goto __1922
 51475  __1921:
 51476  	if !(fc&0x04 == Tuint32_t(0)) {
 51477  		goto __1923
 51478  	}
 51479  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51480  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51481  	goto __1924
 51482  __1923:
 51483  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51484  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51485  __1924:
 51486  	;
 51487  __1922:
 51488  	;
 51489  __1920:
 51490  	;
 51491  __1918:
 51492  	;
 51493  __1916:
 51494  	;
 51495  
 51496  	category2 = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 51497  	if !(libc.Bool32(category2 == ucp_L || category2 == ucp_N) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 51498  		goto __1925
 51499  	}
 51500  	rrc = DMATCH_NOMATCH
 51501  	goto RETURN_SWITCH
 51502  __1925:
 51503  	;
 51504  
 51505  	goto __1909
 51506  __1909:
 51507  	goto __1908
 51508  	goto __1910
 51509  __1910:
 51510  	;
 51511  	// Control never gets here
 51512  
 51513  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 51514  	//           which means that Perl space and POSIX space are now identical. PCRE
 51515  	//           was changed at release 8.34.
 51516  
 51517  __1792: // Perl space
 51518  __1793: // POSIX space
 51519  __1926:
 51520  
 51521  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51522  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM214
 51523  	goto MATCH_RECURSE
 51524  L_RM214:
 51525  	;
 51526  
 51527  	if !(rrc != DMATCH_NOMATCH) {
 51528  		goto __1929
 51529  	}
 51530  	rrc = rrc
 51531  	goto RETURN_SWITCH
 51532  __1929:
 51533  	;
 51534  
 51535  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51536  		goto __1930
 51537  	}
 51538  	rrc = DMATCH_NOMATCH
 51539  	goto RETURN_SWITCH
 51540  __1930:
 51541  	;
 51542  
 51543  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51544  		goto __1931
 51545  	}
 51546  
 51547  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51548  		goto __1932
 51549  	}
 51550  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51551  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51552  		goto __1933
 51553  	}
 51554  	return -2
 51555  __1933:
 51556  	;
 51557  __1932:
 51558  	;
 51559  
 51560  	rrc = DMATCH_NOMATCH
 51561  	goto RETURN_SWITCH
 51562  
 51563  __1931:
 51564  	;
 51565  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51566  	if !(utf != 0 && fc >= 0xc0) {
 51567  		goto __1934
 51568  	}
 51569  	if !(fc&0x20 == Tuint32_t(0)) {
 51570  		goto __1935
 51571  	}
 51572  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51573  	goto __1936
 51574  __1935:
 51575  	if !(fc&0x10 == Tuint32_t(0)) {
 51576  		goto __1937
 51577  	}
 51578  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51579  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51580  	goto __1938
 51581  __1937:
 51582  	if !(fc&0x08 == Tuint32_t(0)) {
 51583  		goto __1939
 51584  	}
 51585  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51586  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51587  	goto __1940
 51588  __1939:
 51589  	if !(fc&0x04 == Tuint32_t(0)) {
 51590  		goto __1941
 51591  	}
 51592  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51593  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51594  	goto __1942
 51595  __1941:
 51596  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51597  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51598  __1942:
 51599  	;
 51600  __1940:
 51601  	;
 51602  __1938:
 51603  	;
 51604  __1936:
 51605  	;
 51606  __1934:
 51607  	;
 51608  
 51609  	switch fc {
 51610  	case Tuint32_t('\011'):
 51611  		goto __1944
 51612  	case Tuint32_t('\040'):
 51613  		goto __1945
 51614  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 51615  		goto __1946
 51616  	case Tuint32_t(0x1680):
 51617  		goto __1947 /* OGHAM SPACE MARK */
 51618  	case Tuint32_t(0x180e):
 51619  		goto __1948 /* MONGOLIAN VOWEL SEPARATOR */
 51620  	case Tuint32_t(0x2000):
 51621  		goto __1949 /* EN QUAD */
 51622  	case Tuint32_t(0x2001):
 51623  		goto __1950 /* EM QUAD */
 51624  	case Tuint32_t(0x2002):
 51625  		goto __1951 /* EN SPACE */
 51626  	case Tuint32_t(0x2003):
 51627  		goto __1952 /* EM SPACE */
 51628  	case Tuint32_t(0x2004):
 51629  		goto __1953 /* THREE-PER-EM SPACE */
 51630  	case Tuint32_t(0x2005):
 51631  		goto __1954 /* FOUR-PER-EM SPACE */
 51632  	case Tuint32_t(0x2006):
 51633  		goto __1955 /* SIX-PER-EM SPACE */
 51634  	case Tuint32_t(0x2007):
 51635  		goto __1956 /* FIGURE SPACE */
 51636  	case Tuint32_t(0x2008):
 51637  		goto __1957 /* PUNCTUATION SPACE */
 51638  	case Tuint32_t(0x2009):
 51639  		goto __1958 /* THIN SPACE */
 51640  	case Tuint32_t(0x200A):
 51641  		goto __1959 /* HAIR SPACE */
 51642  	case Tuint32_t(0x202f):
 51643  		goto __1960 /* NARROW NO-BREAK SPACE */
 51644  	case Tuint32_t(0x205f):
 51645  		goto __1961 /* MEDIUM MATHEMATICAL SPACE */
 51646  	case Tuint32_t(0x3000):
 51647  		goto __1962
 51648  	case Tuint32_t('\012'):
 51649  		goto __1963
 51650  	case Tuint32_t('\013'):
 51651  		goto __1964
 51652  	case Tuint32_t('\014'):
 51653  		goto __1965
 51654  	case Tuint32_t('\015'):
 51655  		goto __1966
 51656  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 51657  		goto __1967
 51658  	case Tuint32_t(0x2028):
 51659  		goto __1968 /* LINE SEPARATOR */
 51660  	case Tuint32_t(0x2029):
 51661  		goto __1969
 51662  
 51663  	default:
 51664  		goto __1970
 51665  	}
 51666  	goto __1943
 51667  
 51668  __1944:
 51669  __1945:
 51670  __1946:
 51671  __1947: /* OGHAM SPACE MARK */
 51672  __1948: /* MONGOLIAN VOWEL SEPARATOR */
 51673  __1949: /* EN QUAD */
 51674  __1950: /* EM QUAD */
 51675  __1951: /* EN SPACE */
 51676  __1952: /* EM SPACE */
 51677  __1953: /* THREE-PER-EM SPACE */
 51678  __1954: /* FOUR-PER-EM SPACE */
 51679  __1955: /* SIX-PER-EM SPACE */
 51680  __1956: /* FIGURE SPACE */
 51681  __1957: /* PUNCTUATION SPACE */
 51682  __1958: /* THIN SPACE */
 51683  __1959: /* HAIR SPACE */
 51684  __1960: /* NARROW NO-BREAK SPACE */
 51685  __1961: /* MEDIUM MATHEMATICAL SPACE */
 51686  __1962:
 51687  __1963:
 51688  __1964:
 51689  __1965:
 51690  __1966:
 51691  __1967:
 51692  __1968: /* LINE SEPARATOR */
 51693  __1969:
 51694  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP) {
 51695  		goto __1971
 51696  	}
 51697  	rrc = DMATCH_NOMATCH
 51698  	goto RETURN_SWITCH
 51699  __1971:
 51700  	;
 51701  
 51702  	goto __1943
 51703  
 51704  __1970:
 51705  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype] == ucp_Z) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 51706  		goto __1972
 51707  	}
 51708  	rrc = DMATCH_NOMATCH
 51709  	goto RETURN_SWITCH
 51710  __1972:
 51711  	;
 51712  
 51713  	goto __1943
 51714  __1943:
 51715  	;
 51716  	goto __1927
 51717  __1927:
 51718  	goto __1926
 51719  	goto __1928
 51720  __1928:
 51721  	;
 51722  	// Control never gets here
 51723  
 51724  __1794:
 51725  __1973:
 51726  
 51727  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51728  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM215
 51729  	goto MATCH_RECURSE
 51730  L_RM215:
 51731  	;
 51732  
 51733  	if !(rrc != DMATCH_NOMATCH) {
 51734  		goto __1976
 51735  	}
 51736  	rrc = rrc
 51737  	goto RETURN_SWITCH
 51738  __1976:
 51739  	;
 51740  
 51741  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51742  		goto __1977
 51743  	}
 51744  	rrc = DMATCH_NOMATCH
 51745  	goto RETURN_SWITCH
 51746  __1977:
 51747  	;
 51748  
 51749  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51750  		goto __1978
 51751  	}
 51752  
 51753  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51754  		goto __1979
 51755  	}
 51756  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51757  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51758  		goto __1980
 51759  	}
 51760  	return -2
 51761  __1980:
 51762  	;
 51763  __1979:
 51764  	;
 51765  
 51766  	rrc = DMATCH_NOMATCH
 51767  	goto RETURN_SWITCH
 51768  
 51769  __1978:
 51770  	;
 51771  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51772  	if !(utf != 0 && fc >= 0xc0) {
 51773  		goto __1981
 51774  	}
 51775  	if !(fc&0x20 == Tuint32_t(0)) {
 51776  		goto __1982
 51777  	}
 51778  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51779  	goto __1983
 51780  __1982:
 51781  	if !(fc&0x10 == Tuint32_t(0)) {
 51782  		goto __1984
 51783  	}
 51784  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51785  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51786  	goto __1985
 51787  __1984:
 51788  	if !(fc&0x08 == Tuint32_t(0)) {
 51789  		goto __1986
 51790  	}
 51791  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51792  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51793  	goto __1987
 51794  __1986:
 51795  	if !(fc&0x04 == Tuint32_t(0)) {
 51796  		goto __1988
 51797  	}
 51798  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51799  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51800  	goto __1989
 51801  __1988:
 51802  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51803  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51804  __1989:
 51805  	;
 51806  __1987:
 51807  	;
 51808  __1985:
 51809  	;
 51810  __1983:
 51811  	;
 51812  __1981:
 51813  	;
 51814  
 51815  	category3 = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 51816  	if !(libc.Bool32(category3 == ucp_L || category3 == ucp_N || fc == Tuint32_t('\137')) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 51817  		goto __1990
 51818  	}
 51819  	rrc = DMATCH_NOMATCH
 51820  	goto RETURN_SWITCH
 51821  __1990:
 51822  	;
 51823  
 51824  	goto __1974
 51825  __1974:
 51826  	goto __1973
 51827  	goto __1975
 51828  __1975:
 51829  	;
 51830  	// Control never gets here
 51831  
 51832  __1795:
 51833  __1991:
 51834  
 51835  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51836  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM216
 51837  	goto MATCH_RECURSE
 51838  L_RM216:
 51839  	;
 51840  
 51841  	if !(rrc != DMATCH_NOMATCH) {
 51842  		goto __1994
 51843  	}
 51844  	rrc = rrc
 51845  	goto RETURN_SWITCH
 51846  __1994:
 51847  	;
 51848  
 51849  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51850  		goto __1995
 51851  	}
 51852  	rrc = DMATCH_NOMATCH
 51853  	goto RETURN_SWITCH
 51854  __1995:
 51855  	;
 51856  
 51857  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51858  		goto __1996
 51859  	}
 51860  
 51861  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 51862  		goto __1997
 51863  	}
 51864  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 51865  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 51866  		goto __1998
 51867  	}
 51868  	return -2
 51869  __1998:
 51870  	;
 51871  __1997:
 51872  	;
 51873  
 51874  	rrc = DMATCH_NOMATCH
 51875  	goto RETURN_SWITCH
 51876  
 51877  __1996:
 51878  	;
 51879  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 51880  	if !(utf != 0 && fc >= 0xc0) {
 51881  		goto __1999
 51882  	}
 51883  	if !(fc&0x20 == Tuint32_t(0)) {
 51884  		goto __2000
 51885  	}
 51886  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 51887  	goto __2001
 51888  __2000:
 51889  	if !(fc&0x10 == Tuint32_t(0)) {
 51890  		goto __2002
 51891  	}
 51892  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 51893  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 51894  	goto __2003
 51895  __2002:
 51896  	if !(fc&0x08 == Tuint32_t(0)) {
 51897  		goto __2004
 51898  	}
 51899  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 51900  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 51901  	goto __2005
 51902  __2004:
 51903  	if !(fc&0x04 == Tuint32_t(0)) {
 51904  		goto __2006
 51905  	}
 51906  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 51907  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 51908  	goto __2007
 51909  __2006:
 51910  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 51911  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 51912  __2007:
 51913  	;
 51914  __2005:
 51915  	;
 51916  __2003:
 51917  	;
 51918  __2001:
 51919  	;
 51920  __1999:
 51921  	;
 51922  
 51923  	cp2 = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)))*4
 51924  __2008:
 51925  
 51926  	if !(fc < *(*Tuint32_t)(unsafe.Pointer(cp2))) {
 51927  		goto __2011
 51928  	}
 51929  
 51930  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP) {
 51931  		goto __2012
 51932  	}
 51933  	goto __2010
 51934  __2012:
 51935  	;
 51936  	rrc = DMATCH_NOMATCH
 51937  	goto RETURN_SWITCH
 51938  
 51939  __2011:
 51940  	;
 51941  	if !(fc == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp2, 4)))) {
 51942  		goto __2013
 51943  	}
 51944  
 51945  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP) {
 51946  		goto __2014
 51947  	}
 51948  	rrc = DMATCH_NOMATCH
 51949  	goto RETURN_SWITCH
 51950  __2014:
 51951  	;
 51952  
 51953  	goto __2010
 51954  __2013:
 51955  	;
 51956  	goto __2009
 51957  __2009:
 51958  	goto __2008
 51959  	goto __2010
 51960  __2010:
 51961  	;
 51962  	goto __1992
 51963  __1992:
 51964  	goto __1991
 51965  	goto __1993
 51966  __1993:
 51967  	;
 51968  	// Control never gets here
 51969  
 51970  __1796:
 51971  __2015:
 51972  
 51973  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 51974  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM217
 51975  	goto MATCH_RECURSE
 51976  L_RM217:
 51977  	;
 51978  
 51979  	if !(rrc != DMATCH_NOMATCH) {
 51980  		goto __2018
 51981  	}
 51982  	rrc = rrc
 51983  	goto RETURN_SWITCH
 51984  __2018:
 51985  	;
 51986  
 51987  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 51988  		goto __2019
 51989  	}
 51990  	rrc = DMATCH_NOMATCH
 51991  	goto RETURN_SWITCH
 51992  __2019:
 51993  	;
 51994  
 51995  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 51996  		goto __2020
 51997  	}
 51998  
 51999  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 52000  		goto __2021
 52001  	}
 52002  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52003  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52004  		goto __2022
 52005  	}
 52006  	return -2
 52007  __2022:
 52008  	;
 52009  __2021:
 52010  	;
 52011  
 52012  	rrc = DMATCH_NOMATCH
 52013  	goto RETURN_SWITCH
 52014  
 52015  __2020:
 52016  	;
 52017  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 52018  	if !(utf != 0 && fc >= 0xc0) {
 52019  		goto __2023
 52020  	}
 52021  	if !(fc&0x20 == Tuint32_t(0)) {
 52022  		goto __2024
 52023  	}
 52024  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 52025  	goto __2025
 52026  __2024:
 52027  	if !(fc&0x10 == Tuint32_t(0)) {
 52028  		goto __2026
 52029  	}
 52030  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 52031  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 52032  	goto __2027
 52033  __2026:
 52034  	if !(fc&0x08 == Tuint32_t(0)) {
 52035  		goto __2028
 52036  	}
 52037  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 52038  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 52039  	goto __2029
 52040  __2028:
 52041  	if !(fc&0x04 == Tuint32_t(0)) {
 52042  		goto __2030
 52043  	}
 52044  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 52045  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 52046  	goto __2031
 52047  __2030:
 52048  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 52049  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 52050  __2031:
 52051  	;
 52052  __2029:
 52053  	;
 52054  __2027:
 52055  	;
 52056  __2025:
 52057  	;
 52058  __2023:
 52059  	;
 52060  
 52061  	if !(libc.Bool32(fc == Tuint32_t('\044') || fc == Tuint32_t('\100') || fc == Tuint32_t('\140') || fc >= Tuint32_t(0xa0) && fc <= Tuint32_t(0xd7ff) || fc >= Tuint32_t(0xe000)) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 52062  		goto __2032
 52063  	}
 52064  	rrc = DMATCH_NOMATCH
 52065  	goto RETURN_SWITCH
 52066  __2032:
 52067  	;
 52068  
 52069  	goto __2016
 52070  __2016:
 52071  	goto __2015
 52072  	goto __2017
 52073  __2017:
 52074  	;
 52075  	// Control never gets here
 52076  
 52077  __1797:
 52078  __2033:
 52079  
 52080  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 52081  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM224
 52082  	goto MATCH_RECURSE
 52083  L_RM224:
 52084  	;
 52085  
 52086  	if !(rrc != DMATCH_NOMATCH) {
 52087  		goto __2036
 52088  	}
 52089  	rrc = rrc
 52090  	goto RETURN_SWITCH
 52091  __2036:
 52092  	;
 52093  
 52094  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 52095  		goto __2037
 52096  	}
 52097  	rrc = DMATCH_NOMATCH
 52098  	goto RETURN_SWITCH
 52099  __2037:
 52100  	;
 52101  
 52102  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 52103  		goto __2038
 52104  	}
 52105  
 52106  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 52107  		goto __2039
 52108  	}
 52109  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52110  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52111  		goto __2040
 52112  	}
 52113  	return -2
 52114  __2040:
 52115  	;
 52116  __2039:
 52117  	;
 52118  
 52119  	rrc = DMATCH_NOMATCH
 52120  	goto RETURN_SWITCH
 52121  
 52122  __2038:
 52123  	;
 52124  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 52125  	if !(utf != 0 && fc >= 0xc0) {
 52126  		goto __2041
 52127  	}
 52128  	if !(fc&0x20 == Tuint32_t(0)) {
 52129  		goto __2042
 52130  	}
 52131  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 52132  	goto __2043
 52133  __2042:
 52134  	if !(fc&0x10 == Tuint32_t(0)) {
 52135  		goto __2044
 52136  	}
 52137  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 52138  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 52139  	goto __2045
 52140  __2044:
 52141  	if !(fc&0x08 == Tuint32_t(0)) {
 52142  		goto __2046
 52143  	}
 52144  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 52145  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 52146  	goto __2047
 52147  __2046:
 52148  	if !(fc&0x04 == Tuint32_t(0)) {
 52149  		goto __2048
 52150  	}
 52151  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 52152  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 52153  	goto __2049
 52154  __2048:
 52155  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 52156  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 52157  __2049:
 52158  	;
 52159  __2047:
 52160  	;
 52161  __2045:
 52162  	;
 52163  __2043:
 52164  	;
 52165  __2041:
 52166  	;
 52167  
 52168  	if !(libc.Bool32(Tuint32_t(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 52169  		goto __2050
 52170  	}
 52171  	rrc = DMATCH_NOMATCH
 52172  	goto RETURN_SWITCH
 52173  __2050:
 52174  	;
 52175  
 52176  	goto __2034
 52177  __2034:
 52178  	goto __2033
 52179  	goto __2035
 52180  __2035:
 52181  	;
 52182  	// Control never gets here
 52183  
 52184  __1798:
 52185  __2051:
 52186  
 52187  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 52188  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM223
 52189  	goto MATCH_RECURSE
 52190  L_RM223:
 52191  	;
 52192  
 52193  	if !(rrc != DMATCH_NOMATCH) {
 52194  		goto __2054
 52195  	}
 52196  	rrc = rrc
 52197  	goto RETURN_SWITCH
 52198  __2054:
 52199  	;
 52200  
 52201  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 52202  		goto __2055
 52203  	}
 52204  	rrc = DMATCH_NOMATCH
 52205  	goto RETURN_SWITCH
 52206  __2055:
 52207  	;
 52208  
 52209  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 52210  		goto __2056
 52211  	}
 52212  
 52213  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 52214  		goto __2057
 52215  	}
 52216  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52217  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52218  		goto __2058
 52219  	}
 52220  	return -2
 52221  __2058:
 52222  	;
 52223  __2057:
 52224  	;
 52225  
 52226  	rrc = DMATCH_NOMATCH
 52227  	goto RETURN_SWITCH
 52228  
 52229  __2056:
 52230  	;
 52231  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 52232  	if !(utf != 0 && fc >= 0xc0) {
 52233  		goto __2059
 52234  	}
 52235  	if !(fc&0x20 == Tuint32_t(0)) {
 52236  		goto __2060
 52237  	}
 52238  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 52239  	goto __2061
 52240  __2060:
 52241  	if !(fc&0x10 == Tuint32_t(0)) {
 52242  		goto __2062
 52243  	}
 52244  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 52245  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 52246  	goto __2063
 52247  __2062:
 52248  	if !(fc&0x08 == Tuint32_t(0)) {
 52249  		goto __2064
 52250  	}
 52251  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 52252  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 52253  	goto __2065
 52254  __2064:
 52255  	if !(fc&0x04 == Tuint32_t(0)) {
 52256  		goto __2066
 52257  	}
 52258  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 52259  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 52260  	goto __2067
 52261  __2066:
 52262  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 52263  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 52264  __2067:
 52265  	;
 52266  __2065:
 52267  	;
 52268  __2063:
 52269  	;
 52270  __2061:
 52271  	;
 52272  __2059:
 52273  	;
 52274  
 52275  	prop4 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12
 52276  	ok5 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop4)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))/Tuint32_t(32))*4))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))%Tuint32_t(32))) != Tuint32_t(0))
 52277  	if !(ok5 == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)) {
 52278  		goto __2068
 52279  	}
 52280  	rrc = DMATCH_NOMATCH
 52281  	goto RETURN_SWITCH
 52282  __2068:
 52283  	;
 52284  
 52285  	goto __2052
 52286  __2052:
 52287  	goto __2051
 52288  	goto __2053
 52289  __2053:
 52290  	;
 52291  	// Control never gets here
 52292  
 52293  	// This should never occur
 52294  __1799:
 52295  	return -44
 52296  __1784:
 52297  	;
 52298  	goto __1783
 52299  __1782:
 52300  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_EXTUNI) {
 52301  		goto __2069
 52302  	}
 52303  
 52304  __2071:
 52305  
 52306  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 52307  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM218
 52308  	goto MATCH_RECURSE
 52309  L_RM218:
 52310  	;
 52311  
 52312  	if !(rrc != DMATCH_NOMATCH) {
 52313  		goto __2074
 52314  	}
 52315  	rrc = rrc
 52316  	goto RETURN_SWITCH
 52317  __2074:
 52318  	;
 52319  
 52320  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 52321  		goto __2075
 52322  	}
 52323  	rrc = DMATCH_NOMATCH
 52324  	goto RETURN_SWITCH
 52325  __2075:
 52326  	;
 52327  
 52328  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 52329  		goto __2076
 52330  	}
 52331  
 52332  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 52333  		goto __2078
 52334  	}
 52335  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52336  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52337  		goto __2079
 52338  	}
 52339  	return -2
 52340  __2079:
 52341  	;
 52342  __2078:
 52343  	;
 52344  
 52345  	rrc = DMATCH_NOMATCH
 52346  	goto RETURN_SWITCH
 52347  
 52348  	goto __2077
 52349  __2076:
 52350  
 52351  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 52352  	if !(utf != 0 && fc >= 0xc0) {
 52353  		goto __2080
 52354  	}
 52355  	if !(fc&0x20 == Tuint32_t(0)) {
 52356  		goto __2081
 52357  	}
 52358  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 52359  	goto __2082
 52360  __2081:
 52361  	if !(fc&0x10 == Tuint32_t(0)) {
 52362  		goto __2083
 52363  	}
 52364  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 52365  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 52366  	goto __2084
 52367  __2083:
 52368  	if !(fc&0x08 == Tuint32_t(0)) {
 52369  		goto __2085
 52370  	}
 52371  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 52372  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 52373  	goto __2086
 52374  __2085:
 52375  	if !(fc&0x04 == Tuint32_t(0)) {
 52376  		goto __2087
 52377  	}
 52378  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 52379  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 52380  	goto __2088
 52381  __2087:
 52382  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 52383  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 52384  __2088:
 52385  	;
 52386  __2086:
 52387  	;
 52388  __2084:
 52389  	;
 52390  __2082:
 52391  	;
 52392  __2080:
 52393  	;
 52394  
 52395  	(*Theapframe)(unsafe.Pointer(F)).Feptr = X_pcre2_extuni_8(tls, fc, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject,
 52396  		utf, uintptr(0))
 52397  __2077:
 52398  	;
 52399  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 52400  		goto __2089
 52401  	}
 52402  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 52403  		goto __2090
 52404  	}
 52405  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52406  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52407  		goto __2091
 52408  	}
 52409  	return -2
 52410  __2091:
 52411  	;
 52412  __2090:
 52413  	;
 52414  __2089:
 52415  	;
 52416  
 52417  	goto __2072
 52418  __2072:
 52419  	goto __2071
 52420  	goto __2073
 52421  __2073:
 52422  	;
 52423  	goto __2070
 52424  __2069:
 52425  
 52426  	// UTF mode for non-property testing character types.
 52427  
 52428  	if !(utf != 0) {
 52429  		goto __2092
 52430  	}
 52431  
 52432  __2094:
 52433  
 52434  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 52435  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM219
 52436  	goto MATCH_RECURSE
 52437  L_RM219:
 52438  	;
 52439  
 52440  	if !(rrc != DMATCH_NOMATCH) {
 52441  		goto __2097
 52442  	}
 52443  	rrc = rrc
 52444  	goto RETURN_SWITCH
 52445  __2097:
 52446  	;
 52447  
 52448  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 52449  		goto __2098
 52450  	}
 52451  	rrc = DMATCH_NOMATCH
 52452  	goto RETURN_SWITCH
 52453  __2098:
 52454  	;
 52455  
 52456  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 52457  		goto __2099
 52458  	}
 52459  
 52460  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 52461  		goto __2100
 52462  	}
 52463  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52464  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52465  		goto __2101
 52466  	}
 52467  	return -2
 52468  __2101:
 52469  	;
 52470  __2100:
 52471  	;
 52472  
 52473  	rrc = DMATCH_NOMATCH
 52474  	goto RETURN_SWITCH
 52475  
 52476  __2099:
 52477  	;
 52478  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_ANY && func() int32 {
 52479  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 52480  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 52481  		}
 52482  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 52483  	}() != 0) {
 52484  		goto __2102
 52485  	}
 52486  	rrc = DMATCH_NOMATCH
 52487  	goto RETURN_SWITCH
 52488  __2102:
 52489  	;
 52490  
 52491  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 52492  	if !(fc >= 0xc0) {
 52493  		goto __2103
 52494  	}
 52495  	if !(fc&0x20 == Tuint32_t(0)) {
 52496  		goto __2104
 52497  	}
 52498  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 52499  	goto __2105
 52500  __2104:
 52501  	if !(fc&0x10 == Tuint32_t(0)) {
 52502  		goto __2106
 52503  	}
 52504  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 52505  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 52506  	goto __2107
 52507  __2106:
 52508  	if !(fc&0x08 == Tuint32_t(0)) {
 52509  		goto __2108
 52510  	}
 52511  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 52512  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 52513  	goto __2109
 52514  __2108:
 52515  	if !(fc&0x04 == Tuint32_t(0)) {
 52516  		goto __2110
 52517  	}
 52518  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 52519  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 52520  	goto __2111
 52521  __2110:
 52522  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 52523  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 52524  __2111:
 52525  	;
 52526  __2109:
 52527  	;
 52528  __2107:
 52529  	;
 52530  __2105:
 52531  	;
 52532  __2103:
 52533  	;
 52534  
 52535  	switch *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) {
 52536  	case OP_ANY:
 52537  		goto __2113
 52538  
 52539  	case OP_ALLANY:
 52540  		goto __2114
 52541  	case OP_ANYBYTE:
 52542  		goto __2115
 52543  
 52544  	case OP_ANYNL:
 52545  		goto __2116
 52546  
 52547  	case OP_NOT_HSPACE:
 52548  		goto __2117
 52549  
 52550  	case OP_HSPACE:
 52551  		goto __2118
 52552  
 52553  	case OP_NOT_VSPACE:
 52554  		goto __2119
 52555  
 52556  	case OP_VSPACE:
 52557  		goto __2120
 52558  
 52559  	case OP_NOT_DIGIT:
 52560  		goto __2121
 52561  
 52562  	case OP_DIGIT:
 52563  		goto __2122
 52564  
 52565  	case OP_NOT_WHITESPACE:
 52566  		goto __2123
 52567  
 52568  	case OP_WHITESPACE:
 52569  		goto __2124
 52570  
 52571  	case OP_NOT_WORDCHAR:
 52572  		goto __2125
 52573  
 52574  	case OP_WORDCHAR:
 52575  		goto __2126
 52576  
 52577  	default:
 52578  		goto __2127
 52579  	}
 52580  	goto __2112
 52581  
 52582  __2113: // This is the non-NL case
 52583  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && fc == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 52584  		goto __2128
 52585  	}
 52586  
 52587  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52588  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52589  		goto __2129
 52590  	}
 52591  	return -2
 52592  __2129:
 52593  	;
 52594  __2128:
 52595  	;
 52596  	goto __2112
 52597  
 52598  __2114:
 52599  __2115:
 52600  	goto __2112
 52601  
 52602  __2116:
 52603  	switch fc {
 52604  	default:
 52605  		goto __2131
 52606  
 52607  	case Tuint32_t('\015'):
 52608  		goto __2132
 52609  
 52610  	case Tuint32_t('\012'):
 52611  		goto __2133
 52612  
 52613  	case Tuint32_t('\013'):
 52614  		goto __2134
 52615  	case Tuint32_t('\014'):
 52616  		goto __2135
 52617  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 52618  		goto __2136
 52619  	case Tuint32_t(0x2028):
 52620  		goto __2137
 52621  	case Tuint32_t(0x2029):
 52622  		goto __2138
 52623  	}
 52624  	goto __2130
 52625  
 52626  __2131:
 52627  	rrc = DMATCH_NOMATCH
 52628  	goto RETURN_SWITCH
 52629  
 52630  __2132:
 52631  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012') {
 52632  		goto __2139
 52633  	}
 52634  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 52635  __2139:
 52636  	;
 52637  	goto __2130
 52638  
 52639  __2133:
 52640  	goto __2130
 52641  
 52642  __2134:
 52643  __2135:
 52644  __2136:
 52645  __2137:
 52646  __2138:
 52647  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 52648  		goto __2140
 52649  	}
 52650  	rrc = DMATCH_NOMATCH
 52651  	goto RETURN_SWITCH
 52652  __2140:
 52653  	;
 52654  
 52655  	goto __2130
 52656  __2130:
 52657  	;
 52658  	goto __2112
 52659  
 52660  __2117:
 52661  	switch fc {
 52662  	case Tuint32_t('\011'):
 52663  		goto __2142
 52664  	case Tuint32_t('\040'):
 52665  		goto __2143
 52666  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 52667  		goto __2144
 52668  	case Tuint32_t(0x1680):
 52669  		goto __2145 /* OGHAM SPACE MARK */
 52670  	case Tuint32_t(0x180e):
 52671  		goto __2146 /* MONGOLIAN VOWEL SEPARATOR */
 52672  	case Tuint32_t(0x2000):
 52673  		goto __2147 /* EN QUAD */
 52674  	case Tuint32_t(0x2001):
 52675  		goto __2148 /* EM QUAD */
 52676  	case Tuint32_t(0x2002):
 52677  		goto __2149 /* EN SPACE */
 52678  	case Tuint32_t(0x2003):
 52679  		goto __2150 /* EM SPACE */
 52680  	case Tuint32_t(0x2004):
 52681  		goto __2151 /* THREE-PER-EM SPACE */
 52682  	case Tuint32_t(0x2005):
 52683  		goto __2152 /* FOUR-PER-EM SPACE */
 52684  	case Tuint32_t(0x2006):
 52685  		goto __2153 /* SIX-PER-EM SPACE */
 52686  	case Tuint32_t(0x2007):
 52687  		goto __2154 /* FIGURE SPACE */
 52688  	case Tuint32_t(0x2008):
 52689  		goto __2155 /* PUNCTUATION SPACE */
 52690  	case Tuint32_t(0x2009):
 52691  		goto __2156 /* THIN SPACE */
 52692  	case Tuint32_t(0x200A):
 52693  		goto __2157 /* HAIR SPACE */
 52694  	case Tuint32_t(0x202f):
 52695  		goto __2158 /* NARROW NO-BREAK SPACE */
 52696  	case Tuint32_t(0x205f):
 52697  		goto __2159 /* MEDIUM MATHEMATICAL SPACE */
 52698  	case Tuint32_t(0x3000):
 52699  		goto __2160
 52700  	default:
 52701  		goto __2161
 52702  	}
 52703  	goto __2141
 52704  
 52705  __2142:
 52706  __2143:
 52707  __2144:
 52708  __2145: /* OGHAM SPACE MARK */
 52709  __2146: /* MONGOLIAN VOWEL SEPARATOR */
 52710  __2147: /* EN QUAD */
 52711  __2148: /* EM QUAD */
 52712  __2149: /* EN SPACE */
 52713  __2150: /* EM SPACE */
 52714  __2151: /* THREE-PER-EM SPACE */
 52715  __2152: /* FOUR-PER-EM SPACE */
 52716  __2153: /* SIX-PER-EM SPACE */
 52717  __2154: /* FIGURE SPACE */
 52718  __2155: /* PUNCTUATION SPACE */
 52719  __2156: /* THIN SPACE */
 52720  __2157: /* HAIR SPACE */
 52721  __2158: /* NARROW NO-BREAK SPACE */
 52722  __2159: /* MEDIUM MATHEMATICAL SPACE */
 52723  __2160:
 52724  	rrc = DMATCH_NOMATCH
 52725  	goto RETURN_SWITCH
 52726  
 52727  __2161:
 52728  	goto __2141
 52729  __2141:
 52730  	;
 52731  	goto __2112
 52732  
 52733  __2118:
 52734  	switch fc {
 52735  	case Tuint32_t('\011'):
 52736  		goto __2163
 52737  	case Tuint32_t('\040'):
 52738  		goto __2164
 52739  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 52740  		goto __2165
 52741  	case Tuint32_t(0x1680):
 52742  		goto __2166 /* OGHAM SPACE MARK */
 52743  	case Tuint32_t(0x180e):
 52744  		goto __2167 /* MONGOLIAN VOWEL SEPARATOR */
 52745  	case Tuint32_t(0x2000):
 52746  		goto __2168 /* EN QUAD */
 52747  	case Tuint32_t(0x2001):
 52748  		goto __2169 /* EM QUAD */
 52749  	case Tuint32_t(0x2002):
 52750  		goto __2170 /* EN SPACE */
 52751  	case Tuint32_t(0x2003):
 52752  		goto __2171 /* EM SPACE */
 52753  	case Tuint32_t(0x2004):
 52754  		goto __2172 /* THREE-PER-EM SPACE */
 52755  	case Tuint32_t(0x2005):
 52756  		goto __2173 /* FOUR-PER-EM SPACE */
 52757  	case Tuint32_t(0x2006):
 52758  		goto __2174 /* SIX-PER-EM SPACE */
 52759  	case Tuint32_t(0x2007):
 52760  		goto __2175 /* FIGURE SPACE */
 52761  	case Tuint32_t(0x2008):
 52762  		goto __2176 /* PUNCTUATION SPACE */
 52763  	case Tuint32_t(0x2009):
 52764  		goto __2177 /* THIN SPACE */
 52765  	case Tuint32_t(0x200A):
 52766  		goto __2178 /* HAIR SPACE */
 52767  	case Tuint32_t(0x202f):
 52768  		goto __2179 /* NARROW NO-BREAK SPACE */
 52769  	case Tuint32_t(0x205f):
 52770  		goto __2180 /* MEDIUM MATHEMATICAL SPACE */
 52771  	case Tuint32_t(0x3000):
 52772  		goto __2181
 52773  	default:
 52774  		goto __2182
 52775  	}
 52776  	goto __2162
 52777  
 52778  __2163:
 52779  __2164:
 52780  __2165:
 52781  __2166: /* OGHAM SPACE MARK */
 52782  __2167: /* MONGOLIAN VOWEL SEPARATOR */
 52783  __2168: /* EN QUAD */
 52784  __2169: /* EM QUAD */
 52785  __2170: /* EN SPACE */
 52786  __2171: /* EM SPACE */
 52787  __2172: /* THREE-PER-EM SPACE */
 52788  __2173: /* FOUR-PER-EM SPACE */
 52789  __2174: /* SIX-PER-EM SPACE */
 52790  __2175: /* FIGURE SPACE */
 52791  __2176: /* PUNCTUATION SPACE */
 52792  __2177: /* THIN SPACE */
 52793  __2178: /* HAIR SPACE */
 52794  __2179: /* NARROW NO-BREAK SPACE */
 52795  __2180: /* MEDIUM MATHEMATICAL SPACE */
 52796  __2181:
 52797  	goto __2162
 52798  __2182:
 52799  	rrc = DMATCH_NOMATCH
 52800  	goto RETURN_SWITCH
 52801  
 52802  __2162:
 52803  	;
 52804  	goto __2112
 52805  
 52806  __2119:
 52807  	switch fc {
 52808  	case Tuint32_t('\012'):
 52809  		goto __2184
 52810  	case Tuint32_t('\013'):
 52811  		goto __2185
 52812  	case Tuint32_t('\014'):
 52813  		goto __2186
 52814  	case Tuint32_t('\015'):
 52815  		goto __2187
 52816  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 52817  		goto __2188
 52818  	case Tuint32_t(0x2028):
 52819  		goto __2189 /* LINE SEPARATOR */
 52820  	case Tuint32_t(0x2029):
 52821  		goto __2190
 52822  	default:
 52823  		goto __2191
 52824  	}
 52825  	goto __2183
 52826  
 52827  __2184:
 52828  __2185:
 52829  __2186:
 52830  __2187:
 52831  __2188:
 52832  __2189: /* LINE SEPARATOR */
 52833  __2190:
 52834  	rrc = DMATCH_NOMATCH
 52835  	goto RETURN_SWITCH
 52836  
 52837  __2191:
 52838  	goto __2183
 52839  __2183:
 52840  	;
 52841  	goto __2112
 52842  
 52843  __2120:
 52844  	switch fc {
 52845  	case Tuint32_t('\012'):
 52846  		goto __2193
 52847  	case Tuint32_t('\013'):
 52848  		goto __2194
 52849  	case Tuint32_t('\014'):
 52850  		goto __2195
 52851  	case Tuint32_t('\015'):
 52852  		goto __2196
 52853  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 52854  		goto __2197
 52855  	case Tuint32_t(0x2028):
 52856  		goto __2198 /* LINE SEPARATOR */
 52857  	case Tuint32_t(0x2029):
 52858  		goto __2199
 52859  	default:
 52860  		goto __2200
 52861  	}
 52862  	goto __2192
 52863  
 52864  __2193:
 52865  __2194:
 52866  __2195:
 52867  __2196:
 52868  __2197:
 52869  __2198: /* LINE SEPARATOR */
 52870  __2199:
 52871  	goto __2192
 52872  __2200:
 52873  	rrc = DMATCH_NOMATCH
 52874  	goto RETURN_SWITCH
 52875  
 52876  __2192:
 52877  	;
 52878  	goto __2112
 52879  
 52880  __2121:
 52881  	if !(fc < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit != 0) {
 52882  		goto __2201
 52883  	}
 52884  	rrc = DMATCH_NOMATCH
 52885  	goto RETURN_SWITCH
 52886  __2201:
 52887  	;
 52888  
 52889  	goto __2112
 52890  
 52891  __2122:
 52892  	if !(fc >= Tuint32_t(256) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit == 0) {
 52893  		goto __2202
 52894  	}
 52895  	rrc = DMATCH_NOMATCH
 52896  	goto RETURN_SWITCH
 52897  __2202:
 52898  	;
 52899  
 52900  	goto __2112
 52901  
 52902  __2123:
 52903  	if !(fc < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space != 0) {
 52904  		goto __2203
 52905  	}
 52906  	rrc = DMATCH_NOMATCH
 52907  	goto RETURN_SWITCH
 52908  __2203:
 52909  	;
 52910  
 52911  	goto __2112
 52912  
 52913  __2124:
 52914  	if !(fc >= Tuint32_t(256) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space == 0) {
 52915  		goto __2204
 52916  	}
 52917  	rrc = DMATCH_NOMATCH
 52918  	goto RETURN_SWITCH
 52919  __2204:
 52920  	;
 52921  
 52922  	goto __2112
 52923  
 52924  __2125:
 52925  	if !(fc < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word != 0) {
 52926  		goto __2205
 52927  	}
 52928  	rrc = DMATCH_NOMATCH
 52929  	goto RETURN_SWITCH
 52930  __2205:
 52931  	;
 52932  
 52933  	goto __2112
 52934  
 52935  __2126:
 52936  	if !(fc >= Tuint32_t(256) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word == 0) {
 52937  		goto __2206
 52938  	}
 52939  	rrc = DMATCH_NOMATCH
 52940  	goto RETURN_SWITCH
 52941  __2206:
 52942  	;
 52943  
 52944  	goto __2112
 52945  
 52946  __2127:
 52947  	return -44
 52948  __2112:
 52949  	;
 52950  	goto __2095
 52951  __2095:
 52952  	goto __2094
 52953  	goto __2096
 52954  __2096:
 52955  	;
 52956  	goto __2093
 52957  __2092:
 52958  
 52959  	/* Not UTF mode */
 52960  
 52961  __2207:
 52962  
 52963  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 52964  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM33
 52965  	goto MATCH_RECURSE
 52966  L_RM33:
 52967  	;
 52968  
 52969  	if !(rrc != DMATCH_NOMATCH) {
 52970  		goto __2210
 52971  	}
 52972  	rrc = rrc
 52973  	goto RETURN_SWITCH
 52974  __2210:
 52975  	;
 52976  
 52977  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 52978  		goto __2211
 52979  	}
 52980  	rrc = DMATCH_NOMATCH
 52981  	goto RETURN_SWITCH
 52982  __2211:
 52983  	;
 52984  
 52985  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 52986  		goto __2212
 52987  	}
 52988  
 52989  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 52990  		goto __2213
 52991  	}
 52992  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 52993  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 52994  		goto __2214
 52995  	}
 52996  	return -2
 52997  __2214:
 52998  	;
 52999  __2213:
 53000  	;
 53001  
 53002  	rrc = DMATCH_NOMATCH
 53003  	goto RETURN_SWITCH
 53004  
 53005  __2212:
 53006  	;
 53007  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_ANY && func() int32 {
 53008  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 53009  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 53010  		}
 53011  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 53012  	}() != 0) {
 53013  		goto __2215
 53014  	}
 53015  	rrc = DMATCH_NOMATCH
 53016  	goto RETURN_SWITCH
 53017  __2215:
 53018  	;
 53019  
 53020  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 53021  	switch *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) {
 53022  	case OP_ANY:
 53023  		goto __2217
 53024  
 53025  	case OP_ALLANY:
 53026  		goto __2218
 53027  	case OP_ANYBYTE:
 53028  		goto __2219
 53029  
 53030  	case OP_ANYNL:
 53031  		goto __2220
 53032  
 53033  	case OP_NOT_HSPACE:
 53034  		goto __2221
 53035  
 53036  	case OP_HSPACE:
 53037  		goto __2222
 53038  
 53039  	case OP_NOT_VSPACE:
 53040  		goto __2223
 53041  
 53042  	case OP_VSPACE:
 53043  		goto __2224
 53044  
 53045  	case OP_NOT_DIGIT:
 53046  		goto __2225
 53047  
 53048  	case OP_DIGIT:
 53049  		goto __2226
 53050  
 53051  	case OP_NOT_WHITESPACE:
 53052  		goto __2227
 53053  
 53054  	case OP_WHITESPACE:
 53055  		goto __2228
 53056  
 53057  	case OP_NOT_WORDCHAR:
 53058  		goto __2229
 53059  
 53060  	case OP_WORDCHAR:
 53061  		goto __2230
 53062  
 53063  	default:
 53064  		goto __2231
 53065  	}
 53066  	goto __2216
 53067  
 53068  __2217: // This is the non-NL case
 53069  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && fc == Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 53070  		goto __2232
 53071  	}
 53072  
 53073  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53074  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53075  		goto __2233
 53076  	}
 53077  	return -2
 53078  __2233:
 53079  	;
 53080  __2232:
 53081  	;
 53082  	goto __2216
 53083  
 53084  __2218:
 53085  __2219:
 53086  	goto __2216
 53087  
 53088  __2220:
 53089  	switch fc {
 53090  	default:
 53091  		goto __2235
 53092  
 53093  	case Tuint32_t('\015'):
 53094  		goto __2236
 53095  
 53096  	case Tuint32_t('\012'):
 53097  		goto __2237
 53098  
 53099  	case Tuint32_t('\013'):
 53100  		goto __2238
 53101  	case Tuint32_t('\014'):
 53102  		goto __2239
 53103  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 53104  		goto __2240
 53105  	}
 53106  	goto __2234
 53107  
 53108  __2235:
 53109  	rrc = DMATCH_NOMATCH
 53110  	goto RETURN_SWITCH
 53111  
 53112  __2236:
 53113  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012') {
 53114  		goto __2241
 53115  	}
 53116  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 53117  __2241:
 53118  	;
 53119  	goto __2234
 53120  
 53121  __2237:
 53122  	goto __2234
 53123  
 53124  __2238:
 53125  __2239:
 53126  __2240:
 53127  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF) {
 53128  		goto __2242
 53129  	}
 53130  	rrc = DMATCH_NOMATCH
 53131  	goto RETURN_SWITCH
 53132  __2242:
 53133  	;
 53134  
 53135  	goto __2234
 53136  __2234:
 53137  	;
 53138  	goto __2216
 53139  
 53140  __2221:
 53141  	switch fc {
 53142  	default:
 53143  		goto __2244
 53144  	case Tuint32_t('\011'):
 53145  		goto __2245
 53146  	case Tuint32_t('\040'):
 53147  		goto __2246
 53148  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 53149  		goto __2247
 53150  	}
 53151  	goto __2243
 53152  
 53153  __2244:
 53154  	goto __2243
 53155  __2245:
 53156  __2246:
 53157  __2247:
 53158  	rrc = DMATCH_NOMATCH
 53159  	goto RETURN_SWITCH
 53160  
 53161  __2243:
 53162  	;
 53163  	goto __2216
 53164  
 53165  __2222:
 53166  	switch fc {
 53167  	default:
 53168  		goto __2249
 53169  	case Tuint32_t('\011'):
 53170  		goto __2250
 53171  	case Tuint32_t('\040'):
 53172  		goto __2251
 53173  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 53174  		goto __2252
 53175  	}
 53176  	goto __2248
 53177  
 53178  __2249:
 53179  	rrc = DMATCH_NOMATCH
 53180  	goto RETURN_SWITCH
 53181  
 53182  __2250:
 53183  __2251:
 53184  __2252:
 53185  	goto __2248
 53186  __2248:
 53187  	;
 53188  	goto __2216
 53189  
 53190  __2223:
 53191  	switch fc {
 53192  	default:
 53193  		goto __2254
 53194  	case Tuint32_t('\012'):
 53195  		goto __2255
 53196  	case Tuint32_t('\013'):
 53197  		goto __2256
 53198  	case Tuint32_t('\014'):
 53199  		goto __2257
 53200  	case Tuint32_t('\015'):
 53201  		goto __2258
 53202  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 53203  		goto __2259
 53204  	}
 53205  	goto __2253
 53206  
 53207  __2254:
 53208  	goto __2253
 53209  __2255:
 53210  __2256:
 53211  __2257:
 53212  __2258:
 53213  __2259:
 53214  	rrc = DMATCH_NOMATCH
 53215  	goto RETURN_SWITCH
 53216  
 53217  __2253:
 53218  	;
 53219  	goto __2216
 53220  
 53221  __2224:
 53222  	switch fc {
 53223  	default:
 53224  		goto __2261
 53225  	case Tuint32_t('\012'):
 53226  		goto __2262
 53227  	case Tuint32_t('\013'):
 53228  		goto __2263
 53229  	case Tuint32_t('\014'):
 53230  		goto __2264
 53231  	case Tuint32_t('\015'):
 53232  		goto __2265
 53233  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 53234  		goto __2266
 53235  	}
 53236  	goto __2260
 53237  
 53238  __2261:
 53239  	rrc = DMATCH_NOMATCH
 53240  	goto RETURN_SWITCH
 53241  
 53242  __2262:
 53243  __2263:
 53244  __2264:
 53245  __2265:
 53246  __2266:
 53247  	goto __2260
 53248  __2260:
 53249  	;
 53250  	goto __2216
 53251  
 53252  __2225:
 53253  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit != 0) {
 53254  		goto __2267
 53255  	}
 53256  	rrc = DMATCH_NOMATCH
 53257  	goto RETURN_SWITCH
 53258  __2267:
 53259  	;
 53260  
 53261  	goto __2216
 53262  
 53263  __2226:
 53264  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit == 0) {
 53265  		goto __2268
 53266  	}
 53267  	rrc = DMATCH_NOMATCH
 53268  	goto RETURN_SWITCH
 53269  __2268:
 53270  	;
 53271  
 53272  	goto __2216
 53273  
 53274  __2227:
 53275  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space != 0) {
 53276  		goto __2269
 53277  	}
 53278  	rrc = DMATCH_NOMATCH
 53279  	goto RETURN_SWITCH
 53280  __2269:
 53281  	;
 53282  
 53283  	goto __2216
 53284  
 53285  __2228:
 53286  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space == 0) {
 53287  		goto __2270
 53288  	}
 53289  	rrc = DMATCH_NOMATCH
 53290  	goto RETURN_SWITCH
 53291  __2270:
 53292  	;
 53293  
 53294  	goto __2216
 53295  
 53296  __2229:
 53297  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word != 0) {
 53298  		goto __2271
 53299  	}
 53300  	rrc = DMATCH_NOMATCH
 53301  	goto RETURN_SWITCH
 53302  __2271:
 53303  	;
 53304  
 53305  	goto __2216
 53306  
 53307  __2230:
 53308  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word == 0) {
 53309  		goto __2272
 53310  	}
 53311  	rrc = DMATCH_NOMATCH
 53312  	goto RETURN_SWITCH
 53313  __2272:
 53314  	;
 53315  
 53316  	goto __2216
 53317  
 53318  __2231:
 53319  	return -44
 53320  __2216:
 53321  	;
 53322  	goto __2208
 53323  __2208:
 53324  	goto __2207
 53325  	goto __2209
 53326  __2209:
 53327  	;
 53328  __2093:
 53329  	;
 53330  __2070:
 53331  	;
 53332  __1783:
 53333  	;
 53334  	// Control never gets here
 53335  	goto __1781
 53336  __1780:
 53337  
 53338  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr // Remember where we started
 53339  
 53340  	if !(proptype >= 0) {
 53341  		goto __2273
 53342  	}
 53343  	notmatch2 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOTPROP)
 53344  	switch proptype {
 53345  	case DPT_ANY:
 53346  		goto __2276
 53347  
 53348  	case DPT_LAMP:
 53349  		goto __2277
 53350  
 53351  	case DPT_GC:
 53352  		goto __2278
 53353  
 53354  	case DPT_PC:
 53355  		goto __2279
 53356  
 53357  	case DPT_SC:
 53358  		goto __2280
 53359  
 53360  	case DPT_SCX:
 53361  		goto __2281
 53362  
 53363  	case DPT_ALNUM:
 53364  		goto __2282
 53365  
 53366  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 53367  	//           which means that Perl space and POSIX space are now identical. PCRE
 53368  	//           was changed at release 8.34.
 53369  
 53370  	case DPT_SPACE:
 53371  		goto __2283 // Perl space
 53372  	case DPT_PXSPACE:
 53373  		goto __2284
 53374  
 53375  	case DPT_WORD:
 53376  		goto __2285
 53377  
 53378  	case DPT_CLIST:
 53379  		goto __2286
 53380  
 53381  	case DPT_UCNC:
 53382  		goto __2287
 53383  
 53384  	case DPT_BIDICL:
 53385  		goto __2288
 53386  
 53387  	case DPT_BOOL:
 53388  		goto __2289
 53389  
 53390  	default:
 53391  		goto __2290
 53392  	}
 53393  	goto __2275
 53394  
 53395  __2276:
 53396  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 53397  __2291:
 53398  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 53399  		goto __2293
 53400  	}
 53401  
 53402  	len4 = 1
 53403  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 53404  		goto __2294
 53405  	}
 53406  
 53407  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 53408  		goto __2295
 53409  	}
 53410  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53411  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53412  		goto __2296
 53413  	}
 53414  	return -2
 53415  __2296:
 53416  	;
 53417  __2295:
 53418  	;
 53419  
 53420  	goto __2293
 53421  __2294:
 53422  	;
 53423  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 53424  	if !(utf != 0 && fc >= 0xc0) {
 53425  		goto __2297
 53426  	}
 53427  	if !(fc&0x20 == Tuint32_t(0)) {
 53428  		goto __2298
 53429  	}
 53430  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 53431  	len4++
 53432  	goto __2299
 53433  __2298:
 53434  	if !(fc&0x10 == Tuint32_t(0)) {
 53435  		goto __2300
 53436  	}
 53437  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 53438  	len4 = len4 + 2
 53439  	goto __2301
 53440  __2300:
 53441  	if !(fc&0x08 == Tuint32_t(0)) {
 53442  		goto __2302
 53443  	}
 53444  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 53445  	len4 = len4 + 3
 53446  	goto __2303
 53447  __2302:
 53448  	if !(fc&0x04 == Tuint32_t(0)) {
 53449  		goto __2304
 53450  	}
 53451  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 53452  	len4 = len4 + 4
 53453  	goto __2305
 53454  __2304:
 53455  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 53456  	len4 = len4 + 5
 53457  __2305:
 53458  	;
 53459  __2303:
 53460  	;
 53461  __2301:
 53462  	;
 53463  __2299:
 53464  	;
 53465  __2297:
 53466  	;
 53467  
 53468  	if !(notmatch2 != 0) {
 53469  		goto __2306
 53470  	}
 53471  	goto __2293
 53472  __2306:
 53473  	;
 53474  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len4)
 53475  	goto __2292
 53476  __2292:
 53477  	i++
 53478  	goto __2291
 53479  	goto __2293
 53480  __2293:
 53481  	;
 53482  	goto __2275
 53483  
 53484  __2277:
 53485  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 53486  __2307:
 53487  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 53488  		goto __2309
 53489  	}
 53490  
 53491  	len5 = 1
 53492  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 53493  		goto __2310
 53494  	}
 53495  
 53496  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 53497  		goto __2311
 53498  	}
 53499  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53500  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53501  		goto __2312
 53502  	}
 53503  	return -2
 53504  __2312:
 53505  	;
 53506  __2311:
 53507  	;
 53508  
 53509  	goto __2309
 53510  __2310:
 53511  	;
 53512  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 53513  	if !(utf != 0 && fc >= 0xc0) {
 53514  		goto __2313
 53515  	}
 53516  	if !(fc&0x20 == Tuint32_t(0)) {
 53517  		goto __2314
 53518  	}
 53519  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 53520  	len5++
 53521  	goto __2315
 53522  __2314:
 53523  	if !(fc&0x10 == Tuint32_t(0)) {
 53524  		goto __2316
 53525  	}
 53526  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 53527  	len5 = len5 + 2
 53528  	goto __2317
 53529  __2316:
 53530  	if !(fc&0x08 == Tuint32_t(0)) {
 53531  		goto __2318
 53532  	}
 53533  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 53534  	len5 = len5 + 3
 53535  	goto __2319
 53536  __2318:
 53537  	if !(fc&0x04 == Tuint32_t(0)) {
 53538  		goto __2320
 53539  	}
 53540  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 53541  	len5 = len5 + 4
 53542  	goto __2321
 53543  __2320:
 53544  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 53545  	len5 = len5 + 5
 53546  __2321:
 53547  	;
 53548  __2319:
 53549  	;
 53550  __2317:
 53551  	;
 53552  __2315:
 53553  	;
 53554  __2313:
 53555  	;
 53556  
 53557  	chartype2 = int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype)
 53558  	if !(libc.Bool32(chartype2 == ucp_Lu || chartype2 == ucp_Ll || chartype2 == ucp_Lt) == notmatch2) {
 53559  		goto __2322
 53560  	}
 53561  	goto __2309
 53562  __2322:
 53563  	;
 53564  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len5)
 53565  	goto __2308
 53566  __2308:
 53567  	i++
 53568  	goto __2307
 53569  	goto __2309
 53570  __2309:
 53571  	;
 53572  	goto __2275
 53573  
 53574  __2278:
 53575  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 53576  __2323:
 53577  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 53578  		goto __2325
 53579  	}
 53580  
 53581  	len6 = 1
 53582  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 53583  		goto __2326
 53584  	}
 53585  
 53586  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 53587  		goto __2327
 53588  	}
 53589  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53590  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53591  		goto __2328
 53592  	}
 53593  	return -2
 53594  __2328:
 53595  	;
 53596  __2327:
 53597  	;
 53598  
 53599  	goto __2325
 53600  __2326:
 53601  	;
 53602  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 53603  	if !(utf != 0 && fc >= 0xc0) {
 53604  		goto __2329
 53605  	}
 53606  	if !(fc&0x20 == Tuint32_t(0)) {
 53607  		goto __2330
 53608  	}
 53609  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 53610  	len6++
 53611  	goto __2331
 53612  __2330:
 53613  	if !(fc&0x10 == Tuint32_t(0)) {
 53614  		goto __2332
 53615  	}
 53616  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 53617  	len6 = len6 + 2
 53618  	goto __2333
 53619  __2332:
 53620  	if !(fc&0x08 == Tuint32_t(0)) {
 53621  		goto __2334
 53622  	}
 53623  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 53624  	len6 = len6 + 3
 53625  	goto __2335
 53626  __2334:
 53627  	if !(fc&0x04 == Tuint32_t(0)) {
 53628  		goto __2336
 53629  	}
 53630  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 53631  	len6 = len6 + 4
 53632  	goto __2337
 53633  __2336:
 53634  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 53635  	len6 = len6 + 5
 53636  __2337:
 53637  	;
 53638  __2335:
 53639  	;
 53640  __2333:
 53641  	;
 53642  __2331:
 53643  	;
 53644  __2329:
 53645  	;
 53646  
 53647  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype] == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch2) {
 53648  		goto __2338
 53649  	}
 53650  	goto __2325
 53651  __2338:
 53652  	;
 53653  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len6)
 53654  	goto __2324
 53655  __2324:
 53656  	i++
 53657  	goto __2323
 53658  	goto __2325
 53659  __2325:
 53660  	;
 53661  	goto __2275
 53662  
 53663  __2279:
 53664  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 53665  __2339:
 53666  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 53667  		goto __2341
 53668  	}
 53669  
 53670  	len7 = 1
 53671  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 53672  		goto __2342
 53673  	}
 53674  
 53675  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 53676  		goto __2343
 53677  	}
 53678  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53679  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53680  		goto __2344
 53681  	}
 53682  	return -2
 53683  __2344:
 53684  	;
 53685  __2343:
 53686  	;
 53687  
 53688  	goto __2341
 53689  __2342:
 53690  	;
 53691  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 53692  	if !(utf != 0 && fc >= 0xc0) {
 53693  		goto __2345
 53694  	}
 53695  	if !(fc&0x20 == Tuint32_t(0)) {
 53696  		goto __2346
 53697  	}
 53698  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 53699  	len7++
 53700  	goto __2347
 53701  __2346:
 53702  	if !(fc&0x10 == Tuint32_t(0)) {
 53703  		goto __2348
 53704  	}
 53705  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 53706  	len7 = len7 + 2
 53707  	goto __2349
 53708  __2348:
 53709  	if !(fc&0x08 == Tuint32_t(0)) {
 53710  		goto __2350
 53711  	}
 53712  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 53713  	len7 = len7 + 3
 53714  	goto __2351
 53715  __2350:
 53716  	if !(fc&0x04 == Tuint32_t(0)) {
 53717  		goto __2352
 53718  	}
 53719  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 53720  	len7 = len7 + 4
 53721  	goto __2353
 53722  __2352:
 53723  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 53724  	len7 = len7 + 5
 53725  __2353:
 53726  	;
 53727  __2351:
 53728  	;
 53729  __2349:
 53730  	;
 53731  __2347:
 53732  	;
 53733  __2345:
 53734  	;
 53735  
 53736  	if !(libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch2) {
 53737  		goto __2354
 53738  	}
 53739  	goto __2341
 53740  __2354:
 53741  	;
 53742  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len7)
 53743  	goto __2340
 53744  __2340:
 53745  	i++
 53746  	goto __2339
 53747  	goto __2341
 53748  __2341:
 53749  	;
 53750  	goto __2275
 53751  
 53752  __2280:
 53753  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 53754  __2355:
 53755  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 53756  		goto __2357
 53757  	}
 53758  
 53759  	len8 = 1
 53760  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 53761  		goto __2358
 53762  	}
 53763  
 53764  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 53765  		goto __2359
 53766  	}
 53767  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53768  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53769  		goto __2360
 53770  	}
 53771  	return -2
 53772  __2360:
 53773  	;
 53774  __2359:
 53775  	;
 53776  
 53777  	goto __2357
 53778  __2358:
 53779  	;
 53780  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 53781  	if !(utf != 0 && fc >= 0xc0) {
 53782  		goto __2361
 53783  	}
 53784  	if !(fc&0x20 == Tuint32_t(0)) {
 53785  		goto __2362
 53786  	}
 53787  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 53788  	len8++
 53789  	goto __2363
 53790  __2362:
 53791  	if !(fc&0x10 == Tuint32_t(0)) {
 53792  		goto __2364
 53793  	}
 53794  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 53795  	len8 = len8 + 2
 53796  	goto __2365
 53797  __2364:
 53798  	if !(fc&0x08 == Tuint32_t(0)) {
 53799  		goto __2366
 53800  	}
 53801  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 53802  	len8 = len8 + 3
 53803  	goto __2367
 53804  __2366:
 53805  	if !(fc&0x04 == Tuint32_t(0)) {
 53806  		goto __2368
 53807  	}
 53808  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 53809  	len8 = len8 + 4
 53810  	goto __2369
 53811  __2368:
 53812  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 53813  	len8 = len8 + 5
 53814  __2369:
 53815  	;
 53816  __2367:
 53817  	;
 53818  __2365:
 53819  	;
 53820  __2363:
 53821  	;
 53822  __2361:
 53823  	;
 53824  
 53825  	if !(libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fscript) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch2) {
 53826  		goto __2370
 53827  	}
 53828  	goto __2357
 53829  __2370:
 53830  	;
 53831  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len8)
 53832  	goto __2356
 53833  __2356:
 53834  	i++
 53835  	goto __2355
 53836  	goto __2357
 53837  __2357:
 53838  	;
 53839  	goto __2275
 53840  
 53841  __2281:
 53842  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 53843  __2371:
 53844  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 53845  		goto __2373
 53846  	}
 53847  
 53848  	len9 = 1
 53849  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 53850  		goto __2374
 53851  	}
 53852  
 53853  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 53854  		goto __2375
 53855  	}
 53856  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53857  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53858  		goto __2376
 53859  	}
 53860  	return -2
 53861  __2376:
 53862  	;
 53863  __2375:
 53864  	;
 53865  
 53866  	goto __2373
 53867  __2374:
 53868  	;
 53869  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 53870  	if !(utf != 0 && fc >= 0xc0) {
 53871  		goto __2377
 53872  	}
 53873  	if !(fc&0x20 == Tuint32_t(0)) {
 53874  		goto __2378
 53875  	}
 53876  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 53877  	len9++
 53878  	goto __2379
 53879  __2378:
 53880  	if !(fc&0x10 == Tuint32_t(0)) {
 53881  		goto __2380
 53882  	}
 53883  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 53884  	len9 = len9 + 2
 53885  	goto __2381
 53886  __2380:
 53887  	if !(fc&0x08 == Tuint32_t(0)) {
 53888  		goto __2382
 53889  	}
 53890  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 53891  	len9 = len9 + 3
 53892  	goto __2383
 53893  __2382:
 53894  	if !(fc&0x04 == Tuint32_t(0)) {
 53895  		goto __2384
 53896  	}
 53897  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 53898  	len9 = len9 + 4
 53899  	goto __2385
 53900  __2384:
 53901  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 53902  	len9 = len9 + 5
 53903  __2385:
 53904  	;
 53905  __2383:
 53906  	;
 53907  __2381:
 53908  	;
 53909  __2379:
 53910  	;
 53911  __2377:
 53912  	;
 53913  
 53914  	prop5 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12
 53915  	ok6 = libc.Bool32(Tuint32_t((*Tucd_record)(unsafe.Pointer(prop5)).Fscript) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop5)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))/Tuint32_t(32))*4))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))%Tuint32_t(32))) != Tuint32_t(0))
 53916  	if !(ok6 == notmatch2) {
 53917  		goto __2386
 53918  	}
 53919  	goto __2373
 53920  __2386:
 53921  	;
 53922  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len9)
 53923  	goto __2372
 53924  __2372:
 53925  	i++
 53926  	goto __2371
 53927  	goto __2373
 53928  __2373:
 53929  	;
 53930  	goto __2275
 53931  
 53932  __2282:
 53933  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 53934  __2387:
 53935  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 53936  		goto __2389
 53937  	}
 53938  
 53939  	len10 = 1
 53940  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 53941  		goto __2390
 53942  	}
 53943  
 53944  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 53945  		goto __2391
 53946  	}
 53947  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 53948  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 53949  		goto __2392
 53950  	}
 53951  	return -2
 53952  __2392:
 53953  	;
 53954  __2391:
 53955  	;
 53956  
 53957  	goto __2389
 53958  __2390:
 53959  	;
 53960  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 53961  	if !(utf != 0 && fc >= 0xc0) {
 53962  		goto __2393
 53963  	}
 53964  	if !(fc&0x20 == Tuint32_t(0)) {
 53965  		goto __2394
 53966  	}
 53967  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 53968  	len10++
 53969  	goto __2395
 53970  __2394:
 53971  	if !(fc&0x10 == Tuint32_t(0)) {
 53972  		goto __2396
 53973  	}
 53974  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 53975  	len10 = len10 + 2
 53976  	goto __2397
 53977  __2396:
 53978  	if !(fc&0x08 == Tuint32_t(0)) {
 53979  		goto __2398
 53980  	}
 53981  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 53982  	len10 = len10 + 3
 53983  	goto __2399
 53984  __2398:
 53985  	if !(fc&0x04 == Tuint32_t(0)) {
 53986  		goto __2400
 53987  	}
 53988  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 53989  	len10 = len10 + 4
 53990  	goto __2401
 53991  __2400:
 53992  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 53993  	len10 = len10 + 5
 53994  __2401:
 53995  	;
 53996  __2399:
 53997  	;
 53998  __2397:
 53999  	;
 54000  __2395:
 54001  	;
 54002  __2393:
 54003  	;
 54004  
 54005  	category4 = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 54006  	if !(libc.Bool32(category4 == ucp_L || category4 == ucp_N) == notmatch2) {
 54007  		goto __2402
 54008  	}
 54009  	goto __2389
 54010  __2402:
 54011  	;
 54012  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len10)
 54013  	goto __2388
 54014  __2388:
 54015  	i++
 54016  	goto __2387
 54017  	goto __2389
 54018  __2389:
 54019  	;
 54020  	goto __2275
 54021  
 54022  	// Perl space used to exclude VT, but from Perl 5.18 it is included,
 54023  	//           which means that Perl space and POSIX space are now identical. PCRE
 54024  	//           was changed at release 8.34.
 54025  
 54026  __2283: // Perl space
 54027  __2284: // POSIX space
 54028  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 54029  __2403:
 54030  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 54031  		goto __2405
 54032  	}
 54033  
 54034  	len11 = 1
 54035  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54036  		goto __2406
 54037  	}
 54038  
 54039  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54040  		goto __2407
 54041  	}
 54042  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54043  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54044  		goto __2408
 54045  	}
 54046  	return -2
 54047  __2408:
 54048  	;
 54049  __2407:
 54050  	;
 54051  
 54052  	goto __2405
 54053  __2406:
 54054  	;
 54055  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54056  	if !(utf != 0 && fc >= 0xc0) {
 54057  		goto __2409
 54058  	}
 54059  	if !(fc&0x20 == Tuint32_t(0)) {
 54060  		goto __2410
 54061  	}
 54062  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54063  	len11++
 54064  	goto __2411
 54065  __2410:
 54066  	if !(fc&0x10 == Tuint32_t(0)) {
 54067  		goto __2412
 54068  	}
 54069  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54070  	len11 = len11 + 2
 54071  	goto __2413
 54072  __2412:
 54073  	if !(fc&0x08 == Tuint32_t(0)) {
 54074  		goto __2414
 54075  	}
 54076  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54077  	len11 = len11 + 3
 54078  	goto __2415
 54079  __2414:
 54080  	if !(fc&0x04 == Tuint32_t(0)) {
 54081  		goto __2416
 54082  	}
 54083  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54084  	len11 = len11 + 4
 54085  	goto __2417
 54086  __2416:
 54087  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 54088  	len11 = len11 + 5
 54089  __2417:
 54090  	;
 54091  __2415:
 54092  	;
 54093  __2413:
 54094  	;
 54095  __2411:
 54096  	;
 54097  __2409:
 54098  	;
 54099  
 54100  	switch fc {
 54101  	case Tuint32_t('\011'):
 54102  		goto __2419
 54103  	case Tuint32_t('\040'):
 54104  		goto __2420
 54105  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 54106  		goto __2421
 54107  	case Tuint32_t(0x1680):
 54108  		goto __2422 /* OGHAM SPACE MARK */
 54109  	case Tuint32_t(0x180e):
 54110  		goto __2423 /* MONGOLIAN VOWEL SEPARATOR */
 54111  	case Tuint32_t(0x2000):
 54112  		goto __2424 /* EN QUAD */
 54113  	case Tuint32_t(0x2001):
 54114  		goto __2425 /* EM QUAD */
 54115  	case Tuint32_t(0x2002):
 54116  		goto __2426 /* EN SPACE */
 54117  	case Tuint32_t(0x2003):
 54118  		goto __2427 /* EM SPACE */
 54119  	case Tuint32_t(0x2004):
 54120  		goto __2428 /* THREE-PER-EM SPACE */
 54121  	case Tuint32_t(0x2005):
 54122  		goto __2429 /* FOUR-PER-EM SPACE */
 54123  	case Tuint32_t(0x2006):
 54124  		goto __2430 /* SIX-PER-EM SPACE */
 54125  	case Tuint32_t(0x2007):
 54126  		goto __2431 /* FIGURE SPACE */
 54127  	case Tuint32_t(0x2008):
 54128  		goto __2432 /* PUNCTUATION SPACE */
 54129  	case Tuint32_t(0x2009):
 54130  		goto __2433 /* THIN SPACE */
 54131  	case Tuint32_t(0x200A):
 54132  		goto __2434 /* HAIR SPACE */
 54133  	case Tuint32_t(0x202f):
 54134  		goto __2435 /* NARROW NO-BREAK SPACE */
 54135  	case Tuint32_t(0x205f):
 54136  		goto __2436 /* MEDIUM MATHEMATICAL SPACE */
 54137  	case Tuint32_t(0x3000):
 54138  		goto __2437
 54139  	case Tuint32_t('\012'):
 54140  		goto __2438
 54141  	case Tuint32_t('\013'):
 54142  		goto __2439
 54143  	case Tuint32_t('\014'):
 54144  		goto __2440
 54145  	case Tuint32_t('\015'):
 54146  		goto __2441
 54147  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 54148  		goto __2442
 54149  	case Tuint32_t(0x2028):
 54150  		goto __2443 /* LINE SEPARATOR */
 54151  	case Tuint32_t(0x2029):
 54152  		goto __2444
 54153  
 54154  	default:
 54155  		goto __2445
 54156  	}
 54157  	goto __2418
 54158  
 54159  __2419:
 54160  __2420:
 54161  __2421:
 54162  __2422: /* OGHAM SPACE MARK */
 54163  __2423: /* MONGOLIAN VOWEL SEPARATOR */
 54164  __2424: /* EN QUAD */
 54165  __2425: /* EM QUAD */
 54166  __2426: /* EN SPACE */
 54167  __2427: /* EM SPACE */
 54168  __2428: /* THREE-PER-EM SPACE */
 54169  __2429: /* FOUR-PER-EM SPACE */
 54170  __2430: /* SIX-PER-EM SPACE */
 54171  __2431: /* FIGURE SPACE */
 54172  __2432: /* PUNCTUATION SPACE */
 54173  __2433: /* THIN SPACE */
 54174  __2434: /* HAIR SPACE */
 54175  __2435: /* NARROW NO-BREAK SPACE */
 54176  __2436: /* MEDIUM MATHEMATICAL SPACE */
 54177  __2437:
 54178  __2438:
 54179  __2439:
 54180  __2440:
 54181  __2441:
 54182  __2442:
 54183  __2443: /* LINE SEPARATOR */
 54184  __2444:
 54185  	if !(notmatch2 != 0) {
 54186  		goto __2446
 54187  	}
 54188  	goto ENDLOOP99
 54189  __2446:
 54190  	; // Break the loop
 54191  	goto __2418
 54192  
 54193  __2445:
 54194  	if !(libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype] == ucp_Z) == notmatch2) {
 54195  		goto __2447
 54196  	}
 54197  	goto ENDLOOP99
 54198  __2447:
 54199  	; // Break the loop
 54200  	goto __2418
 54201  __2418:
 54202  	;
 54203  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len11)
 54204  	goto __2404
 54205  __2404:
 54206  	i++
 54207  	goto __2403
 54208  	goto __2405
 54209  __2405:
 54210  	;
 54211  ENDLOOP99:
 54212  	goto __2275
 54213  
 54214  __2285:
 54215  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 54216  __2448:
 54217  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 54218  		goto __2450
 54219  	}
 54220  
 54221  	len12 = 1
 54222  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54223  		goto __2451
 54224  	}
 54225  
 54226  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54227  		goto __2452
 54228  	}
 54229  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54230  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54231  		goto __2453
 54232  	}
 54233  	return -2
 54234  __2453:
 54235  	;
 54236  __2452:
 54237  	;
 54238  
 54239  	goto __2450
 54240  __2451:
 54241  	;
 54242  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54243  	if !(utf != 0 && fc >= 0xc0) {
 54244  		goto __2454
 54245  	}
 54246  	if !(fc&0x20 == Tuint32_t(0)) {
 54247  		goto __2455
 54248  	}
 54249  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54250  	len12++
 54251  	goto __2456
 54252  __2455:
 54253  	if !(fc&0x10 == Tuint32_t(0)) {
 54254  		goto __2457
 54255  	}
 54256  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54257  	len12 = len12 + 2
 54258  	goto __2458
 54259  __2457:
 54260  	if !(fc&0x08 == Tuint32_t(0)) {
 54261  		goto __2459
 54262  	}
 54263  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54264  	len12 = len12 + 3
 54265  	goto __2460
 54266  __2459:
 54267  	if !(fc&0x04 == Tuint32_t(0)) {
 54268  		goto __2461
 54269  	}
 54270  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54271  	len12 = len12 + 4
 54272  	goto __2462
 54273  __2461:
 54274  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 54275  	len12 = len12 + 5
 54276  __2462:
 54277  	;
 54278  __2460:
 54279  	;
 54280  __2458:
 54281  	;
 54282  __2456:
 54283  	;
 54284  __2454:
 54285  	;
 54286  
 54287  	category5 = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 54288  	if !(libc.Bool32(category5 == ucp_L || category5 == ucp_N || fc == Tuint32_t('\137')) == notmatch2) {
 54289  		goto __2463
 54290  	}
 54291  	goto __2450
 54292  __2463:
 54293  	;
 54294  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len12)
 54295  	goto __2449
 54296  __2449:
 54297  	i++
 54298  	goto __2448
 54299  	goto __2450
 54300  __2450:
 54301  	;
 54302  	goto __2275
 54303  
 54304  __2286:
 54305  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 54306  __2464:
 54307  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 54308  		goto __2466
 54309  	}
 54310  
 54311  	len13 = 1
 54312  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54313  		goto __2467
 54314  	}
 54315  
 54316  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54317  		goto __2468
 54318  	}
 54319  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54320  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54321  		goto __2469
 54322  	}
 54323  	return -2
 54324  __2469:
 54325  	;
 54326  __2468:
 54327  	;
 54328  
 54329  	goto __2466
 54330  __2467:
 54331  	;
 54332  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54333  	if !(utf != 0 && fc >= 0xc0) {
 54334  		goto __2470
 54335  	}
 54336  	if !(fc&0x20 == Tuint32_t(0)) {
 54337  		goto __2471
 54338  	}
 54339  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54340  	len13++
 54341  	goto __2472
 54342  __2471:
 54343  	if !(fc&0x10 == Tuint32_t(0)) {
 54344  		goto __2473
 54345  	}
 54346  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54347  	len13 = len13 + 2
 54348  	goto __2474
 54349  __2473:
 54350  	if !(fc&0x08 == Tuint32_t(0)) {
 54351  		goto __2475
 54352  	}
 54353  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54354  	len13 = len13 + 3
 54355  	goto __2476
 54356  __2475:
 54357  	if !(fc&0x04 == Tuint32_t(0)) {
 54358  		goto __2477
 54359  	}
 54360  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54361  	len13 = len13 + 4
 54362  	goto __2478
 54363  __2477:
 54364  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 54365  	len13 = len13 + 5
 54366  __2478:
 54367  	;
 54368  __2476:
 54369  	;
 54370  __2474:
 54371  	;
 54372  __2472:
 54373  	;
 54374  __2470:
 54375  	;
 54376  
 54377  	cp3 = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4)))*4
 54378  __2479:
 54379  
 54380  	if !(fc < *(*Tuint32_t)(unsafe.Pointer(cp3))) {
 54381  		goto __2482
 54382  	}
 54383  	if !(notmatch2 != 0) {
 54384  		goto __2483
 54385  	}
 54386  	goto __2481
 54387  	goto __2484
 54388  __2483:
 54389  	goto GOT_MAX
 54390  __2484:
 54391  	;
 54392  __2482:
 54393  	;
 54394  	if !(fc == *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&cp3, 4)))) {
 54395  		goto __2485
 54396  	}
 54397  	if !(notmatch2 != 0) {
 54398  		goto __2486
 54399  	}
 54400  	goto GOT_MAX
 54401  	goto __2487
 54402  __2486:
 54403  	goto __2481
 54404  __2487:
 54405  	;
 54406  __2485:
 54407  	;
 54408  	goto __2480
 54409  __2480:
 54410  	goto __2479
 54411  	goto __2481
 54412  __2481:
 54413  	;
 54414  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len13)
 54415  	goto __2465
 54416  __2465:
 54417  	i++
 54418  	goto __2464
 54419  	goto __2466
 54420  __2466:
 54421  	;
 54422  GOT_MAX:
 54423  	goto __2275
 54424  
 54425  __2287:
 54426  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 54427  __2488:
 54428  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 54429  		goto __2490
 54430  	}
 54431  
 54432  	len14 = 1
 54433  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54434  		goto __2491
 54435  	}
 54436  
 54437  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54438  		goto __2492
 54439  	}
 54440  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54441  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54442  		goto __2493
 54443  	}
 54444  	return -2
 54445  __2493:
 54446  	;
 54447  __2492:
 54448  	;
 54449  
 54450  	goto __2490
 54451  __2491:
 54452  	;
 54453  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54454  	if !(utf != 0 && fc >= 0xc0) {
 54455  		goto __2494
 54456  	}
 54457  	if !(fc&0x20 == Tuint32_t(0)) {
 54458  		goto __2495
 54459  	}
 54460  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54461  	len14++
 54462  	goto __2496
 54463  __2495:
 54464  	if !(fc&0x10 == Tuint32_t(0)) {
 54465  		goto __2497
 54466  	}
 54467  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54468  	len14 = len14 + 2
 54469  	goto __2498
 54470  __2497:
 54471  	if !(fc&0x08 == Tuint32_t(0)) {
 54472  		goto __2499
 54473  	}
 54474  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54475  	len14 = len14 + 3
 54476  	goto __2500
 54477  __2499:
 54478  	if !(fc&0x04 == Tuint32_t(0)) {
 54479  		goto __2501
 54480  	}
 54481  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54482  	len14 = len14 + 4
 54483  	goto __2502
 54484  __2501:
 54485  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 54486  	len14 = len14 + 5
 54487  __2502:
 54488  	;
 54489  __2500:
 54490  	;
 54491  __2498:
 54492  	;
 54493  __2496:
 54494  	;
 54495  __2494:
 54496  	;
 54497  
 54498  	if !(libc.Bool32(fc == Tuint32_t('\044') || fc == Tuint32_t('\100') || fc == Tuint32_t('\140') || fc >= Tuint32_t(0xa0) && fc <= Tuint32_t(0xd7ff) || fc >= Tuint32_t(0xe000)) == notmatch2) {
 54499  		goto __2503
 54500  	}
 54501  	goto __2490
 54502  __2503:
 54503  	;
 54504  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len14)
 54505  	goto __2489
 54506  __2489:
 54507  	i++
 54508  	goto __2488
 54509  	goto __2490
 54510  __2490:
 54511  	;
 54512  	goto __2275
 54513  
 54514  __2288:
 54515  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 54516  __2504:
 54517  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 54518  		goto __2506
 54519  	}
 54520  
 54521  	len15 = 1
 54522  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54523  		goto __2507
 54524  	}
 54525  
 54526  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54527  		goto __2508
 54528  	}
 54529  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54530  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54531  		goto __2509
 54532  	}
 54533  	return -2
 54534  __2509:
 54535  	;
 54536  __2508:
 54537  	;
 54538  
 54539  	goto __2506
 54540  __2507:
 54541  	;
 54542  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54543  	if !(utf != 0 && fc >= 0xc0) {
 54544  		goto __2510
 54545  	}
 54546  	if !(fc&0x20 == Tuint32_t(0)) {
 54547  		goto __2511
 54548  	}
 54549  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54550  	len15++
 54551  	goto __2512
 54552  __2511:
 54553  	if !(fc&0x10 == Tuint32_t(0)) {
 54554  		goto __2513
 54555  	}
 54556  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54557  	len15 = len15 + 2
 54558  	goto __2514
 54559  __2513:
 54560  	if !(fc&0x08 == Tuint32_t(0)) {
 54561  		goto __2515
 54562  	}
 54563  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54564  	len15 = len15 + 3
 54565  	goto __2516
 54566  __2515:
 54567  	if !(fc&0x04 == Tuint32_t(0)) {
 54568  		goto __2517
 54569  	}
 54570  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54571  	len15 = len15 + 4
 54572  	goto __2518
 54573  __2517:
 54574  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 54575  	len15 = len15 + 5
 54576  __2518:
 54577  	;
 54578  __2516:
 54579  	;
 54580  __2514:
 54581  	;
 54582  __2512:
 54583  	;
 54584  __2510:
 54585  	;
 54586  
 54587  	if !(libc.Bool32(Tuint32_t(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))) == notmatch2) {
 54588  		goto __2519
 54589  	}
 54590  	goto __2506
 54591  __2519:
 54592  	;
 54593  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len15)
 54594  	goto __2505
 54595  __2505:
 54596  	i++
 54597  	goto __2504
 54598  	goto __2506
 54599  __2506:
 54600  	;
 54601  	goto __2275
 54602  
 54603  __2289:
 54604  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 54605  __2520:
 54606  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 54607  		goto __2522
 54608  	}
 54609  
 54610  	len16 = 1
 54611  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54612  		goto __2523
 54613  	}
 54614  
 54615  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54616  		goto __2524
 54617  	}
 54618  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54619  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54620  		goto __2525
 54621  	}
 54622  	return -2
 54623  __2525:
 54624  	;
 54625  __2524:
 54626  	;
 54627  
 54628  	goto __2522
 54629  __2523:
 54630  	;
 54631  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54632  	if !(utf != 0 && fc >= 0xc0) {
 54633  		goto __2526
 54634  	}
 54635  	if !(fc&0x20 == Tuint32_t(0)) {
 54636  		goto __2527
 54637  	}
 54638  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54639  	len16++
 54640  	goto __2528
 54641  __2527:
 54642  	if !(fc&0x10 == Tuint32_t(0)) {
 54643  		goto __2529
 54644  	}
 54645  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54646  	len16 = len16 + 2
 54647  	goto __2530
 54648  __2529:
 54649  	if !(fc&0x08 == Tuint32_t(0)) {
 54650  		goto __2531
 54651  	}
 54652  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54653  	len16 = len16 + 3
 54654  	goto __2532
 54655  __2531:
 54656  	if !(fc&0x04 == Tuint32_t(0)) {
 54657  		goto __2533
 54658  	}
 54659  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54660  	len16 = len16 + 4
 54661  	goto __2534
 54662  __2533:
 54663  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 54664  	len16 = len16 + 5
 54665  __2534:
 54666  	;
 54667  __2532:
 54668  	;
 54669  __2530:
 54670  	;
 54671  __2528:
 54672  	;
 54673  __2526:
 54674  	;
 54675  
 54676  	prop6 = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12
 54677  	ok7 = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop6)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))/Tuint32_t(32))*4))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 3*4))%Tuint32_t(32))) != Tuint32_t(0))
 54678  	if !(ok7 == notmatch2) {
 54679  		goto __2535
 54680  	}
 54681  	goto __2522
 54682  __2535:
 54683  	;
 54684  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len16)
 54685  	goto __2521
 54686  __2521:
 54687  	i++
 54688  	goto __2520
 54689  	goto __2522
 54690  __2522:
 54691  	;
 54692  	goto __2275
 54693  
 54694  __2290:
 54695  	return -44
 54696  __2275:
 54697  	;
 54698  
 54699  	// Feptr is now past the end of the maximum run
 54700  
 54701  	if !(reptype == REPTYPE_POS) {
 54702  		goto __2536
 54703  	}
 54704  	goto __11
 54705  __2536:
 54706  	; // No backtracking
 54707  
 54708  	// After \C in UTF mode, Lstart_eptr might be in the middle of a
 54709  	//         Unicode character. Use <= Lstart_eptr to ensure backtracking doesn't
 54710  	//         go too far.
 54711  
 54712  __2537:
 54713  
 54714  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 54715  		goto __2540
 54716  	}
 54717  	goto __2539
 54718  __2540:
 54719  	;
 54720  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 54721  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM222
 54722  	goto MATCH_RECURSE
 54723  L_RM222:
 54724  	;
 54725  
 54726  	if !(rrc != DMATCH_NOMATCH) {
 54727  		goto __2541
 54728  	}
 54729  	rrc = rrc
 54730  	goto RETURN_SWITCH
 54731  __2541:
 54732  	;
 54733  
 54734  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 54735  	if !(utf != 0) {
 54736  		goto __2542
 54737  	}
 54738  __2543:
 54739  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 54740  		goto __2544
 54741  	}
 54742  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 54743  	goto __2543
 54744  __2544:
 54745  	;
 54746  __2542:
 54747  	;
 54748  	goto __2538
 54749  __2538:
 54750  	goto __2537
 54751  	goto __2539
 54752  __2539:
 54753  	;
 54754  	goto __2274
 54755  __2273:
 54756  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_EXTUNI) {
 54757  		goto __2545
 54758  	}
 54759  
 54760  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 54761  __2547:
 54762  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 54763  		goto __2549
 54764  	}
 54765  
 54766  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54767  		goto __2550
 54768  	}
 54769  
 54770  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54771  		goto __2552
 54772  	}
 54773  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54774  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54775  		goto __2553
 54776  	}
 54777  	return -2
 54778  __2553:
 54779  	;
 54780  __2552:
 54781  	;
 54782  
 54783  	goto __2549
 54784  	goto __2551
 54785  __2550:
 54786  
 54787  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))
 54788  	if !(utf != 0 && fc >= 0xc0) {
 54789  		goto __2554
 54790  	}
 54791  	if !(fc&0x20 == Tuint32_t(0)) {
 54792  		goto __2555
 54793  	}
 54794  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1))))&0x3f
 54795  	goto __2556
 54796  __2555:
 54797  	if !(fc&0x10 == Tuint32_t(0)) {
 54798  		goto __2557
 54799  	}
 54800  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54801  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(2)
 54802  	goto __2558
 54803  __2557:
 54804  	if !(fc&0x08 == Tuint32_t(0)) {
 54805  		goto __2559
 54806  	}
 54807  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54808  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(3)
 54809  	goto __2560
 54810  __2559:
 54811  	if !(fc&0x04 == Tuint32_t(0)) {
 54812  		goto __2561
 54813  	}
 54814  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54815  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(4)
 54816  	goto __2562
 54817  __2561:
 54818  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54819  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += uintptr(5)
 54820  __2562:
 54821  	;
 54822  __2560:
 54823  	;
 54824  __2558:
 54825  	;
 54826  __2556:
 54827  	;
 54828  __2554:
 54829  	;
 54830  
 54831  	(*Theapframe)(unsafe.Pointer(F)).Feptr = X_pcre2_extuni_8(tls, fc, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject,
 54832  		utf, uintptr(0))
 54833  __2551:
 54834  	;
 54835  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 54836  		goto __2563
 54837  	}
 54838  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 54839  		goto __2564
 54840  	}
 54841  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 54842  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 54843  		goto __2565
 54844  	}
 54845  	return -2
 54846  __2565:
 54847  	;
 54848  __2564:
 54849  	;
 54850  __2563:
 54851  	;
 54852  
 54853  	goto __2548
 54854  __2548:
 54855  	i++
 54856  	goto __2547
 54857  	goto __2549
 54858  __2549:
 54859  	;
 54860  
 54861  	// Feptr is now past the end of the maximum run
 54862  
 54863  	if !(reptype == REPTYPE_POS) {
 54864  		goto __2566
 54865  	}
 54866  	goto __11
 54867  __2566:
 54868  	; // No backtracking
 54869  
 54870  	// We use <= Lstart_eptr rather than == Lstart_eptr to detect the start
 54871  	//         of the run while backtracking because the use of \C in UTF mode can
 54872  	//         cause BACKCHAR to move back past Lstart_eptr. This is just palliative;
 54873  	//         the use of \C in UTF mode is fraught with danger.
 54874  
 54875  __2567:
 54876  
 54877  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 54878  		goto __2570
 54879  	}
 54880  	goto __2569
 54881  __2570:
 54882  	; /* At start of char run */
 54883  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 54884  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM220
 54885  	goto MATCH_RECURSE
 54886  L_RM220:
 54887  	;
 54888  
 54889  	if !(rrc != DMATCH_NOMATCH) {
 54890  		goto __2571
 54891  	}
 54892  	rrc = rrc
 54893  	goto RETURN_SWITCH
 54894  __2571:
 54895  	;
 54896  
 54897  	// Backtracking over an extended grapheme cluster involves inspecting
 54898  	//           the previous two characters (if present) to see if a break is
 54899  	//           permitted between them.
 54900  
 54901  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 54902  	if !!(utf != 0) {
 54903  		goto __2572
 54904  	}
 54905  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54906  	goto __2573
 54907  __2572:
 54908  
 54909  __2574:
 54910  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 54911  		goto __2575
 54912  	}
 54913  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 54914  	goto __2574
 54915  __2575:
 54916  	;
 54917  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 54918  	if !(fc >= 0xc0) {
 54919  		goto __2576
 54920  	}
 54921  	if !(fc&0x20 == Tuint32_t(0)) {
 54922  		goto __2577
 54923  	}
 54924  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 54925  	goto __2578
 54926  __2577:
 54927  	if !(fc&0x10 == Tuint32_t(0)) {
 54928  		goto __2579
 54929  	}
 54930  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 54931  	goto __2580
 54932  __2579:
 54933  	if !(fc&0x08 == Tuint32_t(0)) {
 54934  		goto __2581
 54935  	}
 54936  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 54937  	goto __2582
 54938  __2581:
 54939  	if !(fc&0x04 == Tuint32_t(0)) {
 54940  		goto __2583
 54941  	}
 54942  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 54943  	goto __2584
 54944  __2583:
 54945  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 54946  __2584:
 54947  	;
 54948  __2582:
 54949  	;
 54950  __2580:
 54951  	;
 54952  __2578:
 54953  	;
 54954  __2576:
 54955  	;
 54956  
 54957  __2573:
 54958  	;
 54959  	rgb = int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fgbprop)
 54960  
 54961  __2585:
 54962  
 54963  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 54964  		goto __2588
 54965  	}
 54966  	goto __2587
 54967  __2588:
 54968  	; // At start of char run
 54969  	fptr = (*Theapframe)(unsafe.Pointer(F)).Feptr - uintptr(1)
 54970  	if !!(utf != 0) {
 54971  		goto __2589
 54972  	}
 54973  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr)))
 54974  	goto __2590
 54975  __2589:
 54976  
 54977  __2591:
 54978  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr)))&0xc0 == 0x80) {
 54979  		goto __2592
 54980  	}
 54981  	fptr--
 54982  	goto __2591
 54983  __2592:
 54984  	;
 54985  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr)))
 54986  	if !(fc >= 0xc0) {
 54987  		goto __2593
 54988  	}
 54989  	if !(fc&0x20 == Tuint32_t(0)) {
 54990  		goto __2594
 54991  	}
 54992  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 1)))&0x3f
 54993  	goto __2595
 54994  __2594:
 54995  	if !(fc&0x10 == Tuint32_t(0)) {
 54996  		goto __2596
 54997  	}
 54998  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 2)))&0x3f
 54999  	goto __2597
 55000  __2596:
 55001  	if !(fc&0x08 == Tuint32_t(0)) {
 55002  		goto __2598
 55003  	}
 55004  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 3)))&0x3f
 55005  	goto __2599
 55006  __2598:
 55007  	if !(fc&0x04 == Tuint32_t(0)) {
 55008  		goto __2600
 55009  	}
 55010  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 4)))&0x3f
 55011  	goto __2601
 55012  __2600:
 55013  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(fptr + 5)))&0x3f
 55014  __2601:
 55015  	;
 55016  __2599:
 55017  	;
 55018  __2597:
 55019  	;
 55020  __2595:
 55021  	;
 55022  __2593:
 55023  	;
 55024  
 55025  __2590:
 55026  	;
 55027  	lgb = int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fgbprop)
 55028  	if !(X_pcre2_ucp_gbtable_8[lgb]&(uint32(1)<<rgb) == Tuint32_t(0)) {
 55029  		goto __2602
 55030  	}
 55031  	goto __2587
 55032  __2602:
 55033  	;
 55034  	(*Theapframe)(unsafe.Pointer(F)).Feptr = fptr
 55035  	rgb = lgb
 55036  	goto __2586
 55037  __2586:
 55038  	goto __2585
 55039  	goto __2587
 55040  __2587:
 55041  	;
 55042  	goto __2568
 55043  __2568:
 55044  	goto __2567
 55045  	goto __2569
 55046  __2569:
 55047  	;
 55048  	goto __2546
 55049  __2545:
 55050  
 55051  	if !(utf != 0) {
 55052  		goto __2603
 55053  	}
 55054  
 55055  	switch *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) {
 55056  	case OP_ANY:
 55057  		goto __2606
 55058  
 55059  	case OP_ALLANY:
 55060  		goto __2607
 55061  
 55062  	// The "byte" (i.e. "code unit") case is the same as non-UTF
 55063  
 55064  	case OP_ANYBYTE:
 55065  		goto __2608
 55066  
 55067  	case OP_ANYNL:
 55068  		goto __2609
 55069  
 55070  	case OP_NOT_HSPACE:
 55071  		goto __2610
 55072  	case OP_HSPACE:
 55073  		goto __2611
 55074  
 55075  	case OP_NOT_VSPACE:
 55076  		goto __2612
 55077  	case OP_VSPACE:
 55078  		goto __2613
 55079  
 55080  	case OP_NOT_DIGIT:
 55081  		goto __2614
 55082  
 55083  	case OP_DIGIT:
 55084  		goto __2615
 55085  
 55086  	case OP_NOT_WHITESPACE:
 55087  		goto __2616
 55088  
 55089  	case OP_WHITESPACE:
 55090  		goto __2617
 55091  
 55092  	case OP_NOT_WORDCHAR:
 55093  		goto __2618
 55094  
 55095  	case OP_WORDCHAR:
 55096  		goto __2619
 55097  
 55098  	default:
 55099  		goto __2620
 55100  	}
 55101  	goto __2605
 55102  
 55103  __2606:
 55104  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55105  __2621:
 55106  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55107  		goto __2623
 55108  	}
 55109  
 55110  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55111  		goto __2624
 55112  	}
 55113  
 55114  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55115  		goto __2625
 55116  	}
 55117  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55118  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55119  		goto __2626
 55120  	}
 55121  	return -2
 55122  __2626:
 55123  	;
 55124  __2625:
 55125  	;
 55126  
 55127  	goto __2623
 55128  __2624:
 55129  	;
 55130  	if !(func() int32 {
 55131  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 55132  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 55133  		}
 55134  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 55135  	}() != 0) {
 55136  		goto __2627
 55137  	}
 55138  	goto __2623
 55139  __2627:
 55140  	;
 55141  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr+uintptr(1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 55142  		goto __2628
 55143  	}
 55144  
 55145  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55146  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55147  		goto __2629
 55148  	}
 55149  	return -2
 55150  __2629:
 55151  	;
 55152  __2628:
 55153  	;
 55154  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 55155  __2630:
 55156  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 55157  		goto __2631
 55158  	}
 55159  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 55160  	goto __2630
 55161  __2631:
 55162  	;
 55163  	goto __2622
 55164  __2622:
 55165  	i++
 55166  	goto __2621
 55167  	goto __2623
 55168  __2623:
 55169  	;
 55170  	goto __2605
 55171  
 55172  __2607:
 55173  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) < 4294967295) {
 55174  		goto __2632
 55175  	}
 55176  
 55177  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55178  __2634:
 55179  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55180  		goto __2636
 55181  	}
 55182  
 55183  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55184  		goto __2637
 55185  	}
 55186  
 55187  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55188  		goto __2638
 55189  	}
 55190  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55191  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55192  		goto __2639
 55193  	}
 55194  	return -2
 55195  __2639:
 55196  	;
 55197  __2638:
 55198  	;
 55199  
 55200  	goto __2636
 55201  __2637:
 55202  	;
 55203  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 55204  __2640:
 55205  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 55206  		goto __2641
 55207  	}
 55208  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 55209  	goto __2640
 55210  __2641:
 55211  	;
 55212  	goto __2635
 55213  __2635:
 55214  	i++
 55215  	goto __2634
 55216  	goto __2636
 55217  __2636:
 55218  	;
 55219  	goto __2633
 55220  __2632:
 55221  
 55222  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject // Unlimited UTF-8 repeat
 55223  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55224  		goto __2642
 55225  	}
 55226  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55227  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55228  		goto __2643
 55229  	}
 55230  	return -2
 55231  __2643:
 55232  	;
 55233  __2642:
 55234  	;
 55235  
 55236  __2633:
 55237  	;
 55238  	goto __2605
 55239  
 55240  	// The "byte" (i.e. "code unit") case is the same as non-UTF
 55241  
 55242  __2608:
 55243  	fc = *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) - *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55244  	if !(fc > Tuint32_t((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject)-int64((*Theapframe)(unsafe.Pointer(F)).Feptr))/1)) {
 55245  		goto __2644
 55246  	}
 55247  
 55248  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject
 55249  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55250  		goto __2646
 55251  	}
 55252  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55253  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55254  		goto __2647
 55255  	}
 55256  	return -2
 55257  __2647:
 55258  	;
 55259  __2646:
 55260  	;
 55261  
 55262  	goto __2645
 55263  __2644:
 55264  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(fc)
 55265  __2645:
 55266  	;
 55267  	goto __2605
 55268  
 55269  __2609:
 55270  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55271  __2648:
 55272  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55273  		goto __2650
 55274  	}
 55275  
 55276  	len17 = 1
 55277  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55278  		goto __2651
 55279  	}
 55280  
 55281  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55282  		goto __2652
 55283  	}
 55284  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55285  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55286  		goto __2653
 55287  	}
 55288  	return -2
 55289  __2653:
 55290  	;
 55291  __2652:
 55292  	;
 55293  
 55294  	goto __2650
 55295  __2651:
 55296  	;
 55297  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 55298  	if !(fc >= 0xc0) {
 55299  		goto __2654
 55300  	}
 55301  	if !(fc&0x20 == Tuint32_t(0)) {
 55302  		goto __2655
 55303  	}
 55304  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 55305  	len17++
 55306  	goto __2656
 55307  __2655:
 55308  	if !(fc&0x10 == Tuint32_t(0)) {
 55309  		goto __2657
 55310  	}
 55311  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 55312  	len17 = len17 + 2
 55313  	goto __2658
 55314  __2657:
 55315  	if !(fc&0x08 == Tuint32_t(0)) {
 55316  		goto __2659
 55317  	}
 55318  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 55319  	len17 = len17 + 3
 55320  	goto __2660
 55321  __2659:
 55322  	if !(fc&0x04 == Tuint32_t(0)) {
 55323  		goto __2661
 55324  	}
 55325  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 55326  	len17 = len17 + 4
 55327  	goto __2662
 55328  __2661:
 55329  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 55330  	len17 = len17 + 5
 55331  __2662:
 55332  	;
 55333  __2660:
 55334  	;
 55335  __2658:
 55336  	;
 55337  __2656:
 55338  	;
 55339  __2654:
 55340  	;
 55341  
 55342  	if !(fc == Tuint32_t('\015')) {
 55343  		goto __2663
 55344  	}
 55345  
 55346  	if !(libc.PreIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55347  		goto __2665
 55348  	}
 55349  	goto __2650
 55350  __2665:
 55351  	;
 55352  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012') {
 55353  		goto __2666
 55354  	}
 55355  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 55356  __2666:
 55357  	;
 55358  	goto __2664
 55359  __2663:
 55360  
 55361  	if !(fc != Tuint32_t('\012') && (int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF || fc != Tuint32_t('\013') && fc != Tuint32_t('\014') && fc != libc.Uint32FromUint8(libc.Uint8FromInt32(133)) &&
 55362  		fc != Tuint32_t(0x2028) && fc != Tuint32_t(0x2029))) {
 55363  		goto __2667
 55364  	}
 55365  	goto __2650
 55366  __2667:
 55367  	;
 55368  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len17)
 55369  __2664:
 55370  	;
 55371  	goto __2649
 55372  __2649:
 55373  	i++
 55374  	goto __2648
 55375  	goto __2650
 55376  __2650:
 55377  	;
 55378  	goto __2605
 55379  
 55380  __2610:
 55381  __2611:
 55382  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55383  __2668:
 55384  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55385  		goto __2670
 55386  	}
 55387  
 55388  	len18 = 1
 55389  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55390  		goto __2671
 55391  	}
 55392  
 55393  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55394  		goto __2672
 55395  	}
 55396  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55397  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55398  		goto __2673
 55399  	}
 55400  	return -2
 55401  __2673:
 55402  	;
 55403  __2672:
 55404  	;
 55405  
 55406  	goto __2670
 55407  __2671:
 55408  	;
 55409  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 55410  	if !(fc >= 0xc0) {
 55411  		goto __2674
 55412  	}
 55413  	if !(fc&0x20 == Tuint32_t(0)) {
 55414  		goto __2675
 55415  	}
 55416  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 55417  	len18++
 55418  	goto __2676
 55419  __2675:
 55420  	if !(fc&0x10 == Tuint32_t(0)) {
 55421  		goto __2677
 55422  	}
 55423  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 55424  	len18 = len18 + 2
 55425  	goto __2678
 55426  __2677:
 55427  	if !(fc&0x08 == Tuint32_t(0)) {
 55428  		goto __2679
 55429  	}
 55430  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 55431  	len18 = len18 + 3
 55432  	goto __2680
 55433  __2679:
 55434  	if !(fc&0x04 == Tuint32_t(0)) {
 55435  		goto __2681
 55436  	}
 55437  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 55438  	len18 = len18 + 4
 55439  	goto __2682
 55440  __2681:
 55441  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 55442  	len18 = len18 + 5
 55443  __2682:
 55444  	;
 55445  __2680:
 55446  	;
 55447  __2678:
 55448  	;
 55449  __2676:
 55450  	;
 55451  __2674:
 55452  	;
 55453  
 55454  	switch fc {
 55455  	case Tuint32_t('\011'):
 55456  		goto __2684
 55457  	case Tuint32_t('\040'):
 55458  		goto __2685
 55459  	case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 55460  		goto __2686
 55461  	case Tuint32_t(0x1680):
 55462  		goto __2687 /* OGHAM SPACE MARK */
 55463  	case Tuint32_t(0x180e):
 55464  		goto __2688 /* MONGOLIAN VOWEL SEPARATOR */
 55465  	case Tuint32_t(0x2000):
 55466  		goto __2689 /* EN QUAD */
 55467  	case Tuint32_t(0x2001):
 55468  		goto __2690 /* EM QUAD */
 55469  	case Tuint32_t(0x2002):
 55470  		goto __2691 /* EN SPACE */
 55471  	case Tuint32_t(0x2003):
 55472  		goto __2692 /* EM SPACE */
 55473  	case Tuint32_t(0x2004):
 55474  		goto __2693 /* THREE-PER-EM SPACE */
 55475  	case Tuint32_t(0x2005):
 55476  		goto __2694 /* FOUR-PER-EM SPACE */
 55477  	case Tuint32_t(0x2006):
 55478  		goto __2695 /* SIX-PER-EM SPACE */
 55479  	case Tuint32_t(0x2007):
 55480  		goto __2696 /* FIGURE SPACE */
 55481  	case Tuint32_t(0x2008):
 55482  		goto __2697 /* PUNCTUATION SPACE */
 55483  	case Tuint32_t(0x2009):
 55484  		goto __2698 /* THIN SPACE */
 55485  	case Tuint32_t(0x200A):
 55486  		goto __2699 /* HAIR SPACE */
 55487  	case Tuint32_t(0x202f):
 55488  		goto __2700 /* NARROW NO-BREAK SPACE */
 55489  	case Tuint32_t(0x205f):
 55490  		goto __2701 /* MEDIUM MATHEMATICAL SPACE */
 55491  	case Tuint32_t(0x3000):
 55492  		goto __2702
 55493  	default:
 55494  		goto __2703
 55495  	}
 55496  	goto __2683
 55497  
 55498  __2684:
 55499  __2685:
 55500  __2686:
 55501  __2687: /* OGHAM SPACE MARK */
 55502  __2688: /* MONGOLIAN VOWEL SEPARATOR */
 55503  __2689: /* EN QUAD */
 55504  __2690: /* EM QUAD */
 55505  __2691: /* EN SPACE */
 55506  __2692: /* EM SPACE */
 55507  __2693: /* THREE-PER-EM SPACE */
 55508  __2694: /* FOUR-PER-EM SPACE */
 55509  __2695: /* SIX-PER-EM SPACE */
 55510  __2696: /* FIGURE SPACE */
 55511  __2697: /* PUNCTUATION SPACE */
 55512  __2698: /* THIN SPACE */
 55513  __2699: /* HAIR SPACE */
 55514  __2700: /* NARROW NO-BREAK SPACE */
 55515  __2701: /* MEDIUM MATHEMATICAL SPACE */
 55516  __2702:
 55517  	gotspace = DTRUE
 55518  	goto __2683
 55519  __2703:
 55520  	gotspace = DFALSE
 55521  	goto __2683
 55522  __2683:
 55523  	;
 55524  	if !(gotspace == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOT_HSPACE)) {
 55525  		goto __2704
 55526  	}
 55527  	goto __2670
 55528  __2704:
 55529  	;
 55530  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len18)
 55531  	goto __2669
 55532  __2669:
 55533  	i++
 55534  	goto __2668
 55535  	goto __2670
 55536  __2670:
 55537  	;
 55538  	goto __2605
 55539  
 55540  __2612:
 55541  __2613:
 55542  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55543  __2705:
 55544  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55545  		goto __2707
 55546  	}
 55547  
 55548  	len19 = 1
 55549  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55550  		goto __2708
 55551  	}
 55552  
 55553  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55554  		goto __2709
 55555  	}
 55556  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55557  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55558  		goto __2710
 55559  	}
 55560  	return -2
 55561  __2710:
 55562  	;
 55563  __2709:
 55564  	;
 55565  
 55566  	goto __2707
 55567  __2708:
 55568  	;
 55569  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 55570  	if !(fc >= 0xc0) {
 55571  		goto __2711
 55572  	}
 55573  	if !(fc&0x20 == Tuint32_t(0)) {
 55574  		goto __2712
 55575  	}
 55576  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 55577  	len19++
 55578  	goto __2713
 55579  __2712:
 55580  	if !(fc&0x10 == Tuint32_t(0)) {
 55581  		goto __2714
 55582  	}
 55583  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 55584  	len19 = len19 + 2
 55585  	goto __2715
 55586  __2714:
 55587  	if !(fc&0x08 == Tuint32_t(0)) {
 55588  		goto __2716
 55589  	}
 55590  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 55591  	len19 = len19 + 3
 55592  	goto __2717
 55593  __2716:
 55594  	if !(fc&0x04 == Tuint32_t(0)) {
 55595  		goto __2718
 55596  	}
 55597  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 55598  	len19 = len19 + 4
 55599  	goto __2719
 55600  __2718:
 55601  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 55602  	len19 = len19 + 5
 55603  __2719:
 55604  	;
 55605  __2717:
 55606  	;
 55607  __2715:
 55608  	;
 55609  __2713:
 55610  	;
 55611  __2711:
 55612  	;
 55613  
 55614  	switch fc {
 55615  	case Tuint32_t('\012'):
 55616  		goto __2721
 55617  	case Tuint32_t('\013'):
 55618  		goto __2722
 55619  	case Tuint32_t('\014'):
 55620  		goto __2723
 55621  	case Tuint32_t('\015'):
 55622  		goto __2724
 55623  	case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 55624  		goto __2725
 55625  	case Tuint32_t(0x2028):
 55626  		goto __2726 /* LINE SEPARATOR */
 55627  	case Tuint32_t(0x2029):
 55628  		goto __2727
 55629  	default:
 55630  		goto __2728
 55631  	}
 55632  	goto __2720
 55633  
 55634  __2721:
 55635  __2722:
 55636  __2723:
 55637  __2724:
 55638  __2725:
 55639  __2726: /* LINE SEPARATOR */
 55640  __2727:
 55641  	gotspace1 = DTRUE
 55642  	goto __2720
 55643  __2728:
 55644  	gotspace1 = DFALSE
 55645  	goto __2720
 55646  __2720:
 55647  	;
 55648  	if !(gotspace1 == libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_NOT_VSPACE)) {
 55649  		goto __2729
 55650  	}
 55651  	goto __2707
 55652  __2729:
 55653  	;
 55654  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len19)
 55655  	goto __2706
 55656  __2706:
 55657  	i++
 55658  	goto __2705
 55659  	goto __2707
 55660  __2707:
 55661  	;
 55662  	goto __2605
 55663  
 55664  __2614:
 55665  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55666  __2730:
 55667  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55668  		goto __2732
 55669  	}
 55670  
 55671  	len20 = 1
 55672  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55673  		goto __2733
 55674  	}
 55675  
 55676  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55677  		goto __2734
 55678  	}
 55679  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55680  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55681  		goto __2735
 55682  	}
 55683  	return -2
 55684  __2735:
 55685  	;
 55686  __2734:
 55687  	;
 55688  
 55689  	goto __2732
 55690  __2733:
 55691  	;
 55692  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 55693  	if !(fc >= 0xc0) {
 55694  		goto __2736
 55695  	}
 55696  	if !(fc&0x20 == Tuint32_t(0)) {
 55697  		goto __2737
 55698  	}
 55699  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 55700  	len20++
 55701  	goto __2738
 55702  __2737:
 55703  	if !(fc&0x10 == Tuint32_t(0)) {
 55704  		goto __2739
 55705  	}
 55706  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 55707  	len20 = len20 + 2
 55708  	goto __2740
 55709  __2739:
 55710  	if !(fc&0x08 == Tuint32_t(0)) {
 55711  		goto __2741
 55712  	}
 55713  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 55714  	len20 = len20 + 3
 55715  	goto __2742
 55716  __2741:
 55717  	if !(fc&0x04 == Tuint32_t(0)) {
 55718  		goto __2743
 55719  	}
 55720  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 55721  	len20 = len20 + 4
 55722  	goto __2744
 55723  __2743:
 55724  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 55725  	len20 = len20 + 5
 55726  __2744:
 55727  	;
 55728  __2742:
 55729  	;
 55730  __2740:
 55731  	;
 55732  __2738:
 55733  	;
 55734  __2736:
 55735  	;
 55736  
 55737  	if !(fc < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit != 0) {
 55738  		goto __2745
 55739  	}
 55740  	goto __2732
 55741  __2745:
 55742  	;
 55743  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len20)
 55744  	goto __2731
 55745  __2731:
 55746  	i++
 55747  	goto __2730
 55748  	goto __2732
 55749  __2732:
 55750  	;
 55751  	goto __2605
 55752  
 55753  __2615:
 55754  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55755  __2746:
 55756  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55757  		goto __2748
 55758  	}
 55759  
 55760  	len21 = 1
 55761  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55762  		goto __2749
 55763  	}
 55764  
 55765  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55766  		goto __2750
 55767  	}
 55768  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55769  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55770  		goto __2751
 55771  	}
 55772  	return -2
 55773  __2751:
 55774  	;
 55775  __2750:
 55776  	;
 55777  
 55778  	goto __2748
 55779  __2749:
 55780  	;
 55781  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 55782  	if !(fc >= 0xc0) {
 55783  		goto __2752
 55784  	}
 55785  	if !(fc&0x20 == Tuint32_t(0)) {
 55786  		goto __2753
 55787  	}
 55788  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 55789  	len21++
 55790  	goto __2754
 55791  __2753:
 55792  	if !(fc&0x10 == Tuint32_t(0)) {
 55793  		goto __2755
 55794  	}
 55795  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 55796  	len21 = len21 + 2
 55797  	goto __2756
 55798  __2755:
 55799  	if !(fc&0x08 == Tuint32_t(0)) {
 55800  		goto __2757
 55801  	}
 55802  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 55803  	len21 = len21 + 3
 55804  	goto __2758
 55805  __2757:
 55806  	if !(fc&0x04 == Tuint32_t(0)) {
 55807  		goto __2759
 55808  	}
 55809  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 55810  	len21 = len21 + 4
 55811  	goto __2760
 55812  __2759:
 55813  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 55814  	len21 = len21 + 5
 55815  __2760:
 55816  	;
 55817  __2758:
 55818  	;
 55819  __2756:
 55820  	;
 55821  __2754:
 55822  	;
 55823  __2752:
 55824  	;
 55825  
 55826  	if !(fc >= Tuint32_t(256) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_digit == 0) {
 55827  		goto __2761
 55828  	}
 55829  	goto __2748
 55830  __2761:
 55831  	;
 55832  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len21)
 55833  	goto __2747
 55834  __2747:
 55835  	i++
 55836  	goto __2746
 55837  	goto __2748
 55838  __2748:
 55839  	;
 55840  	goto __2605
 55841  
 55842  __2616:
 55843  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55844  __2762:
 55845  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55846  		goto __2764
 55847  	}
 55848  
 55849  	len22 = 1
 55850  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55851  		goto __2765
 55852  	}
 55853  
 55854  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55855  		goto __2766
 55856  	}
 55857  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55858  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55859  		goto __2767
 55860  	}
 55861  	return -2
 55862  __2767:
 55863  	;
 55864  __2766:
 55865  	;
 55866  
 55867  	goto __2764
 55868  __2765:
 55869  	;
 55870  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 55871  	if !(fc >= 0xc0) {
 55872  		goto __2768
 55873  	}
 55874  	if !(fc&0x20 == Tuint32_t(0)) {
 55875  		goto __2769
 55876  	}
 55877  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 55878  	len22++
 55879  	goto __2770
 55880  __2769:
 55881  	if !(fc&0x10 == Tuint32_t(0)) {
 55882  		goto __2771
 55883  	}
 55884  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 55885  	len22 = len22 + 2
 55886  	goto __2772
 55887  __2771:
 55888  	if !(fc&0x08 == Tuint32_t(0)) {
 55889  		goto __2773
 55890  	}
 55891  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 55892  	len22 = len22 + 3
 55893  	goto __2774
 55894  __2773:
 55895  	if !(fc&0x04 == Tuint32_t(0)) {
 55896  		goto __2775
 55897  	}
 55898  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 55899  	len22 = len22 + 4
 55900  	goto __2776
 55901  __2775:
 55902  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 55903  	len22 = len22 + 5
 55904  __2776:
 55905  	;
 55906  __2774:
 55907  	;
 55908  __2772:
 55909  	;
 55910  __2770:
 55911  	;
 55912  __2768:
 55913  	;
 55914  
 55915  	if !(fc < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space != 0) {
 55916  		goto __2777
 55917  	}
 55918  	goto __2764
 55919  __2777:
 55920  	;
 55921  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len22)
 55922  	goto __2763
 55923  __2763:
 55924  	i++
 55925  	goto __2762
 55926  	goto __2764
 55927  __2764:
 55928  	;
 55929  	goto __2605
 55930  
 55931  __2617:
 55932  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 55933  __2778:
 55934  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 55935  		goto __2780
 55936  	}
 55937  
 55938  	len23 = 1
 55939  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 55940  		goto __2781
 55941  	}
 55942  
 55943  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 55944  		goto __2782
 55945  	}
 55946  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 55947  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 55948  		goto __2783
 55949  	}
 55950  	return -2
 55951  __2783:
 55952  	;
 55953  __2782:
 55954  	;
 55955  
 55956  	goto __2780
 55957  __2781:
 55958  	;
 55959  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 55960  	if !(fc >= 0xc0) {
 55961  		goto __2784
 55962  	}
 55963  	if !(fc&0x20 == Tuint32_t(0)) {
 55964  		goto __2785
 55965  	}
 55966  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 55967  	len23++
 55968  	goto __2786
 55969  __2785:
 55970  	if !(fc&0x10 == Tuint32_t(0)) {
 55971  		goto __2787
 55972  	}
 55973  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 55974  	len23 = len23 + 2
 55975  	goto __2788
 55976  __2787:
 55977  	if !(fc&0x08 == Tuint32_t(0)) {
 55978  		goto __2789
 55979  	}
 55980  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 55981  	len23 = len23 + 3
 55982  	goto __2790
 55983  __2789:
 55984  	if !(fc&0x04 == Tuint32_t(0)) {
 55985  		goto __2791
 55986  	}
 55987  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 55988  	len23 = len23 + 4
 55989  	goto __2792
 55990  __2791:
 55991  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 55992  	len23 = len23 + 5
 55993  __2792:
 55994  	;
 55995  __2790:
 55996  	;
 55997  __2788:
 55998  	;
 55999  __2786:
 56000  	;
 56001  __2784:
 56002  	;
 56003  
 56004  	if !(fc >= Tuint32_t(256) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_space == 0) {
 56005  		goto __2793
 56006  	}
 56007  	goto __2780
 56008  __2793:
 56009  	;
 56010  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len23)
 56011  	goto __2779
 56012  __2779:
 56013  	i++
 56014  	goto __2778
 56015  	goto __2780
 56016  __2780:
 56017  	;
 56018  	goto __2605
 56019  
 56020  __2618:
 56021  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56022  __2794:
 56023  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56024  		goto __2796
 56025  	}
 56026  
 56027  	len24 = 1
 56028  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56029  		goto __2797
 56030  	}
 56031  
 56032  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56033  		goto __2798
 56034  	}
 56035  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56036  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56037  		goto __2799
 56038  	}
 56039  	return -2
 56040  __2799:
 56041  	;
 56042  __2798:
 56043  	;
 56044  
 56045  	goto __2796
 56046  __2797:
 56047  	;
 56048  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 56049  	if !(fc >= 0xc0) {
 56050  		goto __2800
 56051  	}
 56052  	if !(fc&0x20 == Tuint32_t(0)) {
 56053  		goto __2801
 56054  	}
 56055  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 56056  	len24++
 56057  	goto __2802
 56058  __2801:
 56059  	if !(fc&0x10 == Tuint32_t(0)) {
 56060  		goto __2803
 56061  	}
 56062  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 56063  	len24 = len24 + 2
 56064  	goto __2804
 56065  __2803:
 56066  	if !(fc&0x08 == Tuint32_t(0)) {
 56067  		goto __2805
 56068  	}
 56069  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 56070  	len24 = len24 + 3
 56071  	goto __2806
 56072  __2805:
 56073  	if !(fc&0x04 == Tuint32_t(0)) {
 56074  		goto __2807
 56075  	}
 56076  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 56077  	len24 = len24 + 4
 56078  	goto __2808
 56079  __2807:
 56080  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 56081  	len24 = len24 + 5
 56082  __2808:
 56083  	;
 56084  __2806:
 56085  	;
 56086  __2804:
 56087  	;
 56088  __2802:
 56089  	;
 56090  __2800:
 56091  	;
 56092  
 56093  	if !(fc < Tuint32_t(256) && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word != 0) {
 56094  		goto __2809
 56095  	}
 56096  	goto __2796
 56097  __2809:
 56098  	;
 56099  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len24)
 56100  	goto __2795
 56101  __2795:
 56102  	i++
 56103  	goto __2794
 56104  	goto __2796
 56105  __2796:
 56106  	;
 56107  	goto __2605
 56108  
 56109  __2619:
 56110  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56111  __2810:
 56112  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56113  		goto __2812
 56114  	}
 56115  
 56116  	len25 = 1
 56117  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56118  		goto __2813
 56119  	}
 56120  
 56121  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56122  		goto __2814
 56123  	}
 56124  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56125  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56126  		goto __2815
 56127  	}
 56128  	return -2
 56129  __2815:
 56130  	;
 56131  __2814:
 56132  	;
 56133  
 56134  	goto __2812
 56135  __2813:
 56136  	;
 56137  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 56138  	if !(fc >= 0xc0) {
 56139  		goto __2816
 56140  	}
 56141  	if !(fc&0x20 == Tuint32_t(0)) {
 56142  		goto __2817
 56143  	}
 56144  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 56145  	len25++
 56146  	goto __2818
 56147  __2817:
 56148  	if !(fc&0x10 == Tuint32_t(0)) {
 56149  		goto __2819
 56150  	}
 56151  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 56152  	len25 = len25 + 2
 56153  	goto __2820
 56154  __2819:
 56155  	if !(fc&0x08 == Tuint32_t(0)) {
 56156  		goto __2821
 56157  	}
 56158  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 56159  	len25 = len25 + 3
 56160  	goto __2822
 56161  __2821:
 56162  	if !(fc&0x04 == Tuint32_t(0)) {
 56163  		goto __2823
 56164  	}
 56165  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 56166  	len25 = len25 + 4
 56167  	goto __2824
 56168  __2823:
 56169  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 56170  	len25 = len25 + 5
 56171  __2824:
 56172  	;
 56173  __2822:
 56174  	;
 56175  __2820:
 56176  	;
 56177  __2818:
 56178  	;
 56179  __2816:
 56180  	;
 56181  
 56182  	if !(fc >= Tuint32_t(256) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word == 0) {
 56183  		goto __2825
 56184  	}
 56185  	goto __2812
 56186  __2825:
 56187  	;
 56188  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(len25)
 56189  	goto __2811
 56190  __2811:
 56191  	i++
 56192  	goto __2810
 56193  	goto __2812
 56194  __2812:
 56195  	;
 56196  	goto __2605
 56197  
 56198  __2620:
 56199  	return -44
 56200  __2605:
 56201  	;
 56202  
 56203  	if !(reptype == REPTYPE_POS) {
 56204  		goto __2826
 56205  	}
 56206  	goto __11
 56207  __2826:
 56208  	; // No backtracking
 56209  
 56210  	// After \C in UTF mode, Lstart_eptr might be in the middle of a
 56211  	//         Unicode character. Use <= Lstart_eptr to ensure backtracking doesn't go
 56212  	//         too far.
 56213  
 56214  __2827:
 56215  
 56216  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 56217  		goto __2830
 56218  	}
 56219  	goto __2829
 56220  __2830:
 56221  	;
 56222  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 56223  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM221
 56224  	goto MATCH_RECURSE
 56225  L_RM221:
 56226  	;
 56227  
 56228  	if !(rrc != DMATCH_NOMATCH) {
 56229  		goto __2831
 56230  	}
 56231  	rrc = rrc
 56232  	goto RETURN_SWITCH
 56233  __2831:
 56234  	;
 56235  
 56236  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 56237  __2832:
 56238  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 56239  		goto __2833
 56240  	}
 56241  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 56242  	goto __2832
 56243  __2833:
 56244  	;
 56245  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_ANYNL && (*Theapframe)(unsafe.Pointer(F)).Feptr > *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr - uintptr(1)))) == '\015') {
 56246  		goto __2834
 56247  	}
 56248  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 56249  __2834:
 56250  	;
 56251  	goto __2828
 56252  __2828:
 56253  	goto __2827
 56254  	goto __2829
 56255  __2829:
 56256  	;
 56257  	goto __2604
 56258  __2603:
 56259  
 56260  	/* Not UTF mode */
 56261  
 56262  	switch *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) {
 56263  	case OP_ANY:
 56264  		goto __2836
 56265  
 56266  	case OP_ALLANY:
 56267  		goto __2837
 56268  	case OP_ANYBYTE:
 56269  		goto __2838
 56270  
 56271  	case OP_ANYNL:
 56272  		goto __2839
 56273  
 56274  	case OP_NOT_HSPACE:
 56275  		goto __2840
 56276  
 56277  	case OP_HSPACE:
 56278  		goto __2841
 56279  
 56280  	case OP_NOT_VSPACE:
 56281  		goto __2842
 56282  
 56283  	case OP_VSPACE:
 56284  		goto __2843
 56285  
 56286  	case OP_NOT_DIGIT:
 56287  		goto __2844
 56288  
 56289  	case OP_DIGIT:
 56290  		goto __2845
 56291  
 56292  	case OP_NOT_WHITESPACE:
 56293  		goto __2846
 56294  
 56295  	case OP_WHITESPACE:
 56296  		goto __2847
 56297  
 56298  	case OP_NOT_WORDCHAR:
 56299  		goto __2848
 56300  
 56301  	case OP_WORDCHAR:
 56302  		goto __2849
 56303  
 56304  	default:
 56305  		goto __2850
 56306  	}
 56307  	goto __2835
 56308  
 56309  __2836:
 56310  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56311  __2851:
 56312  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56313  		goto __2853
 56314  	}
 56315  
 56316  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56317  		goto __2854
 56318  	}
 56319  
 56320  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56321  		goto __2855
 56322  	}
 56323  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56324  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56325  		goto __2856
 56326  	}
 56327  	return -2
 56328  __2856:
 56329  	;
 56330  __2855:
 56331  	;
 56332  
 56333  	goto __2853
 56334  __2854:
 56335  	;
 56336  	if !(func() int32 {
 56337  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 56338  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 56339  		}
 56340  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 56341  	}() != 0) {
 56342  		goto __2857
 56343  	}
 56344  	goto __2853
 56345  __2857:
 56346  	;
 56347  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr+uintptr(1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 56348  		goto __2858
 56349  	}
 56350  
 56351  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56352  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56353  		goto __2859
 56354  	}
 56355  	return -2
 56356  __2859:
 56357  	;
 56358  __2858:
 56359  	;
 56360  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56361  	goto __2852
 56362  __2852:
 56363  	i++
 56364  	goto __2851
 56365  	goto __2853
 56366  __2853:
 56367  	;
 56368  	goto __2835
 56369  
 56370  __2837:
 56371  __2838:
 56372  	fc = *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) - *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56373  	if !(fc > Tuint32_t((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject)-int64((*Theapframe)(unsafe.Pointer(F)).Feptr))/1)) {
 56374  		goto __2860
 56375  	}
 56376  
 56377  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject
 56378  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56379  		goto __2862
 56380  	}
 56381  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56382  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56383  		goto __2863
 56384  	}
 56385  	return -2
 56386  __2863:
 56387  	;
 56388  __2862:
 56389  	;
 56390  
 56391  	goto __2861
 56392  __2860:
 56393  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(fc)
 56394  __2861:
 56395  	;
 56396  	goto __2835
 56397  
 56398  __2839:
 56399  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56400  __2864:
 56401  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56402  		goto __2866
 56403  	}
 56404  
 56405  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56406  		goto __2867
 56407  	}
 56408  
 56409  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56410  		goto __2868
 56411  	}
 56412  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56413  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56414  		goto __2869
 56415  	}
 56416  	return -2
 56417  __2869:
 56418  	;
 56419  __2868:
 56420  	;
 56421  
 56422  	goto __2866
 56423  __2867:
 56424  	;
 56425  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 56426  	if !(fc == Tuint32_t('\015')) {
 56427  		goto __2870
 56428  	}
 56429  
 56430  	if !(libc.PreIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Feptr, 1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56431  		goto __2872
 56432  	}
 56433  	goto __2866
 56434  __2872:
 56435  	;
 56436  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012') {
 56437  		goto __2873
 56438  	}
 56439  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56440  __2873:
 56441  	;
 56442  	goto __2871
 56443  __2870:
 56444  
 56445  	if !(fc != Tuint32_t('\012') && (int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention) == DPCRE2_BSR_ANYCRLF || fc != Tuint32_t('\013') && fc != Tuint32_t('\014') && fc != libc.Uint32FromUint8(libc.Uint8FromInt32(133)))) {
 56446  		goto __2874
 56447  	}
 56448  	goto __2866
 56449  __2874:
 56450  	;
 56451  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56452  __2871:
 56453  	;
 56454  	goto __2865
 56455  __2865:
 56456  	i++
 56457  	goto __2864
 56458  	goto __2866
 56459  __2866:
 56460  	;
 56461  	goto __2835
 56462  
 56463  __2840:
 56464  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56465  __2875:
 56466  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56467  		goto __2877
 56468  	}
 56469  
 56470  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56471  		goto __2878
 56472  	}
 56473  
 56474  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56475  		goto __2879
 56476  	}
 56477  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56478  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56479  		goto __2880
 56480  	}
 56481  	return -2
 56482  __2880:
 56483  	;
 56484  __2879:
 56485  	;
 56486  
 56487  	goto __2877
 56488  __2878:
 56489  	;
 56490  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) {
 56491  	default:
 56492  		goto __2882
 56493  	case '\011':
 56494  		goto __2883
 56495  	case '\040':
 56496  		goto __2884
 56497  	case int32(libc.Uint8FromInt32(160)):
 56498  		goto __2885
 56499  	}
 56500  	goto __2881
 56501  
 56502  __2882:
 56503  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56504  	goto __2881
 56505  __2883:
 56506  __2884:
 56507  __2885:
 56508  	goto ENDLOOP00
 56509  __2881:
 56510  	;
 56511  	goto __2876
 56512  __2876:
 56513  	i++
 56514  	goto __2875
 56515  	goto __2877
 56516  __2877:
 56517  	;
 56518  ENDLOOP00:
 56519  	goto __2835
 56520  
 56521  __2841:
 56522  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56523  __2886:
 56524  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56525  		goto __2888
 56526  	}
 56527  
 56528  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56529  		goto __2889
 56530  	}
 56531  
 56532  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56533  		goto __2890
 56534  	}
 56535  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56536  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56537  		goto __2891
 56538  	}
 56539  	return -2
 56540  __2891:
 56541  	;
 56542  __2890:
 56543  	;
 56544  
 56545  	goto __2888
 56546  __2889:
 56547  	;
 56548  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) {
 56549  	default:
 56550  		goto __2893
 56551  	case '\011':
 56552  		goto __2894
 56553  	case '\040':
 56554  		goto __2895
 56555  	case int32(libc.Uint8FromInt32(160)):
 56556  		goto __2896
 56557  	}
 56558  	goto __2892
 56559  
 56560  __2893:
 56561  	goto ENDLOOP01
 56562  __2894:
 56563  __2895:
 56564  __2896:
 56565  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56566  	goto __2892
 56567  __2892:
 56568  	;
 56569  	goto __2887
 56570  __2887:
 56571  	i++
 56572  	goto __2886
 56573  	goto __2888
 56574  __2888:
 56575  	;
 56576  ENDLOOP01:
 56577  	goto __2835
 56578  
 56579  __2842:
 56580  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56581  __2897:
 56582  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56583  		goto __2899
 56584  	}
 56585  
 56586  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56587  		goto __2900
 56588  	}
 56589  
 56590  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56591  		goto __2901
 56592  	}
 56593  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56594  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56595  		goto __2902
 56596  	}
 56597  	return -2
 56598  __2902:
 56599  	;
 56600  __2901:
 56601  	;
 56602  
 56603  	goto __2899
 56604  __2900:
 56605  	;
 56606  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) {
 56607  	default:
 56608  		goto __2904
 56609  	case '\012':
 56610  		goto __2905
 56611  	case '\013':
 56612  		goto __2906
 56613  	case '\014':
 56614  		goto __2907
 56615  	case '\015':
 56616  		goto __2908
 56617  	case int32(libc.Uint8FromInt32(133)):
 56618  		goto __2909
 56619  	}
 56620  	goto __2903
 56621  
 56622  __2904:
 56623  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56624  	goto __2903
 56625  __2905:
 56626  __2906:
 56627  __2907:
 56628  __2908:
 56629  __2909:
 56630  	goto ENDLOOP02
 56631  __2903:
 56632  	;
 56633  	goto __2898
 56634  __2898:
 56635  	i++
 56636  	goto __2897
 56637  	goto __2899
 56638  __2899:
 56639  	;
 56640  ENDLOOP02:
 56641  	goto __2835
 56642  
 56643  __2843:
 56644  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56645  __2910:
 56646  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56647  		goto __2912
 56648  	}
 56649  
 56650  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56651  		goto __2913
 56652  	}
 56653  
 56654  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56655  		goto __2914
 56656  	}
 56657  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56658  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56659  		goto __2915
 56660  	}
 56661  	return -2
 56662  __2915:
 56663  	;
 56664  __2914:
 56665  	;
 56666  
 56667  	goto __2912
 56668  __2913:
 56669  	;
 56670  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) {
 56671  	default:
 56672  		goto __2917
 56673  	case '\012':
 56674  		goto __2918
 56675  	case '\013':
 56676  		goto __2919
 56677  	case '\014':
 56678  		goto __2920
 56679  	case '\015':
 56680  		goto __2921
 56681  	case int32(libc.Uint8FromInt32(133)):
 56682  		goto __2922
 56683  	}
 56684  	goto __2916
 56685  
 56686  __2917:
 56687  	goto ENDLOOP03
 56688  __2918:
 56689  __2919:
 56690  __2920:
 56691  __2921:
 56692  __2922:
 56693  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56694  	goto __2916
 56695  __2916:
 56696  	;
 56697  	goto __2911
 56698  __2911:
 56699  	i++
 56700  	goto __2910
 56701  	goto __2912
 56702  __2912:
 56703  	;
 56704  ENDLOOP03:
 56705  	goto __2835
 56706  
 56707  __2844:
 56708  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56709  __2923:
 56710  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56711  		goto __2925
 56712  	}
 56713  
 56714  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56715  		goto __2926
 56716  	}
 56717  
 56718  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56719  		goto __2927
 56720  	}
 56721  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56722  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56723  		goto __2928
 56724  	}
 56725  	return -2
 56726  __2928:
 56727  	;
 56728  __2927:
 56729  	;
 56730  
 56731  	goto __2925
 56732  __2926:
 56733  	;
 56734  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_digit != 0) {
 56735  		goto __2929
 56736  	}
 56737  	goto __2925
 56738  __2929:
 56739  	;
 56740  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56741  	goto __2924
 56742  __2924:
 56743  	i++
 56744  	goto __2923
 56745  	goto __2925
 56746  __2925:
 56747  	;
 56748  	goto __2835
 56749  
 56750  __2845:
 56751  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56752  __2930:
 56753  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56754  		goto __2932
 56755  	}
 56756  
 56757  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56758  		goto __2933
 56759  	}
 56760  
 56761  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56762  		goto __2934
 56763  	}
 56764  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56765  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56766  		goto __2935
 56767  	}
 56768  	return -2
 56769  __2935:
 56770  	;
 56771  __2934:
 56772  	;
 56773  
 56774  	goto __2932
 56775  __2933:
 56776  	;
 56777  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_digit == 0) {
 56778  		goto __2936
 56779  	}
 56780  	goto __2932
 56781  __2936:
 56782  	;
 56783  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56784  	goto __2931
 56785  __2931:
 56786  	i++
 56787  	goto __2930
 56788  	goto __2932
 56789  __2932:
 56790  	;
 56791  	goto __2835
 56792  
 56793  __2846:
 56794  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56795  __2937:
 56796  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56797  		goto __2939
 56798  	}
 56799  
 56800  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56801  		goto __2940
 56802  	}
 56803  
 56804  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56805  		goto __2941
 56806  	}
 56807  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56808  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56809  		goto __2942
 56810  	}
 56811  	return -2
 56812  __2942:
 56813  	;
 56814  __2941:
 56815  	;
 56816  
 56817  	goto __2939
 56818  __2940:
 56819  	;
 56820  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_space != 0) {
 56821  		goto __2943
 56822  	}
 56823  	goto __2939
 56824  __2943:
 56825  	;
 56826  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56827  	goto __2938
 56828  __2938:
 56829  	i++
 56830  	goto __2937
 56831  	goto __2939
 56832  __2939:
 56833  	;
 56834  	goto __2835
 56835  
 56836  __2847:
 56837  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56838  __2944:
 56839  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56840  		goto __2946
 56841  	}
 56842  
 56843  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56844  		goto __2947
 56845  	}
 56846  
 56847  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56848  		goto __2948
 56849  	}
 56850  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56851  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56852  		goto __2949
 56853  	}
 56854  	return -2
 56855  __2949:
 56856  	;
 56857  __2948:
 56858  	;
 56859  
 56860  	goto __2946
 56861  __2947:
 56862  	;
 56863  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_space == 0) {
 56864  		goto __2950
 56865  	}
 56866  	goto __2946
 56867  __2950:
 56868  	;
 56869  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56870  	goto __2945
 56871  __2945:
 56872  	i++
 56873  	goto __2944
 56874  	goto __2946
 56875  __2946:
 56876  	;
 56877  	goto __2835
 56878  
 56879  __2848:
 56880  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56881  __2951:
 56882  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56883  		goto __2953
 56884  	}
 56885  
 56886  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56887  		goto __2954
 56888  	}
 56889  
 56890  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56891  		goto __2955
 56892  	}
 56893  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56894  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56895  		goto __2956
 56896  	}
 56897  	return -2
 56898  __2956:
 56899  	;
 56900  __2955:
 56901  	;
 56902  
 56903  	goto __2953
 56904  __2954:
 56905  	;
 56906  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_word != 0) {
 56907  		goto __2957
 56908  	}
 56909  	goto __2953
 56910  __2957:
 56911  	;
 56912  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56913  	goto __2952
 56914  __2952:
 56915  	i++
 56916  	goto __2951
 56917  	goto __2953
 56918  __2953:
 56919  	;
 56920  	goto __2835
 56921  
 56922  __2849:
 56923  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 56924  __2958:
 56925  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 56926  		goto __2960
 56927  	}
 56928  
 56929  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 56930  		goto __2961
 56931  	}
 56932  
 56933  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 56934  		goto __2962
 56935  	}
 56936  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 56937  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 56938  		goto __2963
 56939  	}
 56940  	return -2
 56941  __2963:
 56942  	;
 56943  __2962:
 56944  	;
 56945  
 56946  	goto __2960
 56947  __2961:
 56948  	;
 56949  	if !(!(1 != 0) || int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))))))&Dctype_word == 0) {
 56950  		goto __2964
 56951  	}
 56952  	goto __2960
 56953  __2964:
 56954  	;
 56955  	(*Theapframe)(unsafe.Pointer(F)).Feptr++
 56956  	goto __2959
 56957  __2959:
 56958  	i++
 56959  	goto __2958
 56960  	goto __2960
 56961  __2960:
 56962  	;
 56963  	goto __2835
 56964  
 56965  __2850:
 56966  	return -44
 56967  __2835:
 56968  	;
 56969  
 56970  	if !(reptype == REPTYPE_POS) {
 56971  		goto __2965
 56972  	}
 56973  	goto __11
 56974  __2965:
 56975  	; // No backtracking
 56976  
 56977  __2966:
 56978  
 56979  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 56980  		goto __2969
 56981  	}
 56982  	goto __2968
 56983  __2969:
 56984  	;
 56985  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 56986  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM34
 56987  	goto MATCH_RECURSE
 56988  L_RM34:
 56989  	;
 56990  
 56991  	if !(rrc != DMATCH_NOMATCH) {
 56992  		goto __2970
 56993  	}
 56994  	rrc = rrc
 56995  	goto RETURN_SWITCH
 56996  __2970:
 56997  	;
 56998  
 56999  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 57000  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) == OP_ANYNL && (*Theapframe)(unsafe.Pointer(F)).Feptr > *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == '\012' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + libc.UintptrFromInt32(-1)))) == '\015') {
 57001  		goto __2971
 57002  	}
 57003  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 57004  __2971:
 57005  	;
 57006  	goto __2967
 57007  __2967:
 57008  	goto __2966
 57009  	goto __2968
 57010  __2968:
 57011  	;
 57012  __2604:
 57013  	;
 57014  __2546:
 57015  	;
 57016  __2274:
 57017  	;
 57018  __1781:
 57019  	;
 57020  	goto __13 // End of repeat character type processing
 57021  
 57022  	// =====================================================================
 57023  	// Match a back reference, possibly repeatedly. Look past the end of the
 57024  	//     item to see if there is repeat information following. The OP_REF and
 57025  	//     OP_REFI opcodes are used for a reference to a numbered group or to a
 57026  	//     non-duplicated named group. For a duplicated named group, OP_DNREF and
 57027  	//     OP_DNREFI are used. In this case we must scan the list of groups to which
 57028  	//     the name refers, and use the first one that is set.
 57029  
 57030  __107:
 57031  __108:
 57032  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(libc.Bool32(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_DNREFI))
 57033  
 57034  	count = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))))
 57035  	slot = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_table + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))*uint32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_entry_size))
 57036  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + 2*DIMM2_SIZE)
 57037  
 57038  __2972:
 57039  	if !(libc.PostDecInt32(&count, 1) > 0) {
 57040  		goto __2973
 57041  	}
 57042  
 57043  	(*Theapframe)(unsafe.Pointer(F)).Ftemp_size = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot + 1))))<<1 - uint32(2))
 57044  	if !((*Theapframe)(unsafe.Pointer(F)).Ftemp_size < (*Theapframe)(unsafe.Pointer(F)).Foffset_top && *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size)*8)) != libc.CplUint64(uint64(0))) {
 57045  		goto __2974
 57046  	}
 57047  	goto __2973
 57048  __2974:
 57049  	;
 57050  	slot += TPCRE2_SPTR8((*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_entry_size)
 57051  	goto __2972
 57052  __2973:
 57053  	;
 57054  
 57055  	goto REF_REPEAT
 57056  
 57057  __109:
 57058  __110:
 57059  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(libc.Bool32(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_REFI))
 57060  	(*Theapframe)(unsafe.Pointer(F)).Ftemp_size = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))<<1 - uint32(2))
 57061  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 57062  
 57063  	// Set up for repetition, or handle the non-repeated case. The maximum and
 57064  	//     minimum must be in the heap frame, but as they are short-term values, we
 57065  	//     use temporary fields.
 57066  
 57067  REF_REPEAT:
 57068  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) {
 57069  	case OP_CRSTAR:
 57070  		goto __2976
 57071  	case OP_CRMINSTAR:
 57072  		goto __2977
 57073  	case OP_CRPLUS:
 57074  		goto __2978
 57075  	case OP_CRMINPLUS:
 57076  		goto __2979
 57077  	case OP_CRQUERY:
 57078  		goto __2980
 57079  	case OP_CRMINQUERY:
 57080  		goto __2981
 57081  
 57082  	case OP_CRRANGE:
 57083  		goto __2982
 57084  	case OP_CRMINRANGE:
 57085  		goto __2983
 57086  
 57087  	default:
 57088  		goto __2984
 57089  	}
 57090  	goto __2975
 57091  
 57092  __2976:
 57093  __2977:
 57094  __2978:
 57095  __2979:
 57096  __2980:
 57097  __2981:
 57098  	fc = Tuint32_t(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) - OP_CRSTAR)
 57099  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = rep_min[fc]
 57100  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = rep_max[fc]
 57101  	reptype = rep_typ[fc]
 57102  	goto __2975
 57103  
 57104  __2982:
 57105  __2983:
 57106  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 57107  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4))))
 57108  	reptype = rep_typ[int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))-OP_CRSTAR]
 57109  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) == Tuint32_t(0)) {
 57110  		goto __2985
 57111  	}
 57112  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = 4294967295
 57113  __2985:
 57114  	; // Max 0 => infinity
 57115  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + 2*DIMM2_SIZE)
 57116  	goto __2975
 57117  
 57118  __2984: /* No repeat follows */
 57119  
 57120  	rrc = match_ref(tls, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size, int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))), F, mb, bp)
 57121  	if !(rrc != 0) {
 57122  		goto __2986
 57123  	}
 57124  
 57125  	if !(rrc > 0) {
 57126  		goto __2987
 57127  	}
 57128  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject
 57129  __2987:
 57130  	; // Partial match
 57131  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 57132  		goto __2988
 57133  	}
 57134  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 57135  		goto __2989
 57136  	}
 57137  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 57138  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 57139  		goto __2990
 57140  	}
 57141  	return -2
 57142  __2990:
 57143  	;
 57144  __2989:
 57145  	;
 57146  __2988:
 57147  	;
 57148  
 57149  	rrc = DMATCH_NOMATCH
 57150  	goto RETURN_SWITCH
 57151  
 57152  __2986:
 57153  	;
 57154  
 57155  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp)))
 57156  	goto __11 // With the main loop
 57157  __2975:
 57158  	;
 57159  
 57160  	// Handle repeated back references. If a set group has length zero, just
 57161  	//     continue with the main loop, because it matches however many times. For an
 57162  	//     unset reference, if the minimum is zero, we can also just continue. We can
 57163  	//     also continue if PCRE2_MATCH_UNSET_BACKREF is set, because this makes unset
 57164  	//     group behave as a zero-length group. For any other unset cases, carrying
 57165  	//     on will result in NOMATCH.
 57166  
 57167  	if !((*Theapframe)(unsafe.Pointer(F)).Ftemp_size < (*Theapframe)(unsafe.Pointer(F)).Foffset_top && *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size)*8)) != libc.CplUint64(uint64(0))) {
 57168  		goto __2991
 57169  	}
 57170  
 57171  	if !(*(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size)*8)) == *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size+uint64(1))*8))) {
 57172  		goto __2993
 57173  	}
 57174  	goto __11
 57175  __2993:
 57176  	;
 57177  	goto __2992
 57178  __2991: /* Group is not set */
 57179  
 57180  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == Tuint32_t(0) || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_MATCH_UNSET_BACKREF != Tuint32_t(0)) {
 57181  		goto __2994
 57182  	}
 57183  	goto __11
 57184  __2994:
 57185  	;
 57186  __2992:
 57187  	;
 57188  
 57189  	// First, ensure the minimum number of matches are present.
 57190  
 57191  	i = Tuint32_t(1)
 57192  __2995:
 57193  	if !(i <= *(*Tuint32_t)(unsafe.Pointer(F + 56))) {
 57194  		goto __2997
 57195  	}
 57196  
 57197  	rrc = match_ref(tls, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size, int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))), F, mb, bp+8)
 57198  	if !(rrc != 0) {
 57199  		goto __2998
 57200  	}
 57201  
 57202  	if !(rrc > 0) {
 57203  		goto __2999
 57204  	}
 57205  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject
 57206  __2999:
 57207  	; // Partial match
 57208  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 57209  		goto __3000
 57210  	}
 57211  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 57212  		goto __3001
 57213  	}
 57214  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 57215  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 57216  		goto __3002
 57217  	}
 57218  	return -2
 57219  __3002:
 57220  	;
 57221  __3001:
 57222  	;
 57223  __3000:
 57224  	;
 57225  
 57226  	rrc = DMATCH_NOMATCH
 57227  	goto RETURN_SWITCH
 57228  
 57229  __2998:
 57230  	;
 57231  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp + 8)))
 57232  	goto __2996
 57233  __2996:
 57234  	i++
 57235  	goto __2995
 57236  	goto __2997
 57237  __2997:
 57238  	;
 57239  
 57240  	// If min = max, we are done. They are not both allowed to be zero.
 57241  
 57242  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56)) == *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 57243  		goto __3003
 57244  	}
 57245  	goto __11
 57246  __3003:
 57247  	;
 57248  
 57249  	// If minimizing, keep trying and advancing the pointer.
 57250  
 57251  	if !(reptype == REPTYPE_MIN) {
 57252  		goto __3004
 57253  	}
 57254  
 57255  __3006:
 57256  
 57257  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 57258  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM20
 57259  	goto MATCH_RECURSE
 57260  L_RM20:
 57261  	;
 57262  
 57263  	if !(rrc != DMATCH_NOMATCH) {
 57264  		goto __3009
 57265  	}
 57266  	rrc = rrc
 57267  	goto RETURN_SWITCH
 57268  __3009:
 57269  	;
 57270  
 57271  	if !(libc.PostIncUint32(&*(*Tuint32_t)(unsafe.Pointer(F + 56)), 1) >= *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 57272  		goto __3010
 57273  	}
 57274  	rrc = DMATCH_NOMATCH
 57275  	goto RETURN_SWITCH
 57276  __3010:
 57277  	;
 57278  
 57279  	rrc = match_ref(tls, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size, int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))), F, mb, bp+16)
 57280  	if !(rrc != 0) {
 57281  		goto __3011
 57282  	}
 57283  
 57284  	if !(rrc > 0) {
 57285  		goto __3012
 57286  	}
 57287  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject
 57288  __3012:
 57289  	; // Partial match
 57290  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 57291  		goto __3013
 57292  	}
 57293  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 57294  		goto __3014
 57295  	}
 57296  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 57297  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 57298  		goto __3015
 57299  	}
 57300  	return -2
 57301  __3015:
 57302  	;
 57303  __3014:
 57304  	;
 57305  __3013:
 57306  	;
 57307  
 57308  	rrc = DMATCH_NOMATCH
 57309  	goto RETURN_SWITCH
 57310  
 57311  __3011:
 57312  	;
 57313  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp + 16)))
 57314  	goto __3007
 57315  __3007:
 57316  	goto __3006
 57317  	goto __3008
 57318  __3008:
 57319  	;
 57320  	// Control never gets here
 57321  	goto __3005
 57322  __3004:
 57323  	samelengths = DTRUE
 57324  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr // Starting position
 57325  	(*Theapframe)(unsafe.Pointer(F)).Flength = *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size+uint64(1))*8)) - *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr((*Theapframe)(unsafe.Pointer(F)).Ftemp_size)*8))
 57326  
 57327  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 57328  __3016:
 57329  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 57330  		goto __3018
 57331  	}
 57332  
 57333  	rrc = match_ref(tls, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size, int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))), F, mb, bp+24)
 57334  	if !(rrc != 0) {
 57335  		goto __3019
 57336  	}
 57337  
 57338  	// Can't use CHECK_PARTIAL because we don't want to update Feptr in
 57339  	//           the soft partial matching case.
 57340  
 57341  	if !(rrc > 0 && int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr) {
 57342  		goto __3020
 57343  	}
 57344  
 57345  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 57346  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 57347  		goto __3021
 57348  	}
 57349  	return -2
 57350  __3021:
 57351  	;
 57352  __3020:
 57353  	;
 57354  	goto __3018
 57355  __3019:
 57356  	;
 57357  
 57358  	if !(*(*Tsize_t)(unsafe.Pointer(bp + 24)) != (*Theapframe)(unsafe.Pointer(F)).Flength) {
 57359  		goto __3022
 57360  	}
 57361  	samelengths = DFALSE
 57362  __3022:
 57363  	;
 57364  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp + 24)))
 57365  	goto __3017
 57366  __3017:
 57367  	i++
 57368  	goto __3016
 57369  	goto __3018
 57370  __3018:
 57371  	;
 57372  
 57373  	// If the length matched for each repetition is the same as the length of
 57374  	//       the captured group, we can easily work backwards. This is the normal
 57375  	//       case. However, in caseless UTF-8 mode there are pairs of case-equivalent
 57376  	//       characters whose lengths (in terms of code units) differ. However, this
 57377  	//       is very rare, so we handle it by re-matching fewer and fewer times.
 57378  
 57379  	if !(samelengths != 0) {
 57380  		goto __3023
 57381  	}
 57382  
 57383  __3025:
 57384  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 57385  		goto __3026
 57386  	}
 57387  
 57388  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 57389  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM21
 57390  	goto MATCH_RECURSE
 57391  L_RM21:
 57392  	;
 57393  
 57394  	if !(rrc != DMATCH_NOMATCH) {
 57395  		goto __3027
 57396  	}
 57397  	rrc = rrc
 57398  	goto RETURN_SWITCH
 57399  __3027:
 57400  	;
 57401  
 57402  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) -= TPCRE2_SPTR8((*Theapframe)(unsafe.Pointer(F)).Flength)
 57403  	goto __3025
 57404  __3026:
 57405  	;
 57406  	goto __3024
 57407  __3023:
 57408  
 57409  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = i
 57410  __3028:
 57411  
 57412  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 57413  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM22
 57414  	goto MATCH_RECURSE
 57415  L_RM22:
 57416  	;
 57417  
 57418  	if !(rrc != DMATCH_NOMATCH) {
 57419  		goto __3031
 57420  	}
 57421  	rrc = rrc
 57422  	goto RETURN_SWITCH
 57423  __3031:
 57424  	;
 57425  
 57426  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 57427  		goto __3032
 57428  	}
 57429  	goto __3030
 57430  __3032:
 57431  	; // Failed after minimal repetition
 57432  	(*Theapframe)(unsafe.Pointer(F)).Feptr = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))
 57433  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))--
 57434  	i = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 57435  __3033:
 57436  	if !(i < *(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4))) {
 57437  		goto __3035
 57438  	}
 57439  
 57440  	match_ref(tls, (*Theapframe)(unsafe.Pointer(F)).Ftemp_size, int32(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4))), F, mb, bp+32)
 57441  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp + 32)))
 57442  	goto __3034
 57443  __3034:
 57444  	i++
 57445  	goto __3033
 57446  	goto __3035
 57447  __3035:
 57448  	;
 57449  	goto __3029
 57450  __3029:
 57451  	goto __3028
 57452  	goto __3030
 57453  __3030:
 57454  	;
 57455  __3024:
 57456  	;
 57457  
 57458  	rrc = DMATCH_NOMATCH
 57459  	goto RETURN_SWITCH
 57460  
 57461  __3005:
 57462  	;
 57463  	// Control never gets here
 57464  
 57465  	// =========================================================================
 57466  	//           Opcodes for the start of various parenthesized items
 57467  	// =========================================================================
 57468  
 57469  	// In all cases, if the result of RMATCH() is MATCH_THEN, check whether the
 57470  	//     (*THEN) is within the current branch by comparing the address of OP_THEN
 57471  	//     that is passed back with the end of the branch. If (*THEN) is within the
 57472  	//     current branch, and the branch is one of two or more alternatives (it
 57473  	//     either starts or ends with OP_ALT), we have reached the limit of THEN's
 57474  	//     action, so convert the return code to NOMATCH, which will cause normal
 57475  	//     backtracking to happen from now on. Otherwise, THEN is passed back to an
 57476  	//     outer alternative. This implements Perl's treatment of parenthesized
 57477  	//     groups, where a group not containing | does not affect the current
 57478  	//     alternative, that is, (X) is NOT the same as (X|(*F)).
 57479  
 57480  	// =====================================================================
 57481  	// BRAZERO, BRAMINZERO and SKIPZERO occur just before a non-possessive
 57482  	//     bracket group, indicating that it may occur zero times. It may repeat
 57483  	//     infinitely, or not at all - i.e. it could be ()* or ()? or even (){0} in
 57484  	//     the pattern. Brackets with fixed upper repeat limits are compiled as a
 57485  	//     number of copies, with the optional ones preceded by BRAZERO or BRAMINZERO.
 57486  	//     Possessive groups with possible zero repeats are preceded by BRAPOSZERO.
 57487  
 57488  __111:
 57489  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(1)
 57490  	start_ecode = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))
 57491  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM9
 57492  	goto MATCH_RECURSE
 57493  L_RM9:
 57494  	;
 57495  
 57496  	if !(rrc != DMATCH_NOMATCH) {
 57497  		goto __3036
 57498  	}
 57499  	rrc = rrc
 57500  	goto RETURN_SWITCH
 57501  __3036:
 57502  	;
 57503  
 57504  __3037:
 57505  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 2)))))
 57506  	goto __3038
 57507  __3038:
 57508  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))) == OP_ALT {
 57509  		goto __3037
 57510  	}
 57511  	goto __3039
 57512  __3039:
 57513  	;
 57514  	(*Theapframe)(unsafe.Pointer(F)).Fecode = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + uintptr(1) + uintptr(DLINK_SIZE)
 57515  	goto __13
 57516  
 57517  __112:
 57518  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(1)
 57519  __3040:
 57520  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 2)))))
 57521  	goto __3041
 57522  __3041:
 57523  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))) == OP_ALT {
 57524  		goto __3040
 57525  	}
 57526  	goto __3042
 57527  __3042:
 57528  	;
 57529  	start_ecode = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + uintptr(1) + uintptr(DLINK_SIZE)
 57530  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM10
 57531  	goto MATCH_RECURSE
 57532  L_RM10:
 57533  	;
 57534  
 57535  	if !(rrc != DMATCH_NOMATCH) {
 57536  		goto __3043
 57537  	}
 57538  	rrc = rrc
 57539  	goto RETURN_SWITCH
 57540  __3043:
 57541  	;
 57542  
 57543  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 57544  	goto __13
 57545  
 57546  __113:
 57547  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 57548  __3044:
 57549  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57550  	goto __3045
 57551  __3045:
 57552  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT {
 57553  		goto __3044
 57554  	}
 57555  	goto __3046
 57556  __3046:
 57557  	;
 57558  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE)
 57559  	goto __13
 57560  
 57561  	// =====================================================================
 57562  	// Handle possessive brackets with an unlimited repeat. The end of these
 57563  	//     brackets will always be OP_KETRPOS, which returns MATCH_KETRPOS without
 57564  	//     going further in the pattern.
 57565  
 57566  __114:
 57567  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(DTRUE) // Zero repeat is allowed
 57568  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += uintptr(1)
 57569  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_CBRAPOS || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_SCBRAPOS) {
 57570  		goto __3047
 57571  	}
 57572  	goto POSSESSIVE_CAPTURE
 57573  __3047:
 57574  	;
 57575  	goto POSSESSIVE_NON_CAPTURE
 57576  
 57577  __115:
 57578  __116:
 57579  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(DFALSE) // Zero repeat not allowed
 57580  
 57581  POSSESSIVE_NON_CAPTURE:
 57582  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = DGF_NOCAPTURE // Remembered frame type
 57583  	goto POSSESSIVE_GROUP
 57584  
 57585  __117:
 57586  __118:
 57587  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) = Tuint32_t(DFALSE) // Zero repeat not allowed
 57588  
 57589  POSSESSIVE_CAPTURE:
 57590  	number = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4))))
 57591  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = DGF_CAPTURE | number // Remembered frame type
 57592  
 57593  POSSESSIVE_GROUP:
 57594  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = Tuint32_t(DFALSE)                         // Never matched
 57595  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode // Start of this group
 57596  
 57597  __3048:
 57598  
 57599  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Feptr // Position at group start
 57600  	group_frame_type = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 57601  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 57602  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM8
 57603  	goto MATCH_RECURSE
 57604  L_RM8:
 57605  	;
 57606  
 57607  	if !(rrc == -998) {
 57608  		goto __3051
 57609  	}
 57610  
 57611  	*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) = Tuint32_t(DTRUE) // Matched at least once
 57612  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))) {
 57613  		goto __3052
 57614  	} /* Empty match; skip to end */
 57615  
 57616  __3053:
 57617  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57618  	goto __3054
 57619  __3054:
 57620  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT {
 57621  		goto __3053
 57622  	}
 57623  	goto __3055
 57624  __3055:
 57625  	;
 57626  	goto __3050
 57627  __3052:
 57628  	;
 57629  
 57630  	(*Theapframe)(unsafe.Pointer(F)).Fecode = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8 + 1*8))
 57631  	goto __3049
 57632  __3051:
 57633  	;
 57634  
 57635  	// See comment above about handling THEN.
 57636  
 57637  	if !(rrc == -993) {
 57638  		goto __3056
 57639  	}
 57640  
 57641  	next_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57642  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_ecode_ptr < next_ecode && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_ecode))) == OP_ALT)) {
 57643  		goto __3057
 57644  	}
 57645  	rrc = DMATCH_NOMATCH
 57646  __3057:
 57647  	;
 57648  __3056:
 57649  	;
 57650  
 57651  	if !(rrc != DMATCH_NOMATCH) {
 57652  		goto __3058
 57653  	}
 57654  	rrc = rrc
 57655  	goto RETURN_SWITCH
 57656  __3058:
 57657  	;
 57658  
 57659  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57660  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) != OP_ALT) {
 57661  		goto __3059
 57662  	}
 57663  	goto __3050
 57664  __3059:
 57665  	;
 57666  	goto __3049
 57667  __3049:
 57668  	goto __3048
 57669  	goto __3050
 57670  __3050:
 57671  	;
 57672  
 57673  	// Success if matched something or zero repeat allowed
 57674  
 57675  	if !(*(*Tuint32_t)(unsafe.Pointer(F + 56 + 1*4)) != 0 || *(*Tuint32_t)(unsafe.Pointer(F + 56 + 2*4)) != 0) {
 57676  		goto __3060
 57677  	}
 57678  
 57679  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE)
 57680  	goto __13
 57681  __3060:
 57682  	;
 57683  
 57684  	rrc = DMATCH_NOMATCH
 57685  	goto RETURN_SWITCH
 57686  
 57687  	// =====================================================================
 57688  	// Handle non-capturing brackets that cannot match an empty string. When we
 57689  	//     get to the final alternative within the brackets, as long as there are no
 57690  	//     THEN's in the pattern, we can optimize by not recording a new backtracking
 57691  	//     point. (Ideally we should test for a THEN within this group, but we don't
 57692  	//     have that information.) Don't do this if we are at the very top level,
 57693  	//     however, because that would make handling assertions and once-only brackets
 57694  	//     messier when there is nothing to go back to.
 57695  
 57696  __119:
 57697  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fhasthen != 0 || (*Theapframe)(unsafe.Pointer(F)).Frdepth == Tuint32_t(0)) {
 57698  		goto __3061
 57699  	}
 57700  
 57701  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(0)
 57702  	goto GROUPLOOP
 57703  __3061:
 57704  	;
 57705  
 57706  __3062:
 57707  
 57708  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57709  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))) != OP_ALT) {
 57710  		goto __3065
 57711  	}
 57712  	goto __3064
 57713  __3065:
 57714  	;
 57715  
 57716  	/* This is never the final branch. We do not need to test for MATCH_THEN
 57717  	   here because this code is not used when there is a THEN in the pattern. */
 57718  
 57719  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 57720  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM1
 57721  	goto MATCH_RECURSE
 57722  L_RM1:
 57723  	;
 57724  
 57725  	if !(rrc != DMATCH_NOMATCH) {
 57726  		goto __3066
 57727  	}
 57728  	rrc = rrc
 57729  	goto RETURN_SWITCH
 57730  __3066:
 57731  	;
 57732  
 57733  	(*Theapframe)(unsafe.Pointer(F)).Fecode = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))
 57734  	goto __3063
 57735  __3063:
 57736  	goto __3062
 57737  	goto __3064
 57738  __3064:
 57739  	;
 57740  
 57741  	// Hit the start of the final branch. Continue at this level.
 57742  
 57743  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 57744  	goto __13
 57745  
 57746  	// =====================================================================
 57747  	// Handle a capturing bracket, other than those that are possessive with an
 57748  	//     unlimited repeat.
 57749  
 57750  __120:
 57751  __121:
 57752  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = DGF_CAPTURE | uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4))))
 57753  	goto GROUPLOOP
 57754  
 57755  	// =====================================================================
 57756  	// Atomic groups and non-capturing brackets that can match an empty string
 57757  	//     must record a backtracking point and also set up a chained frame.
 57758  
 57759  __122:
 57760  __123:
 57761  __124:
 57762  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = DGF_NOCAPTURE | uint32((*Theapframe)(unsafe.Pointer(F)).Fop)
 57763  
 57764  GROUPLOOP:
 57765  __3067:
 57766  
 57767  	group_frame_type = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 57768  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 57769  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM2
 57770  	goto MATCH_RECURSE
 57771  L_RM2:
 57772  	;
 57773  
 57774  	if !(rrc == -993) {
 57775  		goto __3070
 57776  	}
 57777  
 57778  	next_ecode1 = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57779  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_ecode_ptr < next_ecode1 && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_ecode1))) == OP_ALT)) {
 57780  		goto __3071
 57781  	}
 57782  	rrc = DMATCH_NOMATCH
 57783  __3071:
 57784  	;
 57785  __3070:
 57786  	;
 57787  	if !(rrc != DMATCH_NOMATCH) {
 57788  		goto __3072
 57789  	}
 57790  	rrc = rrc
 57791  	goto RETURN_SWITCH
 57792  __3072:
 57793  	;
 57794  
 57795  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57796  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) != OP_ALT) {
 57797  		goto __3073
 57798  	}
 57799  	rrc = DMATCH_NOMATCH
 57800  	goto RETURN_SWITCH
 57801  __3073:
 57802  	;
 57803  
 57804  	goto __3068
 57805  __3068:
 57806  	goto __3067
 57807  	goto __3069
 57808  __3069:
 57809  	;
 57810  	// Control never reaches here.
 57811  
 57812  	// =====================================================================
 57813  	// Recursion either matches the current regex, or some subexpression. The
 57814  	//     offset data is the offset to the starting bracket from the start of the
 57815  	//     whole pattern. (This is so that it works from duplicated subpatterns.)
 57816  
 57817  __125:
 57818  	bracode = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57819  	if bracode == (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_code {
 57820  		number = uint32(0)
 57821  	} else {
 57822  		number = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 4))))
 57823  	}
 57824  
 57825  	// If we are already in a recursion, check for repeating the same one
 57826  	//     without advancing the subject pointer. This should catch convoluted mutual
 57827  	//     recursions. (Some simple cases are caught at compile time.)
 57828  
 57829  	if !((*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse != DRECURSE_UNSET) {
 57830  		goto __3074
 57831  	}
 57832  
 57833  	offset = (*Theapframe)(unsafe.Pointer(F)).Flast_group_offset
 57834  __3075:
 57835  	if !(offset != libc.CplUint64(uint64(0))) {
 57836  		goto __3076
 57837  	}
 57838  
 57839  	N = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames + uintptr(offset)
 57840  	P = N - uintptr(frame_size)
 57841  	if !((*Theapframe)(unsafe.Pointer(N)).Fgroup_frame_type == DGF_RECURSE|number) {
 57842  		goto __3077
 57843  	}
 57844  
 57845  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == (*Theapframe)(unsafe.Pointer(P)).Feptr) {
 57846  		goto __3078
 57847  	}
 57848  	return -52
 57849  __3078:
 57850  	;
 57851  	goto __3076
 57852  __3077:
 57853  	;
 57854  	offset = (*Theapframe)(unsafe.Pointer(P)).Flast_group_offset
 57855  	goto __3075
 57856  __3076:
 57857  	;
 57858  __3074:
 57859  	;
 57860  
 57861  	// Now run the recursion, branch by branch.
 57862  
 57863  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = bracode
 57864  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = DGF_RECURSE | number
 57865  
 57866  __3079:
 57867  
 57868  	group_frame_type = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 57869  	start_ecode = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))])
 57870  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM11
 57871  	goto MATCH_RECURSE
 57872  L_RM11:
 57873  	;
 57874  
 57875  	next_ecode2 = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 2)))))
 57876  
 57877  	// Handle backtracking verbs, which are defined in a range that can
 57878  	//       easily be tested for. PCRE does not allow THEN, SKIP, PRUNE or COMMIT to
 57879  	//       escape beyond a recursion; they cause a NOMATCH for the entire recursion.
 57880  	//
 57881  	//       When one of these verbs triggers, the current recursion group number is
 57882  	//       recorded. If it matches the recursion we are processing, the verb
 57883  	//       happened within the recursion and we must deal with it. Otherwise it must
 57884  	//       have happened after the recursion completed, and so has to be passed
 57885  	//       back. See comment above about handling THEN.
 57886  
 57887  	if !(rrc >= -997 && rrc <= -993 && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse == *(*Tuint32_t)(unsafe.Pointer(F + 56))^DGF_RECURSE) {
 57888  		goto __3082
 57889  	}
 57890  
 57891  	if !(rrc == -993 && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_ecode_ptr < next_ecode2 && (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))) == OP_ALT || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(next_ecode2))) == OP_ALT)) {
 57892  		goto __3083
 57893  	}
 57894  	rrc = DMATCH_NOMATCH
 57895  	goto __3084
 57896  __3083:
 57897  	rrc = DMATCH_NOMATCH
 57898  	goto RETURN_SWITCH
 57899  __3084:
 57900  	;
 57901  
 57902  __3082:
 57903  	;
 57904  
 57905  	// Note that carrying on after (*ACCEPT) in a recursion is handled in the
 57906  	//       OP_ACCEPT code. Nothing needs to be done here.
 57907  
 57908  	if !(rrc != DMATCH_NOMATCH) {
 57909  		goto __3085
 57910  	}
 57911  	rrc = rrc
 57912  	goto RETURN_SWITCH
 57913  __3085:
 57914  	;
 57915  
 57916  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = next_ecode2
 57917  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))) != OP_ALT) {
 57918  		goto __3086
 57919  	}
 57920  	rrc = DMATCH_NOMATCH
 57921  	goto RETURN_SWITCH
 57922  __3086:
 57923  	;
 57924  
 57925  	goto __3080
 57926  __3080:
 57927  	goto __3079
 57928  	goto __3081
 57929  __3081:
 57930  	;
 57931  	// Control never reaches here.
 57932  
 57933  	// =====================================================================
 57934  	// Positive assertions are like other groups except that PCRE doesn't allow
 57935  	//     the effect of (*THEN) to escape beyond an assertion; it is therefore
 57936  	//     treated as NOMATCH. (*ACCEPT) is treated as successful assertion, with its
 57937  	//     captures and mark retained. Any other return is an error.
 57938  
 57939  __126:
 57940  __127:
 57941  __128:
 57942  __129:
 57943  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = DGF_NOCAPTURE | uint32((*Theapframe)(unsafe.Pointer(F)).Fop)
 57944  __3087:
 57945  
 57946  	group_frame_type = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 57947  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 57948  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM3
 57949  	goto MATCH_RECURSE
 57950  L_RM3:
 57951  	;
 57952  
 57953  	if !(rrc == -999) {
 57954  		goto __3090
 57955  	}
 57956  
 57957  	libc.X__builtin___memcpy_chk(tls, F+128, assert_accept_frame+uintptr(uint64(uintptr(0)+128)), (*Theapframe)(unsafe.Pointer(assert_accept_frame)).Foffset_top*Tsize_t(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, F+128, 0))
 57958  	(*Theapframe)(unsafe.Pointer(F)).Foffset_top = (*Theapframe)(unsafe.Pointer(assert_accept_frame)).Foffset_top
 57959  	(*Theapframe)(unsafe.Pointer(F)).Fmark = (*Theapframe)(unsafe.Pointer(assert_accept_frame)).Fmark
 57960  	goto __3089
 57961  __3090:
 57962  	;
 57963  	if !(rrc != DMATCH_NOMATCH && rrc != -993) {
 57964  		goto __3091
 57965  	}
 57966  	rrc = rrc
 57967  	goto RETURN_SWITCH
 57968  __3091:
 57969  	;
 57970  
 57971  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57972  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) != OP_ALT) {
 57973  		goto __3092
 57974  	}
 57975  	rrc = DMATCH_NOMATCH
 57976  	goto RETURN_SWITCH
 57977  __3092:
 57978  	;
 57979  
 57980  	goto __3088
 57981  __3088:
 57982  	goto __3087
 57983  	goto __3089
 57984  __3089:
 57985  	;
 57986  
 57987  __3093:
 57988  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 57989  	goto __3094
 57990  __3094:
 57991  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT {
 57992  		goto __3093
 57993  	}
 57994  	goto __3095
 57995  __3095:
 57996  	;
 57997  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE)
 57998  	goto __13
 57999  
 58000  	// =====================================================================
 58001  	// Handle negative assertions. Loop for each non-matching branch as for
 58002  	//     positive assertions.
 58003  
 58004  __130:
 58005  __131:
 58006  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = DGF_NOCAPTURE | uint32((*Theapframe)(unsafe.Pointer(F)).Fop)
 58007  
 58008  __3096:
 58009  
 58010  	group_frame_type = *(*Tuint32_t)(unsafe.Pointer(F + 56))
 58011  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 58012  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM4
 58013  	goto MATCH_RECURSE
 58014  L_RM4:
 58015  	;
 58016  
 58017  	switch rrc {
 58018  	case -999:
 58019  		goto __3100 // Assertion matched, therefore it fails.
 58020  	case DMATCH_MATCH:
 58021  		goto __3101
 58022  
 58023  	case DMATCH_NOMATCH:
 58024  		goto __3102 // Branch failed, try next if present.
 58025  	case -993:
 58026  		goto __3103
 58027  
 58028  	case -997:
 58029  		goto __3104 // Assertion forced to fail, therefore continue.
 58030  	case -995:
 58031  		goto __3105
 58032  	case -996:
 58033  		goto __3106
 58034  
 58035  	default:
 58036  		goto __3107
 58037  	}
 58038  	goto __3099
 58039  
 58040  __3100: // Assertion matched, therefore it fails.
 58041  __3101:
 58042  	rrc = DMATCH_NOMATCH
 58043  	goto RETURN_SWITCH
 58044  
 58045  __3102: // Branch failed, try next if present.
 58046  __3103:
 58047  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 58048  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) != OP_ALT) {
 58049  		goto __3108
 58050  	}
 58051  	goto ASSERT_NOT_FAILED
 58052  __3108:
 58053  	;
 58054  	goto __3099
 58055  
 58056  __3104: // Assertion forced to fail, therefore continue.
 58057  __3105:
 58058  __3106:
 58059  __3109:
 58060  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 58061  	goto __3110
 58062  __3110:
 58063  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT {
 58064  		goto __3109
 58065  	}
 58066  	goto __3111
 58067  __3111:
 58068  	;
 58069  	goto ASSERT_NOT_FAILED
 58070  
 58071  __3107: /* Pass back any other return */
 58072  	rrc = rrc
 58073  	goto RETURN_SWITCH
 58074  
 58075  __3099:
 58076  	;
 58077  	goto __3097
 58078  __3097:
 58079  	goto __3096
 58080  	goto __3098
 58081  __3098:
 58082  	;
 58083  
 58084  	// None of the branches have matched or there was a backtrack to (*COMMIT),
 58085  	//     (*SKIP), (*PRUNE), or (*THEN) in the last branch. This is success for a
 58086  	//     negative assertion, so carry on.
 58087  
 58088  ASSERT_NOT_FAILED:
 58089  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE)
 58090  	goto __13
 58091  
 58092  	// =====================================================================
 58093  	// The callout item calls an external function, if one is provided, passing
 58094  	//     details of the match so far. This is mainly for debugging, though the
 58095  	//     function is able to force a failure.
 58096  
 58097  __132:
 58098  __133:
 58099  	rrc = do_callout(tls, F, mb, bp)
 58100  	if !(rrc > 0) {
 58101  		goto __3112
 58102  	}
 58103  	rrc = DMATCH_NOMATCH
 58104  	goto RETURN_SWITCH
 58105  __3112:
 58106  	;
 58107  
 58108  	if !(rrc < 0) {
 58109  		goto __3113
 58110  	}
 58111  	rrc = rrc
 58112  	goto RETURN_SWITCH
 58113  __3113:
 58114  	;
 58115  
 58116  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp)))
 58117  	goto __13
 58118  
 58119  	// =====================================================================
 58120  	// Conditional group: compilation checked that there are no more than two
 58121  	//     branches. If the condition is false, skipping the first branch takes us
 58122  	//     past the end of the item if there is only one branch, but that's exactly
 58123  	//     what we want.
 58124  
 58125  __134:
 58126  __135:
 58127  
 58128  	// The variable Flength will be added to Fecode when the condition is
 58129  	//     false, to get to the second branch. Setting it to the offset to the ALT or
 58130  	//     KET, then incrementing Fecode achieves this effect. However, if the second
 58131  	//     branch is non-existent, we must point to the KET so that the end of the
 58132  	//     group is correctly processed. We now have Fecode pointing to the condition
 58133  	//     or callout.
 58134  
 58135  	(*Theapframe)(unsafe.Pointer(F)).Flength = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))) // Offset to the second branch
 58136  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr((*Theapframe)(unsafe.Pointer(F)).Flength)))) != OP_ALT) {
 58137  		goto __3114
 58138  	}
 58139  	*(*Tsize_t)(unsafe.Pointer(F + 24)) -= uint64(1 + DLINK_SIZE)
 58140  __3114:
 58141  	;
 58142  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE) // From this opcode
 58143  
 58144  	// Because of the way auto-callout works during compile, a callout item is
 58145  	//     inserted between OP_COND and an assertion condition. Such a callout can
 58146  	//     also be inserted manually.
 58147  
 58148  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_CALLOUT || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_CALLOUT_STR) {
 58149  		goto __3115
 58150  	}
 58151  
 58152  	rrc = do_callout(tls, F, mb, bp)
 58153  	if !(rrc > 0) {
 58154  		goto __3116
 58155  	}
 58156  	rrc = DMATCH_NOMATCH
 58157  	goto RETURN_SWITCH
 58158  __3116:
 58159  	;
 58160  
 58161  	if !(rrc < 0) {
 58162  		goto __3117
 58163  	}
 58164  	rrc = rrc
 58165  	goto RETURN_SWITCH
 58166  __3117:
 58167  	;
 58168  
 58169  	// Advance Fecode past the callout, so it now points to the condition. We
 58170  	//       must adjust Flength so that the value of Fecode+Flength is unchanged.
 58171  
 58172  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(*(*Tsize_t)(unsafe.Pointer(bp)))
 58173  	*(*Tsize_t)(unsafe.Pointer(F + 24)) -= *(*Tsize_t)(unsafe.Pointer(bp))
 58174  __3115:
 58175  	;
 58176  
 58177  	// Test the various possible conditions
 58178  
 58179  	condition = DFALSE
 58180  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) {
 58181  	case OP_RREF:
 58182  		goto __3119
 58183  
 58184  	case OP_DNRREF:
 58185  		goto __3120
 58186  
 58187  	case OP_CREF:
 58188  		goto __3121
 58189  
 58190  	case OP_DNCREF:
 58191  		goto __3122
 58192  
 58193  	case OP_FALSE:
 58194  		goto __3123
 58195  	case OP_FAIL:
 58196  		goto __3124
 58197  
 58198  	case OP_TRUE:
 58199  		goto __3125
 58200  
 58201  	// The condition is an assertion. Run code similar to the assertion code
 58202  	//       above.
 58203  
 58204  	default:
 58205  		goto __3126
 58206  	}
 58207  	goto __3118
 58208  
 58209  __3119: // Group recursion test
 58210  	if !((*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse != DRECURSE_UNSET) {
 58211  		goto __3127
 58212  	}
 58213  
 58214  	number = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 58215  	condition = libc.Bool32(number == Tuint32_t(DRREF_ANY) || number == (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse)
 58216  __3127:
 58217  	;
 58218  	goto __3118
 58219  
 58220  __3120: // Duplicate named group recursion test
 58221  	if !((*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse != DRECURSE_UNSET) {
 58222  		goto __3128
 58223  	}
 58224  
 58225  	count1 = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))))
 58226  	slot1 = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_table + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))*uint32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_entry_size))
 58227  __3129:
 58228  	if !(libc.PostDecInt32(&count1, 1) > 0) {
 58229  		goto __3130
 58230  	}
 58231  
 58232  	number = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot1 + 1))))
 58233  	condition = libc.Bool32(number == (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse)
 58234  	if !(condition != 0) {
 58235  		goto __3131
 58236  	}
 58237  	goto __3130
 58238  __3131:
 58239  	;
 58240  	slot1 += TPCRE2_SPTR8((*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_entry_size)
 58241  	goto __3129
 58242  __3130:
 58243  	;
 58244  __3128:
 58245  	;
 58246  	goto __3118
 58247  
 58248  __3121: // Numbered group used test
 58249  	offset = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))<<1 - uint32(2)) // Doubled ref number
 58250  	condition = libc.Bool32(offset < (*Theapframe)(unsafe.Pointer(F)).Foffset_top && *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset)*8)) != libc.CplUint64(uint64(0)))
 58251  	goto __3118
 58252  
 58253  __3122: /* Duplicate named group used test */
 58254  
 58255  	count2 = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 4)))))
 58256  	slot2 = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_table + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))*uint32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_entry_size))
 58257  __3132:
 58258  	if !(libc.PostDecInt32(&count2, 1) > 0) {
 58259  		goto __3133
 58260  	}
 58261  
 58262  	offset = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot2)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot2 + 1))))<<1 - uint32(2))
 58263  	condition = libc.Bool32(offset < (*Theapframe)(unsafe.Pointer(F)).Foffset_top && *(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset)*8)) != libc.CplUint64(uint64(0)))
 58264  	if !(condition != 0) {
 58265  		goto __3134
 58266  	}
 58267  	goto __3133
 58268  __3134:
 58269  	;
 58270  	slot2 += TPCRE2_SPTR8((*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_entry_size)
 58271  	goto __3132
 58272  __3133:
 58273  	;
 58274  
 58275  	goto __3118
 58276  
 58277  __3123:
 58278  __3124: // The assertion (?!) becomes OP_FAIL
 58279  	goto __3118
 58280  
 58281  __3125:
 58282  	condition = DTRUE
 58283  	goto __3118
 58284  
 58285  	// The condition is an assertion. Run code similar to the assertion code
 58286  	//       above.
 58287  
 58288  __3126:
 58289  	*(*Tuint32_t)(unsafe.Pointer(F + 56)) = Tuint32_t(libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ASSERT || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ASSERTBACK))
 58290  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) = (*Theapframe)(unsafe.Pointer(F)).Fecode
 58291  
 58292  __3135:
 58293  
 58294  	group_frame_type = DGF_CONDASSERT | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode)))
 58295  	start_ecode = *(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))])
 58296  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM5
 58297  	goto MATCH_RECURSE
 58298  L_RM5:
 58299  	;
 58300  
 58301  	switch rrc {
 58302  	case -999:
 58303  		goto __3139
 58304  
 58305  	// Fall through
 58306  	// In the case of a match, the captures have already been put into
 58307  	//           the current frame.
 58308  
 58309  	case DMATCH_MATCH:
 58310  		goto __3140
 58311  
 58312  	// PCRE doesn't allow the effect of (*THEN) to escape beyond an
 58313  	//           assertion; it is therefore always treated as NOMATCH.
 58314  
 58315  	case DMATCH_NOMATCH:
 58316  		goto __3141
 58317  	case -993:
 58318  		goto __3142
 58319  
 58320  	// These force no match without checking other branches.
 58321  
 58322  	case -997:
 58323  		goto __3143
 58324  	case -995:
 58325  		goto __3144
 58326  	case -996:
 58327  		goto __3145
 58328  
 58329  	default:
 58330  		goto __3146
 58331  	}
 58332  	goto __3138
 58333  
 58334  __3139: // Save captures
 58335  	libc.X__builtin___memcpy_chk(tls, F+128, assert_accept_frame+uintptr(uint64(uintptr(0)+128)), (*Theapframe)(unsafe.Pointer(assert_accept_frame)).Foffset_top*Tsize_t(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, F+128, 0))
 58336  	(*Theapframe)(unsafe.Pointer(F)).Foffset_top = (*Theapframe)(unsafe.Pointer(assert_accept_frame)).Foffset_top
 58337  
 58338  	// Fall through
 58339  	// In the case of a match, the captures have already been put into
 58340  	//           the current frame.
 58341  
 58342  __3140:
 58343  	condition = TBOOL(*(*Tuint32_t)(unsafe.Pointer(F + 56))) // TRUE for positive assertion
 58344  	goto __3138
 58345  
 58346  	// PCRE doesn't allow the effect of (*THEN) to escape beyond an
 58347  	//           assertion; it is therefore always treated as NOMATCH.
 58348  
 58349  __3141:
 58350  __3142:
 58351  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8)) + 2)))))
 58352  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 8))))) == OP_ALT) {
 58353  		goto __3147
 58354  	}
 58355  	goto __3136
 58356  __3147:
 58357  	;                                                                         // Try next branch
 58358  	condition = libc.BoolInt32(!(*(*Tuint32_t)(unsafe.Pointer(F + 56)) != 0)) // TRUE for negative assertion
 58359  	goto __3138
 58360  
 58361  	// These force no match without checking other branches.
 58362  
 58363  __3143:
 58364  __3144:
 58365  __3145:
 58366  	condition = libc.BoolInt32(!(*(*Tuint32_t)(unsafe.Pointer(F + 56)) != 0))
 58367  	goto __3138
 58368  
 58369  __3146:
 58370  	rrc = rrc
 58371  	goto RETURN_SWITCH
 58372  
 58373  __3138:
 58374  	;
 58375  	goto __3137 // Out of the branch loop
 58376  	goto __3136
 58377  __3136:
 58378  	goto __3135
 58379  	goto __3137
 58380  __3137:
 58381  	;
 58382  
 58383  	// If the condition is true, find the end of the assertion so that
 58384  	//       advancing past it gets us to the start of the first branch.
 58385  
 58386  	if !(condition != 0) {
 58387  		goto __3148
 58388  	}
 58389  
 58390  __3149:
 58391  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 58392  	goto __3150
 58393  __3150:
 58394  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT {
 58395  		goto __3149
 58396  	}
 58397  	goto __3151
 58398  __3151:
 58399  	;
 58400  __3148:
 58401  	;
 58402  	goto __3118 // End of assertion condition
 58403  __3118:
 58404  	;
 58405  
 58406  	// Choose branch according to the condition.
 58407  
 58408  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += func() uintptr {
 58409  		if condition != 0 {
 58410  			return uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 58411  		}
 58412  		return uintptr((*Theapframe)(unsafe.Pointer(F)).Flength)
 58413  	}()
 58414  
 58415  	// If the opcode is OP_SCOND it means we are at a repeated conditional
 58416  	//     group that might match an empty string. We must therefore descend a level
 58417  	//     so that the start is remembered for checking. For OP_COND we can just
 58418  	//     continue at this level.
 58419  
 58420  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_SCOND) {
 58421  		goto __3152
 58422  	}
 58423  
 58424  	group_frame_type = DGF_NOCAPTURE | uint32((*Theapframe)(unsafe.Pointer(F)).Fop)
 58425  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode
 58426  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM35
 58427  	goto MATCH_RECURSE
 58428  L_RM35:
 58429  	;
 58430  
 58431  	rrc = rrc
 58432  	goto RETURN_SWITCH
 58433  
 58434  __3152:
 58435  	;
 58436  	goto __13
 58437  
 58438  	// =========================================================================
 58439  	//                  End of start of parenthesis opcodes
 58440  	// =========================================================================
 58441  
 58442  	// =====================================================================
 58443  	// Move the subject pointer back. This occurs only at the start of each
 58444  	//     branch of a lookbehind assertion. If we are too close to the start to move
 58445  	//     back, fail. When working with UTF-8 we move back a number of characters,
 58446  	//     not bytes.
 58447  
 58448  __136:
 58449  	number = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2))))
 58450  	if !(utf != 0) {
 58451  		goto __3153
 58452  	}
 58453  
 58454  __3155:
 58455  	if !(libc.PostDecUint32(&number, 1) > Tuint32_t(0)) {
 58456  		goto __3156
 58457  	}
 58458  
 58459  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject) {
 58460  		goto __3157
 58461  	}
 58462  	rrc = DMATCH_NOMATCH
 58463  	goto RETURN_SWITCH
 58464  __3157:
 58465  	;
 58466  
 58467  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 58468  __3158:
 58469  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))&0xc0 == 0x80) {
 58470  		goto __3159
 58471  	}
 58472  	(*Theapframe)(unsafe.Pointer(F)).Feptr--
 58473  	goto __3158
 58474  __3159:
 58475  	;
 58476  	goto __3155
 58477  __3156:
 58478  	;
 58479  	goto __3154
 58480  __3153:
 58481  
 58482  	/* No UTF-8 support, or not in UTF-8 mode: count is code unit count */
 58483  
 58484  	if !(Tptrdiff_t(number) > (int64((*Theapframe)(unsafe.Pointer(F)).Feptr)-int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject))/1) {
 58485  		goto __3160
 58486  	}
 58487  	rrc = DMATCH_NOMATCH
 58488  	goto RETURN_SWITCH
 58489  __3160:
 58490  	;
 58491  
 58492  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F + 80)) -= TPCRE2_SPTR8(number)
 58493  __3154:
 58494  	;
 58495  
 58496  	// Save the earliest consulted character, then skip to next opcode
 58497  
 58498  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr) {
 58499  		goto __3161
 58500  	}
 58501  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr
 58502  __3161:
 58503  	;
 58504  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE)
 58505  	goto __13
 58506  
 58507  	// =====================================================================
 58508  	// An alternation is the end of a branch; scan along to find the end of the
 58509  	//     bracketed group.
 58510  
 58511  __137:
 58512  __3162:
 58513  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 58514  	goto __3163
 58515  __3163:
 58516  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_ALT {
 58517  		goto __3162
 58518  	}
 58519  	goto __3164
 58520  __3164:
 58521  	;
 58522  	goto __13
 58523  
 58524  	// =====================================================================
 58525  	// The end of a parenthesized group. For all but OP_BRA and OP_COND, the
 58526  	//     starting frame was added to the chained frames in order to remember the
 58527  	//     starting subject position for the group.
 58528  
 58529  __138:
 58530  __139:
 58531  __140:
 58532  __141:
 58533  
 58534  	bracode = (*Theapframe)(unsafe.Pointer(F)).Fecode - uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 58535  
 58536  	// Point N to the frame at the start of the most recent group.
 58537  	//     Remember the subject pointer at the start of the group.
 58538  
 58539  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) != OP_BRA && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) != OP_COND) {
 58540  		goto __3165
 58541  	}
 58542  
 58543  	N = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames + uintptr((*Theapframe)(unsafe.Pointer(F)).Flast_group_offset)
 58544  	P = N - uintptr(frame_size)
 58545  	(*Theapframe)(unsafe.Pointer(F)).Flast_group_offset = (*Theapframe)(unsafe.Pointer(P)).Flast_group_offset
 58546  
 58547  	// If we are at the end of an assertion that is a condition, return a
 58548  	//       match, discarding any intermediate backtracking points. Copy back the
 58549  	//       mark setting and the captures into the frame before N so that they are
 58550  	//       set on return. Doing this for all assertions, both positive and negative,
 58551  	//       seems to match what Perl does.
 58552  
 58553  	if !((*Theapframe)(unsafe.Pointer(N)).Fgroup_frame_type&0xffff0000 == DGF_CONDASSERT) {
 58554  		goto __3167
 58555  	}
 58556  
 58557  	libc.X__builtin___memcpy_chk(tls, P+uintptr(uint64(uintptr(0)+128)), F+128, (*Theapframe)(unsafe.Pointer(F)).Foffset_top*Tsize_t(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, P+uintptr(uint64(uintptr(0)+128)), 0))
 58558  	(*Theapframe)(unsafe.Pointer(P)).Foffset_top = (*Theapframe)(unsafe.Pointer(F)).Foffset_top
 58559  	(*Theapframe)(unsafe.Pointer(P)).Fmark = (*Theapframe)(unsafe.Pointer(F)).Fmark
 58560  	(*Theapframe)(unsafe.Pointer(F)).Fback_frame = Tsize_t((int64(F) - int64(P)) / 1)
 58561  	rrc = DMATCH_MATCH
 58562  	goto RETURN_SWITCH
 58563  
 58564  __3167:
 58565  	;
 58566  	goto __3166
 58567  __3165:
 58568  	P = uintptr(0)
 58569  __3166:
 58570  	; // Indicates starting frame not recorded
 58571  
 58572  	// The group was not a conditional assertion.
 58573  
 58574  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode))) {
 58575  	case OP_BRA:
 58576  		goto __3169 // No need to do anything for these
 58577  	case OP_COND:
 58578  		goto __3170
 58579  	case OP_SCOND:
 58580  		goto __3171
 58581  
 58582  	// Non-atomic positive assertions are like OP_BRA, except that the
 58583  	//       subject pointer must be put back to where it was at the start of the
 58584  	//       assertion.
 58585  
 58586  	case OP_ASSERT_NA:
 58587  		goto __3172
 58588  	case OP_ASSERTBACK_NA:
 58589  		goto __3173
 58590  
 58591  	// Atomic positive assertions are like OP_ONCE, except that in addition
 58592  	//       the subject pointer must be put back to where it was at the start of the
 58593  	//       assertion.
 58594  
 58595  	case OP_ASSERT:
 58596  		goto __3174
 58597  	case OP_ASSERTBACK:
 58598  		goto __3175
 58599  	// Fall through
 58600  
 58601  	// For an atomic group, discard internal backtracking points. We must
 58602  	//       also ensure that any remaining branches within the top-level of the group
 58603  	//       are not tried. Do this by adjusting the code pointer within the backtrack
 58604  	//       frame so that it points to the final branch.
 58605  
 58606  	case OP_ONCE:
 58607  		goto __3176
 58608  
 58609  	// A matching negative assertion returns MATCH, which is turned into
 58610  	//       NOMATCH at the assertion level.
 58611  
 58612  	case OP_ASSERT_NOT:
 58613  		goto __3177
 58614  	case OP_ASSERTBACK_NOT:
 58615  		goto __3178
 58616  
 58617  	// At the end of a script run, apply the script-checking rules. This code
 58618  	//       will never by exercised if Unicode support it not compiled, because in
 58619  	//       that environment script runs cause an error at compile time.
 58620  
 58621  	case OP_SCRIPT_RUN:
 58622  		goto __3179
 58623  
 58624  	// Whole-pattern recursion is coded as a recurse into group 0, so it
 58625  	//       won't be picked up here. Instead, we catch it when the OP_END is reached.
 58626  	//       Other recursion is handled here.
 58627  
 58628  	case OP_CBRA:
 58629  		goto __3180
 58630  	case OP_CBRAPOS:
 58631  		goto __3181
 58632  	case OP_SCBRA:
 58633  		goto __3182
 58634  	case OP_SCBRAPOS:
 58635  		goto __3183
 58636  	}
 58637  	goto __3168
 58638  
 58639  __3169: // No need to do anything for these
 58640  __3170:
 58641  __3171:
 58642  	goto __3168
 58643  
 58644  	// Non-atomic positive assertions are like OP_BRA, except that the
 58645  	//       subject pointer must be put back to where it was at the start of the
 58646  	//       assertion.
 58647  
 58648  __3172:
 58649  __3173:
 58650  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 58651  		goto __3184
 58652  	}
 58653  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr
 58654  __3184:
 58655  	;
 58656  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Theapframe)(unsafe.Pointer(P)).Feptr
 58657  	goto __3168
 58658  
 58659  	// Atomic positive assertions are like OP_ONCE, except that in addition
 58660  	//       the subject pointer must be put back to where it was at the start of the
 58661  	//       assertion.
 58662  
 58663  __3174:
 58664  __3175:
 58665  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 58666  		goto __3185
 58667  	}
 58668  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr
 58669  __3185:
 58670  	;
 58671  	(*Theapframe)(unsafe.Pointer(F)).Feptr = (*Theapframe)(unsafe.Pointer(P)).Feptr
 58672  	// Fall through
 58673  
 58674  	// For an atomic group, discard internal backtracking points. We must
 58675  	//       also ensure that any remaining branches within the top-level of the group
 58676  	//       are not tried. Do this by adjusting the code pointer within the backtrack
 58677  	//       frame so that it points to the final branch.
 58678  
 58679  __3176:
 58680  	(*Theapframe)(unsafe.Pointer(F)).Fback_frame = Tsize_t((int64(F) - int64(P)) / 1)
 58681  __3186:
 58682  
 58683  	y = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(P)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(P)).Fecode + 2))))
 58684  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(P)).Fecode + uintptr(y)))) != OP_ALT) {
 58685  		goto __3189
 58686  	}
 58687  	goto __3188
 58688  __3189:
 58689  	;
 58690  	*(*TPCRE2_SPTR8)(unsafe.Pointer(P)) += TPCRE2_SPTR8(y)
 58691  	goto __3187
 58692  __3187:
 58693  	goto __3186
 58694  	goto __3188
 58695  __3188:
 58696  	;
 58697  	goto __3168
 58698  
 58699  	// A matching negative assertion returns MATCH, which is turned into
 58700  	//       NOMATCH at the assertion level.
 58701  
 58702  __3177:
 58703  __3178:
 58704  	rrc = DMATCH_MATCH
 58705  	goto RETURN_SWITCH
 58706  
 58707  	// At the end of a script run, apply the script-checking rules. This code
 58708  	//       will never by exercised if Unicode support it not compiled, because in
 58709  	//       that environment script runs cause an error at compile time.
 58710  
 58711  __3179:
 58712  	if !!(X_pcre2_script_run_8(tls, (*Theapframe)(unsafe.Pointer(P)).Feptr, (*Theapframe)(unsafe.Pointer(F)).Feptr, utf) != 0) {
 58713  		goto __3190
 58714  	}
 58715  	rrc = DMATCH_NOMATCH
 58716  	goto RETURN_SWITCH
 58717  __3190:
 58718  	;
 58719  
 58720  	goto __3168
 58721  
 58722  	// Whole-pattern recursion is coded as a recurse into group 0, so it
 58723  	//       won't be picked up here. Instead, we catch it when the OP_END is reached.
 58724  	//       Other recursion is handled here.
 58725  
 58726  __3180:
 58727  __3181:
 58728  __3182:
 58729  __3183:
 58730  	number = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bracode + 4))))
 58731  
 58732  	// Handle a recursively called group. We reinstate the previous set of
 58733  	//       captures and then carry on after the recursion call.
 58734  
 58735  	if !((*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse == number) {
 58736  		goto __3191
 58737  	}
 58738  
 58739  	P = N - uintptr(frame_size)
 58740  	libc.X__builtin___memcpy_chk(tls, F+uintptr(uint64(uintptr(0)+128)), P+128, (*Theapframe)(unsafe.Pointer(P)).Foffset_top*Tsize_t(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, F+uintptr(uint64(uintptr(0)+128)), 0))
 58741  	(*Theapframe)(unsafe.Pointer(F)).Foffset_top = (*Theapframe)(unsafe.Pointer(P)).Foffset_top
 58742  	(*Theapframe)(unsafe.Pointer(F)).Fcapture_last = (*Theapframe)(unsafe.Pointer(P)).Fcapture_last
 58743  	(*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse = (*Theapframe)(unsafe.Pointer(P)).Fcurrent_recurse
 58744  	(*Theapframe)(unsafe.Pointer(F)).Fecode = (*Theapframe)(unsafe.Pointer(P)).Fecode + uintptr(1) + uintptr(DLINK_SIZE)
 58745  	goto __11 // With next opcode
 58746  __3191:
 58747  	;
 58748  
 58749  	// Deal with actual capturing.
 58750  
 58751  	offset = Tsize_t(number<<1 - Tuint32_t(2))
 58752  	(*Theapframe)(unsafe.Pointer(F)).Fcapture_last = number
 58753  	*(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset)*8)) = Tsize_t((int64((*Theapframe)(unsafe.Pointer(P)).Feptr) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 58754  	*(*Tsize_t)(unsafe.Pointer(F + 128 + uintptr(offset+uint64(1))*8)) = Tsize_t((int64((*Theapframe)(unsafe.Pointer(F)).Feptr) - int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject)) / 1)
 58755  	if !(offset >= (*Theapframe)(unsafe.Pointer(F)).Foffset_top) {
 58756  		goto __3192
 58757  	}
 58758  	(*Theapframe)(unsafe.Pointer(F)).Foffset_top = offset + uint64(2)
 58759  __3192:
 58760  	;
 58761  	goto __3168
 58762  __3168:
 58763  	; // End actions relating to the starting opcode
 58764  
 58765  	// OP_KETRPOS is a possessive repeating ket. Remember the current position,
 58766  	//     and return the MATCH_KETRPOS. This makes it possible to do the repeats one
 58767  	//     at a time from the outer level. This must precede the empty string test -
 58768  	//     in this case that test is done at the outer level.
 58769  
 58770  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))) == OP_KETRPOS) {
 58771  		goto __3193
 58772  	}
 58773  
 58774  	libc.X__builtin___memcpy_chk(tls, P+uintptr(uint64(uintptr(0)+80)), F+uintptr(uint64(uintptr(0)+80)), frame_copy_size, libc.X__builtin_object_size(tls, P+uintptr(uint64(uintptr(0)+80)), 0))
 58775  	rrc = -998
 58776  	goto RETURN_SWITCH
 58777  
 58778  __3193:
 58779  	;
 58780  
 58781  	// Handle the different kinds of closing brackets. A non-repeating ket
 58782  	//     needs no special action, just continuing at this level. This also happens
 58783  	//     for the repeating kets if the group matched no characters, in order to
 58784  	//     forcibly break infinite loops. Otherwise, the repeating kets try the rest
 58785  	//     of the pattern or restart from the preceding bracket, in the appropriate
 58786  	//     order.
 58787  
 58788  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) != OP_KET && (P == uintptr(0) || (*Theapframe)(unsafe.Pointer(F)).Feptr != (*Theapframe)(unsafe.Pointer(P)).Feptr)) {
 58789  		goto __3194
 58790  	}
 58791  
 58792  	if !(int32((*Theapframe)(unsafe.Pointer(F)).Fop) == OP_KETRMIN) {
 58793  		goto __3195
 58794  	}
 58795  
 58796  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(1) + uintptr(DLINK_SIZE)
 58797  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM6
 58798  	goto MATCH_RECURSE
 58799  L_RM6:
 58800  	;
 58801  
 58802  	if !(rrc != DMATCH_NOMATCH) {
 58803  		goto __3196
 58804  	}
 58805  	rrc = rrc
 58806  	goto RETURN_SWITCH
 58807  __3196:
 58808  	;
 58809  
 58810  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) -= TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 2)))))
 58811  	goto __13 // End of ket processing
 58812  __3195:
 58813  	;
 58814  
 58815  	/* Repeat the maximum number of times (KETRMAX) */
 58816  
 58817  	start_ecode = bracode
 58818  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM7
 58819  	goto MATCH_RECURSE
 58820  L_RM7:
 58821  	;
 58822  
 58823  	if !(rrc != DMATCH_NOMATCH) {
 58824  		goto __3197
 58825  	}
 58826  	rrc = rrc
 58827  	goto RETURN_SWITCH
 58828  __3197:
 58829  	;
 58830  
 58831  __3194:
 58832  	;
 58833  
 58834  	// Carry on at this level for a non-repeating ket, or after matching an
 58835  	//     empty string, or after repeating for a maximum number of times.
 58836  
 58837  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(1 + DLINK_SIZE)
 58838  	goto __13
 58839  
 58840  	// =====================================================================
 58841  	// Start and end of line assertions, not multiline mode.
 58842  
 58843  __142: // Start of line, unless PCRE2_NOTBOL is set.
 58844  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr != (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTBOL != Tuint32_t(0)) {
 58845  		goto __3198
 58846  	}
 58847  	rrc = DMATCH_NOMATCH
 58848  	goto RETURN_SWITCH
 58849  __3198:
 58850  	;
 58851  
 58852  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 58853  	goto __13
 58854  
 58855  __143: // Unconditional start of subject
 58856  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr != (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject) {
 58857  		goto __3199
 58858  	}
 58859  	rrc = DMATCH_NOMATCH
 58860  	goto RETURN_SWITCH
 58861  __3199:
 58862  	;
 58863  
 58864  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 58865  	goto __13
 58866  
 58867  	// When PCRE2_NOTEOL is unset, assert before the subject end, or a
 58868  	//     terminating newline unless PCRE2_DOLLAR_ENDONLY is set.
 58869  
 58870  __144:
 58871  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEOL != Tuint32_t(0)) {
 58872  		goto __3200
 58873  	}
 58874  	rrc = DMATCH_NOMATCH
 58875  	goto RETURN_SWITCH
 58876  __3200:
 58877  	;
 58878  
 58879  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_DOLLAR_ENDONLY == Tuint32_t(0)) {
 58880  		goto __3201
 58881  	}
 58882  	goto ASSERT_NL_OR_EOS
 58883  __3201:
 58884  	;
 58885  
 58886  	// Fall through
 58887  	// Unconditional end of subject assertion (\z)
 58888  
 58889  __145:
 58890  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 58891  		goto __3202
 58892  	}
 58893  	rrc = DMATCH_NOMATCH
 58894  	goto RETURN_SWITCH
 58895  __3202:
 58896  	;
 58897  
 58898  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0) {
 58899  		goto __3203
 58900  	}
 58901  
 58902  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 58903  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 58904  		goto __3204
 58905  	}
 58906  	return -2
 58907  __3204:
 58908  	;
 58909  __3203:
 58910  	;
 58911  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 58912  	goto __13
 58913  
 58914  	// End of subject or ending \n assertion (\Z)
 58915  
 58916  __146:
 58917  ASSERT_NL_OR_EOS:
 58918  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (!(func() int32 {
 58919  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 58920  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 58921  		}
 58922  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 58923  	}() != 0) || (*Theapframe)(unsafe.Pointer(F)).Feptr != (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen))) {
 58924  		goto __3205
 58925  	}
 58926  
 58927  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr+uintptr(1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 58928  		goto __3206
 58929  	}
 58930  
 58931  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 58932  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 58933  		goto __3207
 58934  	}
 58935  	return -2
 58936  __3207:
 58937  	;
 58938  __3206:
 58939  	;
 58940  	rrc = DMATCH_NOMATCH
 58941  	goto RETURN_SWITCH
 58942  
 58943  __3205:
 58944  	;
 58945  
 58946  	// Either at end of string or \n before end.
 58947  
 58948  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0) {
 58949  		goto __3208
 58950  	}
 58951  
 58952  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 58953  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 58954  		goto __3209
 58955  	}
 58956  	return -2
 58957  __3209:
 58958  	;
 58959  __3208:
 58960  	;
 58961  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 58962  	goto __13
 58963  
 58964  	// =====================================================================
 58965  	// Start and end of line assertions, multiline mode.
 58966  
 58967  	// Start of subject unless notbol, or after any newline except for one at
 58968  	//     the very end, unless PCRE2_ALT_CIRCUMFLEX is set.
 58969  
 58970  __147:
 58971  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTBOL != Tuint32_t(0) && (*Theapframe)(unsafe.Pointer(F)).Feptr == (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject) {
 58972  		goto __3210
 58973  	}
 58974  	rrc = DMATCH_NOMATCH
 58975  	goto RETURN_SWITCH
 58976  __3210:
 58977  	;
 58978  
 58979  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr != (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject && ((*Theapframe)(unsafe.Pointer(F)).Feptr == (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_ALT_CIRCUMFLEX == Tuint32_t(0) || !(func() int32 {
 58980  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 58981  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject && X_pcre2_was_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject, mb+256, utf) != 0)
 58982  		}
 58983  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr - uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr - uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 58984  	}() != 0))) {
 58985  		goto __3211
 58986  	}
 58987  	rrc = DMATCH_NOMATCH
 58988  	goto RETURN_SWITCH
 58989  __3211:
 58990  	;
 58991  
 58992  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 58993  	goto __13
 58994  
 58995  	// Assert before any newline, or before end of subject unless noteol is
 58996  	//     set.
 58997  
 58998  __148:
 58999  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 59000  		goto __3212
 59001  	}
 59002  
 59003  	if !!(func() int32 {
 59004  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 59005  			return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, (*Theapframe)(unsafe.Pointer(F)).Feptr, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 59006  		}
 59007  		return libc.Bool32((*Theapframe)(unsafe.Pointer(F)).Feptr <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 59008  	}() != 0) {
 59009  		goto __3214
 59010  	}
 59011  
 59012  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && (*Theapframe)(unsafe.Pointer(F)).Feptr+uintptr(1) >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_FIXED) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)))) {
 59013  		goto __3215
 59014  	}
 59015  
 59016  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 59017  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 59018  		goto __3216
 59019  	}
 59020  	return -2
 59021  __3216:
 59022  	;
 59023  __3215:
 59024  	;
 59025  	rrc = DMATCH_NOMATCH
 59026  	goto RETURN_SWITCH
 59027  
 59028  __3214:
 59029  	;
 59030  	goto __3213
 59031  __3212:
 59032  
 59033  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions&DPCRE2_NOTEOL != Tuint32_t(0)) {
 59034  		goto __3217
 59035  	}
 59036  	rrc = DMATCH_NOMATCH
 59037  	goto RETURN_SWITCH
 59038  __3217:
 59039  	;
 59040  
 59041  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 59042  		goto __3218
 59043  	}
 59044  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 59045  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 59046  		goto __3219
 59047  	}
 59048  	return -2
 59049  __3219:
 59050  	;
 59051  __3218:
 59052  	;
 59053  
 59054  __3213:
 59055  	;
 59056  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 59057  	goto __13
 59058  
 59059  	// =====================================================================
 59060  	// Start of match assertion
 59061  
 59062  __149:
 59063  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr != (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_offset)) {
 59064  		goto __3220
 59065  	}
 59066  	rrc = DMATCH_NOMATCH
 59067  	goto RETURN_SWITCH
 59068  __3220:
 59069  	;
 59070  
 59071  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 59072  	goto __13
 59073  
 59074  	// =====================================================================
 59075  	// Reset the start of match point
 59076  
 59077  __150:
 59078  	(*Theapframe)(unsafe.Pointer(F)).Fstart_match = (*Theapframe)(unsafe.Pointer(F)).Feptr
 59079  	(*Theapframe)(unsafe.Pointer(F)).Fecode++
 59080  	goto __13
 59081  
 59082  	// =====================================================================
 59083  	// Word boundary assertions. Find out if the previous and current
 59084  	//     characters are "word" characters. It takes a bit more work in UTF mode.
 59085  	//     Characters > 255 are assumed to be "non-word" characters when PCRE2_UCP is
 59086  	//     not set. When it is set, use Unicode properties if available, even when not
 59087  	//     in UTF mode. Remember the earliest and latest consulted characters.
 59088  
 59089  __151:
 59090  __152:
 59091  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr == (*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject) {
 59092  		goto __3221
 59093  	}
 59094  	prev_is_word = DFALSE
 59095  	goto __3222
 59096  __3221:
 59097  
 59098  	lastptr = (*Theapframe)(unsafe.Pointer(F)).Feptr - uintptr(1)
 59099  	if !(utf != 0) {
 59100  		goto __3223
 59101  	}
 59102  
 59103  __3225:
 59104  	if !(uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr)))&0xc0 == 0x80) {
 59105  		goto __3226
 59106  	}
 59107  	lastptr--
 59108  	goto __3225
 59109  __3226:
 59110  	;
 59111  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr)))
 59112  	if !(fc >= 0xc0) {
 59113  		goto __3227
 59114  	}
 59115  	if !(fc&0x20 == Tuint32_t(0)) {
 59116  		goto __3228
 59117  	}
 59118  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 1)))&0x3f
 59119  	goto __3229
 59120  __3228:
 59121  	if !(fc&0x10 == Tuint32_t(0)) {
 59122  		goto __3230
 59123  	}
 59124  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 2)))&0x3f
 59125  	goto __3231
 59126  __3230:
 59127  	if !(fc&0x08 == Tuint32_t(0)) {
 59128  		goto __3232
 59129  	}
 59130  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 3)))&0x3f
 59131  	goto __3233
 59132  __3232:
 59133  	if !(fc&0x04 == Tuint32_t(0)) {
 59134  		goto __3234
 59135  	}
 59136  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 4)))&0x3f
 59137  	goto __3235
 59138  __3234:
 59139  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr + 5)))&0x3f
 59140  __3235:
 59141  	;
 59142  __3233:
 59143  	;
 59144  __3231:
 59145  	;
 59146  __3229:
 59147  	;
 59148  __3227:
 59149  	;
 59150  
 59151  	goto __3224
 59152  __3223:
 59153  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(lastptr)))
 59154  __3224:
 59155  	;
 59156  	if !(lastptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr) {
 59157  		goto __3236
 59158  	}
 59159  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr = lastptr
 59160  __3236:
 59161  	;
 59162  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UCP != Tuint32_t(0)) {
 59163  		goto __3237
 59164  	}
 59165  
 59166  	if !(fc == Tuint32_t('_')) {
 59167  		goto __3239
 59168  	}
 59169  	prev_is_word = DTRUE
 59170  	goto __3240
 59171  __3239:
 59172  
 59173  	cat = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 59174  	prev_is_word = libc.Bool32(cat == ucp_L || cat == ucp_N)
 59175  __3240:
 59176  	;
 59177  	goto __3238
 59178  __3237:
 59179  	prev_is_word = libc.Bool32(fc <= 255 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word != 0)
 59180  __3238:
 59181  	;
 59182  __3222:
 59183  	;
 59184  
 59185  	// Get status of next character
 59186  
 59187  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 59188  		goto __3241
 59189  	}
 59190  
 59191  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial != 0)) {
 59192  		goto __3243
 59193  	}
 59194  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DTRUE
 59195  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) > 1) {
 59196  		goto __3244
 59197  	}
 59198  	return -2
 59199  __3244:
 59200  	;
 59201  __3243:
 59202  	;
 59203  
 59204  	cur_is_word = DFALSE
 59205  	goto __3242
 59206  __3241:
 59207  
 59208  	nextptr = (*Theapframe)(unsafe.Pointer(F)).Feptr + uintptr(1)
 59209  	if !(utf != 0) {
 59210  		goto __3245
 59211  	}
 59212  
 59213  __3247:
 59214  	if !(nextptr < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(nextptr)))&0xc0 == 0x80) {
 59215  		goto __3248
 59216  	}
 59217  	nextptr++
 59218  	goto __3247
 59219  __3248:
 59220  	;
 59221  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 59222  	if !(fc >= 0xc0) {
 59223  		goto __3249
 59224  	}
 59225  	if !(fc&0x20 == Tuint32_t(0)) {
 59226  		goto __3250
 59227  	}
 59228  	fc = fc&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f
 59229  	goto __3251
 59230  __3250:
 59231  	if !(fc&0x10 == Tuint32_t(0)) {
 59232  		goto __3252
 59233  	}
 59234  	fc = fc&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f
 59235  	goto __3253
 59236  __3252:
 59237  	if !(fc&0x08 == Tuint32_t(0)) {
 59238  		goto __3254
 59239  	}
 59240  	fc = fc&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f
 59241  	goto __3255
 59242  __3254:
 59243  	if !(fc&0x04 == Tuint32_t(0)) {
 59244  		goto __3256
 59245  	}
 59246  	fc = fc&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f
 59247  	goto __3257
 59248  __3256:
 59249  	fc = fc&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr + 5)))&0x3f
 59250  __3257:
 59251  	;
 59252  __3255:
 59253  	;
 59254  __3253:
 59255  	;
 59256  __3251:
 59257  	;
 59258  __3249:
 59259  	;
 59260  
 59261  	goto __3246
 59262  __3245:
 59263  	fc = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Feptr)))
 59264  __3246:
 59265  	;
 59266  	if !(nextptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 59267  		goto __3258
 59268  	}
 59269  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = nextptr
 59270  __3258:
 59271  	;
 59272  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions&DPCRE2_UCP != Tuint32_t(0)) {
 59273  		goto __3259
 59274  	}
 59275  
 59276  	if !(fc == Tuint32_t('_')) {
 59277  		goto __3261
 59278  	}
 59279  	cur_is_word = DTRUE
 59280  	goto __3262
 59281  __3261:
 59282  
 59283  	cat1 = int32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(fc)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(fc)%DUCD_BLOCK_SIZE])*12)).Fchartype])
 59284  	cur_is_word = libc.Bool32(cat1 == ucp_L || cat1 == ucp_N)
 59285  __3262:
 59286  	;
 59287  	goto __3260
 59288  __3259:
 59289  	cur_is_word = libc.Bool32(fc <= 255 && int32(*(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes + uintptr(fc))))&Dctype_word != 0)
 59290  __3260:
 59291  	;
 59292  __3242:
 59293  	;
 59294  
 59295  	// Now see if the situation is what we want
 59296  
 59297  	if !(func() int32 {
 59298  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&(*Theapframe)(unsafe.Pointer(F)).Fecode, 1)))) == OP_WORD_BOUNDARY {
 59299  			return libc.Bool32(cur_is_word == prev_is_word)
 59300  		}
 59301  		return libc.Bool32(cur_is_word != prev_is_word)
 59302  	}() != 0) {
 59303  		goto __3263
 59304  	}
 59305  	rrc = DMATCH_NOMATCH
 59306  	goto RETURN_SWITCH
 59307  __3263:
 59308  	;
 59309  
 59310  	goto __13
 59311  
 59312  	// =====================================================================
 59313  	// Backtracking (*VERB)s, with and without arguments. Note that if the
 59314  	//     pattern is successfully matched, we do not come back from RMATCH.
 59315  
 59316  __153:
 59317  	(*Theapframe)(unsafe.Pointer(F)).Fmark = libc.AssignPtrUintptr(mb+208, (*Theapframe)(unsafe.Pointer(F)).Fecode+uintptr(2))
 59318  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))]) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 59319  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM12
 59320  	goto MATCH_RECURSE
 59321  L_RM12:
 59322  	;
 59323  
 59324  	// A return of MATCH_SKIP_ARG means that matching failed at SKIP with an
 59325  	//     argument, and we must check whether that argument matches this MARK's
 59326  	//     argument. It is passed back in mb->verb_skip_ptr. If it does match, we
 59327  	//     return MATCH_SKIP with mb->verb_skip_ptr now pointing to the subject
 59328  	//     position that corresponds to this mark. Otherwise, pass back the return
 59329  	//     code unaltered.
 59330  
 59331  	if !(rrc == -994 && X_pcre2_strcmp_8(tls, (*Theapframe)(unsafe.Pointer(F)).Fecode+uintptr(2), (*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_skip_ptr) == 0) {
 59332  		goto __3264
 59333  	}
 59334  
 59335  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_skip_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr /* Pass back current position */
 59336  	rrc = -995
 59337  	goto RETURN_SWITCH
 59338  
 59339  __3264:
 59340  	;
 59341  	rrc = rrc
 59342  	goto RETURN_SWITCH
 59343  
 59344  __154:
 59345  	rrc = DMATCH_NOMATCH
 59346  	goto RETURN_SWITCH
 59347  
 59348  	// Record the current recursing group number in mb->verb_current_recurse
 59349  	//     when a backtracking return such as MATCH_COMMIT is given. This enables the
 59350  	//     recurse processing to catch verbs from within the recursion.
 59351  
 59352  __155:
 59353  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 59354  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM13
 59355  	goto MATCH_RECURSE
 59356  L_RM13:
 59357  	;
 59358  
 59359  	if !(rrc != DMATCH_NOMATCH) {
 59360  		goto __3265
 59361  	}
 59362  	rrc = rrc
 59363  	goto RETURN_SWITCH
 59364  __3265:
 59365  	;
 59366  
 59367  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59368  	rrc = -997
 59369  	goto RETURN_SWITCH
 59370  
 59371  __156:
 59372  	(*Theapframe)(unsafe.Pointer(F)).Fmark = libc.AssignPtrUintptr(mb+208, (*Theapframe)(unsafe.Pointer(F)).Fecode+uintptr(2))
 59373  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))]) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 59374  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM36
 59375  	goto MATCH_RECURSE
 59376  L_RM36:
 59377  	;
 59378  
 59379  	if !(rrc != DMATCH_NOMATCH) {
 59380  		goto __3266
 59381  	}
 59382  	rrc = rrc
 59383  	goto RETURN_SWITCH
 59384  __3266:
 59385  	;
 59386  
 59387  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59388  	rrc = -997
 59389  	goto RETURN_SWITCH
 59390  
 59391  __157:
 59392  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 59393  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM14
 59394  	goto MATCH_RECURSE
 59395  L_RM14:
 59396  	;
 59397  
 59398  	if !(rrc != DMATCH_NOMATCH) {
 59399  		goto __3267
 59400  	}
 59401  	rrc = rrc
 59402  	goto RETURN_SWITCH
 59403  __3267:
 59404  	;
 59405  
 59406  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59407  	rrc = -996
 59408  	goto RETURN_SWITCH
 59409  
 59410  __158:
 59411  	(*Theapframe)(unsafe.Pointer(F)).Fmark = libc.AssignPtrUintptr(mb+208, (*Theapframe)(unsafe.Pointer(F)).Fecode+uintptr(2))
 59412  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))]) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 59413  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM15
 59414  	goto MATCH_RECURSE
 59415  L_RM15:
 59416  	;
 59417  
 59418  	if !(rrc != DMATCH_NOMATCH) {
 59419  		goto __3268
 59420  	}
 59421  	rrc = rrc
 59422  	goto RETURN_SWITCH
 59423  __3268:
 59424  	;
 59425  
 59426  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59427  	rrc = -996
 59428  	goto RETURN_SWITCH
 59429  
 59430  __159:
 59431  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 59432  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM16
 59433  	goto MATCH_RECURSE
 59434  L_RM16:
 59435  	;
 59436  
 59437  	if !(rrc != DMATCH_NOMATCH) {
 59438  		goto __3269
 59439  	}
 59440  	rrc = rrc
 59441  	goto RETURN_SWITCH
 59442  __3269:
 59443  	;
 59444  
 59445  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_skip_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr // Pass back current position
 59446  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59447  	rrc = -995
 59448  	goto RETURN_SWITCH
 59449  
 59450  	// Note that, for Perl compatibility, SKIP with an argument does NOT set
 59451  	//     nomatch_mark. When a pattern match ends with a SKIP_ARG for which there was
 59452  	//     not a matching mark, we have to re-run the match, ignoring the SKIP_ARG
 59453  	//     that failed and any that precede it (either they also failed, or were not
 59454  	//     triggered). To do this, we maintain a count of executed SKIP_ARGs. If a
 59455  	//     SKIP_ARG gets to top level, the match is re-run with mb->ignore_skip_arg
 59456  	//     set to the count of the one that failed.
 59457  
 59458  __160:
 59459  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fskip_arg_count++
 59460  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fskip_arg_count <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fignore_skip_arg) {
 59461  		goto __3270
 59462  	}
 59463  
 59464  	*(*TPCRE2_SPTR8)(unsafe.Pointer(F)) += TPCRE2_SPTR8(int32(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))]) + int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1))))
 59465  	goto __13
 59466  __3270:
 59467  	;
 59468  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))]) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 59469  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM17
 59470  	goto MATCH_RECURSE
 59471  L_RM17:
 59472  	;
 59473  
 59474  	if !(rrc != DMATCH_NOMATCH) {
 59475  		goto __3271
 59476  	}
 59477  	rrc = rrc
 59478  	goto RETURN_SWITCH
 59479  __3271:
 59480  	;
 59481  
 59482  	// Pass back the current skip name and return the special MATCH_SKIP_ARG
 59483  	//     return code. This will either be caught by a matching MARK, or get to the
 59484  	//     top, where it causes a rematch with mb->ignore_skip_arg set to the value of
 59485  	//     mb->skip_arg_count.
 59486  
 59487  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_skip_ptr = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(2)
 59488  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59489  	rrc = -994
 59490  	goto RETURN_SWITCH
 59491  
 59492  	// For THEN (and THEN_ARG) we pass back the address of the opcode, so that
 59493  	//     the branch in which it occurs can be determined.
 59494  
 59495  __161:
 59496  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))])
 59497  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM18
 59498  	goto MATCH_RECURSE
 59499  L_RM18:
 59500  	;
 59501  
 59502  	if !(rrc != DMATCH_NOMATCH) {
 59503  		goto __3272
 59504  	}
 59505  	rrc = rrc
 59506  	goto RETURN_SWITCH
 59507  __3272:
 59508  	;
 59509  
 59510  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_ecode_ptr = (*Theapframe)(unsafe.Pointer(F)).Fecode
 59511  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59512  	rrc = -993
 59513  	goto RETURN_SWITCH
 59514  
 59515  __162:
 59516  	(*Theapframe)(unsafe.Pointer(F)).Fmark = libc.AssignPtrUintptr(mb+208, (*Theapframe)(unsafe.Pointer(F)).Fecode+uintptr(2))
 59517  	start_ecode = (*Theapframe)(unsafe.Pointer(F)).Fecode + uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode))]) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Theapframe)(unsafe.Pointer(F)).Fecode + 1)))
 59518  	(*Theapframe)(unsafe.Pointer(F)).Freturn_id = RM19
 59519  	goto MATCH_RECURSE
 59520  L_RM19:
 59521  	;
 59522  
 59523  	if !(rrc != DMATCH_NOMATCH) {
 59524  		goto __3273
 59525  	}
 59526  	rrc = rrc
 59527  	goto RETURN_SWITCH
 59528  __3273:
 59529  	;
 59530  
 59531  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_ecode_ptr = (*Theapframe)(unsafe.Pointer(F)).Fecode
 59532  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_current_recurse = (*Theapframe)(unsafe.Pointer(F)).Fcurrent_recurse
 59533  	rrc = -993
 59534  	goto RETURN_SWITCH
 59535  
 59536  	// =====================================================================
 59537  	// There's been some horrible disaster. Arrival here can only mean there is
 59538  	//     something seriously wrong in the code above or the OP_xxx definitions.
 59539  
 59540  __163:
 59541  	return -44
 59542  __13:
 59543  	;
 59544  
 59545  	// Do not insert any code in here without much thought; it is assumed
 59546  	//   that "continue" in the code above comes out to here to repeat the main
 59547  	//   loop.
 59548  
 59549  	goto __11
 59550  __11:
 59551  	goto __10
 59552  	goto __12
 59553  __12:
 59554  	; // End of main loop
 59555  	// Control never reaches here
 59556  
 59557  	// =========================================================================
 59558  	// The RRETURN() macro jumps here. The number that is saved in Freturn_id
 59559  	// indicates which label we actually want to return to. The value in Frdepth is
 59560  	// the index number of the frame in the vector. The return value has been placed
 59561  	// in rrc.
 59562  
 59563  RETURN_SWITCH:
 59564  	if !((*Theapframe)(unsafe.Pointer(F)).Feptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr) {
 59565  		goto __3274
 59566  	}
 59567  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = (*Theapframe)(unsafe.Pointer(F)).Feptr
 59568  __3274:
 59569  	;
 59570  	if !((*Theapframe)(unsafe.Pointer(F)).Frdepth == Tuint32_t(0)) {
 59571  		goto __3275
 59572  	}
 59573  	return rrc
 59574  __3275:
 59575  	;                                                                                                          // Exit from the top level
 59576  	F = F - uintptr((*Theapframe)(unsafe.Pointer(F)).Fback_frame)                                              // Backtrack
 59577  	*(*Tuint32_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fcb + 104)) |= DPCRE2_CALLOUT_BACKTRACK // Note for callouts
 59578  
 59579  	switch int32((*Theapframe)(unsafe.Pointer(F)).Freturn_id) {
 59580  	case 1:
 59581  		goto __3277
 59582  	case 2:
 59583  		goto __3278
 59584  	case 3:
 59585  		goto __3279
 59586  	case 4:
 59587  		goto __3280
 59588  	case 5:
 59589  		goto __3281
 59590  	case 6:
 59591  		goto __3282
 59592  	case 7:
 59593  		goto __3283
 59594  	case 8:
 59595  		goto __3284
 59596  	case 9:
 59597  		goto __3285
 59598  	case 10:
 59599  		goto __3286
 59600  	case 11:
 59601  		goto __3287
 59602  	case 12:
 59603  		goto __3288
 59604  	case 13:
 59605  		goto __3289
 59606  	case 14:
 59607  		goto __3290
 59608  	case 15:
 59609  		goto __3291
 59610  	case 16:
 59611  		goto __3292
 59612  	case 17:
 59613  		goto __3293
 59614  	case 18:
 59615  		goto __3294
 59616  	case 19:
 59617  		goto __3295
 59618  	case 20:
 59619  		goto __3296
 59620  	case 21:
 59621  		goto __3297
 59622  	case 22:
 59623  		goto __3298
 59624  	case 23:
 59625  		goto __3299
 59626  	case 24:
 59627  		goto __3300
 59628  	case 25:
 59629  		goto __3301
 59630  	case 26:
 59631  		goto __3302
 59632  	case 27:
 59633  		goto __3303
 59634  	case 28:
 59635  		goto __3304
 59636  	case 29:
 59637  		goto __3305
 59638  	case 30:
 59639  		goto __3306
 59640  	case 31:
 59641  		goto __3307
 59642  	case 32:
 59643  		goto __3308
 59644  	case 33:
 59645  		goto __3309
 59646  	case 34:
 59647  		goto __3310
 59648  	case 35:
 59649  		goto __3311
 59650  	case 36:
 59651  		goto __3312
 59652  
 59653  	case 100:
 59654  		goto __3313
 59655  	case 101:
 59656  		goto __3314
 59657  
 59658  	case 200:
 59659  		goto __3315
 59660  	case 201:
 59661  		goto __3316
 59662  	case 202:
 59663  		goto __3317
 59664  	case 203:
 59665  		goto __3318
 59666  	case 204:
 59667  		goto __3319
 59668  	case 205:
 59669  		goto __3320
 59670  	case 206:
 59671  		goto __3321
 59672  	case 207:
 59673  		goto __3322
 59674  	case 208:
 59675  		goto __3323
 59676  	case 209:
 59677  		goto __3324
 59678  	case 210:
 59679  		goto __3325
 59680  	case 211:
 59681  		goto __3326
 59682  	case 212:
 59683  		goto __3327
 59684  	case 213:
 59685  		goto __3328
 59686  	case 214:
 59687  		goto __3329
 59688  	case 215:
 59689  		goto __3330
 59690  	case 216:
 59691  		goto __3331
 59692  	case 217:
 59693  		goto __3332
 59694  	case 218:
 59695  		goto __3333
 59696  	case 219:
 59697  		goto __3334
 59698  	case 220:
 59699  		goto __3335
 59700  	case 221:
 59701  		goto __3336
 59702  	case 222:
 59703  		goto __3337
 59704  	case 223:
 59705  		goto __3338
 59706  	case 224:
 59707  		goto __3339
 59708  	case 225:
 59709  		goto __3340
 59710  
 59711  	default:
 59712  		goto __3341
 59713  	}
 59714  	goto __3276
 59715  
 59716  __3277:
 59717  	goto L_RM1
 59718  __3278:
 59719  	goto L_RM2
 59720  __3279:
 59721  	goto L_RM3
 59722  __3280:
 59723  	goto L_RM4
 59724  __3281:
 59725  	goto L_RM5
 59726  __3282:
 59727  	goto L_RM6
 59728  __3283:
 59729  	goto L_RM7
 59730  __3284:
 59731  	goto L_RM8
 59732  __3285:
 59733  	goto L_RM9
 59734  __3286:
 59735  	goto L_RM10
 59736  __3287:
 59737  	goto L_RM11
 59738  __3288:
 59739  	goto L_RM12
 59740  __3289:
 59741  	goto L_RM13
 59742  __3290:
 59743  	goto L_RM14
 59744  __3291:
 59745  	goto L_RM15
 59746  __3292:
 59747  	goto L_RM16
 59748  __3293:
 59749  	goto L_RM17
 59750  __3294:
 59751  	goto L_RM18
 59752  __3295:
 59753  	goto L_RM19
 59754  __3296:
 59755  	goto L_RM20
 59756  __3297:
 59757  	goto L_RM21
 59758  __3298:
 59759  	goto L_RM22
 59760  __3299:
 59761  	goto L_RM23
 59762  __3300:
 59763  	goto L_RM24
 59764  __3301:
 59765  	goto L_RM25
 59766  __3302:
 59767  	goto L_RM26
 59768  __3303:
 59769  	goto L_RM27
 59770  __3304:
 59771  	goto L_RM28
 59772  __3305:
 59773  	goto L_RM29
 59774  __3306:
 59775  	goto L_RM30
 59776  __3307:
 59777  	goto L_RM31
 59778  __3308:
 59779  	goto L_RM32
 59780  __3309:
 59781  	goto L_RM33
 59782  __3310:
 59783  	goto L_RM34
 59784  __3311:
 59785  	goto L_RM35
 59786  __3312:
 59787  	goto L_RM36
 59788  
 59789  __3313:
 59790  	goto L_RM100
 59791  __3314:
 59792  	goto L_RM101
 59793  
 59794  __3315:
 59795  	goto L_RM200
 59796  __3316:
 59797  	goto L_RM201
 59798  __3317:
 59799  	goto L_RM202
 59800  __3318:
 59801  	goto L_RM203
 59802  __3319:
 59803  	goto L_RM204
 59804  __3320:
 59805  	goto L_RM205
 59806  __3321:
 59807  	goto L_RM206
 59808  __3322:
 59809  	goto L_RM207
 59810  __3323:
 59811  	goto L_RM208
 59812  __3324:
 59813  	goto L_RM209
 59814  __3325:
 59815  	goto L_RM210
 59816  __3326:
 59817  	goto L_RM211
 59818  __3327:
 59819  	goto L_RM212
 59820  __3328:
 59821  	goto L_RM213
 59822  __3329:
 59823  	goto L_RM214
 59824  __3330:
 59825  	goto L_RM215
 59826  __3331:
 59827  	goto L_RM216
 59828  __3332:
 59829  	goto L_RM217
 59830  __3333:
 59831  	goto L_RM218
 59832  __3334:
 59833  	goto L_RM219
 59834  __3335:
 59835  	goto L_RM220
 59836  __3336:
 59837  	goto L_RM221
 59838  __3337:
 59839  	goto L_RM222
 59840  __3338:
 59841  	goto L_RM223
 59842  __3339:
 59843  	goto L_RM224
 59844  __3340:
 59845  	goto L_RM225
 59846  
 59847  __3341:
 59848  	return -44
 59849  __3276:
 59850  	;
 59851  	return int32(0)
 59852  }
 59853  
 59854  // ************************************************
 59855  //
 59856  //           Match a Regular Expression           *
 59857  //
 59858  
 59859  // This function applies a compiled pattern to a subject string and picks out
 59860  // portions of the string if it matches. Two elements in the vector are set for
 59861  // each substring: the offsets to the start and end of the substring.
 59862  //
 59863  // Arguments:
 59864  //   code            points to the compiled expression
 59865  //   subject         points to the subject string
 59866  //   length          length of subject string (may contain binary zeros)
 59867  //   start_offset    where to start in the subject string
 59868  //   options         option bits
 59869  //   match_data      points to a match_data block
 59870  //   mcontext        points a PCRE2 context
 59871  //
 59872  // Returns:          > 0 => success; value is the number of ovector pairs filled
 59873  //                   = 0 => success, but ovector is not big enough
 59874  //                   = -1 => failed to match (PCRE2_ERROR_NOMATCH)
 59875  //                   = -2 => partial match (PCRE2_ERROR_PARTIAL)
 59876  //                   < -2 => some kind of unexpected problem
 59877  
 59878  func Xpcre2_match_8(tls *libc.TLS, code uintptr, subject TPCRE2_SPTR8, length Tsize_t, start_offset Tsize_t, options Tuint32_t, match_data uintptr, mcontext uintptr) int32 { /* pcre2_match.c:6297:1: */
 59879  	bp := tls.Alloc(20880)
 59880  	defer tls.Free(20880)
 59881  
 59882  	var rc int32
 59883  	var was_zero_terminated int32
 59884  	var start_bits uintptr
 59885  	var re uintptr
 59886  	var anchored TBOOL
 59887  	var firstline TBOOL
 59888  	var has_first_cu TBOOL
 59889  	var has_req_cu TBOOL
 59890  	var startline TBOOL
 59891  	var memchr_found_first_cu TPCRE2_SPTR8
 59892  	var memchr_found_first_cu2 TPCRE2_SPTR8
 59893  	var first_cu TPCRE2_UCHAR8
 59894  	var first_cu2 TPCRE2_UCHAR8
 59895  	var req_cu TPCRE2_UCHAR8
 59896  	var req_cu2 TPCRE2_UCHAR8
 59897  	var bumpalong_limit TPCRE2_SPTR8
 59898  	var end_subject TPCRE2_SPTR8
 59899  	var true_end_subject TPCRE2_SPTR8
 59900  	var start_match TPCRE2_SPTR8
 59901  	var req_cu_ptr TPCRE2_SPTR8
 59902  	var start_partial TPCRE2_SPTR8
 59903  	var match_partial TPCRE2_SPTR8
 59904  
 59905  	// This flag is needed even when Unicode is not supported for convenience
 59906  	// (it is used by the IS_NEWLINE macro).
 59907  
 59908  	var utf TBOOL
 59909  	var ucp TBOOL
 59910  	var allow_invalid TBOOL
 59911  	var fragment_options Tuint32_t
 59912  	var frame_size Tsize_t
 59913  
 59914  	// We need to have mb as a pointer to a match block, because the IS_NEWLINE
 59915  	// macro is used below, and it expects NLBLOCK to be defined as a pointer.
 59916  
 59917  	// var cb Tpcre2_callout_block_8 at bp+20768, 112
 59918  
 59919  	// var actual_match_block Tmatch_block_8 at bp, 288
 59920  
 59921  	var mb uintptr
 59922  
 59923  	// Allocate an initial vector of backtracking frames on the stack. If this
 59924  	// proves to be too small, it is replaced by a larger one on the heap. To get a
 59925  	// vector of the size required that is aligned for pointers, allocate it as a
 59926  	// vector of pointers.
 59927  
 59928  	// var stack_frames_vector [2560]TPCRE2_SPTR8 at bp+288, 20480
 59929  
 59930  	var i uint32
 59931  	var skipped_bad_start TBOOL
 59932  	var t TPCRE2_SPTR8
 59933  	var c TPCRE2_UCHAR8
 59934  	var ok TBOOL
 59935  	// In 16-bit and 32_bit modes we have to do our own search, so can
 59936  	//           look for both cases at once.
 59937  
 59938  	// In 8-bit mode, the use of memchr() gives a big speed up, even
 59939  	//           though we have to call it twice in order to find the earliest
 59940  	//           occurrence of the code unit in either of its cases. Caching is used
 59941  	//           to remember the positions of previously found code units. This can
 59942  	//           make a huge difference when the strings are very long and only one
 59943  	//           case is actually present.
 59944  
 59945  	var pp1 TPCRE2_SPTR8
 59946  	var pp2 TPCRE2_SPTR8
 59947  	var searchlength Tsize_t
 59948  	var c1 Tuint32_t
 59949  	var pp TPCRE2_SPTR8
 59950  	var check_length Tsize_t
 59951  	var p TPCRE2_SPTR8
 59952  	var new_start_match TPCRE2_SPTR8
 59953  	was_zero_terminated = 0
 59954  	start_bits = uintptr(0)
 59955  	re = code
 59956  	has_first_cu = DFALSE
 59957  	has_req_cu = DFALSE
 59958  	first_cu = TPCRE2_UCHAR8(0)
 59959  	first_cu2 = TPCRE2_UCHAR8(0)
 59960  	req_cu = TPCRE2_UCHAR8(0)
 59961  	req_cu2 = TPCRE2_UCHAR8(0)
 59962  	utf = DFALSE
 59963  	ucp = DFALSE
 59964  	fragment_options = Tuint32_t(0)
 59965  	mb = bp                                                        /* &actual_match_block */
 59966  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fstack_frames = bp + 288 /* stack_frames_vector */
 59967  
 59968  	// Recognize NULL, length 0 as an empty string.
 59969  
 59970  	if !(subject == uintptr(0) && length == uint64(0)) {
 59971  		goto __1
 59972  	}
 59973  	subject = ts + 797 /* "" */
 59974  __1:
 59975  	;
 59976  
 59977  	// Plausibility checks
 59978  
 59979  	if !(options&libc.CplUint32(DPCRE2_ANCHORED|DPCRE2_ENDANCHORED|DPCRE2_NOTBOL|DPCRE2_NOTEOL|DPCRE2_NOTEMPTY|DPCRE2_NOTEMPTY_ATSTART|DPCRE2_NO_UTF_CHECK|DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT|DPCRE2_NO_JIT|DPCRE2_COPY_MATCHED_SUBJECT) != Tuint32_t(0)) {
 59980  		goto __2
 59981  	}
 59982  	return -34
 59983  __2:
 59984  	;
 59985  	if !(code == uintptr(0) || subject == uintptr(0) || match_data == uintptr(0)) {
 59986  		goto __3
 59987  	}
 59988  	return -51
 59989  __3:
 59990  	;
 59991  
 59992  	start_match = subject + uintptr(start_offset)
 59993  	req_cu_ptr = start_match - uintptr(1)
 59994  	if !(length == libc.CplUint64(uint64(0))) {
 59995  		goto __4
 59996  	}
 59997  
 59998  	length = X_pcre2_strlen_8(tls, subject)
 59999  	was_zero_terminated = 1
 60000  __4:
 60001  	;
 60002  	true_end_subject = libc.AssignUintptr(&end_subject, subject+uintptr(length))
 60003  
 60004  	if !(start_offset > length) {
 60005  		goto __5
 60006  	}
 60007  	return -33
 60008  __5:
 60009  	;
 60010  
 60011  	// Check that the first field in the block is the magic number.
 60012  
 60013  	if !(uint64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmagic_number) != DMAGIC_NUMBER) {
 60014  		goto __6
 60015  	}
 60016  	return -31
 60017  __6:
 60018  	;
 60019  
 60020  	// Check the code unit width.
 60021  
 60022  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_MODE8|DPCRE2_MODE16|DPCRE2_MODE32) != Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8)) {
 60023  		goto __7
 60024  	}
 60025  	return -32
 60026  __7:
 60027  	;
 60028  
 60029  	// PCRE2_NOTEMPTY and PCRE2_NOTEMPTY_ATSTART are match-time flags in the
 60030  	// options variable for this function. Users of PCRE2 who are not calling the
 60031  	// function directly would like to have a way of setting these flags, in the same
 60032  	// way that they can set pcre2_compile() flags like PCRE2_NO_AUTOPOSSESS with
 60033  	// constructions like (*NO_AUTOPOSSESS). To enable this, (*NOTEMPTY) and
 60034  	// (*NOTEMPTY_ATSTART) set bits in the pattern's "flag" function which we now
 60035  	// transfer to the options for this function. The bits are guaranteed to be
 60036  	// adjacent, but do not have the same values. This bit of Boolean trickery assumes
 60037  	// that the match-time bits are not more significant than the flag bits. If by
 60038  	// accident this is not the case, a compile-time division by zero error will
 60039  	// occur.
 60040  
 60041  	options = options | (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_NOTEMPTY_SET|DPCRE2_NE_ATST_SET)/(uint32((DPCRE2_NOTEMPTY_SET|DPCRE2_NE_ATST_SET)&(libc.CplInt32(DPCRE2_NOTEMPTY_SET|DPCRE2_NE_ATST_SET)+1))/((DPCRE2_NOTEMPTY|DPCRE2_NOTEMPTY_ATSTART)&(libc.CplUint32(DPCRE2_NOTEMPTY|DPCRE2_NOTEMPTY_ATSTART)+uint32(1))))
 60042  
 60043  	// If the pattern was successfully studied with JIT support, we will run the
 60044  	// JIT executable instead of the rest of this function. Most options must be set
 60045  	// at compile time for the JIT code to be usable.
 60046  
 60047  	// Initialize UTF/UCP parameters.
 60048  
 60049  	utf = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UTF != Tuint32_t(0))
 60050  	allow_invalid = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_MATCH_INVALID_UTF != Tuint32_t(0))
 60051  	ucp = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UCP != Tuint32_t(0))
 60052  
 60053  	// Convert the partial matching flags into an integer.
 60054  
 60055  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial = func() uint16 {
 60056  		if options&DPCRE2_PARTIAL_HARD != Tuint32_t(0) {
 60057  			return uint16(2)
 60058  		}
 60059  		return func() uint16 {
 60060  			if options&DPCRE2_PARTIAL_SOFT != Tuint32_t(0) {
 60061  				return uint16(1)
 60062  			}
 60063  			return uint16(0)
 60064  		}()
 60065  	}()
 60066  
 60067  	// Partial matching and PCRE2_ENDANCHORED are currently not allowed at the same
 60068  	// time.
 60069  
 60070  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) != 0 && ((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options|options)&DPCRE2_ENDANCHORED != Tuint32_t(0)) {
 60071  		goto __8
 60072  	}
 60073  	return -34
 60074  __8:
 60075  	;
 60076  
 60077  	// It is an error to set an offset limit without setting the flag at compile
 60078  	// time.
 60079  
 60080  	if !(mcontext != uintptr(0) && (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Foffset_limit != libc.CplUint64(uint64(0)) && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_USE_OFFSET_LIMIT == Tuint32_t(0)) {
 60081  		goto __9
 60082  	}
 60083  	return -56
 60084  __9:
 60085  	;
 60086  
 60087  	// If the match data block was previously used with PCRE2_COPY_MATCHED_SUBJECT,
 60088  	// free the memory that was obtained. Set the field to NULL for no match cases.
 60089  
 60090  	if !(uint32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fflags)&DPCRE2_MD_COPIED_SUBJECT != uint32(0)) {
 60091  		goto __10
 60092  	}
 60093  
 60094  	(*struct {
 60095  		f func(*libc.TLS, uintptr, uintptr)
 60096  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Ffree})).f(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject,
 60097  		(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmemory_data)
 60098  	*(*Tuint8_t)(unsafe.Pointer(match_data + 73)) &= libc.Uint8FromUint32(libc.CplUint32(DPCRE2_MD_COPIED_SUBJECT))
 60099  __10:
 60100  	;
 60101  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject = uintptr(0)
 60102  
 60103  	// Zero the error offset in case the first code unit is invalid UTF.
 60104  
 60105  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fstartchar = uint64(0)
 60106  
 60107  	// ============================= JIT matching ==============================
 60108  
 60109  	// Prepare for JIT matching. Check a UTF string for validity unless no check is
 60110  	// requested or invalid UTF can be handled. We check only the portion of the
 60111  	// subject that might be be inspected during matching - from the offset minus the
 60112  	// maximum lookbehind to the given length. This saves time when a small part of a
 60113  	// large subject is being matched by the use of a starting offset. Note that the
 60114  	// maximum lookbehind is a number of characters, not code units.
 60115  
 60116  	// ========================= End of JIT matching ==========================
 60117  
 60118  	// Proceed with non-JIT matching. The default is to allow lookbehinds to the
 60119  	// start of the subject. A UTF check when there is a non-zero offset may change
 60120  	// this.
 60121  
 60122  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject = subject
 60123  
 60124  	// If a UTF subject string was not checked for validity in the JIT code above,
 60125  	// check it here, and handle support for invalid UTF strings. The check above
 60126  	// happens only when invalid UTF is not supported and PCRE2_NO_CHECK_UTF is unset.
 60127  	// If we get here in those circumstances, it means the subject string is valid,
 60128  	// but for some reason JIT matching was not successful. There is no need to check
 60129  	// the subject again.
 60130  	//
 60131  	// We check only the portion of the subject that might be be inspected during
 60132  	// matching - from the offset minus the maximum lookbehind to the given length.
 60133  	// This saves time when a small part of a large subject is being matched by the
 60134  	// use of a starting offset. Note that the maximum lookbehind is a number of
 60135  	// characters, not code units.
 60136  	//
 60137  	// Note also that support for invalid UTF forces a check, overriding the setting
 60138  	// of PCRE2_NO_CHECK_UTF.
 60139  
 60140  	if !(utf != 0 && (options&DPCRE2_NO_UTF_CHECK == Tuint32_t(0) || allow_invalid != 0)) {
 60141  		goto __11
 60142  	}
 60143  
 60144  	skipped_bad_start = DFALSE
 60145  
 60146  	// For 8-bit and 16-bit UTF, check that the first code unit is a valid
 60147  	//   character start. If we are handling invalid UTF, just skip over such code
 60148  	//   units. Otherwise, give an appropriate error.
 60149  
 60150  	if !(allow_invalid != 0) {
 60151  		goto __12
 60152  	}
 60153  
 60154  __14:
 60155  	if !(start_match < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))&0xc0 == 0x80) {
 60156  		goto __15
 60157  	}
 60158  
 60159  	start_match++
 60160  	skipped_bad_start = DTRUE
 60161  	goto __14
 60162  __15:
 60163  	;
 60164  	goto __13
 60165  __12:
 60166  	if !(start_match < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))&0xc0 == 0x80) {
 60167  		goto __16
 60168  	}
 60169  
 60170  	if !(start_offset > uint64(0)) {
 60171  		goto __17
 60172  	}
 60173  	return -36
 60174  __17:
 60175  	;
 60176  	return -22 // Isolated 0x80 byte
 60177  __16:
 60178  	;
 60179  __13:
 60180  	;
 60181  
 60182  	// The mb->check_subject field points to the start of UTF checking;
 60183  	//   lookbehinds can go back no further than this.
 60184  
 60185  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject = start_match
 60186  
 60187  	// Move back by the maximum lookbehind, just in case it happens at the very
 60188  	//   start of matching, but don't do this if we skipped bad 8-bit or 16-bit code
 60189  	//   units above.
 60190  
 60191  	if !!(skipped_bad_start != 0) {
 60192  		goto __18
 60193  	}
 60194  
 60195  	i = uint32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmax_lookbehind)
 60196  __19:
 60197  	if !(i > uint32(0) && (*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject > subject) {
 60198  		goto __21
 60199  	}
 60200  
 60201  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject--
 60202  __22:
 60203  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject > subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject)))&0xc0 == 0x80) {
 60204  		goto __23
 60205  	}
 60206  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject--
 60207  	goto __22
 60208  __23:
 60209  	;
 60210  	goto __20
 60211  __20:
 60212  	i--
 60213  	goto __19
 60214  	goto __21
 60215  __21:
 60216  	;
 60217  __18:
 60218  	;
 60219  
 60220  	// Validate the relevant portion of the subject. There's a loop in case we
 60221  	//   encounter bad UTF in the characters preceding start_match which we are
 60222  	//   scanning because of a lookbehind.
 60223  
 60224  __24:
 60225  
 60226  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = X_pcre2_valid_utf_8(tls, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject,
 60227  		length-Tsize_t((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject)-int64(subject))/1), match_data+64)
 60228  
 60229  	if !((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc == 0) {
 60230  		goto __27
 60231  	}
 60232  	goto __26
 60233  __27:
 60234  	; // Valid UTF string
 60235  
 60236  	// Invalid UTF string. Adjust the offset to be an absolute offset in the
 60237  	//     whole string. If we are handling invalid UTF strings, set end_subject to
 60238  	//     stop before the bad code unit, and set the options to "not end of line".
 60239  	//     Otherwise return the error.
 60240  
 60241  	*(*Tsize_t)(unsafe.Pointer(match_data + 64)) += Tsize_t((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject) - int64(subject)) / 1)
 60242  	if !(!(allow_invalid != 0) || (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc > 0) {
 60243  		goto __28
 60244  	}
 60245  	return (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc
 60246  __28:
 60247  	;
 60248  	end_subject = subject + uintptr((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fstartchar)
 60249  
 60250  	// If the end precedes start_match, it means there is invalid UTF in the
 60251  	//     extra code units we reversed over because of a lookbehind. Advance past the
 60252  	//     first bad code unit, and then skip invalid character starting code units in
 60253  	//     8-bit and 16-bit modes, and try again with the original end point.
 60254  
 60255  	if !(end_subject < start_match) {
 60256  		goto __29
 60257  	}
 60258  
 60259  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject = end_subject + uintptr(1)
 60260  __31:
 60261  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject < start_match && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject)))&0xc0 == 0x80) {
 60262  		goto __32
 60263  	}
 60264  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject++
 60265  	goto __31
 60266  __32:
 60267  	;
 60268  	end_subject = true_end_subject
 60269  	goto __30
 60270  __29:
 60271  
 60272  	fragment_options = DPCRE2_NOTEOL
 60273  	goto __26
 60274  __30:
 60275  	;
 60276  	goto __25
 60277  __25:
 60278  	goto __24
 60279  	goto __26
 60280  __26:
 60281  	;
 60282  __11:
 60283  	;
 60284  
 60285  	// A NULL match context means "use a default context", but we take the memory
 60286  	// control functions from the pattern.
 60287  
 60288  	if !(mcontext == uintptr(0)) {
 60289  		goto __33
 60290  	}
 60291  
 60292  	mcontext = uintptr(unsafe.Pointer(&X_pcre2_default_match_context_8))
 60293  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmemctl
 60294  	goto __34
 60295  __33:
 60296  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmemctl
 60297  __34:
 60298  	;
 60299  
 60300  	anchored = libc.Bool32(((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options|options)&DPCRE2_ANCHORED != Tuint32_t(0))
 60301  	firstline = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_FIRSTLINE != Tuint32_t(0))
 60302  	startline = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_STARTLINE) != Tuint32_t(0))
 60303  	if (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Foffset_limit == libc.CplUint64(uint64(0)) {
 60304  		bumpalong_limit = true_end_subject
 60305  	} else {
 60306  		bumpalong_limit = subject + uintptr((*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Foffset_limit)
 60307  	}
 60308  
 60309  	// Initialize and set up the fixed fields in the callout block, with a pointer
 60310  	// in the match block.
 60311  
 60312  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcb = bp + 20768 /* &cb */
 60313  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 20768 /* &cb */)).Fversion = Tuint32_t(2)
 60314  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 20768 /* &cb */)).Fsubject = subject
 60315  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 20768 /* &cb */)).Fsubject_length = Tsize_t((int64(end_subject) - int64(subject)) / 1)
 60316  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 20768 /* &cb */)).Fcallout_flags = Tuint32_t(0)
 60317  
 60318  	// Fill in the remaining fields in the match block, except for moptions, which
 60319  	// gets set later.
 60320  
 60321  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcallout = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fcallout
 60322  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcallout_data = (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fcallout_data
 60323  
 60324  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject = subject
 60325  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_offset = start_offset
 60326  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject = end_subject
 60327  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhasthen = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_HASTHEN) != Tuint32_t(0))
 60328  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fallowemptypartial = libc.Bool32(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmax_lookbehind) > 0 || (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_MATCH_EMPTY) != Tuint32_t(0))
 60329  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fpoptions = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options // Pattern options
 60330  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fignore_skip_arg = Tuint32_t(0)
 60331  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmark = libc.AssignPtrUintptr(mb+208, uintptr(0)) // In case never set
 60332  
 60333  	// The name table is needed for finding all the numbers associated with a
 60334  	// given name, for condition testing. The code follows the name table.
 60335  
 60336  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_table = re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{})))
 60337  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_count = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count
 60338  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_entry_size = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size
 60339  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_code = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fname_table + uintptr(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count)*int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size))
 60340  
 60341  	// Process the \R and newline settings.
 60342  
 60343  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fbsr_convention = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fbsr_convention
 60344  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype = Tuint32_t(DNLTYPE_FIXED)
 60345  	switch int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fnewline_convention) {
 60346  	case DPCRE2_NEWLINE_CR:
 60347  		goto __36
 60348  
 60349  	case DPCRE2_NEWLINE_LF:
 60350  		goto __37
 60351  
 60352  	case DPCRE2_NEWLINE_NUL:
 60353  		goto __38
 60354  
 60355  	case DPCRE2_NEWLINE_CRLF:
 60356  		goto __39
 60357  
 60358  	case DPCRE2_NEWLINE_ANY:
 60359  		goto __40
 60360  
 60361  	case DPCRE2_NEWLINE_ANYCRLF:
 60362  		goto __41
 60363  
 60364  	default:
 60365  		goto __42
 60366  	}
 60367  	goto __35
 60368  
 60369  __36:
 60370  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(1)
 60371  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)) = TPCRE2_UCHAR8('\015')
 60372  	goto __35
 60373  
 60374  __37:
 60375  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(1)
 60376  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)) = TPCRE2_UCHAR8('\012')
 60377  	goto __35
 60378  
 60379  __38:
 60380  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(1)
 60381  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)) = TPCRE2_UCHAR8(0)
 60382  	goto __35
 60383  
 60384  __39:
 60385  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen = Tuint32_t(2)
 60386  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260)) = TPCRE2_UCHAR8('\015')
 60387  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)) = TPCRE2_UCHAR8('\012')
 60388  	goto __35
 60389  
 60390  __40:
 60391  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype = Tuint32_t(DNLTYPE_ANY)
 60392  	goto __35
 60393  
 60394  __41:
 60395  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype = Tuint32_t(DNLTYPE_ANYCRLF)
 60396  	goto __35
 60397  
 60398  __42:
 60399  	return -44
 60400  __35:
 60401  	;
 60402  
 60403  	// The backtracking frames have fixed data at the front, and a PCRE2_SIZE
 60404  	// vector at the end, whose size depends on the number of capturing parentheses in
 60405  	// the pattern. It is not used at all if there are no capturing parentheses.
 60406  	//
 60407  	//   frame_size             is the total size of each frame
 60408  	//   mb->frame_vector_size  is the total usable size of the vector (rounded down
 60409  	//                            to a whole number of frames)
 60410  	//
 60411  	// The last of these is changed within the match() function if the frame vector
 60412  	// has to be expanded. We therefore put it into the match block so that it is
 60413  	// correct when calling match() more than once for non-anchored patterns.
 60414  	//
 60415  	// We must also pad frame_size for alignment to ensure subsequent frames are as
 60416  	// aligned as heapframe. Whilst ovector is word-aligned due to being a PCRE2_SIZE
 60417  	// array, that does not guarantee it is suitably aligned for pointers, as some
 60418  	// architectures have pointers that are larger than a size_t.
 60419  
 60420  	frame_size = (uint64(uintptr(0)+128) + uint64(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_bracket)*2)*uint64(unsafe.Sizeof(Tsize_t(0))) + uint64(uintptr(0)+8) - uint64(1)) & libc.CplUint64(uint64(uintptr(0)+8)-uint64(1))
 60421  
 60422  	// Limits set in the pattern override the match context only if they are
 60423  	// smaller.
 60424  
 60425  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fheap_limit = func() uint64 {
 60426  		if (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fheap_limit < (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_heap {
 60427  			return uint64((*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fheap_limit)
 60428  		}
 60429  		return uint64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_heap)
 60430  	}()
 60431  
 60432  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_limit = func() uint32 {
 60433  		if (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmatch_limit < (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_match {
 60434  			return (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fmatch_limit
 60435  		}
 60436  		return (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_match
 60437  	}()
 60438  
 60439  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_limit_depth = func() uint32 {
 60440  		if (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fdepth_limit < (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_depth {
 60441  			return (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fdepth_limit
 60442  		}
 60443  		return (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_depth
 60444  	}()
 60445  
 60446  	// If a pattern has very many capturing parentheses, the frame size may be very
 60447  	// large. Ensure that there are at least 10 available frames by getting an initial
 60448  	// vector on the heap if necessary, except when the heap limit prevents this. Get
 60449  	// fewer if possible. (The heap limit is in kibibytes.)
 60450  
 60451  	if !(frame_size <= uint64(DSTART_FRAMES_SIZE/10)) {
 60452  		goto __43
 60453  	}
 60454  
 60455  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstack_frames // Initial frame vector on the stack
 60456  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size = uint64(DSTART_FRAMES_SIZE) / frame_size * frame_size
 60457  	goto __44
 60458  __43:
 60459  
 60460  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size = frame_size * uint64(10)
 60461  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size/uint64(1024) > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fheap_limit) {
 60462  		goto __45
 60463  	}
 60464  
 60465  	if !(frame_size > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fheap_limit*uint64(1024)) {
 60466  		goto __46
 60467  	}
 60468  	return -63
 60469  __46:
 60470  	;
 60471  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fheap_limit * uint64(1024) / frame_size * frame_size
 60472  __45:
 60473  	;
 60474  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames = (*struct {
 60475  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 60476  	})(unsafe.Pointer(&struct{ uintptr }{(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmalloc})).f(tls, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size,
 60477  		(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmemory_data)
 60478  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames == uintptr(0)) {
 60479  		goto __47
 60480  	}
 60481  	return -48
 60482  __47:
 60483  	;
 60484  __44:
 60485  	;
 60486  
 60487  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames_top = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames + uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fframe_vector_size)
 60488  
 60489  	// Write to the ovector within the first frame to mark every capture unset and
 60490  	// to avoid uninitialized memory read errors when it is copied to a new frame.
 60491  
 60492  	libc.X__builtin___memset_chk(tls, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames+uintptr(uint64(uintptr(0)+128)), 0xff, frame_size-Tsize_t(uintptr(0)+128), libc.X__builtin_object_size(tls, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames+uintptr(uint64(uintptr(0)+128)), 0))
 60493  
 60494  	// Pointers to the individual character tables
 60495  
 60496  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flcc = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(Dlcc_offset)
 60497  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(Dfcc_offset)
 60498  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fctypes = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(Dcbits_offset+Dcbit_length)
 60499  
 60500  	// Set up the first code unit to match, if available. If there's no first code
 60501  	// unit there may be a bitmap of possible first characters.
 60502  
 60503  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTSET) != Tuint32_t(0)) {
 60504  		goto __48
 60505  	}
 60506  
 60507  	has_first_cu = DTRUE
 60508  	first_cu = libc.AssignUint8(&first_cu2, TPCRE2_UCHAR8((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ffirst_codeunit))
 60509  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTCASELESS) != Tuint32_t(0)) {
 60510  		goto __50
 60511  	}
 60512  
 60513  	first_cu2 = *(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc + uintptr(first_cu)))
 60514  	if !(int32(first_cu) > 127 && ucp != 0 && !(utf != 0)) {
 60515  		goto __51
 60516  	}
 60517  	first_cu2 = TPCRE2_UCHAR8(Tuint32_t(int32(first_cu) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(first_cu)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(first_cu)%DUCD_BLOCK_SIZE])*12)).Fother_case))
 60518  __51:
 60519  	;
 60520  __50:
 60521  	;
 60522  	goto __49
 60523  __48:
 60524  	if !(!(startline != 0) && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTMAPSET) != Tuint32_t(0)) {
 60525  		goto __52
 60526  	}
 60527  	start_bits = re + 40 /* &.start_bitmap */
 60528  __52:
 60529  	;
 60530  __49:
 60531  	;
 60532  
 60533  	// There may also be a "last known required character" set.
 60534  
 60535  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_LASTSET) != Tuint32_t(0)) {
 60536  		goto __53
 60537  	}
 60538  
 60539  	has_req_cu = DTRUE
 60540  	req_cu = libc.AssignUint8(&req_cu2, TPCRE2_UCHAR8((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flast_codeunit))
 60541  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_LASTCASELESS) != Tuint32_t(0)) {
 60542  		goto __54
 60543  	}
 60544  
 60545  	req_cu2 = *(*Tuint8_t)(unsafe.Pointer((*Tmatch_block_8)(unsafe.Pointer(mb)).Ffcc + uintptr(req_cu)))
 60546  	if !(int32(req_cu) > 127 && ucp != 0 && !(utf != 0)) {
 60547  		goto __55
 60548  	}
 60549  	req_cu2 = TPCRE2_UCHAR8(Tuint32_t(int32(req_cu) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(req_cu)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(req_cu)%DUCD_BLOCK_SIZE])*12)).Fother_case))
 60550  __55:
 60551  	;
 60552  __54:
 60553  	;
 60554  __53:
 60555  	;
 60556  
 60557  	// ==========================================================================
 60558  
 60559  	// Loop for handling unanchored repeated matching attempts; for anchored regexs
 60560  	// the loop runs just once.
 60561  
 60562  FRAGMENT_RESTART:
 60563  
 60564  	start_partial = libc.AssignUintptr(&match_partial, uintptr(0))
 60565  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend = DFALSE
 60566  
 60567  	memchr_found_first_cu = uintptr(0)
 60568  	memchr_found_first_cu2 = uintptr(0)
 60569  
 60570  __56:
 60571  
 60572  	// ----------------- Start of match optimizations ----------------
 60573  
 60574  	// There are some optimizations that avoid running the match if a known
 60575  	//   starting point is not found, or if a known later code unit is not present.
 60576  	//   However, there is an option (settable at compile time) that disables these,
 60577  	//   for testing and for ensuring that all callouts do actually occur.
 60578  
 60579  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_NO_START_OPTIMIZE == Tuint32_t(0)) {
 60580  		goto __59
 60581  	}
 60582  
 60583  	// If firstline is TRUE, the start of the match is constrained to the first
 60584  	//     line of a multiline string. That is, the match must be before or at the
 60585  	//     first newline following the start of matching. Temporarily adjust
 60586  	//     end_subject so that we stop the scans for a first code unit at a newline.
 60587  	//     If the match fails at the newline, later code breaks the loop.
 60588  
 60589  	if !(firstline != 0) {
 60590  		goto __60
 60591  	}
 60592  
 60593  	t = start_match
 60594  	if !(utf != 0) {
 60595  		goto __61
 60596  	}
 60597  
 60598  __63:
 60599  	if !(t < end_subject && !(func() int32 {
 60600  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 60601  			return libc.Bool32(t < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, t, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 60602  		}
 60603  		return libc.Bool32(t <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 60604  	}() != 0)) {
 60605  		goto __64
 60606  	}
 60607  
 60608  	t++
 60609  __65:
 60610  	if !(t < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t)))&0xc0 == 0x80) {
 60611  		goto __66
 60612  	}
 60613  	t++
 60614  	goto __65
 60615  __66:
 60616  	;
 60617  	goto __63
 60618  __64:
 60619  	;
 60620  	goto __62
 60621  __61:
 60622  __67:
 60623  	if !(t < end_subject && !(func() int32 {
 60624  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 60625  			return libc.Bool32(t < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, t, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 60626  		}
 60627  		return libc.Bool32(t <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(t + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 60628  	}() != 0)) {
 60629  		goto __68
 60630  	}
 60631  	t++
 60632  	goto __67
 60633  __68:
 60634  	;
 60635  __62:
 60636  	;
 60637  	end_subject = t
 60638  __60:
 60639  	;
 60640  
 60641  	// Anchored: check the first code unit if one is recorded. This may seem
 60642  	//     pointless but it can help in detecting a no match case without scanning for
 60643  	//     the required code unit.
 60644  
 60645  	if !(anchored != 0) {
 60646  		goto __69
 60647  	}
 60648  
 60649  	if !(has_first_cu != 0 || start_bits != uintptr(0)) {
 60650  		goto __71
 60651  	}
 60652  
 60653  	ok = libc.Bool32(start_match < end_subject)
 60654  	if !(ok != 0) {
 60655  		goto __72
 60656  	}
 60657  
 60658  	c = *(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))
 60659  	ok = libc.Bool32(has_first_cu != 0 && (int32(c) == int32(first_cu) || int32(c) == int32(first_cu2)))
 60660  	if !(!(ok != 0) && start_bits != uintptr(0)) {
 60661  		goto __73
 60662  	}
 60663  
 60664  	ok = libc.Bool32(uint32(*(*Tuint8_t)(unsafe.Pointer(start_bits + uintptr(int32(c)/8))))&(uint32(1)<<(int32(c)&7)) != uint32(0))
 60665  __73:
 60666  	;
 60667  __72:
 60668  	;
 60669  	if !!(ok != 0) {
 60670  		goto __74
 60671  	}
 60672  
 60673  	rc = DMATCH_NOMATCH
 60674  	goto __58
 60675  __74:
 60676  	;
 60677  __71:
 60678  	;
 60679  	goto __70
 60680  __69:
 60681  
 60682  	if !(has_first_cu != 0) {
 60683  		goto __75
 60684  	}
 60685  
 60686  	if !(int32(first_cu) != int32(first_cu2)) {
 60687  		goto __77
 60688  	} /* Caseless */
 60689  
 60690  	// In 16-bit and 32_bit modes we have to do our own search, so can
 60691  	//           look for both cases at once.
 60692  
 60693  	// In 8-bit mode, the use of memchr() gives a big speed up, even
 60694  	//           though we have to call it twice in order to find the earliest
 60695  	//           occurrence of the code unit in either of its cases. Caching is used
 60696  	//           to remember the positions of previously found code units. This can
 60697  	//           make a huge difference when the strings are very long and only one
 60698  	//           case is actually present.
 60699  
 60700  	pp1 = uintptr(0)
 60701  	pp2 = uintptr(0)
 60702  	searchlength = Tsize_t((int64(end_subject) - int64(start_match)) / 1)
 60703  
 60704  	// If we haven't got a previously found position for first_cu, or if
 60705  	//           the current starting position is later, we need to do a search. If
 60706  	//           the code unit is not found, set it to the end.
 60707  
 60708  	if !(memchr_found_first_cu == uintptr(0) || start_match > memchr_found_first_cu) {
 60709  		goto __79
 60710  	}
 60711  
 60712  	pp1 = libc.Xmemchr(tls, start_match, int32(first_cu), searchlength)
 60713  	if pp1 == uintptr(0) {
 60714  		memchr_found_first_cu = end_subject
 60715  	} else {
 60716  		memchr_found_first_cu = pp1
 60717  	}
 60718  	goto __80
 60719  __79:
 60720  	if memchr_found_first_cu == end_subject {
 60721  		pp1 = uintptr(0)
 60722  	} else {
 60723  		pp1 = memchr_found_first_cu
 60724  	}
 60725  __80:
 60726  	;
 60727  
 60728  	// Do the same thing for the other case.
 60729  
 60730  	if !(memchr_found_first_cu2 == uintptr(0) || start_match > memchr_found_first_cu2) {
 60731  		goto __81
 60732  	}
 60733  
 60734  	pp2 = libc.Xmemchr(tls, start_match, int32(first_cu2), searchlength)
 60735  	if pp2 == uintptr(0) {
 60736  		memchr_found_first_cu2 = end_subject
 60737  	} else {
 60738  		memchr_found_first_cu2 = pp2
 60739  	}
 60740  	goto __82
 60741  __81:
 60742  	if memchr_found_first_cu2 == end_subject {
 60743  		pp2 = uintptr(0)
 60744  	} else {
 60745  		pp2 = memchr_found_first_cu2
 60746  	}
 60747  __82:
 60748  	;
 60749  
 60750  	// Set the start to the end of the subject if neither case was found.
 60751  	//           Otherwise, use the earlier found point.
 60752  
 60753  	if !(pp1 == uintptr(0)) {
 60754  		goto __83
 60755  	}
 60756  	if pp2 == uintptr(0) {
 60757  		start_match = end_subject
 60758  	} else {
 60759  		start_match = pp2
 60760  	}
 60761  	goto __84
 60762  __83:
 60763  	if pp2 == uintptr(0) || pp1 < pp2 {
 60764  		start_match = pp1
 60765  	} else {
 60766  		start_match = pp2
 60767  	}
 60768  __84:
 60769  	;
 60770  
 60771  	goto __78
 60772  __77:
 60773  
 60774  	start_match = libc.Xmemchr(tls, start_match, int32(first_cu), uint64((int64(end_subject)-int64(start_match))/1))
 60775  	if !(start_match == uintptr(0)) {
 60776  		goto __85
 60777  	}
 60778  	start_match = end_subject
 60779  __85:
 60780  	;
 60781  __78:
 60782  	;
 60783  
 60784  	// If we can't find the required first code unit, having reached the
 60785  	//         true end of the subject, break the bumpalong loop, to force a match
 60786  	//         failure, except when doing partial matching, when we let the next cycle
 60787  	//         run at the end of the subject. To see why, consider the pattern
 60788  	//         /(?<=abc)def/, which partially matches "abc", even though the string
 60789  	//         does not contain the starting character "d". If we have not reached the
 60790  	//         true end of the subject (PCRE2_FIRSTLINE caused end_subject to be
 60791  	//         temporarily modified) we also let the cycle run, because the matching
 60792  	//         string is legitimately allowed to start with the first code unit of a
 60793  	//         newline.
 60794  
 60795  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) == 0 && start_match >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 60796  		goto __86
 60797  	}
 60798  
 60799  	rc = DMATCH_NOMATCH
 60800  	goto __58
 60801  __86:
 60802  	;
 60803  	goto __76
 60804  __75:
 60805  	if !(startline != 0) {
 60806  		goto __87
 60807  	}
 60808  
 60809  	if !(start_match > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr(start_offset)) {
 60810  		goto __89
 60811  	}
 60812  
 60813  	if !(utf != 0) {
 60814  		goto __90
 60815  	}
 60816  
 60817  __92:
 60818  	if !(start_match < end_subject && !(func() int32 {
 60819  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 60820  			return libc.Bool32(start_match > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject && X_pcre2_was_newline_8(tls, start_match, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject, mb+256, utf) != 0)
 60821  		}
 60822  		return libc.Bool32(start_match >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 60823  	}() != 0)) {
 60824  		goto __93
 60825  	}
 60826  
 60827  	start_match++
 60828  __94:
 60829  	if !(start_match < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))&0xc0 == 0x80) {
 60830  		goto __95
 60831  	}
 60832  	start_match++
 60833  	goto __94
 60834  __95:
 60835  	;
 60836  	goto __92
 60837  __93:
 60838  	;
 60839  	goto __91
 60840  __90:
 60841  __96:
 60842  	if !(start_match < end_subject && !(func() int32 {
 60843  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 60844  			return libc.Bool32(start_match > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject && X_pcre2_was_newline_8(tls, start_match, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject, mb+256, utf) != 0)
 60845  		}
 60846  		return libc.Bool32(start_match >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_subject+uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match - uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 60847  	}() != 0)) {
 60848  		goto __97
 60849  	}
 60850  	start_match++
 60851  	goto __96
 60852  __97:
 60853  	;
 60854  __91:
 60855  	;
 60856  
 60857  	// If we have just passed a CR and the newline option is ANY or
 60858  	//           ANYCRLF, and we are now at a LF, advance the match position by one
 60859  	//           more code unit.
 60860  
 60861  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match + libc.UintptrFromInt32(-1)))) == '\015' && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANY) || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANYCRLF)) && start_match < end_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))) == '\012') {
 60862  		goto __98
 60863  	}
 60864  	start_match++
 60865  __98:
 60866  	;
 60867  __89:
 60868  	;
 60869  	goto __88
 60870  __87:
 60871  	if !(start_bits != uintptr(0)) {
 60872  		goto __99
 60873  	}
 60874  
 60875  __100:
 60876  	if !(start_match < end_subject) {
 60877  		goto __101
 60878  	}
 60879  
 60880  	c1 = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))
 60881  	if !(uint32(*(*Tuint8_t)(unsafe.Pointer(start_bits + uintptr(c1/Tuint32_t(8)))))&(uint32(1)<<(c1&Tuint32_t(7))) != uint32(0)) {
 60882  		goto __102
 60883  	}
 60884  	goto __101
 60885  __102:
 60886  	;
 60887  	start_match++
 60888  	goto __100
 60889  __101:
 60890  	;
 60891  
 60892  	// See comment above in first_cu checking about the next few lines.
 60893  
 60894  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) == 0 && start_match >= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject) {
 60895  		goto __103
 60896  	}
 60897  
 60898  	rc = DMATCH_NOMATCH
 60899  	goto __58
 60900  __103:
 60901  	;
 60902  __99:
 60903  	;
 60904  __88:
 60905  	;
 60906  __76:
 60907  	;
 60908  __70:
 60909  	; // End first code unit handling
 60910  
 60911  	// Restore fudged end_subject
 60912  
 60913  	end_subject = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject
 60914  
 60915  	// The following two optimizations must be disabled for partial matching.
 60916  
 60917  	if !(int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fpartial) == 0) {
 60918  		goto __104
 60919  	}
 60920  
 60921  	// The minimum matching length is a lower bound; no string of that length
 60922  	//       may actually match the pattern. Although the value is, strictly, in
 60923  	//       characters, we treat it as code units to avoid spending too much time in
 60924  	//       this optimization.
 60925  
 60926  	if !((int64(end_subject)-int64(start_match))/1 < int64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fminlength)) {
 60927  		goto __105
 60928  	}
 60929  
 60930  	rc = DMATCH_NOMATCH
 60931  	goto __58
 60932  __105:
 60933  	;
 60934  
 60935  	// If req_cu is set, we know that that code unit must appear in the
 60936  	//       subject for the (non-partial) match to succeed. If the first code unit is
 60937  	//       set, req_cu must be later in the subject; otherwise the test starts at
 60938  	//       the match point. This optimization can save a huge amount of backtracking
 60939  	//       in patterns with nested unlimited repeats that aren't going to match.
 60940  	//       Writing separate code for caseful/caseless versions makes it go faster,
 60941  	//       as does using an autoincrement and backing off on a match. As in the case
 60942  	//       of the first code unit, using memchr() in the 8-bit library gives a big
 60943  	//       speed up. Unlike the first_cu check above, we do not need to call
 60944  	//       memchr() twice in the caseless case because we only need to check for the
 60945  	//       presence of the character in either case, not find the first occurrence.
 60946  	//
 60947  	//       The search can be skipped if the code unit was found later than the
 60948  	//       current starting point in a previous iteration of the bumpalong loop.
 60949  	//
 60950  	//       HOWEVER: when the subject string is very, very long, searching to its end
 60951  	//       can take a long time, and give bad performance on quite ordinary
 60952  	//       anchored patterns. This showed up when somebody was matching something
 60953  	//       like /^\d+C/ on a 32-megabyte string... so we don't do this when the
 60954  	//       string is sufficiently long, but it's worth searching a lot more for
 60955  	//       unanchored patterns.
 60956  
 60957  	p = start_match + uintptr(func() int32 {
 60958  		if has_first_cu != 0 {
 60959  			return 1
 60960  		}
 60961  		return 0
 60962  	}())
 60963  	if !(has_req_cu != 0 && p > req_cu_ptr) {
 60964  		goto __106
 60965  	}
 60966  
 60967  	check_length = Tsize_t((int64(end_subject) - int64(start_match)) / 1)
 60968  
 60969  	if !(check_length < uint64(DREQ_CU_MAX) || !(anchored != 0) && check_length < uint64(DREQ_CU_MAX*1000)) {
 60970  		goto __107
 60971  	}
 60972  
 60973  	if !(int32(req_cu) != int32(req_cu2)) {
 60974  		goto __108
 60975  	} /* Caseless */
 60976  
 60977  	pp = p
 60978  	p = libc.Xmemchr(tls, pp, int32(req_cu), uint64((int64(end_subject)-int64(pp))/1))
 60979  	if !(p == uintptr(0)) {
 60980  		goto __110
 60981  	}
 60982  
 60983  	p = libc.Xmemchr(tls, pp, int32(req_cu2), uint64((int64(end_subject)-int64(pp))/1))
 60984  	if !(p == uintptr(0)) {
 60985  		goto __111
 60986  	}
 60987  	p = end_subject
 60988  __111:
 60989  	;
 60990  __110:
 60991  	;
 60992  	goto __109
 60993  __108:
 60994  
 60995  	p = libc.Xmemchr(tls, p, int32(req_cu), uint64((int64(end_subject)-int64(p))/1))
 60996  	if !(p == uintptr(0)) {
 60997  		goto __112
 60998  	}
 60999  	p = end_subject
 61000  __112:
 61001  	;
 61002  __109:
 61003  	;
 61004  
 61005  	// If we can't find the required code unit, break the bumpalong loop,
 61006  	//           forcing a match failure.
 61007  
 61008  	if !(p >= end_subject) {
 61009  		goto __113
 61010  	}
 61011  
 61012  	rc = DMATCH_NOMATCH
 61013  	goto __58
 61014  __113:
 61015  	;
 61016  
 61017  	// If we have found the required code unit, save the point where we
 61018  	//           found it, so that we don't search again next time round the bumpalong
 61019  	//           loop if the start hasn't yet passed this code unit.
 61020  
 61021  	req_cu_ptr = p
 61022  __107:
 61023  	;
 61024  __106:
 61025  	;
 61026  __104:
 61027  	;
 61028  __59:
 61029  	;
 61030  
 61031  	// ------------ End of start of match optimizations ------------
 61032  
 61033  	// Give no match if we have passed the bumpalong limit.
 61034  
 61035  	if !(start_match > bumpalong_limit) {
 61036  		goto __114
 61037  	}
 61038  
 61039  	rc = DMATCH_NOMATCH
 61040  	goto __58
 61041  __114:
 61042  	;
 61043  
 61044  	// OK, we can now run the match. If "hitend" is set afterwards, remember the
 61045  	//   first starting point for which a partial match was found.
 61046  
 61047  	(*Tpcre2_callout_block_8)(unsafe.Pointer(bp + 20768 /* &cb */)).Fstart_match = Tsize_t((int64(start_match) - int64(subject)) / 1)
 61048  	*(*Tuint32_t)(unsafe.Pointer(bp + 20768 + 104)) |= DPCRE2_CALLOUT_STARTMATCH
 61049  
 61050  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr = start_match
 61051  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr = start_match
 61052  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmoptions = options | fragment_options
 61053  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_call_count = Tuint32_t(0)
 61054  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_offset_top = uint64(0)
 61055  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fskip_arg_count = Tuint32_t(0)
 61056  
 61057  	rc = match(tls, start_match, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_code, match_data+80,
 61058  		(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount, (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_bracket, frame_size, mb)
 61059  
 61060  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fhitend != 0 && start_partial == uintptr(0)) {
 61061  		goto __115
 61062  	}
 61063  
 61064  	start_partial = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr
 61065  	match_partial = start_match
 61066  __115:
 61067  	;
 61068  
 61069  	switch rc {
 61070  	// If MATCH_SKIP_ARG reaches this level it means that a MARK that matched
 61071  	//     the SKIP's arg was not found. In this circumstance, Perl ignores the SKIP
 61072  	//     entirely. The only way we can do that is to re-do the match at the same
 61073  	//     point, with a flag to force SKIP with an argument to be ignored. Just
 61074  	//     treating this case as NOMATCH does not work because it does not check other
 61075  	//     alternatives in patterns such as A(*SKIP:A)B|AC when the subject is AC.
 61076  
 61077  	case -994:
 61078  		goto __117
 61079  
 61080  	// SKIP passes back the next starting point explicitly, but if it is no
 61081  	//     greater than the match we have just done, treat it as NOMATCH.
 61082  
 61083  	case -995:
 61084  		goto __118
 61085  	// Fall through
 61086  
 61087  	// NOMATCH and PRUNE advance by one character. THEN at this level acts
 61088  	//     exactly like PRUNE. Unset ignore SKIP-with-argument.
 61089  
 61090  	case DMATCH_NOMATCH:
 61091  		goto __119
 61092  	case -996:
 61093  		goto __120
 61094  	case -993:
 61095  		goto __121
 61096  
 61097  	// COMMIT disables the bumpalong, but otherwise behaves as NOMATCH.
 61098  
 61099  	case -997:
 61100  		goto __122
 61101  
 61102  	// Any other return is either a match, or some kind of error.
 61103  
 61104  	default:
 61105  		goto __123
 61106  	}
 61107  	goto __116
 61108  
 61109  	// If MATCH_SKIP_ARG reaches this level it means that a MARK that matched
 61110  	//     the SKIP's arg was not found. In this circumstance, Perl ignores the SKIP
 61111  	//     entirely. The only way we can do that is to re-do the match at the same
 61112  	//     point, with a flag to force SKIP with an argument to be ignored. Just
 61113  	//     treating this case as NOMATCH does not work because it does not check other
 61114  	//     alternatives in patterns such as A(*SKIP:A)B|AC when the subject is AC.
 61115  
 61116  __117:
 61117  	new_start_match = start_match
 61118  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fignore_skip_arg = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fskip_arg_count
 61119  	goto __116
 61120  
 61121  	// SKIP passes back the next starting point explicitly, but if it is no
 61122  	//     greater than the match we have just done, treat it as NOMATCH.
 61123  
 61124  __118:
 61125  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_skip_ptr > start_match) {
 61126  		goto __124
 61127  	}
 61128  
 61129  	new_start_match = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fverb_skip_ptr
 61130  	goto __116
 61131  __124:
 61132  	;
 61133  	// Fall through
 61134  
 61135  	// NOMATCH and PRUNE advance by one character. THEN at this level acts
 61136  	//     exactly like PRUNE. Unset ignore SKIP-with-argument.
 61137  
 61138  __119:
 61139  __120:
 61140  __121:
 61141  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fignore_skip_arg = Tuint32_t(0)
 61142  	new_start_match = start_match + uintptr(1)
 61143  	if !(utf != 0) {
 61144  		goto __125
 61145  	}
 61146  __126:
 61147  	if !(new_start_match < end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(new_start_match)))&0xc0 == 0x80) {
 61148  		goto __127
 61149  	}
 61150  	new_start_match++
 61151  	goto __126
 61152  __127:
 61153  	;
 61154  __125:
 61155  	;
 61156  	goto __116
 61157  
 61158  	// COMMIT disables the bumpalong, but otherwise behaves as NOMATCH.
 61159  
 61160  __122:
 61161  	rc = DMATCH_NOMATCH
 61162  	goto ENDLOOP
 61163  
 61164  	// Any other return is either a match, or some kind of error.
 61165  
 61166  __123:
 61167  	goto ENDLOOP
 61168  __116:
 61169  	;
 61170  
 61171  	// Control reaches here for the various types of "no match at this point"
 61172  	//   result. Reset the code to MATCH_NOMATCH for subsequent checking.
 61173  
 61174  	rc = DMATCH_NOMATCH
 61175  
 61176  	// If PCRE2_FIRSTLINE is set, the match must happen before or at the first
 61177  	//   newline in the subject (though it may continue over the newline). Therefore,
 61178  	//   if we have just failed to match, starting at a newline, do not continue.
 61179  
 61180  	if !(firstline != 0 && func() int32 {
 61181  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype != Tuint32_t(DNLTYPE_FIXED) {
 61182  			return libc.Bool32(start_match < (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject && X_pcre2_is_newline_8(tls, start_match, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject, mb+256, utf) != 0)
 61183  		}
 61184  		return libc.Bool32(start_match <= (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject-uintptr((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260))) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(1) || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match + uintptr(1)))) == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mb + 260 + 1)))))
 61185  	}() != 0) {
 61186  		goto __128
 61187  	}
 61188  	goto __58
 61189  __128:
 61190  	;
 61191  
 61192  	// Advance to new matching position
 61193  
 61194  	start_match = new_start_match
 61195  
 61196  	// Break the loop if the pattern is anchored or if we have passed the end of
 61197  	//   the subject.
 61198  
 61199  	if !(anchored != 0 || start_match > end_subject) {
 61200  		goto __129
 61201  	}
 61202  	goto __58
 61203  __129:
 61204  	;
 61205  
 61206  	// If we have just passed a CR and we are now at a LF, and the pattern does
 61207  	//   not contain any explicit matches for \r or \n, and the newline option is CRLF
 61208  	//   or ANY or ANYCRLF, advance the match position by one more code unit. In
 61209  	//   normal matching start_match will aways be greater than the first position at
 61210  	//   this stage, but a failed *SKIP can cause a return at the same point, which is
 61211  	//   why the first test exists.
 61212  
 61213  	if !(start_match > subject+uintptr(start_offset) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match + libc.UintptrFromInt32(-1)))) == '\015' && start_match < end_subject && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match))) == '\012' && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_HASCRORLF) == Tuint32_t(0) && ((*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANY) || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnltype == Tuint32_t(DNLTYPE_ANYCRLF) || (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnllen == Tuint32_t(2))) {
 61214  		goto __130
 61215  	}
 61216  	start_match++
 61217  __130:
 61218  	;
 61219  
 61220  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmark = uintptr(0) // Reset for start of next match attempt
 61221  	goto __57
 61222  __57:
 61223  	goto __56
 61224  	goto __58
 61225  __58:
 61226  	; // End of for(;;) "bumpalong" loop
 61227  
 61228  	// ==========================================================================
 61229  
 61230  	// When we reach here, one of the following stopping conditions is true:
 61231  	//
 61232  	// (1) The match succeeded, either completely, or partially;
 61233  	//
 61234  	// (2) The pattern is anchored or the match was failed after (*COMMIT);
 61235  	//
 61236  	// (3) We are past the end of the subject or the bumpalong limit;
 61237  	//
 61238  	// (4) PCRE2_FIRSTLINE is set and we have failed to match at a newline, because
 61239  	//     this option requests that a match occur at or before the first newline in
 61240  	//     the subject.
 61241  	//
 61242  	// (5) Some kind of error occurred.
 61243  	//
 61244  
 61245  ENDLOOP:
 61246  
 61247  	// If end_subject != true_end_subject, it means we are handling invalid UTF,
 61248  	// and have just processed a non-terminal fragment. If this resulted in no match
 61249  	// or a partial match we must carry on to the next fragment (a partial match is
 61250  	// returned to the caller only at the very end of the subject). A loop is used to
 61251  	// avoid trying to match against empty fragments; if the pattern can match an
 61252  	// empty string it would have done so already.
 61253  
 61254  	if !(utf != 0 && end_subject != true_end_subject && (rc == DMATCH_NOMATCH || rc == -2)) {
 61255  		goto __131
 61256  	}
 61257  
 61258  __132:
 61259  
 61260  	// Advance past the first bad code unit, and then skip invalid character
 61261  	//     starting code units in 8-bit and 16-bit modes.
 61262  
 61263  	start_match = end_subject + uintptr(1)
 61264  
 61265  __135:
 61266  	if !(start_match < true_end_subject && uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(start_match)))&0xc0 == 0x80) {
 61267  		goto __136
 61268  	}
 61269  	start_match++
 61270  	goto __135
 61271  __136:
 61272  	;
 61273  
 61274  	// If we have hit the end of the subject, there isn't another non-empty
 61275  	//     fragment, so give up.
 61276  
 61277  	if !(start_match >= true_end_subject) {
 61278  		goto __137
 61279  	}
 61280  
 61281  	rc = DMATCH_NOMATCH // In case it was partial
 61282  	goto __134
 61283  __137:
 61284  	;
 61285  
 61286  	// Check the rest of the subject
 61287  
 61288  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fcheck_subject = start_match
 61289  	rc = X_pcre2_valid_utf_8(tls, start_match, length-Tsize_t((int64(start_match)-int64(subject))/1),
 61290  		match_data+64)
 61291  
 61292  	// The rest of the subject is valid UTF.
 61293  
 61294  	if !(rc == 0) {
 61295  		goto __138
 61296  	}
 61297  
 61298  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject = libc.AssignUintptr(&end_subject, true_end_subject)
 61299  	fragment_options = DPCRE2_NOTBOL
 61300  	goto FRAGMENT_RESTART
 61301  	goto __139
 61302  __138:
 61303  	if !(rc < 0) {
 61304  		goto __140
 61305  	}
 61306  
 61307  	(*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_subject = libc.AssignUintptr(&end_subject, start_match+uintptr((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fstartchar))
 61308  	if !(end_subject > start_match) {
 61309  		goto __141
 61310  	}
 61311  
 61312  	fragment_options = DPCRE2_NOTBOL | DPCRE2_NOTEOL
 61313  	goto FRAGMENT_RESTART
 61314  __141:
 61315  	;
 61316  __140:
 61317  	;
 61318  __139:
 61319  	;
 61320  	goto __133
 61321  __133:
 61322  	goto __132
 61323  	goto __134
 61324  __134:
 61325  	;
 61326  __131:
 61327  	;
 61328  
 61329  	// Release an enlarged frame vector that is on the heap.
 61330  
 61331  	if !((*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames != (*Tmatch_block_8)(unsafe.Pointer(mb)).Fstack_frames) {
 61332  		goto __142
 61333  	}
 61334  	(*struct {
 61335  		f func(*libc.TLS, uintptr, uintptr)
 61336  	})(unsafe.Pointer(&struct{ uintptr }{(*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Ffree})).f(tls, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmatch_frames, (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmemctl.Fmemory_data)
 61337  __142:
 61338  	;
 61339  
 61340  	// Fill in fields that are always returned in the match data.
 61341  
 61342  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fcode = re
 61343  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmark = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fmark
 61344  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmatchedby = PCRE2_MATCHEDBY_INTERPRETER
 61345  
 61346  	// Handle a fully successful match. Set the return code to the number of
 61347  	// captured strings, or 0 if there were too many to fit into the ovector, and then
 61348  	// set the remaining returned values before returning. Make a copy of the subject
 61349  	// string if requested.
 61350  
 61351  	if !(rc == DMATCH_MATCH) {
 61352  		goto __143
 61353  	}
 61354  
 61355  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = func() int32 {
 61356  		if int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_offset_top) >= 2*int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) {
 61357  			return 0
 61358  		}
 61359  		return int32((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_offset_top)/2 + 1
 61360  	}()
 61361  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fstartchar = Tsize_t((int64(start_match) - int64(subject)) / 1)
 61362  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fleftchar = Tsize_t((int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fstart_used_ptr) - int64(subject)) / 1)
 61363  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frightchar = Tsize_t((func() int64 {
 61364  		if (*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr > (*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_match_ptr {
 61365  			return int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Flast_used_ptr)
 61366  		}
 61367  		return int64((*Tmatch_block_8)(unsafe.Pointer(mb)).Fend_match_ptr)
 61368  	}() - int64(subject)) / 1)
 61369  	if !(options&DPCRE2_COPY_MATCHED_SUBJECT != Tuint32_t(0)) {
 61370  		goto __144
 61371  	}
 61372  
 61373  	length = (length + Tsize_t(was_zero_terminated)) * uint64(DPCRE2_CODE_UNIT_WIDTH/8)
 61374  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject = (*struct {
 61375  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 61376  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmalloc})).f(tls, length,
 61377  		(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmemory_data)
 61378  	if !((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject == uintptr(0)) {
 61379  		goto __146
 61380  	}
 61381  	return -48
 61382  __146:
 61383  	;
 61384  	libc.X__builtin___memcpy_chk(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject, subject, length, libc.X__builtin_object_size(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject, 0))
 61385  	*(*Tuint8_t)(unsafe.Pointer(match_data + 73)) |= uint8(DPCRE2_MD_COPIED_SUBJECT)
 61386  	goto __145
 61387  __144:
 61388  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject = subject
 61389  __145:
 61390  	;
 61391  	return (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc
 61392  __143:
 61393  	;
 61394  
 61395  	// Control gets here if there has been a partial match, an error, or if the
 61396  	// overall match attempt has failed at all permitted starting positions. Any mark
 61397  	// data is in the nomatch_mark field.
 61398  
 61399  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmark = (*Tmatch_block_8)(unsafe.Pointer(mb)).Fnomatch_mark
 61400  
 61401  	// For anything other than nomatch or partial match, just return the code.
 61402  
 61403  	if !(rc != DMATCH_NOMATCH && rc != -2) {
 61404  		goto __147
 61405  	}
 61406  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = rc
 61407  	goto __148
 61408  __147:
 61409  	if !(match_partial != uintptr(0)) {
 61410  		goto __149
 61411  	}
 61412  
 61413  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject = subject
 61414  	*(*Tsize_t)(unsafe.Pointer(match_data + 80)) = Tsize_t((int64(match_partial) - int64(subject)) / 1)
 61415  	*(*Tsize_t)(unsafe.Pointer(match_data + 80 + 1*8)) = Tsize_t((int64(end_subject) - int64(subject)) / 1)
 61416  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fstartchar = Tsize_t((int64(match_partial) - int64(subject)) / 1)
 61417  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fleftchar = Tsize_t((int64(start_partial) - int64(subject)) / 1)
 61418  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frightchar = Tsize_t((int64(end_subject) - int64(subject)) / 1)
 61419  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = -2
 61420  	goto __150
 61421  __149:
 61422  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = -1
 61423  __150:
 61424  	;
 61425  __148:
 61426  	;
 61427  
 61428  	return (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc
 61429  }
 61430  
 61431  // These #undefs are here to enable unity builds with CMake.
 61432  
 61433  // End of pcre2_match.c
 61434  
 61435  // This function is needed only when memmove() is not available.
 61436  
 61437  // End of pcre2_internal.h
 61438  
 61439  // ************************************************
 61440  //
 61441  //  Create a match data block given ovector size  *
 61442  //
 61443  
 61444  // A minimum of 1 is imposed on the number of ovector pairs.
 61445  
 61446  func Xpcre2_match_data_create_8(tls *libc.TLS, oveccount Tuint32_t, gcontext uintptr) uintptr { /* pcre2_match_data.c:56:33: */
 61447  	var yield uintptr
 61448  	if oveccount < Tuint32_t(1) {
 61449  		oveccount = Tuint32_t(1)
 61450  	}
 61451  	yield = X_pcre2_memctl_malloc_8(tls,
 61452  		uint64(uintptr(0)+80)+uint64(Tuint32_t(2)*oveccount)*uint64(unsafe.Sizeof(Tsize_t(0))),
 61453  		gcontext)
 61454  	if yield == uintptr(0) {
 61455  		return uintptr(0)
 61456  	}
 61457  	(*Tpcre2_match_data_8)(unsafe.Pointer(yield)).Foveccount = Tuint16_t(oveccount)
 61458  	(*Tpcre2_match_data_8)(unsafe.Pointer(yield)).Fflags = Tuint8_t(0)
 61459  	return yield
 61460  }
 61461  
 61462  // ************************************************
 61463  //
 61464  //  Create a match data block using pattern data  *
 61465  //
 61466  
 61467  // If no context is supplied, use the memory allocator from the code.
 61468  
 61469  func Xpcre2_match_data_create_from_pattern_8(tls *libc.TLS, code uintptr, gcontext uintptr) uintptr { /* pcre2_match_data.c:78:33: */
 61470  	if gcontext == uintptr(0) {
 61471  		gcontext = code
 61472  	}
 61473  	return Xpcre2_match_data_create_8(tls, uint32(int32((*Tpcre2_real_code_8)(unsafe.Pointer(code)).Ftop_bracket)+1),
 61474  		gcontext)
 61475  }
 61476  
 61477  // ************************************************
 61478  //
 61479  //            Free a match data block             *
 61480  //
 61481  
 61482  func Xpcre2_match_data_free_8(tls *libc.TLS, match_data uintptr) { /* pcre2_match_data.c:94:1: */
 61483  	if match_data != uintptr(0) {
 61484  		if uint32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fflags)&DPCRE2_MD_COPIED_SUBJECT != uint32(0) {
 61485  			(*struct {
 61486  				f func(*libc.TLS, uintptr, uintptr)
 61487  			})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Ffree})).f(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject,
 61488  				(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmemory_data)
 61489  		}
 61490  		(*struct {
 61491  			f func(*libc.TLS, uintptr, uintptr)
 61492  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Ffree})).f(tls, match_data, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmemctl.Fmemory_data)
 61493  	}
 61494  }
 61495  
 61496  // ************************************************
 61497  //
 61498  //         Get last mark in match                 *
 61499  //
 61500  
 61501  func Xpcre2_get_mark_8(tls *libc.TLS, match_data uintptr) TPCRE2_SPTR8 { /* pcre2_match_data.c:112:1: */
 61502  	return (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmark
 61503  }
 61504  
 61505  // ************************************************
 61506  //
 61507  //          Get pointer to ovector                *
 61508  //
 61509  
 61510  func Xpcre2_get_ovector_pointer_8(tls *libc.TLS, match_data uintptr) uintptr { /* pcre2_match_data.c:123:27: */
 61511  	return match_data + 80 /* &.ovector */
 61512  }
 61513  
 61514  // ************************************************
 61515  //
 61516  //          Get number of ovector slots           *
 61517  //
 61518  
 61519  func Xpcre2_get_ovector_count_8(tls *libc.TLS, match_data uintptr) Tuint32_t { /* pcre2_match_data.c:136:1: */
 61520  	return Tuint32_t((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount)
 61521  }
 61522  
 61523  // ************************************************
 61524  //
 61525  //         Get starting code unit in match        *
 61526  //
 61527  
 61528  func Xpcre2_get_startchar_8(tls *libc.TLS, match_data uintptr) Tsize_t { /* pcre2_match_data.c:148:1: */
 61529  	return (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fstartchar
 61530  }
 61531  
 61532  // ************************************************
 61533  //
 61534  //         Get size of match data block           *
 61535  //
 61536  
 61537  func Xpcre2_get_match_data_size_8(tls *libc.TLS, match_data uintptr) Tsize_t { /* pcre2_match_data.c:160:1: */
 61538  	return uint64(uintptr(0)+80) + uint64(2*int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount))*uint64(unsafe.Sizeof(Tsize_t(0)))
 61539  }
 61540  
 61541  // End of pcre2_match_data.c
 61542  
 61543  // This function is needed only when memmove() is not available.
 61544  
 61545  // End of pcre2_internal.h
 61546  
 61547  // ************************************************
 61548  //
 61549  //      Check for newline at given position       *
 61550  //
 61551  
 61552  // This function is called only via the IS_NEWLINE macro, which does so only
 61553  // when the newline type is NLTYPE_ANY or NLTYPE_ANYCRLF. The case of a fixed
 61554  // newline (NLTYPE_FIXED) is handled inline. It is guaranteed that the code unit
 61555  // pointed to by ptr is less than the end of the string.
 61556  //
 61557  // Arguments:
 61558  //   ptr          pointer to possible newline
 61559  //   type         the newline type
 61560  //   endptr       pointer to the end of the string
 61561  //   lenptr       where to return the length
 61562  //   utf          TRUE if in utf mode
 61563  //
 61564  // Returns:       TRUE or FALSE
 61565  
 61566  func X_pcre2_is_newline_8(tls *libc.TLS, ptr TPCRE2_SPTR8, type1 Tuint32_t, endptr TPCRE2_SPTR8, lenptr uintptr, utf TBOOL) TBOOL { /* pcre2_newline.c:79:1: */
 61567  	var c Tuint32_t
 61568  
 61569  	if utf != 0 {
 61570  		c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))
 61571  		if c >= 0xc0 {
 61572  			if c&0x20 == Tuint32_t(0) {
 61573  				c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f
 61574  			} else if c&0x10 == Tuint32_t(0) {
 61575  				c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f
 61576  			} else if c&0x08 == Tuint32_t(0) {
 61577  				c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f
 61578  			} else if c&0x04 == Tuint32_t(0) {
 61579  				c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f
 61580  			} else {
 61581  				c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 5)))&0x3f
 61582  			}
 61583  		}
 61584  
 61585  	} else {
 61586  		c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))
 61587  	}
 61588  
 61589  	if type1 == Tuint32_t(DNLTYPE_ANYCRLF) {
 61590  		switch c {
 61591  		case Tuint32_t('\012'):
 61592  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = Tuint32_t(1)
 61593  			return DTRUE
 61594  			fallthrough
 61595  
 61596  		case Tuint32_t('\015'):
 61597  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = func() uint32 {
 61598  				if ptr < endptr-uintptr(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1))) == '\012' {
 61599  					return uint32(2)
 61600  				}
 61601  				return uint32(1)
 61602  			}()
 61603  			return DTRUE
 61604  			fallthrough
 61605  
 61606  		default:
 61607  			return DFALSE
 61608  		}
 61609  	} else {
 61610  		switch c {
 61611  		case Tuint32_t('\012'):
 61612  			fallthrough
 61613  		case Tuint32_t('\013'):
 61614  			fallthrough
 61615  		case Tuint32_t('\014'):
 61616  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = Tuint32_t(1)
 61617  			return DTRUE
 61618  			fallthrough
 61619  
 61620  		case Tuint32_t('\015'):
 61621  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = func() uint32 {
 61622  				if ptr < endptr-uintptr(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1))) == '\012' {
 61623  					return uint32(2)
 61624  				}
 61625  				return uint32(1)
 61626  			}()
 61627  			return DTRUE
 61628  			fallthrough
 61629  
 61630  		case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 61631  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = func() uint32 {
 61632  				if utf != 0 {
 61633  					return uint32(2)
 61634  				}
 61635  				return uint32(1)
 61636  			}()
 61637  			return DTRUE
 61638  			fallthrough
 61639  
 61640  		case Tuint32_t(0x2028):
 61641  			fallthrough // LS
 61642  		case Tuint32_t(0x2029): // PS
 61643  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = Tuint32_t(3)
 61644  			return DTRUE
 61645  			fallthrough
 61646  
 61647  		default:
 61648  			return DFALSE
 61649  		}
 61650  	}
 61651  	return TBOOL(0)
 61652  }
 61653  
 61654  // ************************************************
 61655  //
 61656  //     Check for newline at previous position     *
 61657  //
 61658  
 61659  // This function is called only via the WAS_NEWLINE macro, which does so only
 61660  // when the newline type is NLTYPE_ANY or NLTYPE_ANYCRLF. The case of a fixed
 61661  // newline (NLTYPE_FIXED) is handled inline. It is guaranteed that the initial
 61662  // value of ptr is greater than the start of the string that is being processed.
 61663  //
 61664  // Arguments:
 61665  //   ptr          pointer to possible newline
 61666  //   type         the newline type
 61667  //   startptr     pointer to the start of the string
 61668  //   lenptr       where to return the length
 61669  //   utf          TRUE if in utf mode
 61670  //
 61671  // Returns:       TRUE or FALSE
 61672  
 61673  func X_pcre2_was_newline_8(tls *libc.TLS, ptr TPCRE2_SPTR8, type1 Tuint32_t, startptr TPCRE2_SPTR8, lenptr uintptr, utf TBOOL) TBOOL { /* pcre2_newline.c:169:1: */
 61674  	var c Tuint32_t
 61675  	ptr--
 61676  
 61677  	if utf != 0 {
 61678  		for uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0xc0 == 0x80 {
 61679  			ptr--
 61680  		}
 61681  		c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))
 61682  		if c >= 0xc0 {
 61683  			if c&0x20 == Tuint32_t(0) {
 61684  				c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f
 61685  			} else if c&0x10 == Tuint32_t(0) {
 61686  				c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f
 61687  			} else if c&0x08 == Tuint32_t(0) {
 61688  				c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f
 61689  			} else if c&0x04 == Tuint32_t(0) {
 61690  				c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f
 61691  			} else {
 61692  				c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 5)))&0x3f
 61693  			}
 61694  		}
 61695  
 61696  	} else {
 61697  		c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))
 61698  	}
 61699  
 61700  	if type1 == Tuint32_t(DNLTYPE_ANYCRLF) {
 61701  		switch c {
 61702  		case Tuint32_t('\012'):
 61703  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = func() uint32 {
 61704  				if ptr > startptr && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + libc.UintptrFromInt32(-1)))) == '\015' {
 61705  					return uint32(2)
 61706  				}
 61707  				return uint32(1)
 61708  			}()
 61709  			return DTRUE
 61710  			fallthrough
 61711  
 61712  		case Tuint32_t('\015'):
 61713  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = Tuint32_t(1)
 61714  			return DTRUE
 61715  			fallthrough
 61716  
 61717  		default:
 61718  			return DFALSE
 61719  		}
 61720  	} else {
 61721  		switch c {
 61722  		case Tuint32_t('\012'):
 61723  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = func() uint32 {
 61724  				if ptr > startptr && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + libc.UintptrFromInt32(-1)))) == '\015' {
 61725  					return uint32(2)
 61726  				}
 61727  				return uint32(1)
 61728  			}()
 61729  			return DTRUE
 61730  			fallthrough
 61731  
 61732  		case Tuint32_t('\013'):
 61733  			fallthrough
 61734  		case Tuint32_t('\014'):
 61735  			fallthrough
 61736  		case Tuint32_t('\015'):
 61737  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = Tuint32_t(1)
 61738  			return DTRUE
 61739  			fallthrough
 61740  
 61741  		case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 61742  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = func() uint32 {
 61743  				if utf != 0 {
 61744  					return uint32(2)
 61745  				}
 61746  				return uint32(1)
 61747  			}()
 61748  			return DTRUE
 61749  			fallthrough
 61750  
 61751  		case Tuint32_t(0x2028):
 61752  			fallthrough // LS
 61753  		case Tuint32_t(0x2029): // PS
 61754  			*(*Tuint32_t)(unsafe.Pointer(lenptr)) = Tuint32_t(3)
 61755  			return DTRUE
 61756  			fallthrough
 61757  
 61758  		default:
 61759  			return DFALSE
 61760  		}
 61761  	}
 61762  	return TBOOL(0)
 61763  }
 61764  
 61765  // End of pcre2_newline.c
 61766  
 61767  // This function is needed only when memmove() is not available.
 61768  
 61769  // End of pcre2_internal.h
 61770  
 61771  // If SUPPORT_UNICODE is not defined, this function will never be called.
 61772  // Supply a dummy function because some compilers do not like empty source
 61773  // modules.
 61774  
 61775  // ************************************************
 61776  //
 61777  //          Convert code point to UTF             *
 61778  //
 61779  
 61780  //
 61781  // Arguments:
 61782  //   cvalue     the character value
 61783  //   buffer     pointer to buffer for result
 61784  //
 61785  // Returns:     number of code units placed in the buffer
 61786  
 61787  func X_pcre2_ord2utf_8(tls *libc.TLS, cvalue Tuint32_t, buffer uintptr) uint32 { /* pcre2_ord2utf.c:81:1: */
 61788  	// Convert to UTF-8
 61789  
 61790  	var i int32
 61791  	var j int32
 61792  	for i = 0; i < X_pcre2_utf8_table1_size; i++ {
 61793  		if int32(cvalue) <= X_pcre2_utf8_table1[i] {
 61794  			break
 61795  		}
 61796  	}
 61797  	buffer += uintptr(i)
 61798  	for j = i; j > 0; j-- {
 61799  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostDecUintptr(&buffer, 1))) = TPCRE2_UCHAR8(Tuint32_t(0x80) | cvalue&Tuint32_t(0x3f))
 61800  		cvalue >>= 6
 61801  	}
 61802  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(buffer)) = TPCRE2_UCHAR8(Tuint32_t(X_pcre2_utf8_table2[i]) | cvalue)
 61803  	return uint32(i + 1)
 61804  
 61805  	// Convert to UTF-16
 61806  
 61807  }
 61808  
 61809  // End of pcre_ord2utf.c
 61810  
 61811  // This function is needed only when memmove() is not available.
 61812  
 61813  // End of pcre2_internal.h
 61814  
 61815  // ************************************************
 61816  //
 61817  //        Return info about compiled pattern      *
 61818  //
 61819  
 61820  //
 61821  // Arguments:
 61822  //   code          points to compiled code
 61823  //   what          what information is required
 61824  //   where         where to put the information; if NULL, return length
 61825  //
 61826  // Returns:        0 when data returned
 61827  //                 > 0 when length requested
 61828  //                 < 0 on error or unset value
 61829  
 61830  func Xpcre2_pattern_info_8(tls *libc.TLS, code uintptr, what Tuint32_t, where uintptr) int32 { /* pcre2_pattern_info.c:65:1: */
 61831  	var re uintptr = code
 61832  
 61833  	if where == uintptr(0) {
 61834  		switch what {
 61835  		case Tuint32_t(DPCRE2_INFO_ALLOPTIONS):
 61836  			fallthrough
 61837  		case Tuint32_t(DPCRE2_INFO_ARGOPTIONS):
 61838  			fallthrough
 61839  		case Tuint32_t(DPCRE2_INFO_BACKREFMAX):
 61840  			fallthrough
 61841  		case Tuint32_t(DPCRE2_INFO_BSR):
 61842  			fallthrough
 61843  		case Tuint32_t(DPCRE2_INFO_CAPTURECOUNT):
 61844  			fallthrough
 61845  		case Tuint32_t(DPCRE2_INFO_DEPTHLIMIT):
 61846  			fallthrough
 61847  		case Tuint32_t(DPCRE2_INFO_EXTRAOPTIONS):
 61848  			fallthrough
 61849  		case Tuint32_t(DPCRE2_INFO_FIRSTCODETYPE):
 61850  			fallthrough
 61851  		case Tuint32_t(DPCRE2_INFO_FIRSTCODEUNIT):
 61852  			fallthrough
 61853  		case Tuint32_t(DPCRE2_INFO_HASBACKSLASHC):
 61854  			fallthrough
 61855  		case Tuint32_t(DPCRE2_INFO_HASCRORLF):
 61856  			fallthrough
 61857  		case Tuint32_t(DPCRE2_INFO_HEAPLIMIT):
 61858  			fallthrough
 61859  		case Tuint32_t(DPCRE2_INFO_JCHANGED):
 61860  			fallthrough
 61861  		case Tuint32_t(DPCRE2_INFO_LASTCODETYPE):
 61862  			fallthrough
 61863  		case Tuint32_t(DPCRE2_INFO_LASTCODEUNIT):
 61864  			fallthrough
 61865  		case Tuint32_t(DPCRE2_INFO_MATCHEMPTY):
 61866  			fallthrough
 61867  		case Tuint32_t(DPCRE2_INFO_MATCHLIMIT):
 61868  			fallthrough
 61869  		case Tuint32_t(DPCRE2_INFO_MAXLOOKBEHIND):
 61870  			fallthrough
 61871  		case Tuint32_t(DPCRE2_INFO_MINLENGTH):
 61872  			fallthrough
 61873  		case Tuint32_t(DPCRE2_INFO_NAMEENTRYSIZE):
 61874  			fallthrough
 61875  		case Tuint32_t(DPCRE2_INFO_NAMECOUNT):
 61876  			fallthrough
 61877  		case Tuint32_t(DPCRE2_INFO_NEWLINE):
 61878  			return int32(unsafe.Sizeof(Tuint32_t(0)))
 61879  			fallthrough
 61880  
 61881  		case Tuint32_t(DPCRE2_INFO_FIRSTBITMAP):
 61882  			return int32(unsafe.Sizeof(uintptr(0)))
 61883  			fallthrough
 61884  
 61885  		case Tuint32_t(DPCRE2_INFO_JITSIZE):
 61886  			fallthrough
 61887  		case Tuint32_t(DPCRE2_INFO_SIZE):
 61888  			fallthrough
 61889  		case Tuint32_t(DPCRE2_INFO_FRAMESIZE):
 61890  			return int32(unsafe.Sizeof(Tsize_t(0)))
 61891  			fallthrough
 61892  
 61893  		case Tuint32_t(DPCRE2_INFO_NAMETABLE):
 61894  			return int32(unsafe.Sizeof(TPCRE2_SPTR8(0)))
 61895  		}
 61896  	}
 61897  
 61898  	if re == uintptr(0) {
 61899  		return -51
 61900  	}
 61901  
 61902  	// Check that the first field in the block is the magic number. If it is not,
 61903  	// return with PCRE2_ERROR_BADMAGIC.
 61904  
 61905  	if uint64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmagic_number) != DMAGIC_NUMBER {
 61906  		return -31
 61907  	}
 61908  
 61909  	// Check that this pattern was compiled in the correct bit mode
 61910  
 61911  	if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8) == Tuint32_t(0) {
 61912  		return -32
 61913  	}
 61914  
 61915  	switch what {
 61916  	case Tuint32_t(DPCRE2_INFO_ALLOPTIONS):
 61917  		*(*Tuint32_t)(unsafe.Pointer(where)) = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options
 61918  		break
 61919  
 61920  	case Tuint32_t(DPCRE2_INFO_ARGOPTIONS):
 61921  		*(*Tuint32_t)(unsafe.Pointer(where)) = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fcompile_options
 61922  		break
 61923  
 61924  	case Tuint32_t(DPCRE2_INFO_BACKREFMAX):
 61925  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_backref)
 61926  		break
 61927  
 61928  	case Tuint32_t(DPCRE2_INFO_BSR):
 61929  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fbsr_convention)
 61930  		break
 61931  
 61932  	case Tuint32_t(DPCRE2_INFO_CAPTURECOUNT):
 61933  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_bracket)
 61934  		break
 61935  
 61936  	case Tuint32_t(DPCRE2_INFO_DEPTHLIMIT):
 61937  		*(*Tuint32_t)(unsafe.Pointer(where)) = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_depth
 61938  		if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_depth == 4294967295 {
 61939  			return -55
 61940  		}
 61941  		break
 61942  
 61943  	case Tuint32_t(DPCRE2_INFO_EXTRAOPTIONS):
 61944  		*(*Tuint32_t)(unsafe.Pointer(where)) = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fextra_options
 61945  		break
 61946  
 61947  	case Tuint32_t(DPCRE2_INFO_FIRSTCODETYPE):
 61948  		*(*Tuint32_t)(unsafe.Pointer(where)) = func() uint32 {
 61949  			if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTSET) != Tuint32_t(0) {
 61950  				return uint32(1)
 61951  			}
 61952  			return func() uint32 {
 61953  				if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_STARTLINE) != Tuint32_t(0) {
 61954  					return uint32(2)
 61955  				}
 61956  				return uint32(0)
 61957  			}()
 61958  		}()
 61959  		break
 61960  
 61961  	case Tuint32_t(DPCRE2_INFO_FIRSTCODEUNIT):
 61962  		*(*Tuint32_t)(unsafe.Pointer(where)) = func() uint32 {
 61963  			if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTSET) != Tuint32_t(0) {
 61964  				return (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ffirst_codeunit
 61965  			}
 61966  			return uint32(0)
 61967  		}()
 61968  		break
 61969  
 61970  	case Tuint32_t(DPCRE2_INFO_FIRSTBITMAP):
 61971  		*(*uintptr)(unsafe.Pointer(where)) = func() uintptr {
 61972  			if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTMAPSET) != Tuint32_t(0) {
 61973  				return re + 40
 61974  			}
 61975  			return uintptr(0)
 61976  		}()
 61977  		break
 61978  
 61979  	case Tuint32_t(DPCRE2_INFO_FRAMESIZE):
 61980  		*(*Tsize_t)(unsafe.Pointer(where)) = uint64(uintptr(0)+128) + uint64(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_bracket)*2)*uint64(unsafe.Sizeof(Tsize_t(0)))
 61981  		break
 61982  
 61983  	case Tuint32_t(DPCRE2_INFO_HASBACKSLASHC):
 61984  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_HASBKC) != Tuint32_t(0)))
 61985  		break
 61986  
 61987  	case Tuint32_t(DPCRE2_INFO_HASCRORLF):
 61988  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_HASCRORLF) != Tuint32_t(0)))
 61989  		break
 61990  
 61991  	case Tuint32_t(DPCRE2_INFO_HEAPLIMIT):
 61992  		*(*Tuint32_t)(unsafe.Pointer(where)) = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_heap
 61993  		if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_heap == 4294967295 {
 61994  			return -55
 61995  		}
 61996  		break
 61997  
 61998  	case Tuint32_t(DPCRE2_INFO_JCHANGED):
 61999  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_JCHANGED) != Tuint32_t(0)))
 62000  		break
 62001  
 62002  	case Tuint32_t(DPCRE2_INFO_JITSIZE):
 62003  		*(*Tsize_t)(unsafe.Pointer(where)) = uint64(0)
 62004  		break
 62005  
 62006  	case Tuint32_t(DPCRE2_INFO_LASTCODETYPE):
 62007  		*(*Tuint32_t)(unsafe.Pointer(where)) = func() uint32 {
 62008  			if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_LASTSET) != Tuint32_t(0) {
 62009  				return uint32(1)
 62010  			}
 62011  			return uint32(0)
 62012  		}()
 62013  		break
 62014  
 62015  	case Tuint32_t(DPCRE2_INFO_LASTCODEUNIT):
 62016  		*(*Tuint32_t)(unsafe.Pointer(where)) = func() uint32 {
 62017  			if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_LASTSET) != Tuint32_t(0) {
 62018  				return (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flast_codeunit
 62019  			}
 62020  			return uint32(0)
 62021  		}()
 62022  		break
 62023  
 62024  	case Tuint32_t(DPCRE2_INFO_MATCHEMPTY):
 62025  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t(libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_MATCH_EMPTY) != Tuint32_t(0)))
 62026  		break
 62027  
 62028  	case Tuint32_t(DPCRE2_INFO_MATCHLIMIT):
 62029  		*(*Tuint32_t)(unsafe.Pointer(where)) = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_match
 62030  		if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flimit_match == 4294967295 {
 62031  			return -55
 62032  		}
 62033  		break
 62034  
 62035  	case Tuint32_t(DPCRE2_INFO_MAXLOOKBEHIND):
 62036  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmax_lookbehind)
 62037  		break
 62038  
 62039  	case Tuint32_t(DPCRE2_INFO_MINLENGTH):
 62040  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fminlength)
 62041  		break
 62042  
 62043  	case Tuint32_t(DPCRE2_INFO_NAMEENTRYSIZE):
 62044  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size)
 62045  		break
 62046  
 62047  	case Tuint32_t(DPCRE2_INFO_NAMECOUNT):
 62048  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count)
 62049  		break
 62050  
 62051  	case Tuint32_t(DPCRE2_INFO_NAMETABLE):
 62052  		*(*TPCRE2_SPTR8)(unsafe.Pointer(where)) = re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{})))
 62053  		break
 62054  
 62055  	case Tuint32_t(DPCRE2_INFO_NEWLINE):
 62056  		*(*Tuint32_t)(unsafe.Pointer(where)) = Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fnewline_convention)
 62057  		break
 62058  
 62059  	case Tuint32_t(DPCRE2_INFO_SIZE):
 62060  		*(*Tsize_t)(unsafe.Pointer(where)) = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fblocksize
 62061  		break
 62062  
 62063  	default:
 62064  		return -34
 62065  	}
 62066  
 62067  	return 0
 62068  }
 62069  
 62070  // ************************************************
 62071  //
 62072  //              Callout enumerator                *
 62073  //
 62074  
 62075  //
 62076  // Arguments:
 62077  //   code          points to compiled code
 62078  //   callback      function called for each callout block
 62079  //   callout_data  user data passed to the callback
 62080  //
 62081  // Returns:        0 when successfully completed
 62082  //                 < 0 on local error
 62083  //                != 0 for callback error
 62084  
 62085  func Xpcre2_callout_enumerate_8(tls *libc.TLS, code uintptr, callback uintptr, callout_data uintptr) int32 { /* pcre2_pattern_info.c:268:1: */
 62086  	bp := tls.Alloc(56)
 62087  	defer tls.Free(56)
 62088  
 62089  	var re uintptr = code
 62090  	// var cb Tpcre2_callout_enumerate_block_8 at bp, 56
 62091  
 62092  	var cc TPCRE2_SPTR8
 62093  	var utf TBOOL
 62094  
 62095  	if re == uintptr(0) {
 62096  		return -51
 62097  	}
 62098  
 62099  	utf = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UTF != Tuint32_t(0))
 62100  
 62101  	// Check that the first field in the block is the magic number. If it is not,
 62102  	// return with PCRE2_ERROR_BADMAGIC.
 62103  
 62104  	if uint64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmagic_number) != DMAGIC_NUMBER {
 62105  		return -31
 62106  	}
 62107  
 62108  	// Check that this pattern was compiled in the correct bit mode
 62109  
 62110  	if (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_CODE_UNIT_WIDTH/8) == Tuint32_t(0) {
 62111  		return -32
 62112  	}
 62113  
 62114  	(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fversion = Tuint32_t(0)
 62115  	cc = re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{}))) +
 62116  		uintptr(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count)*int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size))
 62117  
 62118  	for 1 != 0 {
 62119  		var rc int32
 62120  		switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))) {
 62121  		case OP_END:
 62122  			return 0
 62123  
 62124  		case OP_CHAR:
 62125  			fallthrough
 62126  		case OP_CHARI:
 62127  			fallthrough
 62128  		case OP_NOT:
 62129  			fallthrough
 62130  		case OP_NOTI:
 62131  			fallthrough
 62132  		case OP_STAR:
 62133  			fallthrough
 62134  		case OP_MINSTAR:
 62135  			fallthrough
 62136  		case OP_PLUS:
 62137  			fallthrough
 62138  		case OP_MINPLUS:
 62139  			fallthrough
 62140  		case OP_QUERY:
 62141  			fallthrough
 62142  		case OP_MINQUERY:
 62143  			fallthrough
 62144  		case OP_UPTO:
 62145  			fallthrough
 62146  		case OP_MINUPTO:
 62147  			fallthrough
 62148  		case OP_EXACT:
 62149  			fallthrough
 62150  		case OP_POSSTAR:
 62151  			fallthrough
 62152  		case OP_POSPLUS:
 62153  			fallthrough
 62154  		case OP_POSQUERY:
 62155  			fallthrough
 62156  		case OP_POSUPTO:
 62157  			fallthrough
 62158  		case OP_STARI:
 62159  			fallthrough
 62160  		case OP_MINSTARI:
 62161  			fallthrough
 62162  		case OP_PLUSI:
 62163  			fallthrough
 62164  		case OP_MINPLUSI:
 62165  			fallthrough
 62166  		case OP_QUERYI:
 62167  			fallthrough
 62168  		case OP_MINQUERYI:
 62169  			fallthrough
 62170  		case OP_UPTOI:
 62171  			fallthrough
 62172  		case OP_MINUPTOI:
 62173  			fallthrough
 62174  		case OP_EXACTI:
 62175  			fallthrough
 62176  		case OP_POSSTARI:
 62177  			fallthrough
 62178  		case OP_POSPLUSI:
 62179  			fallthrough
 62180  		case OP_POSQUERYI:
 62181  			fallthrough
 62182  		case OP_POSUPTOI:
 62183  			fallthrough
 62184  		case OP_NOTSTAR:
 62185  			fallthrough
 62186  		case OP_NOTMINSTAR:
 62187  			fallthrough
 62188  		case OP_NOTPLUS:
 62189  			fallthrough
 62190  		case OP_NOTMINPLUS:
 62191  			fallthrough
 62192  		case OP_NOTQUERY:
 62193  			fallthrough
 62194  		case OP_NOTMINQUERY:
 62195  			fallthrough
 62196  		case OP_NOTUPTO:
 62197  			fallthrough
 62198  		case OP_NOTMINUPTO:
 62199  			fallthrough
 62200  		case OP_NOTEXACT:
 62201  			fallthrough
 62202  		case OP_NOTPOSSTAR:
 62203  			fallthrough
 62204  		case OP_NOTPOSPLUS:
 62205  			fallthrough
 62206  		case OP_NOTPOSQUERY:
 62207  			fallthrough
 62208  		case OP_NOTPOSUPTO:
 62209  			fallthrough
 62210  		case OP_NOTSTARI:
 62211  			fallthrough
 62212  		case OP_NOTMINSTARI:
 62213  			fallthrough
 62214  		case OP_NOTPLUSI:
 62215  			fallthrough
 62216  		case OP_NOTMINPLUSI:
 62217  			fallthrough
 62218  		case OP_NOTQUERYI:
 62219  			fallthrough
 62220  		case OP_NOTMINQUERYI:
 62221  			fallthrough
 62222  		case OP_NOTUPTOI:
 62223  			fallthrough
 62224  		case OP_NOTMINUPTOI:
 62225  			fallthrough
 62226  		case OP_NOTEXACTI:
 62227  			fallthrough
 62228  		case OP_NOTPOSSTARI:
 62229  			fallthrough
 62230  		case OP_NOTPOSPLUSI:
 62231  			fallthrough
 62232  		case OP_NOTPOSQUERYI:
 62233  			fallthrough
 62234  		case OP_NOTPOSUPTOI:
 62235  			cc += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))])
 62236  			if utf != 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1)))) >= 0xc0 {
 62237  				cc += TPCRE2_SPTR8(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1))))&0x3f])
 62238  			}
 62239  			break
 62240  
 62241  		case OP_TYPESTAR:
 62242  			fallthrough
 62243  		case OP_TYPEMINSTAR:
 62244  			fallthrough
 62245  		case OP_TYPEPLUS:
 62246  			fallthrough
 62247  		case OP_TYPEMINPLUS:
 62248  			fallthrough
 62249  		case OP_TYPEQUERY:
 62250  			fallthrough
 62251  		case OP_TYPEMINQUERY:
 62252  			fallthrough
 62253  		case OP_TYPEUPTO:
 62254  			fallthrough
 62255  		case OP_TYPEMINUPTO:
 62256  			fallthrough
 62257  		case OP_TYPEEXACT:
 62258  			fallthrough
 62259  		case OP_TYPEPOSSTAR:
 62260  			fallthrough
 62261  		case OP_TYPEPOSPLUS:
 62262  			fallthrough
 62263  		case OP_TYPEPOSQUERY:
 62264  			fallthrough
 62265  		case OP_TYPEPOSUPTO:
 62266  			cc += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))])
 62267  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1)))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1)))) == OP_NOTPROP {
 62268  				cc += uintptr(2)
 62269  			}
 62270  			break
 62271  
 62272  		case OP_XCLASS:
 62273  			cc += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 62274  			break
 62275  
 62276  		case OP_MARK:
 62277  			fallthrough
 62278  		case OP_COMMIT_ARG:
 62279  			fallthrough
 62280  		case OP_PRUNE_ARG:
 62281  			fallthrough
 62282  		case OP_SKIP_ARG:
 62283  			fallthrough
 62284  		case OP_THEN_ARG:
 62285  			cc += TPCRE2_SPTR8(int32(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))]) + int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1))))
 62286  			break
 62287  
 62288  		case OP_CALLOUT:
 62289  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fpattern_position = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 62290  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fnext_item_length = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 4)))))
 62291  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_number = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 5)))
 62292  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_string_offset = uint64(0)
 62293  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_string_length = uint64(0)
 62294  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_string = uintptr(0)
 62295  			rc = (*struct {
 62296  				f func(*libc.TLS, uintptr, uintptr) int32
 62297  			})(unsafe.Pointer(&struct{ uintptr }{callback})).f(tls, bp /* &cb */, callout_data)
 62298  			if rc != 0 {
 62299  				return rc
 62300  			}
 62301  			cc += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))])
 62302  			break
 62303  
 62304  		case OP_CALLOUT_STR:
 62305  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fpattern_position = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 62306  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fnext_item_length = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 4)))))
 62307  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_number = Tuint32_t(0)
 62308  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_string_offset = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 7)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 8)))))
 62309  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_string_length = Tsize_t(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 5)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 6)))) - uint32(1+4*DLINK_SIZE) - uint32(2))
 62310  			(*Tpcre2_callout_enumerate_block_8)(unsafe.Pointer(bp /* &cb */)).Fcallout_string = cc + uintptr(1+4*DLINK_SIZE) + uintptr(1)
 62311  			rc = (*struct {
 62312  				f func(*libc.TLS, uintptr, uintptr) int32
 62313  			})(unsafe.Pointer(&struct{ uintptr }{callback})).f(tls, bp /* &cb */, callout_data)
 62314  			if rc != 0 {
 62315  				return rc
 62316  			}
 62317  			cc += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 6)))))
 62318  			break
 62319  
 62320  		default:
 62321  			cc += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))])
 62322  			break
 62323  		}
 62324  	}
 62325  	return int32(0)
 62326  }
 62327  
 62328  // End of pcre2_pattern_info.c
 62329  
 62330  func X_pcre2_script_run_8(tls *libc.TLS, ptr TPCRE2_SPTR8, endptr TPCRE2_SPTR8, utf TBOOL) TBOOL { /* pcre2_script_run.c:85:1: */
 62331  	bp := tls.Alloc(48)
 62332  	defer tls.Free(48)
 62333  
 62334  	var require_state Tuint32_t = SCRIPT_UNSET
 62335  	// var require_map [6]Tuint32_t at bp, 24
 62336  
 62337  	// var map1 [6]Tuint32_t at bp+24, 24
 62338  
 62339  	var require_digitset Tuint32_t = Tuint32_t(0)
 62340  	var c Tuint32_t
 62341  
 62342  	// Any string containing fewer than 2 characters is a valid script run.
 62343  
 62344  	if ptr >= endptr {
 62345  		return DTRUE
 62346  	}
 62347  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1))))
 62348  	if utf != 0 && c >= 0xc0 {
 62349  		if c&0x20 == Tuint32_t(0) {
 62350  			c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1))))&0x3f
 62351  		} else if c&0x10 == Tuint32_t(0) {
 62352  			c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f
 62353  			ptr += uintptr(2)
 62354  		} else if c&0x08 == Tuint32_t(0) {
 62355  			c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f
 62356  			ptr += uintptr(3)
 62357  		} else if c&0x04 == Tuint32_t(0) {
 62358  			c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f
 62359  			ptr += uintptr(4)
 62360  		} else {
 62361  			c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f
 62362  			ptr += uintptr(5)
 62363  		}
 62364  	}
 62365  
 62366  	if ptr >= endptr {
 62367  		return DTRUE
 62368  	}
 62369  
 62370  	// Initialize the require map. This is a full-size bitmap that has a bit for
 62371  	// every script, as opposed to the maps in ucd_script_sets, which only have bits
 62372  	// for scripts less than ucp_Unknown - those that appear in script extension
 62373  	// lists.
 62374  
 62375  	{
 62376  		var i int32 = 0
 62377  	__1:
 62378  		if !(i < ucp_Script_Count/32+1) {
 62379  			goto __3
 62380  		}
 62381  		*(*Tuint32_t)(unsafe.Pointer(bp + uintptr(i)*4)) = Tuint32_t(0)
 62382  		goto __2
 62383  	__2:
 62384  		i++
 62385  		goto __1
 62386  		goto __3
 62387  	__3:
 62388  	}
 62389  
 62390  	// Scan strings of two or more characters, checking the Unicode characteristics
 62391  	// of each code point. There is special code for scripts that can be combined with
 62392  	// characters from the Han Chinese script. This may be used in conjunction with
 62393  	// four other scripts in these combinations:
 62394  	//
 62395  	// . Han with Hiragana and Katakana is allowed (for Japanese).
 62396  	// . Han with Bopomofo is allowed (for Taiwanese Mandarin).
 62397  	// . Han with Hangul is allowed (for Korean).
 62398  	//
 62399  	// If the first significant character's script is one of the four, the required
 62400  	// script type is immediately known. However, if the first significant
 62401  	// character's script is Han, we have to keep checking for a non-Han character.
 62402  	// Hence the SCRIPT_HANPENDING state.
 62403  
 62404  	for {
 62405  		var ucd uintptr = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12
 62406  		var script Tuint32_t = Tuint32_t((*Tucd_record)(unsafe.Pointer(ucd)).Fscript)
 62407  
 62408  		// If the script is Unknown, the string is not a valid script run. Such
 62409  		//   characters can only form script runs of length one (see test above).
 62410  
 62411  		if script == ucp_Unknown {
 62412  			return DFALSE
 62413  		}
 62414  
 62415  		// A character without any script extensions whose script is Inherited or
 62416  		//   Common is always accepted with any script. If there are extensions, the
 62417  		//   following processing happens for all scripts.
 62418  
 62419  		if int32((*Tucd_record)(unsafe.Pointer(ucd)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK != 0 || script != ucp_Inherited && script != ucp_Common {
 62420  			var OK TBOOL
 62421  
 62422  			// Set up a full-sized map for this character that can include bits for all
 62423  			//     scripts. Copy the scriptx map for this character (which covers those
 62424  			//     scripts that appear in script extension lists), set the remaining values to
 62425  			//     zero, and then, except for Common or Inherited, add this script's bit to
 62426  			//     the map.
 62427  
 62428  			libc.X__builtin___memcpy_chk(tls, bp+24, uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8))+uintptr(int32((*Tucd_record)(unsafe.Pointer(ucd)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4, uint64(ucp_Unknown/32+1)*uint64(unsafe.Sizeof(Tuint32_t(0))), libc.X__builtin_object_size(tls, bp+24, 0))
 62429  			libc.X__builtin___memset_chk(tls, bp+24+uintptr(ucp_Unknown/32+1)*4, 0, uint64(ucp_Script_Count/32+1-(ucp_Unknown/32+1))*uint64(unsafe.Sizeof(Tuint32_t(0))), libc.X__builtin_object_size(tls, bp+24+uintptr(ucp_Unknown/32+1)*4, 0))
 62430  			if script != ucp_Common && script != ucp_Inherited {
 62431  				*(*Tuint32_t)(unsafe.Pointer(bp + 24 + uintptr(script/Tuint32_t(32))*4)) |= uint32(1) << (script % Tuint32_t(32))
 62432  			}
 62433  
 62434  			// Handle the different checking states
 62435  
 62436  			switch require_state {
 62437  			// First significant character - it might follow Common or Inherited
 62438  			//       characters that do not have any script extensions.
 62439  
 62440  			case SCRIPT_UNSET:
 62441  				switch script {
 62442  				case ucp_Han:
 62443  					require_state = SCRIPT_HANPENDING
 62444  					break
 62445  					fallthrough
 62446  
 62447  				case ucp_Hiragana:
 62448  					fallthrough
 62449  				case ucp_Katakana:
 62450  					require_state = SCRIPT_HANHIRAKATA
 62451  					break
 62452  					fallthrough
 62453  
 62454  				case ucp_Bopomofo:
 62455  					require_state = SCRIPT_HANBOPOMOFO
 62456  					break
 62457  					fallthrough
 62458  
 62459  				case ucp_Hangul:
 62460  					require_state = SCRIPT_HANHANGUL
 62461  					break
 62462  					fallthrough
 62463  
 62464  				default:
 62465  					libc.X__builtin___memcpy_chk(tls, bp, bp+24, uint64(ucp_Script_Count/32+1)*uint64(unsafe.Sizeof(Tuint32_t(0))), libc.X__builtin_object_size(tls, bp, 0))
 62466  					require_state = SCRIPT_MAP
 62467  					break
 62468  				}
 62469  				break
 62470  				fallthrough
 62471  
 62472  			// The first significant character was Han. An inspection of the Unicode
 62473  			//       11.0.0 files shows that there are the following types of Script Extension
 62474  			//       list that involve the Han, Bopomofo, Hiragana, Katakana, and Hangul
 62475  			//       scripts:
 62476  			//
 62477  			//       . Bopomofo + Han
 62478  			//       . Han + Hiragana + Katakana
 62479  			//       . Hiragana + Katakana
 62480  			//       . Bopopmofo + Hangul + Han + Hiragana + Katakana
 62481  			//
 62482  			//       The following code tries to make sense of this.
 62483  
 62484  			case SCRIPT_HANPENDING:
 62485  				if script != ucp_Han {
 62486  					var chspecial Tuint32_t = Tuint32_t(0)
 62487  
 62488  					if *(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Bopomofo%32)) != Tuint32_t(0) {
 62489  						chspecial = chspecial | Tuint32_t(DFOUND_BOPOMOFO)
 62490  					}
 62491  					if *(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Hiragana%32)) != Tuint32_t(0) {
 62492  						chspecial = chspecial | Tuint32_t(DFOUND_HIRAGANA)
 62493  					}
 62494  					if *(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Katakana%32)) != Tuint32_t(0) {
 62495  						chspecial = chspecial | Tuint32_t(DFOUND_KATAKANA)
 62496  					}
 62497  					if *(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Hangul%32)) != Tuint32_t(0) {
 62498  						chspecial = chspecial | Tuint32_t(DFOUND_HANGUL)
 62499  					}
 62500  
 62501  					if chspecial == Tuint32_t(0) {
 62502  						return DFALSE
 62503  					} // Not allowed with Han
 62504  
 62505  					if chspecial == Tuint32_t(DFOUND_BOPOMOFO) {
 62506  						require_state = SCRIPT_HANBOPOMOFO
 62507  					} else if chspecial == Tuint32_t(DFOUND_HIRAGANA|DFOUND_KATAKANA) {
 62508  						require_state = SCRIPT_HANHIRAKATA
 62509  					}
 62510  
 62511  					// Otherwise this character must be allowed with all of them, so remain
 62512  					//         in the pending state.
 62513  				}
 62514  				break
 62515  				fallthrough
 62516  
 62517  			// Previously encountered one of the "with Han" scripts. Check that
 62518  			//       this character is appropriate.
 62519  
 62520  			case SCRIPT_HANHIRAKATA:
 62521  				if *(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Han%32))+*(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Hiragana%32))+*(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Katakana%32)) == Tuint32_t(0) {
 62522  					return DFALSE
 62523  				}
 62524  				break
 62525  				fallthrough
 62526  
 62527  			case SCRIPT_HANBOPOMOFO:
 62528  				if *(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Han%32))+*(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Bopomofo%32)) == Tuint32_t(0) {
 62529  					return DFALSE
 62530  				}
 62531  				break
 62532  				fallthrough
 62533  
 62534  			case SCRIPT_HANHANGUL:
 62535  				if *(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Han%32))+*(*Tuint32_t)(unsafe.Pointer(bp + 24))&(uint32(1)<<(ucp_Hangul%32)) == Tuint32_t(0) {
 62536  					return DFALSE
 62537  				}
 62538  				break
 62539  				fallthrough
 62540  
 62541  			// Previously encountered one or more characters that are allowed with a
 62542  			//       list of scripts.
 62543  
 62544  			case SCRIPT_MAP:
 62545  				OK = DFALSE
 62546  
 62547  				{
 62548  					var i int32 = 0
 62549  				__4:
 62550  					if !(i < ucp_Script_Count/32+1) {
 62551  						goto __6
 62552  					}
 62553  					{
 62554  						if *(*Tuint32_t)(unsafe.Pointer(bp + uintptr(i)*4))&*(*Tuint32_t)(unsafe.Pointer(bp + 24 + uintptr(i)*4)) != Tuint32_t(0) {
 62555  							OK = DTRUE
 62556  							goto __6
 62557  						}
 62558  
 62559  					}
 62560  					goto __5
 62561  				__5:
 62562  					i++
 62563  					goto __4
 62564  					goto __6
 62565  				__6:
 62566  				}
 62567  
 62568  				if !(OK != 0) {
 62569  					return DFALSE
 62570  				}
 62571  
 62572  				// The rest of the string must be in this script, but we have to
 62573  				//       allow for the Han complications.
 62574  
 62575  				switch script {
 62576  				case ucp_Han:
 62577  					require_state = SCRIPT_HANPENDING
 62578  					break
 62579  					fallthrough
 62580  
 62581  				case ucp_Hiragana:
 62582  					fallthrough
 62583  				case ucp_Katakana:
 62584  					require_state = SCRIPT_HANHIRAKATA
 62585  					break
 62586  					fallthrough
 62587  
 62588  				case ucp_Bopomofo:
 62589  					require_state = SCRIPT_HANBOPOMOFO
 62590  					break
 62591  					fallthrough
 62592  
 62593  				case ucp_Hangul:
 62594  					require_state = SCRIPT_HANHANGUL
 62595  					break
 62596  					fallthrough
 62597  
 62598  				// Compute the intersection of the required list of scripts and the
 62599  				//         allowed scripts for this character.
 62600  
 62601  				default:
 62602  					{
 62603  						var i int32 = 0
 62604  					__7:
 62605  						if !(i < ucp_Script_Count/32+1) {
 62606  							goto __9
 62607  						}
 62608  						*(*Tuint32_t)(unsafe.Pointer(bp + uintptr(i)*4)) &= *(*Tuint32_t)(unsafe.Pointer(bp + 24 + uintptr(i)*4))
 62609  						goto __8
 62610  					__8:
 62611  						i++
 62612  						goto __7
 62613  						goto __9
 62614  					__9:
 62615  					}
 62616  					break
 62617  				}
 62618  
 62619  				break
 62620  			}
 62621  		} // End checking character's script and extensions.
 62622  
 62623  		// The character is in an acceptable script. We must now ensure that all
 62624  		//   decimal digits in the string come from the same set. Some scripts (e.g.
 62625  		//   Common, Arabic) have more than one set of decimal digits. This code does
 62626  		//   not allow mixing sets, even within the same script. The vector called
 62627  		//   PRIV(ucd_digit_sets)[] contains, in its first element, the number of
 62628  		//   following elements, and then, in ascending order, the code points of the
 62629  		//   '9' characters in every set of 10 digits. Each set is identified by the
 62630  		//   offset in the vector of its '9' character. An initial check of the first
 62631  		//   value picks up ASCII digits quickly. Otherwise, a binary chop is used.
 62632  
 62633  		if int32((*Tucd_record)(unsafe.Pointer(ucd)).Fchartype) == ucp_Nd {
 62634  			var digitset Tuint32_t
 62635  
 62636  			if c <= X_pcre2_ucd_digit_sets_8[1] {
 62637  				digitset = Tuint32_t(1)
 62638  			} else {
 62639  				var mid int32
 62640  				var bot int32 = 1
 62641  				var top int32 = int32(X_pcre2_ucd_digit_sets_8[0])
 62642  				for {
 62643  					if top <= bot+1 {
 62644  						digitset = Tuint32_t(top)
 62645  						break
 62646  					}
 62647  					mid = (top + bot) / 2
 62648  					if c <= X_pcre2_ucd_digit_sets_8[mid] {
 62649  						top = mid
 62650  					} else {
 62651  						bot = mid
 62652  					}
 62653  				}
 62654  			}
 62655  
 62656  			// A required value of 0 means "unset".
 62657  
 62658  			if require_digitset == Tuint32_t(0) {
 62659  				require_digitset = digitset
 62660  			} else if digitset != require_digitset {
 62661  				return DFALSE
 62662  			}
 62663  		} // End digit handling
 62664  
 62665  		// If we haven't yet got to the end, pick up the next character.
 62666  
 62667  		if ptr >= endptr {
 62668  			return DTRUE
 62669  		}
 62670  		c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1))))
 62671  		if utf != 0 && c >= 0xc0 {
 62672  			if c&0x20 == Tuint32_t(0) {
 62673  				c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&ptr, 1))))&0x3f
 62674  			} else if c&0x10 == Tuint32_t(0) {
 62675  				c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f
 62676  				ptr += uintptr(2)
 62677  			} else if c&0x08 == Tuint32_t(0) {
 62678  				c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f
 62679  				ptr += uintptr(3)
 62680  			} else if c&0x04 == Tuint32_t(0) {
 62681  				c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f
 62682  				ptr += uintptr(4)
 62683  			} else {
 62684  				c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ptr + 4)))&0x3f
 62685  				ptr += uintptr(5)
 62686  			}
 62687  		}
 62688  
 62689  	}
 62690  	return TBOOL(0) // End checking loop
 62691  
 62692  }
 62693  
 62694  // End of pcre2_script_run.c
 62695  
 62696  // This function is needed only when memmove() is not available.
 62697  
 62698  // End of pcre2_internal.h
 62699  
 62700  // Magic number to provide a small check against being handed junk.
 62701  
 62702  // Deserialization is limited to the current PCRE version and
 62703  // character width.
 62704  
 62705  // ************************************************
 62706  //
 62707  //           Serialize compiled patterns          *
 62708  //
 62709  
 62710  func Xpcre2_serialize_encode_8(tls *libc.TLS, codes uintptr, number_of_codes Tint32_t, serialized_bytes uintptr, serialized_size uintptr, gcontext uintptr) Tint32_t { /* pcre2_serialize.c:72:1: */
 62711  	var bytes uintptr
 62712  	var dst_bytes uintptr
 62713  	var i Tint32_t
 62714  	var total_size Tsize_t
 62715  	var re uintptr
 62716  	var tables uintptr
 62717  	var data uintptr
 62718  
 62719  	var memctl uintptr
 62720  	if gcontext != uintptr(0) {
 62721  		memctl = gcontext
 62722  	} else {
 62723  		memctl = uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8))
 62724  	}
 62725  
 62726  	if codes == uintptr(0) || serialized_bytes == uintptr(0) || serialized_size == uintptr(0) {
 62727  		return -51
 62728  	}
 62729  
 62730  	if number_of_codes <= 0 {
 62731  		return -29
 62732  	}
 62733  
 62734  	// Compute total size.
 62735  	total_size = uint64(unsafe.Sizeof(Tpcre2_serialized_data{})) + uint64(Dcbits_offset+Dcbit_length+256)
 62736  	tables = uintptr(0)
 62737  
 62738  	for i = 0; i < number_of_codes; i++ {
 62739  		if *(*uintptr)(unsafe.Pointer(codes + uintptr(i)*8)) == uintptr(0) {
 62740  			return -51
 62741  		}
 62742  		re = *(*uintptr)(unsafe.Pointer(codes + uintptr(i)*8))
 62743  		if uint64((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fmagic_number) != DMAGIC_NUMBER {
 62744  			return -31
 62745  		}
 62746  		if tables == uintptr(0) {
 62747  			tables = (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables
 62748  		} else if tables != (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables {
 62749  			return -30
 62750  		}
 62751  		total_size = total_size + (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fblocksize
 62752  	}
 62753  
 62754  	// Initialize the byte stream.
 62755  	bytes = (*struct {
 62756  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 62757  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmalloc})).f(tls, total_size+Tsize_t(unsafe.Sizeof(Tpcre2_memctl{})), (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 62758  	if bytes == uintptr(0) {
 62759  		return -48
 62760  	}
 62761  
 62762  	// The controller is stored as a hidden parameter.
 62763  	libc.X__builtin___memcpy_chk(tls, bytes, memctl, uint64(unsafe.Sizeof(Tpcre2_memctl{})), libc.X__builtin_object_size(tls, bytes, 0))
 62764  	bytes += uintptr(unsafe.Sizeof(Tpcre2_memctl{}))
 62765  
 62766  	data = bytes
 62767  	(*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fmagic = DSERIALIZED_DATA_MAGIC
 62768  	(*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fversion = Tuint32_t(DPCRE2_MAJOR | int32(DPCRE2_MINOR)<<16)
 62769  	(*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fconfig = uint32(uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))) | uint64(uint64(unsafe.Sizeof(uintptr(0))))<<8 | uint64(uint64(unsafe.Sizeof(Tsize_t(0))))<<16)
 62770  	(*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fnumber_of_codes = number_of_codes
 62771  
 62772  	// Copy all compiled code data.
 62773  	dst_bytes = bytes + uintptr(uint64(unsafe.Sizeof(Tpcre2_serialized_data{})))
 62774  	libc.X__builtin___memcpy_chk(tls, dst_bytes, tables, uint64(Dcbits_offset+Dcbit_length+256), libc.X__builtin_object_size(tls, dst_bytes, 0))
 62775  	dst_bytes += uintptr(Dcbits_offset + Dcbit_length + 256)
 62776  
 62777  	for i = 0; i < number_of_codes; i++ {
 62778  		re = *(*uintptr)(unsafe.Pointer(codes + uintptr(i)*8))
 62779  		libc.X__builtin___memcpy_chk(tls, dst_bytes, re, (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fblocksize, libc.X__builtin_object_size(tls, dst_bytes, 0))
 62780  
 62781  		// Certain fields in the compiled code block are re-set during
 62782  		//   deserialization. In order to ensure that the serialized data stream is always
 62783  		//   the same for the same pattern, set them to zero here. We can't assume the
 62784  		//   copy of the pattern is correctly aligned for accessing the fields as part of
 62785  		//   a structure. Note the use of sizeof(void *) in the second of these, to
 62786  		//   specify the size of a pointer. If sizeof(uint8_t *) is used (tables is a
 62787  		//   pointer to uint8_t), gcc gives a warning because the first argument is also a
 62788  		//   pointer to uint8_t. Casting the first argument to (void *) can stop this, but
 62789  		//   it didn't stop Coverity giving the same complaint.
 62790  
 62791  		libc.X__builtin___memset_chk(tls, dst_bytes+uintptr(uint64(uintptr(0))), 0, uint64(unsafe.Sizeof(Tpcre2_memctl{})), libc.X__builtin_object_size(tls, dst_bytes+uintptr(uint64(uintptr(0))), 0))
 62792  		libc.X__builtin___memset_chk(tls, dst_bytes+uintptr(uint64(uintptr(0)+24)), 0, uint64(unsafe.Sizeof(uintptr(0))), libc.X__builtin_object_size(tls, dst_bytes+uintptr(uint64(uintptr(0)+24)), 0))
 62793  		libc.X__builtin___memset_chk(tls, dst_bytes+uintptr(uint64(uintptr(0)+32)), 0, uint64(unsafe.Sizeof(uintptr(0))), libc.X__builtin_object_size(tls, dst_bytes+uintptr(uint64(uintptr(0)+32)), 0))
 62794  
 62795  		dst_bytes += uintptr((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fblocksize)
 62796  	}
 62797  
 62798  	*(*uintptr)(unsafe.Pointer(serialized_bytes)) = bytes
 62799  	*(*Tsize_t)(unsafe.Pointer(serialized_size)) = total_size
 62800  	return number_of_codes
 62801  }
 62802  
 62803  // ************************************************
 62804  //
 62805  //          Deserialize compiled patterns         *
 62806  //
 62807  
 62808  func Xpcre2_serialize_decode_8(tls *libc.TLS, codes uintptr, number_of_codes Tint32_t, bytes uintptr, gcontext uintptr) Tint32_t { /* pcre2_serialize.c:163:1: */
 62809  	bp := tls.Alloc(8)
 62810  	defer tls.Free(8)
 62811  
 62812  	var data uintptr = bytes
 62813  	var memctl uintptr
 62814  	if gcontext != uintptr(0) {
 62815  		memctl = gcontext
 62816  	} else {
 62817  		memctl = uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8))
 62818  	}
 62819  	var src_bytes uintptr
 62820  	var dst_re uintptr
 62821  	var tables uintptr
 62822  	var i Tint32_t
 62823  	var j Tint32_t
 62824  
 62825  	// Sanity checks.
 62826  
 62827  	if data == uintptr(0) || codes == uintptr(0) {
 62828  		return -51
 62829  	}
 62830  	if number_of_codes <= 0 {
 62831  		return -29
 62832  	}
 62833  	if (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fnumber_of_codes <= 0 {
 62834  		return -62
 62835  	}
 62836  	if (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fmagic != DSERIALIZED_DATA_MAGIC {
 62837  		return -31
 62838  	}
 62839  	if (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fversion != Tuint32_t(DPCRE2_MAJOR|int32(DPCRE2_MINOR)<<16) {
 62840  		return -32
 62841  	}
 62842  	if uint64((*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fconfig) != uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0)))|uint64(uint64(unsafe.Sizeof(uintptr(0))))<<8|uint64(uint64(unsafe.Sizeof(Tsize_t(0))))<<16 {
 62843  		return -32
 62844  	}
 62845  
 62846  	if number_of_codes > (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fnumber_of_codes {
 62847  		number_of_codes = (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fnumber_of_codes
 62848  	}
 62849  
 62850  	src_bytes = bytes + uintptr(uint64(unsafe.Sizeof(Tpcre2_serialized_data{})))
 62851  
 62852  	// Decode tables. The reference count for the tables is stored immediately
 62853  	// following them.
 62854  
 62855  	tables = (*struct {
 62856  		f func(*libc.TLS, Tsize_t, uintptr) uintptr
 62857  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmalloc})).f(tls, uint64(Dcbits_offset+Dcbit_length+256)+uint64(unsafe.Sizeof(Tsize_t(0))), (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 62858  	if tables == uintptr(0) {
 62859  		return -48
 62860  	}
 62861  
 62862  	libc.X__builtin___memcpy_chk(tls, tables, src_bytes, uint64(Dcbits_offset+Dcbit_length+256), libc.X__builtin_object_size(tls, tables, 0))
 62863  	*(*Tsize_t)(unsafe.Pointer(tables + uintptr(Dcbits_offset+Dcbit_length+256))) = Tsize_t(number_of_codes)
 62864  	src_bytes += uintptr(Dcbits_offset + Dcbit_length + 256)
 62865  
 62866  	// Decode the byte stream. We must not try to read the size from the compiled
 62867  	// code block in the stream, because it might be unaligned, which causes errors on
 62868  	// hardware such as Sparc-64 that doesn't like unaligned memory accesses. The type
 62869  	// of the blocksize field is given its own name to ensure that it is the same here
 62870  	// as in the block.
 62871  
 62872  	for i = 0; i < number_of_codes; i++ {
 62873  		// var blocksize Tsize_t at bp, 8
 62874  
 62875  		libc.X__builtin___memcpy_chk(tls, bp, src_bytes+uintptr(uint64(uintptr(0)+72)), uint64(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, bp, 0))
 62876  		if *(*Tsize_t)(unsafe.Pointer(bp)) <= Tsize_t(unsafe.Sizeof(Tpcre2_real_code_8{})) {
 62877  			return -62
 62878  		}
 62879  
 62880  		// The allocator provided by gcontext replaces the original one.
 62881  
 62882  		dst_re = X_pcre2_memctl_malloc_8(tls, *(*Tsize_t)(unsafe.Pointer(bp /* blocksize */)),
 62883  			gcontext)
 62884  		if dst_re == uintptr(0) {
 62885  			(*struct {
 62886  				f func(*libc.TLS, uintptr, uintptr)
 62887  			})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Ffree})).f(tls, tables, (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 62888  			for j = 0; j < i; j++ {
 62889  				(*struct {
 62890  					f func(*libc.TLS, uintptr, uintptr)
 62891  				})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Ffree})).f(tls, *(*uintptr)(unsafe.Pointer(codes + uintptr(j)*8)), (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 62892  				*(*uintptr)(unsafe.Pointer(codes + uintptr(j)*8)) = uintptr(0)
 62893  			}
 62894  			return -48
 62895  		}
 62896  
 62897  		// The new allocator must be preserved.
 62898  
 62899  		libc.X__builtin___memcpy_chk(tls, dst_re+uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{}))), src_bytes+uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{}))), *(*Tsize_t)(unsafe.Pointer(bp))-Tsize_t(unsafe.Sizeof(Tpcre2_memctl{})), libc.X__builtin_object_size(tls, dst_re+uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{}))), 0))
 62900  		if uint64((*Tpcre2_real_code_8)(unsafe.Pointer(dst_re)).Fmagic_number) != DMAGIC_NUMBER || int32((*Tpcre2_real_code_8)(unsafe.Pointer(dst_re)).Fname_entry_size) > DMAX_NAME_SIZE+DIMM2_SIZE+1 || int32((*Tpcre2_real_code_8)(unsafe.Pointer(dst_re)).Fname_count) > DMAX_NAME_COUNT {
 62901  			(*struct {
 62902  				f func(*libc.TLS, uintptr, uintptr)
 62903  			})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Ffree})).f(tls, dst_re, (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 62904  			return -62
 62905  		}
 62906  
 62907  		// At the moment only one table is supported.
 62908  
 62909  		(*Tpcre2_real_code_8)(unsafe.Pointer(dst_re)).Ftables = tables
 62910  		(*Tpcre2_real_code_8)(unsafe.Pointer(dst_re)).Fexecutable_jit = uintptr(0)
 62911  		*(*Tuint32_t)(unsafe.Pointer(dst_re + 96)) |= Tuint32_t(DPCRE2_DEREF_TABLES)
 62912  
 62913  		*(*uintptr)(unsafe.Pointer(codes + uintptr(i)*8)) = dst_re
 62914  		src_bytes += uintptr(*(*Tsize_t)(unsafe.Pointer(bp /* blocksize */)))
 62915  	}
 62916  
 62917  	return number_of_codes
 62918  }
 62919  
 62920  // ************************************************
 62921  //
 62922  //    Get the number of serialized patterns       *
 62923  //
 62924  
 62925  func Xpcre2_serialize_get_number_of_codes_8(tls *libc.TLS, bytes uintptr) Tint32_t { /* pcre2_serialize.c:259:1: */
 62926  	var data uintptr = bytes
 62927  
 62928  	if data == uintptr(0) {
 62929  		return -51
 62930  	}
 62931  	if (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fmagic != DSERIALIZED_DATA_MAGIC {
 62932  		return -31
 62933  	}
 62934  	if (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fversion != Tuint32_t(DPCRE2_MAJOR|int32(DPCRE2_MINOR)<<16) {
 62935  		return -32
 62936  	}
 62937  	if uint64((*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fconfig) != uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0)))|uint64(uint64(unsafe.Sizeof(uintptr(0))))<<8|uint64(uint64(unsafe.Sizeof(Tsize_t(0))))<<16 {
 62938  		return -32
 62939  	}
 62940  
 62941  	return (*Tpcre2_serialized_data)(unsafe.Pointer(data)).Fnumber_of_codes
 62942  }
 62943  
 62944  // ************************************************
 62945  //
 62946  //            Free the allocated stream           *
 62947  //
 62948  
 62949  func Xpcre2_serialize_free_8(tls *libc.TLS, bytes uintptr) { /* pcre2_serialize.c:277:1: */
 62950  	if bytes != uintptr(0) {
 62951  		var memctl uintptr = bytes - uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{})))
 62952  		(*struct {
 62953  			f func(*libc.TLS, uintptr, uintptr)
 62954  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Ffree})).f(tls, memctl, (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 62955  	}
 62956  }
 62957  
 62958  // End of pcre2_serialize.c
 62959  
 62960  // This function is needed only when memmove() is not available.
 62961  
 62962  // End of pcre2_internal.h
 62963  
 62964  // ************************************************
 62965  //
 62966  //    Emulated memmove() for systems without it   *
 62967  //
 62968  
 62969  // This function can make use of bcopy() if it is available. Otherwise do it by
 62970  // steam, as there some non-Unix environments that lack both memmove() and
 62971  // bcopy().
 62972  
 62973  // ************************************************
 62974  //
 62975  //    Compare two zero-terminated PCRE2 strings   *
 62976  //
 62977  
 62978  //
 62979  // Arguments:
 62980  //   str1        first string
 62981  //   str2        second string
 62982  //
 62983  // Returns:      0, 1, or -1
 62984  
 62985  func X_pcre2_strcmp_8(tls *libc.TLS, str1 TPCRE2_SPTR8, str2 TPCRE2_SPTR8) int32 { /* pcre2_string_utils.c:102:1: */
 62986  	var c1 TPCRE2_UCHAR8
 62987  	var c2 TPCRE2_UCHAR8
 62988  	for int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(str1))) != 0 || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(str2))) != 0 {
 62989  		c1 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&str1, 1)))
 62990  		c2 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&str2, 1)))
 62991  		if int32(c1) != int32(c2) {
 62992  			return libc.Bool32(int32(c1) > int32(c2))<<1 - 1
 62993  		}
 62994  	}
 62995  	return 0
 62996  }
 62997  
 62998  // ************************************************
 62999  //
 63000  //  Compare zero-terminated PCRE2 & 8-bit strings *
 63001  //
 63002  
 63003  // As the 8-bit string is almost always a literal, its type is specified as
 63004  // const char *.
 63005  //
 63006  // Arguments:
 63007  //   str1        first string
 63008  //   str2        second string
 63009  //
 63010  // Returns:      0, 1, or -1
 63011  
 63012  func X_pcre2_strcmp_c8_8(tls *libc.TLS, str1 TPCRE2_SPTR8, str2 uintptr) int32 { /* pcre2_string_utils.c:130:1: */
 63013  	var c1 TPCRE2_UCHAR8
 63014  	var c2 TPCRE2_UCHAR8
 63015  	for int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(str1))) != 0 || int32(*(*int8)(unsafe.Pointer(str2))) != 0 {
 63016  		c1 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&str1, 1)))
 63017  		c2 = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&str2, 1))))
 63018  		if int32(c1) != int32(c2) {
 63019  			return libc.Bool32(int32(c1) > int32(c2))<<1 - 1
 63020  		}
 63021  	}
 63022  	return 0
 63023  }
 63024  
 63025  // ************************************************
 63026  //
 63027  //    Compare two PCRE2 strings, given a length   *
 63028  //
 63029  
 63030  //
 63031  // Arguments:
 63032  //   str1        first string
 63033  //   str2        second string
 63034  //   len         the length
 63035  //
 63036  // Returns:      0, 1, or -1
 63037  
 63038  func X_pcre2_strncmp_8(tls *libc.TLS, str1 TPCRE2_SPTR8, str2 TPCRE2_SPTR8, len Tsize_t) int32 { /* pcre2_string_utils.c:157:1: */
 63039  	var c1 TPCRE2_UCHAR8
 63040  	var c2 TPCRE2_UCHAR8
 63041  	for ; len > uint64(0); len-- {
 63042  		c1 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&str1, 1)))
 63043  		c2 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&str2, 1)))
 63044  		if int32(c1) != int32(c2) {
 63045  			return libc.Bool32(int32(c1) > int32(c2))<<1 - 1
 63046  		}
 63047  	}
 63048  	return 0
 63049  }
 63050  
 63051  // ************************************************
 63052  //
 63053  // Compare PCRE2 string to 8-bit string by length *
 63054  //
 63055  
 63056  // As the 8-bit string is almost always a literal, its type is specified as
 63057  // const char *.
 63058  //
 63059  // Arguments:
 63060  //   str1        first string
 63061  //   str2        second string
 63062  //   len         the length
 63063  //
 63064  // Returns:      0, 1, or -1
 63065  
 63066  func X_pcre2_strncmp_c8_8(tls *libc.TLS, str1 TPCRE2_SPTR8, str2 uintptr, len Tsize_t) int32 { /* pcre2_string_utils.c:186:1: */
 63067  	var c1 TPCRE2_UCHAR8
 63068  	var c2 TPCRE2_UCHAR8
 63069  	for ; len > uint64(0); len-- {
 63070  		c1 = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&str1, 1)))
 63071  		c2 = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&str2, 1))))
 63072  		if int32(c1) != int32(c2) {
 63073  			return libc.Bool32(int32(c1) > int32(c2))<<1 - 1
 63074  		}
 63075  	}
 63076  	return 0
 63077  }
 63078  
 63079  // ************************************************
 63080  //
 63081  //        Find the length of a PCRE2 string       *
 63082  //
 63083  
 63084  //
 63085  // Argument:    the string
 63086  // Returns:     the length
 63087  
 63088  func X_pcre2_strlen_8(tls *libc.TLS, str TPCRE2_SPTR8) Tsize_t { /* pcre2_string_utils.c:209:1: */
 63089  	var c Tsize_t = uint64(0)
 63090  	for int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&str, 1)))) != 0 {
 63091  		c++
 63092  	}
 63093  	return c
 63094  }
 63095  
 63096  // ************************************************
 63097  //
 63098  // Copy 8-bit 0-terminated string to PCRE2 string *
 63099  //
 63100  
 63101  // Arguments:
 63102  //   str1     buffer to receive the string
 63103  //   str2     8-bit string to be copied
 63104  //
 63105  // Returns:   the number of code units used (excluding trailing zero)
 63106  
 63107  func X_pcre2_strcpy_c8_8(tls *libc.TLS, str1 uintptr, str2 uintptr) Tsize_t { /* pcre2_string_utils.c:229:1: */
 63108  	var t uintptr = str1
 63109  	for int32(*(*int8)(unsafe.Pointer(str2))) != 0 {
 63110  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&t, 1))) = TPCRE2_UCHAR8(*(*int8)(unsafe.Pointer(libc.PostIncUintptr(&str2, 1))))
 63111  	}
 63112  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(t)) = TPCRE2_UCHAR8(0)
 63113  	return Tsize_t((int64(t) - int64(str1)) / 1)
 63114  }
 63115  
 63116  // End of pcre2_string_utils.c
 63117  
 63118  // ************************************************
 63119  //
 63120  //   Find the minimum subject length for a group  *
 63121  //
 63122  
 63123  // Scan a parenthesized group and compute the minimum length of subject that
 63124  // is needed to match it. This is a lower bound; it does not mean there is a
 63125  // string of that length that matches. In UTF mode, the result is in characters
 63126  // rather than code units. The field in a compiled pattern for storing the minimum
 63127  // length is 16-bits long (on the grounds that anything longer than that is
 63128  // pathological), so we give up when we reach that amount. This also means that
 63129  // integer overflow for really crazy patterns cannot happen.
 63130  //
 63131  // Backreference minimum lengths are cached to speed up multiple references. This
 63132  // function is called only when the highest back reference in the pattern is less
 63133  // than or equal to MAX_CACHE_BACKREF, which is one less than the size of the
 63134  // caching vector. The zeroth element contains the number of the highest set
 63135  // value.
 63136  //
 63137  // Arguments:
 63138  //   re              compiled pattern block
 63139  //   code            pointer to start of group (the bracket)
 63140  //   startcode       pointer to start of the whole pattern's code
 63141  //   utf             UTF flag
 63142  //   recurses        chain of recurse_check to catch mutual recursion
 63143  //   countptr        pointer to call count (to catch over complexity)
 63144  //   backref_cache   vector for caching back references.
 63145  //
 63146  // This function is no longer called when the pattern contains (*ACCEPT); however,
 63147  // the old code for returning -1 is retained, just in case.
 63148  //
 63149  // Returns:   the minimum length
 63150  //            -1 \C in UTF-8 mode
 63151  //               or (*ACCEPT)
 63152  //               or pattern too complicated
 63153  //            -2 internal error (missing capturing bracket)
 63154  //            -3 internal error (opcode not listed)
 63155  
 63156  func find_minlength(tls *libc.TLS, re uintptr, code TPCRE2_SPTR8, startcode TPCRE2_SPTR8, utf TBOOL, recurses uintptr, countptr uintptr, backref_cache uintptr) int32 { /* pcre2_study.c:103:1: */
 63157  	bp := tls.Alloc(16)
 63158  	defer tls.Free(16)
 63159  
 63160  	var length int32
 63161  	var branchlength int32
 63162  	var prev_cap_recno int32
 63163  	var prev_cap_d int32
 63164  	var prev_recurse_recno int32
 63165  	var prev_recurse_d int32
 63166  	var once_fudge Tuint32_t
 63167  	var had_recurse TBOOL
 63168  	var dupcapused TBOOL
 63169  	var nextbranch TPCRE2_SPTR8
 63170  	var cc uintptr
 63171  	// var this_recurse Trecurse_check at bp, 16
 63172  
 63173  	var r uintptr
 63174  	var dd int32
 63175  	var i int32
 63176  	var count int32
 63177  	var slot uintptr
 63178  	var r1 uintptr
 63179  	var i1 int32
 63180  	var r2 uintptr
 63181  	var d int32
 63182  	var min int32
 63183  	var recno int32
 63184  	var op TPCRE2_UCHAR8
 63185  	var cs uintptr
 63186  	var ce uintptr
 63187  	length = -1
 63188  	branchlength = 0
 63189  	prev_cap_recno = -1
 63190  	prev_cap_d = 0
 63191  	prev_recurse_recno = -1
 63192  	prev_recurse_d = 0
 63193  	once_fudge = Tuint32_t(0)
 63194  	had_recurse = DFALSE
 63195  	dupcapused = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_DUPCAPUSED) != Tuint32_t(0))
 63196  	nextbranch = code + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2)))))
 63197  	cc = code + uintptr(1) + uintptr(DLINK_SIZE)
 63198  
 63199  	// If this is a "could be empty" group, its minimum length is 0.
 63200  
 63201  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) >= OP_SBRA && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) <= OP_SCOND) {
 63202  		goto __1
 63203  	}
 63204  	return 0
 63205  __1:
 63206  	;
 63207  
 63208  	// Skip over capturing bracket number
 63209  
 63210  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_CBRA || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_CBRAPOS) {
 63211  		goto __2
 63212  	}
 63213  	cc += uintptr(DIMM2_SIZE)
 63214  __2:
 63215  	;
 63216  
 63217  	// A large and/or complex regex can take too long to process.
 63218  
 63219  	if !(libc.PostIncInt32(&*(*int32)(unsafe.Pointer(countptr)), 1) > 1000) {
 63220  		goto __3
 63221  	}
 63222  	return -1
 63223  __3:
 63224  	;
 63225  
 63226  	// Scan along the opcodes for this branch. If we get to the end of the branch,
 63227  	// check the length against that of the other branches. If the accumulated length
 63228  	// passes 16-bits, reset to that value and skip the rest of the branch.
 63229  
 63230  __4:
 63231  
 63232  	if !(uint32(branchlength) >= 65535) {
 63233  		goto __7
 63234  	}
 63235  
 63236  	branchlength = int32(65535)
 63237  	cc = nextbranch
 63238  __7:
 63239  	;
 63240  
 63241  	op = *(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))
 63242  	switch int32(op) {
 63243  	case OP_COND:
 63244  		goto __9
 63245  	case OP_SCOND:
 63246  		goto __10
 63247  
 63248  	case OP_BRA:
 63249  		goto __11
 63250  	// Fall through
 63251  
 63252  	case OP_ONCE:
 63253  		goto __12
 63254  	case OP_SCRIPT_RUN:
 63255  		goto __13
 63256  	case OP_SBRA:
 63257  		goto __14
 63258  	case OP_BRAPOS:
 63259  		goto __15
 63260  	case OP_SBRAPOS:
 63261  		goto __16
 63262  
 63263  	// To save time for repeated capturing subpatterns, we remember the
 63264  	//     length of the previous one. Unfortunately we can't do the same for
 63265  	//     the unnumbered ones above. Nor can we do this if (?| is present in the
 63266  	//     pattern because captures with the same number are not then identical.
 63267  
 63268  	case OP_CBRA:
 63269  		goto __17
 63270  	case OP_SCBRA:
 63271  		goto __18
 63272  	case OP_CBRAPOS:
 63273  		goto __19
 63274  	case OP_SCBRAPOS:
 63275  		goto __20
 63276  
 63277  	// ACCEPT makes things far too complicated; we have to give up. In fact,
 63278  	//     from 10.34 onwards, if a pattern contains (*ACCEPT), this function is not
 63279  	//     used. However, leave the code in place, just in case.
 63280  
 63281  	case OP_ACCEPT:
 63282  		goto __21
 63283  	case OP_ASSERT_ACCEPT:
 63284  		goto __22
 63285  
 63286  	// Reached end of a branch; if it's a ket it is the end of a nested
 63287  	//     call. If it's ALT it is an alternation in a nested call. If it is END it's
 63288  	//     the end of the outer call. All can be handled by the same code. If the
 63289  	//     length of any branch is zero, there is no need to scan any subsequent
 63290  	//     branches.
 63291  
 63292  	case OP_ALT:
 63293  		goto __23
 63294  	case OP_KET:
 63295  		goto __24
 63296  	case OP_KETRMAX:
 63297  		goto __25
 63298  	case OP_KETRMIN:
 63299  		goto __26
 63300  	case OP_KETRPOS:
 63301  		goto __27
 63302  	case OP_END:
 63303  		goto __28
 63304  
 63305  	// Skip over assertive subpatterns
 63306  
 63307  	case OP_ASSERT:
 63308  		goto __29
 63309  	case OP_ASSERT_NOT:
 63310  		goto __30
 63311  	case OP_ASSERTBACK:
 63312  		goto __31
 63313  	case OP_ASSERTBACK_NOT:
 63314  		goto __32
 63315  	case OP_ASSERT_NA:
 63316  		goto __33
 63317  	case OP_ASSERTBACK_NA:
 63318  		goto __34
 63319  	// Fall through
 63320  
 63321  	// Skip over things that don't match chars
 63322  
 63323  	case OP_REVERSE:
 63324  		goto __35
 63325  	case OP_CREF:
 63326  		goto __36
 63327  	case OP_DNCREF:
 63328  		goto __37
 63329  	case OP_RREF:
 63330  		goto __38
 63331  	case OP_DNRREF:
 63332  		goto __39
 63333  	case OP_FALSE:
 63334  		goto __40
 63335  	case OP_TRUE:
 63336  		goto __41
 63337  	case OP_CALLOUT:
 63338  		goto __42
 63339  	case OP_SOD:
 63340  		goto __43
 63341  	case OP_SOM:
 63342  		goto __44
 63343  	case OP_EOD:
 63344  		goto __45
 63345  	case OP_EODN:
 63346  		goto __46
 63347  	case OP_CIRC:
 63348  		goto __47
 63349  	case OP_CIRCM:
 63350  		goto __48
 63351  	case OP_DOLL:
 63352  		goto __49
 63353  	case OP_DOLLM:
 63354  		goto __50
 63355  	case OP_NOT_WORD_BOUNDARY:
 63356  		goto __51
 63357  	case OP_WORD_BOUNDARY:
 63358  		goto __52
 63359  
 63360  	case OP_CALLOUT_STR:
 63361  		goto __53
 63362  
 63363  	// Skip over a subpattern that has a {0} or {0,x} quantifier
 63364  
 63365  	case OP_BRAZERO:
 63366  		goto __54
 63367  	case OP_BRAMINZERO:
 63368  		goto __55
 63369  	case OP_BRAPOSZERO:
 63370  		goto __56
 63371  	case OP_SKIPZERO:
 63372  		goto __57
 63373  
 63374  	// Handle literal characters and + repetitions
 63375  
 63376  	case OP_CHAR:
 63377  		goto __58
 63378  	case OP_CHARI:
 63379  		goto __59
 63380  	case OP_NOT:
 63381  		goto __60
 63382  	case OP_NOTI:
 63383  		goto __61
 63384  	case OP_PLUS:
 63385  		goto __62
 63386  	case OP_PLUSI:
 63387  		goto __63
 63388  	case OP_MINPLUS:
 63389  		goto __64
 63390  	case OP_MINPLUSI:
 63391  		goto __65
 63392  	case OP_POSPLUS:
 63393  		goto __66
 63394  	case OP_POSPLUSI:
 63395  		goto __67
 63396  	case OP_NOTPLUS:
 63397  		goto __68
 63398  	case OP_NOTPLUSI:
 63399  		goto __69
 63400  	case OP_NOTMINPLUS:
 63401  		goto __70
 63402  	case OP_NOTMINPLUSI:
 63403  		goto __71
 63404  	case OP_NOTPOSPLUS:
 63405  		goto __72
 63406  	case OP_NOTPOSPLUSI:
 63407  		goto __73
 63408  
 63409  	case OP_TYPEPLUS:
 63410  		goto __74
 63411  	case OP_TYPEMINPLUS:
 63412  		goto __75
 63413  	case OP_TYPEPOSPLUS:
 63414  		goto __76
 63415  
 63416  	// Handle exact repetitions. The count is already in characters, but we
 63417  	//     may need to skip over a multibyte character in UTF mode.
 63418  
 63419  	case OP_EXACT:
 63420  		goto __77
 63421  	case OP_EXACTI:
 63422  		goto __78
 63423  	case OP_NOTEXACT:
 63424  		goto __79
 63425  	case OP_NOTEXACTI:
 63426  		goto __80
 63427  
 63428  	case OP_TYPEEXACT:
 63429  		goto __81
 63430  
 63431  	// Handle single-char non-literal matchers
 63432  
 63433  	case OP_PROP:
 63434  		goto __82
 63435  	case OP_NOTPROP:
 63436  		goto __83
 63437  	// Fall through
 63438  
 63439  	case OP_NOT_DIGIT:
 63440  		goto __84
 63441  	case OP_DIGIT:
 63442  		goto __85
 63443  	case OP_NOT_WHITESPACE:
 63444  		goto __86
 63445  	case OP_WHITESPACE:
 63446  		goto __87
 63447  	case OP_NOT_WORDCHAR:
 63448  		goto __88
 63449  	case OP_WORDCHAR:
 63450  		goto __89
 63451  	case OP_ANY:
 63452  		goto __90
 63453  	case OP_ALLANY:
 63454  		goto __91
 63455  	case OP_EXTUNI:
 63456  		goto __92
 63457  	case OP_HSPACE:
 63458  		goto __93
 63459  	case OP_NOT_HSPACE:
 63460  		goto __94
 63461  	case OP_VSPACE:
 63462  		goto __95
 63463  	case OP_NOT_VSPACE:
 63464  		goto __96
 63465  
 63466  	// "Any newline" might match two characters, but it also might match just
 63467  	//     one.
 63468  
 63469  	case OP_ANYNL:
 63470  		goto __97
 63471  
 63472  	// The single-byte matcher means we can't proceed in UTF mode. (In
 63473  	//     non-UTF mode \C will actually be turned into OP_ALLANY, so won't ever
 63474  	//     appear, but leave the code, just in case.)
 63475  
 63476  	case OP_ANYBYTE:
 63477  		goto __98
 63478  
 63479  	// For repeated character types, we have to test for \p and \P, which have
 63480  	//     an extra two bytes of parameters.
 63481  
 63482  	case OP_TYPESTAR:
 63483  		goto __99
 63484  	case OP_TYPEMINSTAR:
 63485  		goto __100
 63486  	case OP_TYPEQUERY:
 63487  		goto __101
 63488  	case OP_TYPEMINQUERY:
 63489  		goto __102
 63490  	case OP_TYPEPOSSTAR:
 63491  		goto __103
 63492  	case OP_TYPEPOSQUERY:
 63493  		goto __104
 63494  
 63495  	case OP_TYPEUPTO:
 63496  		goto __105
 63497  	case OP_TYPEMINUPTO:
 63498  		goto __106
 63499  	case OP_TYPEPOSUPTO:
 63500  		goto __107
 63501  
 63502  	// Check a class for variable quantification
 63503  
 63504  	case OP_CLASS:
 63505  		goto __108
 63506  	case OP_NCLASS:
 63507  		goto __109
 63508  	case OP_XCLASS:
 63509  		goto __110
 63510  
 63511  	// Backreferences and subroutine calls (OP_RECURSE) are treated in the same
 63512  	//     way: we find the minimum length for the subpattern. A recursion
 63513  	//     (backreference or subroutine) causes an a flag to be set that causes the
 63514  	//     length of this branch to be ignored. The logic is that a recursion can only
 63515  	//     make sense if there is another alternative that stops the recursing. That
 63516  	//     will provide the minimum length (when no recursion happens).
 63517  	//
 63518  	//     If PCRE2_MATCH_UNSET_BACKREF is set, a backreference to an unset bracket
 63519  	//     matches an empty string (by default it causes a matching failure), so in
 63520  	//     that case we must set the minimum length to zero.
 63521  	//
 63522  	//     For backreferenes, if duplicate numbers are present in the pattern we check
 63523  	//     for a reference to a duplicate. If it is, we don't know which version will
 63524  	//     be referenced, so we have to set the minimum length to zero.
 63525  
 63526  	// Duplicate named pattern back reference.
 63527  
 63528  	case OP_DNREF:
 63529  		goto __111
 63530  	case OP_DNREFI:
 63531  		goto __112
 63532  
 63533  	// Single back reference by number. References by name are converted to by
 63534  	//     number when there is no duplication.
 63535  
 63536  	case OP_REF:
 63537  		goto __113
 63538  	case OP_REFI:
 63539  		goto __114
 63540  
 63541  	// Recursion always refers to the first occurrence of a subpattern with a
 63542  	//     given number. Therefore, we can always make use of caching, even when the
 63543  	//     pattern contains multiple subpatterns with the same number.
 63544  
 63545  	case OP_RECURSE:
 63546  		goto __115
 63547  
 63548  	// Anything else does not or need not match a character. We can get the
 63549  	//     item's length from the table, but for those that can match zero occurrences
 63550  	//     of a character, we must take special action for UTF-8 characters. As it
 63551  	//     happens, the "NOT" versions of these opcodes are used at present only for
 63552  	//     ASCII characters, so they could be omitted from this list. However, in
 63553  	//     future that may change, so we include them here so as not to leave a
 63554  	//     gotcha for a future maintainer.
 63555  
 63556  	case OP_UPTO:
 63557  		goto __116
 63558  	case OP_UPTOI:
 63559  		goto __117
 63560  	case OP_NOTUPTO:
 63561  		goto __118
 63562  	case OP_NOTUPTOI:
 63563  		goto __119
 63564  	case OP_MINUPTO:
 63565  		goto __120
 63566  	case OP_MINUPTOI:
 63567  		goto __121
 63568  	case OP_NOTMINUPTO:
 63569  		goto __122
 63570  	case OP_NOTMINUPTOI:
 63571  		goto __123
 63572  	case OP_POSUPTO:
 63573  		goto __124
 63574  	case OP_POSUPTOI:
 63575  		goto __125
 63576  	case OP_NOTPOSUPTO:
 63577  		goto __126
 63578  	case OP_NOTPOSUPTOI:
 63579  		goto __127
 63580  
 63581  	case OP_STAR:
 63582  		goto __128
 63583  	case OP_STARI:
 63584  		goto __129
 63585  	case OP_NOTSTAR:
 63586  		goto __130
 63587  	case OP_NOTSTARI:
 63588  		goto __131
 63589  	case OP_MINSTAR:
 63590  		goto __132
 63591  	case OP_MINSTARI:
 63592  		goto __133
 63593  	case OP_NOTMINSTAR:
 63594  		goto __134
 63595  	case OP_NOTMINSTARI:
 63596  		goto __135
 63597  	case OP_POSSTAR:
 63598  		goto __136
 63599  	case OP_POSSTARI:
 63600  		goto __137
 63601  	case OP_NOTPOSSTAR:
 63602  		goto __138
 63603  	case OP_NOTPOSSTARI:
 63604  		goto __139
 63605  
 63606  	case OP_QUERY:
 63607  		goto __140
 63608  	case OP_QUERYI:
 63609  		goto __141
 63610  	case OP_NOTQUERY:
 63611  		goto __142
 63612  	case OP_NOTQUERYI:
 63613  		goto __143
 63614  	case OP_MINQUERY:
 63615  		goto __144
 63616  	case OP_MINQUERYI:
 63617  		goto __145
 63618  	case OP_NOTMINQUERY:
 63619  		goto __146
 63620  	case OP_NOTMINQUERYI:
 63621  		goto __147
 63622  	case OP_POSQUERY:
 63623  		goto __148
 63624  	case OP_POSQUERYI:
 63625  		goto __149
 63626  	case OP_NOTPOSQUERY:
 63627  		goto __150
 63628  	case OP_NOTPOSQUERYI:
 63629  		goto __151
 63630  
 63631  	// Skip these, but we need to add in the name length.
 63632  
 63633  	case OP_MARK:
 63634  		goto __152
 63635  	case OP_COMMIT_ARG:
 63636  		goto __153
 63637  	case OP_PRUNE_ARG:
 63638  		goto __154
 63639  	case OP_SKIP_ARG:
 63640  		goto __155
 63641  	case OP_THEN_ARG:
 63642  		goto __156
 63643  
 63644  	// The remaining opcodes are just skipped over.
 63645  
 63646  	case OP_CLOSE:
 63647  		goto __157
 63648  	case OP_COMMIT:
 63649  		goto __158
 63650  	case OP_FAIL:
 63651  		goto __159
 63652  	case OP_PRUNE:
 63653  		goto __160
 63654  	case OP_SET_SOM:
 63655  		goto __161
 63656  	case OP_SKIP:
 63657  		goto __162
 63658  	case OP_THEN:
 63659  		goto __163
 63660  
 63661  	// This should not occur: we list all opcodes explicitly so that when
 63662  	//     new ones get added they are properly considered.
 63663  
 63664  	default:
 63665  		goto __164
 63666  	}
 63667  	goto __8
 63668  
 63669  __9:
 63670  __10:
 63671  
 63672  	// If there is only one branch in a condition, the implied branch has zero
 63673  	//     length, so we don't add anything. This covers the DEFINE "condition"
 63674  	//     automatically. If there are two branches we can treat it the same as any
 63675  	//     other non-capturing subpattern.
 63676  
 63677  	cs = cc + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63678  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cs))) != OP_ALT) {
 63679  		goto __165
 63680  	}
 63681  
 63682  	cc = cs + uintptr(1) + uintptr(DLINK_SIZE)
 63683  	goto __8
 63684  __165:
 63685  	;
 63686  	goto PROCESS_NON_CAPTURE
 63687  
 63688  __11:
 63689  	// There's a special case of OP_BRA, when it is wrapped round a repeated
 63690  	//     OP_RECURSE. We'd like to process the latter at this level so that
 63691  	//     remembering the value works for repeated cases. So we do nothing, but
 63692  	//     set a fudge value to skip over the OP_KET after the recurse.
 63693  
 63694  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3))) == OP_RECURSE && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 6))) == OP_KET) {
 63695  		goto __166
 63696  	}
 63697  
 63698  	once_fudge = Tuint32_t(1 + DLINK_SIZE)
 63699  	cc += uintptr(1 + DLINK_SIZE)
 63700  	goto __8
 63701  __166:
 63702  	;
 63703  	// Fall through
 63704  
 63705  __12:
 63706  __13:
 63707  __14:
 63708  __15:
 63709  __16:
 63710  PROCESS_NON_CAPTURE:
 63711  	d = find_minlength(tls, re, cc, startcode, utf, recurses, countptr,
 63712  		backref_cache)
 63713  	if !(d < 0) {
 63714  		goto __167
 63715  	}
 63716  	return d
 63717  __167:
 63718  	;
 63719  	branchlength = branchlength + d
 63720  __168:
 63721  	cc += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63722  	goto __169
 63723  __169:
 63724  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))) == OP_ALT {
 63725  		goto __168
 63726  	}
 63727  	goto __170
 63728  __170:
 63729  	;
 63730  	cc += uintptr(1 + DLINK_SIZE)
 63731  	goto __8
 63732  
 63733  	// To save time for repeated capturing subpatterns, we remember the
 63734  	//     length of the previous one. Unfortunately we can't do the same for
 63735  	//     the unnumbered ones above. Nor can we do this if (?| is present in the
 63736  	//     pattern because captures with the same number are not then identical.
 63737  
 63738  __17:
 63739  __18:
 63740  __19:
 63741  __20:
 63742  	recno = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 4)))))
 63743  	if !(dupcapused != 0 || recno != prev_cap_recno) {
 63744  		goto __171
 63745  	}
 63746  
 63747  	prev_cap_recno = recno
 63748  	prev_cap_d = find_minlength(tls, re, cc, startcode, utf, recurses, countptr,
 63749  		backref_cache)
 63750  	if !(prev_cap_d < 0) {
 63751  		goto __172
 63752  	}
 63753  	return prev_cap_d
 63754  __172:
 63755  	;
 63756  __171:
 63757  	;
 63758  	branchlength = branchlength + prev_cap_d
 63759  __173:
 63760  	cc += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63761  	goto __174
 63762  __174:
 63763  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))) == OP_ALT {
 63764  		goto __173
 63765  	}
 63766  	goto __175
 63767  __175:
 63768  	;
 63769  	cc += uintptr(1 + DLINK_SIZE)
 63770  	goto __8
 63771  
 63772  	// ACCEPT makes things far too complicated; we have to give up. In fact,
 63773  	//     from 10.34 onwards, if a pattern contains (*ACCEPT), this function is not
 63774  	//     used. However, leave the code in place, just in case.
 63775  
 63776  __21:
 63777  __22:
 63778  	return -1
 63779  
 63780  	// Reached end of a branch; if it's a ket it is the end of a nested
 63781  	//     call. If it's ALT it is an alternation in a nested call. If it is END it's
 63782  	//     the end of the outer call. All can be handled by the same code. If the
 63783  	//     length of any branch is zero, there is no need to scan any subsequent
 63784  	//     branches.
 63785  
 63786  __23:
 63787  __24:
 63788  __25:
 63789  __26:
 63790  __27:
 63791  __28:
 63792  	if !(length < 0 || !(had_recurse != 0) && branchlength < length) {
 63793  		goto __176
 63794  	}
 63795  	length = branchlength
 63796  __176:
 63797  	;
 63798  	if !(int32(op) != OP_ALT || length == 0) {
 63799  		goto __177
 63800  	}
 63801  	return length
 63802  __177:
 63803  	;
 63804  	nextbranch = cc + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63805  	cc += uintptr(1 + DLINK_SIZE)
 63806  	branchlength = 0
 63807  	had_recurse = DFALSE
 63808  	goto __8
 63809  
 63810  	// Skip over assertive subpatterns
 63811  
 63812  __29:
 63813  __30:
 63814  __31:
 63815  __32:
 63816  __33:
 63817  __34:
 63818  __178:
 63819  	cc += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63820  	goto __179
 63821  __179:
 63822  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))) == OP_ALT {
 63823  		goto __178
 63824  	}
 63825  	goto __180
 63826  __180:
 63827  	;
 63828  	// Fall through
 63829  
 63830  	// Skip over things that don't match chars
 63831  
 63832  __35:
 63833  __36:
 63834  __37:
 63835  __38:
 63836  __39:
 63837  __40:
 63838  __41:
 63839  __42:
 63840  __43:
 63841  __44:
 63842  __45:
 63843  __46:
 63844  __47:
 63845  __48:
 63846  __49:
 63847  __50:
 63848  __51:
 63849  __52:
 63850  	cc += uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))])
 63851  	goto __8
 63852  
 63853  __53:
 63854  	cc += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 6)))))
 63855  	goto __8
 63856  
 63857  	// Skip over a subpattern that has a {0} or {0,x} quantifier
 63858  
 63859  __54:
 63860  __55:
 63861  __56:
 63862  __57:
 63863  	cc += uintptr(X_pcre2_OP_lengths_8[*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))])
 63864  __181:
 63865  	cc += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63866  	goto __182
 63867  __182:
 63868  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))) == OP_ALT {
 63869  		goto __181
 63870  	}
 63871  	goto __183
 63872  __183:
 63873  	;
 63874  	cc += uintptr(1 + DLINK_SIZE)
 63875  	goto __8
 63876  
 63877  	// Handle literal characters and + repetitions
 63878  
 63879  __58:
 63880  __59:
 63881  __60:
 63882  __61:
 63883  __62:
 63884  __63:
 63885  __64:
 63886  __65:
 63887  __66:
 63888  __67:
 63889  __68:
 63890  __69:
 63891  __70:
 63892  __71:
 63893  __72:
 63894  __73:
 63895  	branchlength++
 63896  	cc += uintptr(2)
 63897  	if !(utf != 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1)))) >= 0xc0) {
 63898  		goto __184
 63899  	}
 63900  	cc += uintptr(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1))))&0x3f])
 63901  __184:
 63902  	;
 63903  	goto __8
 63904  
 63905  __74:
 63906  __75:
 63907  __76:
 63908  	branchlength++
 63909  	cc += func() uintptr {
 63910  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1))) == OP_NOTPROP {
 63911  			return uintptr(4)
 63912  		}
 63913  		return uintptr(2)
 63914  	}()
 63915  	goto __8
 63916  
 63917  	// Handle exact repetitions. The count is already in characters, but we
 63918  	//     may need to skip over a multibyte character in UTF mode.
 63919  
 63920  __77:
 63921  __78:
 63922  __79:
 63923  __80:
 63924  	branchlength = int32(uint32(branchlength) + uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63925  	cc += uintptr(2 + DIMM2_SIZE)
 63926  	if !(utf != 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1)))) >= 0xc0) {
 63927  		goto __185
 63928  	}
 63929  	cc += uintptr(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1))))&0x3f])
 63930  __185:
 63931  	;
 63932  	goto __8
 63933  
 63934  __81:
 63935  	branchlength = int32(uint32(branchlength) + uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 63936  	cc += uintptr(2 + DIMM2_SIZE + func() int32 {
 63937  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3))) == OP_PROP ||
 63938  			int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3))) == OP_NOTPROP {
 63939  			return 2
 63940  		}
 63941  		return 0
 63942  	}())
 63943  	goto __8
 63944  
 63945  	// Handle single-char non-literal matchers
 63946  
 63947  __82:
 63948  __83:
 63949  	cc += uintptr(2)
 63950  	// Fall through
 63951  
 63952  __84:
 63953  __85:
 63954  __86:
 63955  __87:
 63956  __88:
 63957  __89:
 63958  __90:
 63959  __91:
 63960  __92:
 63961  __93:
 63962  __94:
 63963  __95:
 63964  __96:
 63965  	branchlength++
 63966  	cc++
 63967  	goto __8
 63968  
 63969  	// "Any newline" might match two characters, but it also might match just
 63970  	//     one.
 63971  
 63972  __97:
 63973  	branchlength = branchlength + 1
 63974  	cc++
 63975  	goto __8
 63976  
 63977  	// The single-byte matcher means we can't proceed in UTF mode. (In
 63978  	//     non-UTF mode \C will actually be turned into OP_ALLANY, so won't ever
 63979  	//     appear, but leave the code, just in case.)
 63980  
 63981  __98:
 63982  	if !(utf != 0) {
 63983  		goto __186
 63984  	}
 63985  	return -1
 63986  __186:
 63987  	;
 63988  	branchlength++
 63989  	cc++
 63990  	goto __8
 63991  
 63992  	// For repeated character types, we have to test for \p and \P, which have
 63993  	//     an extra two bytes of parameters.
 63994  
 63995  __99:
 63996  __100:
 63997  __101:
 63998  __102:
 63999  __103:
 64000  __104:
 64001  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1))) == OP_PROP || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1))) == OP_NOTPROP) {
 64002  		goto __187
 64003  	}
 64004  	cc += uintptr(2)
 64005  __187:
 64006  	;
 64007  	cc += uintptr(X_pcre2_OP_lengths_8[op])
 64008  	goto __8
 64009  
 64010  __105:
 64011  __106:
 64012  __107:
 64013  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3))) == OP_PROP ||
 64014  		int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3))) == OP_NOTPROP) {
 64015  		goto __188
 64016  	}
 64017  	cc += uintptr(2)
 64018  __188:
 64019  	;
 64020  	cc += uintptr(X_pcre2_OP_lengths_8[op])
 64021  	goto __8
 64022  
 64023  	// Check a class for variable quantification
 64024  
 64025  __108:
 64026  __109:
 64027  __110:
 64028  	// The original code caused an unsigned overflow in 64 bit systems,
 64029  	//     so now we use a conditional statement.
 64030  	if !(int32(op) == OP_XCLASS) {
 64031  		goto __189
 64032  	}
 64033  	cc += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 64034  	goto __190
 64035  __189:
 64036  	cc += uintptr(X_pcre2_OP_lengths_8[OP_CLASS])
 64037  __190:
 64038  	;
 64039  
 64040  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))) {
 64041  	case OP_CRPLUS:
 64042  		goto __192
 64043  	case OP_CRMINPLUS:
 64044  		goto __193
 64045  	case OP_CRPOSPLUS:
 64046  		goto __194
 64047  	// Fall through
 64048  
 64049  	case OP_CRSTAR:
 64050  		goto __195
 64051  	case OP_CRMINSTAR:
 64052  		goto __196
 64053  	case OP_CRQUERY:
 64054  		goto __197
 64055  	case OP_CRMINQUERY:
 64056  		goto __198
 64057  	case OP_CRPOSSTAR:
 64058  		goto __199
 64059  	case OP_CRPOSQUERY:
 64060  		goto __200
 64061  
 64062  	case OP_CRRANGE:
 64063  		goto __201
 64064  	case OP_CRMINRANGE:
 64065  		goto __202
 64066  	case OP_CRPOSRANGE:
 64067  		goto __203
 64068  
 64069  	default:
 64070  		goto __204
 64071  	}
 64072  	goto __191
 64073  
 64074  __192:
 64075  __193:
 64076  __194:
 64077  	branchlength++
 64078  	// Fall through
 64079  
 64080  __195:
 64081  __196:
 64082  __197:
 64083  __198:
 64084  __199:
 64085  __200:
 64086  	cc++
 64087  	goto __191
 64088  
 64089  __201:
 64090  __202:
 64091  __203:
 64092  	branchlength = int32(uint32(branchlength) + uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 64093  	cc += uintptr(1 + 2*DIMM2_SIZE)
 64094  	goto __191
 64095  
 64096  __204:
 64097  	branchlength++
 64098  	goto __191
 64099  __191:
 64100  	;
 64101  	goto __8
 64102  
 64103  	// Backreferences and subroutine calls (OP_RECURSE) are treated in the same
 64104  	//     way: we find the minimum length for the subpattern. A recursion
 64105  	//     (backreference or subroutine) causes an a flag to be set that causes the
 64106  	//     length of this branch to be ignored. The logic is that a recursion can only
 64107  	//     make sense if there is another alternative that stops the recursing. That
 64108  	//     will provide the minimum length (when no recursion happens).
 64109  	//
 64110  	//     If PCRE2_MATCH_UNSET_BACKREF is set, a backreference to an unset bracket
 64111  	//     matches an empty string (by default it causes a matching failure), so in
 64112  	//     that case we must set the minimum length to zero.
 64113  	//
 64114  	//     For backreferenes, if duplicate numbers are present in the pattern we check
 64115  	//     for a reference to a duplicate. If it is, we don't know which version will
 64116  	//     be referenced, so we have to set the minimum length to zero.
 64117  
 64118  	// Duplicate named pattern back reference.
 64119  
 64120  __111:
 64121  __112:
 64122  	if !(!(dupcapused != 0) && (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_MATCH_UNSET_BACKREF == Tuint32_t(0)) {
 64123  		goto __205
 64124  	}
 64125  
 64126  	count = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 4)))))
 64127  	slot =
 64128  		re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{}))) + uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2))))*uint32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size))
 64129  
 64130  	d = 2147483647
 64131  
 64132  	// Scan all groups with the same name; find the shortest.
 64133  
 64134  __207:
 64135  	if !(libc.PostDecInt32(&count, 1) > 0) {
 64136  		goto __208
 64137  	}
 64138  
 64139  	recno = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(slot + 1)))))
 64140  
 64141  	if !(recno <= *(*int32)(unsafe.Pointer(backref_cache)) && *(*int32)(unsafe.Pointer(backref_cache + uintptr(recno)*4)) >= 0) {
 64142  		goto __209
 64143  	}
 64144  	dd = *(*int32)(unsafe.Pointer(backref_cache + uintptr(recno)*4))
 64145  	goto __210
 64146  __209:
 64147  
 64148  	ce = libc.AssignUintptr(&cs, X_pcre2_find_bracket_8(tls, startcode, utf, recno))
 64149  	if !(cs == uintptr(0)) {
 64150  		goto __211
 64151  	}
 64152  	return -2
 64153  __211:
 64154  	;
 64155  __212:
 64156  	ce += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce + 2)))))
 64157  	goto __213
 64158  __213:
 64159  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce))) == OP_ALT {
 64160  		goto __212
 64161  	}
 64162  	goto __214
 64163  __214:
 64164  	;
 64165  
 64166  	dd = 0
 64167  	if !(!(dupcapused != 0) || X_pcre2_find_bracket_8(tls, ce, utf, recno) == uintptr(0)) {
 64168  		goto __215
 64169  	}
 64170  
 64171  	if !(cc > cs && cc < ce) {
 64172  		goto __216
 64173  	} /* Simple recursion */
 64174  
 64175  	had_recurse = DTRUE
 64176  	goto __217
 64177  __216:
 64178  
 64179  	r = recurses
 64180  	r = recurses
 64181  __218:
 64182  	if !(r != uintptr(0)) {
 64183  		goto __220
 64184  	}
 64185  	if !((*Trecurse_check)(unsafe.Pointer(r)).Fgroup == cs) {
 64186  		goto __221
 64187  	}
 64188  	goto __220
 64189  __221:
 64190  	;
 64191  	goto __219
 64192  __219:
 64193  	r = (*Trecurse_check)(unsafe.Pointer(r)).Fprev
 64194  	goto __218
 64195  	goto __220
 64196  __220:
 64197  	;
 64198  	if !(r != uintptr(0)) {
 64199  		goto __222
 64200  	} /* Mutual recursion */
 64201  
 64202  	had_recurse = DTRUE
 64203  	goto __223
 64204  __222:
 64205  
 64206  	(*Trecurse_check)(unsafe.Pointer(bp /* &this_recurse */)).Fprev = recurses // No recursion
 64207  	(*Trecurse_check)(unsafe.Pointer(bp /* &this_recurse */)).Fgroup = cs
 64208  	dd = find_minlength(tls, re, cs, startcode, utf, bp,
 64209  		countptr, backref_cache)
 64210  	if !(dd < 0) {
 64211  		goto __224
 64212  	}
 64213  	return dd
 64214  __224:
 64215  	;
 64216  __223:
 64217  	;
 64218  __217:
 64219  	;
 64220  __215:
 64221  	;
 64222  
 64223  	*(*int32)(unsafe.Pointer(backref_cache + uintptr(recno)*4)) = dd
 64224  	i = *(*int32)(unsafe.Pointer(backref_cache)) + 1
 64225  __225:
 64226  	if !(i < recno) {
 64227  		goto __227
 64228  	}
 64229  	*(*int32)(unsafe.Pointer(backref_cache + uintptr(i)*4)) = -1
 64230  	goto __226
 64231  __226:
 64232  	i++
 64233  	goto __225
 64234  	goto __227
 64235  __227:
 64236  	;
 64237  	*(*int32)(unsafe.Pointer(backref_cache)) = recno
 64238  __210:
 64239  	;
 64240  
 64241  	if !(dd < d) {
 64242  		goto __228
 64243  	}
 64244  	d = dd
 64245  __228:
 64246  	;
 64247  	if !(d <= 0) {
 64248  		goto __229
 64249  	}
 64250  	goto __208
 64251  __229:
 64252  	; // No point looking at any more
 64253  	slot += uintptr((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size)
 64254  	goto __207
 64255  __208:
 64256  	;
 64257  	goto __206
 64258  __205:
 64259  	d = 0
 64260  __206:
 64261  	;
 64262  	cc += uintptr(1 + 2*DIMM2_SIZE)
 64263  	goto REPEAT_BACK_REFERENCE
 64264  
 64265  	// Single back reference by number. References by name are converted to by
 64266  	//     number when there is no duplication.
 64267  
 64268  __113:
 64269  __114:
 64270  	recno = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 64271  	if !(recno <= *(*int32)(unsafe.Pointer(backref_cache)) && *(*int32)(unsafe.Pointer(backref_cache + uintptr(recno)*4)) >= 0) {
 64272  		goto __230
 64273  	}
 64274  	d = *(*int32)(unsafe.Pointer(backref_cache + uintptr(recno)*4))
 64275  	goto __231
 64276  __230:
 64277  
 64278  	d = 0
 64279  
 64280  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_MATCH_UNSET_BACKREF == Tuint32_t(0)) {
 64281  		goto __232
 64282  	}
 64283  
 64284  	ce = libc.AssignUintptr(&cs, X_pcre2_find_bracket_8(tls, startcode, utf, recno))
 64285  	if !(cs == uintptr(0)) {
 64286  		goto __233
 64287  	}
 64288  	return -2
 64289  __233:
 64290  	;
 64291  __234:
 64292  	ce += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce + 2)))))
 64293  	goto __235
 64294  __235:
 64295  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce))) == OP_ALT {
 64296  		goto __234
 64297  	}
 64298  	goto __236
 64299  __236:
 64300  	;
 64301  
 64302  	if !(!(dupcapused != 0) || X_pcre2_find_bracket_8(tls, ce, utf, recno) == uintptr(0)) {
 64303  		goto __237
 64304  	}
 64305  
 64306  	if !(cc > cs && cc < ce) {
 64307  		goto __238
 64308  	} /* Simple recursion */
 64309  
 64310  	had_recurse = DTRUE
 64311  	goto __239
 64312  __238:
 64313  
 64314  	r1 = recurses
 64315  	r1 = recurses
 64316  __240:
 64317  	if !(r1 != uintptr(0)) {
 64318  		goto __242
 64319  	}
 64320  	if !((*Trecurse_check)(unsafe.Pointer(r1)).Fgroup == cs) {
 64321  		goto __243
 64322  	}
 64323  	goto __242
 64324  __243:
 64325  	;
 64326  	goto __241
 64327  __241:
 64328  	r1 = (*Trecurse_check)(unsafe.Pointer(r1)).Fprev
 64329  	goto __240
 64330  	goto __242
 64331  __242:
 64332  	;
 64333  	if !(r1 != uintptr(0)) {
 64334  		goto __244
 64335  	} /* Mutual recursion */
 64336  
 64337  	had_recurse = DTRUE
 64338  	goto __245
 64339  __244: /* No recursion */
 64340  
 64341  	(*Trecurse_check)(unsafe.Pointer(bp /* &this_recurse */)).Fprev = recurses
 64342  	(*Trecurse_check)(unsafe.Pointer(bp /* &this_recurse */)).Fgroup = cs
 64343  	d = find_minlength(tls, re, cs, startcode, utf, bp, countptr,
 64344  		backref_cache)
 64345  	if !(d < 0) {
 64346  		goto __246
 64347  	}
 64348  	return d
 64349  __246:
 64350  	;
 64351  __245:
 64352  	;
 64353  __239:
 64354  	;
 64355  __237:
 64356  	;
 64357  __232:
 64358  	;
 64359  
 64360  	*(*int32)(unsafe.Pointer(backref_cache + uintptr(recno)*4)) = d
 64361  	i1 = *(*int32)(unsafe.Pointer(backref_cache)) + 1
 64362  __247:
 64363  	if !(i1 < recno) {
 64364  		goto __249
 64365  	}
 64366  	*(*int32)(unsafe.Pointer(backref_cache + uintptr(i1)*4)) = -1
 64367  	goto __248
 64368  __248:
 64369  	i1++
 64370  	goto __247
 64371  	goto __249
 64372  __249:
 64373  	;
 64374  	*(*int32)(unsafe.Pointer(backref_cache)) = recno
 64375  __231:
 64376  	;
 64377  
 64378  	cc += uintptr(1 + DIMM2_SIZE)
 64379  
 64380  	// Handle repeated back references
 64381  
 64382  REPEAT_BACK_REFERENCE:
 64383  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc))) {
 64384  	case OP_CRSTAR:
 64385  		goto __251
 64386  	case OP_CRMINSTAR:
 64387  		goto __252
 64388  	case OP_CRQUERY:
 64389  		goto __253
 64390  	case OP_CRMINQUERY:
 64391  		goto __254
 64392  	case OP_CRPOSSTAR:
 64393  		goto __255
 64394  	case OP_CRPOSQUERY:
 64395  		goto __256
 64396  
 64397  	case OP_CRPLUS:
 64398  		goto __257
 64399  	case OP_CRMINPLUS:
 64400  		goto __258
 64401  	case OP_CRPOSPLUS:
 64402  		goto __259
 64403  
 64404  	case OP_CRRANGE:
 64405  		goto __260
 64406  	case OP_CRMINRANGE:
 64407  		goto __261
 64408  	case OP_CRPOSRANGE:
 64409  		goto __262
 64410  
 64411  	default:
 64412  		goto __263
 64413  	}
 64414  	goto __250
 64415  
 64416  __251:
 64417  __252:
 64418  __253:
 64419  __254:
 64420  __255:
 64421  __256:
 64422  	min = 0
 64423  	cc++
 64424  	goto __250
 64425  
 64426  __257:
 64427  __258:
 64428  __259:
 64429  	min = 1
 64430  	cc++
 64431  	goto __250
 64432  
 64433  __260:
 64434  __261:
 64435  __262:
 64436  	min = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2)))))
 64437  	cc += uintptr(1 + 2*DIMM2_SIZE)
 64438  	goto __250
 64439  
 64440  __263:
 64441  	min = 1
 64442  	goto __250
 64443  __250:
 64444  	;
 64445  
 64446  	// Take care not to overflow: (1) min and d are ints, so check that their
 64447  	//      product is not greater than INT_MAX. (2) branchlength is limited to
 64448  	//      UINT16_MAX (checked at the top of the loop).
 64449  
 64450  	if !(d > 0 && 2147483647/d < min || 65535-uint32(branchlength) < uint32(min*d)) {
 64451  		goto __264
 64452  	}
 64453  	branchlength = int32(65535)
 64454  	goto __265
 64455  __264:
 64456  	branchlength = branchlength + min*d
 64457  __265:
 64458  	;
 64459  	goto __8
 64460  
 64461  	// Recursion always refers to the first occurrence of a subpattern with a
 64462  	//     given number. Therefore, we can always make use of caching, even when the
 64463  	//     pattern contains multiple subpatterns with the same number.
 64464  
 64465  __115:
 64466  	cs = libc.AssignUintptr(&ce, startcode+uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 2))))))
 64467  	recno = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cs + 3)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cs + 4)))))
 64468  	if !(recno == prev_recurse_recno) {
 64469  		goto __266
 64470  	}
 64471  
 64472  	branchlength = branchlength + prev_recurse_d
 64473  	goto __267
 64474  __266:
 64475  
 64476  __268:
 64477  	ce += uintptr(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce + 2)))))
 64478  	goto __269
 64479  __269:
 64480  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(ce))) == OP_ALT {
 64481  		goto __268
 64482  	}
 64483  	goto __270
 64484  __270:
 64485  	;
 64486  	if !(cc > cs && cc < ce) {
 64487  		goto __271
 64488  	} // Simple recursion
 64489  	had_recurse = DTRUE
 64490  	goto __272
 64491  __271:
 64492  
 64493  	r2 = recurses
 64494  	r2 = recurses
 64495  __273:
 64496  	if !(r2 != uintptr(0)) {
 64497  		goto __275
 64498  	}
 64499  	if !((*Trecurse_check)(unsafe.Pointer(r2)).Fgroup == cs) {
 64500  		goto __276
 64501  	}
 64502  	goto __275
 64503  __276:
 64504  	;
 64505  	goto __274
 64506  __274:
 64507  	r2 = (*Trecurse_check)(unsafe.Pointer(r2)).Fprev
 64508  	goto __273
 64509  	goto __275
 64510  __275:
 64511  	;
 64512  	if !(r2 != uintptr(0)) {
 64513  		goto __277
 64514  	} // Mutual recursion
 64515  	had_recurse = DTRUE
 64516  	goto __278
 64517  __277:
 64518  
 64519  	(*Trecurse_check)(unsafe.Pointer(bp /* &this_recurse */)).Fprev = recurses
 64520  	(*Trecurse_check)(unsafe.Pointer(bp /* &this_recurse */)).Fgroup = cs
 64521  	prev_recurse_d = find_minlength(tls, re, cs, startcode, utf, bp,
 64522  		countptr, backref_cache)
 64523  	if !(prev_recurse_d < 0) {
 64524  		goto __279
 64525  	}
 64526  	return prev_recurse_d
 64527  __279:
 64528  	;
 64529  	prev_recurse_recno = recno
 64530  	branchlength = branchlength + prev_recurse_d
 64531  __278:
 64532  	;
 64533  __272:
 64534  	;
 64535  __267:
 64536  	;
 64537  	cc += uintptr(Tuint32_t(1+DLINK_SIZE) + once_fudge)
 64538  	once_fudge = Tuint32_t(0)
 64539  	goto __8
 64540  
 64541  	// Anything else does not or need not match a character. We can get the
 64542  	//     item's length from the table, but for those that can match zero occurrences
 64543  	//     of a character, we must take special action for UTF-8 characters. As it
 64544  	//     happens, the "NOT" versions of these opcodes are used at present only for
 64545  	//     ASCII characters, so they could be omitted from this list. However, in
 64546  	//     future that may change, so we include them here so as not to leave a
 64547  	//     gotcha for a future maintainer.
 64548  
 64549  __116:
 64550  __117:
 64551  __118:
 64552  __119:
 64553  __120:
 64554  __121:
 64555  __122:
 64556  __123:
 64557  __124:
 64558  __125:
 64559  __126:
 64560  __127:
 64561  
 64562  __128:
 64563  __129:
 64564  __130:
 64565  __131:
 64566  __132:
 64567  __133:
 64568  __134:
 64569  __135:
 64570  __136:
 64571  __137:
 64572  __138:
 64573  __139:
 64574  
 64575  __140:
 64576  __141:
 64577  __142:
 64578  __143:
 64579  __144:
 64580  __145:
 64581  __146:
 64582  __147:
 64583  __148:
 64584  __149:
 64585  __150:
 64586  __151:
 64587  
 64588  	cc += uintptr(X_pcre2_OP_lengths_8[op])
 64589  	if !(utf != 0 && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1)))) >= 0xc0) {
 64590  		goto __280
 64591  	}
 64592  	cc += uintptr(X_pcre2_utf8_table4[uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + libc.UintptrFromInt32(-1))))&0x3f])
 64593  __280:
 64594  	;
 64595  	goto __8
 64596  
 64597  	// Skip these, but we need to add in the name length.
 64598  
 64599  __152:
 64600  __153:
 64601  __154:
 64602  __155:
 64603  __156:
 64604  	cc += uintptr(int32(X_pcre2_OP_lengths_8[op]) + int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(cc + 1))))
 64605  	goto __8
 64606  
 64607  	// The remaining opcodes are just skipped over.
 64608  
 64609  __157:
 64610  __158:
 64611  __159:
 64612  __160:
 64613  __161:
 64614  __162:
 64615  __163:
 64616  	cc += uintptr(X_pcre2_OP_lengths_8[op])
 64617  	goto __8
 64618  
 64619  	// This should not occur: we list all opcodes explicitly so that when
 64620  	//     new ones get added they are properly considered.
 64621  
 64622  __164:
 64623  	return -3
 64624  __8:
 64625  	;
 64626  	goto __5
 64627  __5:
 64628  	goto __4
 64629  	goto __6
 64630  __6:
 64631  	;
 64632  	return int32(0)
 64633  	// Control never gets here
 64634  }
 64635  
 64636  // ************************************************
 64637  //
 64638  //      Set a bit and maybe its alternate case    *
 64639  //
 64640  
 64641  // Given a character, set its first code unit's bit in the table, and also the
 64642  // corresponding bit for the other version of a letter if we are caseless.
 64643  //
 64644  // Arguments:
 64645  //   re            points to the regex block
 64646  //   p             points to the first code unit of the character
 64647  //   caseless      TRUE if caseless
 64648  //   utf           TRUE for UTF mode
 64649  //   ucp           TRUE for UCP mode
 64650  //
 64651  // Returns:        pointer after the character
 64652  
 64653  func set_table_bit(tls *libc.TLS, re uintptr, p TPCRE2_SPTR8, caseless TBOOL, utf TBOOL, ucp TBOOL) TPCRE2_SPTR8 { /* pcre2_study.c:781:1: */
 64654  	bp := tls.Alloc(6)
 64655  	defer tls.Free(6)
 64656  
 64657  	var c Tuint32_t = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1)))) // First code unit
 64658  
 64659  	_ = utf // Stop compiler warnings when UTF not supported
 64660  	_ = ucp
 64661  
 64662  	// In 16-bit and 32-bit modes, code units greater than 0xff set the bit for
 64663  	// 0xff.
 64664  
 64665  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c/Tuint32_t(8)))) |= Tuint8_t(uint32(1) << (c & Tuint32_t(7)))
 64666  
 64667  	// In UTF-8 or UTF-16 mode, pick up the remaining code units in order to find
 64668  	// the end of the character, even when caseless.
 64669  
 64670  	if utf != 0 {
 64671  		if c >= Tuint32_t(0xc0) {
 64672  			if c&0x20 == Tuint32_t(0) {
 64673  				c = c&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p, 1))))&0x3f
 64674  			} else if c&0x10 == Tuint32_t(0) {
 64675  				c = c&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f
 64676  				p += uintptr(2)
 64677  			} else if c&0x08 == Tuint32_t(0) {
 64678  				c = c&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 2)))&0x3f
 64679  				p += uintptr(3)
 64680  			} else if c&0x04 == Tuint32_t(0) {
 64681  				c = c&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 3)))&0x3f
 64682  				p += uintptr(4)
 64683  			} else {
 64684  				c = c&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p + 4)))&0x3f
 64685  				p += uintptr(5)
 64686  			}
 64687  		}
 64688  
 64689  	}
 64690  
 64691  	// If caseless, handle the other case of the character.
 64692  
 64693  	if caseless != 0 {
 64694  		if utf != 0 || ucp != 0 {
 64695  			c = Tuint32_t(int32(c) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12)).Fother_case)
 64696  			if utf != 0 {
 64697  				// var buff [6]TPCRE2_UCHAR8 at bp, 6
 64698  
 64699  				X_pcre2_ord2utf_8(tls, c, bp)
 64700  				*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp)))/8))) |= Tuint8_t(uint32(1) << (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp))) & 7))
 64701  			} else if c < Tuint32_t(256) {
 64702  				*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c/Tuint32_t(8)))) |= Tuint8_t(uint32(1) << (c & Tuint32_t(7)))
 64703  			}
 64704  		} else
 64705  
 64706  		// Not UTF or UCP
 64707  
 64708  		if 1 != 0 {
 64709  			*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(int32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(Tuint32_t(Dfcc_offset)+c))))/8))) |= Tuint8_t(uint32(1) << (int32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(Tuint32_t(Dfcc_offset)+c)))) & 7))
 64710  		}
 64711  	}
 64712  
 64713  	return p
 64714  }
 64715  
 64716  // ************************************************
 64717  //
 64718  //     Set bits for a positive character type     *
 64719  //
 64720  
 64721  // This function sets starting bits for a character type. In UTF-8 mode, we can
 64722  // only do a direct setting for bytes less than 128, as otherwise there can be
 64723  // confusion with bytes in the middle of UTF-8 characters. In a "traditional"
 64724  // environment, the tables will only recognize ASCII characters anyway, but in at
 64725  // least one Windows environment, some higher bytes bits were set in the tables.
 64726  // So we deal with that case by considering the UTF-8 encoding.
 64727  //
 64728  // Arguments:
 64729  //   re             the regex block
 64730  //   cbit type      the type of character wanted
 64731  //   table_limit    32 for non-UTF-8; 16 for UTF-8
 64732  //
 64733  // Returns:         nothing
 64734  
 64735  func set_type_bits(tls *libc.TLS, re uintptr, cbit_type int32, table_limit uint32) { /* pcre2_study.c:866:1: */
 64736  	bp := tls.Alloc(6)
 64737  	defer tls.Free(6)
 64738  
 64739  	var c Tuint32_t
 64740  	for c = Tuint32_t(0); c < table_limit; c++ {
 64741  		*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(c+Tuint32_t(Dcbits_offset)+Tuint32_t(cbit_type))))))
 64742  	}
 64743  	if table_limit == uint32(32) {
 64744  		return
 64745  	}
 64746  	for c = Tuint32_t(128); c < Tuint32_t(256); c++ {
 64747  		if uint32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(Tuint32_t(Dcbits_offset)+c/Tuint32_t(8)))))&(uint32(1)<<(c&Tuint32_t(7))) != uint32(0) {
 64748  			// var buff [6]TPCRE2_UCHAR8 at bp, 6
 64749  
 64750  			X_pcre2_ord2utf_8(tls, c, bp)
 64751  			*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp)))/8))) |= Tuint8_t(uint32(1) << (int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp))) & 7))
 64752  		}
 64753  	}
 64754  }
 64755  
 64756  // ************************************************
 64757  //
 64758  //     Set bits for a negative character type     *
 64759  //
 64760  
 64761  // This function sets starting bits for a negative character type such as \D.
 64762  // In UTF-8 mode, we can only do a direct setting for bytes less than 128, as
 64763  // otherwise there can be confusion with bytes in the middle of UTF-8 characters.
 64764  // Unlike in the positive case, where we can set appropriate starting bits for
 64765  // specific high-valued UTF-8 characters, in this case we have to set the bits for
 64766  // all high-valued characters. The lowest is 0xc2, but we overkill by starting at
 64767  // 0xc0 (192) for simplicity.
 64768  //
 64769  // Arguments:
 64770  //   re             the regex block
 64771  //   cbit type      the type of character wanted
 64772  //   table_limit    32 for non-UTF-8; 16 for UTF-8
 64773  //
 64774  // Returns:         nothing
 64775  
 64776  func set_nottype_bits(tls *libc.TLS, re uintptr, cbit_type int32, table_limit uint32) { /* pcre2_study.c:907:1: */
 64777  	var c Tuint32_t
 64778  	for c = Tuint32_t(0); c < table_limit; c++ {
 64779  		*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c))) |= Tuint8_t(int32(Tuint8_t(^int32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(c+Tuint32_t(Dcbits_offset)+Tuint32_t(cbit_type))))))))
 64780  	}
 64781  	if table_limit != uint32(32) {
 64782  		for c = Tuint32_t(24); c < Tuint32_t(32); c++ {
 64783  			*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c))) = Tuint8_t(0xff)
 64784  		}
 64785  	}
 64786  }
 64787  
 64788  // ************************************************
 64789  //
 64790  //      Create bitmap of starting code units      *
 64791  //
 64792  
 64793  // This function scans a compiled unanchored expression recursively and
 64794  // attempts to build a bitmap of the set of possible starting code units whose
 64795  // values are less than 256. In 16-bit and 32-bit mode, values above 255 all cause
 64796  // the 255 bit to be set. When calling set[_not]_type_bits() in UTF-8 (sic) mode
 64797  // we pass a value of 16 rather than 32 as the final argument. (See comments in
 64798  // those functions for the reason.)
 64799  //
 64800  // The SSB_CONTINUE return is useful for parenthesized groups in patterns such as
 64801  // (a*)b where the group provides some optional starting code units but scanning
 64802  // must continue at the outer level to find at least one mandatory code unit. At
 64803  // the outermost level, this function fails unless the result is SSB_DONE.
 64804  //
 64805  // We restrict recursion (for nested groups) to 1000 to avoid stack overflow
 64806  // issues.
 64807  //
 64808  // Arguments:
 64809  //   re           points to the compiled regex block
 64810  //   code         points to an expression
 64811  //   utf          TRUE if in UTF mode
 64812  //   ucp          TRUE if in UCP mode
 64813  //   depthptr     pointer to recurse depth
 64814  //
 64815  // Returns:       SSB_FAIL     => Failed to find any starting code units
 64816  //                SSB_DONE     => Found mandatory starting code units
 64817  //                SSB_CONTINUE => Found optional starting code units
 64818  //                SSB_UNKNOWN  => Hit an unrecognized opcode
 64819  //                SSB_TOODEEP  => Recursion is too deep
 64820  
 64821  func set_start_bits(tls *libc.TLS, re uintptr, code TPCRE2_SPTR8, utf TBOOL, ucp TBOOL, depthptr uintptr) int32 { /* pcre2_study.c:953:1: */
 64822  	bp := tls.Alloc(6)
 64823  	defer tls.Free(6)
 64824  
 64825  	var c Tuint32_t
 64826  	var yield int32
 64827  	var table_limit int32
 64828  	// var buff [6]TPCRE2_UCHAR8 at bp, 6
 64829  
 64830  	var p uintptr
 64831  	var b TPCRE2_UCHAR8
 64832  	var e TPCRE2_UCHAR8
 64833  	var p1 TPCRE2_SPTR8
 64834  	var d int32
 64835  	var rc int32
 64836  	var classmap uintptr
 64837  	var xclassflags TPCRE2_UCHAR8
 64838  	var try_next TBOOL
 64839  	var tcode TPCRE2_SPTR8
 64840  	yield = SSB_DONE
 64841  	if utf != 0 {
 64842  		table_limit = 16
 64843  	} else {
 64844  		table_limit = 32
 64845  	}
 64846  
 64847  	*(*int32)(unsafe.Pointer(depthptr)) += 1
 64848  	if !(*(*int32)(unsafe.Pointer(depthptr)) > 1000) {
 64849  		goto __1
 64850  	}
 64851  	return SSB_TOODEEP
 64852  __1:
 64853  	;
 64854  
 64855  __2:
 64856  	try_next = DTRUE
 64857  	tcode = code + uintptr(1) + uintptr(DLINK_SIZE)
 64858  
 64859  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_CBRA || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_SCBRA || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_CBRAPOS || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_SCBRAPOS) {
 64860  		goto __5
 64861  	}
 64862  	tcode += TPCRE2_SPTR8(DIMM2_SIZE)
 64863  __5:
 64864  	;
 64865  
 64866  __6:
 64867  	if !(try_next != 0) {
 64868  		goto __7
 64869  	} /* Loop for items in this branch */
 64870  	classmap = uintptr(0)
 64871  
 64872  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode))) {
 64873  	// If we reach something we don't understand, it means a new opcode has
 64874  	//       been created that hasn't been added to this function. Hopefully this
 64875  	//       problem will be discovered during testing.
 64876  
 64877  	default:
 64878  		goto __9
 64879  
 64880  	// Fail for a valid opcode that implies no starting bits.
 64881  
 64882  	case OP_ACCEPT:
 64883  		goto __10
 64884  	case OP_ASSERT_ACCEPT:
 64885  		goto __11
 64886  	case OP_ALLANY:
 64887  		goto __12
 64888  	case OP_ANY:
 64889  		goto __13
 64890  	case OP_ANYBYTE:
 64891  		goto __14
 64892  	case OP_CIRCM:
 64893  		goto __15
 64894  	case OP_CLOSE:
 64895  		goto __16
 64896  	case OP_COMMIT:
 64897  		goto __17
 64898  	case OP_COMMIT_ARG:
 64899  		goto __18
 64900  	case OP_COND:
 64901  		goto __19
 64902  	case OP_CREF:
 64903  		goto __20
 64904  	case OP_FALSE:
 64905  		goto __21
 64906  	case OP_TRUE:
 64907  		goto __22
 64908  	case OP_DNCREF:
 64909  		goto __23
 64910  	case OP_DNREF:
 64911  		goto __24
 64912  	case OP_DNREFI:
 64913  		goto __25
 64914  	case OP_DNRREF:
 64915  		goto __26
 64916  	case OP_DOLL:
 64917  		goto __27
 64918  	case OP_DOLLM:
 64919  		goto __28
 64920  	case OP_END:
 64921  		goto __29
 64922  	case OP_EOD:
 64923  		goto __30
 64924  	case OP_EODN:
 64925  		goto __31
 64926  	case OP_EXTUNI:
 64927  		goto __32
 64928  	case OP_FAIL:
 64929  		goto __33
 64930  	case OP_MARK:
 64931  		goto __34
 64932  	case OP_NOT:
 64933  		goto __35
 64934  	case OP_NOTEXACT:
 64935  		goto __36
 64936  	case OP_NOTEXACTI:
 64937  		goto __37
 64938  	case OP_NOTI:
 64939  		goto __38
 64940  	case OP_NOTMINPLUS:
 64941  		goto __39
 64942  	case OP_NOTMINPLUSI:
 64943  		goto __40
 64944  	case OP_NOTMINQUERY:
 64945  		goto __41
 64946  	case OP_NOTMINQUERYI:
 64947  		goto __42
 64948  	case OP_NOTMINSTAR:
 64949  		goto __43
 64950  	case OP_NOTMINSTARI:
 64951  		goto __44
 64952  	case OP_NOTMINUPTO:
 64953  		goto __45
 64954  	case OP_NOTMINUPTOI:
 64955  		goto __46
 64956  	case OP_NOTPLUS:
 64957  		goto __47
 64958  	case OP_NOTPLUSI:
 64959  		goto __48
 64960  	case OP_NOTPOSPLUS:
 64961  		goto __49
 64962  	case OP_NOTPOSPLUSI:
 64963  		goto __50
 64964  	case OP_NOTPOSQUERY:
 64965  		goto __51
 64966  	case OP_NOTPOSQUERYI:
 64967  		goto __52
 64968  	case OP_NOTPOSSTAR:
 64969  		goto __53
 64970  	case OP_NOTPOSSTARI:
 64971  		goto __54
 64972  	case OP_NOTPOSUPTO:
 64973  		goto __55
 64974  	case OP_NOTPOSUPTOI:
 64975  		goto __56
 64976  	case OP_NOTPROP:
 64977  		goto __57
 64978  	case OP_NOTQUERY:
 64979  		goto __58
 64980  	case OP_NOTQUERYI:
 64981  		goto __59
 64982  	case OP_NOTSTAR:
 64983  		goto __60
 64984  	case OP_NOTSTARI:
 64985  		goto __61
 64986  	case OP_NOTUPTO:
 64987  		goto __62
 64988  	case OP_NOTUPTOI:
 64989  		goto __63
 64990  	case OP_NOT_HSPACE:
 64991  		goto __64
 64992  	case OP_NOT_VSPACE:
 64993  		goto __65
 64994  	case OP_PRUNE:
 64995  		goto __66
 64996  	case OP_PRUNE_ARG:
 64997  		goto __67
 64998  	case OP_RECURSE:
 64999  		goto __68
 65000  	case OP_REF:
 65001  		goto __69
 65002  	case OP_REFI:
 65003  		goto __70
 65004  	case OP_REVERSE:
 65005  		goto __71
 65006  	case OP_RREF:
 65007  		goto __72
 65008  	case OP_SCOND:
 65009  		goto __73
 65010  	case OP_SET_SOM:
 65011  		goto __74
 65012  	case OP_SKIP:
 65013  		goto __75
 65014  	case OP_SKIP_ARG:
 65015  		goto __76
 65016  	case OP_SOD:
 65017  		goto __77
 65018  	case OP_SOM:
 65019  		goto __78
 65020  	case OP_THEN:
 65021  		goto __79
 65022  	case OP_THEN_ARG:
 65023  		goto __80
 65024  
 65025  	// OP_CIRC happens only at the start of an anchored branch (multiline ^
 65026  	//       uses OP_CIRCM). Skip over it.
 65027  
 65028  	case OP_CIRC:
 65029  		goto __81
 65030  
 65031  	// A "real" property test implies no starting bits, but the fake property
 65032  	//       PT_CLIST identifies a list of characters. These lists are short, as they
 65033  	//       are used for characters with more than one "other case", so there is no
 65034  	//       point in recognizing them for OP_NOTPROP.
 65035  
 65036  	case OP_PROP:
 65037  		goto __82
 65038  
 65039  	// We can ignore word boundary tests.
 65040  
 65041  	case OP_WORD_BOUNDARY:
 65042  		goto __83
 65043  	case OP_NOT_WORD_BOUNDARY:
 65044  		goto __84
 65045  
 65046  	// If we hit a bracket or a positive lookahead assertion, recurse to set
 65047  	//       bits from within the subpattern. If it can't find anything, we have to
 65048  	//       give up. If it finds some mandatory character(s), we are done for this
 65049  	//       branch. Otherwise, carry on scanning after the subpattern.
 65050  
 65051  	case OP_BRA:
 65052  		goto __85
 65053  	case OP_SBRA:
 65054  		goto __86
 65055  	case OP_CBRA:
 65056  		goto __87
 65057  	case OP_SCBRA:
 65058  		goto __88
 65059  	case OP_BRAPOS:
 65060  		goto __89
 65061  	case OP_SBRAPOS:
 65062  		goto __90
 65063  	case OP_CBRAPOS:
 65064  		goto __91
 65065  	case OP_SCBRAPOS:
 65066  		goto __92
 65067  	case OP_ONCE:
 65068  		goto __93
 65069  	case OP_SCRIPT_RUN:
 65070  		goto __94
 65071  	case OP_ASSERT:
 65072  		goto __95
 65073  	case OP_ASSERT_NA:
 65074  		goto __96
 65075  
 65076  	// If we hit ALT or KET, it means we haven't found anything mandatory in
 65077  	//       this branch, though we might have found something optional. For ALT, we
 65078  	//       continue with the next alternative, but we have to arrange that the final
 65079  	//       result from subpattern is SSB_CONTINUE rather than SSB_DONE. For KET,
 65080  	//       return SSB_CONTINUE: if this is the top level, that indicates failure,
 65081  	//       but after a nested subpattern, it causes scanning to continue.
 65082  
 65083  	case OP_ALT:
 65084  		goto __97
 65085  
 65086  	case OP_KET:
 65087  		goto __98
 65088  	case OP_KETRMAX:
 65089  		goto __99
 65090  	case OP_KETRMIN:
 65091  		goto __100
 65092  	case OP_KETRPOS:
 65093  		goto __101
 65094  
 65095  	// Skip over callout
 65096  
 65097  	case OP_CALLOUT:
 65098  		goto __102
 65099  
 65100  	case OP_CALLOUT_STR:
 65101  		goto __103
 65102  
 65103  	// Skip over lookbehind and negative lookahead assertions
 65104  
 65105  	case OP_ASSERT_NOT:
 65106  		goto __104
 65107  	case OP_ASSERTBACK:
 65108  		goto __105
 65109  	case OP_ASSERTBACK_NOT:
 65110  		goto __106
 65111  	case OP_ASSERTBACK_NA:
 65112  		goto __107
 65113  
 65114  	// BRAZERO does the bracket, but carries on.
 65115  
 65116  	case OP_BRAZERO:
 65117  		goto __108
 65118  	case OP_BRAMINZERO:
 65119  		goto __109
 65120  	case OP_BRAPOSZERO:
 65121  		goto __110
 65122  
 65123  	// SKIPZERO skips the bracket.
 65124  
 65125  	case OP_SKIPZERO:
 65126  		goto __111
 65127  
 65128  	// Single-char * or ? sets the bit and tries the next item
 65129  
 65130  	case OP_STAR:
 65131  		goto __112
 65132  	case OP_MINSTAR:
 65133  		goto __113
 65134  	case OP_POSSTAR:
 65135  		goto __114
 65136  	case OP_QUERY:
 65137  		goto __115
 65138  	case OP_MINQUERY:
 65139  		goto __116
 65140  	case OP_POSQUERY:
 65141  		goto __117
 65142  
 65143  	case OP_STARI:
 65144  		goto __118
 65145  	case OP_MINSTARI:
 65146  		goto __119
 65147  	case OP_POSSTARI:
 65148  		goto __120
 65149  	case OP_QUERYI:
 65150  		goto __121
 65151  	case OP_MINQUERYI:
 65152  		goto __122
 65153  	case OP_POSQUERYI:
 65154  		goto __123
 65155  
 65156  	// Single-char upto sets the bit and tries the next
 65157  
 65158  	case OP_UPTO:
 65159  		goto __124
 65160  	case OP_MINUPTO:
 65161  		goto __125
 65162  	case OP_POSUPTO:
 65163  		goto __126
 65164  
 65165  	case OP_UPTOI:
 65166  		goto __127
 65167  	case OP_MINUPTOI:
 65168  		goto __128
 65169  	case OP_POSUPTOI:
 65170  		goto __129
 65171  
 65172  	// At least one single char sets the bit and stops
 65173  
 65174  	case OP_EXACT:
 65175  		goto __130
 65176  	// Fall through
 65177  	case OP_CHAR:
 65178  		goto __131
 65179  	case OP_PLUS:
 65180  		goto __132
 65181  	case OP_MINPLUS:
 65182  		goto __133
 65183  	case OP_POSPLUS:
 65184  		goto __134
 65185  
 65186  	case OP_EXACTI:
 65187  		goto __135
 65188  	// Fall through
 65189  	case OP_CHARI:
 65190  		goto __136
 65191  	case OP_PLUSI:
 65192  		goto __137
 65193  	case OP_MINPLUSI:
 65194  		goto __138
 65195  	case OP_POSPLUSI:
 65196  		goto __139
 65197  
 65198  	// Special spacing and line-terminating items. These recognize specific
 65199  	//       lists of characters. The difference between VSPACE and ANYNL is that the
 65200  	//       latter can match the two-character CRLF sequence, but that is not
 65201  	//       relevant for finding the first character, so their code here is
 65202  	//       identical.
 65203  
 65204  	case OP_HSPACE:
 65205  		goto __140
 65206  
 65207  	case OP_ANYNL:
 65208  		goto __141
 65209  	case OP_VSPACE:
 65210  		goto __142
 65211  
 65212  	// Single character types set the bits and stop. Note that if PCRE2_UCP
 65213  	//       is set, we do not see these opcodes because \d etc are converted to
 65214  	//       properties. Therefore, these apply in the case when only characters less
 65215  	//       than 256 are recognized to match the types.
 65216  
 65217  	case OP_NOT_DIGIT:
 65218  		goto __143
 65219  
 65220  	case OP_DIGIT:
 65221  		goto __144
 65222  
 65223  	case OP_NOT_WHITESPACE:
 65224  		goto __145
 65225  
 65226  	case OP_WHITESPACE:
 65227  		goto __146
 65228  
 65229  	case OP_NOT_WORDCHAR:
 65230  		goto __147
 65231  
 65232  	case OP_WORDCHAR:
 65233  		goto __148
 65234  
 65235  	// One or more character type fudges the pointer and restarts, knowing
 65236  	//       it will hit a single character type and stop there.
 65237  
 65238  	case OP_TYPEPLUS:
 65239  		goto __149
 65240  	case OP_TYPEMINPLUS:
 65241  		goto __150
 65242  	case OP_TYPEPOSPLUS:
 65243  		goto __151
 65244  
 65245  	case OP_TYPEEXACT:
 65246  		goto __152
 65247  
 65248  	// Zero or more repeats of character types set the bits and then
 65249  	//       try again.
 65250  
 65251  	case OP_TYPEUPTO:
 65252  		goto __153
 65253  	case OP_TYPEMINUPTO:
 65254  		goto __154
 65255  	case OP_TYPEPOSUPTO:
 65256  		goto __155 // Fall through
 65257  
 65258  	case OP_TYPESTAR:
 65259  		goto __156
 65260  	case OP_TYPEMINSTAR:
 65261  		goto __157
 65262  	case OP_TYPEPOSSTAR:
 65263  		goto __158
 65264  	case OP_TYPEQUERY:
 65265  		goto __159
 65266  	case OP_TYPEMINQUERY:
 65267  		goto __160
 65268  	case OP_TYPEPOSQUERY:
 65269  		goto __161
 65270  
 65271  	// Extended class: if there are any property checks, or if this is a
 65272  	//       negative XCLASS without a map, give up. If there are no property checks,
 65273  	//       there must be wide characters on the XCLASS list, because otherwise an
 65274  	//       XCLASS would not have been created. This means that code points >= 255
 65275  	//       are potential starters. In the UTF-8 case we can scan them and set bits
 65276  	//       for the relevant leading bytes.
 65277  
 65278  	case OP_XCLASS:
 65279  		goto __162
 65280  
 65281  	// It seems that the fall through comment must be outside the #ifdef if
 65282  	//       it is to avoid the gcc compiler warning.
 65283  
 65284  	// Fall through
 65285  
 65286  	// Enter here for a negative non-XCLASS. In the 8-bit library, if we are
 65287  	//       in UTF mode, any byte with a value >= 0xc4 is a potentially valid starter
 65288  	//       because it starts a character with a value > 255. In 8-bit non-UTF mode,
 65289  	//       there is no difference between CLASS and NCLASS. In all other wide
 65290  	//       character modes, set the 0xFF bit to indicate code units >= 255.
 65291  
 65292  	case OP_NCLASS:
 65293  		goto __163
 65294  	// Fall through
 65295  
 65296  	// Enter here for a positive non-XCLASS. If we have fallen through from
 65297  	//       an XCLASS, classmap will already be set; just advance the code pointer.
 65298  	//       Otherwise, set up classmap for a a non-XCLASS and advance past it.
 65299  
 65300  	case OP_CLASS:
 65301  		goto __164
 65302  	}
 65303  	goto __8
 65304  
 65305  	// If we reach something we don't understand, it means a new opcode has
 65306  	//       been created that hasn't been added to this function. Hopefully this
 65307  	//       problem will be discovered during testing.
 65308  
 65309  __9:
 65310  	return SSB_UNKNOWN
 65311  
 65312  	// Fail for a valid opcode that implies no starting bits.
 65313  
 65314  __10:
 65315  __11:
 65316  __12:
 65317  __13:
 65318  __14:
 65319  __15:
 65320  __16:
 65321  __17:
 65322  __18:
 65323  __19:
 65324  __20:
 65325  __21:
 65326  __22:
 65327  __23:
 65328  __24:
 65329  __25:
 65330  __26:
 65331  __27:
 65332  __28:
 65333  __29:
 65334  __30:
 65335  __31:
 65336  __32:
 65337  __33:
 65338  __34:
 65339  __35:
 65340  __36:
 65341  __37:
 65342  __38:
 65343  __39:
 65344  __40:
 65345  __41:
 65346  __42:
 65347  __43:
 65348  __44:
 65349  __45:
 65350  __46:
 65351  __47:
 65352  __48:
 65353  __49:
 65354  __50:
 65355  __51:
 65356  __52:
 65357  __53:
 65358  __54:
 65359  __55:
 65360  __56:
 65361  __57:
 65362  __58:
 65363  __59:
 65364  __60:
 65365  __61:
 65366  __62:
 65367  __63:
 65368  __64:
 65369  __65:
 65370  __66:
 65371  __67:
 65372  __68:
 65373  __69:
 65374  __70:
 65375  __71:
 65376  __72:
 65377  __73:
 65378  __74:
 65379  __75:
 65380  __76:
 65381  __77:
 65382  __78:
 65383  __79:
 65384  __80:
 65385  	return SSB_FAIL
 65386  
 65387  	// OP_CIRC happens only at the start of an anchored branch (multiline ^
 65388  	//       uses OP_CIRCM). Skip over it.
 65389  
 65390  __81:
 65391  	tcode += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[OP_CIRC])
 65392  	goto __8
 65393  
 65394  	// A "real" property test implies no starting bits, but the fake property
 65395  	//       PT_CLIST identifies a list of characters. These lists are short, as they
 65396  	//       are used for characters with more than one "other case", so there is no
 65397  	//       point in recognizing them for OP_NOTPROP.
 65398  
 65399  __82:
 65400  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1))) != DPT_CLIST) {
 65401  		goto __165
 65402  	}
 65403  	return SSB_FAIL
 65404  __165:
 65405  	;
 65406  
 65407  	p = uintptr(unsafe.Pointer(&X_pcre2_ucd_caseless_sets_8)) + uintptr(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))*4
 65408  __166:
 65409  	if !(libc.AssignUint32(&c, *(*Tuint32_t)(unsafe.Pointer(libc.PostIncUintptr(&p, 4)))) < DNOTACHAR) {
 65410  		goto __167
 65411  	}
 65412  
 65413  	if !(utf != 0) {
 65414  		goto __168
 65415  	}
 65416  
 65417  	X_pcre2_ord2utf_8(tls, c, bp)
 65418  	c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp)))
 65419  __168:
 65420  	;
 65421  	if !(c > Tuint32_t(0xff)) {
 65422  		goto __169
 65423  	}
 65424  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 31)) |= uint8(uint32(1) << (0xff & 7))
 65425  	goto __170
 65426  __169:
 65427  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c/Tuint32_t(8)))) |= Tuint8_t(uint32(1) << (c & Tuint32_t(7)))
 65428  __170:
 65429  	;
 65430  	goto __166
 65431  __167:
 65432  	;
 65433  
 65434  	try_next = DFALSE
 65435  	goto __8
 65436  
 65437  	// We can ignore word boundary tests.
 65438  
 65439  __83:
 65440  __84:
 65441  	tcode++
 65442  	goto __8
 65443  
 65444  	// If we hit a bracket or a positive lookahead assertion, recurse to set
 65445  	//       bits from within the subpattern. If it can't find anything, we have to
 65446  	//       give up. If it finds some mandatory character(s), we are done for this
 65447  	//       branch. Otherwise, carry on scanning after the subpattern.
 65448  
 65449  __85:
 65450  __86:
 65451  __87:
 65452  __88:
 65453  __89:
 65454  __90:
 65455  __91:
 65456  __92:
 65457  __93:
 65458  __94:
 65459  __95:
 65460  __96:
 65461  	rc = set_start_bits(tls, re, tcode, utf, ucp, depthptr)
 65462  	if !(rc == SSB_DONE) {
 65463  		goto __171
 65464  	}
 65465  
 65466  	try_next = DFALSE
 65467  	goto __172
 65468  __171:
 65469  	if !(rc == SSB_CONTINUE) {
 65470  		goto __173
 65471  	}
 65472  
 65473  __175:
 65474  	tcode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))))
 65475  	goto __176
 65476  __176:
 65477  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode))) == OP_ALT {
 65478  		goto __175
 65479  	}
 65480  	goto __177
 65481  __177:
 65482  	;
 65483  	tcode += TPCRE2_SPTR8(1 + DLINK_SIZE)
 65484  	goto __174
 65485  __173:
 65486  	return rc
 65487  __174:
 65488  	;
 65489  __172:
 65490  	; // FAIL, UNKNOWN, or TOODEEP
 65491  	goto __8
 65492  
 65493  	// If we hit ALT or KET, it means we haven't found anything mandatory in
 65494  	//       this branch, though we might have found something optional. For ALT, we
 65495  	//       continue with the next alternative, but we have to arrange that the final
 65496  	//       result from subpattern is SSB_CONTINUE rather than SSB_DONE. For KET,
 65497  	//       return SSB_CONTINUE: if this is the top level, that indicates failure,
 65498  	//       but after a nested subpattern, it causes scanning to continue.
 65499  
 65500  __97:
 65501  	yield = SSB_CONTINUE
 65502  	try_next = DFALSE
 65503  	goto __8
 65504  
 65505  __98:
 65506  __99:
 65507  __100:
 65508  __101:
 65509  	return SSB_CONTINUE
 65510  
 65511  	// Skip over callout
 65512  
 65513  __102:
 65514  	tcode += TPCRE2_SPTR8(X_pcre2_OP_lengths_8[OP_CALLOUT])
 65515  	goto __8
 65516  
 65517  __103:
 65518  	tcode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 5)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 6)))))
 65519  	goto __8
 65520  
 65521  	// Skip over lookbehind and negative lookahead assertions
 65522  
 65523  __104:
 65524  __105:
 65525  __106:
 65526  __107:
 65527  __178:
 65528  	tcode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))))
 65529  	goto __179
 65530  __179:
 65531  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode))) == OP_ALT {
 65532  		goto __178
 65533  	}
 65534  	goto __180
 65535  __180:
 65536  	;
 65537  	tcode += TPCRE2_SPTR8(1 + DLINK_SIZE)
 65538  	goto __8
 65539  
 65540  	// BRAZERO does the bracket, but carries on.
 65541  
 65542  __108:
 65543  __109:
 65544  __110:
 65545  	rc = set_start_bits(tls, re, libc.PreIncUintptr(&tcode, 1), utf, ucp, depthptr)
 65546  	if !(rc == SSB_FAIL || rc == SSB_UNKNOWN || rc == SSB_TOODEEP) {
 65547  		goto __181
 65548  	}
 65549  	return rc
 65550  __181:
 65551  	;
 65552  __182:
 65553  	tcode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))))
 65554  	goto __183
 65555  __183:
 65556  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode))) == OP_ALT {
 65557  		goto __182
 65558  	}
 65559  	goto __184
 65560  __184:
 65561  	;
 65562  	tcode += TPCRE2_SPTR8(1 + DLINK_SIZE)
 65563  	goto __8
 65564  
 65565  	// SKIPZERO skips the bracket.
 65566  
 65567  __111:
 65568  	tcode++
 65569  __185:
 65570  	tcode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))))
 65571  	goto __186
 65572  __186:
 65573  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode))) == OP_ALT {
 65574  		goto __185
 65575  	}
 65576  	goto __187
 65577  __187:
 65578  	;
 65579  	tcode += TPCRE2_SPTR8(1 + DLINK_SIZE)
 65580  	goto __8
 65581  
 65582  	// Single-char * or ? sets the bit and tries the next item
 65583  
 65584  __112:
 65585  __113:
 65586  __114:
 65587  __115:
 65588  __116:
 65589  __117:
 65590  	tcode = set_table_bit(tls, re, tcode+uintptr(1), DFALSE, utf, ucp)
 65591  	goto __8
 65592  
 65593  __118:
 65594  __119:
 65595  __120:
 65596  __121:
 65597  __122:
 65598  __123:
 65599  	tcode = set_table_bit(tls, re, tcode+uintptr(1), DTRUE, utf, ucp)
 65600  	goto __8
 65601  
 65602  	// Single-char upto sets the bit and tries the next
 65603  
 65604  __124:
 65605  __125:
 65606  __126:
 65607  	tcode = set_table_bit(tls, re, tcode+uintptr(1)+uintptr(DIMM2_SIZE), DFALSE, utf, ucp)
 65608  	goto __8
 65609  
 65610  __127:
 65611  __128:
 65612  __129:
 65613  	tcode = set_table_bit(tls, re, tcode+uintptr(1)+uintptr(DIMM2_SIZE), DTRUE, utf, ucp)
 65614  	goto __8
 65615  
 65616  	// At least one single char sets the bit and stops
 65617  
 65618  __130:
 65619  	tcode += TPCRE2_SPTR8(DIMM2_SIZE)
 65620  	// Fall through
 65621  __131:
 65622  __132:
 65623  __133:
 65624  __134:
 65625  	set_table_bit(tls, re, tcode+uintptr(1), DFALSE, utf, ucp)
 65626  	try_next = DFALSE
 65627  	goto __8
 65628  
 65629  __135:
 65630  	tcode += TPCRE2_SPTR8(DIMM2_SIZE)
 65631  	// Fall through
 65632  __136:
 65633  __137:
 65634  __138:
 65635  __139:
 65636  	set_table_bit(tls, re, tcode+uintptr(1), DTRUE, utf, ucp)
 65637  	try_next = DFALSE
 65638  	goto __8
 65639  
 65640  	// Special spacing and line-terminating items. These recognize specific
 65641  	//       lists of characters. The difference between VSPACE and ANYNL is that the
 65642  	//       latter can match the two-character CRLF sequence, but that is not
 65643  	//       relevant for finding the first character, so their code here is
 65644  	//       identical.
 65645  
 65646  __140:
 65647  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\011' & 7))
 65648  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 4)) |= uint8(uint32(1) << ('\040' & 7))
 65649  
 65650  	// For the 16-bit and 32-bit libraries (which can never be EBCDIC), set
 65651  	//       the bits for 0xA0 and for code units >= 255, independently of UTF.
 65652  
 65653  	// For the 8-bit library in UTF-8 mode, set the bits for the first code
 65654  	//       units of horizontal space characters.
 65655  
 65656  	if !(utf != 0) {
 65657  		goto __188
 65658  	}
 65659  
 65660  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 24)) |= uint8(uint32(1) << (0xC2 & 7)) // For U+00A0
 65661  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE1 & 7)) // For U+1680, U+180E
 65662  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE2 & 7)) // For U+2000 - U+200A, U+202F, U+205F
 65663  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE3 & 7)) // For U+3000
 65664  	goto __189
 65665  __188:
 65666  	/* For the 8-bit library not in UTF-8 mode, set the bit for 0xA0, unless
 65667  	   the code is EBCDIC. */
 65668  
 65669  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 20)) |= uint8(uint32(1) << (0xA0 & 7))
 65670  __189:
 65671  	;
 65672  
 65673  	try_next = DFALSE
 65674  	goto __8
 65675  
 65676  __141:
 65677  __142:
 65678  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\012' & 7))
 65679  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\013' & 7))
 65680  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\014' & 7))
 65681  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\015' & 7))
 65682  
 65683  	// For the 16-bit and 32-bit libraries (which can never be EBCDIC), set
 65684  	//       the bits for NEL and for code units >= 255, independently of UTF.
 65685  
 65686  	// For the 8-bit library in UTF-8 mode, set the bits for the first code
 65687  	//       units of vertical space characters.
 65688  
 65689  	if !(utf != 0) {
 65690  		goto __190
 65691  	}
 65692  
 65693  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 24)) |= uint8(uint32(1) << (0xC2 & 7)) // For U+0085 (NEL)
 65694  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE2 & 7)) // For U+2028, U+2029
 65695  	goto __191
 65696  __190:
 65697  	/* For the 8-bit library not in UTF-8 mode, set the bit for NEL. */
 65698  
 65699  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 16)) |= uint8(uint32(1) << (int32(libc.Uint8FromInt32(133)) & 7))
 65700  __191:
 65701  	;
 65702  
 65703  	try_next = DFALSE
 65704  	goto __8
 65705  
 65706  	// Single character types set the bits and stop. Note that if PCRE2_UCP
 65707  	//       is set, we do not see these opcodes because \d etc are converted to
 65708  	//       properties. Therefore, these apply in the case when only characters less
 65709  	//       than 256 are recognized to match the types.
 65710  
 65711  __143:
 65712  	set_nottype_bits(tls, re, Dcbit_digit, uint32(table_limit))
 65713  	try_next = DFALSE
 65714  	goto __8
 65715  
 65716  __144:
 65717  	set_type_bits(tls, re, Dcbit_digit, uint32(table_limit))
 65718  	try_next = DFALSE
 65719  	goto __8
 65720  
 65721  __145:
 65722  	set_nottype_bits(tls, re, Dcbit_space, uint32(table_limit))
 65723  	try_next = DFALSE
 65724  	goto __8
 65725  
 65726  __146:
 65727  	set_type_bits(tls, re, Dcbit_space, uint32(table_limit))
 65728  	try_next = DFALSE
 65729  	goto __8
 65730  
 65731  __147:
 65732  	set_nottype_bits(tls, re, Dcbit_word, uint32(table_limit))
 65733  	try_next = DFALSE
 65734  	goto __8
 65735  
 65736  __148:
 65737  	set_type_bits(tls, re, Dcbit_word, uint32(table_limit))
 65738  	try_next = DFALSE
 65739  	goto __8
 65740  
 65741  	// One or more character type fudges the pointer and restarts, knowing
 65742  	//       it will hit a single character type and stop there.
 65743  
 65744  __149:
 65745  __150:
 65746  __151:
 65747  	tcode++
 65748  	goto __8
 65749  
 65750  __152:
 65751  	tcode += TPCRE2_SPTR8(1 + DIMM2_SIZE)
 65752  	goto __8
 65753  
 65754  	// Zero or more repeats of character types set the bits and then
 65755  	//       try again.
 65756  
 65757  __153:
 65758  __154:
 65759  __155:
 65760  	tcode += TPCRE2_SPTR8(DIMM2_SIZE) // Fall through
 65761  
 65762  __156:
 65763  __157:
 65764  __158:
 65765  __159:
 65766  __160:
 65767  __161:
 65768  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1))) {
 65769  	default:
 65770  		goto __193
 65771  	case OP_ANY:
 65772  		goto __194
 65773  	case OP_ALLANY:
 65774  		goto __195
 65775  
 65776  	case OP_HSPACE:
 65777  		goto __196
 65778  
 65779  	case OP_ANYNL:
 65780  		goto __197
 65781  	case OP_VSPACE:
 65782  		goto __198
 65783  
 65784  	case OP_NOT_DIGIT:
 65785  		goto __199
 65786  
 65787  	case OP_DIGIT:
 65788  		goto __200
 65789  
 65790  	case OP_NOT_WHITESPACE:
 65791  		goto __201
 65792  
 65793  	case OP_WHITESPACE:
 65794  		goto __202
 65795  
 65796  	case OP_NOT_WORDCHAR:
 65797  		goto __203
 65798  
 65799  	case OP_WORDCHAR:
 65800  		goto __204
 65801  	}
 65802  	goto __192
 65803  
 65804  __193:
 65805  __194:
 65806  __195:
 65807  	return SSB_FAIL
 65808  
 65809  __196:
 65810  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\011' & 7))
 65811  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 4)) |= uint8(uint32(1) << ('\040' & 7))
 65812  
 65813  	// For the 16-bit and 32-bit libraries (which can never be EBCDIC), set
 65814  	//         the bits for 0xA0 and for code units >= 255, independently of UTF.
 65815  
 65816  	// For the 8-bit library in UTF-8 mode, set the bits for the first code
 65817  	//         units of horizontal space characters.
 65818  
 65819  	if !(utf != 0) {
 65820  		goto __205
 65821  	}
 65822  
 65823  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 24)) |= uint8(uint32(1) << (0xC2 & 7)) // For U+00A0
 65824  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE1 & 7)) // For U+1680, U+180E
 65825  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE2 & 7)) // For U+2000 - U+200A, U+202F, U+205F
 65826  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE3 & 7)) // For U+3000
 65827  	goto __206
 65828  __205:
 65829  	/* For the 8-bit library not in UTF-8 mode, set the bit for 0xA0, unless
 65830  	   the code is EBCDIC. */
 65831  
 65832  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 20)) |= uint8(uint32(1) << (0xA0 & 7))
 65833  __206:
 65834  	;
 65835  	goto __192
 65836  
 65837  __197:
 65838  __198:
 65839  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\012' & 7))
 65840  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\013' & 7))
 65841  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\014' & 7))
 65842  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 1)) |= uint8(uint32(1) << ('\015' & 7))
 65843  
 65844  	// For the 16-bit and 32-bit libraries (which can never be EBCDIC), set
 65845  	//         the bits for NEL and for code units >= 255, independently of UTF.
 65846  
 65847  	// For the 8-bit library in UTF-8 mode, set the bits for the first code
 65848  	//         units of vertical space characters.
 65849  
 65850  	if !(utf != 0) {
 65851  		goto __207
 65852  	}
 65853  
 65854  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 24)) |= uint8(uint32(1) << (0xC2 & 7)) // For U+0085 (NEL)
 65855  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 28)) |= uint8(uint32(1) << (0xE2 & 7)) // For U+2028, U+2029
 65856  	goto __208
 65857  __207:
 65858  	/* For the 8-bit library not in UTF-8 mode, set the bit for NEL. */
 65859  
 65860  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 16)) |= uint8(uint32(1) << (int32(libc.Uint8FromInt32(133)) & 7))
 65861  __208:
 65862  	;
 65863  	goto __192
 65864  
 65865  __199:
 65866  	set_nottype_bits(tls, re, Dcbit_digit, uint32(table_limit))
 65867  	goto __192
 65868  
 65869  __200:
 65870  	set_type_bits(tls, re, Dcbit_digit, uint32(table_limit))
 65871  	goto __192
 65872  
 65873  __201:
 65874  	set_nottype_bits(tls, re, Dcbit_space, uint32(table_limit))
 65875  	goto __192
 65876  
 65877  __202:
 65878  	set_type_bits(tls, re, Dcbit_space, uint32(table_limit))
 65879  	goto __192
 65880  
 65881  __203:
 65882  	set_nottype_bits(tls, re, Dcbit_word, uint32(table_limit))
 65883  	goto __192
 65884  
 65885  __204:
 65886  	set_type_bits(tls, re, Dcbit_word, uint32(table_limit))
 65887  	goto __192
 65888  __192:
 65889  	;
 65890  
 65891  	tcode += uintptr(2)
 65892  	goto __8
 65893  
 65894  	// Extended class: if there are any property checks, or if this is a
 65895  	//       negative XCLASS without a map, give up. If there are no property checks,
 65896  	//       there must be wide characters on the XCLASS list, because otherwise an
 65897  	//       XCLASS would not have been created. This means that code points >= 255
 65898  	//       are potential starters. In the UTF-8 case we can scan them and set bits
 65899  	//       for the relevant leading bytes.
 65900  
 65901  __162:
 65902  	xclassflags = *(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 3))
 65903  	if !(int32(xclassflags)&DXCL_HASPROP != 0 || int32(xclassflags)&(DXCL_MAP|DXCL_NOT) == DXCL_NOT) {
 65904  		goto __209
 65905  	}
 65906  	return SSB_FAIL
 65907  __209:
 65908  	;
 65909  
 65910  	// We have a positive XCLASS or a negative one without a map. Set up the
 65911  	//       map pointer if there is one, and fall through.
 65912  
 65913  	if int32(xclassflags)&DXCL_MAP == 0 {
 65914  		classmap = uintptr(0)
 65915  	} else {
 65916  		classmap = tcode + uintptr(1) + uintptr(DLINK_SIZE) + uintptr(1)
 65917  	}
 65918  
 65919  	// In UTF-8 mode, scan the character list and set bits for leading bytes,
 65920  	//       then jump to handle the map.
 65921  
 65922  	if !(utf != 0 && int32(xclassflags)&DXCL_NOT == 0) {
 65923  		goto __210
 65924  	}
 65925  
 65926  	p1 = tcode + uintptr(1) + uintptr(DLINK_SIZE) + uintptr(1) + uintptr(func() int32 {
 65927  		if classmap == uintptr(0) {
 65928  			return 0
 65929  		}
 65930  		return 32
 65931  	}())
 65932  	tcode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))))
 65933  
 65934  __211:
 65935  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p1, 1)))) {
 65936  	case DXCL_SINGLE:
 65937  		goto __215
 65938  
 65939  	case DXCL_RANGE:
 65940  		goto __216
 65941  
 65942  	case DXCL_END:
 65943  		goto __217
 65944  
 65945  	default:
 65946  		goto __218
 65947  	}
 65948  	goto __214
 65949  
 65950  __215:
 65951  	b = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p1, 1)))
 65952  __219:
 65953  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p1)))&0xc0 == 0x80) {
 65954  		goto __220
 65955  	}
 65956  	p1++
 65957  	goto __219
 65958  __220:
 65959  	;
 65960  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(int32(b)/8))) |= Tuint8_t(uint32(1) << (int32(b) & 7))
 65961  	goto __214
 65962  
 65963  __216:
 65964  	b = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p1, 1)))
 65965  __221:
 65966  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p1)))&0xc0 == 0x80) {
 65967  		goto __222
 65968  	}
 65969  	p1++
 65970  	goto __221
 65971  __222:
 65972  	;
 65973  	e = *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&p1, 1)))
 65974  __223:
 65975  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p1)))&0xc0 == 0x80) {
 65976  		goto __224
 65977  	}
 65978  	p1++
 65979  	goto __223
 65980  __224:
 65981  	;
 65982  __225:
 65983  	if !(int32(b) <= int32(e)) {
 65984  		goto __227
 65985  	}
 65986  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(int32(b)/8))) |= Tuint8_t(uint32(1) << (int32(b) & 7))
 65987  	goto __226
 65988  __226:
 65989  	b++
 65990  	goto __225
 65991  	goto __227
 65992  __227:
 65993  	;
 65994  	goto __214
 65995  
 65996  __217:
 65997  	goto HANDLE_CLASSMAP
 65998  
 65999  __218:
 66000  	return SSB_UNKNOWN // Internal error, should not occur
 66001  __214:
 66002  	;
 66003  	goto __212
 66004  __212:
 66005  	goto __211
 66006  	goto __213
 66007  __213:
 66008  	;
 66009  __210:
 66010  	;
 66011  
 66012  	// It seems that the fall through comment must be outside the #ifdef if
 66013  	//       it is to avoid the gcc compiler warning.
 66014  
 66015  	// Fall through
 66016  
 66017  	// Enter here for a negative non-XCLASS. In the 8-bit library, if we are
 66018  	//       in UTF mode, any byte with a value >= 0xc4 is a potentially valid starter
 66019  	//       because it starts a character with a value > 255. In 8-bit non-UTF mode,
 66020  	//       there is no difference between CLASS and NCLASS. In all other wide
 66021  	//       character modes, set the 0xFF bit to indicate code units >= 255.
 66022  
 66023  __163:
 66024  	if !(utf != 0) {
 66025  		goto __228
 66026  	}
 66027  
 66028  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + 24)) |= Tuint8_t(0xf0)                                                                  // Bits for 0xc4 - 0xc8
 66029  	libc.X__builtin___memset_chk(tls, re+40+uintptr(25), 0xff, uint64(7), libc.X__builtin_object_size(tls, re+40+uintptr(25), 0)) // Bits for 0xc9 - 0xff
 66030  __228:
 66031  	;
 66032  	// Fall through
 66033  
 66034  	// Enter here for a positive non-XCLASS. If we have fallen through from
 66035  	//       an XCLASS, classmap will already be set; just advance the code pointer.
 66036  	//       Otherwise, set up classmap for a a non-XCLASS and advance past it.
 66037  
 66038  __164:
 66039  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode))) == OP_XCLASS) {
 66040  		goto __229
 66041  	}
 66042  	tcode += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))))
 66043  	goto __230
 66044  __229:
 66045  
 66046  	classmap = libc.PreIncUintptr(&tcode, 1)
 66047  	tcode += TPCRE2_SPTR8(uint64(32) / uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 66048  __230:
 66049  	;
 66050  
 66051  	// When wide characters are supported, classmap may be NULL. In UTF-8
 66052  	//       (sic) mode, the bits in a class bit map correspond to character values,
 66053  	//       not to byte values. However, the bit map we are constructing is for byte
 66054  	//       values. So we have to do a conversion for characters whose code point is
 66055  	//       greater than 127. In fact, there are only two possible starting bytes for
 66056  	//       characters in the range 128 - 255.
 66057  
 66058  HANDLE_CLASSMAP:
 66059  	if !(classmap != uintptr(0)) {
 66060  		goto __231
 66061  	}
 66062  
 66063  	if !(utf != 0) {
 66064  		goto __232
 66065  	}
 66066  
 66067  	c = Tuint32_t(0)
 66068  __234:
 66069  	if !(c < Tuint32_t(16)) {
 66070  		goto __236
 66071  	}
 66072  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer(classmap + uintptr(c)))))
 66073  	goto __235
 66074  __235:
 66075  	c++
 66076  	goto __234
 66077  	goto __236
 66078  __236:
 66079  	;
 66080  	c = Tuint32_t(128)
 66081  __237:
 66082  	if !(c < Tuint32_t(256)) {
 66083  		goto __239
 66084  	}
 66085  
 66086  	if !(uint32(*(*Tuint8_t)(unsafe.Pointer(classmap + uintptr(c/Tuint32_t(8)))))&(uint32(1)<<(c&Tuint32_t(7))) != uint32(0)) {
 66087  		goto __240
 66088  	}
 66089  
 66090  	d = int32(c>>6 | Tuint32_t(0xc0))                                                      // Set bit for this starter
 66091  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(d/8))) |= Tuint8_t(uint32(1) << (d & 7)) // and then skip on to the
 66092  	c = c&Tuint32_t(0xc0) + Tuint32_t(0x40) - Tuint32_t(1)                                 // next relevant character.
 66093  __240:
 66094  	;
 66095  	goto __238
 66096  __238:
 66097  	c++
 66098  	goto __237
 66099  	goto __239
 66100  __239:
 66101  	;
 66102  	goto __233
 66103  __232:
 66104  	/* In all modes except UTF-8, the two bit maps are compatible. */
 66105  
 66106  	c = Tuint32_t(0)
 66107  __241:
 66108  	if !(c < Tuint32_t(32)) {
 66109  		goto __243
 66110  	}
 66111  	*(*Tuint8_t)(unsafe.Pointer(re + 40 + uintptr(c))) |= Tuint8_t(int32(*(*Tuint8_t)(unsafe.Pointer(classmap + uintptr(c)))))
 66112  	goto __242
 66113  __242:
 66114  	c++
 66115  	goto __241
 66116  	goto __243
 66117  __243:
 66118  	;
 66119  __233:
 66120  	;
 66121  __231:
 66122  	;
 66123  
 66124  	// Act on what follows the class. For a zero minimum repeat, continue;
 66125  	//       otherwise stop processing.
 66126  
 66127  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode))) {
 66128  	case OP_CRSTAR:
 66129  		goto __245
 66130  	case OP_CRMINSTAR:
 66131  		goto __246
 66132  	case OP_CRQUERY:
 66133  		goto __247
 66134  	case OP_CRMINQUERY:
 66135  		goto __248
 66136  	case OP_CRPOSSTAR:
 66137  		goto __249
 66138  	case OP_CRPOSQUERY:
 66139  		goto __250
 66140  
 66141  	case OP_CRRANGE:
 66142  		goto __251
 66143  	case OP_CRMINRANGE:
 66144  		goto __252
 66145  	case OP_CRPOSRANGE:
 66146  		goto __253
 66147  
 66148  	default:
 66149  		goto __254
 66150  	}
 66151  	goto __244
 66152  
 66153  __245:
 66154  __246:
 66155  __247:
 66156  __248:
 66157  __249:
 66158  __250:
 66159  	tcode++
 66160  	goto __244
 66161  
 66162  __251:
 66163  __252:
 66164  __253:
 66165  	if !(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 1)))<<8|int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(tcode + 2)))) == uint32(0)) {
 66166  		goto __255
 66167  	}
 66168  	tcode += TPCRE2_SPTR8(1 + 2*DIMM2_SIZE)
 66169  	goto __256
 66170  __255:
 66171  	try_next = DFALSE
 66172  __256:
 66173  	;
 66174  	goto __244
 66175  
 66176  __254:
 66177  	try_next = DFALSE
 66178  	goto __244
 66179  __244:
 66180  	;
 66181  	goto __8 // End of class handling case
 66182  __8:
 66183  	; // End of switch for opcodes
 66184  	goto __6
 66185  __7:
 66186  	; // End of try_next loop
 66187  
 66188  	code += TPCRE2_SPTR8(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 1)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code + 2))))) // Advance to next branch
 66189  	goto __3
 66190  __3:
 66191  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(code))) == OP_ALT {
 66192  		goto __2
 66193  	}
 66194  	goto __4
 66195  __4:
 66196  	;
 66197  
 66198  	return yield
 66199  }
 66200  
 66201  // ************************************************
 66202  //
 66203  //          Study a compiled expression           *
 66204  //
 66205  
 66206  // This function is handed a compiled expression that it must study to produce
 66207  // information that will speed up the matching.
 66208  //
 66209  // Argument:
 66210  //   re       points to the compiled expression
 66211  //
 66212  // Returns:   0 normally; non-zero should never normally occur
 66213  //            1 unknown opcode in set_start_bits
 66214  //            2 missing capturing bracket
 66215  //            3 unknown opcode in find_minlength
 66216  
 66217  func X_pcre2_study_8(tls *libc.TLS, re uintptr) int32 { /* pcre2_study.c:1672:1: */
 66218  	bp := tls.Alloc(524)
 66219  	defer tls.Free(524)
 66220  
 66221  	// var count int32 at bp+520, 4
 66222  
 66223  	var code uintptr
 66224  	var utf TBOOL
 66225  	var ucp TBOOL
 66226  	var d int32
 66227  	var c int32
 66228  	var y Tuint8_t
 66229  	var x Tuint8_t
 66230  	var i int32
 66231  	var a int32
 66232  	var b int32
 66233  	var p uintptr
 66234  	var flags Tuint32_t
 66235  	// var depth int32 at bp, 4
 66236  
 66237  	var rc int32
 66238  	var min int32
 66239  	// var backref_cache [129]int32 at bp+4, 516
 66240  	*(*int32)(unsafe.Pointer(bp + 520 /* count */)) = 0
 66241  	utf = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UTF != Tuint32_t(0))
 66242  	ucp = libc.Bool32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Foverall_options&DPCRE2_UCP != Tuint32_t(0))
 66243  
 66244  	// Find start of compiled code
 66245  
 66246  	code = re + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{}))) + uintptr(int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_entry_size)*int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fname_count))
 66247  
 66248  	// For a pattern that has a first code unit, or a multiline pattern that
 66249  	// matches only at "line start", there is no point in seeking a list of starting
 66250  	// code units.
 66251  
 66252  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_FIRSTSET|DPCRE2_STARTLINE) == Tuint32_t(0)) {
 66253  		goto __1
 66254  	}
 66255  	*(*int32)(unsafe.Pointer(bp /* depth */)) = 0
 66256  	rc = set_start_bits(tls, re, code, utf, ucp, bp)
 66257  	if !(rc == SSB_UNKNOWN) {
 66258  		goto __2
 66259  	}
 66260  	return 1
 66261  __2:
 66262  	;
 66263  
 66264  	// If a list of starting code units was set up, scan the list to see if only
 66265  	//   one or two were listed. Having only one listed is rare because usually a
 66266  	//   single starting code unit will have been recognized and PCRE2_FIRSTSET set.
 66267  	//   If two are listed, see if they are caseless versions of the same character;
 66268  	//   if so we can replace the list with a caseless first code unit. This gives
 66269  	//   better performance and is plausibly worth doing for patterns such as [Ww]ord
 66270  	//   or (word|WORD).
 66271  
 66272  	if !(rc == SSB_DONE) {
 66273  		goto __3
 66274  	}
 66275  	a = -1
 66276  	b = -1
 66277  	p = re + 40 /* &.start_bitmap */
 66278  	flags = Tuint32_t(DPCRE2_FIRSTMAPSET)
 66279  
 66280  	i = 0
 66281  __4:
 66282  	if !(i < 256) {
 66283  		goto __6
 66284  	}
 66285  
 66286  	x = *(*Tuint8_t)(unsafe.Pointer(p))
 66287  	if !(int32(x) != 0) {
 66288  		goto __7
 66289  	}
 66290  
 66291  	y = Tuint8_t(int32(x) & (^int32(x) + 1)) // Least significant bit
 66292  	if !(int32(y) != int32(x)) {
 66293  		goto __8
 66294  	}
 66295  	goto DONE
 66296  __8:
 66297  	; // More than one bit set
 66298  
 66299  	// In the 16-bit and 32-bit libraries, the bit for 0xff means "0xff and
 66300  	//         all wide characters", so we cannot use it here.
 66301  
 66302  	// Compute the character value
 66303  
 66304  	c = i
 66305  	switch int32(x) {
 66306  	case 1:
 66307  		goto __10
 66308  	case 2:
 66309  		goto __11
 66310  	case 4:
 66311  		goto __12
 66312  	case 8:
 66313  		goto __13
 66314  	case 16:
 66315  		goto __14
 66316  	case 32:
 66317  		goto __15
 66318  	case 64:
 66319  		goto __16
 66320  	case 128:
 66321  		goto __17
 66322  	}
 66323  	goto __9
 66324  
 66325  __10:
 66326  	goto __9
 66327  __11:
 66328  	c = c + 1
 66329  	goto __9
 66330  __12:
 66331  	c = c + 2
 66332  	goto __9
 66333  __13:
 66334  	c = c + 3
 66335  	goto __9
 66336  __14:
 66337  	c = c + 4
 66338  	goto __9
 66339  __15:
 66340  	c = c + 5
 66341  	goto __9
 66342  __16:
 66343  	c = c + 6
 66344  	goto __9
 66345  __17:
 66346  	c = c + 7
 66347  	goto __9
 66348  __9:
 66349  	;
 66350  
 66351  	// c contains the code unit value, in the range 0-255. In 8-bit UTF
 66352  	//         mode, only values < 128 can be used. In all the other cases, c is a
 66353  	//         character value.
 66354  
 66355  	if !(utf != 0 && c > 127) {
 66356  		goto __18
 66357  	}
 66358  	goto DONE
 66359  __18:
 66360  	;
 66361  	if !(a < 0) {
 66362  		goto __19
 66363  	}
 66364  	a = c
 66365  	goto __20
 66366  __19:
 66367  	if !(b < 0) {
 66368  		goto __21
 66369  	} /* Second one found */
 66370  
 66371  	d = int32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftables + uintptr(Dfcc_offset) + uintptr(uint32(c)))))
 66372  
 66373  	if !(utf != 0 || ucp != 0) {
 66374  		goto __23
 66375  	}
 66376  
 66377  	if !(int32((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[c/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+c%DUCD_BLOCK_SIZE])*12)).Fcaseset) != 0) {
 66378  		goto __24
 66379  	}
 66380  	goto DONE
 66381  __24:
 66382  	; // Multiple case set
 66383  	if !(c > 127) {
 66384  		goto __25
 66385  	}
 66386  	d = int32(Tuint32_t(c + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[c/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+c%DUCD_BLOCK_SIZE])*12)).Fother_case))
 66387  __25:
 66388  	;
 66389  __23:
 66390  	;
 66391  
 66392  	if !(d != a) {
 66393  		goto __26
 66394  	}
 66395  	goto DONE
 66396  __26:
 66397  	;     // Not the other case of a
 66398  	b = c // Save second in b
 66399  	goto __22
 66400  __21:
 66401  	goto DONE
 66402  __22:
 66403  	;
 66404  __20:
 66405  	; // More than two characters found
 66406  __7:
 66407  	;
 66408  	goto __5
 66409  __5:
 66410  	p++
 66411  	i = i + 8
 66412  	goto __4
 66413  	goto __6
 66414  __6:
 66415  	;
 66416  
 66417  	// Replace the start code unit bits with a first code unit, but only if it
 66418  	//     is not the same as a required later code unit. This is because a search for
 66419  	//     a required code unit starts after an explicit first code unit, but at a
 66420  	//     code unit found from the bitmap. Patterns such as /a*a/ don't work
 66421  	//     if both the start unit and required unit are the same.
 66422  
 66423  	if !(a >= 0 && ((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_LASTSET) == Tuint32_t(0) || (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flast_codeunit != Tuint32_t(a) && (b < 0 || (*Tpcre2_real_code_8)(unsafe.Pointer(re)).Flast_codeunit != Tuint32_t(b)))) {
 66424  		goto __27
 66425  	}
 66426  
 66427  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ffirst_codeunit = Tuint32_t(a)
 66428  	flags = Tuint32_t(DPCRE2_FIRSTSET)
 66429  	if !(b >= 0) {
 66430  		goto __28
 66431  	}
 66432  	flags = flags | Tuint32_t(DPCRE2_FIRSTCASELESS)
 66433  __28:
 66434  	;
 66435  __27:
 66436  	;
 66437  
 66438  DONE:
 66439  	*(*Tuint32_t)(unsafe.Pointer(re + 96)) |= flags
 66440  __3:
 66441  	;
 66442  __1:
 66443  	;
 66444  
 66445  	// Find the minimum length of subject string. If the pattern can match an empty
 66446  	// string, the minimum length is already known. If the pattern contains (*ACCEPT)
 66447  	// all bets are off, and we don't even try to find a minimum length. If there are
 66448  	// more back references than the size of the vector we are going to cache them in,
 66449  	// do nothing. A pattern that complicated will probably take a long time to
 66450  	// analyze and may in any case turn out to be too complicated. Note that back
 66451  	// reference minima are held as 16-bit numbers.
 66452  
 66453  	if !((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fflags&Tuint32_t(DPCRE2_MATCH_EMPTY|DPCRE2_HASACCEPT) == Tuint32_t(0) && int32((*Tpcre2_real_code_8)(unsafe.Pointer(re)).Ftop_backref) <= DMAX_CACHE_BACKREF) {
 66454  		goto __29
 66455  	}
 66456  
 66457  	*(*int32)(unsafe.Pointer(bp + 4)) = 0 // Highest one that is set
 66458  	min = find_minlength(tls, re, code, code, utf, uintptr(0), bp+520, bp+4)
 66459  	switch min {
 66460  	case -1:
 66461  		goto __31 // Leave minlength unchanged (will be zero)
 66462  
 66463  	case -2:
 66464  		goto __32 // missing capturing bracket
 66465  
 66466  	case -3:
 66467  		goto __33 // unrecognized opcode
 66468  
 66469  	default:
 66470  		goto __34
 66471  	}
 66472  	goto __30
 66473  
 66474  __31: // \C in UTF mode or over-complex regex
 66475  	goto __30 // Leave minlength unchanged (will be zero)
 66476  
 66477  __32:
 66478  	return 2 // missing capturing bracket
 66479  
 66480  __33:
 66481  	return 3 // unrecognized opcode
 66482  
 66483  __34:
 66484  	(*Tpcre2_real_code_8)(unsafe.Pointer(re)).Fminlength = func() uint16 {
 66485  		if uint32(min) > 65535 {
 66486  			return uint16(65535)
 66487  		}
 66488  		return uint16(min)
 66489  	}()
 66490  	goto __30
 66491  __30:
 66492  	;
 66493  __29:
 66494  	;
 66495  
 66496  	return 0
 66497  }
 66498  
 66499  // End of pcre2_study.c
 66500  
 66501  // This function is needed only when memmove() is not available.
 66502  
 66503  // End of pcre2_internal.h
 66504  
 66505  // ************************************************
 66506  //
 66507  //           Find end of substitute text          *
 66508  //
 66509  
 66510  // In extended mode, we recognize ${name:+set text:unset text} and similar
 66511  // constructions. This requires the identification of unescaped : and }
 66512  // characters. This function scans for such. It must deal with nested ${
 66513  // constructions. The pointer to the text is updated, either to the required end
 66514  // character, or to where an error was detected.
 66515  //
 66516  // Arguments:
 66517  //   code      points to the compiled expression (for options)
 66518  //   ptrptr    points to the pointer to the start of the text (updated)
 66519  //   ptrend    end of the whole string
 66520  //   last      TRUE if the last expected string (only } recognized)
 66521  //
 66522  // Returns:    0 on success
 66523  //             negative error code on failure
 66524  
 66525  func find_text_end(tls *libc.TLS, code uintptr, ptrptr uintptr, ptrend TPCRE2_SPTR8, last TBOOL) int32 { /* pcre2_substitute.c:79:1: */
 66526  	bp := tls.Alloc(16)
 66527  	defer tls.Free(16)
 66528  
 66529  	var rc int32
 66530  	var nestlevel Tuint32_t
 66531  	var literal TBOOL
 66532  	// var ptr TPCRE2_SPTR8 at bp, 8
 66533  
 66534  	var erc int32
 66535  	// var errorcode int32 at bp+12, 4
 66536  
 66537  	// var ch Tuint32_t at bp+8, 4
 66538  	rc = 0
 66539  	nestlevel = Tuint32_t(0)
 66540  	literal = DFALSE
 66541  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr))
 66542  
 66543  __1:
 66544  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) < ptrend) {
 66545  		goto __3
 66546  	}
 66547  
 66548  	if !(literal != 0) {
 66549  		goto __4
 66550  	}
 66551  
 66552  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))) == '\134' && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) < ptrend-uintptr(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) + 1))) == '\105') {
 66553  		goto __6
 66554  	}
 66555  
 66556  	literal = DFALSE
 66557  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */)) += uintptr(1)
 66558  __6:
 66559  	;
 66560  	goto __5
 66561  __4:
 66562  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))) == '\175') {
 66563  		goto __7
 66564  	}
 66565  
 66566  	if !(nestlevel == Tuint32_t(0)) {
 66567  		goto __9
 66568  	}
 66569  	goto EXIT
 66570  __9:
 66571  	;
 66572  	nestlevel--
 66573  	goto __8
 66574  __7:
 66575  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))) == '\072' && !(last != 0) && nestlevel == Tuint32_t(0)) {
 66576  		goto __10
 66577  	}
 66578  	goto EXIT
 66579  	goto __11
 66580  __10:
 66581  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))) == '\044') {
 66582  		goto __12
 66583  	}
 66584  
 66585  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) < ptrend-uintptr(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) + 1))) == '\173') {
 66586  		goto __14
 66587  	}
 66588  
 66589  	nestlevel++
 66590  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */)) += uintptr(1)
 66591  __14:
 66592  	;
 66593  	goto __13
 66594  __12:
 66595  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp))))) == '\134') {
 66596  		goto __15
 66597  	}
 66598  
 66599  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp)) < ptrend-uintptr(1)) {
 66600  		goto __16
 66601  	}
 66602  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */)) + 1))) {
 66603  	case '\114':
 66604  		goto __18
 66605  	case '\154':
 66606  		goto __19
 66607  	case '\125':
 66608  		goto __20
 66609  	case '\165':
 66610  		goto __21
 66611  	}
 66612  	goto __17
 66613  
 66614  __18:
 66615  __19:
 66616  __20:
 66617  __21:
 66618  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */)) += uintptr(1)
 66619  	goto __2
 66620  __17:
 66621  	;
 66622  __16:
 66623  	;
 66624  
 66625  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */)) += uintptr(1) // Must point after \
 66626  	erc = X_pcre2_check_escape_8(tls, bp, ptrend, bp+8, bp+12,
 66627  		(*Tpcre2_code_8)(unsafe.Pointer(code)).Foverall_options, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fextra_options, DFALSE, uintptr(0))
 66628  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */)) -= uintptr(1) // Back to last code unit of escape
 66629  	if !(*(*int32)(unsafe.Pointer(bp + 12)) != 0) {
 66630  		goto __22
 66631  	}
 66632  
 66633  	rc = *(*int32)(unsafe.Pointer(bp + 12 /* errorcode */))
 66634  	goto EXIT
 66635  __22:
 66636  	;
 66637  
 66638  	switch erc {
 66639  	case 0:
 66640  		goto __24 // Data character
 66641  	case ESC_E:
 66642  		goto __25
 66643  
 66644  	case ESC_Q:
 66645  		goto __26
 66646  
 66647  	default:
 66648  		goto __27
 66649  	}
 66650  	goto __23
 66651  
 66652  __24: // Data character
 66653  __25: // Isolated \E is ignored
 66654  	goto __23
 66655  
 66656  __26:
 66657  	literal = DTRUE
 66658  	goto __23
 66659  
 66660  __27:
 66661  	rc = -57
 66662  	goto EXIT
 66663  __23:
 66664  	;
 66665  __15:
 66666  	;
 66667  __13:
 66668  	;
 66669  __11:
 66670  	;
 66671  __8:
 66672  	;
 66673  __5:
 66674  	;
 66675  	goto __2
 66676  __2:
 66677  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */))++
 66678  	goto __1
 66679  	goto __3
 66680  __3:
 66681  	;
 66682  
 66683  	rc = -58 // Terminator not found
 66684  
 66685  EXIT:
 66686  	*(*TPCRE2_SPTR8)(unsafe.Pointer(ptrptr)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* ptr */))
 66687  	return rc
 66688  }
 66689  
 66690  // ************************************************
 66691  //
 66692  //              Match and substitute              *
 66693  //
 66694  
 66695  // This function applies a compiled re to a subject string and creates a new
 66696  // string with substitutions. The first 7 arguments are the same as for
 66697  // pcre2_match(). Either string length may be PCRE2_ZERO_TERMINATED.
 66698  //
 66699  // Arguments:
 66700  //   code            points to the compiled expression
 66701  //   subject         points to the subject string
 66702  //   length          length of subject string (may contain binary zeros)
 66703  //   start_offset    where to start in the subject string
 66704  //   options         option bits
 66705  //   match_data      points to a match_data block, or is NULL
 66706  //   context         points a PCRE2 context
 66707  //   replacement     points to the replacement string
 66708  //   rlength         length of replacement string
 66709  //   buffer          where to put the substituted string
 66710  //   blength         points to length of buffer; updated to length of string
 66711  //
 66712  // Returns:          >= 0 number of substitutions made
 66713  //                   < 0 an error code
 66714  //                   PCRE2_ERROR_BADREPLACEMENT means invalid use of $
 66715  
 66716  // This macro checks for space in the buffer before copying into it. On
 66717  // overflow, either give an error immediately, or keep on, accumulating the
 66718  // length.
 66719  
 66720  // Here's the function
 66721  
 66722  func Xpcre2_substitute_8(tls *libc.TLS, code uintptr, subject TPCRE2_SPTR8, length Tsize_t, start_offset Tsize_t, options Tuint32_t, match_data uintptr, mcontext uintptr, replacement TPCRE2_SPTR8, rlength Tsize_t, buffer uintptr, blength uintptr) int32 { /* pcre2_substitute.c:220:1: */
 66723  	bp := tls.Alloc(328)
 66724  	defer tls.Free(328)
 66725  
 66726  	var rc int32
 66727  	var subs int32
 66728  	var forcecase int32
 66729  	var forcecasereset int32
 66730  	var ovector_count Tuint32_t
 66731  	var goptions Tuint32_t
 66732  	var suboptions Tuint32_t
 66733  	var internal_match_data uintptr
 66734  	var escaped_literal TBOOL
 66735  	var overflowed TBOOL
 66736  	var use_existing_match TBOOL
 66737  	var replacement_only TBOOL
 66738  	var utf TBOOL
 66739  	var ucp TBOOL
 66740  	// var temp [6]TPCRE2_UCHAR8 at bp+312, 6
 66741  
 66742  	// var ptr TPCRE2_SPTR8 at bp+280, 8
 66743  
 66744  	var repend TPCRE2_SPTR8
 66745  	var extra_needed Tsize_t
 66746  	var buff_offset Tsize_t
 66747  	var buff_length Tsize_t
 66748  	var lengthleft Tsize_t
 66749  	var fraglength Tsize_t
 66750  	var ovector uintptr
 66751  	// var ovecsave [3]Tsize_t at bp, 24
 66752  
 66753  	// var scb Tpcre2_substitute_callout_block_8 at bp+24, 56
 66754  
 66755  	var gcontext uintptr
 66756  	var gcontext1 uintptr
 66757  	var pairs int32
 66758  	var save_start Tsize_t
 66759  	var ctypes uintptr
 66760  	var mark_start TPCRE2_SPTR8
 66761  	var mark TPCRE2_SPTR8
 66762  	var ng Tuint32_t
 66763  	// var first TPCRE2_SPTR8 at bp+288, 8
 66764  
 66765  	// var last TPCRE2_SPTR8 at bp+296, 8
 66766  
 66767  	var entry TPCRE2_SPTR8
 66768  	var type1 Tuint32_t
 66769  	var subptr TPCRE2_SPTR8
 66770  	var subptrend TPCRE2_SPTR8
 66771  	var group int32
 66772  	var n int32
 66773  	var special Tuint32_t
 66774  	var inparens TBOOL
 66775  	var star TBOOL
 66776  	// var sublength Tsize_t at bp+304, 8
 66777  
 66778  	var text1_start TPCRE2_SPTR8
 66779  	var text1_end TPCRE2_SPTR8
 66780  	var text2_start TPCRE2_SPTR8
 66781  	var text2_end TPCRE2_SPTR8
 66782  	var next TPCRE2_UCHAR8
 66783  	// var name [33]TPCRE2_UCHAR8 at bp+240, 33
 66784  
 66785  	// var errorcode int32 at bp+324, 4
 66786  
 66787  	var type2 Tuint32_t
 66788  	// var ch Tuint32_t at bp+320, 4
 66789  
 66790  	var chlen uint32
 66791  	var newlength Tsize_t
 66792  	var oldlength Tsize_t
 66793  	// var ptrstack [20]TPCRE2_SPTR8 at bp+80, 160
 66794  
 66795  	var ptrstackptr Tuint32_t
 66796  	forcecase = 0
 66797  	forcecasereset = 0
 66798  	goptions = Tuint32_t(0)
 66799  	internal_match_data = uintptr(0)
 66800  	escaped_literal = DFALSE
 66801  	overflowed = DFALSE
 66802  	utf = libc.Bool32((*Tpcre2_code_8)(unsafe.Pointer(code)).Foverall_options&DPCRE2_UTF != Tuint32_t(0))
 66803  	ucp = libc.Bool32((*Tpcre2_code_8)(unsafe.Pointer(code)).Foverall_options&DPCRE2_UCP != Tuint32_t(0))
 66804  	extra_needed = uint64(0)
 66805  
 66806  	// General initialization
 66807  
 66808  	buff_offset = uint64(0)
 66809  	lengthleft = libc.AssignUint64(&buff_length, *(*Tsize_t)(unsafe.Pointer(blength)))
 66810  	*(*Tsize_t)(unsafe.Pointer(blength)) = libc.CplUint64(uint64(0))
 66811  	*(*Tsize_t)(unsafe.Pointer(bp)) = libc.AssignPtrUint64(bp+1*8, libc.AssignPtrUint64(bp+2*8, libc.CplUint64(uint64(0))))
 66812  
 66813  	// Partial matching is not valid. This must come after setting *blength to
 66814  	// PCRE2_UNSET, so as not to imply an offset in the replacement.
 66815  
 66816  	if !(options&(DPCRE2_PARTIAL_HARD|DPCRE2_PARTIAL_SOFT) != Tuint32_t(0)) {
 66817  		goto __1
 66818  	}
 66819  	return -34
 66820  __1:
 66821  	;
 66822  
 66823  	// Validate length and find the end of the replacement. A NULL replacement of
 66824  	// zero length is interpreted as an empty string.
 66825  
 66826  	if !(replacement == uintptr(0)) {
 66827  		goto __2
 66828  	}
 66829  
 66830  	if !(rlength != uint64(0)) {
 66831  		goto __3
 66832  	}
 66833  	return -51
 66834  __3:
 66835  	;
 66836  	replacement = ts + 797 /* "" */
 66837  __2:
 66838  	;
 66839  
 66840  	if !(rlength == libc.CplUint64(uint64(0))) {
 66841  		goto __4
 66842  	}
 66843  	rlength = X_pcre2_strlen_8(tls, replacement)
 66844  __4:
 66845  	;
 66846  	repend = replacement + uintptr(rlength)
 66847  
 66848  	// Check for using a match that has already happened. Note that the subject
 66849  	// pointer in the match data may be NULL after a no-match.
 66850  
 66851  	use_existing_match = libc.Bool32(options&DPCRE2_SUBSTITUTE_MATCHED != Tuint32_t(0))
 66852  	replacement_only = libc.Bool32(options&DPCRE2_SUBSTITUTE_REPLACEMENT_ONLY != Tuint32_t(0))
 66853  
 66854  	// If starting from an existing match, there must be an externally provided
 66855  	// match data block. We create an internal match_data block in two cases: (a) an
 66856  	// external one is not supplied (and we are not starting from an existing match);
 66857  	// (b) an existing match is to be used for the first substitution. In the latter
 66858  	// case, we copy the existing match into the internal block. This ensures that no
 66859  	// changes are made to the existing match data block.
 66860  
 66861  	if !(match_data == uintptr(0)) {
 66862  		goto __5
 66863  	}
 66864  
 66865  	if !(use_existing_match != 0) {
 66866  		goto __7
 66867  	}
 66868  	return -51
 66869  __7:
 66870  	;
 66871  	if mcontext == uintptr(0) {
 66872  		gcontext = code
 66873  	} else {
 66874  		gcontext = mcontext
 66875  	}
 66876  	match_data = libc.AssignUintptr(&internal_match_data, Xpcre2_match_data_create_from_pattern_8(tls, code, gcontext))
 66877  	if !(internal_match_data == uintptr(0)) {
 66878  		goto __8
 66879  	}
 66880  	return -48
 66881  __8:
 66882  	;
 66883  	goto __6
 66884  __5:
 66885  	if !(use_existing_match != 0) {
 66886  		goto __9
 66887  	}
 66888  
 66889  	if mcontext == uintptr(0) {
 66890  		gcontext1 = code
 66891  	} else {
 66892  		gcontext1 = mcontext
 66893  	}
 66894  	if int32((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftop_bracket)+1 < int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) {
 66895  		pairs = int32((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftop_bracket) + 1
 66896  	} else {
 66897  		pairs = int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount)
 66898  	}
 66899  	internal_match_data = Xpcre2_match_data_create_8(tls, uint32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount),
 66900  		gcontext1)
 66901  	if !(internal_match_data == uintptr(0)) {
 66902  		goto __10
 66903  	}
 66904  	return -48
 66905  __10:
 66906  	;
 66907  	libc.X__builtin___memcpy_chk(tls, internal_match_data, match_data, uint64(uintptr(0)+80)+uint64(2*pairs)*uint64(unsafe.Sizeof(Tsize_t(0))), libc.X__builtin_object_size(tls, internal_match_data, 0))
 66908  	match_data = internal_match_data
 66909  __9:
 66910  	;
 66911  __6:
 66912  	;
 66913  
 66914  	// Remember ovector details
 66915  
 66916  	ovector = Xpcre2_get_ovector_pointer_8(tls, match_data)
 66917  	ovector_count = Xpcre2_get_ovector_count_8(tls, match_data)
 66918  
 66919  	// Fixed things in the callout block
 66920  
 66921  	(*Tpcre2_substitute_callout_block_8)(unsafe.Pointer(bp + 24 /* &scb */)).Fversion = Tuint32_t(0)
 66922  	(*Tpcre2_substitute_callout_block_8)(unsafe.Pointer(bp + 24 /* &scb */)).Finput = subject
 66923  	(*Tpcre2_substitute_callout_block_8)(unsafe.Pointer(bp + 24 /* &scb */)).Foutput = buffer
 66924  	(*Tpcre2_substitute_callout_block_8)(unsafe.Pointer(bp + 24 /* &scb */)).Fovector = ovector
 66925  
 66926  	// A NULL subject of zero length is treated as an empty string.
 66927  
 66928  	if !(subject == uintptr(0)) {
 66929  		goto __11
 66930  	}
 66931  
 66932  	if !(length != uint64(0)) {
 66933  		goto __12
 66934  	}
 66935  	return -51
 66936  __12:
 66937  	;
 66938  	subject = ts + 797 /* "" */
 66939  __11:
 66940  	;
 66941  
 66942  	// Find length of zero-terminated subject
 66943  
 66944  	if !(length == libc.CplUint64(uint64(0))) {
 66945  		goto __13
 66946  	}
 66947  	if subject != 0 {
 66948  		length = X_pcre2_strlen_8(tls, subject)
 66949  	} else {
 66950  		length = uint64(0)
 66951  	}
 66952  __13:
 66953  	;
 66954  
 66955  	// Check UTF replacement string if necessary.
 66956  
 66957  	if !(utf != 0 && options&DPCRE2_NO_UTF_CHECK == Tuint32_t(0)) {
 66958  		goto __14
 66959  	}
 66960  
 66961  	rc = X_pcre2_valid_utf_8(tls, replacement, rlength, match_data+64)
 66962  	if !(rc != 0) {
 66963  		goto __15
 66964  	}
 66965  
 66966  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fleftchar = uint64(0)
 66967  	goto EXIT
 66968  __15:
 66969  	;
 66970  __14:
 66971  	;
 66972  
 66973  	// Save the substitute options and remove them from the match options.
 66974  
 66975  	suboptions = options & (DPCRE2_SUBSTITUTE_EXTENDED | DPCRE2_SUBSTITUTE_GLOBAL | DPCRE2_SUBSTITUTE_LITERAL | DPCRE2_SUBSTITUTE_MATCHED | DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH | DPCRE2_SUBSTITUTE_REPLACEMENT_ONLY | DPCRE2_SUBSTITUTE_UNKNOWN_UNSET | DPCRE2_SUBSTITUTE_UNSET_EMPTY)
 66976  	options = options & libc.CplUint32(DPCRE2_SUBSTITUTE_EXTENDED|DPCRE2_SUBSTITUTE_GLOBAL|DPCRE2_SUBSTITUTE_LITERAL|DPCRE2_SUBSTITUTE_MATCHED|DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH|DPCRE2_SUBSTITUTE_REPLACEMENT_ONLY|DPCRE2_SUBSTITUTE_UNKNOWN_UNSET|DPCRE2_SUBSTITUTE_UNSET_EMPTY)
 66977  
 66978  	// Error if the start match offset is greater than the length of the subject.
 66979  
 66980  	if !(start_offset > length) {
 66981  		goto __16
 66982  	}
 66983  
 66984  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fleftchar = uint64(0)
 66985  	rc = -33
 66986  	goto EXIT
 66987  __16:
 66988  	;
 66989  
 66990  	// Copy up to the start offset, unless only the replacement is required.
 66991  
 66992  	if !!(replacement_only != 0) {
 66993  		goto __17
 66994  	}
 66995  	if !(!(overflowed != 0) && lengthleft < start_offset) {
 66996  		goto __18
 66997  	}
 66998  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 66999  		goto __20
 67000  	}
 67001  	goto NOROOM
 67002  __20:
 67003  	;
 67004  	overflowed = DTRUE
 67005  	extra_needed = start_offset - lengthleft
 67006  	goto __19
 67007  __18:
 67008  	if !(overflowed != 0) {
 67009  		goto __21
 67010  	}
 67011  	extra_needed = extra_needed + start_offset
 67012  	goto __22
 67013  __21:
 67014  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), subject, start_offset*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 67015  	buff_offset = buff_offset + start_offset
 67016  	lengthleft = lengthleft - start_offset
 67017  __22:
 67018  	;
 67019  __19:
 67020  	;
 67021  __17:
 67022  	;
 67023  
 67024  	// Loop for global substituting. If PCRE2_SUBSTITUTE_MATCHED is set, the first
 67025  	// match is taken from the match_data that was passed in.
 67026  
 67027  	subs = 0
 67028  __23:
 67029  	ptrstackptr = Tuint32_t(0)
 67030  
 67031  	if !(use_existing_match != 0) {
 67032  		goto __26
 67033  	}
 67034  
 67035  	rc = (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc
 67036  	use_existing_match = DFALSE
 67037  	goto __27
 67038  __26:
 67039  	rc = Xpcre2_match_8(tls, code, subject, length, start_offset, options|goptions,
 67040  		match_data, mcontext)
 67041  __27:
 67042  	;
 67043  
 67044  	if !(utf != 0) {
 67045  		goto __28
 67046  	}
 67047  	options = options | DPCRE2_NO_UTF_CHECK
 67048  __28:
 67049  	; // Only need to check once
 67050  
 67051  	// Any error other than no match returns the error code. No match when not
 67052  	//   doing the special after-empty-match global rematch, or when at the end of the
 67053  	//   subject, breaks the global loop. Otherwise, advance the starting point by one
 67054  	//   character, copying it to the output, and try again.
 67055  
 67056  	if !(rc < 0) {
 67057  		goto __29
 67058  	}
 67059  
 67060  	if !(rc != -1) {
 67061  		goto __30
 67062  	}
 67063  	goto EXIT
 67064  __30:
 67065  	;
 67066  	if !(goptions == Tuint32_t(0) || start_offset >= length) {
 67067  		goto __31
 67068  	}
 67069  	goto __25
 67070  __31:
 67071  	;
 67072  
 67073  	// Advance by one code point. Then, if CRLF is a valid newline sequence and
 67074  	//     we have advanced into the middle of it, advance one more code point. In
 67075  	//     other words, do not start in the middle of CRLF, even if CR and LF on their
 67076  	//     own are valid newlines.
 67077  
 67078  	save_start = libc.PostIncUint64(&start_offset, 1)
 67079  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subject + uintptr(start_offset-uint64(1))))) == '\015' && int32((*Tpcre2_code_8)(unsafe.Pointer(code)).Fnewline_convention) != DPCRE2_NEWLINE_CR && int32((*Tpcre2_code_8)(unsafe.Pointer(code)).Fnewline_convention) != DPCRE2_NEWLINE_LF && start_offset < length && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subject + uintptr(start_offset)))) == '\012') {
 67080  		goto __32
 67081  	}
 67082  	start_offset++
 67083  	goto __33
 67084  __32:
 67085  	if !((*Tpcre2_code_8)(unsafe.Pointer(code)).Foverall_options&DPCRE2_UTF != Tuint32_t(0)) {
 67086  		goto __34
 67087  	}
 67088  
 67089  __35:
 67090  	if !(start_offset < length && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subject + uintptr(start_offset))))&0xc0 == 0x80) {
 67091  		goto __36
 67092  	}
 67093  	start_offset++
 67094  	goto __35
 67095  __36:
 67096  	;
 67097  __34:
 67098  	;
 67099  __33:
 67100  	;
 67101  
 67102  	// Copy what we have advanced past (unless not required), reset the special
 67103  	//     global options, and continue to the next match.
 67104  
 67105  	fraglength = start_offset - save_start
 67106  	if !!(replacement_only != 0) {
 67107  		goto __37
 67108  	}
 67109  	if !(!(overflowed != 0) && lengthleft < fraglength) {
 67110  		goto __38
 67111  	}
 67112  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 67113  		goto __40
 67114  	}
 67115  	goto NOROOM
 67116  __40:
 67117  	;
 67118  	overflowed = DTRUE
 67119  	extra_needed = fraglength - lengthleft
 67120  	goto __39
 67121  __38:
 67122  	if !(overflowed != 0) {
 67123  		goto __41
 67124  	}
 67125  	extra_needed = extra_needed + fraglength
 67126  	goto __42
 67127  __41:
 67128  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), subject+uintptr(save_start), fraglength*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 67129  	buff_offset = buff_offset + fraglength
 67130  	lengthleft = lengthleft - fraglength
 67131  __42:
 67132  	;
 67133  __39:
 67134  	;
 67135  __37:
 67136  	;
 67137  
 67138  	goptions = Tuint32_t(0)
 67139  	goto __24
 67140  __29:
 67141  	;
 67142  
 67143  	// Handle a successful match. Matches that use \K to end before they start
 67144  	//   or start before the current point in the subject are not supported.
 67145  
 67146  	if !(*(*Tsize_t)(unsafe.Pointer(ovector + 1*8)) < *(*Tsize_t)(unsafe.Pointer(ovector)) || *(*Tsize_t)(unsafe.Pointer(ovector)) < start_offset) {
 67147  		goto __43
 67148  	}
 67149  
 67150  	rc = -60
 67151  	goto EXIT
 67152  __43:
 67153  	;
 67154  
 67155  	// Check for the same match as previous. This is legitimate after matching an
 67156  	//   empty string that starts after the initial match offset. We have tried again
 67157  	//   at the match point in case the pattern is one like /(?<=\G.)/ which can never
 67158  	//   match at its starting point, so running the match achieves the bumpalong. If
 67159  	//   we do get the same (null) match at the original match point, it isn't such a
 67160  	//   pattern, so we now do the empty string magic. In all other cases, a repeat
 67161  	//   match should never occur.
 67162  
 67163  	if !(*(*Tsize_t)(unsafe.Pointer(bp)) == *(*Tsize_t)(unsafe.Pointer(ovector)) && *(*Tsize_t)(unsafe.Pointer(bp + 1*8)) == *(*Tsize_t)(unsafe.Pointer(ovector + 1*8))) {
 67164  		goto __44
 67165  	}
 67166  
 67167  	if !(*(*Tsize_t)(unsafe.Pointer(ovector)) == *(*Tsize_t)(unsafe.Pointer(ovector + 1*8)) && *(*Tsize_t)(unsafe.Pointer(bp + 2*8)) != start_offset) {
 67168  		goto __45
 67169  	}
 67170  
 67171  	goptions = DPCRE2_NOTEMPTY_ATSTART | DPCRE2_ANCHORED
 67172  	*(*Tsize_t)(unsafe.Pointer(bp + 2*8)) = start_offset
 67173  	goto __24 // Back to the top of the loop
 67174  __45:
 67175  	;
 67176  	rc = -65
 67177  	goto EXIT
 67178  __44:
 67179  	;
 67180  
 67181  	// Count substitutions with a paranoid check for integer overflow; surely no
 67182  	//   real call to this function would ever hit this!
 67183  
 67184  	if !(subs == 2147483647) {
 67185  		goto __46
 67186  	}
 67187  
 67188  	rc = -61
 67189  	goto EXIT
 67190  __46:
 67191  	;
 67192  	subs++
 67193  
 67194  	// Copy the text leading up to the match (unless not required), and remember
 67195  	//   where the insert begins and how many ovector pairs are set.
 67196  
 67197  	if !(rc == 0) {
 67198  		goto __47
 67199  	}
 67200  	rc = int32(ovector_count)
 67201  __47:
 67202  	;
 67203  	fraglength = *(*Tsize_t)(unsafe.Pointer(ovector)) - start_offset
 67204  	if !!(replacement_only != 0) {
 67205  		goto __48
 67206  	}
 67207  	if !(!(overflowed != 0) && lengthleft < fraglength) {
 67208  		goto __49
 67209  	}
 67210  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 67211  		goto __51
 67212  	}
 67213  	goto NOROOM
 67214  __51:
 67215  	;
 67216  	overflowed = DTRUE
 67217  	extra_needed = fraglength - lengthleft
 67218  	goto __50
 67219  __49:
 67220  	if !(overflowed != 0) {
 67221  		goto __52
 67222  	}
 67223  	extra_needed = extra_needed + fraglength
 67224  	goto __53
 67225  __52:
 67226  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), subject+uintptr(start_offset), fraglength*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 67227  	buff_offset = buff_offset + fraglength
 67228  	lengthleft = lengthleft - fraglength
 67229  __53:
 67230  	;
 67231  __50:
 67232  	;
 67233  __48:
 67234  	;
 67235  
 67236  	*(*Tsize_t)(unsafe.Pointer(bp + 24 + 24)) = buff_offset
 67237  	(*Tpcre2_substitute_callout_block_8)(unsafe.Pointer(bp + 24 /* &scb */)).Foveccount = Tuint32_t(rc)
 67238  
 67239  	// Process the replacement string. If the entire replacement is literal, just
 67240  	//   copy it with length check.
 67241  
 67242  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) = replacement
 67243  	if !(suboptions&DPCRE2_SUBSTITUTE_LITERAL != Tuint32_t(0)) {
 67244  		goto __54
 67245  	}
 67246  
 67247  	if !(!(overflowed != 0) && lengthleft < rlength) {
 67248  		goto __56
 67249  	}
 67250  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 67251  		goto __58
 67252  	}
 67253  	goto NOROOM
 67254  __58:
 67255  	;
 67256  	overflowed = DTRUE
 67257  	extra_needed = rlength - lengthleft
 67258  	goto __57
 67259  __56:
 67260  	if !(overflowed != 0) {
 67261  		goto __59
 67262  	}
 67263  	extra_needed = extra_needed + rlength
 67264  	goto __60
 67265  __59:
 67266  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)), rlength*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 67267  	buff_offset = buff_offset + rlength
 67268  	lengthleft = lengthleft - rlength
 67269  __60:
 67270  	;
 67271  __57:
 67272  	;
 67273  
 67274  	goto __55
 67275  __54:
 67276  __61:
 67277  
 67278  	// If at the end of a nested substring, pop the stack.
 67279  
 67280  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) >= repend) {
 67281  		goto __64
 67282  	}
 67283  
 67284  	if !(ptrstackptr == Tuint32_t(0)) {
 67285  		goto __65
 67286  	}
 67287  	goto __63
 67288  __65:
 67289  	; // End of replacement string
 67290  	repend = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 80 + uintptr(libc.PreDecUint32(&ptrstackptr, 1))*8))
 67291  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 80 + uintptr(libc.PreDecUint32(&ptrstackptr, 1))*8))
 67292  	goto __62
 67293  __64:
 67294  	;
 67295  
 67296  	// Handle the next character
 67297  
 67298  	if !(escaped_literal != 0) {
 67299  		goto __66
 67300  	}
 67301  
 67302  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))))) == '\134' && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) < repend-uintptr(1) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 1))) == '\105') {
 67303  		goto __67
 67304  	}
 67305  
 67306  	escaped_literal = DFALSE
 67307  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(2)
 67308  	goto __62
 67309  __67:
 67310  	;
 67311  	goto LOADLITERAL
 67312  __66:
 67313  	;
 67314  
 67315  	// Not in literal mode.
 67316  
 67317  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))))) == '\044') {
 67318  		goto __68
 67319  	}
 67320  	special = Tuint32_t(0)
 67321  	text1_start = uintptr(0)
 67322  	text1_end = uintptr(0)
 67323  	text2_start = uintptr(0)
 67324  	text2_end = uintptr(0)
 67325  
 67326  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1) >= repend) {
 67327  		goto __70
 67328  	}
 67329  	goto BAD
 67330  __70:
 67331  	;
 67332  	if !(int32(libc.AssignUint8(&next, *(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)))))) == '\044') {
 67333  		goto __71
 67334  	}
 67335  	goto LOADLITERAL
 67336  __71:
 67337  	;
 67338  
 67339  	group = -1
 67340  	n = 0
 67341  	inparens = DFALSE
 67342  	star = DFALSE
 67343  
 67344  	if !(int32(next) == '\173') {
 67345  		goto __72
 67346  	}
 67347  
 67348  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1) >= repend) {
 67349  		goto __73
 67350  	}
 67351  	goto BAD
 67352  __73:
 67353  	;
 67354  	next = *(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))))
 67355  	inparens = DTRUE
 67356  __72:
 67357  	;
 67358  
 67359  	if !(int32(next) == '\052') {
 67360  		goto __74
 67361  	}
 67362  
 67363  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1) >= repend) {
 67364  		goto __75
 67365  	}
 67366  	goto BAD
 67367  __75:
 67368  	;
 67369  	next = *(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))))
 67370  	star = DTRUE
 67371  __74:
 67372  	;
 67373  
 67374  	if !(!(star != 0) && int32(next) >= '\060' && int32(next) <= '\071') {
 67375  		goto __76
 67376  	}
 67377  
 67378  	group = int32(next) - '\060'
 67379  __78:
 67380  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1) < repend) {
 67381  		goto __79
 67382  	}
 67383  
 67384  	next = *(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))))
 67385  	if !(int32(next) < '\060' || int32(next) > '\071') {
 67386  		goto __80
 67387  	}
 67388  	goto __79
 67389  __80:
 67390  	;
 67391  	group = group*10 + int32(next) - '\060'
 67392  
 67393  	// A check for a number greater than the hightest captured group
 67394  	//           is sufficient here; no need for a separate overflow check. If unknown
 67395  	//           groups are to be treated as unset, just skip over any remaining
 67396  	//           digits and carry on.
 67397  
 67398  	if !(group > int32((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftop_bracket)) {
 67399  		goto __81
 67400  	}
 67401  
 67402  	if !(suboptions&DPCRE2_SUBSTITUTE_UNKNOWN_UNSET != Tuint32_t(0)) {
 67403  		goto __82
 67404  	}
 67405  
 67406  __84:
 67407  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1) < repend && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))))) >= '\060' && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))))) <= '\071') {
 67408  		goto __85
 67409  	}
 67410  	goto __84
 67411  __85:
 67412  	;
 67413  	goto __79
 67414  	goto __83
 67415  __82:
 67416  
 67417  	rc = -49
 67418  	goto PTREXIT
 67419  __83:
 67420  	;
 67421  __81:
 67422  	;
 67423  	goto __78
 67424  __79:
 67425  	;
 67426  	goto __77
 67427  __76:
 67428  
 67429  	ctypes = (*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables + uintptr(Dcbits_offset+Dcbit_length)
 67430  __86:
 67431  	if !(1 != 0 && int32(*(*Tuint8_t)(unsafe.Pointer(ctypes + uintptr(next))))&Dctype_word != 0) {
 67432  		goto __87
 67433  	}
 67434  
 67435  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 240 + uintptr(libc.PostIncInt32(&n, 1)))) = next
 67436  	if !(n > 32) {
 67437  		goto __88
 67438  	}
 67439  	goto BAD
 67440  __88:
 67441  	;
 67442  	if !(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1) >= repend) {
 67443  		goto __89
 67444  	}
 67445  	goto __87
 67446  __89:
 67447  	;
 67448  	next = *(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))))
 67449  	goto __86
 67450  __87:
 67451  	;
 67452  	if !(n == 0) {
 67453  		goto __90
 67454  	}
 67455  	goto BAD
 67456  __90:
 67457  	;
 67458  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 240 + uintptr(n))) = TPCRE2_UCHAR8(0)
 67459  __77:
 67460  	;
 67461  
 67462  	// In extended mode we recognize ${name:+set text:unset text} and
 67463  	//       ${name:-default text}.
 67464  
 67465  	if !(inparens != 0) {
 67466  		goto __91
 67467  	}
 67468  
 67469  	if !(suboptions&DPCRE2_SUBSTITUTE_EXTENDED != Tuint32_t(0) && !(star != 0) && *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) < repend-uintptr(2) && int32(next) == '\072') {
 67470  		goto __92
 67471  	}
 67472  
 67473  	special = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1))))
 67474  	if !(special != Tuint32_t('\053') && special != Tuint32_t('\055')) {
 67475  		goto __94
 67476  	}
 67477  
 67478  	rc = -59
 67479  	goto PTREXIT
 67480  __94:
 67481  	;
 67482  
 67483  	text1_start = libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)), 1)
 67484  	rc = find_text_end(tls, code, bp+280, repend, libc.Bool32(special == Tuint32_t('\055')))
 67485  	if !(rc != 0) {
 67486  		goto __95
 67487  	}
 67488  	goto PTREXIT
 67489  __95:
 67490  	;
 67491  	text1_end = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))
 67492  
 67493  	if !(special == Tuint32_t('\053') && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))))) == '\072') {
 67494  		goto __96
 67495  	}
 67496  
 67497  	text2_start = libc.PreIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)), 1)
 67498  	rc = find_text_end(tls, code, bp+280, repend, DTRUE)
 67499  	if !(rc != 0) {
 67500  		goto __97
 67501  	}
 67502  	goto PTREXIT
 67503  __97:
 67504  	;
 67505  	text2_end = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))
 67506  __96:
 67507  	;
 67508  	goto __93
 67509  __92:
 67510  
 67511  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) >= repend || int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))))) != '\175') {
 67512  		goto __98
 67513  	}
 67514  
 67515  	rc = -58
 67516  	goto PTREXIT
 67517  __98:
 67518  	;
 67519  __93:
 67520  	;
 67521  
 67522  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))++
 67523  __91:
 67524  	;
 67525  
 67526  	// Have found a syntactically correct group number or name, or *name.
 67527  	//       Only *MARK is currently recognized.
 67528  
 67529  	if !(star != 0) {
 67530  		goto __99
 67531  	}
 67532  
 67533  	if !(X_pcre2_strcmp_c8_8(tls, bp+240, ts+7678) == 0) {
 67534  		goto __101
 67535  	}
 67536  
 67537  	mark = Xpcre2_get_mark_8(tls, match_data)
 67538  	if !(mark != uintptr(0)) {
 67539  		goto __103
 67540  	}
 67541  
 67542  	mark_start = mark
 67543  __104:
 67544  	if !(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(mark))) != 0) {
 67545  		goto __105
 67546  	}
 67547  	mark++
 67548  	goto __104
 67549  __105:
 67550  	;
 67551  	fraglength = Tsize_t((int64(mark) - int64(mark_start)) / 1)
 67552  	if !(!(overflowed != 0) && lengthleft < fraglength) {
 67553  		goto __106
 67554  	}
 67555  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 67556  		goto __108
 67557  	}
 67558  	goto NOROOM
 67559  __108:
 67560  	;
 67561  	overflowed = DTRUE
 67562  	extra_needed = fraglength - lengthleft
 67563  	goto __107
 67564  __106:
 67565  	if !(overflowed != 0) {
 67566  		goto __109
 67567  	}
 67568  	extra_needed = extra_needed + fraglength
 67569  	goto __110
 67570  __109:
 67571  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), mark_start, fraglength*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 67572  	buff_offset = buff_offset + fraglength
 67573  	lengthleft = lengthleft - fraglength
 67574  __110:
 67575  	;
 67576  __107:
 67577  	;
 67578  
 67579  __103:
 67580  	;
 67581  	goto __102
 67582  __101:
 67583  	goto BAD
 67584  __102:
 67585  	;
 67586  	goto __100
 67587  __99:
 67588  
 67589  	// Find a number for a named group. In case there are duplicate names,
 67590  	//         search for the first one that is set. If the name is not found when
 67591  	//         PCRE2_SUBSTITUTE_UNKNOWN_EMPTY is set, set the group number to a
 67592  	//         non-existent group.
 67593  
 67594  	if !(group < 0) {
 67595  		goto __111
 67596  	}
 67597  
 67598  	rc = Xpcre2_substring_nametable_scan_8(tls, code, bp+240, bp+288, bp+296)
 67599  	if !(rc == -49 && suboptions&DPCRE2_SUBSTITUTE_UNKNOWN_UNSET != Tuint32_t(0)) {
 67600  		goto __112
 67601  	}
 67602  
 67603  	group = int32((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftop_bracket) + 1
 67604  	goto __113
 67605  __112:
 67606  
 67607  	if !(rc < 0) {
 67608  		goto __114
 67609  	}
 67610  	goto PTREXIT
 67611  __114:
 67612  	;
 67613  	entry = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 288 /* first */))
 67614  __115:
 67615  	if !(entry <= *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 296))) {
 67616  		goto __117
 67617  	}
 67618  
 67619  	ng = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry + 1))))
 67620  	if !(ng < ovector_count) {
 67621  		goto __118
 67622  	}
 67623  
 67624  	if !(group < 0) {
 67625  		goto __119
 67626  	}
 67627  	group = int32(ng)
 67628  __119:
 67629  	; // First in ovector
 67630  	if !(*(*Tsize_t)(unsafe.Pointer(ovector + uintptr(ng*Tuint32_t(2))*8)) != libc.CplUint64(uint64(0))) {
 67631  		goto __120
 67632  	}
 67633  
 67634  	group = int32(ng) // First that is set
 67635  	goto __117
 67636  __120:
 67637  	;
 67638  __118:
 67639  	;
 67640  	goto __116
 67641  __116:
 67642  	entry += TPCRE2_SPTR8(rc)
 67643  	goto __115
 67644  	goto __117
 67645  __117:
 67646  	;
 67647  
 67648  	// If group is still negative, it means we did not find a group
 67649  	//             that is in the ovector. Just set the first group.
 67650  
 67651  	if !(group < 0) {
 67652  		goto __121
 67653  	}
 67654  	group = int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 288)))))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 288)) + 1)))))
 67655  __121:
 67656  	;
 67657  __113:
 67658  	;
 67659  __111:
 67660  	;
 67661  
 67662  	// We now have a group that is identified by number. Find the length of
 67663  	//         the captured string. If a group in a non-special substitution is unset
 67664  	//         when PCRE2_SUBSTITUTE_UNSET_EMPTY is set, substitute nothing.
 67665  
 67666  	rc = Xpcre2_substring_length_bynumber_8(tls, match_data, uint32(group), bp+304)
 67667  	if !(rc < 0) {
 67668  		goto __122
 67669  	}
 67670  
 67671  	if !(rc == -49 && suboptions&DPCRE2_SUBSTITUTE_UNKNOWN_UNSET != Tuint32_t(0)) {
 67672  		goto __123
 67673  	}
 67674  
 67675  	rc = -55
 67676  __123:
 67677  	;
 67678  	if !(rc != -55) {
 67679  		goto __124
 67680  	}
 67681  	goto PTREXIT
 67682  __124:
 67683  	; // Non-unset errors
 67684  	if !(special == Tuint32_t(0)) {
 67685  		goto __125
 67686  	} /* Plain substitution */
 67687  
 67688  	if !(suboptions&DPCRE2_SUBSTITUTE_UNSET_EMPTY != Tuint32_t(0)) {
 67689  		goto __126
 67690  	}
 67691  	goto __62
 67692  __126:
 67693  	;
 67694  	goto PTREXIT // Else error
 67695  __125:
 67696  	;
 67697  __122:
 67698  	;
 67699  
 67700  	// If special is '+' we have a 'set' and possibly an 'unset' text,
 67701  	//         both of which are reprocessed when used. If special is '-' we have a
 67702  	//         default text for when the group is unset; it must be reprocessed.
 67703  
 67704  	if !(special != Tuint32_t(0)) {
 67705  		goto __127
 67706  	}
 67707  
 67708  	if !(special == Tuint32_t('\055')) {
 67709  		goto __128
 67710  	}
 67711  
 67712  	if !(rc == 0) {
 67713  		goto __129
 67714  	}
 67715  	goto LITERAL_SUBSTITUTE
 67716  __129:
 67717  	;
 67718  	text2_start = text1_start
 67719  	text2_end = text1_end
 67720  __128:
 67721  	;
 67722  
 67723  	if !(ptrstackptr >= Tuint32_t(DPTR_STACK_SIZE)) {
 67724  		goto __130
 67725  	}
 67726  	goto BAD
 67727  __130:
 67728  	;
 67729  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 80 + uintptr(libc.PostIncUint32(&ptrstackptr, 1))*8)) = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))
 67730  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 80 + uintptr(libc.PostIncUint32(&ptrstackptr, 1))*8)) = repend
 67731  
 67732  	if !(rc == 0) {
 67733  		goto __131
 67734  	}
 67735  
 67736  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) = text1_start
 67737  	repend = text1_end
 67738  	goto __132
 67739  __131:
 67740  
 67741  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) = text2_start
 67742  	repend = text2_end
 67743  __132:
 67744  	;
 67745  	goto __62
 67746  __127:
 67747  	;
 67748  
 67749  	// Otherwise we have a literal substitution of a group's contents.
 67750  
 67751  LITERAL_SUBSTITUTE:
 67752  	subptr = subject + uintptr(*(*Tsize_t)(unsafe.Pointer(ovector + uintptr(group*2)*8)))
 67753  	subptrend = subject + uintptr(*(*Tsize_t)(unsafe.Pointer(ovector + uintptr(group*2+1)*8)))
 67754  
 67755  	// Substitute a literal string, possibly forcing alphabetic case.
 67756  
 67757  __133:
 67758  	if !(subptr < subptrend) {
 67759  		goto __134
 67760  	}
 67761  
 67762  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&subptr, 1))))
 67763  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 320)) >= 0xc0) {
 67764  		goto __135
 67765  	}
 67766  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x20 == Tuint32_t(0)) {
 67767  		goto __136
 67768  	}
 67769  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&subptr, 1))))&0x3f
 67770  	goto __137
 67771  __136:
 67772  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x10 == Tuint32_t(0)) {
 67773  		goto __138
 67774  	}
 67775  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 1)))&0x3f
 67776  	subptr += uintptr(2)
 67777  	goto __139
 67778  __138:
 67779  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x08 == Tuint32_t(0)) {
 67780  		goto __140
 67781  	}
 67782  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 2)))&0x3f
 67783  	subptr += uintptr(3)
 67784  	goto __141
 67785  __140:
 67786  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x04 == Tuint32_t(0)) {
 67787  		goto __142
 67788  	}
 67789  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 3)))&0x3f
 67790  	subptr += uintptr(4)
 67791  	goto __143
 67792  __142:
 67793  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(subptr + 4)))&0x3f
 67794  	subptr += uintptr(5)
 67795  __143:
 67796  	;
 67797  __141:
 67798  	;
 67799  __139:
 67800  	;
 67801  __137:
 67802  	;
 67803  __135:
 67804  	;
 67805  
 67806  	if !(forcecase != 0) {
 67807  		goto __144
 67808  	}
 67809  
 67810  	if !(utf != 0 || ucp != 0) {
 67811  		goto __145
 67812  	}
 67813  
 67814  	type1 = Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))%DUCD_BLOCK_SIZE])*12)).Fchartype)
 67815  	if !(X_pcre2_ucp_gentype_8[type1] == ucp_L && type1 != func() uint32 {
 67816  		if forcecase > 0 {
 67817  			return ucp_Lu
 67818  		}
 67819  		return ucp_Ll
 67820  	}()) {
 67821  		goto __147
 67822  	}
 67823  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = Tuint32_t(int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320))) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))%DUCD_BLOCK_SIZE])*12)).Fother_case)
 67824  __147:
 67825  	;
 67826  	goto __146
 67827  __145:
 67828  
 67829  	if !(uint32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables + uintptr(Dcbits_offset) + uintptr(func() int32 {
 67830  		if forcecase > 0 {
 67831  			return Dcbit_upper
 67832  		}
 67833  		return Dcbit_lower
 67834  	}()) + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 320))/Tuint32_t(8)))))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(bp + 320))%Tuint32_t(8))) == uint32(0)) {
 67835  		goto __148
 67836  	}
 67837  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables + uintptr(Dfcc_offset) + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */))))))
 67838  __148:
 67839  	;
 67840  __146:
 67841  	;
 67842  	forcecase = forcecasereset
 67843  __144:
 67844  	;
 67845  
 67846  	if !(utf != 0) {
 67847  		goto __149
 67848  	}
 67849  	chlen = X_pcre2_ord2utf_8(tls, *(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)), bp+312)
 67850  	goto __150
 67851  __149:
 67852  
 67853  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 312)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)))
 67854  	chlen = uint32(1)
 67855  __150:
 67856  	;
 67857  	if !(!(overflowed != 0) && lengthleft < Tsize_t(chlen)) {
 67858  		goto __151
 67859  	}
 67860  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 67861  		goto __153
 67862  	}
 67863  	goto NOROOM
 67864  __153:
 67865  	;
 67866  	overflowed = DTRUE
 67867  	extra_needed = Tsize_t(chlen) - lengthleft
 67868  	goto __152
 67869  __151:
 67870  	if !(overflowed != 0) {
 67871  		goto __154
 67872  	}
 67873  	extra_needed = extra_needed + Tsize_t(chlen)
 67874  	goto __155
 67875  __154:
 67876  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), bp+312, uint64(chlen*uint32(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 67877  	buff_offset = buff_offset + Tsize_t(chlen)
 67878  	lengthleft = lengthleft - Tsize_t(chlen)
 67879  __155:
 67880  	;
 67881  __152:
 67882  	;
 67883  
 67884  	goto __133
 67885  __134:
 67886  	;
 67887  __100:
 67888  	;
 67889  	goto __69
 67890  __68:
 67891  	if !(suboptions&DPCRE2_SUBSTITUTE_EXTENDED != Tuint32_t(0) && int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))))) == '\134') {
 67892  		goto __156
 67893  	}
 67894  
 67895  	if !(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) < repend-uintptr(1)) {
 67896  		goto __158
 67897  	}
 67898  	switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) + 1))) {
 67899  	case '\114':
 67900  		goto __160
 67901  
 67902  	case '\154':
 67903  		goto __161
 67904  
 67905  	case '\125':
 67906  		goto __162
 67907  
 67908  	case '\165':
 67909  		goto __163
 67910  
 67911  	default:
 67912  		goto __164
 67913  	}
 67914  	goto __159
 67915  
 67916  __160:
 67917  	forcecase = libc.AssignInt32(&forcecasereset, -1)
 67918  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(2)
 67919  	goto __62
 67920  
 67921  __161:
 67922  	forcecase = -1
 67923  	forcecasereset = 0
 67924  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(2)
 67925  	goto __62
 67926  
 67927  __162:
 67928  	forcecase = libc.AssignInt32(&forcecasereset, 1)
 67929  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(2)
 67930  	goto __62
 67931  
 67932  __163:
 67933  	forcecase = 1
 67934  	forcecasereset = 0
 67935  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(2)
 67936  	goto __62
 67937  
 67938  __164:
 67939  	goto __159
 67940  __159:
 67941  	;
 67942  __158:
 67943  	;
 67944  
 67945  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */))++ // Point after \
 67946  	rc = X_pcre2_check_escape_8(tls, bp+280, repend, bp+320, bp+324,
 67947  		(*Tpcre2_code_8)(unsafe.Pointer(code)).Foverall_options, (*Tpcre2_code_8)(unsafe.Pointer(code)).Fextra_options, DFALSE, uintptr(0))
 67948  	if !(*(*int32)(unsafe.Pointer(bp + 324)) != 0) {
 67949  		goto __165
 67950  	}
 67951  	goto BADESCAPE
 67952  __165:
 67953  	;
 67954  
 67955  	switch rc {
 67956  	case ESC_E:
 67957  		goto __167
 67958  
 67959  	case ESC_Q:
 67960  		goto __168
 67961  
 67962  	case 0:
 67963  		goto __169
 67964  
 67965  	default:
 67966  		goto __170
 67967  	}
 67968  	goto __166
 67969  
 67970  __167:
 67971  	forcecase = libc.AssignInt32(&forcecasereset, 0)
 67972  	goto __62
 67973  
 67974  __168:
 67975  	escaped_literal = DTRUE
 67976  	goto __62
 67977  
 67978  __169: // Data character
 67979  	goto LITERAL
 67980  
 67981  __170:
 67982  	goto BADESCAPE
 67983  __166:
 67984  	;
 67985  	goto __157
 67986  __156:
 67987  
 67988  LOADLITERAL:
 67989  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)), 1))))
 67990  	if !(utf != 0 && *(*Tuint32_t)(unsafe.Pointer(bp + 320)) >= 0xc0) {
 67991  		goto __171
 67992  	}
 67993  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x20 == Tuint32_t(0)) {
 67994  		goto __172
 67995  	}
 67996  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)), 1))))&0x3f
 67997  	goto __173
 67998  __172:
 67999  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x10 == Tuint32_t(0)) {
 68000  		goto __174
 68001  	}
 68002  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)))))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 1)))&0x3f
 68003  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(2)
 68004  	goto __175
 68005  __174:
 68006  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x08 == Tuint32_t(0)) {
 68007  		goto __176
 68008  	}
 68009  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)))))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 2)))&0x3f
 68010  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(3)
 68011  	goto __177
 68012  __176:
 68013  	if !(*(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x04 == Tuint32_t(0)) {
 68014  		goto __178
 68015  	}
 68016  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)))))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 3)))&0x3f
 68017  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(4)
 68018  	goto __179
 68019  __178:
 68020  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = *(*Tuint32_t)(unsafe.Pointer(bp + 320))&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)))))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280)) + 4)))&0x3f
 68021  	*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280 /* ptr */)) += uintptr(5)
 68022  __179:
 68023  	;
 68024  __177:
 68025  	;
 68026  __175:
 68027  	;
 68028  __173:
 68029  	;
 68030  __171:
 68031  	;
 68032  
 68033  	// Get character value, increment pointer
 68034  
 68035  LITERAL:
 68036  	if !(forcecase != 0) {
 68037  		goto __180
 68038  	}
 68039  
 68040  	if !(utf != 0 || ucp != 0) {
 68041  		goto __181
 68042  	}
 68043  
 68044  	type2 = Tuint32_t((*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))%DUCD_BLOCK_SIZE])*12)).Fchartype)
 68045  	if !(X_pcre2_ucp_gentype_8[type2] == ucp_L && type2 != func() uint32 {
 68046  		if forcecase > 0 {
 68047  			return ucp_Lu
 68048  		}
 68049  		return ucp_Ll
 68050  	}()) {
 68051  		goto __183
 68052  	}
 68053  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = Tuint32_t(int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320))) + (*Tucd_record)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8))+uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(*(*Tuint32_t)(unsafe.Pointer(bp + 320)))%DUCD_BLOCK_SIZE])*12)).Fother_case)
 68054  __183:
 68055  	;
 68056  	goto __182
 68057  __181:
 68058  
 68059  	if !(uint32(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables + uintptr(Dcbits_offset) + uintptr(func() int32 {
 68060  		if forcecase > 0 {
 68061  			return Dcbit_upper
 68062  		}
 68063  		return Dcbit_lower
 68064  	}()) + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 320))/Tuint32_t(8)))))&(uint32(1)<<(*(*Tuint32_t)(unsafe.Pointer(bp + 320))%Tuint32_t(8))) == uint32(0)) {
 68065  		goto __184
 68066  	}
 68067  	*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)) = Tuint32_t(*(*Tuint8_t)(unsafe.Pointer((*Tpcre2_code_8)(unsafe.Pointer(code)).Ftables + uintptr(Dfcc_offset) + uintptr(*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */))))))
 68068  __184:
 68069  	;
 68070  __182:
 68071  	;
 68072  	forcecase = forcecasereset
 68073  __180:
 68074  	;
 68075  
 68076  	if !(utf != 0) {
 68077  		goto __185
 68078  	}
 68079  	chlen = X_pcre2_ord2utf_8(tls, *(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)), bp+312)
 68080  	goto __186
 68081  __185:
 68082  
 68083  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 312)) = TPCRE2_UCHAR8(*(*Tuint32_t)(unsafe.Pointer(bp + 320 /* ch */)))
 68084  	chlen = uint32(1)
 68085  __186:
 68086  	;
 68087  	if !(!(overflowed != 0) && lengthleft < Tsize_t(chlen)) {
 68088  		goto __187
 68089  	}
 68090  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 68091  		goto __189
 68092  	}
 68093  	goto NOROOM
 68094  __189:
 68095  	;
 68096  	overflowed = DTRUE
 68097  	extra_needed = Tsize_t(chlen) - lengthleft
 68098  	goto __188
 68099  __187:
 68100  	if !(overflowed != 0) {
 68101  		goto __190
 68102  	}
 68103  	extra_needed = extra_needed + Tsize_t(chlen)
 68104  	goto __191
 68105  __190:
 68106  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), bp+312, uint64(chlen*uint32(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 68107  	buff_offset = buff_offset + Tsize_t(chlen)
 68108  	lengthleft = lengthleft - Tsize_t(chlen)
 68109  __191:
 68110  	;
 68111  __188:
 68112  	;
 68113  
 68114  __157:
 68115  	;
 68116  __69:
 68117  	; // End handling a literal code unit
 68118  	goto __62
 68119  __62:
 68120  	goto __61
 68121  	goto __63
 68122  __63:
 68123  	;
 68124  __55:
 68125  	; // End of loop for scanning the replacement.
 68126  
 68127  	// The replacement has been copied to the output, or its size has been
 68128  	//   remembered. Do the callout if there is one and we have done an actual
 68129  	//   replacement.
 68130  
 68131  	if !(!(overflowed != 0) && mcontext != uintptr(0) && (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fsubstitute_callout != uintptr(0)) {
 68132  		goto __192
 68133  	}
 68134  
 68135  	(*Tpcre2_substitute_callout_block_8)(unsafe.Pointer(bp + 24 /* &scb */)).Fsubscount = Tuint32_t(subs)
 68136  	*(*Tsize_t)(unsafe.Pointer(bp + 24 + 24 + 1*8)) = buff_offset
 68137  	rc = (*struct {
 68138  		f func(*libc.TLS, uintptr, uintptr) int32
 68139  	})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fsubstitute_callout})).f(tls, bp+24 /* &scb */, (*Tpcre2_match_context_8)(unsafe.Pointer(mcontext)).Fsubstitute_callout_data)
 68140  
 68141  	// A non-zero return means cancel this substitution. Instead, copy the
 68142  	//     matched string fragment.
 68143  
 68144  	if !(rc != 0) {
 68145  		goto __193
 68146  	}
 68147  
 68148  	newlength = *(*Tsize_t)(unsafe.Pointer(bp + 24 + 24 + 1*8)) - *(*Tsize_t)(unsafe.Pointer(bp + 24 + 24))
 68149  	oldlength = *(*Tsize_t)(unsafe.Pointer(ovector + 1*8)) - *(*Tsize_t)(unsafe.Pointer(ovector))
 68150  
 68151  	buff_offset = buff_offset - newlength
 68152  	lengthleft = lengthleft + newlength
 68153  	if !!(replacement_only != 0) {
 68154  		goto __194
 68155  	}
 68156  	if !(!(overflowed != 0) && lengthleft < oldlength) {
 68157  		goto __195
 68158  	}
 68159  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 68160  		goto __197
 68161  	}
 68162  	goto NOROOM
 68163  __197:
 68164  	;
 68165  	overflowed = DTRUE
 68166  	extra_needed = oldlength - lengthleft
 68167  	goto __196
 68168  __195:
 68169  	if !(overflowed != 0) {
 68170  		goto __198
 68171  	}
 68172  	extra_needed = extra_needed + oldlength
 68173  	goto __199
 68174  __198:
 68175  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), subject+uintptr(*(*Tsize_t)(unsafe.Pointer(ovector))), oldlength*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 68176  	buff_offset = buff_offset + oldlength
 68177  	lengthleft = lengthleft - oldlength
 68178  __199:
 68179  	;
 68180  __196:
 68181  	;
 68182  __194:
 68183  	;
 68184  
 68185  	// A negative return means do not do any more.
 68186  
 68187  	if !(rc < 0) {
 68188  		goto __200
 68189  	}
 68190  	suboptions = suboptions & libc.CplUint32(DPCRE2_SUBSTITUTE_GLOBAL)
 68191  __200:
 68192  	;
 68193  __193:
 68194  	;
 68195  __192:
 68196  	;
 68197  
 68198  	// Save the details of this match. See above for how this data is used. If we
 68199  	//   matched an empty string, do the magic for global matches. Update the start
 68200  	//   offset to point to the rest of the subject string. If we re-used an existing
 68201  	//   match for the first match, switch to the internal match data block.
 68202  
 68203  	*(*Tsize_t)(unsafe.Pointer(bp)) = *(*Tsize_t)(unsafe.Pointer(ovector))
 68204  	*(*Tsize_t)(unsafe.Pointer(bp + 1*8)) = *(*Tsize_t)(unsafe.Pointer(ovector + 1*8))
 68205  	*(*Tsize_t)(unsafe.Pointer(bp + 2*8)) = start_offset
 68206  
 68207  	if *(*Tsize_t)(unsafe.Pointer(ovector)) != *(*Tsize_t)(unsafe.Pointer(ovector + 1*8)) || *(*Tsize_t)(unsafe.Pointer(ovector)) > start_offset {
 68208  		goptions = uint32(0)
 68209  	} else {
 68210  		goptions = DPCRE2_ANCHORED | DPCRE2_NOTEMPTY_ATSTART
 68211  	}
 68212  	start_offset = *(*Tsize_t)(unsafe.Pointer(ovector + 1*8))
 68213  	goto __24
 68214  __24:
 68215  	if suboptions&DPCRE2_SUBSTITUTE_GLOBAL != Tuint32_t(0) {
 68216  		goto __23
 68217  	}
 68218  	goto __25
 68219  __25:
 68220  	; // Repeat "do" loop
 68221  
 68222  	// Copy the rest of the subject unless not required, and terminate the output
 68223  	// with a binary zero.
 68224  
 68225  	if !!(replacement_only != 0) {
 68226  		goto __201
 68227  	}
 68228  
 68229  	fraglength = length - start_offset
 68230  	if !(!(overflowed != 0) && lengthleft < fraglength) {
 68231  		goto __202
 68232  	}
 68233  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 68234  		goto __204
 68235  	}
 68236  	goto NOROOM
 68237  __204:
 68238  	;
 68239  	overflowed = DTRUE
 68240  	extra_needed = fraglength - lengthleft
 68241  	goto __203
 68242  __202:
 68243  	if !(overflowed != 0) {
 68244  		goto __205
 68245  	}
 68246  	extra_needed = extra_needed + fraglength
 68247  	goto __206
 68248  __205:
 68249  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), subject+uintptr(start_offset), fraglength*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 68250  	buff_offset = buff_offset + fraglength
 68251  	lengthleft = lengthleft - fraglength
 68252  __206:
 68253  	;
 68254  __203:
 68255  	;
 68256  
 68257  __201:
 68258  	;
 68259  
 68260  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(bp + 312)) = TPCRE2_UCHAR8(0)
 68261  	if !(!(overflowed != 0) && lengthleft < uint64(1)) {
 68262  		goto __207
 68263  	}
 68264  	if !(suboptions&DPCRE2_SUBSTITUTE_OVERFLOW_LENGTH == Tuint32_t(0)) {
 68265  		goto __209
 68266  	}
 68267  	goto NOROOM
 68268  __209:
 68269  	;
 68270  	overflowed = DTRUE
 68271  	extra_needed = uint64(1) - lengthleft
 68272  	goto __208
 68273  __207:
 68274  	if !(overflowed != 0) {
 68275  		goto __210
 68276  	}
 68277  	extra_needed = extra_needed + uint64(1)
 68278  	goto __211
 68279  __210:
 68280  	libc.X__builtin___memcpy_chk(tls, buffer+uintptr(buff_offset), bp+312, uint64(1*(DPCRE2_CODE_UNIT_WIDTH/8)), libc.X__builtin_object_size(tls, buffer+uintptr(buff_offset), 0))
 68281  	buff_offset = buff_offset + uint64(1)
 68282  	lengthleft = lengthleft - uint64(1)
 68283  __211:
 68284  	;
 68285  __208:
 68286  	;
 68287  
 68288  	// If overflowed is set it means the PCRE2_SUBSTITUTE_OVERFLOW_LENGTH is set,
 68289  	// and matching has carried on after a full buffer, in order to compute the length
 68290  	// needed. Otherwise, an overflow generates an immediate error return.
 68291  
 68292  	if !(overflowed != 0) {
 68293  		goto __212
 68294  	}
 68295  
 68296  	rc = -48
 68297  	*(*Tsize_t)(unsafe.Pointer(blength)) = buff_length + extra_needed
 68298  	goto __213
 68299  __212:
 68300  
 68301  	rc = subs
 68302  	*(*Tsize_t)(unsafe.Pointer(blength)) = buff_offset - uint64(1)
 68303  __213:
 68304  	;
 68305  
 68306  EXIT:
 68307  	if !(internal_match_data != uintptr(0)) {
 68308  		goto __214
 68309  	}
 68310  	Xpcre2_match_data_free_8(tls, internal_match_data)
 68311  	goto __215
 68312  __214:
 68313  	(*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc = rc
 68314  __215:
 68315  	;
 68316  	return rc
 68317  
 68318  NOROOM:
 68319  	rc = -48
 68320  	goto EXIT
 68321  
 68322  BAD:
 68323  	rc = -35
 68324  	goto PTREXIT
 68325  
 68326  BADESCAPE:
 68327  	rc = -57
 68328  
 68329  PTREXIT:
 68330  	*(*Tsize_t)(unsafe.Pointer(blength)) = Tsize_t((int64(*(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 280))) - int64(replacement)) / 1)
 68331  	goto EXIT
 68332  	return int32(0)
 68333  }
 68334  
 68335  // End of pcre2_substitute.c
 68336  
 68337  // This function is needed only when memmove() is not available.
 68338  
 68339  // End of pcre2_internal.h
 68340  
 68341  // ************************************************
 68342  //
 68343  //   Copy named captured string to given buffer   *
 68344  //
 68345  
 68346  // This function copies a single captured substring into a given buffer,
 68347  // identifying it by name. If the regex permits duplicate names, the first
 68348  // substring that is set is chosen.
 68349  //
 68350  // Arguments:
 68351  //   match_data     points to the match data
 68352  //   stringname     the name of the required substring
 68353  //   buffer         where to put the substring
 68354  //   sizeptr        the size of the buffer, updated to the size of the substring
 68355  //
 68356  // Returns:         if successful: zero
 68357  //                  if not successful, a negative error code:
 68358  //                    (1) an error from nametable_scan()
 68359  //                    (2) an error from copy_bynumber()
 68360  //                    (3) PCRE2_ERROR_UNAVAILABLE: no group is in ovector
 68361  //                    (4) PCRE2_ERROR_UNSET: all named groups in ovector are unset
 68362  
 68363  func Xpcre2_substring_copy_byname_8(tls *libc.TLS, match_data uintptr, stringname TPCRE2_SPTR8, buffer uintptr, sizeptr uintptr) int32 { /* pcre2_substring.c:73:1: */
 68364  	bp := tls.Alloc(16)
 68365  	defer tls.Free(16)
 68366  
 68367  	// var first TPCRE2_SPTR8 at bp, 8
 68368  
 68369  	// var last TPCRE2_SPTR8 at bp+8, 8
 68370  
 68371  	var entry TPCRE2_SPTR8
 68372  	var failrc int32
 68373  	var entrysize int32
 68374  	if int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmatchedby) == PCRE2_MATCHEDBY_DFA_INTERPRETER {
 68375  		return -41
 68376  	}
 68377  	entrysize = Xpcre2_substring_nametable_scan_8(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fcode, stringname,
 68378  		bp, bp+8)
 68379  	if entrysize < 0 {
 68380  		return entrysize
 68381  	}
 68382  	failrc = -54
 68383  	for entry = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* first */)); entry <= *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* last */)); entry += TPCRE2_SPTR8(entrysize) {
 68384  		var n Tuint32_t = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry + 1))))
 68385  		if n < Tuint32_t((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) {
 68386  			if *(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(n*Tuint32_t(2))*8)) != libc.CplUint64(uint64(0)) {
 68387  				return Xpcre2_substring_copy_bynumber_8(tls, match_data, n, buffer, sizeptr)
 68388  			}
 68389  			failrc = -55
 68390  		}
 68391  	}
 68392  	return failrc
 68393  }
 68394  
 68395  // ************************************************
 68396  //
 68397  //  Copy numbered captured string to given buffer *
 68398  //
 68399  
 68400  // This function copies a single captured substring into a given buffer,
 68401  // identifying it by number.
 68402  //
 68403  // Arguments:
 68404  //   match_data     points to the match data
 68405  //   stringnumber   the number of the required substring
 68406  //   buffer         where to put the substring
 68407  //   sizeptr        the size of the buffer, updated to the size of the substring
 68408  //
 68409  // Returns:         if successful: 0
 68410  //                  if not successful, a negative error code:
 68411  //                    PCRE2_ERROR_NOMEMORY: buffer too small
 68412  //                    PCRE2_ERROR_NOSUBSTRING: no such substring
 68413  //                    PCRE2_ERROR_UNAVAILABLE: ovector too small
 68414  //                    PCRE2_ERROR_UNSET: substring is not set
 68415  
 68416  func Xpcre2_substring_copy_bynumber_8(tls *libc.TLS, match_data uintptr, stringnumber Tuint32_t, buffer uintptr, sizeptr uintptr) int32 { /* pcre2_substring.c:121:1: */
 68417  	bp := tls.Alloc(8)
 68418  	defer tls.Free(8)
 68419  
 68420  	var rc int32
 68421  	// var size Tsize_t at bp, 8
 68422  
 68423  	rc = Xpcre2_substring_length_bynumber_8(tls, match_data, stringnumber, bp)
 68424  	if rc < 0 {
 68425  		return rc
 68426  	}
 68427  	if *(*Tsize_t)(unsafe.Pointer(bp))+uint64(1) > *(*Tsize_t)(unsafe.Pointer(sizeptr)) {
 68428  		return -48
 68429  	}
 68430  	libc.X__builtin___memcpy_chk(tls, buffer, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject+uintptr(*(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(stringnumber*Tuint32_t(2))*8))), *(*Tsize_t)(unsafe.Pointer(bp))*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, buffer, 0))
 68431  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(buffer + uintptr(*(*Tsize_t)(unsafe.Pointer(bp /* size */))))) = TPCRE2_UCHAR8(0)
 68432  	*(*Tsize_t)(unsafe.Pointer(sizeptr)) = *(*Tsize_t)(unsafe.Pointer(bp /* size */))
 68433  	return 0
 68434  }
 68435  
 68436  // ************************************************
 68437  //
 68438  //          Extract named captured string         *
 68439  //
 68440  
 68441  // This function copies a single captured substring, identified by name, into
 68442  // new memory. If the regex permits duplicate names, the first substring that is
 68443  // set is chosen.
 68444  //
 68445  // Arguments:
 68446  //   match_data     pointer to match_data
 68447  //   stringname     the name of the required substring
 68448  //   stringptr      where to put the pointer to the new memory
 68449  //   sizeptr        where to put the length of the substring
 68450  //
 68451  // Returns:         if successful: zero
 68452  //                  if not successful, a negative value:
 68453  //                    (1) an error from nametable_scan()
 68454  //                    (2) an error from get_bynumber()
 68455  //                    (3) PCRE2_ERROR_UNAVAILABLE: no group is in ovector
 68456  //                    (4) PCRE2_ERROR_UNSET: all named groups in ovector are unset
 68457  
 68458  func Xpcre2_substring_get_byname_8(tls *libc.TLS, match_data uintptr, stringname TPCRE2_SPTR8, stringptr uintptr, sizeptr uintptr) int32 { /* pcre2_substring.c:161:1: */
 68459  	bp := tls.Alloc(16)
 68460  	defer tls.Free(16)
 68461  
 68462  	// var first TPCRE2_SPTR8 at bp, 8
 68463  
 68464  	// var last TPCRE2_SPTR8 at bp+8, 8
 68465  
 68466  	var entry TPCRE2_SPTR8
 68467  	var failrc int32
 68468  	var entrysize int32
 68469  	if int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmatchedby) == PCRE2_MATCHEDBY_DFA_INTERPRETER {
 68470  		return -41
 68471  	}
 68472  	entrysize = Xpcre2_substring_nametable_scan_8(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fcode, stringname,
 68473  		bp, bp+8)
 68474  	if entrysize < 0 {
 68475  		return entrysize
 68476  	}
 68477  	failrc = -54
 68478  	for entry = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* first */)); entry <= *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* last */)); entry += TPCRE2_SPTR8(entrysize) {
 68479  		var n Tuint32_t = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry + 1))))
 68480  		if n < Tuint32_t((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) {
 68481  			if *(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(n*Tuint32_t(2))*8)) != libc.CplUint64(uint64(0)) {
 68482  				return Xpcre2_substring_get_bynumber_8(tls, match_data, n, stringptr, sizeptr)
 68483  			}
 68484  			failrc = -55
 68485  		}
 68486  	}
 68487  	return failrc
 68488  }
 68489  
 68490  // ************************************************
 68491  //
 68492  //      Extract captured string to new memory     *
 68493  //
 68494  
 68495  // This function copies a single captured substring into a piece of new
 68496  // memory.
 68497  //
 68498  // Arguments:
 68499  //   match_data     points to match data
 68500  //   stringnumber   the number of the required substring
 68501  //   stringptr      where to put a pointer to the new memory
 68502  //   sizeptr        where to put the size of the substring
 68503  //
 68504  // Returns:         if successful: 0
 68505  //                  if not successful, a negative error code:
 68506  //                    PCRE2_ERROR_NOMEMORY: failed to get memory
 68507  //                    PCRE2_ERROR_NOSUBSTRING: no such substring
 68508  //                    PCRE2_ERROR_UNAVAILABLE: ovector too small
 68509  //                    PCRE2_ERROR_UNSET: substring is not set
 68510  
 68511  func Xpcre2_substring_get_bynumber_8(tls *libc.TLS, match_data uintptr, stringnumber Tuint32_t, stringptr uintptr, sizeptr uintptr) int32 { /* pcre2_substring.c:209:1: */
 68512  	bp := tls.Alloc(8)
 68513  	defer tls.Free(8)
 68514  
 68515  	var rc int32
 68516  	// var size Tsize_t at bp, 8
 68517  
 68518  	var yield uintptr
 68519  	rc = Xpcre2_substring_length_bynumber_8(tls, match_data, stringnumber, bp)
 68520  	if rc < 0 {
 68521  		return rc
 68522  	}
 68523  	yield = X_pcre2_memctl_malloc_8(tls, uint64(unsafe.Sizeof(Tpcre2_memctl{}))+(*(*Tsize_t)(unsafe.Pointer(bp))+uint64(1))*uint64(DPCRE2_CODE_UNIT_WIDTH), match_data)
 68524  	if yield == uintptr(0) {
 68525  		return -48
 68526  	}
 68527  	yield = yield + uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{})))
 68528  	libc.X__builtin___memcpy_chk(tls, yield, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject+uintptr(*(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(stringnumber*Tuint32_t(2))*8))), *(*Tsize_t)(unsafe.Pointer(bp))*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, yield, 0))
 68529  	*(*TPCRE2_UCHAR8)(unsafe.Pointer(yield + uintptr(*(*Tsize_t)(unsafe.Pointer(bp /* size */))))) = TPCRE2_UCHAR8(0)
 68530  	*(*uintptr)(unsafe.Pointer(stringptr)) = yield
 68531  	*(*Tsize_t)(unsafe.Pointer(sizeptr)) = *(*Tsize_t)(unsafe.Pointer(bp /* size */))
 68532  	return 0
 68533  }
 68534  
 68535  // ************************************************
 68536  //
 68537  //       Free memory obtained by get_substring    *
 68538  //
 68539  
 68540  //
 68541  // Argument:     the result of a previous pcre2_substring_get_byxxx()
 68542  // Returns:      nothing
 68543  
 68544  func Xpcre2_substring_free_8(tls *libc.TLS, string uintptr) { /* pcre2_substring.c:241:1: */
 68545  	if string != uintptr(0) {
 68546  		var memctl uintptr = string - uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{})))
 68547  		(*struct {
 68548  			f func(*libc.TLS, uintptr, uintptr)
 68549  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Ffree})).f(tls, memctl, (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 68550  	}
 68551  }
 68552  
 68553  // ************************************************
 68554  //
 68555  //         Get length of a named substring        *
 68556  //
 68557  
 68558  // This function returns the length of a named captured substring. If the regex
 68559  // permits duplicate names, the first substring that is set is chosen.
 68560  //
 68561  // Arguments:
 68562  //   match_data      pointer to match data
 68563  //   stringname      the name of the required substring
 68564  //   sizeptr         where to put the length
 68565  //
 68566  // Returns:          0 if successful, else a negative error number
 68567  
 68568  func Xpcre2_substring_length_byname_8(tls *libc.TLS, match_data uintptr, stringname TPCRE2_SPTR8, sizeptr uintptr) int32 { /* pcre2_substring.c:268:1: */
 68569  	bp := tls.Alloc(16)
 68570  	defer tls.Free(16)
 68571  
 68572  	// var first TPCRE2_SPTR8 at bp, 8
 68573  
 68574  	// var last TPCRE2_SPTR8 at bp+8, 8
 68575  
 68576  	var entry TPCRE2_SPTR8
 68577  	var failrc int32
 68578  	var entrysize int32
 68579  	if int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmatchedby) == PCRE2_MATCHEDBY_DFA_INTERPRETER {
 68580  		return -41
 68581  	}
 68582  	entrysize = Xpcre2_substring_nametable_scan_8(tls, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fcode, stringname,
 68583  		bp, bp+8)
 68584  	if entrysize < 0 {
 68585  		return entrysize
 68586  	}
 68587  	failrc = -54
 68588  	for entry = *(*TPCRE2_SPTR8)(unsafe.Pointer(bp /* first */)); entry <= *(*TPCRE2_SPTR8)(unsafe.Pointer(bp + 8 /* last */)); entry += TPCRE2_SPTR8(entrysize) {
 68589  		var n Tuint32_t = uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry + 1))))
 68590  		if n < Tuint32_t((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) {
 68591  			if *(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(n*Tuint32_t(2))*8)) != libc.CplUint64(uint64(0)) {
 68592  				return Xpcre2_substring_length_bynumber_8(tls, match_data, n, sizeptr)
 68593  			}
 68594  			failrc = -55
 68595  		}
 68596  	}
 68597  	return failrc
 68598  }
 68599  
 68600  // ************************************************
 68601  //
 68602  //        Get length of a numbered substring      *
 68603  //
 68604  
 68605  // This function returns the length of a captured substring. If the start is
 68606  // beyond the end (which can happen when \K is used in an assertion), it sets the
 68607  // length to zero.
 68608  //
 68609  // Arguments:
 68610  //   match_data      pointer to match data
 68611  //   stringnumber    the number of the required substring
 68612  //   sizeptr         where to put the length, if not NULL
 68613  //
 68614  // Returns:         if successful: 0
 68615  //                  if not successful, a negative error code:
 68616  //                    PCRE2_ERROR_NOSUBSTRING: no such substring
 68617  //                    PCRE2_ERROR_UNAVAILABLE: ovector is too small
 68618  //                    PCRE2_ERROR_UNSET: substring is not set
 68619  
 68620  func Xpcre2_substring_length_bynumber_8(tls *libc.TLS, match_data uintptr, stringnumber Tuint32_t, sizeptr uintptr) int32 { /* pcre2_substring.c:315:1: */
 68621  	var left Tsize_t
 68622  	var right Tsize_t
 68623  	var count int32 = (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc
 68624  	if count == -2 {
 68625  		if stringnumber > Tuint32_t(0) {
 68626  			return -2
 68627  		}
 68628  		count = 0
 68629  	} else if count < 0 {
 68630  		return count
 68631  	} // Match failed
 68632  
 68633  	if int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fmatchedby) != PCRE2_MATCHEDBY_DFA_INTERPRETER {
 68634  		if stringnumber > Tuint32_t((*Tpcre2_real_code_8)(unsafe.Pointer((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fcode)).Ftop_bracket) {
 68635  			return -49
 68636  		}
 68637  		if stringnumber >= Tuint32_t((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) {
 68638  			return -54
 68639  		}
 68640  		if *(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(stringnumber*Tuint32_t(2))*8)) == libc.CplUint64(uint64(0)) {
 68641  			return -55
 68642  		}
 68643  	} else {
 68644  		if stringnumber >= Tuint32_t((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount) {
 68645  			return -54
 68646  		}
 68647  		if count != 0 && stringnumber >= Tuint32_t(count) {
 68648  			return -55
 68649  		}
 68650  	}
 68651  
 68652  	left = *(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(stringnumber*Tuint32_t(2))*8))
 68653  	right = *(*Tsize_t)(unsafe.Pointer(match_data + 80 + uintptr(stringnumber*Tuint32_t(2)+Tuint32_t(1))*8))
 68654  	if sizeptr != uintptr(0) {
 68655  		*(*Tsize_t)(unsafe.Pointer(sizeptr)) = func() uint64 {
 68656  			if left > right {
 68657  				return uint64(0)
 68658  			}
 68659  			return right - left
 68660  		}()
 68661  	}
 68662  	return 0
 68663  }
 68664  
 68665  // ************************************************
 68666  //
 68667  //    Extract all captured strings to new memory  *
 68668  //
 68669  
 68670  // This function gets one chunk of memory and builds a list of pointers and all
 68671  // the captured substrings in it. A NULL pointer is put on the end of the list.
 68672  // The substrings are zero-terminated, but also, if the final argument is
 68673  // non-NULL, a list of lengths is also returned. This allows binary data to be
 68674  // handled.
 68675  //
 68676  // Arguments:
 68677  //   match_data     points to the match data
 68678  //   listptr        set to point to the list of pointers
 68679  //   lengthsptr     set to point to the list of lengths (may be NULL)
 68680  //
 68681  // Returns:         if successful: 0
 68682  //                  if not successful, a negative error code:
 68683  //                    PCRE2_ERROR_NOMEMORY: failed to get memory,
 68684  //                    or a match failure code
 68685  
 68686  func Xpcre2_substring_list_get_8(tls *libc.TLS, match_data uintptr, listptr uintptr, lengthsptr uintptr) int32 { /* pcre2_substring.c:372:1: */
 68687  	var i int32
 68688  	var count int32
 68689  	var count2 int32
 68690  	var size Tsize_t
 68691  	var lensp uintptr
 68692  	var memp uintptr
 68693  	var listp uintptr
 68694  	var sp uintptr
 68695  	var ovector uintptr
 68696  
 68697  	if libc.AssignInt32(&count, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Frc) < 0 {
 68698  		return count
 68699  	} // Match failed
 68700  	if count == 0 {
 68701  		count = int32((*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Foveccount)
 68702  	} // Ovector too small
 68703  
 68704  	count2 = 2 * count
 68705  	ovector = match_data + 80                                                         /* &.ovector */
 68706  	size = uint64(unsafe.Sizeof(Tpcre2_memctl{})) + uint64(unsafe.Sizeof(uintptr(0))) // For final NULL
 68707  	if lengthsptr != uintptr(0) {
 68708  		size = size + uint64(unsafe.Sizeof(Tsize_t(0)))*uint64(count)
 68709  	} // For lengths
 68710  
 68711  	for i = 0; i < count2; i = i + 2 {
 68712  		size = size + (uint64(unsafe.Sizeof(uintptr(0))) + uint64(1*(DPCRE2_CODE_UNIT_WIDTH/8)))
 68713  		if *(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i+1)*8)) > *(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i)*8)) {
 68714  			size = size + (*(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i+1)*8))-*(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i)*8)))*uint64(DPCRE2_CODE_UNIT_WIDTH/8)
 68715  		}
 68716  	}
 68717  
 68718  	memp = X_pcre2_memctl_malloc_8(tls, size, match_data)
 68719  	if memp == uintptr(0) {
 68720  		return -48
 68721  	}
 68722  
 68723  	*(*uintptr)(unsafe.Pointer(listptr)) = libc.AssignUintptr(&listp, memp+uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{}))))
 68724  	lensp = listp + uintptr(uint64(unsafe.Sizeof(uintptr(0)))*uint64(count+1))
 68725  
 68726  	if lengthsptr == uintptr(0) {
 68727  		sp = lensp
 68728  		lensp = uintptr(0)
 68729  	} else {
 68730  		*(*uintptr)(unsafe.Pointer(lengthsptr)) = lensp
 68731  		sp = lensp + uintptr(uint64(unsafe.Sizeof(Tsize_t(0)))*uint64(count))
 68732  	}
 68733  
 68734  	for i = 0; i < count2; i = i + 2 {
 68735  		if *(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i+1)*8)) > *(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i)*8)) {
 68736  			size = *(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i+1)*8)) - *(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i)*8))
 68737  		} else {
 68738  			size = uint64(0)
 68739  		}
 68740  
 68741  		// Size == 0 includes the case when the capture is unset. Avoid adding
 68742  		//   PCRE2_UNSET to match_data->subject because it overflows, even though with
 68743  		//   zero size calling memcpy() is harmless.
 68744  
 68745  		if size != uint64(0) {
 68746  			libc.X__builtin___memcpy_chk(tls, sp, (*Tpcre2_match_data_8)(unsafe.Pointer(match_data)).Fsubject+uintptr(*(*Tsize_t)(unsafe.Pointer(ovector + uintptr(i)*8))), size*uint64(DPCRE2_CODE_UNIT_WIDTH/8), libc.X__builtin_object_size(tls, sp, 0))
 68747  		}
 68748  		*(*uintptr)(unsafe.Pointer(libc.PostIncUintptr(&listp, 8))) = sp
 68749  		if lensp != uintptr(0) {
 68750  			*(*Tsize_t)(unsafe.Pointer(libc.PostIncUintptr(&lensp, 8))) = size
 68751  		}
 68752  		sp += uintptr(size)
 68753  		*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&sp, 1))) = TPCRE2_UCHAR8(0)
 68754  	}
 68755  
 68756  	*(*uintptr)(unsafe.Pointer(listp)) = uintptr(0)
 68757  	return 0
 68758  }
 68759  
 68760  // ************************************************
 68761  //
 68762  //   Free memory obtained by substring_list_get   *
 68763  //
 68764  
 68765  //
 68766  // Argument:     the result of a previous pcre2_substring_list_get()
 68767  // Returns:      nothing
 68768  
 68769  func Xpcre2_substring_list_free_8(tls *libc.TLS, list uintptr) { /* pcre2_substring.c:445:1: */
 68770  	if list != uintptr(0) {
 68771  		var memctl uintptr = list - uintptr(uint64(unsafe.Sizeof(Tpcre2_memctl{})))
 68772  		(*struct {
 68773  			f func(*libc.TLS, uintptr, uintptr)
 68774  		})(unsafe.Pointer(&struct{ uintptr }{(*Tpcre2_memctl)(unsafe.Pointer(memctl)).Ffree})).f(tls, memctl, (*Tpcre2_memctl)(unsafe.Pointer(memctl)).Fmemory_data)
 68775  	}
 68776  }
 68777  
 68778  // ************************************************
 68779  //
 68780  //     Find (multiple) entries for named string   *
 68781  //
 68782  
 68783  // This function scans the nametable for a given name, using binary chop. It
 68784  // returns either two pointers to the entries in the table, or, if no pointers are
 68785  // given, the number of a unique group with the given name. If duplicate names are
 68786  // permitted, and the name is not unique, an error is generated.
 68787  //
 68788  // Arguments:
 68789  //   code        the compiled regex
 68790  //   stringname  the name whose entries required
 68791  //   firstptr    where to put the pointer to the first entry
 68792  //   lastptr     where to put the pointer to the last entry
 68793  //
 68794  // Returns:      PCRE2_ERROR_NOSUBSTRING if the name is not found
 68795  //               otherwise, if firstptr and lastptr are NULL:
 68796  //                 a group number for a unique substring
 68797  //                 else PCRE2_ERROR_NOUNIQUESUBSTRING
 68798  //               otherwise:
 68799  //                 the length of each entry, having set firstptr and lastptr
 68800  
 68801  func Xpcre2_substring_nametable_scan_8(tls *libc.TLS, code uintptr, stringname TPCRE2_SPTR8, firstptr uintptr, lastptr uintptr) int32 { /* pcre2_substring.c:480:1: */
 68802  	var bot Tuint16_t = Tuint16_t(0)
 68803  	var top Tuint16_t = (*Tpcre2_code_8)(unsafe.Pointer(code)).Fname_count
 68804  	var entrysize Tuint16_t = (*Tpcre2_code_8)(unsafe.Pointer(code)).Fname_entry_size
 68805  	var nametable TPCRE2_SPTR8 = code + uintptr(uint64(unsafe.Sizeof(Tpcre2_real_code_8{})))
 68806  
 68807  	for int32(top) > int32(bot) {
 68808  		var mid Tuint16_t = Tuint16_t((int32(top) + int32(bot)) / 2)
 68809  		var entry TPCRE2_SPTR8 = nametable + uintptr(int32(entrysize)*int32(mid))
 68810  		var c int32 = X_pcre2_strcmp_8(tls, stringname, entry+uintptr(DIMM2_SIZE))
 68811  		if c == 0 {
 68812  			var first TPCRE2_SPTR8
 68813  			var last TPCRE2_SPTR8
 68814  			var lastentry TPCRE2_SPTR8
 68815  			lastentry = nametable + uintptr(int32(entrysize)*(int32((*Tpcre2_code_8)(unsafe.Pointer(code)).Fname_count)-1))
 68816  			first = libc.AssignUintptr(&last, entry)
 68817  			for first > nametable {
 68818  				if X_pcre2_strcmp_8(tls, stringname, first-uintptr(entrysize)+uintptr(DIMM2_SIZE)) != 0 {
 68819  					break
 68820  				}
 68821  				first -= TPCRE2_SPTR8(entrysize)
 68822  			}
 68823  			for last < lastentry {
 68824  				if X_pcre2_strcmp_8(tls, stringname, last+uintptr(entrysize)+uintptr(DIMM2_SIZE)) != 0 {
 68825  					break
 68826  				}
 68827  				last += TPCRE2_SPTR8(entrysize)
 68828  			}
 68829  			if firstptr == uintptr(0) {
 68830  				if first == last {
 68831  					return int32(uint32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry)))<<8 | int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(entry + 1)))))
 68832  				}
 68833  				return -50
 68834  			}
 68835  			*(*TPCRE2_SPTR8)(unsafe.Pointer(firstptr)) = first
 68836  			*(*TPCRE2_SPTR8)(unsafe.Pointer(lastptr)) = last
 68837  			return int32(entrysize)
 68838  		}
 68839  		if c > 0 {
 68840  			bot = Tuint16_t(int32(mid) + 1)
 68841  		} else {
 68842  			top = mid
 68843  		}
 68844  	}
 68845  
 68846  	return -49
 68847  }
 68848  
 68849  // ************************************************
 68850  //
 68851  //           Find number for named string         *
 68852  //
 68853  
 68854  // This function is a convenience wrapper for pcre2_substring_nametable_scan()
 68855  // when it is known that names are unique. If there are duplicate names, it is not
 68856  // defined which number is returned.
 68857  //
 68858  // Arguments:
 68859  //   code        the compiled regex
 68860  //   stringname  the name whose number is required
 68861  //
 68862  // Returns:      the number of the named parenthesis, or a negative number
 68863  //                 PCRE2_ERROR_NOSUBSTRING if not found
 68864  //                 PCRE2_ERROR_NOUNIQUESUBSTRING if not unique
 68865  
 68866  func Xpcre2_substring_number_from_name_8(tls *libc.TLS, code uintptr, stringname TPCRE2_SPTR8) int32 { /* pcre2_substring.c:541:1: */
 68867  	return Xpcre2_substring_nametable_scan_8(tls, code, stringname, uintptr(0), uintptr(0))
 68868  }
 68869  
 68870  // End of pcre2_substring.c
 68871  
 68872  // This function is needed only when memmove() is not available.
 68873  
 68874  // End of pcre2_internal.h
 68875  
 68876  // Table of sizes for the fixed-length opcodes. It's defined in a macro so that
 68877  // the definition is next to the definition of the opcodes in pcre2_internal.h.
 68878  // This is mode-dependent, so it is skipped when this file is included by
 68879  // pcre2test.
 68880  
 68881  var X_pcre2_OP_lengths_8 = [168]Tuint8_t{Tuint8_t(1) /* End                                    */, Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* \A, \G, \K, \B, \b                     */, Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* \D, \d, \S, \s, \W, \w                 */, Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* Any, AllAny, Anybyte                   */, Tuint8_t(3), Tuint8_t(3) /* \P, \p                                 */, Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* \R, \H, \h, \V, \v                     */, Tuint8_t(1) /* \X                                     */, Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* \Z, \z, $, $M ^, ^M                    */, Tuint8_t(2) /* Char  - the minimum length             */, Tuint8_t(2) /* Chari  - the minimum length            */, Tuint8_t(2) /* not                                    */, Tuint8_t(2) /* noti                                   */ /* Positive single-char repeats                             ** These are */, Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2) /* *, *?, +, +?, ?, ??       ** minima in */, Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2) /* *I, *?I, +I, +?I, ?I, ??I ** UTF-8     */, Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2) /* NOT *, *?, +, +?, ?, ??                */, Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2) /* NOT *I, *?I, +I, +?I, ?I, ??I          */, Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2) /* Type *, *?, +, +?, ?, ??               */, Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2 + DIMM2_SIZE), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* *, *?, +, +?, ?, ??                    */, Tuint8_t(1 + 2*DIMM2_SIZE), Tuint8_t(1 + 2*DIMM2_SIZE), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1 + 2*DIMM2_SIZE), uint8(uint64(1) + uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0)))), uint8(uint64(1) + uint64(32)/uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0)))), Tuint8_t(0) /* XCLASS - variable length               */, Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + 2*DIMM2_SIZE), Tuint8_t(1 + 2*DIMM2_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + 2*DLINK_SIZE + 1), Tuint8_t(0) /* CALLOUT_STR - variable length          */, Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE + DIMM2_SIZE), Tuint8_t(1 + DLINK_SIZE + DIMM2_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DLINK_SIZE + DIMM2_SIZE), Tuint8_t(1 + DLINK_SIZE + DIMM2_SIZE), Tuint8_t(1 + DLINK_SIZE), Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + 2*DIMM2_SIZE), Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1 + 2*DIMM2_SIZE), Tuint8_t(1), Tuint8_t(1) /* FALSE, TRUE                            */, Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* BRAZERO, BRAMINZERO, BRAPOSZERO        */, Tuint8_t(3), Tuint8_t(1), Tuint8_t(3) /* MARK, PRUNE, PRUNE_ARG                 */, Tuint8_t(1), Tuint8_t(3) /* SKIP, SKIP_ARG                         */, Tuint8_t(1), Tuint8_t(3) /* THEN, THEN_ARG                         */, Tuint8_t(1), Tuint8_t(3) /* COMMIT, COMMIT_ARG                     */, Tuint8_t(1), Tuint8_t(1), Tuint8_t(1) /* FAIL, ACCEPT, ASSERT_ACCEPT            */, Tuint8_t(1 + DIMM2_SIZE), Tuint8_t(1) /* CLOSE, SKIPZERO                        */, Tuint8_t(1)} /* pcre2_tables.c:60:15 */
 68882  
 68883  // Tables of horizontal and vertical whitespace characters, suitable for
 68884  // adding to classes.
 68885  
 68886  var X_pcre2_hspace_list_8 = [20]Tuint32_t{Tuint32_t('\011'), Tuint32_t('\040'), libc.Uint32FromUint8(libc.Uint8FromInt32(160)), Tuint32_t(0x1680), Tuint32_t(0x180e), Tuint32_t(0x2000), Tuint32_t(0x2001), Tuint32_t(0x2002), Tuint32_t(0x2003), Tuint32_t(0x2004), Tuint32_t(0x2005), Tuint32_t(0x2006), Tuint32_t(0x2007), Tuint32_t(0x2008), Tuint32_t(0x2009), Tuint32_t(0x200A), Tuint32_t(0x202f), Tuint32_t(0x205f), Tuint32_t(0x3000), DNOTACHAR} /* pcre2_tables.c:66:16 */
 68887  var X_pcre2_vspace_list_8 = [8]Tuint32_t{Tuint32_t('\012'), Tuint32_t('\013'), Tuint32_t('\014'), Tuint32_t('\015'), libc.Uint32FromUint8(libc.Uint8FromInt32(133)), Tuint32_t(0x2028), Tuint32_t(0x2029), DNOTACHAR}                                                                                                                                                                                                                                      /* pcre2_tables.c:67:16 */
 68888  
 68889  // These tables are the pairs of delimiters that are valid for callout string
 68890  // arguments. For each starting delimiter there must be a matching ending
 68891  // delimiter, which in fact is different only for bracket-like delimiters.
 68892  
 68893  var X_pcre2_callout_start_delims_8 = [9]Tuint32_t{
 68894  	Tuint32_t('\140'), Tuint32_t('\047'), Tuint32_t('\042'),
 68895  	Tuint32_t('\136'), Tuint32_t('\045'), Tuint32_t('\043'),
 68896  	Tuint32_t('\044'), Tuint32_t('\173'), Tuint32_t(0)} /* pcre2_tables.c:73:16 */
 68897  
 68898  var X_pcre2_callout_end_delims_8 = [9]Tuint32_t{
 68899  	Tuint32_t('\140'), Tuint32_t('\047'), Tuint32_t('\042'),
 68900  	Tuint32_t('\136'), Tuint32_t('\045'), Tuint32_t('\043'),
 68901  	Tuint32_t('\044'), Tuint32_t('\175'), Tuint32_t(0)} /* pcre2_tables.c:78:16 */
 68902  
 68903  // ************************************************
 68904  //
 68905  //           Tables for UTF-8 support             *
 68906  //
 68907  
 68908  // These tables are required by pcre2test in 16- or 32-bit mode, as well
 68909  // as for the library in 8-bit mode, because pcre2test uses UTF-8 internally for
 68910  // handling wide characters.
 68911  
 68912  // These are the breakpoints for different numbers of bytes in a UTF-8
 68913  // character.
 68914  
 68915  var X_pcre2_utf8_table1 = [6]int32{0x7f, 0x7ff, 0xffff, 0x1fffff, 0x3ffffff, 0x7fffffff} /* pcre2_tables.c:100:11 */
 68916  
 68917  var X_pcre2_utf8_table1_size int32 = int32(uint64(unsafe.Sizeof(X_pcre2_utf8_table1)) / uint64(unsafe.Sizeof(int32(0)))) /* pcre2_tables.c:103:11 */
 68918  
 68919  // These are the indicator bits and the mask for the data bits to set in the
 68920  // first byte of a character, indexed by the number of additional bytes.
 68921  
 68922  var X_pcre2_utf8_table2 = [6]int32{0, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc}    /* pcre2_tables.c:108:11 */
 68923  var X_pcre2_utf8_table3 = [6]int32{0xff, 0x1f, 0x0f, 0x07, 0x03, 0x01} /* pcre2_tables.c:109:11 */
 68924  
 68925  // Table of the number of extra bytes, indexed by the first byte masked with
 68926  // 0x3f. The highest number for a valid UTF-8 first byte is in fact 0x3d.
 68927  
 68928  var X_pcre2_utf8_table4 = [64]Tuint8_t{
 68929  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1),
 68930  	Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1), Tuint8_t(1),
 68931  	Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2), Tuint8_t(2),
 68932  	Tuint8_t(3), Tuint8_t(3), Tuint8_t(3), Tuint8_t(3), Tuint8_t(3), Tuint8_t(3), Tuint8_t(3), Tuint8_t(3), Tuint8_t(4), Tuint8_t(4), Tuint8_t(4), Tuint8_t(4), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5), Tuint8_t(5)} /* pcre2_tables.c:114:15 */
 68933  
 68934  // Tables concerned with Unicode properties are relevant only when Unicode
 68935  // support is enabled. See also the pcre2_ucptables.c file, which is generated by
 68936  // a Python script from Unicode data files.
 68937  
 68938  // Table to translate from particular type value to the general value.
 68939  
 68940  var X_pcre2_ucp_gentype_8 = [30]Tuint32_t{
 68941  	ucp_C, ucp_C, ucp_C, ucp_C, ucp_C, // Cc, Cf, Cn, Co, Cs
 68942  	ucp_L, ucp_L, ucp_L, ucp_L, ucp_L, // Ll, Lu, Lm, Lo, Lt
 68943  	ucp_M, ucp_M, ucp_M, // Mc, Me, Mn
 68944  	ucp_N, ucp_N, ucp_N, // Nd, Nl, No
 68945  	ucp_P, ucp_P, ucp_P, ucp_P, ucp_P, // Pc, Pd, Pe, Pf, Pi
 68946  	ucp_P, ucp_P, // Ps, Po
 68947  	ucp_S, ucp_S, ucp_S, ucp_S, // Sc, Sk, Sm, So
 68948  	ucp_Z, ucp_Z, ucp_Z, // Zl, Zp, Zs
 68949  } /* pcre2_tables.c:130:16 */
 68950  
 68951  // This table encodes the rules for finding the end of an extended grapheme
 68952  // cluster. Every code point has a grapheme break property which is one of the
 68953  // ucp_gbXX values defined in pcre2_ucp.h. These changed between Unicode versions
 68954  // 10 and 11. The 2-dimensional table is indexed by the properties of two adjacent
 68955  // code points. The left property selects a word from the table, and the right
 68956  // property selects a bit from that word like this:
 68957  //
 68958  //   PRIV(ucp_gbtable)[left-property] & (1u << right-property)
 68959  //
 68960  // The value is non-zero if a grapheme break is NOT permitted between the relevant
 68961  // two code points. The breaking rules are as follows:
 68962  //
 68963  // 1. Break at the start and end of text (pretty obviously).
 68964  //
 68965  // 2. Do not break between a CR and LF; otherwise, break before and after
 68966  //    controls.
 68967  //
 68968  // 3. Do not break Hangul syllable sequences, the rules for which are:
 68969  //
 68970  //     L may be followed by L, V, LV or LVT
 68971  //     LV or V may be followed by V or T
 68972  //     LVT or T may be followed by T
 68973  //
 68974  // 4. Do not break before extending characters or zero-width-joiner (ZWJ).
 68975  //
 68976  // The following rules are only for extended grapheme clusters (but that's what we
 68977  // are implementing).
 68978  //
 68979  // 5. Do not break before SpacingMarks.
 68980  //
 68981  // 6. Do not break after Prepend characters.
 68982  //
 68983  // 7. Do not break within emoji modifier sequences or emoji zwj sequences. That
 68984  //    is, do not break between characters with the Extended_Pictographic property.
 68985  //    Extend and ZWJ characters are allowed between the characters; this cannot be
 68986  //    represented in this table, the code has to deal with it.
 68987  //
 68988  // 8. Do not break within emoji flag sequences. That is, do not break between
 68989  //    regional indicator (RI) symbols if there are an odd number of RI characters
 68990  //    before the break point. This table encodes "join RI characters"; the code
 68991  //    has to deal with checking for previous adjoining RIs.
 68992  //
 68993  // 9. Otherwise, break everywhere.
 68994  
 68995  var X_pcre2_ucp_gbtable_8 = [15]Tuint32_t{
 68996  	uint32(1) << ucp_gbLF,
 68997  	Tuint32_t(0), //  1 LF
 68998  	Tuint32_t(0), //  2 Control
 68999  	Tuint32_t(int32(1)<<ucp_gbExtend | int32(1)<<ucp_gbSpacingMark | int32(1)<<ucp_gbZWJ),
 69000  	uint32(int32(1)<<ucp_gbExtend|int32(1)<<ucp_gbSpacingMark|int32(1)<<ucp_gbZWJ) | uint32(1)<<ucp_gbPrepend | uint32(1)<<ucp_gbL | uint32(1)<<ucp_gbV | uint32(1)<<ucp_gbT | uint32(1)<<ucp_gbLV | uint32(1)<<ucp_gbLVT | uint32(1)<<ucp_gbOther | uint32(1)<<ucp_gbRegional_Indicator,
 69001  	Tuint32_t(int32(1)<<ucp_gbExtend | int32(1)<<ucp_gbSpacingMark | int32(1)<<ucp_gbZWJ),
 69002  	uint32(int32(1)<<ucp_gbExtend|int32(1)<<ucp_gbSpacingMark|int32(1)<<ucp_gbZWJ) | uint32(1)<<ucp_gbL | uint32(1)<<ucp_gbV | uint32(1)<<ucp_gbLV | uint32(1)<<ucp_gbLVT,
 69003  	uint32(int32(1)<<ucp_gbExtend|int32(1)<<ucp_gbSpacingMark|int32(1)<<ucp_gbZWJ) | uint32(1)<<ucp_gbV | uint32(1)<<ucp_gbT,
 69004  	uint32(int32(1)<<ucp_gbExtend|int32(1)<<ucp_gbSpacingMark|int32(1)<<ucp_gbZWJ) | uint32(1)<<ucp_gbT,
 69005  	uint32(int32(1)<<ucp_gbExtend|int32(1)<<ucp_gbSpacingMark|int32(1)<<ucp_gbZWJ) | uint32(1)<<ucp_gbV | uint32(1)<<ucp_gbT,
 69006  	uint32(int32(1)<<ucp_gbExtend|int32(1)<<ucp_gbSpacingMark|int32(1)<<ucp_gbZWJ) | uint32(1)<<ucp_gbT,
 69007  	uint32(1) << ucp_gbRegional_Indicator,
 69008  	Tuint32_t(int32(1)<<ucp_gbExtend | int32(1)<<ucp_gbSpacingMark | int32(1)<<ucp_gbZWJ),
 69009  	Tuint32_t(int32(1)<<ucp_gbExtend | int32(1)<<ucp_gbSpacingMark | int32(1)<<ucp_gbZWJ),
 69010  	uint32(int32(1)<<ucp_gbExtend|int32(1)<<ucp_gbSpacingMark|int32(1)<<ucp_gbZWJ) | uint32(1)<<ucp_gbExtended_Pictographic,
 69011  } /* pcre2_tables.c:188:16 */
 69012  
 69013  // Finally, include the tables that are auto-generated from the Unicode data
 69014  // files.
 69015  
 69016  // ************************************************
 69017  //
 69018  //      Perl-Compatible Regular Expressions       *
 69019  //
 69020  
 69021  // PCRE is a library of functions to support regular expressions whose syntax
 69022  // and semantics are as close as possible to those of the Perl 5 language.
 69023  //
 69024  //                        Written by Philip Hazel
 69025  //      Original API code Copyright (c) 1997-2012 University of Cambridge
 69026  //           New API code Copyright (c) 2016-2022 University of Cambridge
 69027  //
 69028  // This module is auto-generated from Unicode data files. DO NOT EDIT MANUALLY!
 69029  // Instead, modify the maint/GenerateUcpTables.py script and run it to generate
 69030  // a new version of this code.
 69031  //
 69032  // -----------------------------------------------------------------------------
 69033  // Redistribution and use in source and binary forms, with or without
 69034  // modification, are permitted provided that the following conditions are met:
 69035  //
 69036  //     * Redistributions of source code must retain the above copyright notice,
 69037  //       this list of conditions and the following disclaimer.
 69038  //
 69039  //     * Redistributions in binary form must reproduce the above copyright
 69040  //       notice, this list of conditions and the following disclaimer in the
 69041  //       documentation and/or other materials provided with the distribution.
 69042  //
 69043  //     * Neither the name of the University of Cambridge nor the names of its
 69044  //       contributors may be used to endorse or promote products derived from
 69045  //       this software without specific prior written permission.
 69046  //
 69047  // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 69048  // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 69049  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 69050  // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 69051  // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 69052  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 69053  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 69054  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 69055  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 69056  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 69057  // POSSIBILITY OF SUCH DAMAGE.
 69058  // -----------------------------------------------------------------------------
 69059  
 69060  // The PRIV(utt)[] table below translates Unicode property names into type and
 69061  // code values. It is searched by binary chop, so must be in collating sequence of
 69062  // name. Originally, the table contained pointers to the name strings in the first
 69063  // field of each entry. However, that leads to a large number of relocations when
 69064  // a shared library is dynamically loaded. A significant reduction is made by
 69065  // putting all the names into a single, large string and using offsets instead.
 69066  // All letters are lower cased, and underscores are removed, in accordance with
 69067  // the "loose matching" rules that Unicode advises and Perl uses.
 69068  
 69069  var X_pcre2_utt_names_8 = *(*[3569]int8)(unsafe.Pointer(ts + 7683)) /* pcre2_ucptables.c:543:12 */
 69070  
 69071  var X_pcre2_utt_8 = [486]Tucp_type_table{
 69072  	{Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Adlam},
 69073  	{Fname_offset: Tuint16_t(6), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Adlam},
 69074  	{Fname_offset: Tuint16_t(11), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Caucasian_Albanian},
 69075  	{Fname_offset: Tuint16_t(16), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_ASCII_Hex_Digit},
 69076  	{Fname_offset: Tuint16_t(21), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ahom},
 69077  	{Fname_offset: Tuint16_t(26), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Alphabetic},
 69078  	{Fname_offset: Tuint16_t(32), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Alphabetic},
 69079  	{Fname_offset: Tuint16_t(43), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Anatolian_Hieroglyphs},
 69080  	{Fname_offset: Tuint16_t(64)},
 69081  	{Fname_offset: Tuint16_t(68), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Arabic},
 69082  	{Fname_offset: Tuint16_t(73), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Arabic},
 69083  	{Fname_offset: Tuint16_t(80), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Armenian},
 69084  	{Fname_offset: Tuint16_t(89), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Imperial_Aramaic},
 69085  	{Fname_offset: Tuint16_t(94), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Armenian},
 69086  	{Fname_offset: Tuint16_t(99), Ftype: Tuint16_t(DPT_BOOL)},
 69087  	{Fname_offset: Tuint16_t(105), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_ASCII_Hex_Digit},
 69088  	{Fname_offset: Tuint16_t(119), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Avestan},
 69089  	{Fname_offset: Tuint16_t(127), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Avestan},
 69090  	{Fname_offset: Tuint16_t(132), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Balinese},
 69091  	{Fname_offset: Tuint16_t(137), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Balinese},
 69092  	{Fname_offset: Tuint16_t(146), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Bamum},
 69093  	{Fname_offset: Tuint16_t(151), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Bamum},
 69094  	{Fname_offset: Tuint16_t(157), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Bassa_Vah},
 69095  	{Fname_offset: Tuint16_t(162), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Bassa_Vah},
 69096  	{Fname_offset: Tuint16_t(171), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Batak},
 69097  	{Fname_offset: Tuint16_t(177), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Batak},
 69098  	{Fname_offset: Tuint16_t(182), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Bengali},
 69099  	{Fname_offset: Tuint16_t(187), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Bengali},
 69100  	{Fname_offset: Tuint16_t(195), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Bhaiksuki},
 69101  	{Fname_offset: Tuint16_t(205), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Bhaiksuki},
 69102  	{Fname_offset: Tuint16_t(210), Ftype: Tuint16_t(DPT_BIDICL)},
 69103  	{Fname_offset: Tuint16_t(217), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiAN},
 69104  	{Fname_offset: Tuint16_t(224), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiB},
 69105  	{Fname_offset: Tuint16_t(230), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiBN},
 69106  	{Fname_offset: Tuint16_t(237), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Bidi_Control},
 69107  	{Fname_offset: Tuint16_t(243), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Bidi_Control},
 69108  	{Fname_offset: Tuint16_t(255), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiCS},
 69109  	{Fname_offset: Tuint16_t(262), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiEN},
 69110  	{Fname_offset: Tuint16_t(269), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiES},
 69111  	{Fname_offset: Tuint16_t(276), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiET},
 69112  	{Fname_offset: Tuint16_t(283), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiFSI},
 69113  	{Fname_offset: Tuint16_t(291), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiL},
 69114  	{Fname_offset: Tuint16_t(297), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiLRE},
 69115  	{Fname_offset: Tuint16_t(305), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiLRI},
 69116  	{Fname_offset: Tuint16_t(313), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiLRO},
 69117  	{Fname_offset: Tuint16_t(321), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Bidi_Mirrored},
 69118  	{Fname_offset: Tuint16_t(327), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Bidi_Mirrored},
 69119  	{Fname_offset: Tuint16_t(340), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiNSM},
 69120  	{Fname_offset: Tuint16_t(348), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiON},
 69121  	{Fname_offset: Tuint16_t(355), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiPDF},
 69122  	{Fname_offset: Tuint16_t(363), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiPDI},
 69123  	{Fname_offset: Tuint16_t(371), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiR},
 69124  	{Fname_offset: Tuint16_t(377), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiRLE},
 69125  	{Fname_offset: Tuint16_t(385), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiRLI},
 69126  	{Fname_offset: Tuint16_t(393), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiRLO},
 69127  	{Fname_offset: Tuint16_t(401), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiS},
 69128  	{Fname_offset: Tuint16_t(407), Ftype: Tuint16_t(DPT_BIDICL), Fvalue: ucp_bidiWS},
 69129  	{Fname_offset: Tuint16_t(414), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Bopomofo},
 69130  	{Fname_offset: Tuint16_t(419), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Bopomofo},
 69131  	{Fname_offset: Tuint16_t(428), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Brahmi},
 69132  	{Fname_offset: Tuint16_t(433), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Brahmi},
 69133  	{Fname_offset: Tuint16_t(440), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Braille},
 69134  	{Fname_offset: Tuint16_t(445), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Braille},
 69135  	{Fname_offset: Tuint16_t(453), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Buginese},
 69136  	{Fname_offset: Tuint16_t(458), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Buginese},
 69137  	{Fname_offset: Tuint16_t(467), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Buhid},
 69138  	{Fname_offset: Tuint16_t(472), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Buhid},
 69139  	{Fname_offset: Tuint16_t(478), Ftype: Tuint16_t(DPT_GC)},
 69140  	{Fname_offset: Tuint16_t(480), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Chakma},
 69141  	{Fname_offset: Tuint16_t(485), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Canadian_Aboriginal},
 69142  	{Fname_offset: Tuint16_t(504), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Canadian_Aboriginal},
 69143  	{Fname_offset: Tuint16_t(509), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Carian},
 69144  	{Fname_offset: Tuint16_t(514), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Carian},
 69145  	{Fname_offset: Tuint16_t(521), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Cased},
 69146  	{Fname_offset: Tuint16_t(527), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Case_Ignorable},
 69147  	{Fname_offset: Tuint16_t(541), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Caucasian_Albanian},
 69148  	{Fname_offset: Tuint16_t(559), Ftype: Tuint16_t(DPT_PC)},
 69149  	{Fname_offset: Tuint16_t(562), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Cf},
 69150  	{Fname_offset: Tuint16_t(565), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Chakma},
 69151  	{Fname_offset: Tuint16_t(572), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Cham},
 69152  	{Fname_offset: Tuint16_t(577), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Casefolded},
 69153  	{Fname_offset: Tuint16_t(599), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Casemapped},
 69154  	{Fname_offset: Tuint16_t(621), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Lowercased},
 69155  	{Fname_offset: Tuint16_t(643), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Titlecased},
 69156  	{Fname_offset: Tuint16_t(665), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Uppercased},
 69157  	{Fname_offset: Tuint16_t(687), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Cherokee},
 69158  	{Fname_offset: Tuint16_t(692), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Cherokee},
 69159  	{Fname_offset: Tuint16_t(701), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Chorasmian},
 69160  	{Fname_offset: Tuint16_t(712), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Chorasmian},
 69161  	{Fname_offset: Tuint16_t(717), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Case_Ignorable},
 69162  	{Fname_offset: Tuint16_t(720), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Cn},
 69163  	{Fname_offset: Tuint16_t(723), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Co},
 69164  	{Fname_offset: Tuint16_t(726), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Common},
 69165  	{Fname_offset: Tuint16_t(733), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Coptic},
 69166  	{Fname_offset: Tuint16_t(738), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Coptic},
 69167  	{Fname_offset: Tuint16_t(745), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Cypro_Minoan},
 69168  	{Fname_offset: Tuint16_t(750), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Cypriot},
 69169  	{Fname_offset: Tuint16_t(755), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Cs},
 69170  	{Fname_offset: Tuint16_t(758), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Cuneiform},
 69171  	{Fname_offset: Tuint16_t(768), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Casefolded},
 69172  	{Fname_offset: Tuint16_t(773), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Casemapped},
 69173  	{Fname_offset: Tuint16_t(778), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Lowercased},
 69174  	{Fname_offset: Tuint16_t(782), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Titlecased},
 69175  	{Fname_offset: Tuint16_t(786), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Changes_When_Uppercased},
 69176  	{Fname_offset: Tuint16_t(790), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Cypriot},
 69177  	{Fname_offset: Tuint16_t(798), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Cypro_Minoan},
 69178  	{Fname_offset: Tuint16_t(810), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Cyrillic},
 69179  	{Fname_offset: Tuint16_t(819), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Cyrillic},
 69180  	{Fname_offset: Tuint16_t(824), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Dash},
 69181  	{Fname_offset: Tuint16_t(829), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Default_Ignorable_Code_Point},
 69182  	{Fname_offset: Tuint16_t(855), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Deprecated},
 69183  	{Fname_offset: Tuint16_t(859), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Deprecated},
 69184  	{Fname_offset: Tuint16_t(870), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Deseret},
 69185  	{Fname_offset: Tuint16_t(878), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Devanagari},
 69186  	{Fname_offset: Tuint16_t(883), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Devanagari},
 69187  	{Fname_offset: Tuint16_t(894), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Default_Ignorable_Code_Point},
 69188  	{Fname_offset: Tuint16_t(897), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Diacritic},
 69189  	{Fname_offset: Tuint16_t(901), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Diacritic},
 69190  	{Fname_offset: Tuint16_t(911), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Dives_Akuru},
 69191  	{Fname_offset: Tuint16_t(916), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Dives_Akuru},
 69192  	{Fname_offset: Tuint16_t(927), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Dogra},
 69193  	{Fname_offset: Tuint16_t(932), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Dogra},
 69194  	{Fname_offset: Tuint16_t(938), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Deseret},
 69195  	{Fname_offset: Tuint16_t(943), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Duployan},
 69196  	{Fname_offset: Tuint16_t(948), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Duployan},
 69197  	{Fname_offset: Tuint16_t(957), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Modifier_Base},
 69198  	{Fname_offset: Tuint16_t(963), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Component},
 69199  	{Fname_offset: Tuint16_t(969), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Egyptian_Hieroglyphs},
 69200  	{Fname_offset: Tuint16_t(974), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Egyptian_Hieroglyphs},
 69201  	{Fname_offset: Tuint16_t(994), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Elbasan},
 69202  	{Fname_offset: Tuint16_t(999), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Elbasan},
 69203  	{Fname_offset: Tuint16_t(1007), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Elymaic},
 69204  	{Fname_offset: Tuint16_t(1012), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Elymaic},
 69205  	{Fname_offset: Tuint16_t(1020), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Modifier},
 69206  	{Fname_offset: Tuint16_t(1025), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji},
 69207  	{Fname_offset: Tuint16_t(1031), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Component},
 69208  	{Fname_offset: Tuint16_t(1046), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Modifier},
 69209  	{Fname_offset: Tuint16_t(1060), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Modifier_Base},
 69210  	{Fname_offset: Tuint16_t(1078), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Presentation},
 69211  	{Fname_offset: Tuint16_t(1096), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Emoji_Presentation},
 69212  	{Fname_offset: Tuint16_t(1102), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ethiopic},
 69213  	{Fname_offset: Tuint16_t(1107), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ethiopic},
 69214  	{Fname_offset: Tuint16_t(1116), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Extender},
 69215  	{Fname_offset: Tuint16_t(1120), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Extended_Pictographic},
 69216  	{Fname_offset: Tuint16_t(1141), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Extender},
 69217  	{Fname_offset: Tuint16_t(1150), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Extended_Pictographic},
 69218  	{Fname_offset: Tuint16_t(1158), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Georgian},
 69219  	{Fname_offset: Tuint16_t(1163), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Georgian},
 69220  	{Fname_offset: Tuint16_t(1172), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Glagolitic},
 69221  	{Fname_offset: Tuint16_t(1177), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Glagolitic},
 69222  	{Fname_offset: Tuint16_t(1188), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Gunjala_Gondi},
 69223  	{Fname_offset: Tuint16_t(1193), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Masaram_Gondi},
 69224  	{Fname_offset: Tuint16_t(1198), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Gothic},
 69225  	{Fname_offset: Tuint16_t(1203), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Gothic},
 69226  	{Fname_offset: Tuint16_t(1210), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Grantha},
 69227  	{Fname_offset: Tuint16_t(1215), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Grantha},
 69228  	{Fname_offset: Tuint16_t(1223), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Grapheme_Base},
 69229  	{Fname_offset: Tuint16_t(1236), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Grapheme_Extend},
 69230  	{Fname_offset: Tuint16_t(1251), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Grapheme_Link},
 69231  	{Fname_offset: Tuint16_t(1264), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Grapheme_Base},
 69232  	{Fname_offset: Tuint16_t(1271), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Greek},
 69233  	{Fname_offset: Tuint16_t(1277), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Greek},
 69234  	{Fname_offset: Tuint16_t(1282), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Grapheme_Extend},
 69235  	{Fname_offset: Tuint16_t(1288), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Grapheme_Link},
 69236  	{Fname_offset: Tuint16_t(1295), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Gujarati},
 69237  	{Fname_offset: Tuint16_t(1304), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Gujarati},
 69238  	{Fname_offset: Tuint16_t(1309), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Gunjala_Gondi},
 69239  	{Fname_offset: Tuint16_t(1322), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Gurmukhi},
 69240  	{Fname_offset: Tuint16_t(1331), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Gurmukhi},
 69241  	{Fname_offset: Tuint16_t(1336), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Han},
 69242  	{Fname_offset: Tuint16_t(1340), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hangul},
 69243  	{Fname_offset: Tuint16_t(1345), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hangul},
 69244  	{Fname_offset: Tuint16_t(1352), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Han},
 69245  	{Fname_offset: Tuint16_t(1357), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hanifi_Rohingya},
 69246  	{Fname_offset: Tuint16_t(1372), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hanunoo},
 69247  	{Fname_offset: Tuint16_t(1377), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hanunoo},
 69248  	{Fname_offset: Tuint16_t(1385), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Hatran},
 69249  	{Fname_offset: Tuint16_t(1390), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Hatran},
 69250  	{Fname_offset: Tuint16_t(1397), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Hebrew},
 69251  	{Fname_offset: Tuint16_t(1402), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Hebrew},
 69252  	{Fname_offset: Tuint16_t(1409), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Hex_Digit},
 69253  	{Fname_offset: Tuint16_t(1413), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Hex_Digit},
 69254  	{Fname_offset: Tuint16_t(1422), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hiragana},
 69255  	{Fname_offset: Tuint16_t(1427), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hiragana},
 69256  	{Fname_offset: Tuint16_t(1436), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Anatolian_Hieroglyphs},
 69257  	{Fname_offset: Tuint16_t(1441), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Pahawh_Hmong},
 69258  	{Fname_offset: Tuint16_t(1446), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Nyiakeng_Puachue_Hmong},
 69259  	{Fname_offset: Tuint16_t(1451), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Hungarian},
 69260  	{Fname_offset: Tuint16_t(1456), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_ID_Continue},
 69261  	{Fname_offset: Tuint16_t(1460), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_ID_Continue},
 69262  	{Fname_offset: Tuint16_t(1471), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Ideographic},
 69263  	{Fname_offset: Tuint16_t(1476), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Ideographic},
 69264  	{Fname_offset: Tuint16_t(1488), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_ID_Start},
 69265  	{Fname_offset: Tuint16_t(1492), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_IDS_Binary_Operator},
 69266  	{Fname_offset: Tuint16_t(1497), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_IDS_Binary_Operator},
 69267  	{Fname_offset: Tuint16_t(1515), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_IDS_Trinary_Operator},
 69268  	{Fname_offset: Tuint16_t(1520), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_ID_Start},
 69269  	{Fname_offset: Tuint16_t(1528), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_IDS_Trinary_Operator},
 69270  	{Fname_offset: Tuint16_t(1547), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Imperial_Aramaic},
 69271  	{Fname_offset: Tuint16_t(1563), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Inherited},
 69272  	{Fname_offset: Tuint16_t(1573), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Inscriptional_Pahlavi},
 69273  	{Fname_offset: Tuint16_t(1594), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Inscriptional_Parthian},
 69274  	{Fname_offset: Tuint16_t(1616), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Italic},
 69275  	{Fname_offset: Tuint16_t(1621), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Javanese},
 69276  	{Fname_offset: Tuint16_t(1626), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Javanese},
 69277  	{Fname_offset: Tuint16_t(1635), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Join_Control},
 69278  	{Fname_offset: Tuint16_t(1641), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Join_Control},
 69279  	{Fname_offset: Tuint16_t(1653), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Kaithi},
 69280  	{Fname_offset: Tuint16_t(1660), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Kayah_Li},
 69281  	{Fname_offset: Tuint16_t(1665), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Katakana},
 69282  	{Fname_offset: Tuint16_t(1670), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Kannada},
 69283  	{Fname_offset: Tuint16_t(1678), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Katakana},
 69284  	{Fname_offset: Tuint16_t(1687), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Kayah_Li},
 69285  	{Fname_offset: Tuint16_t(1695), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Kharoshthi},
 69286  	{Fname_offset: Tuint16_t(1700), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Kharoshthi},
 69287  	{Fname_offset: Tuint16_t(1711), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Khitan_Small_Script},
 69288  	{Fname_offset: Tuint16_t(1729), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Khmer},
 69289  	{Fname_offset: Tuint16_t(1735), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Khmer},
 69290  	{Fname_offset: Tuint16_t(1740), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Khojki},
 69291  	{Fname_offset: Tuint16_t(1745), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Khojki},
 69292  	{Fname_offset: Tuint16_t(1752), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Khudawadi},
 69293  	{Fname_offset: Tuint16_t(1762), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Khitan_Small_Script},
 69294  	{Fname_offset: Tuint16_t(1767), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Kannada},
 69295  	{Fname_offset: Tuint16_t(1772), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Kaithi},
 69296  	{Fname_offset: Tuint16_t(1777), Ftype: Tuint16_t(DPT_GC), Fvalue: ucp_L},
 69297  	{Fname_offset: Tuint16_t(1779), Ftype: Tuint16_t(DPT_LAMP)},
 69298  	{Fname_offset: Tuint16_t(1782), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tai_Tham},
 69299  	{Fname_offset: Tuint16_t(1787), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lao},
 69300  	{Fname_offset: Tuint16_t(1791), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lao},
 69301  	{Fname_offset: Tuint16_t(1796), Ftype: Tuint16_t(DPT_SCX)},
 69302  	{Fname_offset: Tuint16_t(1802), Ftype: Tuint16_t(DPT_SCX)},
 69303  	{Fname_offset: Tuint16_t(1807), Ftype: Tuint16_t(DPT_LAMP)},
 69304  	{Fname_offset: Tuint16_t(1810), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lepcha},
 69305  	{Fname_offset: Tuint16_t(1815), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lepcha},
 69306  	{Fname_offset: Tuint16_t(1822), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Limbu},
 69307  	{Fname_offset: Tuint16_t(1827), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Limbu},
 69308  	{Fname_offset: Tuint16_t(1833), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Linear_A},
 69309  	{Fname_offset: Tuint16_t(1838), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Linear_B},
 69310  	{Fname_offset: Tuint16_t(1843), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Linear_A},
 69311  	{Fname_offset: Tuint16_t(1851), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Linear_B},
 69312  	{Fname_offset: Tuint16_t(1859), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lisu},
 69313  	{Fname_offset: Tuint16_t(1864), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Ll},
 69314  	{Fname_offset: Tuint16_t(1867), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Lm},
 69315  	{Fname_offset: Tuint16_t(1870), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Lo},
 69316  	{Fname_offset: Tuint16_t(1873), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Logical_Order_Exception},
 69317  	{Fname_offset: Tuint16_t(1877), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Logical_Order_Exception},
 69318  	{Fname_offset: Tuint16_t(1899), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Lowercase},
 69319  	{Fname_offset: Tuint16_t(1905), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Lowercase},
 69320  	{Fname_offset: Tuint16_t(1915), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Lt},
 69321  	{Fname_offset: Tuint16_t(1918), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Lu},
 69322  	{Fname_offset: Tuint16_t(1921), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lycian},
 69323  	{Fname_offset: Tuint16_t(1926), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lycian},
 69324  	{Fname_offset: Tuint16_t(1933), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lydian},
 69325  	{Fname_offset: Tuint16_t(1938), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Lydian},
 69326  	{Fname_offset: Tuint16_t(1945), Ftype: Tuint16_t(DPT_GC), Fvalue: ucp_M},
 69327  	{Fname_offset: Tuint16_t(1947), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Mahajani},
 69328  	{Fname_offset: Tuint16_t(1956), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Mahajani},
 69329  	{Fname_offset: Tuint16_t(1961), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Makasar},
 69330  	{Fname_offset: Tuint16_t(1966), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Makasar},
 69331  	{Fname_offset: Tuint16_t(1974), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Malayalam},
 69332  	{Fname_offset: Tuint16_t(1984), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Mandaic},
 69333  	{Fname_offset: Tuint16_t(1989), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Mandaic},
 69334  	{Fname_offset: Tuint16_t(1997), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Manichaean},
 69335  	{Fname_offset: Tuint16_t(2002), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Manichaean},
 69336  	{Fname_offset: Tuint16_t(2013), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Marchen},
 69337  	{Fname_offset: Tuint16_t(2018), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Marchen},
 69338  	{Fname_offset: Tuint16_t(2026), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Masaram_Gondi},
 69339  	{Fname_offset: Tuint16_t(2039), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Math},
 69340  	{Fname_offset: Tuint16_t(2044), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Mc},
 69341  	{Fname_offset: Tuint16_t(2047), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Me},
 69342  	{Fname_offset: Tuint16_t(2050), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Medefaidrin},
 69343  	{Fname_offset: Tuint16_t(2062), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Medefaidrin},
 69344  	{Fname_offset: Tuint16_t(2067), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Meetei_Mayek},
 69345  	{Fname_offset: Tuint16_t(2079), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Mende_Kikakui},
 69346  	{Fname_offset: Tuint16_t(2084), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Mende_Kikakui},
 69347  	{Fname_offset: Tuint16_t(2097), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Meroitic_Cursive},
 69348  	{Fname_offset: Tuint16_t(2102), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Meroitic_Hieroglyphs},
 69349  	{Fname_offset: Tuint16_t(2107), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Meroitic_Cursive},
 69350  	{Fname_offset: Tuint16_t(2123), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Meroitic_Hieroglyphs},
 69351  	{Fname_offset: Tuint16_t(2143), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Miao},
 69352  	{Fname_offset: Tuint16_t(2148), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Malayalam},
 69353  	{Fname_offset: Tuint16_t(2153), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Mn},
 69354  	{Fname_offset: Tuint16_t(2156), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Modi},
 69355  	{Fname_offset: Tuint16_t(2161), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Mongolian},
 69356  	{Fname_offset: Tuint16_t(2166), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Mongolian},
 69357  	{Fname_offset: Tuint16_t(2176), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Mro},
 69358  	{Fname_offset: Tuint16_t(2180), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Mro},
 69359  	{Fname_offset: Tuint16_t(2185), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Meetei_Mayek},
 69360  	{Fname_offset: Tuint16_t(2190), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Multani},
 69361  	{Fname_offset: Tuint16_t(2195), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Multani},
 69362  	{Fname_offset: Tuint16_t(2203), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Myanmar},
 69363  	{Fname_offset: Tuint16_t(2211), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Myanmar},
 69364  	{Fname_offset: Tuint16_t(2216), Ftype: Tuint16_t(DPT_GC), Fvalue: ucp_N},
 69365  	{Fname_offset: Tuint16_t(2218), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Nabataean},
 69366  	{Fname_offset: Tuint16_t(2228), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Nandinagari},
 69367  	{Fname_offset: Tuint16_t(2233), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Nandinagari},
 69368  	{Fname_offset: Tuint16_t(2245), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_North_Arabian},
 69369  	{Fname_offset: Tuint16_t(2250), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Nabataean},
 69370  	{Fname_offset: Tuint16_t(2255), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Noncharacter_Code_Point},
 69371  	{Fname_offset: Tuint16_t(2261), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Nd},
 69372  	{Fname_offset: Tuint16_t(2264), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Newa},
 69373  	{Fname_offset: Tuint16_t(2269), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_New_Tai_Lue},
 69374  	{Fname_offset: Tuint16_t(2279), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Nko},
 69375  	{Fname_offset: Tuint16_t(2283), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Nko},
 69376  	{Fname_offset: Tuint16_t(2288), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Nl},
 69377  	{Fname_offset: Tuint16_t(2291), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_No},
 69378  	{Fname_offset: Tuint16_t(2294), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Noncharacter_Code_Point},
 69379  	{Fname_offset: Tuint16_t(2316), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Nushu},
 69380  	{Fname_offset: Tuint16_t(2321), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Nushu},
 69381  	{Fname_offset: Tuint16_t(2327), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Nyiakeng_Puachue_Hmong},
 69382  	{Fname_offset: Tuint16_t(2348), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ogham},
 69383  	{Fname_offset: Tuint16_t(2353), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ogham},
 69384  	{Fname_offset: Tuint16_t(2359), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ol_Chiki},
 69385  	{Fname_offset: Tuint16_t(2367), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ol_Chiki},
 69386  	{Fname_offset: Tuint16_t(2372), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Hungarian},
 69387  	{Fname_offset: Tuint16_t(2385), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Italic},
 69388  	{Fname_offset: Tuint16_t(2395), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_North_Arabian},
 69389  	{Fname_offset: Tuint16_t(2411), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Old_Permic},
 69390  	{Fname_offset: Tuint16_t(2421), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Persian},
 69391  	{Fname_offset: Tuint16_t(2432), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Sogdian},
 69392  	{Fname_offset: Tuint16_t(2443), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_South_Arabian},
 69393  	{Fname_offset: Tuint16_t(2459), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Turkic},
 69394  	{Fname_offset: Tuint16_t(2469), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Old_Uyghur},
 69395  	{Fname_offset: Tuint16_t(2479), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Oriya},
 69396  	{Fname_offset: Tuint16_t(2485), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Turkic},
 69397  	{Fname_offset: Tuint16_t(2490), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Oriya},
 69398  	{Fname_offset: Tuint16_t(2495), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Osage},
 69399  	{Fname_offset: Tuint16_t(2501), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Osage},
 69400  	{Fname_offset: Tuint16_t(2506), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Osmanya},
 69401  	{Fname_offset: Tuint16_t(2511), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Osmanya},
 69402  	{Fname_offset: Tuint16_t(2519), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Old_Uyghur},
 69403  	{Fname_offset: Tuint16_t(2524), Ftype: Tuint16_t(DPT_GC), Fvalue: ucp_P},
 69404  	{Fname_offset: Tuint16_t(2526), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Pahawh_Hmong},
 69405  	{Fname_offset: Tuint16_t(2538), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Palmyrene},
 69406  	{Fname_offset: Tuint16_t(2543), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Palmyrene},
 69407  	{Fname_offset: Tuint16_t(2553), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Pattern_Syntax},
 69408  	{Fname_offset: Tuint16_t(2560), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Pattern_Syntax},
 69409  	{Fname_offset: Tuint16_t(2574), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Pattern_White_Space},
 69410  	{Fname_offset: Tuint16_t(2592), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Pattern_White_Space},
 69411  	{Fname_offset: Tuint16_t(2598), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Pau_Cin_Hau},
 69412  	{Fname_offset: Tuint16_t(2603), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Pau_Cin_Hau},
 69413  	{Fname_offset: Tuint16_t(2613), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Pc},
 69414  	{Fname_offset: Tuint16_t(2616), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Prepended_Concatenation_Mark},
 69415  	{Fname_offset: Tuint16_t(2620), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Pd},
 69416  	{Fname_offset: Tuint16_t(2623), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Pe},
 69417  	{Fname_offset: Tuint16_t(2626), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Old_Permic},
 69418  	{Fname_offset: Tuint16_t(2631), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Pf},
 69419  	{Fname_offset: Tuint16_t(2634), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Phags_Pa},
 69420  	{Fname_offset: Tuint16_t(2639), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Phags_Pa},
 69421  	{Fname_offset: Tuint16_t(2647), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Inscriptional_Pahlavi},
 69422  	{Fname_offset: Tuint16_t(2652), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Psalter_Pahlavi},
 69423  	{Fname_offset: Tuint16_t(2657), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Phoenician},
 69424  	{Fname_offset: Tuint16_t(2662), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Phoenician},
 69425  	{Fname_offset: Tuint16_t(2673), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Pi},
 69426  	{Fname_offset: Tuint16_t(2676), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Miao},
 69427  	{Fname_offset: Tuint16_t(2681), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Po},
 69428  	{Fname_offset: Tuint16_t(2684), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Prepended_Concatenation_Mark},
 69429  	{Fname_offset: Tuint16_t(2711), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Inscriptional_Parthian},
 69430  	{Fname_offset: Tuint16_t(2716), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Ps},
 69431  	{Fname_offset: Tuint16_t(2719), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Psalter_Pahlavi},
 69432  	{Fname_offset: Tuint16_t(2734), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Coptic},
 69433  	{Fname_offset: Tuint16_t(2739), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Inherited},
 69434  	{Fname_offset: Tuint16_t(2744), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Quotation_Mark},
 69435  	{Fname_offset: Tuint16_t(2750), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Quotation_Mark},
 69436  	{Fname_offset: Tuint16_t(2764), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Radical},
 69437  	{Fname_offset: Tuint16_t(2772), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Regional_Indicator},
 69438  	{Fname_offset: Tuint16_t(2790), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Rejang},
 69439  	{Fname_offset: Tuint16_t(2797), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Regional_Indicator},
 69440  	{Fname_offset: Tuint16_t(2800), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Rejang},
 69441  	{Fname_offset: Tuint16_t(2805), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Hanifi_Rohingya},
 69442  	{Fname_offset: Tuint16_t(2810), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Runic},
 69443  	{Fname_offset: Tuint16_t(2816), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Runic},
 69444  	{Fname_offset: Tuint16_t(2821), Ftype: Tuint16_t(DPT_GC), Fvalue: ucp_S},
 69445  	{Fname_offset: Tuint16_t(2823), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Samaritan},
 69446  	{Fname_offset: Tuint16_t(2833), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Samaritan},
 69447  	{Fname_offset: Tuint16_t(2838), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_South_Arabian},
 69448  	{Fname_offset: Tuint16_t(2843), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Saurashtra},
 69449  	{Fname_offset: Tuint16_t(2848), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Saurashtra},
 69450  	{Fname_offset: Tuint16_t(2859), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Sc},
 69451  	{Fname_offset: Tuint16_t(2862), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Soft_Dotted},
 69452  	{Fname_offset: Tuint16_t(2865), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Sentence_Terminal},
 69453  	{Fname_offset: Tuint16_t(2882), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_SignWriting},
 69454  	{Fname_offset: Tuint16_t(2887), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Sharada},
 69455  	{Fname_offset: Tuint16_t(2895), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Shavian},
 69456  	{Fname_offset: Tuint16_t(2903), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Shavian},
 69457  	{Fname_offset: Tuint16_t(2908), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Sharada},
 69458  	{Fname_offset: Tuint16_t(2913), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Siddham},
 69459  	{Fname_offset: Tuint16_t(2918), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Siddham},
 69460  	{Fname_offset: Tuint16_t(2926), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_SignWriting},
 69461  	{Fname_offset: Tuint16_t(2938), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Khudawadi},
 69462  	{Fname_offset: Tuint16_t(2943), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Sinhala},
 69463  	{Fname_offset: Tuint16_t(2948), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Sinhala},
 69464  	{Fname_offset: Tuint16_t(2956), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Sk},
 69465  	{Fname_offset: Tuint16_t(2959), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Sm},
 69466  	{Fname_offset: Tuint16_t(2962), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_So},
 69467  	{Fname_offset: Tuint16_t(2965), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Soft_Dotted},
 69468  	{Fname_offset: Tuint16_t(2976), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Sogdian},
 69469  	{Fname_offset: Tuint16_t(2981), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Sogdian},
 69470  	{Fname_offset: Tuint16_t(2989), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Sogdian},
 69471  	{Fname_offset: Tuint16_t(2994), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Sora_Sompeng},
 69472  	{Fname_offset: Tuint16_t(2999), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Sora_Sompeng},
 69473  	{Fname_offset: Tuint16_t(3011), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Soyombo},
 69474  	{Fname_offset: Tuint16_t(3016), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Soyombo},
 69475  	{Fname_offset: Tuint16_t(3024), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_White_Space},
 69476  	{Fname_offset: Tuint16_t(3030), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Sentence_Terminal},
 69477  	{Fname_offset: Tuint16_t(3036), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Sundanese},
 69478  	{Fname_offset: Tuint16_t(3041), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Sundanese},
 69479  	{Fname_offset: Tuint16_t(3051), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Syloti_Nagri},
 69480  	{Fname_offset: Tuint16_t(3056), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Syloti_Nagri},
 69481  	{Fname_offset: Tuint16_t(3068), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Syriac},
 69482  	{Fname_offset: Tuint16_t(3073), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Syriac},
 69483  	{Fname_offset: Tuint16_t(3080), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tagalog},
 69484  	{Fname_offset: Tuint16_t(3088), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tagbanwa},
 69485  	{Fname_offset: Tuint16_t(3093), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tagbanwa},
 69486  	{Fname_offset: Tuint16_t(3102), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tai_Le},
 69487  	{Fname_offset: Tuint16_t(3108), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tai_Tham},
 69488  	{Fname_offset: Tuint16_t(3116), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tai_Viet},
 69489  	{Fname_offset: Tuint16_t(3124), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Takri},
 69490  	{Fname_offset: Tuint16_t(3129), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Takri},
 69491  	{Fname_offset: Tuint16_t(3135), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tai_Le},
 69492  	{Fname_offset: Tuint16_t(3140), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_New_Tai_Lue},
 69493  	{Fname_offset: Tuint16_t(3145), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tamil},
 69494  	{Fname_offset: Tuint16_t(3151), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tamil},
 69495  	{Fname_offset: Tuint16_t(3156), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tangut},
 69496  	{Fname_offset: Tuint16_t(3161), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tangsa},
 69497  	{Fname_offset: Tuint16_t(3168), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tangut},
 69498  	{Fname_offset: Tuint16_t(3175), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tai_Viet},
 69499  	{Fname_offset: Tuint16_t(3180), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Telugu},
 69500  	{Fname_offset: Tuint16_t(3185), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Telugu},
 69501  	{Fname_offset: Tuint16_t(3192), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Terminal_Punctuation},
 69502  	{Fname_offset: Tuint16_t(3197), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Terminal_Punctuation},
 69503  	{Fname_offset: Tuint16_t(3217), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tifinagh},
 69504  	{Fname_offset: Tuint16_t(3222), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tagalog},
 69505  	{Fname_offset: Tuint16_t(3227), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Thaana},
 69506  	{Fname_offset: Tuint16_t(3232), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Thaana},
 69507  	{Fname_offset: Tuint16_t(3239), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Thai},
 69508  	{Fname_offset: Tuint16_t(3244), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tibetan},
 69509  	{Fname_offset: Tuint16_t(3252), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tibetan},
 69510  	{Fname_offset: Tuint16_t(3257), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tifinagh},
 69511  	{Fname_offset: Tuint16_t(3266), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tirhuta},
 69512  	{Fname_offset: Tuint16_t(3271), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Tirhuta},
 69513  	{Fname_offset: Tuint16_t(3279), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Tangsa},
 69514  	{Fname_offset: Tuint16_t(3284), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Toto},
 69515  	{Fname_offset: Tuint16_t(3289), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ugaritic},
 69516  	{Fname_offset: Tuint16_t(3294), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Ugaritic},
 69517  	{Fname_offset: Tuint16_t(3303), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Unified_Ideograph},
 69518  	{Fname_offset: Tuint16_t(3309), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Unified_Ideograph},
 69519  	{Fname_offset: Tuint16_t(3326), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Unknown},
 69520  	{Fname_offset: Tuint16_t(3334), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Uppercase},
 69521  	{Fname_offset: Tuint16_t(3340), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Uppercase},
 69522  	{Fname_offset: Tuint16_t(3350), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Vai},
 69523  	{Fname_offset: Tuint16_t(3354), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Vai},
 69524  	{Fname_offset: Tuint16_t(3359), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Variation_Selector},
 69525  	{Fname_offset: Tuint16_t(3377), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Vithkuqi},
 69526  	{Fname_offset: Tuint16_t(3382), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Vithkuqi},
 69527  	{Fname_offset: Tuint16_t(3391), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_Variation_Selector},
 69528  	{Fname_offset: Tuint16_t(3394), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Wancho},
 69529  	{Fname_offset: Tuint16_t(3401), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Warang_Citi},
 69530  	{Fname_offset: Tuint16_t(3406), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Warang_Citi},
 69531  	{Fname_offset: Tuint16_t(3417), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Wancho},
 69532  	{Fname_offset: Tuint16_t(3422), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_White_Space},
 69533  	{Fname_offset: Tuint16_t(3433), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_White_Space},
 69534  	{Fname_offset: Tuint16_t(3440), Ftype: Tuint16_t(DPT_ALNUM)},
 69535  	{Fname_offset: Tuint16_t(3444), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_XID_Continue},
 69536  	{Fname_offset: Tuint16_t(3449), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_XID_Continue},
 69537  	{Fname_offset: Tuint16_t(3461), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_XID_Start},
 69538  	{Fname_offset: Tuint16_t(3466), Ftype: Tuint16_t(DPT_BOOL), Fvalue: ucp_XID_Start},
 69539  	{Fname_offset: Tuint16_t(3475), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Old_Persian},
 69540  	{Fname_offset: Tuint16_t(3480), Ftype: Tuint16_t(DPT_PXSPACE)},
 69541  	{Fname_offset: Tuint16_t(3484), Ftype: Tuint16_t(DPT_SPACE)},
 69542  	{Fname_offset: Tuint16_t(3488), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Cuneiform},
 69543  	{Fname_offset: Tuint16_t(3493), Ftype: Tuint16_t(DPT_UCNC)},
 69544  	{Fname_offset: Tuint16_t(3497), Ftype: Tuint16_t(DPT_WORD)},
 69545  	{Fname_offset: Tuint16_t(3501), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Yezidi},
 69546  	{Fname_offset: Tuint16_t(3506), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Yezidi},
 69547  	{Fname_offset: Tuint16_t(3513), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Yi},
 69548  	{Fname_offset: Tuint16_t(3516), Ftype: Tuint16_t(DPT_SCX), Fvalue: ucp_Yi},
 69549  	{Fname_offset: Tuint16_t(3521), Ftype: Tuint16_t(DPT_GC), Fvalue: ucp_Z},
 69550  	{Fname_offset: Tuint16_t(3523), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Zanabazar_Square},
 69551  	{Fname_offset: Tuint16_t(3539), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Zanabazar_Square},
 69552  	{Fname_offset: Tuint16_t(3544), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Inherited},
 69553  	{Fname_offset: Tuint16_t(3549), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Zl},
 69554  	{Fname_offset: Tuint16_t(3552), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Zp},
 69555  	{Fname_offset: Tuint16_t(3555), Ftype: Tuint16_t(DPT_PC), Fvalue: ucp_Zs},
 69556  	{Fname_offset: Tuint16_t(3558), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Common},
 69557  	{Fname_offset: Tuint16_t(3563), Ftype: Tuint16_t(DPT_SC), Fvalue: ucp_Unknown},
 69558  } /* pcre2_ucptables.c:1031:22 */
 69559  
 69560  var X_pcre2_utt_size_8 Tsize_t = uint64(unsafe.Sizeof(X_pcre2_utt_8)) / uint64(unsafe.Sizeof(Tucp_type_table{})) /* pcre2_ucptables.c:1520:14 */
 69561  
 69562  // End of pcre2_ucptables.c
 69563  
 69564  // End of pcre2_tables.c
 69565  
 69566  // This function is needed only when memmove() is not available.
 69567  
 69568  // End of pcre2_internal.h
 69569  
 69570  // The tables herein are needed only when UCP support is built, and in PCRE2
 69571  // that happens automatically with UTF support. This module should not be
 69572  // referenced otherwise, so it should not matter whether it is compiled or not.
 69573  // However a comment was received about space saving - maybe the guy linked all
 69574  // the modules rather than using a library - so we include a condition to cut out
 69575  // the tables when not needed. But don't leave a totally empty module because some
 69576  // compilers barf at that. Instead, just supply some small dummy tables.
 69577  
 69578  // Total size: 111116 bytes, block size: 128.
 69579  
 69580  var X_pcre2_unicode_version_8 uintptr = ts + 11252 /* "14.0.0" */ /* pcre2_ucd.c:79:12 */
 69581  
 69582  // When recompiling tables with a new Unicode version, please check the types
 69583  // in this structure definition with those in pcre2_internal.h (the actual field
 69584  // names will be different).
 69585  //
 69586  // typedef struct {
 69587  // uint8_t property_0;
 69588  // uint8_t property_1;
 69589  // uint8_t property_2;
 69590  // uint8_t property_3;
 69591  // int32_t property_4;
 69592  // uint16_t property_5;
 69593  // uint16_t property_6;
 69594  // } ucd_record;
 69595  
 69596  // If the 32-bit library is run in non-32-bit mode, character values greater
 69597  // than 0x10ffff may be encountered. For these we set up a special record.
 69598  
 69599  // This table contains lists of characters that are caseless sets of
 69600  // more than one character. Each list is terminated by NOTACHAR.
 69601  
 69602  var X_pcre2_ucd_caseless_sets_8 = [112]Tuint32_t{
 69603  	DNOTACHAR,
 69604  	Tuint32_t(0x0053), Tuint32_t(0x0073), Tuint32_t(0x017f), DNOTACHAR,
 69605  	Tuint32_t(0x01c4), Tuint32_t(0x01c5), Tuint32_t(0x01c6), DNOTACHAR,
 69606  	Tuint32_t(0x01c7), Tuint32_t(0x01c8), Tuint32_t(0x01c9), DNOTACHAR,
 69607  	Tuint32_t(0x01ca), Tuint32_t(0x01cb), Tuint32_t(0x01cc), DNOTACHAR,
 69608  	Tuint32_t(0x01f1), Tuint32_t(0x01f2), Tuint32_t(0x01f3), DNOTACHAR,
 69609  	Tuint32_t(0x0345), Tuint32_t(0x0399), Tuint32_t(0x03b9), Tuint32_t(0x1fbe), DNOTACHAR,
 69610  	Tuint32_t(0x00b5), Tuint32_t(0x039c), Tuint32_t(0x03bc), DNOTACHAR,
 69611  	Tuint32_t(0x03a3), Tuint32_t(0x03c2), Tuint32_t(0x03c3), DNOTACHAR,
 69612  	Tuint32_t(0x0392), Tuint32_t(0x03b2), Tuint32_t(0x03d0), DNOTACHAR,
 69613  	Tuint32_t(0x0398), Tuint32_t(0x03b8), Tuint32_t(0x03d1), Tuint32_t(0x03f4), DNOTACHAR,
 69614  	Tuint32_t(0x03a6), Tuint32_t(0x03c6), Tuint32_t(0x03d5), DNOTACHAR,
 69615  	Tuint32_t(0x03a0), Tuint32_t(0x03c0), Tuint32_t(0x03d6), DNOTACHAR,
 69616  	Tuint32_t(0x039a), Tuint32_t(0x03ba), Tuint32_t(0x03f0), DNOTACHAR,
 69617  	Tuint32_t(0x03a1), Tuint32_t(0x03c1), Tuint32_t(0x03f1), DNOTACHAR,
 69618  	Tuint32_t(0x0395), Tuint32_t(0x03b5), Tuint32_t(0x03f5), DNOTACHAR,
 69619  	Tuint32_t(0x0412), Tuint32_t(0x0432), Tuint32_t(0x1c80), DNOTACHAR,
 69620  	Tuint32_t(0x0414), Tuint32_t(0x0434), Tuint32_t(0x1c81), DNOTACHAR,
 69621  	Tuint32_t(0x041e), Tuint32_t(0x043e), Tuint32_t(0x1c82), DNOTACHAR,
 69622  	Tuint32_t(0x0421), Tuint32_t(0x0441), Tuint32_t(0x1c83), DNOTACHAR,
 69623  	Tuint32_t(0x0422), Tuint32_t(0x0442), Tuint32_t(0x1c84), Tuint32_t(0x1c85), DNOTACHAR,
 69624  	Tuint32_t(0x042a), Tuint32_t(0x044a), Tuint32_t(0x1c86), DNOTACHAR,
 69625  	Tuint32_t(0x0462), Tuint32_t(0x0463), Tuint32_t(0x1c87), DNOTACHAR,
 69626  	Tuint32_t(0x1e60), Tuint32_t(0x1e61), Tuint32_t(0x1e9b), DNOTACHAR,
 69627  	Tuint32_t(0x03a9), Tuint32_t(0x03c9), Tuint32_t(0x2126), DNOTACHAR,
 69628  	Tuint32_t(0x004b), Tuint32_t(0x006b), Tuint32_t(0x212a), DNOTACHAR,
 69629  	Tuint32_t(0x00c5), Tuint32_t(0x00e5), Tuint32_t(0x212b), DNOTACHAR,
 69630  	Tuint32_t(0x1c88), Tuint32_t(0xa64a), Tuint32_t(0xa64b), DNOTACHAR,
 69631  } /* pcre2_ucd.c:114:16 */
 69632  
 69633  // When #included in pcre2test, we don't need the table of digit sets, nor the
 69634  // the large main UCD tables.
 69635  
 69636  // This table lists the code points for the '9' characters in each set of
 69637  // decimal digits. It is used to ensure that all the digits in a script run come
 69638  // from the same set.
 69639  
 69640  var X_pcre2_ucd_digit_sets_8 = [67]Tuint32_t{
 69641  	Tuint32_t(66), // Number of subsequent values
 69642  	Tuint32_t(0x00039), Tuint32_t(0x00669), Tuint32_t(0x006f9), Tuint32_t(0x007c9), Tuint32_t(0x0096f), Tuint32_t(0x009ef), Tuint32_t(0x00a6f), Tuint32_t(0x00aef),
 69643  	Tuint32_t(0x00b6f), Tuint32_t(0x00bef), Tuint32_t(0x00c6f), Tuint32_t(0x00cef), Tuint32_t(0x00d6f), Tuint32_t(0x00def), Tuint32_t(0x00e59), Tuint32_t(0x00ed9),
 69644  	Tuint32_t(0x00f29), Tuint32_t(0x01049), Tuint32_t(0x01099), Tuint32_t(0x017e9), Tuint32_t(0x01819), Tuint32_t(0x0194f), Tuint32_t(0x019d9), Tuint32_t(0x01a89),
 69645  	Tuint32_t(0x01a99), Tuint32_t(0x01b59), Tuint32_t(0x01bb9), Tuint32_t(0x01c49), Tuint32_t(0x01c59), Tuint32_t(0x0a629), Tuint32_t(0x0a8d9), Tuint32_t(0x0a909),
 69646  	Tuint32_t(0x0a9d9), Tuint32_t(0x0a9f9), Tuint32_t(0x0aa59), Tuint32_t(0x0abf9), Tuint32_t(0x0ff19), Tuint32_t(0x104a9), Tuint32_t(0x10d39), Tuint32_t(0x1106f),
 69647  	Tuint32_t(0x110f9), Tuint32_t(0x1113f), Tuint32_t(0x111d9), Tuint32_t(0x112f9), Tuint32_t(0x11459), Tuint32_t(0x114d9), Tuint32_t(0x11659), Tuint32_t(0x116c9),
 69648  	Tuint32_t(0x11739), Tuint32_t(0x118e9), Tuint32_t(0x11959), Tuint32_t(0x11c59), Tuint32_t(0x11d59), Tuint32_t(0x11da9), Tuint32_t(0x16a69), Tuint32_t(0x16ac9),
 69649  	Tuint32_t(0x16b59), Tuint32_t(0x1d7d7), Tuint32_t(0x1d7e1), Tuint32_t(0x1d7eb), Tuint32_t(0x1d7f5), Tuint32_t(0x1d7ff), Tuint32_t(0x1e149), Tuint32_t(0x1e2f9),
 69650  	Tuint32_t(0x1e959), Tuint32_t(0x1fbf9),
 69651  } /* pcre2_ucd.c:154:16 */
 69652  
 69653  // This vector is a list of script bitsets for the Script Extension property.
 69654  // The number of 32-bit words in each bitset is #defined in pcre2_ucp.h as
 69655  // ucd_script_sets_item_size.
 69656  
 69657  var X_pcre2_ucd_script_sets_8 = [189]Tuint32_t{
 69658  	0x00000000, 0x00000000, 0x00000000,
 69659  	0x00000080, 0x00000000, 0x00000000,
 69660  	0x00000040, 0x00000000, 0x00000000,
 69661  	0x00000000, 0x00004000, 0x00000000,
 69662  	0x00000002, 0x00000000, 0x00000000,
 69663  	0x00800000, 0x00000000, 0x00000000,
 69664  	0x00000001, 0x00000000, 0x00000000,
 69665  	0x00000000, 0x00000000, 0x00000001,
 69666  	0x00000010, 0x00000000, 0x00000000,
 69667  	0x00000008, 0x00000004, 0x00000000,
 69668  	0x00000008, 0x40000000, 0x00000000,
 69669  	0x00000008, 0x00000040, 0x00000000,
 69670  	0x00000018, 0x00000000, 0x00000000,
 69671  	0x00000028, 0x00000000, 0x00000000,
 69672  	0x000000c0, 0x00000000, 0x00000000,
 69673  	0x00c00000, 0x00000000, 0x00000000,
 69674  	0x00000000, 0x00000102, 0x00000000,
 69675  	0x80000000, 0x00000001, 0x00000000,
 69676  	0x00000004, 0x00000008, 0x00000000,
 69677  	0x00000005, 0x00000000, 0x00000000,
 69678  	0x00000004, 0x00200000, 0x00000000,
 69679  	0x00000014, 0x00000000, 0x00000000,
 69680  	0x00000040, 0x00008000, 0x00000000,
 69681  	0x00000040, 0x00000000, 0x00000001,
 69682  	0x00000040, 0x00001000, 0x00000000,
 69683  	0x00000840, 0x00000000, 0x00000000,
 69684  	0x00020001, 0x00000000, 0x00000000,
 69685  	0x00000800, 0x00008000, 0x00000000,
 69686  	0x00000200, 0x00010000, 0x00000000,
 69687  	0x00000100, 0x02000000, 0x00000000,
 69688  	0x00800001, 0x00000000, 0x00000000,
 69689  	0x00300000, 0x00000000, 0x00000000,
 69690  	0x00002000, 0x00000000, 0x00000001,
 69691  	0x00080001, 0x00000000, 0x00000000,
 69692  	0x00000000, 0x00080000, 0x00000008,
 69693  	0x00080000, 0x00000020, 0x00000000,
 69694  	0x00000038, 0x00000000, 0x00000000,
 69695  	0x00000028, 0x00000000, 0x00000002,
 69696  	0x00000080, 0x00000810, 0x00000000,
 69697  	0x40010000, 0x00000800, 0x00000000,
 69698  	0x80000000, 0x00000001, 0x00000004,
 69699  	0x80000000, 0x00020001, 0x00000000,
 69700  	0x00002040, 0x00008000, 0x00000000,
 69701  	0x00000041, 0x00008000, 0x00000000,
 69702  	0x00b00000, 0x00000000, 0x00000000,
 69703  	0x00010001, 0x00000080, 0x00000000,
 69704  	0x000020c0, 0x00008000, 0x00000000,
 69705  	0x1e000000, 0x00000000, 0x00000000,
 69706  	0x00000040, 0x10040200, 0x00000000,
 69707  	0x00f40000, 0x00000000, 0x00000000,
 69708  	0x00000038, 0x40000040, 0x00000002,
 69709  	0x01f40000, 0x00000000, 0x00000000,
 69710  	0x00007c40, 0x00000000, 0x00000000,
 69711  	0x00000038, 0x44000040, 0x00000002,
 69712  	0x000034c0, 0x01008000, 0x00000001,
 69713  	0x00000018, 0xc4480400, 0x00000008,
 69714  	0x00000340, 0x11952200, 0x00000000,
 69715  	0x00007fc1, 0x01008000, 0x00000000,
 69716  	0x00007fc1, 0x01009000, 0x00000000,
 69717  	0x00002340, 0x11952200, 0x00000001,
 69718  	0x00006340, 0x11952200, 0x00000001,
 69719  	0x0000ffc0, 0x3984a010, 0x00000001,
 69720  	0x2000ffc0, 0x3984a010, 0x00000001,
 69721  } /* pcre2_ucd.c:171:16 */
 69722  
 69723  // This vector is a list of bitsets for Boolean properties. The number of
 69724  // 32_bit words in each bitset is #defined as ucd_boolprop_sets_item_size in
 69725  // pcre2_ucp.h.
 69726  
 69727  var X_pcre2_ucd_boolprop_sets_8 = [354]Tuint32_t{
 69728  	0x00000000, 0x00000000,
 69729  	0x00000001, 0x00000000,
 69730  	0x00000001, 0x00020040,
 69731  	0x00800001, 0x00020040,
 69732  	0x00800001, 0x00002820,
 69733  	0x00800001, 0x00000120,
 69734  	0x00830001, 0x00000020,
 69735  	0x00800001, 0x00000020,
 69736  	0x00800021, 0x00000120,
 69737  	0x00800011, 0x00000020,
 69738  	0x00800001, 0x00000028,
 69739  	0x00800001, 0x00002020,
 69740  	0x00801001, 0x00000020,
 69741  	0x00800021, 0x00002820,
 69742  	0x24830003, 0x00040000,
 69743  	0x00800021, 0x00002020,
 69744  	0x00800011, 0x00000028,
 69745  	0x648003c7, 0x000c8000,
 69746  	0x608003c5, 0x000c8000,
 69747  	0x00808021, 0x00000028,
 69748  	0x20800001, 0x00040000,
 69749  	0x00808021, 0x00000020,
 69750  	0x64800d47, 0x000c0004,
 69751  	0x60800d45, 0x000c0004,
 69752  	0x60800d45, 0x000c1004,
 69753  	0x00000000, 0x00020040,
 69754  	0x00800000, 0x00020000,
 69755  	0x00800000, 0x00000020,
 69756  	0x00808020, 0x00000000,
 69757  	0x00a10000, 0x00000020,
 69758  	0x60800044, 0x000c0004,
 69759  	0x00800010, 0x00000120,
 69760  	0x00800000, 0x00000028,
 69761  	0x00002020, 0x00000000,
 69762  	0x00800000, 0x00000000,
 69763  	0x60800dc4, 0x000c0004,
 69764  	0x20c08020, 0x00040000,
 69765  	0x608003c4, 0x000c8000,
 69766  	0x60800d44, 0x000c0004,
 69767  	0x60800d44, 0x000c1004,
 69768  	0x60804dc4, 0x000c0004,
 69769  	0x60800004, 0x000c0000,
 69770  	0x608007c4, 0x000c8000,
 69771  	0x60800bc4, 0x000c0000,
 69772  	0x60808064, 0x000c0004,
 69773  	0x60808064, 0x000c1004,
 69774  	0x60808024, 0x000c0000,
 69775  	0x60c08024, 0x000c0000,
 69776  	0x21008020, 0x00040000,
 69777  	0x21008de4, 0x00040004,
 69778  	0x21002020, 0x00040000,
 69779  	0x21000020, 0x00040000,
 69780  	0x60808064, 0x00000004,
 69781  	0x00800000, 0x00002000,
 69782  	0x20800020, 0x00042000,
 69783  	0x60800dc4, 0x000c000c,
 69784  	0x60800044, 0x000c8008,
 69785  	0x60800044, 0x000c8000,
 69786  	0x608003c4, 0x000c8008,
 69787  	0x00800000, 0x00000008,
 69788  	0x01000020, 0x00000000,
 69789  	0x00800020, 0x00000000,
 69790  	0x00800000, 0x00002800,
 69791  	0x00801000, 0x00000000,
 69792  	0x21008024, 0x00040000,
 69793  	0x21000024, 0x00040000,
 69794  	0x00000020, 0x00000080,
 69795  	0x00002028, 0x00000000,
 69796  	0x60c00024, 0x000c0000,
 69797  	0x20800000, 0x00040000,
 69798  	0x60804004, 0x000c0000,
 69799  	0x60800024, 0x000c0000,
 69800  	0x20800004, 0x00040000,
 69801  	0x23008020, 0x00040000,
 69802  	0x21000004, 0x00040000,
 69803  	0x21408020, 0x00040000,
 69804  	0x60800004, 0x00040000,
 69805  	0x23000024, 0x00040000,
 69806  	0x60800004, 0x000c0002,
 69807  	0x00800010, 0x00000000,
 69808  	0x20808000, 0x00040000,
 69809  	0x21004024, 0x00040000,
 69810  	0x20808004, 0x00040000,
 69811  	0x60800944, 0x000c0004,
 69812  	0x60802004, 0x000c0000,
 69813  	0x60800344, 0x000c8000,
 69814  	0x22808000, 0x00040000,
 69815  	0x22800000, 0x00040000,
 69816  	0x00c00000, 0x00000000,
 69817  	0x21002020, 0x00050000,
 69818  	0x61000024, 0x000c0000,
 69819  	0x23000020, 0x00040000,
 69820  	0x01008020, 0x00000000,
 69821  	0x21408024, 0x00040000,
 69822  	0x00808000, 0x00000000,
 69823  	0x60800064, 0x000c0004,
 69824  	0x60800044, 0x000c1004,
 69825  	0x60800064, 0x000c1004,
 69826  	0x01002020, 0x00000001,
 69827  	0x00022020, 0x00000001,
 69828  	0x00002028, 0x00000040,
 69829  	0x00801000, 0x00000020,
 69830  	0x00800020, 0x00000120,
 69831  	0x00800000, 0x00000120,
 69832  	0x00800020, 0x00000020,
 69833  	0x00a10000, 0x00002820,
 69834  	0x00800000, 0x00002820,
 69835  	0x20800000, 0x00040008,
 69836  	0x00800010, 0x00000020,
 69837  	0x00002020, 0x00000008,
 69838  	0x00002000, 0x00000000,
 69839  	0x00006020, 0x00000000,
 69840  	0x00801000, 0x00000008,
 69841  	0x00800010, 0x00000008,
 69842  	0x21000020, 0x00040008,
 69843  	0x01020020, 0x00000000,
 69844  	0x60800044, 0x000c000c,
 69845  	0x60800000, 0x000c0008,
 69846  	0x00a10000, 0x00000000,
 69847  	0x60800000, 0x000c0000,
 69848  	0x60800004, 0x000c0008,
 69849  	0x60a10044, 0x000c0004,
 69850  	0x60800044, 0x000c100c,
 69851  	0x00a10000, 0x00000028,
 69852  	0x00800010, 0x00000028,
 69853  	0x00801000, 0x00000028,
 69854  	0x00b10000, 0x00000020,
 69855  	0x00804010, 0x00000020,
 69856  	0x00a00000, 0x00000020,
 69857  	0x00000000, 0x00000020,
 69858  	0x008003c4, 0x00008000,
 69859  	0x00a103c4, 0x00008000,
 69860  	0x00800d44, 0x00000004,
 69861  	0x00b10000, 0x00000028,
 69862  	0x00a00000, 0x00000028,
 69863  	0x00a90000, 0x00000020,
 69864  	0x00b90000, 0x00000020,
 69865  	0x00808024, 0x00000020,
 69866  	0x00800000, 0x00002020,
 69867  	0x00800000, 0x00000200,
 69868  	0x08800000, 0x00000000,
 69869  	0x10800000, 0x00000000,
 69870  	0xe0800004, 0x000c0000,
 69871  	0x21008000, 0x00040000,
 69872  	0x00a11000, 0x00000020,
 69873  	0x60808020, 0x00000000,
 69874  	0xe0800004, 0x000c4000,
 69875  	0x60808004, 0x000c0000,
 69876  	0x60800004, 0x00000000,
 69877  	0x00000000, 0x00000010,
 69878  	0x21022020, 0x00050000,
 69879  	0x00800000, 0x00000100,
 69880  	0x00800020, 0x00002800,
 69881  	0x00800020, 0x00002000,
 69882  	0x00800020, 0x00000100,
 69883  	0x24800000, 0x00040000,
 69884  	0x648003c4, 0x000c8000,
 69885  	0x00808020, 0x00000008,
 69886  	0x64800d44, 0x000c0004,
 69887  	0x00800010, 0x00000100,
 69888  	0x61008024, 0x00040000,
 69889  	0x00000020, 0x00000000,
 69890  	0x60c00004, 0x000c0000,
 69891  	0x21400020, 0x00040000,
 69892  	0xa1000020, 0x00040000,
 69893  	0x21000000, 0x00040000,
 69894  	0x00a00000, 0x00000000,
 69895  	0x00b10000, 0x00000000,
 69896  	0x00200000, 0x00000000,
 69897  	0x00800044, 0x00008000,
 69898  	0x00a10044, 0x00008000,
 69899  	0x00930000, 0x00000400,
 69900  	0x00b90000, 0x00000000,
 69901  	0x00a90000, 0x00000000,
 69902  	0x00970020, 0x00000000,
 69903  	0x00b30000, 0x00000000,
 69904  	0x01022020, 0x00000000,
 69905  } /* pcre2_ucd.c:241:16 */
 69906  
 69907  // These are the main two-stage UCD tables. The fields in each record are:
 69908  // script (8 bits), character type (8 bits), grapheme break property (8 bits),
 69909  // offset to multichar other cases or zero (8 bits), offset to other case or zero
 69910  // (32 bits, signed), bidi class (5 bits) and script extension (11 bits) packed
 69911  // into a 16-bit field, and offset in binary properties table (16 bits).
 69912  
 69913  var X_pcre2_ucd_records_8 = [1409]Tucd_record{ // 16908 bytes, record size 12
 69914  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(2)},                                                                         //   0
 69915  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(43008), Fbprops: Tuint16_t(4)},                                                                        //   1
 69916  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(1), Fscriptx_bidiclass: Tuint16_t(4096), Fbprops: Tuint16_t(4)},                                                                         //   2
 69917  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(45056), Fbprops: Tuint16_t(4)},                                                                        //   3
 69918  	{Fscript: Tuint8_t(69), Fscriptx_bidiclass: Tuint16_t(4096), Fbprops: Tuint16_t(4)},                                                                                               //   4
 69919  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(4096), Fbprops: Tuint16_t(2)},                                                                         //   5
 69920  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(43008), Fbprops: Tuint16_t(2)},                                                                        //   6
 69921  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(29), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(45056), Fbprops: Tuint16_t(6)},                                              //   7
 69922  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(8)},                                              //   8
 69923  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(10)},                                             //   9
 69924  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(12)},                                             //  10
 69925  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(14)},                                             //  11
 69926  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(14)},                                             //  12
 69927  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(14)},                                             //  13
 69928  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(16)},                                             //  14
 69929  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(18)},                                             //  15
 69930  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(18)},                                             //  16
 69931  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(12)},                                             //  17
 69932  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(20)},                                             //  18
 69933  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(22)},                                              //  19
 69934  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(24)},                                             //  20
 69935  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(26)},                                              //  21
 69936  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(14)},                                              //  22
 69937  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(10240), Fbprops: Tuint16_t(28)},                                             //  23
 69938  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(30)},                                              //  24
 69939  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(22)},                                             //  25
 69940  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(32)},                                             //  26
 69941  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(20)},                                             //  27
 69942  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(34)},                                                    //  28
 69943  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(36)},                                                    //  29
 69944  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(100), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(36)},                           //  30
 69945  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(1), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(36)},                             //  31
 69946  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(38)},                                             //  32
 69947  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(16), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(40)},                                             //  33
 69948  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(42)},                                             //  34
 69949  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(44)},                                                   //  35
 69950  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(46)},                                                   //  36
 69951  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(48)},                                                   //  37
 69952  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(100), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(46)},                          //  38
 69953  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(1), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(46)},                            //  39
 69954  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6144)},                                                                                                //  40
 69955  	{Fscript: Tuint8_t(69), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(4096), Fbprops: Tuint16_t(50)},                                                                        //  41
 69956  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(29), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(52)},                                              //  42
 69957  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(54)},                                             //  43
 69958  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(54)},                                             //  44
 69959  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(54)},                                             //  45
 69960  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(56)},                                             //  46
 69961  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(58)},                                             //  47
 69962  	{Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(60)},                                                                     //  48
 69963  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(20), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(62)},                                             //  49
 69964  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(64)},                                             //  50
 69965  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(66)},                                                //  51
 69966  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(54)},                                             //  52
 69967  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(64)},                                             //  53
 69968  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(10240), Fbprops: Tuint16_t(68)},                                             //  54
 69969  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(26), Fother_case: 775, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},    //  55
 69970  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(72)},                                             //  56
 69971  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(19), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(62)},                                             //  57
 69972  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             //  58
 69973  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                    //  59
 69974  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(104), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                           //  60
 69975  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 7615, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                                                  //  61
 69976  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   //  62
 69977  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(104), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                          //  63
 69978  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 121, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   //  64
 69979  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                     //  65
 69980  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                    //  66
 69981  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(78)},                                                    //  67
 69982  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                                     //  68
 69983  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                                     //  69
 69984  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(60)},                                                                     //  70
 69985  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(80)},                                                                     //  71
 69986  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -121, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                  //  72
 69987  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(1), Fother_case: -268, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                           //  73
 69988  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 195, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   //  74
 69989  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 210, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  75
 69990  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 206, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  76
 69991  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 205, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  77
 69992  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 79, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                    //  78
 69993  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 202, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  79
 69994  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 203, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  80
 69995  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 207, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  81
 69996  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 97, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                    //  82
 69997  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 211, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  83
 69998  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 209, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  84
 69999  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 163, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   //  85
 70000  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 213, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  86
 70001  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 130, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   //  87
 70002  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 214, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  88
 70003  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 218, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  89
 70004  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 217, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  90
 70005  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 219, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   //  91
 70006  	{Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                                                     //  92
 70007  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 56, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                    //  93
 70008  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(5), Fother_case: 2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(84)},                              //  94
 70009  	{Fchartype: Tuint8_t(8), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(5), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(86)},                              //  95
 70010  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(5), Fother_case: -2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             //  96
 70011  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(9), Fother_case: 2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(84)},                              //  97
 70012  	{Fchartype: Tuint8_t(8), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(9), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(86)},                              //  98
 70013  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(9), Fother_case: -2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             //  99
 70014  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(13), Fother_case: 2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(84)},                             // 100
 70015  	{Fchartype: Tuint8_t(8), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(13), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(86)},                             // 101
 70016  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(13), Fother_case: -2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                            // 102
 70017  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -79, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   // 103
 70018  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(17), Fother_case: 2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(84)},                             // 104
 70019  	{Fchartype: Tuint8_t(8), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(17), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(86)},                             // 105
 70020  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(17), Fother_case: -2, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                            // 106
 70021  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -97, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   // 107
 70022  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -56, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   // 108
 70023  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -130, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                  // 109
 70024  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 10795, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                 // 110
 70025  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -163, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                  // 111
 70026  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 10792, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                 // 112
 70027  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 10815, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 113
 70028  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -195, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                  // 114
 70029  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 69, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                    // 115
 70030  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 71, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                    // 116
 70031  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 10783, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 117
 70032  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 10780, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 118
 70033  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 10782, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 119
 70034  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -210, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 120
 70035  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -206, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 121
 70036  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -205, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 122
 70037  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -202, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 123
 70038  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -203, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 124
 70039  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42319, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 125
 70040  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42315, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 126
 70041  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -207, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 127
 70042  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42280, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 128
 70043  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42308, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 129
 70044  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -209, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(78)},                                                  // 130
 70045  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -211, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 131
 70046  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 10743, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 132
 70047  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42305, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 133
 70048  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 10749, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 134
 70049  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -213, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 135
 70050  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -214, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 136
 70051  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 10727, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 137
 70052  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -218, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 138
 70053  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42307, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 139
 70054  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42282, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 140
 70055  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -69, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   // 141
 70056  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -217, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 142
 70057  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -71, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   // 143
 70058  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -219, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 144
 70059  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42261, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(78)},                                                 // 145
 70060  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 42258, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 146
 70061  	{Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(88)},                                                                     // 147
 70062  	{Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(90)},                                                                     // 148
 70063  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(92)},                                              // 149
 70064  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(92)},                                              // 150
 70065  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(88)},                                              // 151
 70066  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(94)},                                              // 152
 70067  	{Fscript: Tuint8_t(22), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(56)},                                             // 153
 70068  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 154
 70069  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26636), Fbprops: Tuint16_t(96)},                                              // 155
 70070  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fcaseset: Tuint8_t(21), Fother_case: 116, Fscriptx_bidiclass: Tuint16_t(26636), Fbprops: Tuint16_t(98)},    // 156
 70071  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(100)},                                             // 157
 70072  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 158
 70073  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26642), Fbprops: Tuint16_t(102)},                                             // 159
 70074  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                               // 160
 70075  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                              // 161
 70076  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(56)},                                              // 162
 70077  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432)},                                                                      // 163
 70078  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(104)},                                              // 164
 70079  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 130, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 165
 70080  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(106)},                                            // 166
 70081  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 116, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                             // 167
 70082  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 38, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 168
 70083  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(108)},                                            // 169
 70084  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 37, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 170
 70085  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 64, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 171
 70086  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 63, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 172
 70087  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                               // 173
 70088  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 174
 70089  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(34), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 175
 70090  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(59), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 176
 70091  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(38), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 177
 70092  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(21), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 178
 70093  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(51), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 179
 70094  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(26), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 180
 70095  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(47), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 181
 70096  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(55), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 182
 70097  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(30), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 183
 70098  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(43), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 184
 70099  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(96), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 185
 70100  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -38, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 186
 70101  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -37, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 187
 70102  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 188
 70103  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(34), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 189
 70104  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(59), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 190
 70105  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(38), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 191
 70106  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(21), Fother_case: -116, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},    // 192
 70107  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(51), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 193
 70108  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(26), Fother_case: -775, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},    // 194
 70109  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(47), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 195
 70110  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(55), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 196
 70111  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(30), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},       // 197
 70112  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(30), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 198
 70113  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(43), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 199
 70114  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(96), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 200
 70115  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -64, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 201
 70116  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -63, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 202
 70117  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                               // 203
 70118  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(34), Fother_case: -30, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(110)},    // 204
 70119  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(38), Fother_case: -25, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(110)},    // 205
 70120  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(112)},                                              // 206
 70121  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(114)},                                              // 207
 70122  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(43), Fother_case: -15, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(110)},    // 208
 70123  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(47), Fother_case: -22, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},     // 209
 70124  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                              // 210
 70125  	{Fscript: Tuint8_t(34), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 211
 70126  	{Fscript: Tuint8_t(34), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 212
 70127  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(51), Fother_case: -54, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(110)},    // 213
 70128  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(55), Fother_case: -48, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(110)},    // 214
 70129  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 7, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                               // 215
 70130  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -116, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(78)},                            // 216
 70131  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(38), Fother_case: -60, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(116)},    // 217
 70132  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(59), Fother_case: -64, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(110)},    // 218
 70133  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(118)},                                             // 219
 70134  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -7, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 220
 70135  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(60)},                                               // 221
 70136  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -130, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 222
 70137  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 80, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 223
 70138  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 224
 70139  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(63), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 225
 70140  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(67), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 226
 70141  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(71), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 227
 70142  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(75), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 228
 70143  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(79), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 229
 70144  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(84), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 230
 70145  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 231
 70146  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(63), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 232
 70147  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(67), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 233
 70148  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(71), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 234
 70149  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(75), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 235
 70150  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(79), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 236
 70151  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(84), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},     // 237
 70152  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -80, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 238
 70153  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -80, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(78)},                             // 239
 70154  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                               // 240
 70155  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                              // 241
 70156  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(88), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},       // 242
 70157  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(88), Fother_case: -1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},      // 243
 70158  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 244
 70159  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26684), Fbprops: Tuint16_t(96)},                                               // 245
 70160  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26678), Fbprops: Tuint16_t(96)},                                               // 246
 70161  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26681), Fbprops: Tuint16_t(96)},                                              // 247
 70162  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(11), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(120)},                                              // 248
 70163  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 15, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 249
 70164  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -15, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 250
 70165  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 48, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                             // 251
 70166  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(92)},                                              // 252
 70167  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 253
 70168  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(122)},                                            // 254
 70169  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(60)},                                              // 255
 70170  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -48, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                            // 256
 70171  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                                              // 257
 70172  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 258
 70173  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(126)},                                            // 259
 70174  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 260
 70175  	{Fscript: Tuint8_t(70), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                             // 261
 70176  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816)},                                                                      // 262
 70177  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 263
 70178  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 264
 70179  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(128)},                                             // 265
 70180  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(126)},                                            // 266
 70181  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 267
 70182  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(106)},                                            // 268
 70183  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 269
 70184  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 270
 70185  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(122)},                                            // 271
 70186  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(2048), Fbprops: Tuint16_t(132)},                                                // 272
 70187  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(2048), Fbprops: Tuint16_t(132)},                                               // 273
 70188  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(118)},                                             // 274
 70189  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(118)},                                                                                   // 275
 70190  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                              // 276
 70191  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                    // 277
 70192  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8342), Fbprops: Tuint16_t(106)},                                             // 278
 70193  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                    // 279
 70194  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                              // 280
 70195  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                              // 281
 70196  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(150), Fbprops: Tuint16_t(106)},                                              // 282
 70197  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(108), Fbprops: Tuint16_t(134)},                                                 // 283
 70198  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(124)},                                                                                   // 284
 70199  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(159), Fbprops: Tuint16_t(124)},                                              // 285
 70200  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(82)},                                                                                     // 286
 70201  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(165), Fbprops: Tuint16_t(136)},                                               // 287
 70202  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26660), Fbprops: Tuint16_t(128)},                                             // 288
 70203  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26660), Fbprops: Tuint16_t(130)},                                             // 289
 70204  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(128)},                                              // 290
 70205  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                               // 291
 70206  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(2159), Fbprops: Tuint16_t(138)},                                              // 292
 70207  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(2048), Fbprops: Tuint16_t(68)},                                               // 293
 70208  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(140)},                                                                                    // 294
 70209  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(30), Fbprops: Tuint16_t(124)},                                                // 295
 70210  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(92)},                                                                                     // 296
 70211  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(10240), Fbprops: Tuint16_t(138)},                                             // 297
 70212  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                    // 298
 70213  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(124)},                                                                                   // 299
 70214  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(106)},                                                                                   // 300
 70215  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                    // 301
 70216  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(12)},                                                                                                            // 302
 70217  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(4), Fbprops: Tuint16_t(132)},                                                                                     // 303
 70218  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(82)},                                                                                     // 304
 70219  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                              // 305
 70220  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(128)},                                              // 306
 70221  	{Fscript: Tuint8_t(4), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                               // 307
 70222  	{Fscript: Tuint8_t(5), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(82)},                                                                                     // 308
 70223  	{Fscript: Tuint8_t(5), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(128)},                                              // 309
 70224  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(138)},                                            // 310
 70225  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 311
 70226  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 312
 70227  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(92)},                                              // 313
 70228  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 314
 70229  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 315
 70230  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(106)},                                            // 316
 70231  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(124)},                                            // 317
 70232  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(136)},                                             // 318
 70233  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 319
 70234  	{Fscript: Tuint8_t(38), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 320
 70235  	{Fscript: Tuint8_t(110), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 321
 70236  	{Fscript: Tuint8_t(110), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 322
 70237  	{Fscript: Tuint8_t(110), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 323
 70238  	{Fscript: Tuint8_t(110), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(142)},                                            // 324
 70239  	{Fscript: Tuint8_t(110), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                            // 325
 70240  	{Fscript: Tuint8_t(110), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(106)},                                           // 326
 70241  	{Fscript: Tuint8_t(110), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(124)},                                           // 327
 70242  	{Fscript: Tuint8_t(42), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 328
 70243  	{Fscript: Tuint8_t(42), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 329
 70244  	{Fscript: Tuint8_t(42), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(106)},                                            // 330
 70245  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(122)},                                                                                   // 331
 70246  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                              // 332
 70247  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                              // 333
 70248  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                              // 334
 70249  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 335
 70250  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                               // 336
 70251  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                              // 337
 70252  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26798), Fbprops: Tuint16_t(96)},                                              // 338
 70253  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26795), Fbprops: Tuint16_t(96)},                                              // 339
 70254  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18615), Fbprops: Tuint16_t(124)},                                            // 340
 70255  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18618), Fbprops: Tuint16_t(124)},                                            // 341
 70256  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18576), Fbprops: Tuint16_t(138)},                                             // 342
 70257  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 343
 70258  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(92)},                                               // 344
 70259  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 345
 70260  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                              // 346
 70261  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                              // 347
 70262  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                               // 348
 70263  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                              // 349
 70264  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                              // 350
 70265  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18546), Fbprops: Tuint16_t(138)},                                             // 351
 70266  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                              // 352
 70267  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 353
 70268  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 354
 70269  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 355
 70270  	{Fscript: Tuint8_t(7), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                              // 356
 70271  	{Fscript: Tuint8_t(8), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                              // 357
 70272  	{Fscript: Tuint8_t(8), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                              // 358
 70273  	{Fscript: Tuint8_t(8), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 359
 70274  	{Fscript: Tuint8_t(8), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                               // 360
 70275  	{Fscript: Tuint8_t(8), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                              // 361
 70276  	{Fscript: Tuint8_t(8), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18519), Fbprops: Tuint16_t(138)},                                             // 362
 70277  	{Fscript: Tuint8_t(8), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 363
 70278  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                              // 364
 70279  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                              // 365
 70280  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 366
 70281  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                               // 367
 70282  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                              // 368
 70283  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18516), Fbprops: Tuint16_t(138)},                                             // 369
 70284  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 370
 70285  	{Fscript: Tuint8_t(9), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                              // 371
 70286  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 372
 70287  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 373
 70288  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 374
 70289  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 375
 70290  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 376
 70291  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 377
 70292  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(150)},                                             // 378
 70293  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 379
 70294  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 380
 70295  	{Fscript: Tuint8_t(10), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 381
 70296  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 382
 70297  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 383
 70298  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 384
 70299  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 385
 70300  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 386
 70301  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18513), Fbprops: Tuint16_t(138)},                                            // 387
 70302  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18513), Fbprops: Tuint16_t(68)},                                             // 388
 70303  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28753), Fbprops: Tuint16_t(68)},                                             // 389
 70304  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 390
 70305  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                             // 391
 70306  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 392
 70307  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 393
 70308  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 394
 70309  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 395
 70310  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 396
 70311  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 397
 70312  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 398
 70313  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 399
 70314  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 400
 70315  	{Fscript: Tuint8_t(12), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 401
 70316  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 402
 70317  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 403
 70318  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 404
 70319  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 405
 70320  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 406
 70321  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(130)},                                             // 407
 70322  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 408
 70323  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 409
 70324  	{Fscript: Tuint8_t(13), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18528), Fbprops: Tuint16_t(138)},                                            // 410
 70325  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 411
 70326  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 412
 70327  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 413
 70328  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 414
 70329  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 415
 70330  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 416
 70331  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 417
 70332  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 418
 70333  	{Fscript: Tuint8_t(14), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 419
 70334  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 420
 70335  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 421
 70336  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 422
 70337  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 423
 70338  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 424
 70339  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 425
 70340  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 426
 70341  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 427
 70342  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 428
 70343  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(152)},                                              // 429
 70344  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(154)},                                             // 430
 70345  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                             // 431
 70346  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(156)},                                             // 432
 70347  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 433
 70348  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 434
 70349  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 435
 70350  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 436
 70351  	{Fscript: Tuint8_t(72), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 437
 70352  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 438
 70353  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 439
 70354  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(152)},                                              // 440
 70355  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 441
 70356  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(156)},                                             // 442
 70357  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 443
 70358  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 444
 70359  	{Fscript: Tuint8_t(73), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 445
 70360  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 446
 70361  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 447
 70362  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 448
 70363  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 449
 70364  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 450
 70365  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 451
 70366  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 452
 70367  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(158)},                                            // 453
 70368  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(158)},                                            // 454
 70369  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(160)},                                             // 455
 70370  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 456
 70371  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(162)},                                             // 457
 70372  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 458
 70373  	{Fscript: Tuint8_t(74), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 459
 70374  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 460
 70375  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 461
 70376  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 462
 70377  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 463
 70378  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 464
 70379  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 465
 70380  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 466
 70381  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18549), Fbprops: Tuint16_t(138)},                                            // 467
 70382  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 468
 70383  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 469
 70384  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(164)},                                            // 470
 70385  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(128)},                                             // 471
 70386  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 472
 70387  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 473
 70388  	{Fscript: Tuint8_t(17), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 7264, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                           // 474
 70389  	{Fscript: Tuint8_t(17), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 3008, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(166)},                          // 475
 70390  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18510), Fbprops: Tuint16_t(68)},                                             // 476
 70391  	{Fscript: Tuint8_t(17), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                             // 477
 70392  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(6), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 478
 70393  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(6), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(168)},                                              // 479
 70394  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(7), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(168)},                                              // 480
 70395  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(7), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 481
 70396  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(8), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 482
 70397  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 483
 70398  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 484
 70399  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 485
 70400  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 486
 70401  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 487
 70402  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 488
 70403  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 489
 70404  	{Fscript: Tuint8_t(75), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 490
 70405  	{Fscript: Tuint8_t(76), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 38864, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(170)},                         // 491
 70406  	{Fscript: Tuint8_t(76), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(170)},                             // 492
 70407  	{Fscript: Tuint8_t(76), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                             // 493
 70408  	{Fscript: Tuint8_t(77), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(126)},                                            // 494
 70409  	{Fscript: Tuint8_t(77), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 495
 70410  	{Fscript: Tuint8_t(77), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 496
 70411  	{Fscript: Tuint8_t(77), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 497
 70412  	{Fscript: Tuint8_t(78), Fchartype: Tuint8_t(29), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(45056), Fbprops: Tuint16_t(52)},                                             // 498
 70413  	{Fscript: Tuint8_t(78), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 499
 70414  	{Fscript: Tuint8_t(78), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(158)},                                            // 500
 70415  	{Fscript: Tuint8_t(78), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(158)},                                            // 501
 70416  	{Fscript: Tuint8_t(79), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 502
 70417  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 503
 70418  	{Fscript: Tuint8_t(79), Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 504
 70419  	{Fscript: Tuint8_t(25), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 505
 70420  	{Fscript: Tuint8_t(25), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 506
 70421  	{Fscript: Tuint8_t(25), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 507
 70422  	{Fscript: Tuint8_t(25), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 508
 70423  	{Fscript: Tuint8_t(26), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 509
 70424  	{Fscript: Tuint8_t(26), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 510
 70425  	{Fscript: Tuint8_t(26), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(174)},                                             // 511
 70426  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18573), Fbprops: Tuint16_t(124)},                                            // 512
 70427  	{Fscript: Tuint8_t(27), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 513
 70428  	{Fscript: Tuint8_t(27), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 514
 70429  	{Fscript: Tuint8_t(28), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 515
 70430  	{Fscript: Tuint8_t(28), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 516
 70431  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 517
 70432  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(140)},                                             // 518
 70433  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(100)},                                             // 519
 70434  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 520
 70435  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 521
 70436  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 522
 70437  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 523
 70438  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 524
 70439  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                             // 525
 70440  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 526
 70441  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                             // 527
 70442  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 528
 70443  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 529
 70444  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 530
 70445  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28777), Fbprops: Tuint16_t(106)},                                            // 531
 70446  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28777), Fbprops: Tuint16_t(124)},                                            // 532
 70447  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(106)},                                            // 533
 70448  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(126)},                                            // 534
 70449  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(124)},                                            // 535
 70450  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(176)},                                            // 536
 70451  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(178)},                                             // 537
 70452  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(66)},                                                // 538
 70453  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 539
 70454  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 540
 70455  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 541
 70456  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(180)},                                             // 542
 70457  	{Fscript: Tuint8_t(19), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 543
 70458  	{Fscript: Tuint8_t(29), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 544
 70459  	{Fscript: Tuint8_t(29), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 545
 70460  	{Fscript: Tuint8_t(29), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 546
 70461  	{Fscript: Tuint8_t(29), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 547
 70462  	{Fscript: Tuint8_t(29), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 548
 70463  	{Fscript: Tuint8_t(29), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(124)},                                            // 549
 70464  	{Fscript: Tuint8_t(29), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 550
 70465  	{Fscript: Tuint8_t(30), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 551
 70466  	{Fscript: Tuint8_t(89), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 552
 70467  	{Fscript: Tuint8_t(89), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(156)},                                             // 553
 70468  	{Fscript: Tuint8_t(89), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 554
 70469  	{Fscript: Tuint8_t(89), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 555
 70470  	{Fscript: Tuint8_t(89), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 556
 70471  	{Fscript: Tuint8_t(80), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 557
 70472  	{Fscript: Tuint8_t(33), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 558
 70473  	{Fscript: Tuint8_t(33), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 559
 70474  	{Fscript: Tuint8_t(33), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 560
 70475  	{Fscript: Tuint8_t(33), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 561
 70476  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 562
 70477  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 563
 70478  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 564
 70479  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(182)},                                            // 565
 70480  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                           // 566
 70481  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 567
 70482  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 568
 70483  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 569
 70484  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                            // 570
 70485  	{Fscript: Tuint8_t(106), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 571
 70486  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(11), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(184)},                                             // 572
 70487  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 573
 70488  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 574
 70489  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 575
 70490  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 576
 70491  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 577
 70492  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 578
 70493  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 579
 70494  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 580
 70495  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 581
 70496  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 582
 70497  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 583
 70498  	{Fscript: Tuint8_t(93), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 584
 70499  	{Fscript: Tuint8_t(96), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 585
 70500  	{Fscript: Tuint8_t(96), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 586
 70501  	{Fscript: Tuint8_t(96), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 587
 70502  	{Fscript: Tuint8_t(96), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 588
 70503  	{Fscript: Tuint8_t(96), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 589
 70504  	{Fscript: Tuint8_t(96), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 590
 70505  	{Fscript: Tuint8_t(119), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 591
 70506  	{Fscript: Tuint8_t(119), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                            // 592
 70507  	{Fscript: Tuint8_t(119), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 593
 70508  	{Fscript: Tuint8_t(119), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 594
 70509  	{Fscript: Tuint8_t(119), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(174)},                                            // 595
 70510  	{Fscript: Tuint8_t(119), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 596
 70511  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 597
 70512  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 598
 70513  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 599
 70514  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(186)},                                             // 600
 70515  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 601
 70516  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 602
 70517  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 603
 70518  	{Fscript: Tuint8_t(97), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 604
 70519  	{Fscript: Tuint8_t(98), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 605
 70520  	{Fscript: Tuint8_t(98), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 606
 70521  	{Fscript: Tuint8_t(98), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(92)},                                              // 607
 70522  	{Fscript: Tuint8_t(98), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(94)},                                              // 608
 70523  	{Fscript: Tuint8_t(98), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 609
 70524  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(63), Fother_case: -6222, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 610
 70525  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(67), Fother_case: -6221, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 611
 70526  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(71), Fother_case: -6212, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 612
 70527  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(75), Fother_case: -6210, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 613
 70528  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(79), Fother_case: -6210, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 614
 70529  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(79), Fother_case: -6211, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 615
 70530  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(84), Fother_case: -6204, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 616
 70531  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(88), Fother_case: -6180, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},   // 617
 70532  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(108), Fother_case: 35267, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},  // 618
 70533  	{Fscript: Tuint8_t(17), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -3008, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                          // 619
 70534  	{Fscript: Tuint8_t(96), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 620
 70535  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26762), Fbprops: Tuint16_t(96)},                                              // 621
 70536  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26630), Fbprops: Tuint16_t(96)},                                              // 622
 70537  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18498), Fbprops: Tuint16_t(188)},                                            // 623
 70538  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26666), Fbprops: Tuint16_t(96)},                                              // 624
 70539  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26696), Fbprops: Tuint16_t(96)},                                              // 625
 70540  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26780), Fbprops: Tuint16_t(96)},                                              // 626
 70541  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18474), Fbprops: Tuint16_t(160)},                                             // 627
 70542  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18501), Fbprops: Tuint16_t(82)},                                              // 628
 70543  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18474), Fbprops: Tuint16_t(82)},                                              // 629
 70544  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18438), Fbprops: Tuint16_t(82)},                                              // 630
 70545  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18594), Fbprops: Tuint16_t(82)},                                              // 631
 70546  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18498), Fbprops: Tuint16_t(82)},                                              // 632
 70547  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26750), Fbprops: Tuint16_t(96)},                                              // 633
 70548  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18435), Fbprops: Tuint16_t(160)},                                             // 634
 70549  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26690), Fbprops: Tuint16_t(96)},                                              // 635
 70550  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18453), Fbprops: Tuint16_t(82)},                                              // 636
 70551  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(60)},                                               // 637
 70552  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(88)},                                               // 638
 70553  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(190)},                                              // 639
 70554  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 35332, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 640
 70555  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 3814, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 641
 70556  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 35384, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                 // 642
 70557  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(192)},                                                                    // 643
 70558  	{Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(190)},                                                                    // 644
 70559  	{Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(194)},                                                                    // 645
 70560  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(190)},                                              // 646
 70561  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26636), Fbprops: Tuint16_t(102)},                                             // 647
 70562  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26687), Fbprops: Tuint16_t(96)},                                              // 648
 70563  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26648), Fbprops: Tuint16_t(96)},                                              // 649
 70564  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(92), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                             // 650
 70565  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(92), Fother_case: -1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                            // 651
 70566  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                                                                     // 652
 70567  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(92), Fother_case: -58, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                           // 653
 70568  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -7615, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                 // 654
 70569  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                               // 655
 70570  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                              // 656
 70571  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 74, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                              // 657
 70572  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 86, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                              // 658
 70573  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 100, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 659
 70574  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 128, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 660
 70575  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 112, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 661
 70576  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 126, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                             // 662
 70577  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                               // 663
 70578  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(8), Fgbprop: Tuint8_t(12), Fother_case: -8, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(86)},                              // 664
 70579  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                                               // 665
 70580  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 9, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                               // 666
 70581  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -74, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                             // 667
 70582  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(8), Fgbprop: Tuint8_t(12), Fother_case: -9, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(86)},                              // 668
 70583  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(21), Fother_case: -7173, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},   // 669
 70584  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -86, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                             // 670
 70585  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -100, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 671
 70586  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -112, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 672
 70587  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -128, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 673
 70588  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -126, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 674
 70589  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(29), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(45056), Fbprops: Tuint16_t(52)},                                             // 675
 70590  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(196)},                                               // 676
 70591  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(13), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(198)},                                              // 677
 70592  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(200)},                                              // 678
 70593  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(200)},                                              // 679
 70594  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(202)},                                            // 680
 70595  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(64)},                                             // 681
 70596  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(20), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(204)},                                            // 682
 70597  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(19), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(204)},                                            // 683
 70598  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(206)},                                            // 684
 70599  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(20), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(206)},                                            // 685
 70600  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(19), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(206)},                                            // 686
 70601  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(208)},                                            // 687
 70602  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(27), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(45056), Fbprops: Tuint16_t(50)},                                              // 688
 70603  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(28), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(4096), Fbprops: Tuint16_t(50)},                                               // 689
 70604  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(20480), Fbprops: Tuint16_t(134)},                                              // 690
 70605  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(36864), Fbprops: Tuint16_t(134)},                                              // 691
 70606  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(30720), Fbprops: Tuint16_t(134)},                                              // 692
 70607  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(24576), Fbprops: Tuint16_t(134)},                                              // 693
 70608  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(40960), Fbprops: Tuint16_t(134)},                                              // 694
 70609  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(29), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8291), Fbprops: Tuint16_t(52)},                                              // 695
 70610  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(54)},                                             // 696
 70611  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(64)},                                             // 697
 70612  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(210)},                                            // 698
 70613  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(212)},                                            // 699
 70614  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(16), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(138)},                                            // 700
 70615  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(16), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(214)},                                            // 701
 70616  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(64)},                                              // 702
 70617  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(216)},                                            // 703
 70618  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(216)},                                            // 704
 70619  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(202)},                                            // 705
 70620  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(218)},                                               // 706
 70621  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(220)},                                               // 707
 70622  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(22528), Fbprops: Tuint16_t(134)},                                              // 708
 70623  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(38912), Fbprops: Tuint16_t(134)},                                              // 709
 70624  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(16384), Fbprops: Tuint16_t(134)},                                              // 710
 70625  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(32768), Fbprops: Tuint16_t(134)},                                              // 711
 70626  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(222)},                                               // 712
 70627  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(118)},                                            // 713
 70628  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(224)},                                            // 714
 70629  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(118)},                                            // 715
 70630  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(226)},                                            // 716
 70631  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(226)},                                            // 717
 70632  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336)},                                                                      // 718
 70633  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(228)},                                             // 719
 70634  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(11), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(120)},                                             // 720
 70635  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(11), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(230)},                                             // 721
 70636  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26753), Fbprops: Tuint16_t(102)},                                             // 722
 70637  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 723
 70638  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(112)},                                             // 724
 70639  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(232)},                                             // 725
 70640  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(234)},                                            // 726
 70641  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(236)},                                            // 727
 70642  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(96), Fother_case: -7517, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},   // 728
 70643  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(118)},                                            // 729
 70644  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(100), Fother_case: -8383, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                        // 730
 70645  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(104), Fother_case: -8262, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                        // 731
 70646  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(238)},                                            // 732
 70647  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 28, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                    // 733
 70648  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(240)},                                             // 734
 70649  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(242)},                                             // 735
 70650  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(244)},                                             // 736
 70651  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -28, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                   // 737
 70652  	{Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fother_case: 16, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   // 738
 70653  	{Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fother_case: -16, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 739
 70654  	{Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                                                    // 740
 70655  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(246)},                                            // 741
 70656  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(246)},                                            // 742
 70657  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(64)},                                             // 743
 70658  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(248)},                                            // 744
 70659  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(250)},                                            // 745
 70660  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(248)},                                            // 746
 70661  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(248)},                                            // 747
 70662  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(252)},                                            // 748
 70663  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(254)},                                            // 749
 70664  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(254)},                                            // 750
 70665  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(54)},                                             // 751
 70666  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(256)},                                            // 752
 70667  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(258)},                                             // 753
 70668  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fother_case: 26, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(260)},                           // 754
 70669  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fother_case: 26, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(262)},                           // 755
 70670  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fother_case: -26, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(264)},                          // 756
 70671  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(266)},                                            // 757
 70672  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(268)},                                            // 758
 70673  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(270)},                                            // 759
 70674  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(268)},                                            // 760
 70675  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(256)},                                            // 761
 70676  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(272)},                                            // 762
 70677  	{Fscript: Tuint8_t(88), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(54)},                                             // 763
 70678  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(216)},                                            // 764
 70679  	{Fscript: Tuint8_t(35), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 48, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                             // 765
 70680  	{Fscript: Tuint8_t(35), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -48, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                            // 766
 70681  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -10743, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 767
 70682  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -3814, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                 // 768
 70683  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -10727, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 769
 70684  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -10795, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                // 770
 70685  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -10792, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                // 771
 70686  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -10780, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 772
 70687  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -10749, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 773
 70688  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -10783, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 774
 70689  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -10782, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 775
 70690  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -10815, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 776
 70691  	{Fscript: Tuint8_t(34), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(60)},                                              // 777
 70692  	{Fscript: Tuint8_t(34), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 778
 70693  	{Fscript: Tuint8_t(34), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 779
 70694  	{Fscript: Tuint8_t(34), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 780
 70695  	{Fscript: Tuint8_t(34), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 781
 70696  	{Fscript: Tuint8_t(17), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -7264, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                          // 782
 70697  	{Fscript: Tuint8_t(90), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 783
 70698  	{Fscript: Tuint8_t(90), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                             // 784
 70699  	{Fscript: Tuint8_t(90), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 785
 70700  	{Fscript: Tuint8_t(90), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(182)},                                             // 786
 70701  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                              // 787
 70702  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(20), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(216)},                                            // 788
 70703  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(19), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(216)},                                            // 789
 70704  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(274)},                                             // 790
 70705  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(276)},                                            // 791
 70706  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28726), Fbprops: Tuint16_t(54)},                                             // 792
 70707  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(278)},                                            // 793
 70708  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(280)},                                            // 794
 70709  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(282)},                                            // 795
 70710  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(276)},                                            // 796
 70711  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(212)},                                            // 797
 70712  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28819), Fbprops: Tuint16_t(54)},                                             // 798
 70713  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 799
 70714  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18447), Fbprops: Tuint16_t(284)},                                             // 800
 70715  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(284)},                                            // 801
 70716  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(216)},                                            // 802
 70717  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(216)},                                            // 803
 70718  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(62)},                                             // 804
 70719  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(62)},                                             // 805
 70720  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28819), Fbprops: Tuint16_t(54)},                                             // 806
 70721  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28819), Fbprops: Tuint16_t(202)},                                            // 807
 70722  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28819), Fbprops: Tuint16_t(206)},                                            // 808
 70723  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28819), Fbprops: Tuint16_t(206)},                                            // 809
 70724  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26669), Fbprops: Tuint16_t(96)},                                              // 810
 70725  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(286)},                                             // 811
 70726  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28819), Fbprops: Tuint16_t(288)},                                            // 812
 70727  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18525), Fbprops: Tuint16_t(136)},                                             // 813
 70728  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28819), Fbprops: Tuint16_t(68)},                                             // 814
 70729  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                             // 815
 70730  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18564), Fbprops: Tuint16_t(82)},                                              // 816
 70731  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28804), Fbprops: Tuint16_t(236)},                                            // 817
 70732  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28687), Fbprops: Tuint16_t(68)},                                             // 818
 70733  	{Fscript: Tuint8_t(20), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 819
 70734  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26717), Fbprops: Tuint16_t(96)},                                              // 820
 70735  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28765), Fbprops: Tuint16_t(290)},                                            // 821
 70736  	{Fscript: Tuint8_t(20), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 822
 70737  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28765), Fbprops: Tuint16_t(126)},                                            // 823
 70738  	{Fscript: Tuint8_t(21), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 824
 70739  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(68)},                                             // 825
 70740  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18525), Fbprops: Tuint16_t(94)},                                              // 826
 70741  	{Fscript: Tuint8_t(21), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 827
 70742  	{Fscript: Tuint8_t(22), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 828
 70743  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 829
 70744  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(168)},                                             // 830
 70745  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18447), Fbprops: Tuint16_t(68)},                                             // 831
 70746  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18447), Fbprops: Tuint16_t(68)},                                             // 832
 70747  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 833
 70748  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 834
 70749  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 835
 70750  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18447), Fbprops: Tuint16_t(236)},                                            // 836
 70751  	{Fscript: Tuint8_t(21), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 837
 70752  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(292)},                                             // 838
 70753  	{Fscript: Tuint8_t(24), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 839
 70754  	{Fscript: Tuint8_t(24), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 840
 70755  	{Fscript: Tuint8_t(24), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 841
 70756  	{Fscript: Tuint8_t(111), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 842
 70757  	{Fscript: Tuint8_t(111), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                            // 843
 70758  	{Fscript: Tuint8_t(111), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 844
 70759  	{Fscript: Tuint8_t(111), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 845
 70760  	{Fscript: Tuint8_t(99), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 846
 70761  	{Fscript: Tuint8_t(99), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 847
 70762  	{Fscript: Tuint8_t(99), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(106)},                                            // 848
 70763  	{Fscript: Tuint8_t(99), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(124)},                                            // 849
 70764  	{Fscript: Tuint8_t(99), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 850
 70765  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(108), Fother_case: 1, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},      // 851
 70766  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fcaseset: Tuint8_t(108), Fother_case: -35267, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)}, // 852
 70767  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 853
 70768  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                              // 854
 70769  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                               // 855
 70770  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(92)},                                               // 856
 70771  	{Fscript: Tuint8_t(2), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(88)},                                               // 857
 70772  	{Fscript: Tuint8_t(112), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 858
 70773  	{Fscript: Tuint8_t(112), Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                            // 859
 70774  	{Fscript: Tuint8_t(112), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 860
 70775  	{Fscript: Tuint8_t(112), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 861
 70776  	{Fscript: Tuint8_t(112), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 862
 70777  	{Fscript: Tuint8_t(112), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 863
 70778  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28762), Fbprops: Tuint16_t(56)},                                             // 864
 70779  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -35332, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 865
 70780  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(56)},                                             // 866
 70781  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42280, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 867
 70782  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: 48, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                    // 868
 70783  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42308, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 869
 70784  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42319, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 870
 70785  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42315, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 871
 70786  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42305, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 872
 70787  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42258, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 873
 70788  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42282, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 874
 70789  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42261, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 875
 70790  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 928, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   // 876
 70791  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -48, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                   // 877
 70792  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -42307, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 878
 70793  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: -35384, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                                                // 879
 70794  	{Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                                                    // 880
 70795  	{Fscript: Tuint8_t(36), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 881
 70796  	{Fscript: Tuint8_t(36), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 882
 70797  	{Fscript: Tuint8_t(36), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(182)},                                             // 883
 70798  	{Fscript: Tuint8_t(36), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 884
 70799  	{Fscript: Tuint8_t(36), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 885
 70800  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18612), Fbprops: Tuint16_t(68)},                                             // 886
 70801  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18609), Fbprops: Tuint16_t(68)},                                             // 887
 70802  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18600), Fbprops: Tuint16_t(68)},                                             // 888
 70803  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14504), Fbprops: Tuint16_t(68)},                                             // 889
 70804  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14504), Fbprops: Tuint16_t(68)},                                             // 890
 70805  	{Fscript: Tuint8_t(37), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 891
 70806  	{Fscript: Tuint8_t(37), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 892
 70807  	{Fscript: Tuint8_t(37), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(124)},                                            // 893
 70808  	{Fscript: Tuint8_t(100), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 894
 70809  	{Fscript: Tuint8_t(100), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 895
 70810  	{Fscript: Tuint8_t(100), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 896
 70811  	{Fscript: Tuint8_t(100), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 897
 70812  	{Fscript: Tuint8_t(100), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 898
 70813  	{Fscript: Tuint8_t(100), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 899
 70814  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26666), Fbprops: Tuint16_t(96)},                                               // 900
 70815  	{Fscript: Tuint8_t(6), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18507), Fbprops: Tuint16_t(82)},                                               // 901
 70816  	{Fscript: Tuint8_t(39), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 902
 70817  	{Fscript: Tuint8_t(39), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 903
 70818  	{Fscript: Tuint8_t(39), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 904
 70819  	{Fscript: Tuint8_t(39), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 905
 70820  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18567), Fbprops: Tuint16_t(188)},                                            // 906
 70821  	{Fscript: Tuint8_t(39), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 907
 70822  	{Fscript: Tuint8_t(101), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 908
 70823  	{Fscript: Tuint8_t(101), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 909
 70824  	{Fscript: Tuint8_t(101), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 910
 70825  	{Fscript: Tuint8_t(101), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                            // 911
 70826  	{Fscript: Tuint8_t(101), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 912
 70827  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 913
 70828  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 914
 70829  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 915
 70830  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 916
 70831  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 917
 70832  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 918
 70833  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 919
 70834  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 920
 70835  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18480), Fbprops: Tuint16_t(136)},                                             // 921
 70836  	{Fscript: Tuint8_t(40), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 922
 70837  	{Fscript: Tuint8_t(16), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                             // 923
 70838  	{Fscript: Tuint8_t(105), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 924
 70839  	{Fscript: Tuint8_t(105), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 925
 70840  	{Fscript: Tuint8_t(105), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 926
 70841  	{Fscript: Tuint8_t(105), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 927
 70842  	{Fscript: Tuint8_t(105), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 928
 70843  	{Fscript: Tuint8_t(105), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 929
 70844  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 930
 70845  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 931
 70846  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(156)},                                            // 932
 70847  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 933
 70848  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(294)},                                            // 934
 70849  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                            // 935
 70850  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 936
 70851  	{Fscript: Tuint8_t(107), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 937
 70852  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 938
 70853  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 939
 70854  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 940
 70855  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 941
 70856  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                            // 942
 70857  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 943
 70858  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -928, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                                                  // 944
 70859  	{Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(92)},                                                                     // 945
 70860  	{Fscript: Tuint8_t(76), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -38864, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(70)},                         // 946
 70861  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(160)},                                            // 947
 70862  	{Fscript: Tuint8_t(113), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 948
 70863  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(9), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 949
 70864  	{Fscript: Tuint8_t(18), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(10), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 950
 70865  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(4), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432)},                                                                      // 951
 70866  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(3), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432)},                                                                      // 952
 70867  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(284)},                                             // 953
 70868  	{Fscript: Tuint8_t(71), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(118)},                                            // 954
 70869  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(296)},                                                                                    // 955
 70870  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28705), Fbprops: Tuint16_t(54)},                                             // 956
 70871  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28705), Fbprops: Tuint16_t(54)},                                             // 957
 70872  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(298)},                                              // 958
 70873  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(39), Fbprops: Tuint16_t(82)},                                                  // 959
 70874  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28711), Fbprops: Tuint16_t(68)},                                              // 960
 70875  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(178)},                                             // 961
 70876  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(300)},                                             // 962
 70877  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 963
 70878  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(122)},                                            // 964
 70879  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 965
 70880  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 966
 70881  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(126)},                                            // 967
 70882  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(302)},                                            // 968
 70883  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(302)},                                            // 969
 70884  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(106)},                                             // 970
 70885  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(304)},                                             // 971
 70886  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(306)},                                             // 972
 70887  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(124)},                                            // 973
 70888  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(158)},                                            // 974
 70889  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(158)},                                            // 975
 70890  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                             // 976
 70891  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(118)},                                            // 977
 70892  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(224)},                                            // 978
 70893  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(226)},                                            // 979
 70894  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(302)},                                            // 980
 70895  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(308)},                                            // 981
 70896  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(12288), Fbprops: Tuint16_t(126)},                                            // 982
 70897  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(8192), Fbprops: Tuint16_t(68)},                                              // 983
 70898  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(10240), Fbprops: Tuint16_t(310)},                                            // 984
 70899  	{Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(312)},                                                   // 985
 70900  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(314)},                                            // 986
 70901  	{Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(316)},                                                  // 987
 70902  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(124)},                                            // 988
 70903  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(22), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(318)},                                            // 989
 70904  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(18), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(318)},                                            // 990
 70905  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28825), Fbprops: Tuint16_t(106)},                                            // 991
 70906  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18525), Fbprops: Tuint16_t(320)},                                              // 992
 70907  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(322)},                                              // 993
 70908  	{Fscript: Tuint8_t(31), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 994
 70909  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18552), Fbprops: Tuint16_t(68)},                                             // 995
 70910  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28792), Fbprops: Tuint16_t(68)},                                             // 996
 70911  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18483), Fbprops: Tuint16_t(68)},                                             // 997
 70912  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18555), Fbprops: Tuint16_t(68)},                                             // 998
 70913  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18483), Fbprops: Tuint16_t(68)},                                             // 999
 70914  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(82)},                                              // 1000
 70915  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                              // 1001
 70916  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                              // 1002
 70917  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                              // 1003
 70918  	{Fscript: Tuint8_t(102), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1004
 70919  	{Fscript: Tuint8_t(103), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1005
 70920  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26651), Fbprops: Tuint16_t(96)},                                              // 1006
 70921  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(10267), Fbprops: Tuint16_t(68)},                                             // 1007
 70922  	{Fscript: Tuint8_t(81), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1008
 70923  	{Fscript: Tuint8_t(81), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1009
 70924  	{Fscript: Tuint8_t(82), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1010
 70925  	{Fscript: Tuint8_t(82), Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1011
 70926  	{Fscript: Tuint8_t(53), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1012
 70927  	{Fscript: Tuint8_t(53), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1013
 70928  	{Fscript: Tuint8_t(85), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1014
 70929  	{Fscript: Tuint8_t(85), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 1015
 70930  	{Fscript: Tuint8_t(91), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1016
 70931  	{Fscript: Tuint8_t(91), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 1017
 70932  	{Fscript: Tuint8_t(91), Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1018
 70933  	{Fscript: Tuint8_t(83), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 40, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                             // 1019
 70934  	{Fscript: Tuint8_t(83), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -40, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                            // 1020
 70935  	{Fscript: Tuint8_t(86), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1021
 70936  	{Fscript: Tuint8_t(87), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1022
 70937  	{Fscript: Tuint8_t(87), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1023
 70938  	{Fscript: Tuint8_t(145), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 40, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 1024
 70939  	{Fscript: Tuint8_t(145), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -40, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                           // 1025
 70940  	{Fscript: Tuint8_t(127), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1026
 70941  	{Fscript: Tuint8_t(125), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1027
 70942  	{Fscript: Tuint8_t(125), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1028
 70943  	{Fscript: Tuint8_t(161), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 39, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 1029
 70944  	{Fscript: Tuint8_t(161), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -39, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                           // 1030
 70945  	{Fscript: Tuint8_t(49), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1031
 70946  	{Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(94)},                                                                     // 1032
 70947  	{Fscript: Tuint8_t(32), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 1033
 70948  	{Fscript: Tuint8_t(114), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1034
 70949  	{Fscript: Tuint8_t(114), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(106)},                                           // 1035
 70950  	{Fscript: Tuint8_t(114), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1036
 70951  	{Fscript: Tuint8_t(133), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1037
 70952  	{Fscript: Tuint8_t(133), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1038
 70953  	{Fscript: Tuint8_t(133), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1039
 70954  	{Fscript: Tuint8_t(132), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1040
 70955  	{Fscript: Tuint8_t(132), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1041
 70956  	{Fscript: Tuint8_t(139), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1042
 70957  	{Fscript: Tuint8_t(139), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1043
 70958  	{Fscript: Tuint8_t(95), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 1044
 70959  	{Fscript: Tuint8_t(95), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1045
 70960  	{Fscript: Tuint8_t(95), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(106)},                                            // 1046
 70961  	{Fscript: Tuint8_t(104), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1047
 70962  	{Fscript: Tuint8_t(104), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1048
 70963  	{Fscript: Tuint8_t(122), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1049
 70964  	{Fscript: Tuint8_t(121), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1050
 70965  	{Fscript: Tuint8_t(121), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1051
 70966  	{Fscript: Tuint8_t(92), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 1052
 70967  	{Fscript: Tuint8_t(92), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1053
 70968  	{Fscript: Tuint8_t(92), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 1054
 70969  	{Fscript: Tuint8_t(92), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(182)},                                             // 1055
 70970  	{Fscript: Tuint8_t(92), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1056
 70971  	{Fscript: Tuint8_t(92), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1057
 70972  	{Fscript: Tuint8_t(92), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(124)},                                            // 1058
 70973  	{Fscript: Tuint8_t(115), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1059
 70974  	{Fscript: Tuint8_t(115), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1060
 70975  	{Fscript: Tuint8_t(115), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1061
 70976  	{Fscript: Tuint8_t(131), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1062
 70977  	{Fscript: Tuint8_t(131), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1063
 70978  	{Fscript: Tuint8_t(51), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 1064
 70979  	{Fscript: Tuint8_t(51), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1065
 70980  	{Fscript: Tuint8_t(51), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1066
 70981  	{Fscript: Tuint8_t(51), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1067
 70982  	{Fscript: Tuint8_t(51), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(106)},                                            // 1068
 70983  	{Fscript: Tuint8_t(51), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34918), Fbprops: Tuint16_t(106)},                                            // 1069
 70984  	{Fscript: Tuint8_t(51), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1070
 70985  	{Fscript: Tuint8_t(108), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1071
 70986  	{Fscript: Tuint8_t(108), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                            // 1072
 70987  	{Fscript: Tuint8_t(108), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(106)},                                           // 1073
 70988  	{Fscript: Tuint8_t(116), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1074
 70989  	{Fscript: Tuint8_t(116), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1075
 70990  	{Fscript: Tuint8_t(117), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1076
 70991  	{Fscript: Tuint8_t(117), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1077
 70992  	{Fscript: Tuint8_t(54), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 1078
 70993  	{Fscript: Tuint8_t(54), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(106)},                                            // 1079
 70994  	{Fscript: Tuint8_t(54), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1080
 70995  	{Fscript: Tuint8_t(118), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1081
 70996  	{Fscript: Tuint8_t(140), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 64, Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(74)},                            // 1082
 70997  	{Fscript: Tuint8_t(140), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -64, Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(76)},                           // 1083
 70998  	{Fscript: Tuint8_t(140), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1084
 70999  	{Fscript: Tuint8_t(62), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(82)},                                                                                    // 1085
 71000  	{Fscript: Tuint8_t(62), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(294)},                                                                                   // 1086
 71001  	{Fscript: Tuint8_t(62), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(128)},                                             // 1087
 71002  	{Fscript: Tuint8_t(62), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(2048), Fbprops: Tuint16_t(138)},                                             // 1088
 71003  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(2048), Fbprops: Tuint16_t(68)},                                               // 1089
 71004  	{Fscript: Tuint8_t(65), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 1090
 71005  	{Fscript: Tuint8_t(65), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1091
 71006  	{Fscript: Tuint8_t(65), Fchartype: Tuint8_t(17), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(126)},                                            // 1092
 71007  	{Fscript: Tuint8_t(152), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1093
 71008  	{Fscript: Tuint8_t(152), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1094
 71009  	{Fscript: Tuint8_t(63), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(82)},                                                                                    // 1095
 71010  	{Fscript: Tuint8_t(63), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1096
 71011  	{Fscript: Tuint8_t(63), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                   // 1097
 71012  	{Fscript: Tuint8_t(63), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(124)},                                                                                  // 1098
 71013  	{Fscript: Tuint8_t(67), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                              // 1099
 71014  	{Fscript: Tuint8_t(67), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1100
 71015  	{Fscript: Tuint8_t(67), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(124)},                                            // 1101
 71016  	{Fscript: Tuint8_t(156), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1102
 71017  	{Fscript: Tuint8_t(156), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1103
 71018  	{Fscript: Tuint8_t(153), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1104
 71019  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1105
 71020  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1106
 71021  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1107
 71022  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 1108
 71023  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1109
 71024  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1110
 71025  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                            // 1111
 71026  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1112
 71027  	{Fscript: Tuint8_t(120), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(182)},                                            // 1113
 71028  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 1114
 71029  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1115
 71030  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1116
 71031  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1117
 71032  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1118
 71033  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1119
 71034  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1120
 71035  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(132)},                                              // 1121
 71036  	{Fscript: Tuint8_t(41), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 1122
 71037  	{Fscript: Tuint8_t(124), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1123
 71038  	{Fscript: Tuint8_t(124), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1124
 71039  	{Fscript: Tuint8_t(43), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1125
 71040  	{Fscript: Tuint8_t(43), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1126
 71041  	{Fscript: Tuint8_t(43), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1127
 71042  	{Fscript: Tuint8_t(43), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1128
 71043  	{Fscript: Tuint8_t(43), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1129
 71044  	{Fscript: Tuint8_t(43), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1130
 71045  	{Fscript: Tuint8_t(43), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 1131
 71046  	{Fscript: Tuint8_t(50), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1132
 71047  	{Fscript: Tuint8_t(50), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1133
 71048  	{Fscript: Tuint8_t(50), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1134
 71049  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1135
 71050  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1136
 71051  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1137
 71052  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 1138
 71053  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 1139
 71054  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 1140
 71055  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1141
 71056  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 1142
 71057  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1143
 71058  	{Fscript: Tuint8_t(44), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1144
 71059  	{Fscript: Tuint8_t(15), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1145
 71060  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1146
 71061  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1147
 71062  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1148
 71063  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 1149
 71064  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1150
 71065  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 1151
 71066  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 1152
 71067  	{Fscript: Tuint8_t(48), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1153
 71068  	{Fscript: Tuint8_t(57), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1154
 71069  	{Fscript: Tuint8_t(57), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 1155
 71070  	{Fscript: Tuint8_t(55), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1156
 71071  	{Fscript: Tuint8_t(55), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1157
 71072  	{Fscript: Tuint8_t(55), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1158
 71073  	{Fscript: Tuint8_t(55), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1159
 71074  	{Fscript: Tuint8_t(55), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1160
 71075  	{Fscript: Tuint8_t(55), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1161
 71076  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1162
 71077  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26705), Fbprops: Tuint16_t(130)},                                             // 1163
 71078  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1164
 71079  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18513), Fbprops: Tuint16_t(144)},                                             // 1165
 71080  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1166
 71081  	{Fscript: Tuint8_t(84), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26705), Fbprops: Tuint16_t(102)},                                             // 1167
 71082  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26705), Fbprops: Tuint16_t(96)},                                              // 1168
 71083  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 1169
 71084  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 1170
 71085  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(324)},                                             // 1171
 71086  	{Fscript: Tuint8_t(47), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1172
 71087  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1173
 71088  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1174
 71089  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1175
 71090  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 1176
 71091  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1177
 71092  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1178
 71093  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1179
 71094  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1180
 71095  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1181
 71096  	{Fscript: Tuint8_t(144), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                            // 1182
 71097  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1183
 71098  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                             // 1184
 71099  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1185
 71100  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1186
 71101  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1187
 71102  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1188
 71103  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1189
 71104  	{Fscript: Tuint8_t(56), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1190
 71105  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1191
 71106  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                            // 1192
 71107  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1193
 71108  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1194
 71109  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 1195
 71110  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1196
 71111  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1197
 71112  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1198
 71113  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1199
 71114  	{Fscript: Tuint8_t(135), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(176)},                                           // 1200
 71115  	{Fscript: Tuint8_t(52), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1201
 71116  	{Fscript: Tuint8_t(52), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1202
 71117  	{Fscript: Tuint8_t(52), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1203
 71118  	{Fscript: Tuint8_t(52), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1204
 71119  	{Fscript: Tuint8_t(52), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 1205
 71120  	{Fscript: Tuint8_t(52), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1206
 71121  	{Fscript: Tuint8_t(52), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1207
 71122  	{Fscript: Tuint8_t(45), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1208
 71123  	{Fscript: Tuint8_t(45), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1209
 71124  	{Fscript: Tuint8_t(45), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1210
 71125  	{Fscript: Tuint8_t(45), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                             // 1211
 71126  	{Fscript: Tuint8_t(45), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1212
 71127  	{Fscript: Tuint8_t(45), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1213
 71128  	{Fscript: Tuint8_t(45), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1214
 71129  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1215
 71130  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1216
 71131  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                           // 1217
 71132  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1218
 71133  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 1219
 71134  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1220
 71135  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1221
 71136  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1222
 71137  	{Fscript: Tuint8_t(137), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1223
 71138  	{Fscript: Tuint8_t(60), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1224
 71139  	{Fscript: Tuint8_t(60), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1225
 71140  	{Fscript: Tuint8_t(60), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1226
 71141  	{Fscript: Tuint8_t(60), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1227
 71142  	{Fscript: Tuint8_t(60), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1228
 71143  	{Fscript: Tuint8_t(60), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1229
 71144  	{Fscript: Tuint8_t(136), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 1230
 71145  	{Fscript: Tuint8_t(136), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                           // 1231
 71146  	{Fscript: Tuint8_t(136), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1232
 71147  	{Fscript: Tuint8_t(136), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1233
 71148  	{Fscript: Tuint8_t(136), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1234
 71149  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1235
 71150  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(148)},                                            // 1236
 71151  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1237
 71152  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1238
 71153  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(172)},                                            // 1239
 71154  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 1240
 71155  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1241
 71156  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1242
 71157  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1243
 71158  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1244
 71159  	{Fscript: Tuint8_t(157), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1245
 71160  	{Fscript: Tuint8_t(64), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1246
 71161  	{Fscript: Tuint8_t(64), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1247
 71162  	{Fscript: Tuint8_t(64), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1248
 71163  	{Fscript: Tuint8_t(64), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1249
 71164  	{Fscript: Tuint8_t(64), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1250
 71165  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1251
 71166  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1252
 71167  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(130)},                                            // 1253
 71168  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                            // 1254
 71169  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 1255
 71170  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1256
 71171  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1257
 71172  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1258
 71173  	{Fscript: Tuint8_t(149), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1259
 71174  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1260
 71175  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1261
 71176  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1262
 71177  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1263
 71178  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(326)},                                            // 1264
 71179  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                            // 1265
 71180  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1266
 71181  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1267
 71182  	{Fscript: Tuint8_t(148), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1268
 71183  	{Fscript: Tuint8_t(134), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1269
 71184  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1270
 71185  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1271
 71186  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1272
 71187  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(146)},                                            // 1273
 71188  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1274
 71189  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1275
 71190  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1276
 71191  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1277
 71192  	{Fscript: Tuint8_t(142), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1278
 71193  	{Fscript: Tuint8_t(143), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1279
 71194  	{Fscript: Tuint8_t(143), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1280
 71195  	{Fscript: Tuint8_t(143), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1281
 71196  	{Fscript: Tuint8_t(143), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1282
 71197  	{Fscript: Tuint8_t(143), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1283
 71198  	{Fscript: Tuint8_t(59), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1284
 71199  	{Fscript: Tuint8_t(59), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1285
 71200  	{Fscript: Tuint8_t(59), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1286
 71201  	{Fscript: Tuint8_t(59), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1287
 71202  	{Fscript: Tuint8_t(59), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(4), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                               // 1288
 71203  	{Fscript: Tuint8_t(59), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1289
 71204  	{Fscript: Tuint8_t(61), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1290
 71205  	{Fscript: Tuint8_t(61), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                             // 1291
 71206  	{Fscript: Tuint8_t(61), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1292
 71207  	{Fscript: Tuint8_t(61), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(146)},                                             // 1293
 71208  	{Fscript: Tuint8_t(61), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                            // 1294
 71209  	{Fscript: Tuint8_t(150), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1295
 71210  	{Fscript: Tuint8_t(150), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1296
 71211  	{Fscript: Tuint8_t(150), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1297
 71212  	{Fscript: Tuint8_t(150), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1298
 71213  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1299
 71214  	{Fscript: Tuint8_t(11), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1300
 71215  	{Fscript: Tuint8_t(94), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1301
 71216  	{Fscript: Tuint8_t(94), Fchartype: Tuint8_t(14), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1302
 71217  	{Fscript: Tuint8_t(94), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                            // 1303
 71218  	{Fscript: Tuint8_t(66), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1304
 71219  	{Fscript: Tuint8_t(66), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1305
 71220  	{Fscript: Tuint8_t(109), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1306
 71221  	{Fscript: Tuint8_t(109), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(322)},                                             // 1307
 71222  	{Fscript: Tuint8_t(138), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1308
 71223  	{Fscript: Tuint8_t(130), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1309
 71224  	{Fscript: Tuint8_t(130), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1310
 71225  	{Fscript: Tuint8_t(130), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1311
 71226  	{Fscript: Tuint8_t(159), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1312
 71227  	{Fscript: Tuint8_t(159), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1313
 71228  	{Fscript: Tuint8_t(126), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1314
 71229  	{Fscript: Tuint8_t(126), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1315
 71230  	{Fscript: Tuint8_t(126), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1316
 71231  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1317
 71232  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1318
 71233  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1319
 71234  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1320
 71235  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1321
 71236  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1322
 71237  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                            // 1323
 71238  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                            // 1324
 71239  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1325
 71240  	{Fscript: Tuint8_t(128), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1326
 71241  	{Fscript: Tuint8_t(151), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(74)},                            // 1327
 71242  	{Fscript: Tuint8_t(151), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -32, Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(76)},                           // 1328
 71243  	{Fscript: Tuint8_t(151), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1329
 71244  	{Fscript: Tuint8_t(151), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1330
 71245  	{Fscript: Tuint8_t(151), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1331
 71246  	{Fscript: Tuint8_t(151), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1332
 71247  	{Fscript: Tuint8_t(123), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1333
 71248  	{Fscript: Tuint8_t(123), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                            // 1334
 71249  	{Fscript: Tuint8_t(123), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(144)},                                            // 1335
 71250  	{Fscript: Tuint8_t(123), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(128)},                                            // 1336
 71251  	{Fscript: Tuint8_t(123), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(92)},                                             // 1337
 71252  	{Fscript: Tuint8_t(146), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                            // 1338
 71253  	{Fscript: Tuint8_t(147), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                            // 1339
 71254  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(68)},                                             // 1340
 71255  	{Fscript: Tuint8_t(158), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(328)},                                            // 1341
 71256  	{Fscript: Tuint8_t(23), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(164)},                                             // 1342
 71257  	{Fscript: Tuint8_t(146), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(284)},                                            // 1343
 71258  	{Fscript: Tuint8_t(158), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(284)},                                            // 1344
 71259  	{Fscript: Tuint8_t(21), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(92)},                                              // 1345
 71260  	{Fscript: Tuint8_t(147), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(284)},                                            // 1346
 71261  	{Fscript: Tuint8_t(46), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                              // 1347
 71262  	{Fscript: Tuint8_t(46), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1348
 71263  	{Fscript: Tuint8_t(46), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                             // 1349
 71264  	{Fscript: Tuint8_t(46), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1350
 71265  	{Fscript: Tuint8_t(46), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                            // 1351
 71266  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(2), Fscriptx_bidiclass: Tuint16_t(6153), Fbprops: Tuint16_t(66)},                                                // 1352
 71267  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(330)},                                             // 1353
 71268  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                             // 1354
 71269  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(5), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(160)},                                             // 1355
 71270  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(10), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(286)},                                             // 1356
 71271  	{Fscript: Tuint8_t(1), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                              // 1357
 71272  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(25), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(118)},                                            // 1358
 71273  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(10240), Fbprops: Tuint16_t(214)},                                            // 1359
 71274  	{Fscript: Tuint8_t(141), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1360
 71275  	{Fscript: Tuint8_t(141), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(102)},                                            // 1361
 71276  	{Fscript: Tuint8_t(141), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(106)},                                           // 1362
 71277  	{Fscript: Tuint8_t(141), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(124)},                                           // 1363
 71278  	{Fscript: Tuint8_t(141), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1364
 71279  	{Fscript: Tuint8_t(35), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1365
 71280  	{Fscript: Tuint8_t(154), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1366
 71281  	{Fscript: Tuint8_t(154), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1367
 71282  	{Fscript: Tuint8_t(154), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(142)},                                            // 1368
 71283  	{Fscript: Tuint8_t(154), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(136)},                                            // 1369
 71284  	{Fscript: Tuint8_t(154), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1370
 71285  	{Fscript: Tuint8_t(154), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                            // 1371
 71286  	{Fscript: Tuint8_t(160), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1372
 71287  	{Fscript: Tuint8_t(160), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1373
 71288  	{Fscript: Tuint8_t(155), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(82)},                                             // 1374
 71289  	{Fscript: Tuint8_t(155), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1375
 71290  	{Fscript: Tuint8_t(155), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(138)},                                           // 1376
 71291  	{Fscript: Tuint8_t(155), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(14336), Fbprops: Tuint16_t(68)},                                            // 1377
 71292  	{Fscript: Tuint8_t(129), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(82)},                                             // 1378
 71293  	{Fscript: Tuint8_t(129), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                            // 1379
 71294  	{Fscript: Tuint8_t(129), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                             // 1380
 71295  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(9), Fgbprop: Tuint8_t(12), Fother_case: 34, Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(74)},                             // 1381
 71296  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(5), Fgbprop: Tuint8_t(12), Fother_case: -34, Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(76)},                            // 1382
 71297  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(150)},                                             // 1383
 71298  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(130)},                                             // 1384
 71299  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(12), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(26624), Fbprops: Tuint16_t(96)},                                              // 1385
 71300  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(6), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(142)},                                             // 1386
 71301  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(138)},                                            // 1387
 71302  	{Fscript: Tuint8_t(58), Fchartype: Tuint8_t(21), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(34816), Fbprops: Tuint16_t(68)},                                             // 1388
 71303  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(15), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                   // 1389
 71304  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                   // 1390
 71305  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(23), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(68)},                                                                                   // 1391
 71306  	{Fscript: Tuint8_t(3), Fchartype: Tuint8_t(7), Fgbprop: Tuint8_t(12), Fbprops: Tuint16_t(240)},                                                                                    // 1392
 71307  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(332)},                                            // 1393
 71308  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(334)},                                            // 1394
 71309  	{Fscript: Tuint8_t(68), Fchartype: Tuint8_t(2), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(336)},                                             // 1395
 71310  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(338)},                                            // 1396
 71311  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(340)},                                            // 1397
 71312  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(334)},                                            // 1398
 71313  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(11), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(342)},                                            // 1399
 71314  	{Fscript: Tuint8_t(20), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(68)},                                             // 1400
 71315  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18432), Fbprops: Tuint16_t(236)},                                            // 1401
 71316  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(18447), Fbprops: Tuint16_t(334)},                                            // 1402
 71317  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(344)},                                            // 1403
 71318  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(346)},                                            // 1404
 71319  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(24), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(348)},                                             // 1405
 71320  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(26), Fgbprop: Tuint8_t(14), Fscriptx_bidiclass: Tuint16_t(28672), Fbprops: Tuint16_t(350)},                                            // 1406
 71321  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(13), Fgbprop: Tuint8_t(12), Fscriptx_bidiclass: Tuint16_t(10240), Fbprops: Tuint16_t(138)},                                            // 1407
 71322  	{Fscript: Tuint8_t(69), Fchartype: Tuint8_t(1), Fgbprop: Tuint8_t(3), Fscriptx_bidiclass: Tuint16_t(6144), Fbprops: Tuint16_t(352)},                                               // 1408
 71323  } /* pcre2_ucd.c:427:18 */
 71324  
 71325  var X_pcre2_ucd_stage1_8 = [8704]Tuint16_t{ // 17408 bytes
 71326  	Tuint16_t(0), Tuint16_t(1), Tuint16_t(2), Tuint16_t(3), Tuint16_t(4), Tuint16_t(5), Tuint16_t(6), Tuint16_t(7), Tuint16_t(8), Tuint16_t(9), Tuint16_t(10), Tuint16_t(11), Tuint16_t(12), Tuint16_t(13), Tuint16_t(14), Tuint16_t(15), // U+0000
 71327  	Tuint16_t(16), Tuint16_t(17), Tuint16_t(18), Tuint16_t(19), Tuint16_t(20), Tuint16_t(21), Tuint16_t(22), Tuint16_t(23), Tuint16_t(24), Tuint16_t(25), Tuint16_t(26), Tuint16_t(27), Tuint16_t(28), Tuint16_t(29), Tuint16_t(30), Tuint16_t(31), // U+0800
 71328  	Tuint16_t(32), Tuint16_t(33), Tuint16_t(34), Tuint16_t(35), Tuint16_t(36), Tuint16_t(37), Tuint16_t(38), Tuint16_t(39), Tuint16_t(40), Tuint16_t(41), Tuint16_t(41), Tuint16_t(41), Tuint16_t(42), Tuint16_t(43), Tuint16_t(44), Tuint16_t(45), // U+1000
 71329  	Tuint16_t(46), Tuint16_t(47), Tuint16_t(48), Tuint16_t(49), Tuint16_t(50), Tuint16_t(51), Tuint16_t(52), Tuint16_t(53), Tuint16_t(54), Tuint16_t(55), Tuint16_t(56), Tuint16_t(57), Tuint16_t(58), Tuint16_t(59), Tuint16_t(60), Tuint16_t(61), // U+1800
 71330  	Tuint16_t(62), Tuint16_t(63), Tuint16_t(64), Tuint16_t(65), Tuint16_t(66), Tuint16_t(67), Tuint16_t(68), Tuint16_t(69), Tuint16_t(70), Tuint16_t(71), Tuint16_t(72), Tuint16_t(73), Tuint16_t(74), Tuint16_t(75), Tuint16_t(76), Tuint16_t(77), // U+2000
 71331  	Tuint16_t(78), Tuint16_t(78), Tuint16_t(79), Tuint16_t(80), Tuint16_t(81), Tuint16_t(82), Tuint16_t(83), Tuint16_t(84), Tuint16_t(85), Tuint16_t(86), Tuint16_t(87), Tuint16_t(88), Tuint16_t(89), Tuint16_t(90), Tuint16_t(91), Tuint16_t(92), // U+2800
 71332  	Tuint16_t(93), Tuint16_t(94), Tuint16_t(95), Tuint16_t(96), Tuint16_t(97), Tuint16_t(98), Tuint16_t(99), Tuint16_t(100), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+3000
 71333  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+3800
 71334  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+4000
 71335  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(102), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+4800
 71336  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+5000
 71337  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+5800
 71338  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+6000
 71339  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+6800
 71340  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+7000
 71341  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+7800
 71342  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+8000
 71343  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+8800
 71344  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+9000
 71345  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+9800
 71346  	Tuint16_t(103), Tuint16_t(104), Tuint16_t(104), Tuint16_t(104), Tuint16_t(104), Tuint16_t(104), Tuint16_t(104), Tuint16_t(104), Tuint16_t(104), Tuint16_t(105), Tuint16_t(106), Tuint16_t(106), Tuint16_t(107), Tuint16_t(108), Tuint16_t(109), Tuint16_t(110), // U+A000
 71347  	Tuint16_t(111), Tuint16_t(112), Tuint16_t(113), Tuint16_t(114), Tuint16_t(115), Tuint16_t(116), Tuint16_t(117), Tuint16_t(118), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), // U+A800
 71348  	Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), // U+B000
 71349  	Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), // U+B800
 71350  	Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), // U+C000
 71351  	Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), // U+C800
 71352  	Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(122), Tuint16_t(123), Tuint16_t(124), Tuint16_t(125), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(126), // U+D000
 71353  	Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), Tuint16_t(127), // U+D800
 71354  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+E000
 71355  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+E800
 71356  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F000
 71357  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(129), Tuint16_t(129), Tuint16_t(130), Tuint16_t(131), Tuint16_t(132), Tuint16_t(133), Tuint16_t(134), Tuint16_t(135), Tuint16_t(136), Tuint16_t(137), Tuint16_t(138), Tuint16_t(139), Tuint16_t(140), Tuint16_t(141), // U+F800
 71358  	Tuint16_t(142), Tuint16_t(143), Tuint16_t(144), Tuint16_t(145), Tuint16_t(146), Tuint16_t(147), Tuint16_t(148), Tuint16_t(149), Tuint16_t(150), Tuint16_t(151), Tuint16_t(152), Tuint16_t(153), Tuint16_t(154), Tuint16_t(154), Tuint16_t(155), Tuint16_t(156), // U+10000
 71359  	Tuint16_t(157), Tuint16_t(158), Tuint16_t(159), Tuint16_t(160), Tuint16_t(161), Tuint16_t(162), Tuint16_t(163), Tuint16_t(164), Tuint16_t(165), Tuint16_t(166), Tuint16_t(167), Tuint16_t(168), Tuint16_t(169), Tuint16_t(170), Tuint16_t(171), Tuint16_t(172), // U+10800
 71360  	Tuint16_t(173), Tuint16_t(174), Tuint16_t(175), Tuint16_t(176), Tuint16_t(177), Tuint16_t(178), Tuint16_t(179), Tuint16_t(146), Tuint16_t(180), Tuint16_t(181), Tuint16_t(146), Tuint16_t(182), Tuint16_t(183), Tuint16_t(184), Tuint16_t(185), Tuint16_t(146), // U+11000
 71361  	Tuint16_t(186), Tuint16_t(187), Tuint16_t(188), Tuint16_t(189), Tuint16_t(190), Tuint16_t(191), Tuint16_t(146), Tuint16_t(146), Tuint16_t(192), Tuint16_t(193), Tuint16_t(194), Tuint16_t(195), Tuint16_t(146), Tuint16_t(196), Tuint16_t(146), Tuint16_t(197), // U+11800
 71362  	Tuint16_t(198), Tuint16_t(198), Tuint16_t(198), Tuint16_t(198), Tuint16_t(198), Tuint16_t(198), Tuint16_t(198), Tuint16_t(199), Tuint16_t(200), Tuint16_t(198), Tuint16_t(201), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+12000
 71363  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(202), // U+12800
 71364  	Tuint16_t(203), Tuint16_t(203), Tuint16_t(203), Tuint16_t(203), Tuint16_t(203), Tuint16_t(203), Tuint16_t(203), Tuint16_t(203), Tuint16_t(204), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+13000
 71365  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+13800
 71366  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(205), Tuint16_t(205), Tuint16_t(205), Tuint16_t(205), Tuint16_t(206), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+14000
 71367  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+14800
 71368  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+15000
 71369  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+15800
 71370  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+16000
 71371  	Tuint16_t(207), Tuint16_t(207), Tuint16_t(207), Tuint16_t(207), Tuint16_t(208), Tuint16_t(209), Tuint16_t(210), Tuint16_t(211), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(212), Tuint16_t(213), Tuint16_t(214), Tuint16_t(215), // U+16800
 71372  	Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), // U+17000
 71373  	Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), // U+17800
 71374  	Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(217), // U+18000
 71375  	Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(216), Tuint16_t(218), Tuint16_t(218), Tuint16_t(218), Tuint16_t(219), Tuint16_t(220), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+18800
 71376  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+19000
 71377  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+19800
 71378  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+1A000
 71379  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(221), // U+1A800
 71380  	Tuint16_t(222), Tuint16_t(223), Tuint16_t(224), Tuint16_t(225), Tuint16_t(225), Tuint16_t(226), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+1B000
 71381  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(227), Tuint16_t(228), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+1B800
 71382  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+1C000
 71383  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(229), Tuint16_t(230), // U+1C800
 71384  	Tuint16_t(231), Tuint16_t(232), Tuint16_t(233), Tuint16_t(234), Tuint16_t(235), Tuint16_t(236), Tuint16_t(237), Tuint16_t(146), Tuint16_t(238), Tuint16_t(239), Tuint16_t(240), Tuint16_t(241), Tuint16_t(242), Tuint16_t(243), Tuint16_t(244), Tuint16_t(245), // U+1D000
 71385  	Tuint16_t(246), Tuint16_t(246), Tuint16_t(246), Tuint16_t(246), Tuint16_t(247), Tuint16_t(248), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(249), Tuint16_t(146), // U+1D800
 71386  	Tuint16_t(250), Tuint16_t(146), Tuint16_t(251), Tuint16_t(146), Tuint16_t(146), Tuint16_t(252), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(253), // U+1E000
 71387  	Tuint16_t(254), Tuint16_t(255), Tuint16_t(256), Tuint16_t(168), Tuint16_t(168), Tuint16_t(168), Tuint16_t(168), Tuint16_t(168), Tuint16_t(257), Tuint16_t(258), Tuint16_t(259), Tuint16_t(168), Tuint16_t(260), Tuint16_t(261), Tuint16_t(168), Tuint16_t(168), // U+1E800
 71388  	Tuint16_t(262), Tuint16_t(263), Tuint16_t(264), Tuint16_t(265), Tuint16_t(266), Tuint16_t(267), Tuint16_t(268), Tuint16_t(269), Tuint16_t(270), Tuint16_t(271), Tuint16_t(272), Tuint16_t(273), Tuint16_t(274), Tuint16_t(275), Tuint16_t(276), Tuint16_t(277), // U+1F000
 71389  	Tuint16_t(278), Tuint16_t(279), Tuint16_t(280), Tuint16_t(281), Tuint16_t(282), Tuint16_t(283), Tuint16_t(284), Tuint16_t(285), Tuint16_t(267), Tuint16_t(267), Tuint16_t(267), Tuint16_t(267), Tuint16_t(267), Tuint16_t(267), Tuint16_t(267), Tuint16_t(286), // U+1F800
 71390  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+20000
 71391  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+20800
 71392  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+21000
 71393  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+21800
 71394  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+22000
 71395  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+22800
 71396  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+23000
 71397  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+23800
 71398  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+24000
 71399  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+24800
 71400  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+25000
 71401  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+25800
 71402  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+26000
 71403  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+26800
 71404  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+27000
 71405  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+27800
 71406  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+28000
 71407  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+28800
 71408  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+29000
 71409  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+29800
 71410  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(287), Tuint16_t(101), Tuint16_t(101), // U+2A000
 71411  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+2A800
 71412  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(288), Tuint16_t(101), // U+2B000
 71413  	Tuint16_t(289), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+2B800
 71414  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+2C000
 71415  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(290), Tuint16_t(101), Tuint16_t(101), // U+2C800
 71416  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+2D000
 71417  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+2D800
 71418  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+2E000
 71419  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(291), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+2E800
 71420  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+2F000
 71421  	Tuint16_t(129), Tuint16_t(129), Tuint16_t(129), Tuint16_t(129), Tuint16_t(292), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+2F800
 71422  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+30000
 71423  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), // U+30800
 71424  	Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(101), Tuint16_t(294), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+31000
 71425  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+31800
 71426  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+32000
 71427  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+32800
 71428  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+33000
 71429  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+33800
 71430  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+34000
 71431  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+34800
 71432  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+35000
 71433  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+35800
 71434  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+36000
 71435  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+36800
 71436  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+37000
 71437  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+37800
 71438  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+38000
 71439  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+38800
 71440  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+39000
 71441  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+39800
 71442  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3A000
 71443  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3A800
 71444  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3B000
 71445  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3B800
 71446  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3C000
 71447  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3C800
 71448  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3D000
 71449  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3D800
 71450  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3E000
 71451  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3E800
 71452  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+3F000
 71453  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+3F800
 71454  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+40000
 71455  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+40800
 71456  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+41000
 71457  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+41800
 71458  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+42000
 71459  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+42800
 71460  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+43000
 71461  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+43800
 71462  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+44000
 71463  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+44800
 71464  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+45000
 71465  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+45800
 71466  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+46000
 71467  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+46800
 71468  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+47000
 71469  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+47800
 71470  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+48000
 71471  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+48800
 71472  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+49000
 71473  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+49800
 71474  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4A000
 71475  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4A800
 71476  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4B000
 71477  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4B800
 71478  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4C000
 71479  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4C800
 71480  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4D000
 71481  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4D800
 71482  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4E000
 71483  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4E800
 71484  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+4F000
 71485  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+4F800
 71486  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+50000
 71487  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+50800
 71488  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+51000
 71489  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+51800
 71490  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+52000
 71491  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+52800
 71492  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+53000
 71493  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+53800
 71494  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+54000
 71495  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+54800
 71496  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+55000
 71497  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+55800
 71498  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+56000
 71499  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+56800
 71500  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+57000
 71501  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+57800
 71502  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+58000
 71503  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+58800
 71504  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+59000
 71505  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+59800
 71506  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5A000
 71507  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5A800
 71508  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5B000
 71509  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5B800
 71510  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5C000
 71511  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5C800
 71512  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5D000
 71513  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5D800
 71514  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5E000
 71515  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5E800
 71516  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+5F000
 71517  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+5F800
 71518  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+60000
 71519  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+60800
 71520  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+61000
 71521  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+61800
 71522  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+62000
 71523  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+62800
 71524  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+63000
 71525  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+63800
 71526  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+64000
 71527  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+64800
 71528  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+65000
 71529  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+65800
 71530  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+66000
 71531  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+66800
 71532  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+67000
 71533  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+67800
 71534  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+68000
 71535  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+68800
 71536  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+69000
 71537  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+69800
 71538  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6A000
 71539  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6A800
 71540  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6B000
 71541  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6B800
 71542  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6C000
 71543  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6C800
 71544  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6D000
 71545  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6D800
 71546  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6E000
 71547  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6E800
 71548  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+6F000
 71549  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+6F800
 71550  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+70000
 71551  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+70800
 71552  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+71000
 71553  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+71800
 71554  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+72000
 71555  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+72800
 71556  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+73000
 71557  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+73800
 71558  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+74000
 71559  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+74800
 71560  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+75000
 71561  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+75800
 71562  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+76000
 71563  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+76800
 71564  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+77000
 71565  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+77800
 71566  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+78000
 71567  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+78800
 71568  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+79000
 71569  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+79800
 71570  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7A000
 71571  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7A800
 71572  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7B000
 71573  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7B800
 71574  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7C000
 71575  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7C800
 71576  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7D000
 71577  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7D800
 71578  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7E000
 71579  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7E800
 71580  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+7F000
 71581  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+7F800
 71582  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+80000
 71583  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+80800
 71584  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+81000
 71585  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+81800
 71586  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+82000
 71587  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+82800
 71588  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+83000
 71589  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+83800
 71590  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+84000
 71591  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+84800
 71592  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+85000
 71593  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+85800
 71594  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+86000
 71595  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+86800
 71596  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+87000
 71597  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+87800
 71598  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+88000
 71599  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+88800
 71600  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+89000
 71601  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+89800
 71602  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8A000
 71603  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8A800
 71604  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8B000
 71605  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8B800
 71606  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8C000
 71607  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8C800
 71608  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8D000
 71609  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8D800
 71610  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8E000
 71611  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8E800
 71612  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+8F000
 71613  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+8F800
 71614  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+90000
 71615  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+90800
 71616  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+91000
 71617  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+91800
 71618  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+92000
 71619  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+92800
 71620  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+93000
 71621  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+93800
 71622  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+94000
 71623  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+94800
 71624  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+95000
 71625  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+95800
 71626  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+96000
 71627  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+96800
 71628  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+97000
 71629  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+97800
 71630  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+98000
 71631  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+98800
 71632  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+99000
 71633  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+99800
 71634  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9A000
 71635  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9A800
 71636  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9B000
 71637  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9B800
 71638  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9C000
 71639  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9C800
 71640  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9D000
 71641  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9D800
 71642  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9E000
 71643  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9E800
 71644  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+9F000
 71645  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+9F800
 71646  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A0000
 71647  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A0800
 71648  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A1000
 71649  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A1800
 71650  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A2000
 71651  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A2800
 71652  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A3000
 71653  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A3800
 71654  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A4000
 71655  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A4800
 71656  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A5000
 71657  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A5800
 71658  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A6000
 71659  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A6800
 71660  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A7000
 71661  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A7800
 71662  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A8000
 71663  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A8800
 71664  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A9000
 71665  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+A9800
 71666  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AA000
 71667  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AA800
 71668  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AB000
 71669  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AB800
 71670  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AC000
 71671  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AC800
 71672  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AD000
 71673  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AD800
 71674  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AE000
 71675  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AE800
 71676  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+AF000
 71677  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+AF800
 71678  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B0000
 71679  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B0800
 71680  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B1000
 71681  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B1800
 71682  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B2000
 71683  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B2800
 71684  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B3000
 71685  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B3800
 71686  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B4000
 71687  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B4800
 71688  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B5000
 71689  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B5800
 71690  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B6000
 71691  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B6800
 71692  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B7000
 71693  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B7800
 71694  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B8000
 71695  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B8800
 71696  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B9000
 71697  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+B9800
 71698  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BA000
 71699  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BA800
 71700  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BB000
 71701  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BB800
 71702  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BC000
 71703  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BC800
 71704  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BD000
 71705  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BD800
 71706  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BE000
 71707  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BE800
 71708  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+BF000
 71709  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+BF800
 71710  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C0000
 71711  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C0800
 71712  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C1000
 71713  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C1800
 71714  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C2000
 71715  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C2800
 71716  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C3000
 71717  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C3800
 71718  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C4000
 71719  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C4800
 71720  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C5000
 71721  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C5800
 71722  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C6000
 71723  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C6800
 71724  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C7000
 71725  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C7800
 71726  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C8000
 71727  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C8800
 71728  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C9000
 71729  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+C9800
 71730  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CA000
 71731  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CA800
 71732  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CB000
 71733  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CB800
 71734  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CC000
 71735  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CC800
 71736  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CD000
 71737  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CD800
 71738  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CE000
 71739  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CE800
 71740  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+CF000
 71741  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+CF800
 71742  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D0000
 71743  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D0800
 71744  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D1000
 71745  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D1800
 71746  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D2000
 71747  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D2800
 71748  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D3000
 71749  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D3800
 71750  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D4000
 71751  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D4800
 71752  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D5000
 71753  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D5800
 71754  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D6000
 71755  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D6800
 71756  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D7000
 71757  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D7800
 71758  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D8000
 71759  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D8800
 71760  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D9000
 71761  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+D9800
 71762  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DA000
 71763  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DA800
 71764  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DB000
 71765  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DB800
 71766  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DC000
 71767  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DC800
 71768  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DD000
 71769  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DD800
 71770  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DE000
 71771  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DE800
 71772  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+DF000
 71773  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+DF800
 71774  	Tuint16_t(295), Tuint16_t(296), Tuint16_t(297), Tuint16_t(298), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), // U+E0000
 71775  	Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), Tuint16_t(296), // U+E0800
 71776  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E1000
 71777  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E1800
 71778  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E2000
 71779  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E2800
 71780  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E3000
 71781  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E3800
 71782  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E4000
 71783  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E4800
 71784  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E5000
 71785  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E5800
 71786  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E6000
 71787  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E6800
 71788  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E7000
 71789  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E7800
 71790  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E8000
 71791  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E8800
 71792  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E9000
 71793  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+E9800
 71794  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EA000
 71795  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EA800
 71796  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EB000
 71797  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EB800
 71798  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EC000
 71799  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EC800
 71800  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+ED000
 71801  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+ED800
 71802  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EE000
 71803  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EE800
 71804  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), // U+EF000
 71805  	Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(146), Tuint16_t(293), // U+EF800
 71806  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F0000
 71807  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F0800
 71808  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F1000
 71809  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F1800
 71810  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F2000
 71811  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F2800
 71812  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F3000
 71813  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F3800
 71814  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F4000
 71815  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F4800
 71816  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F5000
 71817  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F5800
 71818  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F6000
 71819  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F6800
 71820  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F7000
 71821  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F7800
 71822  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F8000
 71823  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F8800
 71824  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F9000
 71825  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+F9800
 71826  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FA000
 71827  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FA800
 71828  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FB000
 71829  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FB800
 71830  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FC000
 71831  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FC800
 71832  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FD000
 71833  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FD800
 71834  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FE000
 71835  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FE800
 71836  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+FF000
 71837  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(299), // U+FF800
 71838  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+100000
 71839  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+100800
 71840  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+101000
 71841  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+101800
 71842  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+102000
 71843  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+102800
 71844  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+103000
 71845  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+103800
 71846  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+104000
 71847  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+104800
 71848  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+105000
 71849  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+105800
 71850  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+106000
 71851  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+106800
 71852  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+107000
 71853  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+107800
 71854  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+108000
 71855  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+108800
 71856  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+109000
 71857  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+109800
 71858  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10A000
 71859  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10A800
 71860  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10B000
 71861  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10B800
 71862  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10C000
 71863  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10C800
 71864  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10D000
 71865  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10D800
 71866  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10E000
 71867  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10E800
 71868  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), // U+10F000
 71869  	Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(128), Tuint16_t(299), // U+10F800
 71870  } /* pcre2_ucd.c:1839:16 */
 71871  
 71872  var X_pcre2_ucd_stage2_8 = [38400]Tuint16_t{ // 76800 bytes, block = 128
 71873  
 71874  	// block 0
 71875  	Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(1), Tuint16_t(2), Tuint16_t(1), Tuint16_t(3), Tuint16_t(4), Tuint16_t(0), Tuint16_t(0),
 71876  	Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(0), Tuint16_t(5), Tuint16_t(5), Tuint16_t(5), Tuint16_t(6),
 71877  	Tuint16_t(7), Tuint16_t(8), Tuint16_t(9), Tuint16_t(10), Tuint16_t(11), Tuint16_t(12), Tuint16_t(13), Tuint16_t(14), Tuint16_t(15), Tuint16_t(16), Tuint16_t(17), Tuint16_t(18), Tuint16_t(19), Tuint16_t(20), Tuint16_t(21), Tuint16_t(22),
 71878  	Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(23), Tuint16_t(24), Tuint16_t(25), Tuint16_t(26), Tuint16_t(27), Tuint16_t(26), Tuint16_t(8),
 71879  	Tuint16_t(13), Tuint16_t(28), Tuint16_t(28), Tuint16_t(28), Tuint16_t(28), Tuint16_t(28), Tuint16_t(28), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(30), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29),
 71880  	Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(31), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(29), Tuint16_t(15), Tuint16_t(13), Tuint16_t(16), Tuint16_t(32), Tuint16_t(33),
 71881  	Tuint16_t(34), Tuint16_t(35), Tuint16_t(35), Tuint16_t(35), Tuint16_t(35), Tuint16_t(35), Tuint16_t(35), Tuint16_t(36), Tuint16_t(36), Tuint16_t(37), Tuint16_t(37), Tuint16_t(38), Tuint16_t(36), Tuint16_t(36), Tuint16_t(36), Tuint16_t(36),
 71882  	Tuint16_t(36), Tuint16_t(36), Tuint16_t(36), Tuint16_t(39), Tuint16_t(36), Tuint16_t(36), Tuint16_t(36), Tuint16_t(36), Tuint16_t(36), Tuint16_t(36), Tuint16_t(36), Tuint16_t(15), Tuint16_t(27), Tuint16_t(16), Tuint16_t(27), Tuint16_t(0),
 71883  
 71884  	// block 1
 71885  	Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(41), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40),
 71886  	Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40), Tuint16_t(40),
 71887  	Tuint16_t(42), Tuint16_t(43), Tuint16_t(44), Tuint16_t(44), Tuint16_t(44), Tuint16_t(44), Tuint16_t(45), Tuint16_t(43), Tuint16_t(46), Tuint16_t(47), Tuint16_t(48), Tuint16_t(49), Tuint16_t(50), Tuint16_t(51), Tuint16_t(47), Tuint16_t(46),
 71888  	Tuint16_t(52), Tuint16_t(53), Tuint16_t(54), Tuint16_t(54), Tuint16_t(46), Tuint16_t(55), Tuint16_t(43), Tuint16_t(56), Tuint16_t(46), Tuint16_t(54), Tuint16_t(48), Tuint16_t(57), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(43),
 71889  	Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(60), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59),
 71890  	Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(50), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(61),
 71891  	Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(63), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62),
 71892  	Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(50), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(64),
 71893  
 71894  	// block 2
 71895  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71896  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71897  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(67),
 71898  	Tuint16_t(68), Tuint16_t(69), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65),
 71899  	Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(71), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71900  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71901  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71902  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(72), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(73),
 71903  
 71904  	// block 3
 71905  	Tuint16_t(74), Tuint16_t(75), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(76), Tuint16_t(65), Tuint16_t(66), Tuint16_t(77), Tuint16_t(77), Tuint16_t(65), Tuint16_t(66), Tuint16_t(70), Tuint16_t(78), Tuint16_t(79),
 71906  	Tuint16_t(80), Tuint16_t(65), Tuint16_t(66), Tuint16_t(77), Tuint16_t(81), Tuint16_t(82), Tuint16_t(83), Tuint16_t(84), Tuint16_t(65), Tuint16_t(66), Tuint16_t(85), Tuint16_t(70), Tuint16_t(83), Tuint16_t(86), Tuint16_t(87), Tuint16_t(88),
 71907  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(89), Tuint16_t(65), Tuint16_t(66), Tuint16_t(89), Tuint16_t(70), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(89), Tuint16_t(65),
 71908  	Tuint16_t(66), Tuint16_t(90), Tuint16_t(90), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(91), Tuint16_t(65), Tuint16_t(66), Tuint16_t(70), Tuint16_t(92), Tuint16_t(65), Tuint16_t(66), Tuint16_t(70), Tuint16_t(93),
 71909  	Tuint16_t(92), Tuint16_t(92), Tuint16_t(92), Tuint16_t(92), Tuint16_t(94), Tuint16_t(95), Tuint16_t(96), Tuint16_t(97), Tuint16_t(98), Tuint16_t(99), Tuint16_t(100), Tuint16_t(101), Tuint16_t(102), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65),
 71910  	Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(103), Tuint16_t(65), Tuint16_t(66),
 71911  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71912  	Tuint16_t(69), Tuint16_t(104), Tuint16_t(105), Tuint16_t(106), Tuint16_t(65), Tuint16_t(66), Tuint16_t(107), Tuint16_t(108), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71913  
 71914  	// block 4
 71915  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71916  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71917  	Tuint16_t(109), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71918  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(110), Tuint16_t(65), Tuint16_t(66), Tuint16_t(111), Tuint16_t(112), Tuint16_t(113),
 71919  	Tuint16_t(113), Tuint16_t(65), Tuint16_t(66), Tuint16_t(114), Tuint16_t(115), Tuint16_t(116), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(67), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 71920  	Tuint16_t(117), Tuint16_t(118), Tuint16_t(119), Tuint16_t(120), Tuint16_t(121), Tuint16_t(70), Tuint16_t(122), Tuint16_t(122), Tuint16_t(70), Tuint16_t(123), Tuint16_t(70), Tuint16_t(124), Tuint16_t(125), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 71921  	Tuint16_t(122), Tuint16_t(126), Tuint16_t(70), Tuint16_t(127), Tuint16_t(70), Tuint16_t(128), Tuint16_t(129), Tuint16_t(70), Tuint16_t(130), Tuint16_t(131), Tuint16_t(129), Tuint16_t(132), Tuint16_t(133), Tuint16_t(70), Tuint16_t(70), Tuint16_t(131),
 71922  	Tuint16_t(70), Tuint16_t(134), Tuint16_t(135), Tuint16_t(70), Tuint16_t(70), Tuint16_t(136), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(137), Tuint16_t(70), Tuint16_t(70),
 71923  
 71924  	// block 5
 71925  	Tuint16_t(138), Tuint16_t(70), Tuint16_t(139), Tuint16_t(138), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(140), Tuint16_t(138), Tuint16_t(141), Tuint16_t(142), Tuint16_t(142), Tuint16_t(143), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 71926  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(144), Tuint16_t(70), Tuint16_t(92), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(145), Tuint16_t(146), Tuint16_t(70),
 71927  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 71928  	Tuint16_t(147), Tuint16_t(147), Tuint16_t(148), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(149), Tuint16_t(149), Tuint16_t(150), Tuint16_t(150), Tuint16_t(150), Tuint16_t(150), Tuint16_t(150),
 71929  	Tuint16_t(151), Tuint16_t(151), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149),
 71930  	Tuint16_t(152), Tuint16_t(152), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46),
 71931  	Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(153), Tuint16_t(153), Tuint16_t(149), Tuint16_t(46), Tuint16_t(150), Tuint16_t(46),
 71932  	Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46),
 71933  
 71934  	// block 6
 71935  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 71936  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 71937  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 71938  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 71939  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(155), Tuint16_t(154), Tuint16_t(154), Tuint16_t(156), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(157),
 71940  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 71941  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159), Tuint16_t(159),
 71942  	Tuint16_t(160), Tuint16_t(161), Tuint16_t(160), Tuint16_t(161), Tuint16_t(149), Tuint16_t(162), Tuint16_t(160), Tuint16_t(161), Tuint16_t(163), Tuint16_t(163), Tuint16_t(164), Tuint16_t(165), Tuint16_t(165), Tuint16_t(165), Tuint16_t(166), Tuint16_t(167),
 71943  
 71944  	// block 7
 71945  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(162), Tuint16_t(46), Tuint16_t(168), Tuint16_t(169), Tuint16_t(170), Tuint16_t(170), Tuint16_t(170), Tuint16_t(163), Tuint16_t(171), Tuint16_t(163), Tuint16_t(172), Tuint16_t(172),
 71946  	Tuint16_t(173), Tuint16_t(174), Tuint16_t(175), Tuint16_t(174), Tuint16_t(174), Tuint16_t(176), Tuint16_t(174), Tuint16_t(174), Tuint16_t(177), Tuint16_t(178), Tuint16_t(179), Tuint16_t(174), Tuint16_t(180), Tuint16_t(174), Tuint16_t(174), Tuint16_t(174),
 71947  	Tuint16_t(181), Tuint16_t(182), Tuint16_t(163), Tuint16_t(183), Tuint16_t(174), Tuint16_t(174), Tuint16_t(184), Tuint16_t(174), Tuint16_t(174), Tuint16_t(185), Tuint16_t(174), Tuint16_t(174), Tuint16_t(186), Tuint16_t(187), Tuint16_t(187), Tuint16_t(187),
 71948  	Tuint16_t(173), Tuint16_t(188), Tuint16_t(189), Tuint16_t(188), Tuint16_t(188), Tuint16_t(190), Tuint16_t(188), Tuint16_t(188), Tuint16_t(191), Tuint16_t(192), Tuint16_t(193), Tuint16_t(188), Tuint16_t(194), Tuint16_t(188), Tuint16_t(188), Tuint16_t(188),
 71949  	Tuint16_t(195), Tuint16_t(196), Tuint16_t(197), Tuint16_t(198), Tuint16_t(188), Tuint16_t(188), Tuint16_t(199), Tuint16_t(188), Tuint16_t(188), Tuint16_t(200), Tuint16_t(188), Tuint16_t(188), Tuint16_t(201), Tuint16_t(202), Tuint16_t(202), Tuint16_t(203),
 71950  	Tuint16_t(204), Tuint16_t(205), Tuint16_t(206), Tuint16_t(207), Tuint16_t(207), Tuint16_t(208), Tuint16_t(209), Tuint16_t(210), Tuint16_t(160), Tuint16_t(161), Tuint16_t(160), Tuint16_t(161), Tuint16_t(160), Tuint16_t(161), Tuint16_t(160), Tuint16_t(161),
 71951  	Tuint16_t(160), Tuint16_t(161), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212),
 71952  	Tuint16_t(213), Tuint16_t(214), Tuint16_t(215), Tuint16_t(216), Tuint16_t(217), Tuint16_t(218), Tuint16_t(219), Tuint16_t(160), Tuint16_t(161), Tuint16_t(220), Tuint16_t(160), Tuint16_t(161), Tuint16_t(221), Tuint16_t(222), Tuint16_t(222), Tuint16_t(222),
 71953  
 71954  	// block 8
 71955  	Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223), Tuint16_t(223),
 71956  	Tuint16_t(224), Tuint16_t(224), Tuint16_t(225), Tuint16_t(224), Tuint16_t(226), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(227), Tuint16_t(224),
 71957  	Tuint16_t(224), Tuint16_t(228), Tuint16_t(229), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(230), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224), Tuint16_t(224),
 71958  	Tuint16_t(231), Tuint16_t(231), Tuint16_t(232), Tuint16_t(231), Tuint16_t(233), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(234), Tuint16_t(231),
 71959  	Tuint16_t(231), Tuint16_t(235), Tuint16_t(236), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(237), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231), Tuint16_t(231),
 71960  	Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(239), Tuint16_t(238), Tuint16_t(239), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238), Tuint16_t(238),
 71961  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(242), Tuint16_t(243), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71962  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71963  
 71964  	// block 9
 71965  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(244), Tuint16_t(245), Tuint16_t(246), Tuint16_t(247), Tuint16_t(247), Tuint16_t(246), Tuint16_t(248), Tuint16_t(248), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71966  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71967  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71968  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71969  	Tuint16_t(249), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(250),
 71970  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71971  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71972  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71973  
 71974  	// block 10
 71975  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71976  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71977  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 71978  	Tuint16_t(163), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251),
 71979  	Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251),
 71980  	Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(251), Tuint16_t(163), Tuint16_t(163), Tuint16_t(252), Tuint16_t(253), Tuint16_t(253), Tuint16_t(253), Tuint16_t(253), Tuint16_t(253), Tuint16_t(254),
 71981  	Tuint16_t(255), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256),
 71982  	Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256),
 71983  
 71984  	// block 11
 71985  	Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(256), Tuint16_t(257), Tuint16_t(255), Tuint16_t(258), Tuint16_t(259), Tuint16_t(163), Tuint16_t(163), Tuint16_t(260), Tuint16_t(260), Tuint16_t(261),
 71986  	Tuint16_t(262), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263),
 71987  	Tuint16_t(263), Tuint16_t(263), Tuint16_t(264), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263), Tuint16_t(263),
 71988  	Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(265), Tuint16_t(266), Tuint16_t(265),
 71989  	Tuint16_t(267), Tuint16_t(265), Tuint16_t(265), Tuint16_t(268), Tuint16_t(265), Tuint16_t(269), Tuint16_t(267), Tuint16_t(269), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 71990  	Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270),
 71991  	Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(270),
 71992  	Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(267), Tuint16_t(271), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 71993  
 71994  	// block 12
 71995  	Tuint16_t(272), Tuint16_t(272), Tuint16_t(272), Tuint16_t(272), Tuint16_t(272), Tuint16_t(273), Tuint16_t(274), Tuint16_t(274), Tuint16_t(275), Tuint16_t(276), Tuint16_t(276), Tuint16_t(277), Tuint16_t(278), Tuint16_t(279), Tuint16_t(280), Tuint16_t(280),
 71996  	Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(282), Tuint16_t(283), Tuint16_t(284), Tuint16_t(284), Tuint16_t(285),
 71997  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 71998  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 71999  	Tuint16_t(287), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(288), Tuint16_t(288), Tuint16_t(288), Tuint16_t(288), Tuint16_t(288),
 72000  	Tuint16_t(288), Tuint16_t(288), Tuint16_t(288), Tuint16_t(289), Tuint16_t(289), Tuint16_t(289), Tuint16_t(281), Tuint16_t(290), Tuint16_t(291), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281),
 72001  	Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(292), Tuint16_t(276), Tuint16_t(293), Tuint16_t(293), Tuint16_t(279), Tuint16_t(286), Tuint16_t(286),
 72002  	Tuint16_t(289), Tuint16_t(286), Tuint16_t(286), Tuint16_t(294), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72003  
 72004  	// block 13
 72005  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72006  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72007  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72008  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72009  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72010  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(295), Tuint16_t(286), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(273), Tuint16_t(280), Tuint16_t(291),
 72011  	Tuint16_t(291), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(296), Tuint16_t(296), Tuint16_t(281), Tuint16_t(281), Tuint16_t(280), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(281), Tuint16_t(286), Tuint16_t(286),
 72012  	Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(297), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(298), Tuint16_t(298), Tuint16_t(286),
 72013  
 72014  	// block 14
 72015  	Tuint16_t(299), Tuint16_t(299), Tuint16_t(299), Tuint16_t(300), Tuint16_t(300), Tuint16_t(300), Tuint16_t(300), Tuint16_t(300), Tuint16_t(300), Tuint16_t(300), Tuint16_t(300), Tuint16_t(301), Tuint16_t(300), Tuint16_t(301), Tuint16_t(302), Tuint16_t(303),
 72016  	Tuint16_t(304), Tuint16_t(305), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304),
 72017  	Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304),
 72018  	Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306), Tuint16_t(306),
 72019  	Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(307), Tuint16_t(302), Tuint16_t(302), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304),
 72020  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72021  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72022  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72023  
 72024  	// block 15
 72025  	Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308),
 72026  	Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308),
 72027  	Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(308), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309), Tuint16_t(309),
 72028  	Tuint16_t(309), Tuint16_t(308), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 72029  	Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(310), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311),
 72030  	Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311),
 72031  	Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(311), Tuint16_t(312), Tuint16_t(312), Tuint16_t(312), Tuint16_t(312), Tuint16_t(312),
 72032  	Tuint16_t(312), Tuint16_t(312), Tuint16_t(312), Tuint16_t(312), Tuint16_t(313), Tuint16_t(313), Tuint16_t(314), Tuint16_t(315), Tuint16_t(316), Tuint16_t(317), Tuint16_t(318), Tuint16_t(262), Tuint16_t(262), Tuint16_t(319), Tuint16_t(320), Tuint16_t(320),
 72033  
 72034  	// block 16
 72035  	Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321),
 72036  	Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(321), Tuint16_t(322), Tuint16_t(322), Tuint16_t(323), Tuint16_t(323), Tuint16_t(324), Tuint16_t(322), Tuint16_t(322), Tuint16_t(322), Tuint16_t(322), Tuint16_t(322),
 72037  	Tuint16_t(322), Tuint16_t(322), Tuint16_t(322), Tuint16_t(322), Tuint16_t(324), Tuint16_t(322), Tuint16_t(322), Tuint16_t(322), Tuint16_t(324), Tuint16_t(322), Tuint16_t(322), Tuint16_t(322), Tuint16_t(322), Tuint16_t(325), Tuint16_t(262), Tuint16_t(262),
 72038  	Tuint16_t(326), Tuint16_t(326), Tuint16_t(326), Tuint16_t(326), Tuint16_t(326), Tuint16_t(326), Tuint16_t(326), Tuint16_t(327), Tuint16_t(326), Tuint16_t(327), Tuint16_t(326), Tuint16_t(326), Tuint16_t(326), Tuint16_t(327), Tuint16_t(327), Tuint16_t(262),
 72039  	Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328),
 72040  	Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(328), Tuint16_t(329), Tuint16_t(329), Tuint16_t(329), Tuint16_t(262), Tuint16_t(262), Tuint16_t(330), Tuint16_t(262),
 72041  	Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(304), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 72042  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72043  
 72044  	// block 17
 72045  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(331), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(302),
 72046  	Tuint16_t(272), Tuint16_t(272), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291),
 72047  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72048  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 72049  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(296), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291),
 72050  	Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(332), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281), Tuint16_t(281),
 72051  	Tuint16_t(332), Tuint16_t(332), Tuint16_t(273), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291), Tuint16_t(291),
 72052  	Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(290), Tuint16_t(281),
 72053  
 72054  	// block 18
 72055  	Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(334), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335),
 72056  	Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335),
 72057  	Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335),
 72058  	Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(333), Tuint16_t(334), Tuint16_t(336), Tuint16_t(335), Tuint16_t(334), Tuint16_t(334),
 72059  	Tuint16_t(334), Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(334), Tuint16_t(334), Tuint16_t(334), Tuint16_t(334), Tuint16_t(337), Tuint16_t(334), Tuint16_t(334),
 72060  	Tuint16_t(335), Tuint16_t(338), Tuint16_t(339), Tuint16_t(154), Tuint16_t(154), Tuint16_t(333), Tuint16_t(333), Tuint16_t(333), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335),
 72061  	Tuint16_t(335), Tuint16_t(335), Tuint16_t(333), Tuint16_t(333), Tuint16_t(340), Tuint16_t(341), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342), Tuint16_t(342),
 72062  	Tuint16_t(343), Tuint16_t(344), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335),
 72063  
 72064  	// block 19
 72065  	Tuint16_t(345), Tuint16_t(346), Tuint16_t(347), Tuint16_t(347), Tuint16_t(163), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(163), Tuint16_t(163), Tuint16_t(345),
 72066  	Tuint16_t(345), Tuint16_t(163), Tuint16_t(163), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345),
 72067  	Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(163), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345),
 72068  	Tuint16_t(345), Tuint16_t(163), Tuint16_t(345), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(345), Tuint16_t(163), Tuint16_t(163), Tuint16_t(348), Tuint16_t(345), Tuint16_t(349), Tuint16_t(347),
 72069  	Tuint16_t(347), Tuint16_t(346), Tuint16_t(346), Tuint16_t(346), Tuint16_t(346), Tuint16_t(163), Tuint16_t(163), Tuint16_t(347), Tuint16_t(347), Tuint16_t(163), Tuint16_t(163), Tuint16_t(347), Tuint16_t(347), Tuint16_t(350), Tuint16_t(345), Tuint16_t(163),
 72070  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(349), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(345), Tuint16_t(345), Tuint16_t(163), Tuint16_t(345),
 72071  	Tuint16_t(345), Tuint16_t(345), Tuint16_t(346), Tuint16_t(346), Tuint16_t(163), Tuint16_t(163), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351), Tuint16_t(351),
 72072  	Tuint16_t(345), Tuint16_t(345), Tuint16_t(352), Tuint16_t(352), Tuint16_t(353), Tuint16_t(353), Tuint16_t(353), Tuint16_t(353), Tuint16_t(353), Tuint16_t(353), Tuint16_t(354), Tuint16_t(352), Tuint16_t(345), Tuint16_t(355), Tuint16_t(356), Tuint16_t(163),
 72073  
 72074  	// block 20
 72075  	Tuint16_t(163), Tuint16_t(357), Tuint16_t(357), Tuint16_t(358), Tuint16_t(163), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(359),
 72076  	Tuint16_t(359), Tuint16_t(163), Tuint16_t(163), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359),
 72077  	Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(163), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359),
 72078  	Tuint16_t(359), Tuint16_t(163), Tuint16_t(359), Tuint16_t(359), Tuint16_t(163), Tuint16_t(359), Tuint16_t(359), Tuint16_t(163), Tuint16_t(359), Tuint16_t(359), Tuint16_t(163), Tuint16_t(163), Tuint16_t(360), Tuint16_t(163), Tuint16_t(358), Tuint16_t(358),
 72079  	Tuint16_t(358), Tuint16_t(357), Tuint16_t(357), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(357), Tuint16_t(357), Tuint16_t(163), Tuint16_t(163), Tuint16_t(357), Tuint16_t(357), Tuint16_t(361), Tuint16_t(163), Tuint16_t(163),
 72080  	Tuint16_t(163), Tuint16_t(357), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(163), Tuint16_t(359), Tuint16_t(163),
 72081  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362), Tuint16_t(362),
 72082  	Tuint16_t(357), Tuint16_t(357), Tuint16_t(359), Tuint16_t(359), Tuint16_t(359), Tuint16_t(357), Tuint16_t(363), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72083  
 72084  	// block 21
 72085  	Tuint16_t(163), Tuint16_t(364), Tuint16_t(364), Tuint16_t(365), Tuint16_t(163), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(163), Tuint16_t(366),
 72086  	Tuint16_t(366), Tuint16_t(366), Tuint16_t(163), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366),
 72087  	Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(163), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366),
 72088  	Tuint16_t(366), Tuint16_t(163), Tuint16_t(366), Tuint16_t(366), Tuint16_t(163), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(366), Tuint16_t(163), Tuint16_t(163), Tuint16_t(367), Tuint16_t(366), Tuint16_t(365), Tuint16_t(365),
 72089  	Tuint16_t(365), Tuint16_t(364), Tuint16_t(364), Tuint16_t(364), Tuint16_t(364), Tuint16_t(364), Tuint16_t(163), Tuint16_t(364), Tuint16_t(364), Tuint16_t(365), Tuint16_t(163), Tuint16_t(365), Tuint16_t(365), Tuint16_t(368), Tuint16_t(163), Tuint16_t(163),
 72090  	Tuint16_t(366), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72091  	Tuint16_t(366), Tuint16_t(366), Tuint16_t(364), Tuint16_t(364), Tuint16_t(163), Tuint16_t(163), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369), Tuint16_t(369),
 72092  	Tuint16_t(370), Tuint16_t(371), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(366), Tuint16_t(364), Tuint16_t(364), Tuint16_t(364), Tuint16_t(367), Tuint16_t(367), Tuint16_t(367),
 72093  
 72094  	// block 22
 72095  	Tuint16_t(163), Tuint16_t(372), Tuint16_t(373), Tuint16_t(373), Tuint16_t(163), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(163), Tuint16_t(163), Tuint16_t(374),
 72096  	Tuint16_t(374), Tuint16_t(163), Tuint16_t(163), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374),
 72097  	Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(163), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374),
 72098  	Tuint16_t(374), Tuint16_t(163), Tuint16_t(374), Tuint16_t(374), Tuint16_t(163), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(374), Tuint16_t(163), Tuint16_t(163), Tuint16_t(375), Tuint16_t(374), Tuint16_t(376), Tuint16_t(372),
 72099  	Tuint16_t(373), Tuint16_t(372), Tuint16_t(372), Tuint16_t(372), Tuint16_t(372), Tuint16_t(163), Tuint16_t(163), Tuint16_t(373), Tuint16_t(373), Tuint16_t(163), Tuint16_t(163), Tuint16_t(373), Tuint16_t(373), Tuint16_t(377), Tuint16_t(163), Tuint16_t(163),
 72100  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(378), Tuint16_t(372), Tuint16_t(376), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(374), Tuint16_t(374), Tuint16_t(163), Tuint16_t(374),
 72101  	Tuint16_t(374), Tuint16_t(374), Tuint16_t(372), Tuint16_t(372), Tuint16_t(163), Tuint16_t(163), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379), Tuint16_t(379),
 72102  	Tuint16_t(380), Tuint16_t(374), Tuint16_t(381), Tuint16_t(381), Tuint16_t(381), Tuint16_t(381), Tuint16_t(381), Tuint16_t(381), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72103  
 72104  	// block 23
 72105  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(382), Tuint16_t(383), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383),
 72106  	Tuint16_t(383), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383), Tuint16_t(163), Tuint16_t(383), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383),
 72107  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(383), Tuint16_t(383),
 72108  	Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(383), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(384), Tuint16_t(385),
 72109  	Tuint16_t(382), Tuint16_t(385), Tuint16_t(385), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(385), Tuint16_t(385), Tuint16_t(385), Tuint16_t(163), Tuint16_t(385), Tuint16_t(385), Tuint16_t(385), Tuint16_t(386), Tuint16_t(163), Tuint16_t(163),
 72110  	Tuint16_t(383), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(384), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72111  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387), Tuint16_t(387),
 72112  	Tuint16_t(388), Tuint16_t(388), Tuint16_t(388), Tuint16_t(389), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(391), Tuint16_t(390), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72113  
 72114  	// block 24
 72115  	Tuint16_t(392), Tuint16_t(393), Tuint16_t(393), Tuint16_t(393), Tuint16_t(394), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(163), Tuint16_t(395), Tuint16_t(395),
 72116  	Tuint16_t(395), Tuint16_t(163), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395),
 72117  	Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(163), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395),
 72118  	Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(163), Tuint16_t(163), Tuint16_t(396), Tuint16_t(395), Tuint16_t(392), Tuint16_t(392),
 72119  	Tuint16_t(392), Tuint16_t(393), Tuint16_t(393), Tuint16_t(393), Tuint16_t(393), Tuint16_t(163), Tuint16_t(392), Tuint16_t(392), Tuint16_t(392), Tuint16_t(163), Tuint16_t(392), Tuint16_t(392), Tuint16_t(392), Tuint16_t(397), Tuint16_t(163), Tuint16_t(163),
 72120  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(392), Tuint16_t(392), Tuint16_t(163), Tuint16_t(395), Tuint16_t(395), Tuint16_t(395), Tuint16_t(163), Tuint16_t(163), Tuint16_t(395), Tuint16_t(163), Tuint16_t(163),
 72121  	Tuint16_t(395), Tuint16_t(395), Tuint16_t(392), Tuint16_t(392), Tuint16_t(163), Tuint16_t(163), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398), Tuint16_t(398),
 72122  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(399), Tuint16_t(400), Tuint16_t(400), Tuint16_t(400), Tuint16_t(400), Tuint16_t(400), Tuint16_t(400), Tuint16_t(400), Tuint16_t(401),
 72123  
 72124  	// block 25
 72125  	Tuint16_t(402), Tuint16_t(403), Tuint16_t(404), Tuint16_t(404), Tuint16_t(405), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(163), Tuint16_t(402), Tuint16_t(402),
 72126  	Tuint16_t(402), Tuint16_t(163), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402),
 72127  	Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(163), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402),
 72128  	Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(163), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(402), Tuint16_t(163), Tuint16_t(163), Tuint16_t(406), Tuint16_t(402), Tuint16_t(404), Tuint16_t(407),
 72129  	Tuint16_t(404), Tuint16_t(404), Tuint16_t(408), Tuint16_t(404), Tuint16_t(404), Tuint16_t(163), Tuint16_t(407), Tuint16_t(404), Tuint16_t(404), Tuint16_t(163), Tuint16_t(404), Tuint16_t(404), Tuint16_t(403), Tuint16_t(409), Tuint16_t(163), Tuint16_t(163),
 72130  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(408), Tuint16_t(408), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(402), Tuint16_t(402), Tuint16_t(163),
 72131  	Tuint16_t(402), Tuint16_t(402), Tuint16_t(403), Tuint16_t(403), Tuint16_t(163), Tuint16_t(163), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410), Tuint16_t(410),
 72132  	Tuint16_t(163), Tuint16_t(402), Tuint16_t(402), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72133  
 72134  	// block 26
 72135  	Tuint16_t(411), Tuint16_t(411), Tuint16_t(412), Tuint16_t(412), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(163), Tuint16_t(413), Tuint16_t(413),
 72136  	Tuint16_t(413), Tuint16_t(163), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413),
 72137  	Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413),
 72138  	Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(414), Tuint16_t(414), Tuint16_t(413), Tuint16_t(415), Tuint16_t(412),
 72139  	Tuint16_t(412), Tuint16_t(411), Tuint16_t(411), Tuint16_t(411), Tuint16_t(411), Tuint16_t(163), Tuint16_t(412), Tuint16_t(412), Tuint16_t(412), Tuint16_t(163), Tuint16_t(412), Tuint16_t(412), Tuint16_t(412), Tuint16_t(414), Tuint16_t(416), Tuint16_t(417),
 72140  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(415), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(413),
 72141  	Tuint16_t(413), Tuint16_t(413), Tuint16_t(411), Tuint16_t(411), Tuint16_t(163), Tuint16_t(163), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419), Tuint16_t(419),
 72142  	Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(418), Tuint16_t(417), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413), Tuint16_t(413),
 72143  
 72144  	// block 27
 72145  	Tuint16_t(163), Tuint16_t(420), Tuint16_t(421), Tuint16_t(421), Tuint16_t(163), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422),
 72146  	Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422),
 72147  	Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422),
 72148  	Tuint16_t(422), Tuint16_t(422), Tuint16_t(163), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(163), Tuint16_t(422), Tuint16_t(163), Tuint16_t(163),
 72149  	Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(422), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(423), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(424),
 72150  	Tuint16_t(421), Tuint16_t(421), Tuint16_t(420), Tuint16_t(420), Tuint16_t(420), Tuint16_t(163), Tuint16_t(420), Tuint16_t(163), Tuint16_t(421), Tuint16_t(421), Tuint16_t(421), Tuint16_t(421), Tuint16_t(421), Tuint16_t(421), Tuint16_t(421), Tuint16_t(424),
 72151  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425), Tuint16_t(425),
 72152  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(421), Tuint16_t(421), Tuint16_t(426), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72153  
 72154  	// block 28
 72155  	Tuint16_t(163), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427),
 72156  	Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427),
 72157  	Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427), Tuint16_t(427),
 72158  	Tuint16_t(427), Tuint16_t(428), Tuint16_t(427), Tuint16_t(429), Tuint16_t(428), Tuint16_t(428), Tuint16_t(428), Tuint16_t(428), Tuint16_t(428), Tuint16_t(428), Tuint16_t(430), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(431),
 72159  	Tuint16_t(432), Tuint16_t(432), Tuint16_t(432), Tuint16_t(432), Tuint16_t(432), Tuint16_t(427), Tuint16_t(433), Tuint16_t(434), Tuint16_t(434), Tuint16_t(434), Tuint16_t(434), Tuint16_t(434), Tuint16_t(434), Tuint16_t(428), Tuint16_t(434), Tuint16_t(435),
 72160  	Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(436), Tuint16_t(437), Tuint16_t(437), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72161  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72162  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72163  
 72164  	// block 29
 72165  	Tuint16_t(163), Tuint16_t(438), Tuint16_t(438), Tuint16_t(163), Tuint16_t(438), Tuint16_t(163), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(163), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438),
 72166  	Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438),
 72167  	Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(163), Tuint16_t(438), Tuint16_t(163), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438),
 72168  	Tuint16_t(438), Tuint16_t(439), Tuint16_t(438), Tuint16_t(440), Tuint16_t(439), Tuint16_t(439), Tuint16_t(439), Tuint16_t(439), Tuint16_t(439), Tuint16_t(439), Tuint16_t(441), Tuint16_t(439), Tuint16_t(439), Tuint16_t(438), Tuint16_t(163), Tuint16_t(163),
 72169  	Tuint16_t(442), Tuint16_t(442), Tuint16_t(442), Tuint16_t(442), Tuint16_t(442), Tuint16_t(163), Tuint16_t(443), Tuint16_t(163), Tuint16_t(444), Tuint16_t(444), Tuint16_t(444), Tuint16_t(444), Tuint16_t(444), Tuint16_t(439), Tuint16_t(163), Tuint16_t(163),
 72170  	Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(445), Tuint16_t(163), Tuint16_t(163), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438), Tuint16_t(438),
 72171  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72172  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72173  
 72174  	// block 30
 72175  	Tuint16_t(446), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(448), Tuint16_t(448), Tuint16_t(448), Tuint16_t(448), Tuint16_t(449), Tuint16_t(448), Tuint16_t(448), Tuint16_t(448), Tuint16_t(448), Tuint16_t(449), Tuint16_t(449), Tuint16_t(449),
 72176  	Tuint16_t(449), Tuint16_t(449), Tuint16_t(449), Tuint16_t(447), Tuint16_t(448), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(450), Tuint16_t(450), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447),
 72177  	Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(451), Tuint16_t(452), Tuint16_t(452), Tuint16_t(452), Tuint16_t(452), Tuint16_t(452), Tuint16_t(452),
 72178  	Tuint16_t(452), Tuint16_t(452), Tuint16_t(452), Tuint16_t(452), Tuint16_t(447), Tuint16_t(450), Tuint16_t(447), Tuint16_t(450), Tuint16_t(447), Tuint16_t(450), Tuint16_t(453), Tuint16_t(454), Tuint16_t(453), Tuint16_t(454), Tuint16_t(455), Tuint16_t(455),
 72179  	Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(163), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446),
 72180  	Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446),
 72181  	Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72182  	Tuint16_t(163), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(457), Tuint16_t(456), Tuint16_t(457), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(458),
 72183  
 72184  	// block 31
 72185  	Tuint16_t(456), Tuint16_t(456), Tuint16_t(450), Tuint16_t(450), Tuint16_t(459), Tuint16_t(448), Tuint16_t(450), Tuint16_t(450), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(446), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456),
 72186  	Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(163), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456),
 72187  	Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456),
 72188  	Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(456), Tuint16_t(163), Tuint16_t(447), Tuint16_t(447),
 72189  	Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(450), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(447), Tuint16_t(163), Tuint16_t(447), Tuint16_t(447),
 72190  	Tuint16_t(448), Tuint16_t(448), Tuint16_t(448), Tuint16_t(448), Tuint16_t(448), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(448), Tuint16_t(448), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72191  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72192  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72193  
 72194  	// block 32
 72195  	Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461),
 72196  	Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461),
 72197  	Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(462), Tuint16_t(462), Tuint16_t(463), Tuint16_t(463), Tuint16_t(463),
 72198  	Tuint16_t(463), Tuint16_t(464), Tuint16_t(463), Tuint16_t(463), Tuint16_t(463), Tuint16_t(463), Tuint16_t(463), Tuint16_t(465), Tuint16_t(462), Tuint16_t(466), Tuint16_t(466), Tuint16_t(464), Tuint16_t(464), Tuint16_t(463), Tuint16_t(463), Tuint16_t(461),
 72199  	Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(467), Tuint16_t(468), Tuint16_t(468), Tuint16_t(469), Tuint16_t(469), Tuint16_t(469), Tuint16_t(469),
 72200  	Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(464), Tuint16_t(464), Tuint16_t(463), Tuint16_t(463), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(463), Tuint16_t(463),
 72201  	Tuint16_t(463), Tuint16_t(461), Tuint16_t(462), Tuint16_t(470), Tuint16_t(470), Tuint16_t(461), Tuint16_t(461), Tuint16_t(462), Tuint16_t(462), Tuint16_t(470), Tuint16_t(470), Tuint16_t(470), Tuint16_t(470), Tuint16_t(470), Tuint16_t(461), Tuint16_t(461),
 72202  	Tuint16_t(461), Tuint16_t(463), Tuint16_t(463), Tuint16_t(463), Tuint16_t(463), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461),
 72203  
 72204  	// block 33
 72205  	Tuint16_t(461), Tuint16_t(461), Tuint16_t(463), Tuint16_t(462), Tuint16_t(464), Tuint16_t(463), Tuint16_t(463), Tuint16_t(470), Tuint16_t(470), Tuint16_t(470), Tuint16_t(470), Tuint16_t(470), Tuint16_t(470), Tuint16_t(471), Tuint16_t(461), Tuint16_t(470),
 72206  	Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(470), Tuint16_t(470), Tuint16_t(462), Tuint16_t(463), Tuint16_t(473), Tuint16_t(473),
 72207  	Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474),
 72208  	Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474),
 72209  	Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(474), Tuint16_t(163), Tuint16_t(474), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(474), Tuint16_t(163), Tuint16_t(163),
 72210  	Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475),
 72211  	Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475),
 72212  	Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475), Tuint16_t(476), Tuint16_t(477), Tuint16_t(475), Tuint16_t(475), Tuint16_t(475),
 72213  
 72214  	// block 34
 72215  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478),
 72216  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478),
 72217  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478),
 72218  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478),
 72219  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478),
 72220  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(479),
 72221  	Tuint16_t(480), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481),
 72222  	Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481),
 72223  
 72224  	// block 35
 72225  	Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481),
 72226  	Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481),
 72227  	Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 72228  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 72229  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 72230  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 72231  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 72232  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 72233  
 72234  	// block 36
 72235  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72236  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72237  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72238  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72239  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163),
 72240  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163),
 72241  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72242  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72243  
 72244  	// block 37
 72245  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163),
 72246  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72247  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72248  	Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 72249  	Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72250  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72251  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72252  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72253  
 72254  	// block 38
 72255  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72256  	Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72257  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72258  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72259  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72260  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163), Tuint16_t(484), Tuint16_t(484), Tuint16_t(484),
 72261  	Tuint16_t(485), Tuint16_t(486), Tuint16_t(487), Tuint16_t(486), Tuint16_t(486), Tuint16_t(486), Tuint16_t(486), Tuint16_t(487), Tuint16_t(487), Tuint16_t(488), Tuint16_t(488), Tuint16_t(488), Tuint16_t(488), Tuint16_t(488), Tuint16_t(488), Tuint16_t(488),
 72262  	Tuint16_t(488), Tuint16_t(488), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(489), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72263  
 72264  	// block 39
 72265  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72266  	Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(490), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72267  	Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491),
 72268  	Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491),
 72269  	Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491),
 72270  	Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491),
 72271  	Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491), Tuint16_t(491),
 72272  	Tuint16_t(492), Tuint16_t(492), Tuint16_t(492), Tuint16_t(492), Tuint16_t(492), Tuint16_t(492), Tuint16_t(163), Tuint16_t(163), Tuint16_t(493), Tuint16_t(493), Tuint16_t(493), Tuint16_t(493), Tuint16_t(493), Tuint16_t(493), Tuint16_t(163), Tuint16_t(163),
 72273  
 72274  	// block 40
 72275  	Tuint16_t(494), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72276  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72277  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72278  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72279  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72280  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72281  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72282  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72283  
 72284  	// block 41
 72285  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72286  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72287  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72288  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72289  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72290  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72291  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72292  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72293  
 72294  	// block 42
 72295  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72296  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72297  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72298  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72299  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72300  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72301  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(496), Tuint16_t(497), Tuint16_t(495),
 72302  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72303  
 72304  	// block 43
 72305  	Tuint16_t(498), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499),
 72306  	Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(499), Tuint16_t(500), Tuint16_t(501), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72307  	Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502),
 72308  	Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502),
 72309  	Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502),
 72310  	Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502),
 72311  	Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(503), Tuint16_t(503), Tuint16_t(503), Tuint16_t(504), Tuint16_t(504),
 72312  	Tuint16_t(504), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(502), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72313  
 72314  	// block 44
 72315  	Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505), Tuint16_t(505),
 72316  	Tuint16_t(505), Tuint16_t(505), Tuint16_t(506), Tuint16_t(506), Tuint16_t(507), Tuint16_t(508), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(505),
 72317  	Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509), Tuint16_t(509),
 72318  	Tuint16_t(509), Tuint16_t(509), Tuint16_t(510), Tuint16_t(510), Tuint16_t(511), Tuint16_t(512), Tuint16_t(512), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72319  	Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513), Tuint16_t(513),
 72320  	Tuint16_t(513), Tuint16_t(513), Tuint16_t(514), Tuint16_t(514), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72321  	Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(515), Tuint16_t(163), Tuint16_t(515), Tuint16_t(515),
 72322  	Tuint16_t(515), Tuint16_t(163), Tuint16_t(516), Tuint16_t(516), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72323  
 72324  	// block 45
 72325  	Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517),
 72326  	Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517),
 72327  	Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(518), Tuint16_t(518), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517),
 72328  	Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(517), Tuint16_t(519), Tuint16_t(519), Tuint16_t(520), Tuint16_t(521), Tuint16_t(521), Tuint16_t(521), Tuint16_t(521), Tuint16_t(521), Tuint16_t(521), Tuint16_t(521), Tuint16_t(520), Tuint16_t(520),
 72329  	Tuint16_t(520), Tuint16_t(520), Tuint16_t(520), Tuint16_t(520), Tuint16_t(520), Tuint16_t(520), Tuint16_t(521), Tuint16_t(520), Tuint16_t(520), Tuint16_t(522), Tuint16_t(522), Tuint16_t(522), Tuint16_t(522), Tuint16_t(522), Tuint16_t(522), Tuint16_t(522),
 72330  	Tuint16_t(522), Tuint16_t(522), Tuint16_t(523), Tuint16_t(522), Tuint16_t(524), Tuint16_t(524), Tuint16_t(524), Tuint16_t(525), Tuint16_t(526), Tuint16_t(526), Tuint16_t(524), Tuint16_t(527), Tuint16_t(517), Tuint16_t(522), Tuint16_t(163), Tuint16_t(163),
 72331  	Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(528), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72332  	Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(529), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72333  
 72334  	// block 46
 72335  	Tuint16_t(530), Tuint16_t(530), Tuint16_t(531), Tuint16_t(532), Tuint16_t(533), Tuint16_t(531), Tuint16_t(534), Tuint16_t(530), Tuint16_t(533), Tuint16_t(535), Tuint16_t(536), Tuint16_t(537), Tuint16_t(537), Tuint16_t(537), Tuint16_t(538), Tuint16_t(537),
 72336  	Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(539), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72337  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540),
 72338  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540),
 72339  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(541), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540),
 72340  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540),
 72341  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540),
 72342  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72343  
 72344  	// block 47
 72345  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(542), Tuint16_t(542), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540),
 72346  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540),
 72347  	Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(540), Tuint16_t(543), Tuint16_t(540), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72348  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72349  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72350  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72351  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 72352  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72353  
 72354  	// block 48
 72355  	Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544),
 72356  	Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(544), Tuint16_t(163),
 72357  	Tuint16_t(545), Tuint16_t(545), Tuint16_t(545), Tuint16_t(546), Tuint16_t(546), Tuint16_t(546), Tuint16_t(546), Tuint16_t(545), Tuint16_t(545), Tuint16_t(546), Tuint16_t(546), Tuint16_t(546), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72358  	Tuint16_t(546), Tuint16_t(546), Tuint16_t(545), Tuint16_t(546), Tuint16_t(546), Tuint16_t(546), Tuint16_t(546), Tuint16_t(546), Tuint16_t(546), Tuint16_t(547), Tuint16_t(547), Tuint16_t(547), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72359  	Tuint16_t(548), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(549), Tuint16_t(549), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550), Tuint16_t(550),
 72360  	Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551),
 72361  	Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(163), Tuint16_t(163),
 72362  	Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(551), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72363  
 72364  	// block 49
 72365  	Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552),
 72366  	Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552),
 72367  	Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72368  	Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(553), Tuint16_t(553), Tuint16_t(553), Tuint16_t(552), Tuint16_t(552), Tuint16_t(553), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552),
 72369  	Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(552), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72370  	Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(554), Tuint16_t(555), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(556), Tuint16_t(556),
 72371  	Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557),
 72372  	Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557), Tuint16_t(557),
 72373  
 72374  	// block 50
 72375  	Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558),
 72376  	Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(558), Tuint16_t(559), Tuint16_t(559), Tuint16_t(560), Tuint16_t(560), Tuint16_t(559), Tuint16_t(163), Tuint16_t(163), Tuint16_t(561), Tuint16_t(561),
 72377  	Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562),
 72378  	Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562),
 72379  	Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562),
 72380  	Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(562), Tuint16_t(563), Tuint16_t(564), Tuint16_t(563), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(163),
 72381  	Tuint16_t(565), Tuint16_t(566), Tuint16_t(564), Tuint16_t(566), Tuint16_t(566), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(564), Tuint16_t(563), Tuint16_t(563), Tuint16_t(563),
 72382  	Tuint16_t(563), Tuint16_t(563), Tuint16_t(563), Tuint16_t(564), Tuint16_t(564), Tuint16_t(567), Tuint16_t(567), Tuint16_t(567), Tuint16_t(567), Tuint16_t(567), Tuint16_t(567), Tuint16_t(567), Tuint16_t(567), Tuint16_t(163), Tuint16_t(163), Tuint16_t(567),
 72383  
 72384  	// block 51
 72385  	Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72386  	Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(568), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72387  	Tuint16_t(569), Tuint16_t(569), Tuint16_t(569), Tuint16_t(569), Tuint16_t(569), Tuint16_t(569), Tuint16_t(569), Tuint16_t(570), Tuint16_t(571), Tuint16_t(571), Tuint16_t(571), Tuint16_t(571), Tuint16_t(569), Tuint16_t(569), Tuint16_t(163), Tuint16_t(163),
 72388  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(572), Tuint16_t(573),
 72389  	Tuint16_t(573), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(163),
 72390  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72391  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72392  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72393  
 72394  	// block 52
 72395  	Tuint16_t(574), Tuint16_t(574), Tuint16_t(574), Tuint16_t(574), Tuint16_t(575), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576),
 72396  	Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576),
 72397  	Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576),
 72398  	Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(577), Tuint16_t(578), Tuint16_t(574), Tuint16_t(574), Tuint16_t(574), Tuint16_t(574), Tuint16_t(574), Tuint16_t(575), Tuint16_t(574), Tuint16_t(575), Tuint16_t(575), Tuint16_t(575),
 72399  	Tuint16_t(575), Tuint16_t(575), Tuint16_t(574), Tuint16_t(575), Tuint16_t(579), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(576), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72400  	Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(580), Tuint16_t(581), Tuint16_t(581), Tuint16_t(582), Tuint16_t(583), Tuint16_t(581), Tuint16_t(581),
 72401  	Tuint16_t(582), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(577), Tuint16_t(577), Tuint16_t(577), Tuint16_t(577), Tuint16_t(577),
 72402  	Tuint16_t(577), Tuint16_t(577), Tuint16_t(577), Tuint16_t(577), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(584), Tuint16_t(581), Tuint16_t(581), Tuint16_t(163),
 72403  
 72404  	// block 53
 72405  	Tuint16_t(585), Tuint16_t(585), Tuint16_t(586), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587),
 72406  	Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587),
 72407  	Tuint16_t(587), Tuint16_t(586), Tuint16_t(585), Tuint16_t(585), Tuint16_t(585), Tuint16_t(585), Tuint16_t(586), Tuint16_t(586), Tuint16_t(585), Tuint16_t(585), Tuint16_t(588), Tuint16_t(589), Tuint16_t(585), Tuint16_t(585), Tuint16_t(587), Tuint16_t(587),
 72408  	Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(590), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587), Tuint16_t(587),
 72409  	Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591),
 72410  	Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591),
 72411  	Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(591), Tuint16_t(592), Tuint16_t(593), Tuint16_t(594), Tuint16_t(594), Tuint16_t(593), Tuint16_t(593), Tuint16_t(593), Tuint16_t(594), Tuint16_t(593), Tuint16_t(594),
 72412  	Tuint16_t(594), Tuint16_t(594), Tuint16_t(595), Tuint16_t(595), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(596), Tuint16_t(596), Tuint16_t(596), Tuint16_t(596),
 72413  
 72414  	// block 54
 72415  	Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597),
 72416  	Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597),
 72417  	Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597), Tuint16_t(598), Tuint16_t(598), Tuint16_t(598), Tuint16_t(598), Tuint16_t(598), Tuint16_t(598), Tuint16_t(598), Tuint16_t(598), Tuint16_t(599), Tuint16_t(599), Tuint16_t(599), Tuint16_t(599),
 72418  	Tuint16_t(599), Tuint16_t(599), Tuint16_t(599), Tuint16_t(599), Tuint16_t(598), Tuint16_t(598), Tuint16_t(600), Tuint16_t(601), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(602), Tuint16_t(602), Tuint16_t(603), Tuint16_t(603), Tuint16_t(603),
 72419  	Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(604), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(597), Tuint16_t(597), Tuint16_t(597),
 72420  	Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(605), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606),
 72421  	Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606),
 72422  	Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(606), Tuint16_t(607), Tuint16_t(607), Tuint16_t(607), Tuint16_t(608), Tuint16_t(607), Tuint16_t(607), Tuint16_t(609), Tuint16_t(609),
 72423  
 72424  	// block 55
 72425  	Tuint16_t(610), Tuint16_t(611), Tuint16_t(612), Tuint16_t(613), Tuint16_t(614), Tuint16_t(615), Tuint16_t(616), Tuint16_t(617), Tuint16_t(618), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72426  	Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619),
 72427  	Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619),
 72428  	Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619), Tuint16_t(163), Tuint16_t(163), Tuint16_t(619), Tuint16_t(619), Tuint16_t(619),
 72429  	Tuint16_t(620), Tuint16_t(620), Tuint16_t(620), Tuint16_t(620), Tuint16_t(620), Tuint16_t(620), Tuint16_t(620), Tuint16_t(620), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72430  	Tuint16_t(621), Tuint16_t(622), Tuint16_t(621), Tuint16_t(623), Tuint16_t(622), Tuint16_t(624), Tuint16_t(624), Tuint16_t(625), Tuint16_t(624), Tuint16_t(625), Tuint16_t(626), Tuint16_t(622), Tuint16_t(625), Tuint16_t(625), Tuint16_t(622), Tuint16_t(622),
 72431  	Tuint16_t(625), Tuint16_t(627), Tuint16_t(622), Tuint16_t(622), Tuint16_t(622), Tuint16_t(622), Tuint16_t(622), Tuint16_t(622), Tuint16_t(622), Tuint16_t(628), Tuint16_t(629), Tuint16_t(630), Tuint16_t(630), Tuint16_t(624), Tuint16_t(630), Tuint16_t(630),
 72432  	Tuint16_t(630), Tuint16_t(630), Tuint16_t(631), Tuint16_t(632), Tuint16_t(633), Tuint16_t(629), Tuint16_t(629), Tuint16_t(634), Tuint16_t(635), Tuint16_t(635), Tuint16_t(636), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72433  
 72434  	// block 56
 72435  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 72436  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 72437  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(221), Tuint16_t(221), Tuint16_t(221), Tuint16_t(221), Tuint16_t(221), Tuint16_t(637), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147),
 72438  	Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147),
 72439  	Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147),
 72440  	Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(638), Tuint16_t(638), Tuint16_t(638),
 72441  	Tuint16_t(638), Tuint16_t(638), Tuint16_t(148), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(638), Tuint16_t(638), Tuint16_t(638), Tuint16_t(638), Tuint16_t(638), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 72442  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(639), Tuint16_t(640), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(641), Tuint16_t(70), Tuint16_t(70),
 72443  
 72444  	// block 57
 72445  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(642), Tuint16_t(70),
 72446  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(643), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644),
 72447  	Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(645), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(645), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644),
 72448  	Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(646),
 72449  	Tuint16_t(647), Tuint16_t(647), Tuint16_t(158), Tuint16_t(158), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 72450  	Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158),
 72451  	Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573),
 72452  	Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(573), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(648), Tuint16_t(154), Tuint16_t(649), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 72453  
 72454  	// block 58
 72455  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72456  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72457  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(67), Tuint16_t(65), Tuint16_t(66),
 72458  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72459  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72460  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72461  	Tuint16_t(650), Tuint16_t(651), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72462  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72463  
 72464  	// block 59
 72465  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72466  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(69), Tuint16_t(69), Tuint16_t(69), Tuint16_t(69), Tuint16_t(652), Tuint16_t(653), Tuint16_t(70), Tuint16_t(70), Tuint16_t(654), Tuint16_t(70),
 72467  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72468  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72469  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(67), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72470  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72471  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72472  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72473  
 72474  	// block 60
 72475  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656),
 72476  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(163), Tuint16_t(163), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(163), Tuint16_t(163),
 72477  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656),
 72478  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656),
 72479  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(163), Tuint16_t(163), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(163), Tuint16_t(163),
 72480  	Tuint16_t(173), Tuint16_t(655), Tuint16_t(173), Tuint16_t(655), Tuint16_t(173), Tuint16_t(655), Tuint16_t(173), Tuint16_t(655), Tuint16_t(163), Tuint16_t(656), Tuint16_t(163), Tuint16_t(656), Tuint16_t(163), Tuint16_t(656), Tuint16_t(163), Tuint16_t(656),
 72481  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(655), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656), Tuint16_t(656),
 72482  	Tuint16_t(657), Tuint16_t(657), Tuint16_t(658), Tuint16_t(658), Tuint16_t(658), Tuint16_t(658), Tuint16_t(659), Tuint16_t(659), Tuint16_t(660), Tuint16_t(660), Tuint16_t(661), Tuint16_t(661), Tuint16_t(662), Tuint16_t(662), Tuint16_t(163), Tuint16_t(163),
 72483  
 72484  	// block 61
 72485  	Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664),
 72486  	Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664),
 72487  	Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(663), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664), Tuint16_t(664),
 72488  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(665), Tuint16_t(666), Tuint16_t(665), Tuint16_t(163), Tuint16_t(173), Tuint16_t(665), Tuint16_t(656), Tuint16_t(656), Tuint16_t(667), Tuint16_t(667), Tuint16_t(668), Tuint16_t(162), Tuint16_t(669), Tuint16_t(162),
 72489  	Tuint16_t(162), Tuint16_t(162), Tuint16_t(665), Tuint16_t(666), Tuint16_t(665), Tuint16_t(163), Tuint16_t(173), Tuint16_t(665), Tuint16_t(670), Tuint16_t(670), Tuint16_t(670), Tuint16_t(670), Tuint16_t(668), Tuint16_t(162), Tuint16_t(162), Tuint16_t(162),
 72490  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(173), Tuint16_t(173), Tuint16_t(163), Tuint16_t(163), Tuint16_t(173), Tuint16_t(173), Tuint16_t(656), Tuint16_t(656), Tuint16_t(671), Tuint16_t(671), Tuint16_t(163), Tuint16_t(162), Tuint16_t(162), Tuint16_t(162),
 72491  	Tuint16_t(655), Tuint16_t(655), Tuint16_t(173), Tuint16_t(173), Tuint16_t(173), Tuint16_t(215), Tuint16_t(173), Tuint16_t(173), Tuint16_t(656), Tuint16_t(656), Tuint16_t(672), Tuint16_t(672), Tuint16_t(220), Tuint16_t(162), Tuint16_t(162), Tuint16_t(162),
 72492  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(665), Tuint16_t(666), Tuint16_t(665), Tuint16_t(163), Tuint16_t(173), Tuint16_t(665), Tuint16_t(673), Tuint16_t(673), Tuint16_t(674), Tuint16_t(674), Tuint16_t(668), Tuint16_t(162), Tuint16_t(162), Tuint16_t(163),
 72493  
 72494  	// block 62
 72495  	Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(675), Tuint16_t(51), Tuint16_t(676), Tuint16_t(677), Tuint16_t(678), Tuint16_t(679),
 72496  	Tuint16_t(680), Tuint16_t(680), Tuint16_t(680), Tuint16_t(680), Tuint16_t(680), Tuint16_t(680), Tuint16_t(681), Tuint16_t(43), Tuint16_t(682), Tuint16_t(683), Tuint16_t(684), Tuint16_t(685), Tuint16_t(685), Tuint16_t(686), Tuint16_t(684), Tuint16_t(685),
 72497  	Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(687), Tuint16_t(43), Tuint16_t(43), Tuint16_t(687), Tuint16_t(688), Tuint16_t(689), Tuint16_t(690), Tuint16_t(691), Tuint16_t(692), Tuint16_t(693), Tuint16_t(694), Tuint16_t(695),
 72498  	Tuint16_t(696), Tuint16_t(696), Tuint16_t(697), Tuint16_t(697), Tuint16_t(697), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(49), Tuint16_t(57), Tuint16_t(43), Tuint16_t(698), Tuint16_t(699), Tuint16_t(43), Tuint16_t(700),
 72499  	Tuint16_t(701), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(702), Tuint16_t(703), Tuint16_t(704), Tuint16_t(699), Tuint16_t(699), Tuint16_t(698), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43),
 72500  	Tuint16_t(43), Tuint16_t(43), Tuint16_t(50), Tuint16_t(705), Tuint16_t(700), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(675),
 72501  	Tuint16_t(51), Tuint16_t(706), Tuint16_t(706), Tuint16_t(706), Tuint16_t(706), Tuint16_t(707), Tuint16_t(708), Tuint16_t(709), Tuint16_t(710), Tuint16_t(711), Tuint16_t(712), Tuint16_t(712), Tuint16_t(712), Tuint16_t(712), Tuint16_t(712), Tuint16_t(712),
 72502  	Tuint16_t(54), Tuint16_t(645), Tuint16_t(163), Tuint16_t(163), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(713), Tuint16_t(714), Tuint16_t(715), Tuint16_t(716), Tuint16_t(717), Tuint16_t(644),
 72503  
 72504  	// block 63
 72505  	Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(713), Tuint16_t(714), Tuint16_t(715), Tuint16_t(716), Tuint16_t(717), Tuint16_t(163),
 72506  	Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(644), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72507  	Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431),
 72508  	Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431), Tuint16_t(431),
 72509  	Tuint16_t(431), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718), Tuint16_t(718),
 72510  	Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(720), Tuint16_t(720), Tuint16_t(720),
 72511  	Tuint16_t(720), Tuint16_t(719), Tuint16_t(720), Tuint16_t(721), Tuint16_t(720), Tuint16_t(719), Tuint16_t(719), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(158), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719), Tuint16_t(719),
 72512  	Tuint16_t(722), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72513  
 72514  	// block 64
 72515  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(724), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(724), Tuint16_t(723), Tuint16_t(723), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725),
 72516  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(723), Tuint16_t(724), Tuint16_t(723), Tuint16_t(723), Tuint16_t(726), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(723), Tuint16_t(723),
 72517  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(727), Tuint16_t(723), Tuint16_t(724), Tuint16_t(723), Tuint16_t(728), Tuint16_t(723), Tuint16_t(724), Tuint16_t(729), Tuint16_t(730), Tuint16_t(731), Tuint16_t(724), Tuint16_t(724), Tuint16_t(732), Tuint16_t(725),
 72518  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(733), Tuint16_t(724), Tuint16_t(725), Tuint16_t(734), Tuint16_t(734), Tuint16_t(734), Tuint16_t(734), Tuint16_t(735), Tuint16_t(723), Tuint16_t(723), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724),
 72519  	Tuint16_t(715), Tuint16_t(715), Tuint16_t(715), Tuint16_t(715), Tuint16_t(715), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(723), Tuint16_t(715), Tuint16_t(723), Tuint16_t(723), Tuint16_t(737), Tuint16_t(460),
 72520  	Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72521  	Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738), Tuint16_t(738),
 72522  	Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739), Tuint16_t(739),
 72523  
 72524  	// block 65
 72525  	Tuint16_t(740), Tuint16_t(740), Tuint16_t(740), Tuint16_t(65), Tuint16_t(66), Tuint16_t(740), Tuint16_t(740), Tuint16_t(740), Tuint16_t(740), Tuint16_t(58), Tuint16_t(723), Tuint16_t(723), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72526  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(741), Tuint16_t(742), Tuint16_t(742), Tuint16_t(742), Tuint16_t(742), Tuint16_t(742), Tuint16_t(50), Tuint16_t(50), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743),
 72527  	Tuint16_t(50), Tuint16_t(743), Tuint16_t(743), Tuint16_t(50), Tuint16_t(743), Tuint16_t(743), Tuint16_t(50), Tuint16_t(743), Tuint16_t(45), Tuint16_t(742), Tuint16_t(742), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(50), Tuint16_t(45),
 72528  	Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743),
 72529  	Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(50), Tuint16_t(50),
 72530  	Tuint16_t(743), Tuint16_t(743), Tuint16_t(50), Tuint16_t(743), Tuint16_t(50), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45),
 72531  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72532  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72533  
 72534  	// block 66
 72535  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50),
 72536  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(745), Tuint16_t(53), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744),
 72537  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72538  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50),
 72539  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72540  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72541  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744),
 72542  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72543  
 72544  	// block 67
 72545  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744),
 72546  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72547  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72548  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72549  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50),
 72550  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72551  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50),
 72552  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50),
 72553  
 72554  	// block 68
 72555  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72556  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72557  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(749), Tuint16_t(750), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72558  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751),
 72559  	Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751),
 72560  	Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751),
 72561  	Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751),
 72562  	Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(751), Tuint16_t(45), Tuint16_t(50), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72563  
 72564  	// block 69
 72565  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(752), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72566  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(751), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72567  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72568  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72569  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47),
 72570  	Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72571  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47),
 72572  	Tuint16_t(748), Tuint16_t(47), Tuint16_t(47), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72573  
 72574  	// block 70
 72575  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72576  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72577  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753),
 72578  	Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753),
 72579  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753),
 72580  	Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753),
 72581  	Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72582  	Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72583  
 72584  	// block 71
 72585  	Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54),
 72586  	Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 72587  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 72588  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754),
 72589  	Tuint16_t(754), Tuint16_t(754), Tuint16_t(755), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754), Tuint16_t(754),
 72590  	Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756),
 72591  	Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(756), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72592  	Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72593  
 72594  	// block 72
 72595  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72596  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72597  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72598  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72599  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72600  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72601  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72602  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72603  
 72604  	// block 73
 72605  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72606  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72607  	Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743),
 72608  	Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(742), Tuint16_t(50), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743),
 72609  	Tuint16_t(742), Tuint16_t(50), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743),
 72610  	Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72611  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(45), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(743), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72612  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(741), Tuint16_t(741), Tuint16_t(757), Tuint16_t(757), Tuint16_t(50),
 72613  
 72614  	// block 74
 72615  	Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(758), Tuint16_t(743), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752),
 72616  	Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(45), Tuint16_t(748), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(759), Tuint16_t(752), Tuint16_t(752),
 72617  	Tuint16_t(47), Tuint16_t(752), Tuint16_t(47), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(47),
 72618  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752),
 72619  	Tuint16_t(742), Tuint16_t(752), Tuint16_t(742), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748),
 72620  	Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47),
 72621  	Tuint16_t(742), Tuint16_t(758), Tuint16_t(758), Tuint16_t(742), Tuint16_t(752), Tuint16_t(47), Tuint16_t(47), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(758), Tuint16_t(758), Tuint16_t(760),
 72622  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(748),
 72623  
 72624  	// block 75
 72625  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72626  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(748), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(47), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752),
 72627  	Tuint16_t(47), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(748), Tuint16_t(748), Tuint16_t(761), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752),
 72628  	Tuint16_t(47), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(748), Tuint16_t(748), Tuint16_t(752),
 72629  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(748), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(748), Tuint16_t(47),
 72630  	Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(47), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752),
 72631  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752),
 72632  	Tuint16_t(47), Tuint16_t(47), Tuint16_t(748), Tuint16_t(748), Tuint16_t(47), Tuint16_t(748), Tuint16_t(752), Tuint16_t(47), Tuint16_t(47), Tuint16_t(759), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752), Tuint16_t(748), Tuint16_t(752), Tuint16_t(752),
 72633  
 72634  	// block 76
 72635  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(47), Tuint16_t(762), Tuint16_t(762), Tuint16_t(759), Tuint16_t(759), Tuint16_t(752), Tuint16_t(47),
 72636  	Tuint16_t(752), Tuint16_t(752), Tuint16_t(47), Tuint16_t(45), Tuint16_t(47), Tuint16_t(45), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45),
 72637  	Tuint16_t(45), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72638  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72639  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748), Tuint16_t(45), Tuint16_t(748), Tuint16_t(45),
 72640  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(45), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72641  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(47), Tuint16_t(752), Tuint16_t(752), Tuint16_t(752), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704),
 72642  	Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72643  
 72644  	// block 77
 72645  	Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72646  	Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(45), Tuint16_t(748), Tuint16_t(748), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72647  	Tuint16_t(45), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72648  	Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748),
 72649  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(746), Tuint16_t(747), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50),
 72650  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50),
 72651  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747),
 72652  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72653  
 72654  	// block 78
 72655  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72656  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72657  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72658  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72659  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72660  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72661  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72662  	Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763), Tuint16_t(763),
 72663  
 72664  	// block 79
 72665  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72666  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72667  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72668  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(741), Tuint16_t(741), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72669  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72670  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72671  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72672  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72673  
 72674  	// block 80
 72675  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746),
 72676  	Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72677  	Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72678  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72679  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744),
 72680  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(746), Tuint16_t(747), Tuint16_t(746), Tuint16_t(747), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72681  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72682  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(746), Tuint16_t(747), Tuint16_t(50), Tuint16_t(50),
 72683  
 72684  	// block 81
 72685  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72686  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72687  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50),
 72688  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50),
 72689  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72690  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72691  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72692  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72693  
 72694  	// block 82
 72695  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72696  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72697  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(744),
 72698  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72699  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744),
 72700  	Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(50),
 72701  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50),
 72702  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(744), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72703  
 72704  	// block 83
 72705  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(47), Tuint16_t(47), Tuint16_t(47), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72706  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72707  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72708  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50),
 72709  	Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(45), Tuint16_t(45), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(50), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72710  	Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(748), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72711  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72712  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(753), Tuint16_t(753), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72713  
 72714  	// block 84
 72715  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72716  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(753), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72717  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72718  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72719  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72720  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72721  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45),
 72722  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(45), Tuint16_t(764), Tuint16_t(45),
 72723  
 72724  	// block 85
 72725  	Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765),
 72726  	Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765),
 72727  	Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765), Tuint16_t(765),
 72728  	Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766),
 72729  	Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766),
 72730  	Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766), Tuint16_t(766),
 72731  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(767), Tuint16_t(768), Tuint16_t(769), Tuint16_t(770), Tuint16_t(771), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(772), Tuint16_t(773), Tuint16_t(774),
 72732  	Tuint16_t(775), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(645), Tuint16_t(644), Tuint16_t(776), Tuint16_t(776),
 72733  
 72734  	// block 86
 72735  	Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212),
 72736  	Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212),
 72737  	Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212),
 72738  	Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212),
 72739  	Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212),
 72740  	Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212),
 72741  	Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(777), Tuint16_t(778), Tuint16_t(778), Tuint16_t(778), Tuint16_t(778), Tuint16_t(778), Tuint16_t(778), Tuint16_t(211), Tuint16_t(212), Tuint16_t(211), Tuint16_t(212), Tuint16_t(779),
 72742  	Tuint16_t(779), Tuint16_t(779), Tuint16_t(211), Tuint16_t(212), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(780), Tuint16_t(780), Tuint16_t(780), Tuint16_t(780), Tuint16_t(781), Tuint16_t(780), Tuint16_t(780),
 72743  
 72744  	// block 87
 72745  	Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782),
 72746  	Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782),
 72747  	Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(782), Tuint16_t(163), Tuint16_t(782), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(782), Tuint16_t(163), Tuint16_t(163),
 72748  	Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783),
 72749  	Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783),
 72750  	Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783),
 72751  	Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(783), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(784),
 72752  	Tuint16_t(785), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(786),
 72753  
 72754  	// block 88
 72755  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483),
 72756  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72757  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 72758  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 72759  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 72760  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 72761  	Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787),
 72762  	Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787),
 72763  
 72764  	// block 89
 72765  	Tuint16_t(43), Tuint16_t(43), Tuint16_t(788), Tuint16_t(789), Tuint16_t(788), Tuint16_t(789), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(788), Tuint16_t(789), Tuint16_t(43), Tuint16_t(788), Tuint16_t(789), Tuint16_t(43), Tuint16_t(43),
 72766  	Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(680), Tuint16_t(43), Tuint16_t(43), Tuint16_t(680), Tuint16_t(43), Tuint16_t(788), Tuint16_t(789), Tuint16_t(43), Tuint16_t(43),
 72767  	Tuint16_t(788), Tuint16_t(789), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(699), Tuint16_t(790),
 72768  	Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(680), Tuint16_t(680), Tuint16_t(699), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43),
 72769  	Tuint16_t(680), Tuint16_t(791), Tuint16_t(684), Tuint16_t(792), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(43), Tuint16_t(791), Tuint16_t(43), Tuint16_t(791), Tuint16_t(791),
 72770  	Tuint16_t(45), Tuint16_t(45), Tuint16_t(43), Tuint16_t(699), Tuint16_t(699), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(703), Tuint16_t(704), Tuint16_t(680), Tuint16_t(753), Tuint16_t(753),
 72771  	Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753),
 72772  	Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753), Tuint16_t(753),
 72773  
 72774  	// block 90
 72775  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72776  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(163), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72777  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72778  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72779  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72780  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72781  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72782  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72783  
 72784  	// block 91
 72785  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72786  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72787  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72788  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72789  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72790  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72791  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72792  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72793  
 72794  	// block 92
 72795  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72796  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72797  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72798  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72799  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793),
 72800  	Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(793), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72801  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72802  	Tuint16_t(794), Tuint16_t(794), Tuint16_t(795), Tuint16_t(795), Tuint16_t(794), Tuint16_t(794), Tuint16_t(794), Tuint16_t(794), Tuint16_t(794), Tuint16_t(794), Tuint16_t(794), Tuint16_t(794), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72803  
 72804  	// block 93
 72805  	Tuint16_t(675), Tuint16_t(796), Tuint16_t(797), Tuint16_t(798), Tuint16_t(723), Tuint16_t(799), Tuint16_t(800), Tuint16_t(801), Tuint16_t(802), Tuint16_t(803), Tuint16_t(802), Tuint16_t(803), Tuint16_t(804), Tuint16_t(805), Tuint16_t(804), Tuint16_t(805),
 72806  	Tuint16_t(802), Tuint16_t(803), Tuint16_t(45), Tuint16_t(806), Tuint16_t(802), Tuint16_t(803), Tuint16_t(802), Tuint16_t(803), Tuint16_t(802), Tuint16_t(803), Tuint16_t(802), Tuint16_t(803), Tuint16_t(807), Tuint16_t(808), Tuint16_t(809), Tuint16_t(809),
 72807  	Tuint16_t(45), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(810), Tuint16_t(810), Tuint16_t(810), Tuint16_t(810), Tuint16_t(811), Tuint16_t(811),
 72808  	Tuint16_t(812), Tuint16_t(813), Tuint16_t(813), Tuint16_t(813), Tuint16_t(813), Tuint16_t(813), Tuint16_t(723), Tuint16_t(814), Tuint16_t(801), Tuint16_t(801), Tuint16_t(801), Tuint16_t(815), Tuint16_t(816), Tuint16_t(817), Tuint16_t(818), Tuint16_t(818),
 72809  	Tuint16_t(163), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 72810  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 72811  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 72812  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 72813  
 72814  	// block 94
 72815  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 72816  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(163), Tuint16_t(163), Tuint16_t(820), Tuint16_t(820), Tuint16_t(821), Tuint16_t(821), Tuint16_t(822), Tuint16_t(822), Tuint16_t(819),
 72817  	Tuint16_t(823), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 72818  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 72819  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 72820  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 72821  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 72822  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(825), Tuint16_t(826), Tuint16_t(827), Tuint16_t(827), Tuint16_t(824),
 72823  
 72824  	// block 95
 72825  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828),
 72826  	Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828),
 72827  	Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828),
 72828  	Tuint16_t(163), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829),
 72829  	Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829),
 72830  	Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829),
 72831  	Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(830), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829),
 72832  	Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829),
 72833  
 72834  	// block 96
 72835  	Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(163),
 72836  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72837  	Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828),
 72838  	Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828), Tuint16_t(828),
 72839  	Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818),
 72840  	Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818),
 72841  	Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(818), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72842  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 72843  
 72844  	// block 97
 72845  	Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833),
 72846  	Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(834), Tuint16_t(834), Tuint16_t(163),
 72847  	Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72848  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72849  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835),
 72850  	Tuint16_t(723), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72851  	Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833),
 72852  	Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(833), Tuint16_t(834), Tuint16_t(834), Tuint16_t(834), Tuint16_t(460),
 72853  
 72854  	// block 98
 72855  	Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72856  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(836), Tuint16_t(831), Tuint16_t(836), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72857  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72858  	Tuint16_t(831), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58), Tuint16_t(58),
 72859  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 72860  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837),
 72861  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837),
 72862  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(831),
 72863  
 72864  	// block 99
 72865  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837),
 72866  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837),
 72867  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837),
 72868  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837),
 72869  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837),
 72870  	Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(837), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72871  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72872  	Tuint16_t(831), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72873  
 72874  	// block 100
 72875  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 72876  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 72877  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 72878  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 72879  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 72880  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(723), Tuint16_t(723),
 72881  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831),
 72882  	Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(831), Tuint16_t(723),
 72883  
 72884  	// block 101
 72885  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72886  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72887  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72888  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72889  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72890  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72891  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72892  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72893  
 72894  	// block 102
 72895  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72896  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72897  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72898  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 72899  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 72900  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 72901  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 72902  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 72903  
 72904  	// block 103
 72905  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72906  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(840), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72907  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72908  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72909  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72910  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72911  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72912  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72913  
 72914  	// block 104
 72915  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72916  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72917  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72918  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72919  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72920  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72921  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72922  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839),
 72923  
 72924  	// block 105
 72925  	Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(839), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72926  	Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841),
 72927  	Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841),
 72928  	Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841),
 72929  	Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(841), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72930  	Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842),
 72931  	Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842),
 72932  	Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(842), Tuint16_t(843), Tuint16_t(843), Tuint16_t(843), Tuint16_t(843), Tuint16_t(843), Tuint16_t(843), Tuint16_t(844), Tuint16_t(845),
 72933  
 72934  	// block 106
 72935  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72936  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72937  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72938  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72939  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72940  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72941  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72942  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72943  
 72944  	// block 107
 72945  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(847), Tuint16_t(848), Tuint16_t(849), Tuint16_t(849),
 72946  	Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846), Tuint16_t(846),
 72947  	Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(850), Tuint16_t(846), Tuint16_t(846), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72948  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72949  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(851), Tuint16_t(852), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 72950  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 72951  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(853), Tuint16_t(246),
 72952  	Tuint16_t(248), Tuint16_t(248), Tuint16_t(248), Tuint16_t(854), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(787), Tuint16_t(855), Tuint16_t(855), Tuint16_t(854), Tuint16_t(856),
 72953  
 72954  	// block 108
 72955  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241),
 72956  	Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(240), Tuint16_t(241), Tuint16_t(857), Tuint16_t(857), Tuint16_t(787), Tuint16_t(787),
 72957  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 72958  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 72959  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 72960  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 72961  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859), Tuint16_t(859),
 72962  	Tuint16_t(860), Tuint16_t(860), Tuint16_t(861), Tuint16_t(862), Tuint16_t(863), Tuint16_t(863), Tuint16_t(863), Tuint16_t(862), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72963  
 72964  	// block 109
 72965  	Tuint16_t(864), Tuint16_t(864), Tuint16_t(864), Tuint16_t(864), Tuint16_t(864), Tuint16_t(864), Tuint16_t(864), Tuint16_t(864), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46),
 72966  	Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(46), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149), Tuint16_t(149),
 72967  	Tuint16_t(46), Tuint16_t(46), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72968  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72969  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72970  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72971  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72972  	Tuint16_t(644), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(865), Tuint16_t(65), Tuint16_t(66),
 72973  
 72974  	// block 110
 72975  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(149), Tuint16_t(866), Tuint16_t(866), Tuint16_t(65), Tuint16_t(66), Tuint16_t(867), Tuint16_t(70), Tuint16_t(92),
 72976  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(868), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72977  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(869), Tuint16_t(870), Tuint16_t(871), Tuint16_t(872), Tuint16_t(869), Tuint16_t(70),
 72978  	Tuint16_t(873), Tuint16_t(874), Tuint16_t(875), Tuint16_t(876), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66),
 72979  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(877), Tuint16_t(878), Tuint16_t(879), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72980  	Tuint16_t(65), Tuint16_t(66), Tuint16_t(163), Tuint16_t(70), Tuint16_t(163), Tuint16_t(70), Tuint16_t(65), Tuint16_t(66), Tuint16_t(65), Tuint16_t(66), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72981  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72982  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(880), Tuint16_t(880), Tuint16_t(880), Tuint16_t(65), Tuint16_t(66), Tuint16_t(92), Tuint16_t(147), Tuint16_t(147), Tuint16_t(70), Tuint16_t(92), Tuint16_t(92), Tuint16_t(92), Tuint16_t(92), Tuint16_t(92),
 72983  
 72984  	// block 111
 72985  	Tuint16_t(881), Tuint16_t(881), Tuint16_t(882), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(883), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(882), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881),
 72986  	Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(881),
 72987  	Tuint16_t(881), Tuint16_t(881), Tuint16_t(881), Tuint16_t(884), Tuint16_t(884), Tuint16_t(882), Tuint16_t(882), Tuint16_t(884), Tuint16_t(885), Tuint16_t(885), Tuint16_t(885), Tuint16_t(885), Tuint16_t(883), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72988  	Tuint16_t(886), Tuint16_t(886), Tuint16_t(886), Tuint16_t(887), Tuint16_t(887), Tuint16_t(887), Tuint16_t(888), Tuint16_t(888), Tuint16_t(889), Tuint16_t(890), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72989  	Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891),
 72990  	Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891),
 72991  	Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891),
 72992  	Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(891), Tuint16_t(892), Tuint16_t(892), Tuint16_t(893), Tuint16_t(893), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 72993  
 72994  	// block 112
 72995  	Tuint16_t(894), Tuint16_t(894), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895),
 72996  	Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895),
 72997  	Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895),
 72998  	Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(895), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894),
 72999  	Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(894), Tuint16_t(896), Tuint16_t(897), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(898), Tuint16_t(898),
 73000  	Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(899), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73001  	Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336), Tuint16_t(336),
 73002  	Tuint16_t(336), Tuint16_t(900), Tuint16_t(335), Tuint16_t(901), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(335), Tuint16_t(343), Tuint16_t(343), Tuint16_t(343), Tuint16_t(335), Tuint16_t(343), Tuint16_t(335), Tuint16_t(335), Tuint16_t(333),
 73003  
 73004  	// block 113
 73005  	Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(902), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903),
 73006  	Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903),
 73007  	Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(903), Tuint16_t(904), Tuint16_t(904), Tuint16_t(904), Tuint16_t(904), Tuint16_t(904), Tuint16_t(905), Tuint16_t(905), Tuint16_t(905), Tuint16_t(906), Tuint16_t(907),
 73008  	Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908),
 73009  	Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(908), Tuint16_t(909), Tuint16_t(909), Tuint16_t(909), Tuint16_t(909), Tuint16_t(909), Tuint16_t(909), Tuint16_t(909), Tuint16_t(909), Tuint16_t(909),
 73010  	Tuint16_t(909), Tuint16_t(909), Tuint16_t(910), Tuint16_t(911), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(912),
 73011  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478),
 73012  	Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(478), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73013  
 73014  	// block 114
 73015  	Tuint16_t(913), Tuint16_t(913), Tuint16_t(913), Tuint16_t(914), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915),
 73016  	Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915),
 73017  	Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(915),
 73018  	Tuint16_t(915), Tuint16_t(915), Tuint16_t(915), Tuint16_t(916), Tuint16_t(914), Tuint16_t(914), Tuint16_t(913), Tuint16_t(913), Tuint16_t(913), Tuint16_t(913), Tuint16_t(914), Tuint16_t(914), Tuint16_t(913), Tuint16_t(913), Tuint16_t(914), Tuint16_t(914),
 73019  	Tuint16_t(917), Tuint16_t(918), Tuint16_t(918), Tuint16_t(918), Tuint16_t(918), Tuint16_t(918), Tuint16_t(918), Tuint16_t(919), Tuint16_t(920), Tuint16_t(920), Tuint16_t(918), Tuint16_t(918), Tuint16_t(918), Tuint16_t(918), Tuint16_t(163), Tuint16_t(921),
 73020  	Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(922), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(918), Tuint16_t(918),
 73021  	Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(471), Tuint16_t(923), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461),
 73022  	Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(472), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(163),
 73023  
 73024  	// block 115
 73025  	Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924),
 73026  	Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924),
 73027  	Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(925), Tuint16_t(925), Tuint16_t(925), Tuint16_t(925), Tuint16_t(925), Tuint16_t(925), Tuint16_t(926),
 73028  	Tuint16_t(926), Tuint16_t(925), Tuint16_t(925), Tuint16_t(926), Tuint16_t(926), Tuint16_t(925), Tuint16_t(925), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73029  	Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(925), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(924), Tuint16_t(925), Tuint16_t(926), Tuint16_t(163), Tuint16_t(163),
 73030  	Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(927), Tuint16_t(163), Tuint16_t(163), Tuint16_t(928), Tuint16_t(929), Tuint16_t(929), Tuint16_t(929),
 73031  	Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461),
 73032  	Tuint16_t(923), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(461), Tuint16_t(473), Tuint16_t(473), Tuint16_t(473), Tuint16_t(461), Tuint16_t(470), Tuint16_t(471), Tuint16_t(470), Tuint16_t(461), Tuint16_t(461),
 73033  
 73034  	// block 116
 73035  	Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930),
 73036  	Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930),
 73037  	Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930), Tuint16_t(930),
 73038  	Tuint16_t(931), Tuint16_t(930), Tuint16_t(931), Tuint16_t(931), Tuint16_t(931), Tuint16_t(932), Tuint16_t(932), Tuint16_t(931), Tuint16_t(931), Tuint16_t(932), Tuint16_t(930), Tuint16_t(932), Tuint16_t(932), Tuint16_t(930), Tuint16_t(931), Tuint16_t(933),
 73039  	Tuint16_t(934), Tuint16_t(933), Tuint16_t(934), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73040  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(930), Tuint16_t(930), Tuint16_t(935), Tuint16_t(936), Tuint16_t(937),
 73041  	Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(939), Tuint16_t(940), Tuint16_t(940), Tuint16_t(939), Tuint16_t(939),
 73042  	Tuint16_t(941), Tuint16_t(941), Tuint16_t(938), Tuint16_t(942), Tuint16_t(942), Tuint16_t(939), Tuint16_t(943), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73043  
 73044  	// block 117
 73045  	Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 73046  	Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73047  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 73048  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 73049  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 73050  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(944), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(866), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147),
 73051  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(221), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(945), Tuint16_t(46), Tuint16_t(46), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73052  	Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946),
 73053  
 73054  	// block 118
 73055  	Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946),
 73056  	Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946),
 73057  	Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946),
 73058  	Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946), Tuint16_t(946),
 73059  	Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938),
 73060  	Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(938),
 73061  	Tuint16_t(938), Tuint16_t(938), Tuint16_t(938), Tuint16_t(939), Tuint16_t(939), Tuint16_t(940), Tuint16_t(939), Tuint16_t(939), Tuint16_t(940), Tuint16_t(939), Tuint16_t(939), Tuint16_t(941), Tuint16_t(947), Tuint16_t(943), Tuint16_t(163), Tuint16_t(163),
 73062  	Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(948), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73063  
 73064  	// block 119
 73065  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73066  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73067  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73068  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73069  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73070  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73071  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73072  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73073  
 73074  	// block 120
 73075  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73076  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73077  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73078  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73079  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73080  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73081  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73082  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73083  
 73084  	// block 121
 73085  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73086  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73087  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73088  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73089  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73090  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73091  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73092  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73093  
 73094  	// block 122
 73095  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73096  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73097  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73098  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73099  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73100  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73101  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73102  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73103  
 73104  	// block 123
 73105  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73106  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73107  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73108  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73109  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73110  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73111  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73112  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73113  
 73114  	// block 124
 73115  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73116  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73117  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73118  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73119  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73120  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73121  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73122  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73123  
 73124  	// block 125
 73125  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73126  	Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73127  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73128  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73129  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73130  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73131  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73132  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73133  
 73134  	// block 126
 73135  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(949), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73136  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950),
 73137  	Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(950), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73138  	Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481),
 73139  	Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(481), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 73140  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 73141  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482),
 73142  	Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(482), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73143  
 73144  	// block 127
 73145  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73146  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73147  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73148  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73149  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73150  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73151  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73152  	Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951), Tuint16_t(951),
 73153  
 73154  	// block 128
 73155  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73156  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73157  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73158  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73159  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73160  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73161  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73162  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 73163  
 73164  	// block 129
 73165  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73166  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73167  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73168  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73169  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73170  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73171  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73172  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73173  
 73174  	// block 130
 73175  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(838), Tuint16_t(838),
 73176  	Tuint16_t(953), Tuint16_t(838), Tuint16_t(953), Tuint16_t(838), Tuint16_t(838), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(838),
 73177  	Tuint16_t(953), Tuint16_t(838), Tuint16_t(953), Tuint16_t(838), Tuint16_t(838), Tuint16_t(953), Tuint16_t(953), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73178  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73179  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73180  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73181  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(163), Tuint16_t(163),
 73182  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73183  
 73184  	// block 131
 73185  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73186  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73187  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73188  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73189  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 73190  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73191  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73192  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73193  
 73194  	// block 132
 73195  	Tuint16_t(652), Tuint16_t(652), Tuint16_t(652), Tuint16_t(652), Tuint16_t(652), Tuint16_t(652), Tuint16_t(652), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73196  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(257), Tuint16_t(257), Tuint16_t(257), Tuint16_t(257), Tuint16_t(257), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(270), Tuint16_t(265), Tuint16_t(270),
 73197  	Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(954), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270),
 73198  	Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(262), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(262), Tuint16_t(270), Tuint16_t(262),
 73199  	Tuint16_t(270), Tuint16_t(270), Tuint16_t(262), Tuint16_t(270), Tuint16_t(270), Tuint16_t(262), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270), Tuint16_t(270),
 73200  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73201  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73202  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73203  
 73204  	// block 133
 73205  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73206  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73207  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73208  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(331),
 73209  	Tuint16_t(331), Tuint16_t(331), Tuint16_t(331), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 73210  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73211  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73212  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73213  
 73214  	// block 134
 73215  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73216  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73217  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73218  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73219  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73220  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(955), Tuint16_t(955),
 73221  	Tuint16_t(955), Tuint16_t(955), Tuint16_t(955), Tuint16_t(955), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73222  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73223  
 73224  	// block 135
 73225  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73226  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73227  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73228  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73229  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73230  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73231  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73232  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73233  
 73234  	// block 136
 73235  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73236  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73237  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73238  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(956), Tuint16_t(957),
 73239  	Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280), Tuint16_t(280),
 73240  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73241  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73242  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73243  
 73244  	// block 137
 73245  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73246  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73247  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73248  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73249  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(280),
 73250  	Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958),
 73251  	Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958), Tuint16_t(958),
 73252  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(959), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(955), Tuint16_t(955), Tuint16_t(277), Tuint16_t(960), Tuint16_t(280), Tuint16_t(280),
 73253  
 73254  	// block 138
 73255  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(962),
 73256  	Tuint16_t(963), Tuint16_t(963), Tuint16_t(963), Tuint16_t(964), Tuint16_t(963), Tuint16_t(963), Tuint16_t(963), Tuint16_t(965), Tuint16_t(966), Tuint16_t(963), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73257  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(855), Tuint16_t(855),
 73258  	Tuint16_t(963), Tuint16_t(967), Tuint16_t(967), Tuint16_t(700), Tuint16_t(700), Tuint16_t(965), Tuint16_t(966), Tuint16_t(965), Tuint16_t(966), Tuint16_t(965), Tuint16_t(966), Tuint16_t(965), Tuint16_t(966), Tuint16_t(965), Tuint16_t(966), Tuint16_t(965),
 73259  	Tuint16_t(966), Tuint16_t(968), Tuint16_t(969), Tuint16_t(968), Tuint16_t(969), Tuint16_t(798), Tuint16_t(798), Tuint16_t(965), Tuint16_t(966), Tuint16_t(963), Tuint16_t(963), Tuint16_t(963), Tuint16_t(963), Tuint16_t(700), Tuint16_t(700), Tuint16_t(700),
 73260  	Tuint16_t(970), Tuint16_t(166), Tuint16_t(971), Tuint16_t(163), Tuint16_t(166), Tuint16_t(972), Tuint16_t(973), Tuint16_t(973), Tuint16_t(967), Tuint16_t(974), Tuint16_t(975), Tuint16_t(974), Tuint16_t(975), Tuint16_t(974), Tuint16_t(975), Tuint16_t(976),
 73261  	Tuint16_t(963), Tuint16_t(977), Tuint16_t(713), Tuint16_t(978), Tuint16_t(979), Tuint16_t(979), Tuint16_t(715), Tuint16_t(163), Tuint16_t(977), Tuint16_t(431), Tuint16_t(976), Tuint16_t(963), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73262  	Tuint16_t(955), Tuint16_t(286), Tuint16_t(955), Tuint16_t(286), Tuint16_t(955), Tuint16_t(302), Tuint16_t(955), Tuint16_t(286), Tuint16_t(955), Tuint16_t(286), Tuint16_t(955), Tuint16_t(286), Tuint16_t(955), Tuint16_t(286), Tuint16_t(955), Tuint16_t(286),
 73263  
 73264  	// block 139
 73265  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73266  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73267  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73268  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73269  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73270  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73271  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286),
 73272  	Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(286), Tuint16_t(302), Tuint16_t(302), Tuint16_t(51),
 73273  
 73274  	// block 140
 73275  	Tuint16_t(163), Tuint16_t(973), Tuint16_t(980), Tuint16_t(976), Tuint16_t(431), Tuint16_t(976), Tuint16_t(963), Tuint16_t(981), Tuint16_t(974), Tuint16_t(975), Tuint16_t(963), Tuint16_t(713), Tuint16_t(970), Tuint16_t(982), Tuint16_t(971), Tuint16_t(983),
 73276  	Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(984), Tuint16_t(972), Tuint16_t(166), Tuint16_t(979), Tuint16_t(715), Tuint16_t(979), Tuint16_t(973),
 73277  	Tuint16_t(963), Tuint16_t(985), Tuint16_t(985), Tuint16_t(985), Tuint16_t(985), Tuint16_t(985), Tuint16_t(985), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59),
 73278  	Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(59), Tuint16_t(974), Tuint16_t(977), Tuint16_t(975), Tuint16_t(986), Tuint16_t(700),
 73279  	Tuint16_t(46), Tuint16_t(987), Tuint16_t(987), Tuint16_t(987), Tuint16_t(987), Tuint16_t(987), Tuint16_t(987), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62),
 73280  	Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(62), Tuint16_t(974), Tuint16_t(715), Tuint16_t(975), Tuint16_t(715), Tuint16_t(974),
 73281  	Tuint16_t(975), Tuint16_t(988), Tuint16_t(989), Tuint16_t(990), Tuint16_t(991), Tuint16_t(825), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 73282  	Tuint16_t(826), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 73283  
 73284  	// block 141
 73285  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824),
 73286  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(992), Tuint16_t(992),
 73287  	Tuint16_t(830), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829),
 73288  	Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(163),
 73289  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(163), Tuint16_t(163), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829),
 73290  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(163), Tuint16_t(163), Tuint16_t(829), Tuint16_t(829), Tuint16_t(829), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73291  	Tuint16_t(431), Tuint16_t(431), Tuint16_t(715), Tuint16_t(46), Tuint16_t(723), Tuint16_t(431), Tuint16_t(431), Tuint16_t(163), Tuint16_t(723), Tuint16_t(715), Tuint16_t(715), Tuint16_t(715), Tuint16_t(715), Tuint16_t(723), Tuint16_t(723), Tuint16_t(163),
 73292  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(993), Tuint16_t(993), Tuint16_t(993), Tuint16_t(723), Tuint16_t(723), Tuint16_t(958), Tuint16_t(958),
 73293  
 73294  	// block 142
 73295  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(163), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73296  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73297  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(163), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73298  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(163), Tuint16_t(994), Tuint16_t(994), Tuint16_t(163), Tuint16_t(994),
 73299  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(163), Tuint16_t(163),
 73300  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(163), Tuint16_t(163),
 73301  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73302  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73303  
 73304  	// block 143
 73305  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73306  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73307  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73308  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73309  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73310  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73311  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994),
 73312  	Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(994), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73313  
 73314  	// block 144
 73315  	Tuint16_t(995), Tuint16_t(996), Tuint16_t(997), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998),
 73316  	Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998),
 73317  	Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998),
 73318  	Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(998), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(999), Tuint16_t(999), Tuint16_t(999), Tuint16_t(999), Tuint16_t(999), Tuint16_t(999), Tuint16_t(999), Tuint16_t(999), Tuint16_t(999),
 73319  	Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000),
 73320  	Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000),
 73321  	Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000),
 73322  	Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1000), Tuint16_t(1001), Tuint16_t(1001), Tuint16_t(1001), Tuint16_t(1001), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002),
 73323  
 73324  	// block 145
 73325  	Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1001), Tuint16_t(1001), Tuint16_t(1002), Tuint16_t(1003), Tuint16_t(1003), Tuint16_t(163),
 73326  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73327  	Tuint16_t(1002), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73328  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73329  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73330  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 73331  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 73332  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(158), Tuint16_t(163), Tuint16_t(163),
 73333  
 73334  	// block 146
 73335  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73336  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73337  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73338  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73339  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73340  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73341  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73342  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73343  
 73344  	// block 147
 73345  	Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004),
 73346  	Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(1004), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73347  	Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005),
 73348  	Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005),
 73349  	Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005), Tuint16_t(1005),
 73350  	Tuint16_t(1005), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73351  	Tuint16_t(1006), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007),
 73352  	Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(1007), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73353  
 73354  	// block 148
 73355  	Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008),
 73356  	Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008),
 73357  	Tuint16_t(1009), Tuint16_t(1009), Tuint16_t(1009), Tuint16_t(1009), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1008), Tuint16_t(1008), Tuint16_t(1008),
 73358  	Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010),
 73359  	Tuint16_t(1010), Tuint16_t(1011), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1010), Tuint16_t(1011), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73360  	Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012),
 73361  	Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012),
 73362  	Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1012), Tuint16_t(1013), Tuint16_t(1013), Tuint16_t(1013), Tuint16_t(1013), Tuint16_t(1013), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73363  
 73364  	// block 149
 73365  	Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014),
 73366  	Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(1014), Tuint16_t(163), Tuint16_t(1015),
 73367  	Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016),
 73368  	Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016),
 73369  	Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016), Tuint16_t(1016),
 73370  	Tuint16_t(1017), Tuint16_t(1018), Tuint16_t(1018), Tuint16_t(1018), Tuint16_t(1018), Tuint16_t(1018), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73371  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73372  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73373  
 73374  	// block 150
 73375  	Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019),
 73376  	Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019),
 73377  	Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1019), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020),
 73378  	Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020),
 73379  	Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020), Tuint16_t(1020),
 73380  	Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021),
 73381  	Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021),
 73382  	Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021), Tuint16_t(1021),
 73383  
 73384  	// block 151
 73385  	Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022),
 73386  	Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(1022), Tuint16_t(163), Tuint16_t(163),
 73387  	Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(1023), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73388  	Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024),
 73389  	Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024),
 73390  	Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(1024), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025),
 73391  	Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025),
 73392  	Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(1025), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73393  
 73394  	// block 152
 73395  	Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026),
 73396  	Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026),
 73397  	Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(1026), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73398  	Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027),
 73399  	Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027),
 73400  	Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027),
 73401  	Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(1027), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1028),
 73402  	Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(163), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029),
 73403  
 73404  	// block 153
 73405  	Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(163), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029),
 73406  	Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(163), Tuint16_t(1029), Tuint16_t(1029), Tuint16_t(163), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030),
 73407  	Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(163), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030),
 73408  	Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(163), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(163), Tuint16_t(1030), Tuint16_t(1030), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73409  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73410  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73411  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73412  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73413  
 73414  	// block 154
 73415  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73416  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73417  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73418  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73419  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73420  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73421  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73422  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73423  
 73424  	// block 155
 73425  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73426  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73427  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73428  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73429  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031),
 73430  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73431  	Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(1031), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73432  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73433  
 73434  	// block 156
 73435  	Tuint16_t(147), Tuint16_t(1032), Tuint16_t(1032), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(163), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147),
 73436  	Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147),
 73437  	Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147),
 73438  	Tuint16_t(147), Tuint16_t(163), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(147), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73439  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73440  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73441  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73442  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73443  
 73444  	// block 157
 73445  	Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1033), Tuint16_t(262), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033),
 73446  	Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033),
 73447  	Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033),
 73448  	Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(262), Tuint16_t(1033), Tuint16_t(1033), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1033), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1033),
 73449  	Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034),
 73450  	Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(1034), Tuint16_t(262), Tuint16_t(1035), Tuint16_t(1036), Tuint16_t(1036), Tuint16_t(1036), Tuint16_t(1036), Tuint16_t(1036), Tuint16_t(1036), Tuint16_t(1036), Tuint16_t(1036),
 73451  	Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037),
 73452  	Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1037), Tuint16_t(1038), Tuint16_t(1038), Tuint16_t(1039), Tuint16_t(1039), Tuint16_t(1039), Tuint16_t(1039), Tuint16_t(1039), Tuint16_t(1039), Tuint16_t(1039),
 73453  
 73454  	// block 158
 73455  	Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040),
 73456  	Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(1040), Tuint16_t(262),
 73457  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1041), Tuint16_t(1041), Tuint16_t(1041), Tuint16_t(1041), Tuint16_t(1041), Tuint16_t(1041), Tuint16_t(1041), Tuint16_t(1041), Tuint16_t(1041),
 73458  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73459  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73460  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73461  	Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042),
 73462  	Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(262), Tuint16_t(1042), Tuint16_t(1042), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1043), Tuint16_t(1043), Tuint16_t(1043), Tuint16_t(1043), Tuint16_t(1043),
 73463  
 73464  	// block 159
 73465  	Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044),
 73466  	Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1044), Tuint16_t(1045), Tuint16_t(1045), Tuint16_t(1045), Tuint16_t(1045), Tuint16_t(1045), Tuint16_t(1045), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1046),
 73467  	Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047),
 73468  	Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(1047), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1048),
 73469  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73470  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73471  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73472  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73473  
 73474  	// block 160
 73475  	Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049),
 73476  	Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049), Tuint16_t(1049),
 73477  	Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050),
 73478  	Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(1050), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1050), Tuint16_t(1050),
 73479  	Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051),
 73480  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051),
 73481  	Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051),
 73482  	Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051), Tuint16_t(1051),
 73483  
 73484  	// block 161
 73485  	Tuint16_t(1052), Tuint16_t(1053), Tuint16_t(1053), Tuint16_t(1053), Tuint16_t(262), Tuint16_t(1053), Tuint16_t(1053), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1053), Tuint16_t(1053), Tuint16_t(1053), Tuint16_t(1053),
 73486  	Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(262), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(262), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052),
 73487  	Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052),
 73488  	Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(1052), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1054), Tuint16_t(1054), Tuint16_t(1054), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1055),
 73489  	Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(1056), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73490  	Tuint16_t(1057), Tuint16_t(1057), Tuint16_t(1057), Tuint16_t(1057), Tuint16_t(1057), Tuint16_t(1057), Tuint16_t(1058), Tuint16_t(1058), Tuint16_t(1057), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73491  	Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059),
 73492  	Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1059), Tuint16_t(1060), Tuint16_t(1060), Tuint16_t(1061),
 73493  
 73494  	// block 162
 73495  	Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062),
 73496  	Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1062), Tuint16_t(1063), Tuint16_t(1063), Tuint16_t(1063),
 73497  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73498  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73499  	Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1065), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064),
 73500  	Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064),
 73501  	Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1064), Tuint16_t(1066), Tuint16_t(1066), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1067), Tuint16_t(1067), Tuint16_t(1067), Tuint16_t(1067), Tuint16_t(1067),
 73502  	Tuint16_t(1068), Tuint16_t(1068), Tuint16_t(1069), Tuint16_t(1068), Tuint16_t(1068), Tuint16_t(1068), Tuint16_t(1070), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73503  
 73504  	// block 163
 73505  	Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071),
 73506  	Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071),
 73507  	Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071),
 73508  	Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(1071), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1072), Tuint16_t(1073), Tuint16_t(1073), Tuint16_t(1073), Tuint16_t(1073), Tuint16_t(1073), Tuint16_t(1073),
 73509  	Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074),
 73510  	Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(1074), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1075), Tuint16_t(1075), Tuint16_t(1075), Tuint16_t(1075), Tuint16_t(1075), Tuint16_t(1075), Tuint16_t(1075), Tuint16_t(1075),
 73511  	Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076),
 73512  	Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(1076), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1077), Tuint16_t(1077), Tuint16_t(1077), Tuint16_t(1077), Tuint16_t(1077), Tuint16_t(1077), Tuint16_t(1077), Tuint16_t(1077),
 73513  
 73514  	// block 164
 73515  	Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(1078),
 73516  	Tuint16_t(1078), Tuint16_t(1078), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1079), Tuint16_t(1079), Tuint16_t(1079), Tuint16_t(1079), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73517  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1080), Tuint16_t(1080), Tuint16_t(1080), Tuint16_t(1080), Tuint16_t(1080), Tuint16_t(1080), Tuint16_t(1080),
 73518  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73519  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73520  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73521  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73522  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73523  
 73524  	// block 165
 73525  	Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081),
 73526  	Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081),
 73527  	Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081),
 73528  	Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081),
 73529  	Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(1081), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73530  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73531  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73532  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73533  
 73534  	// block 166
 73535  	Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082),
 73536  	Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082),
 73537  	Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082),
 73538  	Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(1082), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73539  	Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083),
 73540  	Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083),
 73541  	Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083),
 73542  	Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(1083), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1084), Tuint16_t(1084), Tuint16_t(1084), Tuint16_t(1084), Tuint16_t(1084), Tuint16_t(1084),
 73543  
 73544  	// block 167
 73545  	Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085),
 73546  	Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1085),
 73547  	Tuint16_t(1085), Tuint16_t(1085), Tuint16_t(1086), Tuint16_t(1086), Tuint16_t(1087), Tuint16_t(1087), Tuint16_t(1087), Tuint16_t(1087), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 73548  	Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(1088), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 73549  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73550  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73551  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73552  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73553  
 73554  	// block 168
 73555  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73556  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73557  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73558  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73559  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73560  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73561  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73562  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73563  
 73564  	// block 169
 73565  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73566  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73567  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73568  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73569  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73570  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73571  	Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089),
 73572  	Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(1089), Tuint16_t(262),
 73573  
 73574  	// block 170
 73575  	Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090),
 73576  	Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090),
 73577  	Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(262), Tuint16_t(1091), Tuint16_t(1091), Tuint16_t(1092), Tuint16_t(262), Tuint16_t(262),
 73578  	Tuint16_t(1090), Tuint16_t(1090), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73579  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73580  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73581  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73582  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73583  
 73584  	// block 171
 73585  	Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093),
 73586  	Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1093), Tuint16_t(1094), Tuint16_t(1094), Tuint16_t(1094),
 73587  	Tuint16_t(1094), Tuint16_t(1094), Tuint16_t(1094), Tuint16_t(1094), Tuint16_t(1094), Tuint16_t(1094), Tuint16_t(1094), Tuint16_t(1093), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73588  	Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095),
 73589  	Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1095), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096), Tuint16_t(1096),
 73590  	Tuint16_t(1096), Tuint16_t(1097), Tuint16_t(1097), Tuint16_t(1097), Tuint16_t(1097), Tuint16_t(1098), Tuint16_t(1098), Tuint16_t(1098), Tuint16_t(1098), Tuint16_t(1098), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 73591  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 73592  	Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1099),
 73593  
 73594  	// block 172
 73595  	Tuint16_t(1099), Tuint16_t(1099), Tuint16_t(1100), Tuint16_t(1100), Tuint16_t(1100), Tuint16_t(1100), Tuint16_t(1101), Tuint16_t(1101), Tuint16_t(1101), Tuint16_t(1101), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73596  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73597  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73598  	Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102),
 73599  	Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1102), Tuint16_t(1103), Tuint16_t(1103), Tuint16_t(1103), Tuint16_t(1103), Tuint16_t(1103), Tuint16_t(1103), Tuint16_t(1103), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73600  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73601  	Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104),
 73602  	Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(1104), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 73603  
 73604  	// block 173
 73605  	Tuint16_t(1105), Tuint16_t(1106), Tuint16_t(1105), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107),
 73606  	Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107),
 73607  	Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107),
 73608  	Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106),
 73609  	Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1108), Tuint16_t(1109), Tuint16_t(1109), Tuint16_t(1110), Tuint16_t(1110), Tuint16_t(1110), Tuint16_t(1110), Tuint16_t(1110), Tuint16_t(163), Tuint16_t(163),
 73610  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111),
 73611  	Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1111), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112), Tuint16_t(1112),
 73612  	Tuint16_t(1108), Tuint16_t(1107), Tuint16_t(1107), Tuint16_t(1106), Tuint16_t(1106), Tuint16_t(1107), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1113),
 73613  
 73614  	// block 174
 73615  	Tuint16_t(1114), Tuint16_t(1114), Tuint16_t(1115), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116),
 73616  	Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116),
 73617  	Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116), Tuint16_t(1116),
 73618  	Tuint16_t(1115), Tuint16_t(1115), Tuint16_t(1115), Tuint16_t(1117), Tuint16_t(1117), Tuint16_t(1117), Tuint16_t(1117), Tuint16_t(1115), Tuint16_t(1115), Tuint16_t(1118), Tuint16_t(1119), Tuint16_t(1120), Tuint16_t(1120), Tuint16_t(1121), Tuint16_t(1122), Tuint16_t(1122),
 73619  	Tuint16_t(1122), Tuint16_t(1122), Tuint16_t(1117), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1121), Tuint16_t(163), Tuint16_t(163),
 73620  	Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123),
 73621  	Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(1123), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73622  	Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(1124), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73623  
 73624  	// block 175
 73625  	Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126),
 73626  	Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126),
 73627  	Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1126), Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1127), Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1125),
 73628  	Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1125), Tuint16_t(1128), Tuint16_t(1128), Tuint16_t(163), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129), Tuint16_t(1129),
 73629  	Tuint16_t(1130), Tuint16_t(1131), Tuint16_t(1131), Tuint16_t(1131), Tuint16_t(1126), Tuint16_t(1127), Tuint16_t(1127), Tuint16_t(1126), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73630  	Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132),
 73631  	Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132),
 73632  	Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1132), Tuint16_t(1133), Tuint16_t(1134), Tuint16_t(1134), Tuint16_t(1132), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73633  
 73634  	// block 176
 73635  	Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1136), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137),
 73636  	Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137),
 73637  	Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137),
 73638  	Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1137), Tuint16_t(1136), Tuint16_t(1136), Tuint16_t(1136), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1135), Tuint16_t(1136),
 73639  	Tuint16_t(1138), Tuint16_t(1137), Tuint16_t(1139), Tuint16_t(1139), Tuint16_t(1137), Tuint16_t(1140), Tuint16_t(1140), Tuint16_t(1141), Tuint16_t(1141), Tuint16_t(1142), Tuint16_t(1143), Tuint16_t(1143), Tuint16_t(1143), Tuint16_t(1140), Tuint16_t(1136), Tuint16_t(1135),
 73640  	Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1144), Tuint16_t(1137), Tuint16_t(1141), Tuint16_t(1137), Tuint16_t(1141), Tuint16_t(1140), Tuint16_t(1140),
 73641  	Tuint16_t(163), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145),
 73642  	Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(1145), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73643  
 73644  	// block 177
 73645  	Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146),
 73646  	Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(163), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146),
 73647  	Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1146), Tuint16_t(1147), Tuint16_t(1147), Tuint16_t(1147), Tuint16_t(1148),
 73648  	Tuint16_t(1148), Tuint16_t(1148), Tuint16_t(1147), Tuint16_t(1147), Tuint16_t(1148), Tuint16_t(1149), Tuint16_t(1150), Tuint16_t(1148), Tuint16_t(1151), Tuint16_t(1151), Tuint16_t(1152), Tuint16_t(1151), Tuint16_t(1151), Tuint16_t(1153), Tuint16_t(1148), Tuint16_t(163),
 73649  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73650  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73651  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73652  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73653  
 73654  	// block 178
 73655  	Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(163), Tuint16_t(1154), Tuint16_t(163), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(163), Tuint16_t(1154),
 73656  	Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(163), Tuint16_t(1154),
 73657  	Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1154), Tuint16_t(1155), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73658  	Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156),
 73659  	Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156),
 73660  	Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1156), Tuint16_t(1157),
 73661  	Tuint16_t(1158), Tuint16_t(1158), Tuint16_t(1158), Tuint16_t(1157), Tuint16_t(1157), Tuint16_t(1157), Tuint16_t(1157), Tuint16_t(1157), Tuint16_t(1157), Tuint16_t(1159), Tuint16_t(1160), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73662  	Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(1161), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73663  
 73664  	// block 179
 73665  	Tuint16_t(1162), Tuint16_t(1163), Tuint16_t(1164), Tuint16_t(1165), Tuint16_t(163), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1166),
 73666  	Tuint16_t(1166), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166),
 73667  	Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(163), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166),
 73668  	Tuint16_t(1166), Tuint16_t(163), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(163), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(163), Tuint16_t(1167), Tuint16_t(1168), Tuint16_t(1166), Tuint16_t(1169), Tuint16_t(1164),
 73669  	Tuint16_t(1162), Tuint16_t(1164), Tuint16_t(1164), Tuint16_t(1164), Tuint16_t(1164), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1164), Tuint16_t(1164), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1164), Tuint16_t(1164), Tuint16_t(1170), Tuint16_t(163), Tuint16_t(163),
 73670  	Tuint16_t(1166), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1169), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1171), Tuint16_t(1166), Tuint16_t(1166),
 73671  	Tuint16_t(1166), Tuint16_t(1166), Tuint16_t(1164), Tuint16_t(1164), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73672  	Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(1172), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73673  
 73674  	// block 180
 73675  	Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173),
 73676  	Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173),
 73677  	Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173),
 73678  	Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1174), Tuint16_t(1174), Tuint16_t(1174), Tuint16_t(1175), Tuint16_t(1175), Tuint16_t(1175), Tuint16_t(1175), Tuint16_t(1175), Tuint16_t(1175), Tuint16_t(1175), Tuint16_t(1175),
 73679  	Tuint16_t(1174), Tuint16_t(1174), Tuint16_t(1176), Tuint16_t(1175), Tuint16_t(1175), Tuint16_t(1174), Tuint16_t(1177), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(1178), Tuint16_t(1178), Tuint16_t(1179), Tuint16_t(1180), Tuint16_t(1180),
 73680  	Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1181), Tuint16_t(1179), Tuint16_t(1179), Tuint16_t(163), Tuint16_t(1180), Tuint16_t(1182), Tuint16_t(1173),
 73681  	Tuint16_t(1173), Tuint16_t(1173), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73682  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73683  
 73684  	// block 181
 73685  	Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183),
 73686  	Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183),
 73687  	Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1183),
 73688  	Tuint16_t(1184), Tuint16_t(1185), Tuint16_t(1185), Tuint16_t(1186), Tuint16_t(1186), Tuint16_t(1186), Tuint16_t(1186), Tuint16_t(1186), Tuint16_t(1186), Tuint16_t(1185), Tuint16_t(1186), Tuint16_t(1185), Tuint16_t(1185), Tuint16_t(1184), Tuint16_t(1185), Tuint16_t(1186),
 73689  	Tuint16_t(1186), Tuint16_t(1185), Tuint16_t(1187), Tuint16_t(1188), Tuint16_t(1183), Tuint16_t(1183), Tuint16_t(1189), Tuint16_t(1183), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73690  	Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(1190), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73691  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73692  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73693  
 73694  	// block 182
 73695  	Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191),
 73696  	Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191),
 73697  	Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1192),
 73698  	Tuint16_t(1193), Tuint16_t(1193), Tuint16_t(1194), Tuint16_t(1194), Tuint16_t(1194), Tuint16_t(1194), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1193), Tuint16_t(1193), Tuint16_t(1193), Tuint16_t(1193), Tuint16_t(1194), Tuint16_t(1194), Tuint16_t(1193), Tuint16_t(1195),
 73699  	Tuint16_t(1196), Tuint16_t(1197), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1199), Tuint16_t(1199), Tuint16_t(1200), Tuint16_t(1200), Tuint16_t(1200), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198),
 73700  	Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1198), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1191), Tuint16_t(1194), Tuint16_t(1194), Tuint16_t(163), Tuint16_t(163),
 73701  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73702  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73703  
 73704  	// block 183
 73705  	Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201),
 73706  	Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201),
 73707  	Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201), Tuint16_t(1201),
 73708  	Tuint16_t(1202), Tuint16_t(1202), Tuint16_t(1202), Tuint16_t(1203), Tuint16_t(1203), Tuint16_t(1203), Tuint16_t(1203), Tuint16_t(1203), Tuint16_t(1203), Tuint16_t(1203), Tuint16_t(1203), Tuint16_t(1202), Tuint16_t(1202), Tuint16_t(1203), Tuint16_t(1202), Tuint16_t(1204),
 73709  	Tuint16_t(1203), Tuint16_t(1205), Tuint16_t(1205), Tuint16_t(1206), Tuint16_t(1201), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73710  	Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(1207), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73711  	Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(530), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73712  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73713  
 73714  	// block 184
 73715  	Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208),
 73716  	Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208),
 73717  	Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1208), Tuint16_t(1209), Tuint16_t(1210), Tuint16_t(1209), Tuint16_t(1210), Tuint16_t(1210),
 73718  	Tuint16_t(1209), Tuint16_t(1209), Tuint16_t(1209), Tuint16_t(1209), Tuint16_t(1209), Tuint16_t(1209), Tuint16_t(1211), Tuint16_t(1212), Tuint16_t(1208), Tuint16_t(1213), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73719  	Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(1214), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73720  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73721  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73722  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73723  
 73724  	// block 185
 73725  	Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215),
 73726  	Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1216), Tuint16_t(1216), Tuint16_t(1216),
 73727  	Tuint16_t(1217), Tuint16_t(1217), Tuint16_t(1216), Tuint16_t(1216), Tuint16_t(1216), Tuint16_t(1216), Tuint16_t(1218), Tuint16_t(1216), Tuint16_t(1216), Tuint16_t(1216), Tuint16_t(1216), Tuint16_t(1219), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73728  	Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1220), Tuint16_t(1221), Tuint16_t(1221), Tuint16_t(1222), Tuint16_t(1222), Tuint16_t(1222), Tuint16_t(1223),
 73729  	Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(1215), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73730  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73731  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73732  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73733  
 73734  	// block 186
 73735  	Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224),
 73736  	Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224),
 73737  	Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1224), Tuint16_t(1225), Tuint16_t(1225), Tuint16_t(1225), Tuint16_t(1226),
 73738  	Tuint16_t(1226), Tuint16_t(1226), Tuint16_t(1226), Tuint16_t(1226), Tuint16_t(1226), Tuint16_t(1226), Tuint16_t(1226), Tuint16_t(1226), Tuint16_t(1225), Tuint16_t(1227), Tuint16_t(1228), Tuint16_t(1229), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73739  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73740  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73741  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73742  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73743  
 73744  	// block 187
 73745  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73746  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73747  	Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230),
 73748  	Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230), Tuint16_t(1230),
 73749  	Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231),
 73750  	Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231), Tuint16_t(1231),
 73751  	Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1232), Tuint16_t(1233), Tuint16_t(1233), Tuint16_t(1233), Tuint16_t(1233), Tuint16_t(1233), Tuint16_t(1233),
 73752  	Tuint16_t(1233), Tuint16_t(1233), Tuint16_t(1233), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1234),
 73753  
 73754  	// block 188
 73755  	Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1235), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235),
 73756  	Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(163), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(163), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235),
 73757  	Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235), Tuint16_t(1235),
 73758  	Tuint16_t(1236), Tuint16_t(1237), Tuint16_t(1237), Tuint16_t(1237), Tuint16_t(1237), Tuint16_t(1237), Tuint16_t(163), Tuint16_t(1237), Tuint16_t(1237), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1238), Tuint16_t(1238), Tuint16_t(1239), Tuint16_t(1240), Tuint16_t(1241),
 73759  	Tuint16_t(1237), Tuint16_t(1241), Tuint16_t(1237), Tuint16_t(1242), Tuint16_t(1243), Tuint16_t(1244), Tuint16_t(1243), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73760  	Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(1245), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73761  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73762  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73763  
 73764  	// block 189
 73765  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73766  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73767  	Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246),
 73768  	Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246),
 73769  	Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246), Tuint16_t(1246),
 73770  	Tuint16_t(1246), Tuint16_t(1247), Tuint16_t(1247), Tuint16_t(1247), Tuint16_t(1248), Tuint16_t(1248), Tuint16_t(1248), Tuint16_t(1248), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1248), Tuint16_t(1248), Tuint16_t(1247), Tuint16_t(1247), Tuint16_t(1247), Tuint16_t(1247),
 73771  	Tuint16_t(1249), Tuint16_t(1246), Tuint16_t(1250), Tuint16_t(1246), Tuint16_t(1247), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73772  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73773  
 73774  	// block 190
 73775  	Tuint16_t(1251), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1253), Tuint16_t(1253), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251),
 73776  	Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251),
 73777  	Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251),
 73778  	Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1251), Tuint16_t(1254), Tuint16_t(1255), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1256), Tuint16_t(1257), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1252), Tuint16_t(1258),
 73779  	Tuint16_t(1258), Tuint16_t(1258), Tuint16_t(1259), Tuint16_t(1259), Tuint16_t(1258), Tuint16_t(1258), Tuint16_t(1258), Tuint16_t(1255), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73780  	Tuint16_t(1260), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1262), Tuint16_t(1262), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260),
 73781  	Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260),
 73782  	Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260),
 73783  
 73784  	// block 191
 73785  	Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1260), Tuint16_t(1263), Tuint16_t(1263), Tuint16_t(1263), Tuint16_t(1263), Tuint16_t(1263), Tuint16_t(1263), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261),
 73786  	Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1261), Tuint16_t(1262), Tuint16_t(1264), Tuint16_t(1265), Tuint16_t(1266), Tuint16_t(1267), Tuint16_t(1267), Tuint16_t(1260), Tuint16_t(1266), Tuint16_t(1266),
 73787  	Tuint16_t(1266), Tuint16_t(1268), Tuint16_t(1268), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73788  	Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495), Tuint16_t(495),
 73789  	Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269),
 73790  	Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269),
 73791  	Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269),
 73792  	Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(1269), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73793  
 73794  	// block 192
 73795  	Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(163), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270),
 73796  	Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270),
 73797  	Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1270), Tuint16_t(1271),
 73798  	Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(163), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1272), Tuint16_t(1271), Tuint16_t(1273),
 73799  	Tuint16_t(1270), Tuint16_t(1274), Tuint16_t(1274), Tuint16_t(1275), Tuint16_t(1276), Tuint16_t(1276), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73800  	Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1277), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278),
 73801  	Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(1278), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73802  	Tuint16_t(1279), Tuint16_t(1280), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281),
 73803  
 73804  	// block 193
 73805  	Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281), Tuint16_t(1281),
 73806  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282),
 73807  	Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(163), Tuint16_t(1283), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1282),
 73808  	Tuint16_t(1282), Tuint16_t(1283), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(1283), Tuint16_t(1282), Tuint16_t(1282), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73809  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73810  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73811  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73812  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73813  
 73814  	// block 194
 73815  	Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(163), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(163), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284),
 73816  	Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284),
 73817  	Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284), Tuint16_t(1284),
 73818  	Tuint16_t(1284), Tuint16_t(1285), Tuint16_t(1285), Tuint16_t(1285), Tuint16_t(1285), Tuint16_t(1285), Tuint16_t(1285), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1285), Tuint16_t(163), Tuint16_t(1285), Tuint16_t(1285), Tuint16_t(163), Tuint16_t(1285),
 73819  	Tuint16_t(1285), Tuint16_t(1285), Tuint16_t(1286), Tuint16_t(1285), Tuint16_t(1287), Tuint16_t(1287), Tuint16_t(1288), Tuint16_t(1285), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73820  	Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(1289), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73821  	Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(163), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(163), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290),
 73822  	Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290),
 73823  
 73824  	// block 195
 73825  	Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1290), Tuint16_t(1291), Tuint16_t(1291), Tuint16_t(1291), Tuint16_t(1291), Tuint16_t(1291), Tuint16_t(163),
 73826  	Tuint16_t(1292), Tuint16_t(1292), Tuint16_t(163), Tuint16_t(1291), Tuint16_t(1291), Tuint16_t(1292), Tuint16_t(1291), Tuint16_t(1293), Tuint16_t(1290), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73827  	Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(1294), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73828  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73829  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73830  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73831  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73832  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73833  
 73834  	// block 196
 73835  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73836  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73837  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73838  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73839  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73840  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73841  	Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295),
 73842  	Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1295), Tuint16_t(1296), Tuint16_t(1296), Tuint16_t(1297), Tuint16_t(1297), Tuint16_t(1298), Tuint16_t(1298), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73843  
 73844  	// block 197
 73845  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73846  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73847  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73848  	Tuint16_t(842), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73849  	Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299), Tuint16_t(1299),
 73850  	Tuint16_t(388), Tuint16_t(388), Tuint16_t(1299), Tuint16_t(388), Tuint16_t(1299), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(391), Tuint16_t(391), Tuint16_t(391),
 73851  	Tuint16_t(391), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390), Tuint16_t(390),
 73852  	Tuint16_t(390), Tuint16_t(390), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1300),
 73853  
 73854  	// block 198
 73855  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73856  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73857  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73858  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73859  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73860  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73861  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73862  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73863  
 73864  	// block 199
 73865  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73866  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73867  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73868  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73869  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73870  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73871  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73872  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73873  
 73874  	// block 200
 73875  	Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302),
 73876  	Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302),
 73877  	Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302),
 73878  	Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302),
 73879  	Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302),
 73880  	Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302),
 73881  	Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(1302), Tuint16_t(163),
 73882  	Tuint16_t(1303), Tuint16_t(1303), Tuint16_t(1303), Tuint16_t(1303), Tuint16_t(1303), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73883  
 73884  	// block 201
 73885  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73886  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73887  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73888  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301),
 73889  	Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(1301), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73890  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73891  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73892  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73893  
 73894  	// block 202
 73895  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73896  	Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304),
 73897  	Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304),
 73898  	Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304),
 73899  	Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304),
 73900  	Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304),
 73901  	Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304), Tuint16_t(1304),
 73902  	Tuint16_t(1304), Tuint16_t(1305), Tuint16_t(1305), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73903  
 73904  	// block 203
 73905  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73906  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73907  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73908  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73909  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73910  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73911  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73912  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73913  
 73914  	// block 204
 73915  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73916  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306),
 73917  	Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(1306), Tuint16_t(163),
 73918  	Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(1307), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73919  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73920  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73921  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73922  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73923  
 73924  	// block 205
 73925  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73926  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73927  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73928  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73929  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73930  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73931  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73932  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73933  
 73934  	// block 206
 73935  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73936  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73937  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73938  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308),
 73939  	Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(1308), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73940  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73941  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73942  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73943  
 73944  	// block 207
 73945  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73946  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73947  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73948  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73949  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73950  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73951  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73952  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73953  
 73954  	// block 208
 73955  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73956  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73957  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858),
 73958  	Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(858), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73959  	Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309),
 73960  	Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(1309), Tuint16_t(163),
 73961  	Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(1310), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1311), Tuint16_t(1311),
 73962  	Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312),
 73963  
 73964  	// block 209
 73965  	Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312),
 73966  	Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312),
 73967  	Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312),
 73968  	Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(1312), Tuint16_t(163),
 73969  	Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(1313), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73970  	Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314),
 73971  	Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(1314), Tuint16_t(163), Tuint16_t(163),
 73972  	Tuint16_t(1315), Tuint16_t(1315), Tuint16_t(1315), Tuint16_t(1315), Tuint16_t(1315), Tuint16_t(1316), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73973  
 73974  	// block 210
 73975  	Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317),
 73976  	Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317),
 73977  	Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317),
 73978  	Tuint16_t(1318), Tuint16_t(1318), Tuint16_t(1318), Tuint16_t(1318), Tuint16_t(1318), Tuint16_t(1318), Tuint16_t(1318), Tuint16_t(1319), Tuint16_t(1319), Tuint16_t(1320), Tuint16_t(1321), Tuint16_t(1321), Tuint16_t(1322), Tuint16_t(1322), Tuint16_t(1322), Tuint16_t(1322),
 73979  	Tuint16_t(1323), Tuint16_t(1323), Tuint16_t(1324), Tuint16_t(1324), Tuint16_t(1319), Tuint16_t(1322), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73980  	Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(1325), Tuint16_t(163), Tuint16_t(1326), Tuint16_t(1326), Tuint16_t(1326), Tuint16_t(1326), Tuint16_t(1326),
 73981  	Tuint16_t(1326), Tuint16_t(1326), Tuint16_t(163), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317),
 73982  	Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317),
 73983  
 73984  	// block 211
 73985  	Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317), Tuint16_t(1317),
 73986  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73987  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73988  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73989  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73990  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73991  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73992  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73993  
 73994  	// block 212
 73995  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73996  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73997  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73998  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 73999  	Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327),
 74000  	Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327), Tuint16_t(1327),
 74001  	Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328),
 74002  	Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328), Tuint16_t(1328),
 74003  
 74004  	// block 213
 74005  	Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329),
 74006  	Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1329), Tuint16_t(1330), Tuint16_t(1331), Tuint16_t(1332), Tuint16_t(1332), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74007  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74008  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74009  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74010  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74011  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74012  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74013  
 74014  	// block 214
 74015  	Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333),
 74016  	Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333),
 74017  	Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333),
 74018  	Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333),
 74019  	Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(1333), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1334),
 74020  	Tuint16_t(1333), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335),
 74021  	Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335),
 74022  	Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335),
 74023  
 74024  	// block 215
 74025  	Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(1335), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1336),
 74026  	Tuint16_t(1336), Tuint16_t(1336), Tuint16_t(1336), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337), Tuint16_t(1337),
 74027  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74028  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74029  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74030  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74031  	Tuint16_t(1338), Tuint16_t(1339), Tuint16_t(1340), Tuint16_t(799), Tuint16_t(1341), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74032  	Tuint16_t(1342), Tuint16_t(1342), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74033  
 74034  	// block 216
 74035  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74036  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74037  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74038  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74039  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74040  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74041  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74042  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74043  
 74044  	// block 217
 74045  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74046  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74047  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74048  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74049  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74050  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74051  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343),
 74052  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74053  
 74054  	// block 218
 74055  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74056  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74057  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74058  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74059  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74060  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74061  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74062  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74063  
 74064  	// block 219
 74065  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74066  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74067  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74068  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74069  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344),
 74070  	Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(1344), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74071  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74072  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74073  
 74074  	// block 220
 74075  	Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(1343), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74076  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74077  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74078  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74079  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74080  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74081  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74082  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74083  
 74084  	// block 221
 74085  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74086  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74087  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74088  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74089  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74090  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74091  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74092  	Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(163), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(163), Tuint16_t(1345), Tuint16_t(1345), Tuint16_t(163),
 74093  
 74094  	// block 222
 74095  	Tuint16_t(824), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74096  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74097  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74098  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74099  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74100  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74101  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74102  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74103  
 74104  	// block 223
 74105  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74106  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74107  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74108  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74109  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74110  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74111  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74112  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74113  
 74114  	// block 224
 74115  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74116  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(819),
 74117  	Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74118  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74119  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74120  	Tuint16_t(819), Tuint16_t(819), Tuint16_t(819), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74121  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(824), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74122  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74123  
 74124  	// block 225
 74125  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74126  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74127  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74128  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74129  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74130  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74131  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74132  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74133  
 74134  	// block 226
 74135  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74136  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74137  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74138  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74139  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74140  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74141  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346),
 74142  	Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(1346), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74143  
 74144  	// block 227
 74145  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347),
 74146  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347),
 74147  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347),
 74148  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347),
 74149  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347),
 74150  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347),
 74151  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74152  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74153  
 74154  	// block 228
 74155  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74156  	Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(1347), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1348), Tuint16_t(1349), Tuint16_t(1350), Tuint16_t(1351),
 74157  	Tuint16_t(1352), Tuint16_t(1352), Tuint16_t(1352), Tuint16_t(1352), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74158  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74159  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74160  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74161  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74162  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74163  
 74164  	// block 229
 74165  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 74166  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 74167  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(163), Tuint16_t(163),
 74168  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 74169  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74170  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74171  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74172  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74173  
 74174  	// block 230
 74175  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74176  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74177  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74178  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74179  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74180  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74181  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74182  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74183  
 74184  	// block 231
 74185  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74186  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74187  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74188  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74189  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74190  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74191  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74192  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74193  
 74194  	// block 232
 74195  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74196  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74197  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74198  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74199  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74200  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74201  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74202  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74203  
 74204  	// block 233
 74205  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74206  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74207  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(163), Tuint16_t(163), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74208  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74209  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74210  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74211  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1353), Tuint16_t(1354), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1355), Tuint16_t(1356), Tuint16_t(1356),
 74212  	Tuint16_t(1356), Tuint16_t(1356), Tuint16_t(1356), Tuint16_t(51), Tuint16_t(51), Tuint16_t(51), Tuint16_t(51), Tuint16_t(51), Tuint16_t(51), Tuint16_t(51), Tuint16_t(51), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154),
 74213  
 74214  	// block 234
 74215  	Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(460), Tuint16_t(460), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74216  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74217  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(154), Tuint16_t(460), Tuint16_t(460),
 74218  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74219  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74220  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74221  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(723), Tuint16_t(723), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74222  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74223  
 74224  	// block 235
 74225  	Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002),
 74226  	Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002),
 74227  	Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002),
 74228  	Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1002),
 74229  	Tuint16_t(1002), Tuint16_t(1002), Tuint16_t(1357), Tuint16_t(1357), Tuint16_t(1357), Tuint16_t(1002), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74230  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74231  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74232  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74233  
 74234  	// block 236
 74235  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74236  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74237  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74238  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74239  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74240  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74241  	Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835),
 74242  	Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74243  
 74244  	// block 237
 74245  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74246  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74247  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74248  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74249  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74250  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74251  	Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832), Tuint16_t(832),
 74252  	Tuint16_t(832), Tuint16_t(832), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(835), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74253  
 74254  	// block 238
 74255  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74256  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74257  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74258  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74259  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725),
 74260  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(163), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74261  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74262  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74263  
 74264  	// block 239
 74265  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74266  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724),
 74267  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(724), Tuint16_t(163), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724),
 74268  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(163), Tuint16_t(725), Tuint16_t(163), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736),
 74269  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(163), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74270  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74271  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74272  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74273  
 74274  	// block 240
 74275  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74276  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(725), Tuint16_t(725),
 74277  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74278  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163),
 74279  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(163), Tuint16_t(724), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74280  	Tuint16_t(724), Tuint16_t(163), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74281  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74282  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74283  
 74284  	// block 241
 74285  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736),
 74286  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74287  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74288  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74289  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74290  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74291  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725),
 74292  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74293  
 74294  	// block 242
 74295  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74296  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74297  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74298  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74299  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74300  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736),
 74301  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74302  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74303  
 74304  	// block 243
 74305  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74306  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(736), Tuint16_t(736), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74307  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(163), Tuint16_t(163), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74308  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74309  	Tuint16_t(724), Tuint16_t(1358), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74310  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(715), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74311  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74312  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(1358), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74313  
 74314  	// block 244
 74315  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74316  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(715), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74317  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74318  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(1358), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74319  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(715),
 74320  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74321  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(1358),
 74322  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74323  
 74324  	// block 245
 74325  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(715), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74326  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724),
 74327  	Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(724), Tuint16_t(1358), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74328  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725),
 74329  	Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(715), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(725), Tuint16_t(724), Tuint16_t(725), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1359), Tuint16_t(1359),
 74330  	Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359),
 74331  	Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359),
 74332  	Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359), Tuint16_t(1359),
 74333  
 74334  	// block 246
 74335  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74336  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74337  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74338  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74339  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74340  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74341  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74342  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74343  
 74344  	// block 247
 74345  	Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74346  	Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74347  	Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74348  	Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74349  	Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74350  	Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74351  	Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74352  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1361), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360),
 74353  
 74354  	// block 248
 74355  	Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1361), Tuint16_t(1360), Tuint16_t(1360), Tuint16_t(1362), Tuint16_t(1363), Tuint16_t(1362), Tuint16_t(1362), Tuint16_t(1364), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74356  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74357  	Tuint16_t(163), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361), Tuint16_t(1361),
 74358  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74359  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74360  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74361  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74362  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74363  
 74364  	// block 249
 74365  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(92), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70),
 74366  	Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(643), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(70), Tuint16_t(163),
 74367  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74368  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74369  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74370  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74371  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74372  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74373  
 74374  	// block 250
 74375  	Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(163), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365),
 74376  	Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365),
 74377  	Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(163), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(163), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(1365), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74378  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74379  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74380  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74381  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74382  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74383  
 74384  	// block 251
 74385  	Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366),
 74386  	Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366),
 74387  	Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(1366), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74388  	Tuint16_t(1367), Tuint16_t(1367), Tuint16_t(1367), Tuint16_t(1367), Tuint16_t(1367), Tuint16_t(1367), Tuint16_t(1367), Tuint16_t(1368), Tuint16_t(1368), Tuint16_t(1368), Tuint16_t(1368), Tuint16_t(1368), Tuint16_t(1369), Tuint16_t(1369), Tuint16_t(163), Tuint16_t(163),
 74389  	Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(1370), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1366), Tuint16_t(1371),
 74390  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74391  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74392  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74393  
 74394  	// block 252
 74395  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74396  	Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372),
 74397  	Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1372), Tuint16_t(1373), Tuint16_t(163),
 74398  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74399  	Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374),
 74400  	Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374),
 74401  	Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1374), Tuint16_t(1375), Tuint16_t(1375), Tuint16_t(1375), Tuint16_t(1375),
 74402  	Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(1376), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(1377),
 74403  
 74404  	// block 253
 74405  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74406  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74407  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74408  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74409  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74410  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74411  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 74412  	Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(483), Tuint16_t(163),
 74413  
 74414  	// block 254
 74415  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74416  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74417  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74418  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74419  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74420  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74421  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74422  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74423  
 74424  	// block 255
 74425  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74426  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74427  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74428  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378),
 74429  	Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(1378), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1379), Tuint16_t(1379), Tuint16_t(1379), Tuint16_t(1379), Tuint16_t(1379), Tuint16_t(1379), Tuint16_t(1379), Tuint16_t(1379), Tuint16_t(1379),
 74430  	Tuint16_t(1380), Tuint16_t(1380), Tuint16_t(1380), Tuint16_t(1380), Tuint16_t(1380), Tuint16_t(1380), Tuint16_t(1380), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74431  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74432  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74433  
 74434  	// block 256
 74435  	Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381),
 74436  	Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1381),
 74437  	Tuint16_t(1381), Tuint16_t(1381), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382),
 74438  	Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382),
 74439  	Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1382), Tuint16_t(1383), Tuint16_t(1383), Tuint16_t(1383), Tuint16_t(1384), Tuint16_t(1385), Tuint16_t(1385), Tuint16_t(1385), Tuint16_t(1386), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74440  	Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(1387), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(1388), Tuint16_t(1388),
 74441  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74442  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74443  
 74444  	// block 257
 74445  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74446  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74447  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74448  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74449  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74450  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74451  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74452  	Tuint16_t(302), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389),
 74453  
 74454  	// block 258
 74455  	Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389),
 74456  	Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389),
 74457  	Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1390), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389),
 74458  	Tuint16_t(1391), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74459  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74460  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74461  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74462  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74463  
 74464  	// block 259
 74465  	Tuint16_t(302), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389),
 74466  	Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389),
 74467  	Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1390), Tuint16_t(1389),
 74468  	Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(1389), Tuint16_t(302), Tuint16_t(302),
 74469  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74470  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74471  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74472  	Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262), Tuint16_t(262),
 74473  
 74474  	// block 260
 74475  	Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392),
 74476  	Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392),
 74477  	Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392),
 74478  	Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74479  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392),
 74480  	Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392),
 74481  	Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392),
 74482  	Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(302),
 74483  
 74484  	// block 261
 74485  	Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392),
 74486  	Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74487  	Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392),
 74488  	Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(1392), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74489  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74490  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74491  	Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74492  	Tuint16_t(274), Tuint16_t(274), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302), Tuint16_t(302),
 74493  
 74494  	// block 262
 74495  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1394), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74496  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74497  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74498  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74499  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74500  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74501  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74502  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74503  
 74504  	// block 263
 74505  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74506  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74507  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395),
 74508  	Tuint16_t(1395), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74509  	Tuint16_t(1395), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1394),
 74510  	Tuint16_t(1395), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74511  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74512  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74513  
 74514  	// block 264
 74515  	Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(54), Tuint16_t(58), Tuint16_t(58), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74516  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74517  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1393),
 74518  	Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396),
 74519  	Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74520  	Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396),
 74521  	Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74522  	Tuint16_t(1397), Tuint16_t(1397), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1397), Tuint16_t(1397),
 74523  
 74524  	// block 265
 74525  	Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(1396), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1398), Tuint16_t(460),
 74526  	Tuint16_t(460), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74527  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395),
 74528  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74529  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74530  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74531  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399),
 74532  	Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399), Tuint16_t(1399),
 74533  
 74534  	// block 266
 74535  	Tuint16_t(1400), Tuint16_t(1398), Tuint16_t(1401), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74536  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1398), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460),
 74537  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1398),
 74538  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1401), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(1398), Tuint16_t(460), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74539  	Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(460), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74540  	Tuint16_t(1402), Tuint16_t(1402), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74541  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74542  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74543  
 74544  	// block 267
 74545  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74546  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74547  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74548  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74549  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74550  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74551  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74552  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74553  
 74554  	// block 268
 74555  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74556  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74557  	Tuint16_t(1394), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74558  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74559  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74560  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74561  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74562  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(1394),
 74563  
 74564  	// block 269
 74565  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74566  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727),
 74567  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74568  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74569  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1404), Tuint16_t(1404), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1394),
 74570  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727),
 74571  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74572  	Tuint16_t(1394), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1405), Tuint16_t(1405), Tuint16_t(1405), Tuint16_t(1405), Tuint16_t(1405),
 74573  
 74574  	// block 270
 74575  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74576  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74577  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74578  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(727),
 74579  	Tuint16_t(1394), Tuint16_t(727), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403),
 74580  	Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74581  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403),
 74582  	Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74583  
 74584  	// block 271
 74585  	Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403),
 74586  	Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74587  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74588  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74589  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74590  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74591  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74592  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1394),
 74593  
 74594  	// block 272
 74595  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74596  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74597  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74598  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(723), Tuint16_t(723),
 74599  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1393),
 74600  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74601  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727),
 74602  	Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1404), Tuint16_t(1404), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1403), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74603  
 74604  	// block 273
 74605  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393),
 74606  	Tuint16_t(1404), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74607  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1394), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74608  	Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74609  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74610  	Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393),
 74611  	Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727),
 74612  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74613  
 74614  	// block 274
 74615  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74616  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74617  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74618  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74619  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403),
 74620  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74621  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74622  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74623  
 74624  	// block 275
 74625  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74626  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74627  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74628  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74629  	Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1403), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727),
 74630  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74631  	Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74632  	Tuint16_t(727), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(727), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74633  
 74634  	// block 276
 74635  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74636  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74637  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74638  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74639  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74640  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74641  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74642  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74643  
 74644  	// block 277
 74645  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74646  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74647  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74648  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74649  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74650  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74651  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74652  	Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74653  
 74654  	// block 278
 74655  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74656  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74657  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74658  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74659  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74660  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74661  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74662  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74663  
 74664  	// block 279
 74665  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74666  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74667  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1395), Tuint16_t(1395),
 74668  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74669  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74670  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74671  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74672  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74673  
 74674  	// block 280
 74675  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403),
 74676  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403),
 74677  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74678  	Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(723), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394),
 74679  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(723), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74680  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74681  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74682  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74683  
 74684  	// block 281
 74685  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74686  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74687  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74688  	Tuint16_t(1406), Tuint16_t(1406), Tuint16_t(1406), Tuint16_t(1406), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74689  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403),
 74690  	Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1394), Tuint16_t(1394),
 74691  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74692  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74693  
 74694  	// block 282
 74695  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74696  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74697  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74698  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74699  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393),
 74700  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74701  	Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1393), Tuint16_t(1395), Tuint16_t(1395),
 74702  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74703  
 74704  	// block 283
 74705  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74706  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394),
 74707  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74708  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74709  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74710  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74711  	Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1394), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74712  	Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1403), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74713  
 74714  	// block 284
 74715  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74716  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74717  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74718  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74719  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74720  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74721  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74722  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74723  
 74724  	// block 285
 74725  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74726  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(163), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74727  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74728  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723),
 74729  	Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(723), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74730  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74731  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74732  	Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(1407), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74733  
 74734  	// block 286
 74735  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74736  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74737  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74738  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74739  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74740  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74741  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395),
 74742  	Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(1395), Tuint16_t(958), Tuint16_t(958),
 74743  
 74744  	// block 287
 74745  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74746  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74747  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74748  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74749  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74750  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74751  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74752  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74753  
 74754  	// block 288
 74755  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74756  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74757  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74758  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74759  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74760  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74761  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74762  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74763  
 74764  	// block 289
 74765  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74766  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(163), Tuint16_t(163),
 74767  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74768  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74769  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74770  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74771  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74772  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74773  
 74774  	// block 290
 74775  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74776  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74777  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74778  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74779  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74780  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74781  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74782  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74783  
 74784  	// block 291
 74785  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74786  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74787  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74788  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74789  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74790  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74791  	Tuint16_t(838), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74792  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74793  
 74794  	// block 292
 74795  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953),
 74796  	Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(953), Tuint16_t(163), Tuint16_t(163),
 74797  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74798  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74799  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74800  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74801  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74802  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74803  
 74804  	// block 293
 74805  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74806  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74807  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74808  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74809  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74810  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74811  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74812  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(958), Tuint16_t(958),
 74813  
 74814  	// block 294
 74815  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74816  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74817  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74818  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838),
 74819  	Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(838), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74820  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74821  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74822  	Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163), Tuint16_t(163),
 74823  
 74824  	// block 295
 74825  	Tuint16_t(707), Tuint16_t(712), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74826  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74827  	Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408),
 74828  	Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408),
 74829  	Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408),
 74830  	Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408),
 74831  	Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408),
 74832  	Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408), Tuint16_t(1408),
 74833  
 74834  	// block 296
 74835  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74836  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74837  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74838  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74839  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74840  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74841  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74842  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74843  
 74844  	// block 297
 74845  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74846  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74847  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74848  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74849  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74850  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74851  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74852  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74853  
 74854  	// block 298
 74855  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74856  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74857  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74858  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74859  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74860  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74861  	Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961), Tuint16_t(961),
 74862  	Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707), Tuint16_t(707),
 74863  
 74864  	// block 299
 74865  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 74866  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 74867  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 74868  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 74869  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 74870  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 74871  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952),
 74872  	Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(952), Tuint16_t(958), Tuint16_t(958),
 74873  } /* pcre2_ucd.c:2386:16 */
 74874  
 74875  // End of pcre2_ucd.c
 74876  
 74877  // This function is needed only when memmove() is not available.
 74878  
 74879  // End of pcre2_internal.h
 74880  
 74881  // ************************************************
 74882  //
 74883  //           Validate a UTF string                *
 74884  //
 74885  
 74886  // This function is called (optionally) at the start of compile or match, to
 74887  // check that a supposed UTF string is actually valid. The early check means
 74888  // that subsequent code can assume it is dealing with a valid string. The check
 74889  // can be turned off for maximum performance, but the consequences of supplying an
 74890  // invalid string are then undefined.
 74891  //
 74892  // Arguments:
 74893  //   string       points to the string
 74894  //   length       length of string
 74895  //   errp         pointer to an error position offset variable
 74896  //
 74897  // Returns:       == 0    if the string is a valid UTF string
 74898  //                != 0    otherwise, setting the offset of the bad character
 74899  
 74900  func X_pcre2_valid_utf_8(tls *libc.TLS, string TPCRE2_SPTR8, length Tsize_t, erroroffset uintptr) int32 { /* pcre2_valid_utf.c:94:1: */
 74901  	var p TPCRE2_SPTR8
 74902  	var c Tuint32_t
 74903  
 74904  	// ----------------- Check a UTF-8 string -----------------
 74905  
 74906  	// Originally, this function checked according to RFC 2279, allowing for values
 74907  	// in the range 0 to 0x7fffffff, up to 6 bytes long, but ensuring that they were
 74908  	// in the canonical format. Once somebody had pointed out RFC 3629 to me (it
 74909  	// obsoletes 2279), additional restrictions were applied. The values are now
 74910  	// limited to be between 0 and 0x0010ffff, no more than 4 bytes long, and the
 74911  	// subrange 0xd000 to 0xdfff is excluded. However, the format of 5-byte and 6-byte
 74912  	// characters is still checked. Error returns are as follows:
 74913  	//
 74914  	// PCRE2_ERROR_UTF8_ERR1   Missing 1 byte at the end of the string
 74915  	// PCRE2_ERROR_UTF8_ERR2   Missing 2 bytes at the end of the string
 74916  	// PCRE2_ERROR_UTF8_ERR3   Missing 3 bytes at the end of the string
 74917  	// PCRE2_ERROR_UTF8_ERR4   Missing 4 bytes at the end of the string
 74918  	// PCRE2_ERROR_UTF8_ERR5   Missing 5 bytes at the end of the string
 74919  	// PCRE2_ERROR_UTF8_ERR6   2nd-byte's two top bits are not 0x80
 74920  	// PCRE2_ERROR_UTF8_ERR7   3rd-byte's two top bits are not 0x80
 74921  	// PCRE2_ERROR_UTF8_ERR8   4th-byte's two top bits are not 0x80
 74922  	// PCRE2_ERROR_UTF8_ERR9   5th-byte's two top bits are not 0x80
 74923  	// PCRE2_ERROR_UTF8_ERR10  6th-byte's two top bits are not 0x80
 74924  	// PCRE2_ERROR_UTF8_ERR11  5-byte character is not permitted by RFC 3629
 74925  	// PCRE2_ERROR_UTF8_ERR12  6-byte character is not permitted by RFC 3629
 74926  	// PCRE2_ERROR_UTF8_ERR13  4-byte character with value > 0x10ffff is not permitted
 74927  	// PCRE2_ERROR_UTF8_ERR14  3-byte character with value 0xd800-0xdfff is not permitted
 74928  	// PCRE2_ERROR_UTF8_ERR15  Overlong 2-byte sequence
 74929  	// PCRE2_ERROR_UTF8_ERR16  Overlong 3-byte sequence
 74930  	// PCRE2_ERROR_UTF8_ERR17  Overlong 4-byte sequence
 74931  	// PCRE2_ERROR_UTF8_ERR18  Overlong 5-byte sequence (won't ever occur)
 74932  	// PCRE2_ERROR_UTF8_ERR19  Overlong 6-byte sequence (won't ever occur)
 74933  	// PCRE2_ERROR_UTF8_ERR20  Isolated 0x80 byte (not within UTF-8 character)
 74934  	// PCRE2_ERROR_UTF8_ERR21  Byte with the illegal value 0xfe or 0xff
 74935  
 74936  	for p = string; length > uint64(0); p++ {
 74937  		var ab Tuint32_t
 74938  		var d Tuint32_t
 74939  
 74940  		c = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(p)))
 74941  		length--
 74942  
 74943  		if c < Tuint32_t(128) {
 74944  			continue
 74945  		} // ASCII character
 74946  
 74947  		if c < Tuint32_t(0xc0) {
 74948  			*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t((int64(p) - int64(string)) / 1)
 74949  			return -22
 74950  		}
 74951  
 74952  		if c >= Tuint32_t(0xfe) {
 74953  			*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t((int64(p) - int64(string)) / 1)
 74954  			return -23
 74955  		}
 74956  
 74957  		ab = Tuint32_t(X_pcre2_utf8_table4[c&Tuint32_t(0x3f)]) // Number of additional bytes (1-5)
 74958  		if length < Tsize_t(ab) {
 74959  			*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t((int64(p) - int64(string)) / 1)
 74960  			switch Tsize_t(ab) - length {
 74961  			case uint64(1):
 74962  				return -3
 74963  				fallthrough
 74964  			case uint64(2):
 74965  				return -4
 74966  				fallthrough
 74967  			case uint64(3):
 74968  				return -5
 74969  				fallthrough
 74970  			case uint64(4):
 74971  				return -6
 74972  				fallthrough
 74973  			case uint64(5):
 74974  				return -7
 74975  			}
 74976  		}
 74977  		length = length - Tsize_t(ab) // Length remaining
 74978  
 74979  		// Check top bits in the second byte
 74980  
 74981  		if libc.AssignUint32(&d, Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1)))))&Tuint32_t(0xc0) != Tuint32_t(0x80) {
 74982  			*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 1)
 74983  			return -8
 74984  		}
 74985  
 74986  		// For each length, check that the remaining bytes start with the 0x80 bit
 74987  		//   set and not the 0x40 bit. Then check for an overlong sequence, and for the
 74988  		//   excluded range 0xd800 to 0xdfff.
 74989  
 74990  		switch ab {
 74991  		// 2-byte character. No further bytes to check for 0x80. Check first byte
 74992  		//     for for xx00 000x (overlong sequence).
 74993  
 74994  		case Tuint32_t(1):
 74995  			if c&Tuint32_t(0x3e) == Tuint32_t(0) {
 74996  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 1)
 74997  				return -17
 74998  			}
 74999  			break
 75000  
 75001  		// 3-byte character. Check third byte for 0x80. Then check first 2 bytes
 75002  		//       for 1110 0000, xx0x xxxx (overlong sequence) or
 75003  		//           1110 1101, 1010 xxxx (0xd800 - 0xdfff)
 75004  
 75005  		case Tuint32_t(2):
 75006  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75007  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 2)
 75008  				return -9
 75009  			}
 75010  			if c == Tuint32_t(0xe0) && d&Tuint32_t(0x20) == Tuint32_t(0) {
 75011  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 2)
 75012  				return -18
 75013  			}
 75014  			if c == Tuint32_t(0xed) && d >= Tuint32_t(0xa0) {
 75015  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 2)
 75016  				return -16
 75017  			}
 75018  			break
 75019  
 75020  		// 4-byte character. Check 3rd and 4th bytes for 0x80. Then check first 2
 75021  		//        bytes for for 1111 0000, xx00 xxxx (overlong sequence), then check for a
 75022  		//        character greater than 0x0010ffff (f4 8f bf bf)
 75023  
 75024  		case Tuint32_t(3):
 75025  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75026  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 2)
 75027  				return -9
 75028  			}
 75029  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75030  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 3)
 75031  				return -10
 75032  			}
 75033  			if c == Tuint32_t(0xf0) && d&Tuint32_t(0x30) == Tuint32_t(0) {
 75034  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 3)
 75035  				return -19
 75036  			}
 75037  			if c > Tuint32_t(0xf4) || c == Tuint32_t(0xf4) && d > Tuint32_t(0x8f) {
 75038  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 3)
 75039  				return -15
 75040  			}
 75041  			break
 75042  
 75043  		// 5-byte and 6-byte characters are not allowed by RFC 3629, and will be
 75044  		//     rejected by the length test below. However, we do the appropriate tests
 75045  		//     here so that overlong sequences get diagnosed, and also in case there is
 75046  		//     ever an option for handling these larger code points.
 75047  
 75048  		// 5-byte character. Check 3rd, 4th, and 5th bytes for 0x80. Then check for
 75049  		//     1111 1000, xx00 0xxx
 75050  
 75051  		case Tuint32_t(4):
 75052  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75053  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 2)
 75054  				return -9
 75055  			}
 75056  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75057  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 3)
 75058  				return -10
 75059  			}
 75060  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75061  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 4)
 75062  				return -11
 75063  			}
 75064  			if c == Tuint32_t(0xf8) && d&Tuint32_t(0x38) == Tuint32_t(0) {
 75065  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 4)
 75066  				return -20
 75067  			}
 75068  			break
 75069  
 75070  		// 6-byte character. Check 3rd-6th bytes for 0x80. Then check for
 75071  		//     1111 1100, xx00 00xx.
 75072  
 75073  		case Tuint32_t(5):
 75074  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75075  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 2)
 75076  				return -9
 75077  			}
 75078  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75079  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 3)
 75080  				return -10
 75081  			}
 75082  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75083  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 4)
 75084  				return -11
 75085  			}
 75086  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PreIncUintptr(&p, 1))))&0xc0 != 0x80 {
 75087  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 5)
 75088  				return -12
 75089  			}
 75090  			if c == Tuint32_t(0xfc) && d&Tuint32_t(0x3c) == Tuint32_t(0) {
 75091  				*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(int32((int64(p)-int64(string))/1) - 5)
 75092  				return -21
 75093  			}
 75094  			break
 75095  		}
 75096  
 75097  		// Character is valid under RFC 2279, but 4-byte and 5-byte characters are
 75098  		//   excluded by RFC 3629. The pointer p is currently at the last byte of the
 75099  		//   character.
 75100  
 75101  		if ab > Tuint32_t(3) {
 75102  			*(*Tsize_t)(unsafe.Pointer(erroroffset)) = Tsize_t(Tuint32_t(int32((int64(p)-int64(string))/1)) - ab)
 75103  			if ab == Tuint32_t(4) {
 75104  				return -13
 75105  			}
 75106  			return -14
 75107  		}
 75108  	}
 75109  	return 0
 75110  
 75111  	// ----------------- Check a UTF-16 string -----------------
 75112  
 75113  }
 75114  
 75115  // End of pcre2_valid_utf.c
 75116  
 75117  // This function is needed only when memmove() is not available.
 75118  
 75119  // End of pcre2_internal.h
 75120  
 75121  // ************************************************
 75122  //
 75123  //       Match character against an XCLASS        *
 75124  //
 75125  
 75126  // This function is called to match a character against an extended class that
 75127  // might contain codepoints above 255 and/or Unicode properties.
 75128  //
 75129  // Arguments:
 75130  //   c           the character
 75131  //   data        points to the flag code unit of the XCLASS data
 75132  //   utf         TRUE if in UTF mode
 75133  //
 75134  // Returns:      TRUE if character matches, else FALSE
 75135  
 75136  func X_pcre2_xclass_8(tls *libc.TLS, c Tuint32_t, data TPCRE2_SPTR8, utf TBOOL) TBOOL { /* pcre2_xclass.c:69:1: */
 75137  	var t TPCRE2_UCHAR8
 75138  	var negated TBOOL = libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&DXCL_NOT != 0)
 75139  
 75140  	// In 8 bit mode, this must always be TRUE. Help the compiler to know that.
 75141  	utf = DTRUE
 75142  
 75143  	// Code points < 256 are matched against a bitmap, if one is present. If not,
 75144  	// we still carry on, because there may be ranges that start below 256 in the
 75145  	// additional data.
 75146  
 75147  	if c < Tuint32_t(256) {
 75148  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&DXCL_HASPROP == 0 {
 75149  			if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&DXCL_MAP == 0 {
 75150  				return negated
 75151  			}
 75152  			return libc.Bool32(uint32(*(*Tuint8_t)(unsafe.Pointer(data + uintptr(1) + uintptr(c/Tuint32_t(8)))))&(uint32(1)<<(c&Tuint32_t(7))) != uint32(0))
 75153  		}
 75154  		if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&DXCL_MAP != 0 && uint32(*(*Tuint8_t)(unsafe.Pointer(data + uintptr(1) + uintptr(c/Tuint32_t(8)))))&(uint32(1)<<(c&Tuint32_t(7))) != uint32(0) {
 75155  			return libc.BoolInt32(!(negated != 0))
 75156  		} // char found
 75157  	}
 75158  
 75159  	// First skip the bit map if present. Then match against the list of Unicode
 75160  	// properties or large chars or ranges that end with a large char. We won't ever
 75161  	// encounter XCL_PROP or XCL_NOTPROP when UTF support is not compiled.
 75162  
 75163  	if int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))&DXCL_MAP != 0 {
 75164  		data += TPCRE2_SPTR8(uint64(32) / uint64(unsafe.Sizeof(TPCRE2_UCHAR8(0))))
 75165  	}
 75166  
 75167  	for int32(libc.AssignUint8(&t, *(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))) != DXCL_END {
 75168  		var x Tuint32_t
 75169  		var y Tuint32_t
 75170  		if int32(t) == DXCL_SINGLE {
 75171  			if utf != 0 {
 75172  				x = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))
 75173  				if x >= 0xc0 {
 75174  					if x&0x20 == Tuint32_t(0) {
 75175  						x = x&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))&0x3f
 75176  					} else if x&0x10 == Tuint32_t(0) {
 75177  						x = x&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f
 75178  						data += uintptr(2)
 75179  					} else if x&0x08 == Tuint32_t(0) {
 75180  						x = x&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f
 75181  						data += uintptr(3)
 75182  					} else if x&0x04 == Tuint32_t(0) {
 75183  						x = x&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 3)))&0x3f
 75184  						data += uintptr(4)
 75185  					} else {
 75186  						x = x&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 4)))&0x3f
 75187  						data += uintptr(5)
 75188  					}
 75189  				}
 75190  
 75191  				// macro generates multiple statements
 75192  			} else {
 75193  				x = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))
 75194  			}
 75195  			if c == x {
 75196  				return libc.BoolInt32(!(negated != 0))
 75197  			}
 75198  		} else if int32(t) == DXCL_RANGE {
 75199  			if utf != 0 {
 75200  				x = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))
 75201  				if x >= 0xc0 {
 75202  					if x&0x20 == Tuint32_t(0) {
 75203  						x = x&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))&0x3f
 75204  					} else if x&0x10 == Tuint32_t(0) {
 75205  						x = x&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f
 75206  						data += uintptr(2)
 75207  					} else if x&0x08 == Tuint32_t(0) {
 75208  						x = x&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f
 75209  						data += uintptr(3)
 75210  					} else if x&0x04 == Tuint32_t(0) {
 75211  						x = x&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 3)))&0x3f
 75212  						data += uintptr(4)
 75213  					} else {
 75214  						x = x&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 4)))&0x3f
 75215  						data += uintptr(5)
 75216  					}
 75217  				}
 75218  
 75219  				// macro generates multiple statements
 75220  				y = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))
 75221  				if y >= 0xc0 {
 75222  					if y&0x20 == Tuint32_t(0) {
 75223  						y = y&0x1f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))&0x3f
 75224  					} else if y&0x10 == Tuint32_t(0) {
 75225  						y = y&0x0f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f
 75226  						data += uintptr(2)
 75227  					} else if y&0x08 == Tuint32_t(0) {
 75228  						y = y&0x07<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f
 75229  						data += uintptr(3)
 75230  					} else if y&0x04 == Tuint32_t(0) {
 75231  						y = y&0x03<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 3)))&0x3f
 75232  						data += uintptr(4)
 75233  					} else {
 75234  						y = y&0x01<<30 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data)))&0x3f<<24 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))&0x3f<<18 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 2)))&0x3f<<12 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 3)))&0x3f<<6 | uint32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 4)))&0x3f
 75235  						data += uintptr(5)
 75236  					}
 75237  				}
 75238  
 75239  				// macro generates multiple statements
 75240  			} else {
 75241  				x = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))
 75242  				y = Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(libc.PostIncUintptr(&data, 1))))
 75243  			}
 75244  			if c >= x && c <= y {
 75245  				return libc.BoolInt32(!(negated != 0))
 75246  			}
 75247  		} else {
 75248  			var prop uintptr = uintptr(unsafe.Pointer(&X_pcre2_ucd_records_8)) + uintptr(X_pcre2_ucd_stage2_8[int32(X_pcre2_ucd_stage1_8[int32(c)/DUCD_BLOCK_SIZE])*DUCD_BLOCK_SIZE+int32(c)%DUCD_BLOCK_SIZE])*12
 75249  			var isprop TBOOL = libc.Bool32(int32(t) == DXCL_PROP)
 75250  			var ok TBOOL
 75251  
 75252  			switch int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data))) {
 75253  			case DPT_ANY:
 75254  				if isprop != 0 {
 75255  					return libc.BoolInt32(!(negated != 0))
 75256  				}
 75257  				break
 75258  				fallthrough
 75259  
 75260  			case DPT_LAMP:
 75261  				if libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lu || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Ll || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Lt) == isprop {
 75262  					return libc.BoolInt32(!(negated != 0))
 75263  				}
 75264  				break
 75265  				fallthrough
 75266  
 75267  			case DPT_GC:
 75268  				if libc.Bool32(Tuint32_t(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1))) == X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype]) == isprop {
 75269  					return libc.BoolInt32(!(negated != 0))
 75270  				}
 75271  				break
 75272  				fallthrough
 75273  
 75274  			case DPT_PC:
 75275  				if libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1))) == int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype)) == isprop {
 75276  					return libc.BoolInt32(!(negated != 0))
 75277  				}
 75278  				break
 75279  				fallthrough
 75280  
 75281  			case DPT_SC:
 75282  				if libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1))) == int32((*Tucd_record)(unsafe.Pointer(prop)).Fscript)) == isprop {
 75283  					return libc.BoolInt32(!(negated != 0))
 75284  				}
 75285  				break
 75286  				fallthrough
 75287  
 75288  			case DPT_SCX:
 75289  				ok = libc.Bool32(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1))) == int32((*Tucd_record)(unsafe.Pointer(prop)).Fscript) || *(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_script_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscriptx_bidiclass)&DUCD_SCRIPTX_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))%32)) != Tuint32_t(0))
 75290  				if ok == isprop {
 75291  					return libc.BoolInt32(!(negated != 0))
 75292  				}
 75293  				break
 75294  				fallthrough
 75295  
 75296  			case DPT_ALNUM:
 75297  				if libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N) == isprop {
 75298  					return libc.BoolInt32(!(negated != 0))
 75299  				}
 75300  				break
 75301  				fallthrough
 75302  
 75303  			// Perl space used to exclude VT, but from Perl 5.18 it is included,
 75304  			//       which means that Perl space and POSIX space are now identical. PCRE
 75305  			//       was changed at release 8.34.
 75306  
 75307  			case DPT_SPACE:
 75308  				fallthrough // Perl space
 75309  			case DPT_PXSPACE: // POSIX space
 75310  				switch c {
 75311  				case Tuint32_t('\011'):
 75312  					fallthrough
 75313  				case Tuint32_t('\040'):
 75314  					fallthrough
 75315  				case libc.Uint32FromUint8(libc.Uint8FromInt32(160)):
 75316  					fallthrough
 75317  				case Tuint32_t(0x1680):
 75318  					fallthrough /* OGHAM SPACE MARK */
 75319  				case Tuint32_t(0x180e):
 75320  					fallthrough /* MONGOLIAN VOWEL SEPARATOR */
 75321  				case Tuint32_t(0x2000):
 75322  					fallthrough /* EN QUAD */
 75323  				case Tuint32_t(0x2001):
 75324  					fallthrough /* EM QUAD */
 75325  				case Tuint32_t(0x2002):
 75326  					fallthrough /* EN SPACE */
 75327  				case Tuint32_t(0x2003):
 75328  					fallthrough /* EM SPACE */
 75329  				case Tuint32_t(0x2004):
 75330  					fallthrough /* THREE-PER-EM SPACE */
 75331  				case Tuint32_t(0x2005):
 75332  					fallthrough /* FOUR-PER-EM SPACE */
 75333  				case Tuint32_t(0x2006):
 75334  					fallthrough /* SIX-PER-EM SPACE */
 75335  				case Tuint32_t(0x2007):
 75336  					fallthrough /* FIGURE SPACE */
 75337  				case Tuint32_t(0x2008):
 75338  					fallthrough /* PUNCTUATION SPACE */
 75339  				case Tuint32_t(0x2009):
 75340  					fallthrough /* THIN SPACE */
 75341  				case Tuint32_t(0x200A):
 75342  					fallthrough /* HAIR SPACE */
 75343  				case Tuint32_t(0x202f):
 75344  					fallthrough /* NARROW NO-BREAK SPACE */
 75345  				case Tuint32_t(0x205f):
 75346  					fallthrough /* MEDIUM MATHEMATICAL SPACE */
 75347  				case Tuint32_t(0x3000):
 75348  					fallthrough
 75349  				case Tuint32_t('\012'):
 75350  					fallthrough
 75351  				case Tuint32_t('\013'):
 75352  					fallthrough
 75353  				case Tuint32_t('\014'):
 75354  					fallthrough
 75355  				case Tuint32_t('\015'):
 75356  					fallthrough
 75357  				case libc.Uint32FromUint8(libc.Uint8FromInt32(133)):
 75358  					fallthrough
 75359  				case Tuint32_t(0x2028):
 75360  					fallthrough /* LINE SEPARATOR */
 75361  				case Tuint32_t(0x2029):
 75362  					if isprop != 0 {
 75363  						return libc.BoolInt32(!(negated != 0))
 75364  					}
 75365  					break
 75366  					fallthrough
 75367  
 75368  				default:
 75369  					if libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_Z) == isprop {
 75370  						return libc.BoolInt32(!(negated != 0))
 75371  					}
 75372  					break
 75373  				}
 75374  				break
 75375  				fallthrough
 75376  
 75377  			case DPT_WORD:
 75378  				if libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_L || X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_N || c == Tuint32_t('\137')) ==
 75379  					isprop {
 75380  					return libc.BoolInt32(!(negated != 0))
 75381  				}
 75382  				break
 75383  				fallthrough
 75384  
 75385  			case DPT_UCNC:
 75386  				if c < Tuint32_t(0xa0) {
 75387  					if libc.Bool32(c == Tuint32_t('\044') || c == Tuint32_t('\100') || c == Tuint32_t('\140')) == isprop {
 75388  						return libc.BoolInt32(!(negated != 0))
 75389  					}
 75390  				} else {
 75391  					if libc.Bool32(c < Tuint32_t(0xd800) || c > Tuint32_t(0xdfff)) == isprop {
 75392  						return libc.BoolInt32(!(negated != 0))
 75393  					}
 75394  				}
 75395  				break
 75396  				fallthrough
 75397  
 75398  			case DPT_BIDICL:
 75399  				if libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fscriptx_bidiclass)>>DUCD_BIDICLASS_SHIFT == int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))) == isprop {
 75400  					return libc.BoolInt32(!(negated != 0))
 75401  				}
 75402  				break
 75403  				fallthrough
 75404  
 75405  			case DPT_BOOL:
 75406  				ok = libc.Bool32(*(*Tuint32_t)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_ucd_boolprop_sets_8)) + uintptr(int32((*Tucd_record)(unsafe.Pointer(prop)).Fbprops)&DUCD_BPROPS_MASK)*4 + uintptr(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))/32)*4))&(uint32(1)<<(int32(*(*TPCRE2_UCHAR8)(unsafe.Pointer(data + 1)))%32)) != Tuint32_t(0))
 75407  				if ok == isprop {
 75408  					return libc.BoolInt32(!(negated != 0))
 75409  				}
 75410  				break
 75411  				fallthrough
 75412  
 75413  			// The following three properties can occur only in an XCLASS, as there
 75414  			//       is no \p or \P coding for them.
 75415  
 75416  			// Graphic character. Implement this as not Z (space or separator) and
 75417  			//       not C (other), except for Cf (format) with a few exceptions. This seems
 75418  			//       to be what Perl does. The exceptional characters are:
 75419  			//
 75420  			//       U+061C           Arabic Letter Mark
 75421  			//       U+180E           Mongolian Vowel Separator
 75422  			//       U+2066 - U+2069  Various "isolate"s
 75423  			//
 75424  
 75425  			case DPT_PXGRAPH:
 75426  				if libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] != ucp_Z && (X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] != ucp_C || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Cf && c != Tuint32_t(0x061c) && c != Tuint32_t(0x180e) && (c < Tuint32_t(0x2066) || c > Tuint32_t(0x2069)))) == isprop {
 75427  					return libc.BoolInt32(!(negated != 0))
 75428  				}
 75429  				break
 75430  				fallthrough
 75431  
 75432  			// Printable character: same as graphic, with the addition of Zs, i.e.
 75433  			//       not Zl and not Zp, and U+180E.
 75434  
 75435  			case DPT_PXPRINT:
 75436  				if libc.Bool32(int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) != ucp_Zl && int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) != ucp_Zp && (X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] != ucp_C || int32((*Tucd_record)(unsafe.Pointer(prop)).Fchartype) == ucp_Cf && c != Tuint32_t(0x061c) && (c < Tuint32_t(0x2066) || c > Tuint32_t(0x2069)))) == isprop {
 75437  					return libc.BoolInt32(!(negated != 0))
 75438  				}
 75439  				break
 75440  				fallthrough
 75441  
 75442  			// Punctuation: all Unicode punctuation, plus ASCII characters that
 75443  			//       Unicode treats as symbols rather than punctuation, for Perl
 75444  			//       compatibility (these are $+<=>^`|~).
 75445  
 75446  			case DPT_PXPUNCT:
 75447  				if libc.Bool32(X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_P || c < Tuint32_t(128) && X_pcre2_ucp_gentype_8[(*Tucd_record)(unsafe.Pointer(prop)).Fchartype] == ucp_S) == isprop {
 75448  					return libc.BoolInt32(!(negated != 0))
 75449  				}
 75450  				break
 75451  				fallthrough
 75452  
 75453  			// This should never occur, but compilers may mutter if there is no
 75454  			//       default.
 75455  
 75456  			default:
 75457  				return DFALSE
 75458  			}
 75459  
 75460  			data += uintptr(2)
 75461  		}
 75462  	}
 75463  
 75464  	return negated // char did not match
 75465  }
 75466  
 75467  // End of pcre2_xclass.c
 75468  
 75469  func init() {
 75470  	*(*func(*libc.TLS, Tsize_t, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8)) + 0)) = default_malloc                  // pcre2_context.c:134:5:
 75471  	*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8)) + 8)) = default_free                            // pcre2_context.c:134:21:
 75472  	*(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8)) + 40 /* .tables */)) = uintptr(unsafe.Pointer(&X_pcre2_default_tables_8)) // pcre2_context.c:137:3:
 75473  	*(*func(*libc.TLS, Tsize_t, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8)) + 0)) = default_malloc                  // pcre2_context.c:134:5:
 75474  	*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8)) + 8)) = default_free                            // pcre2_context.c:134:21:
 75475  	*(*uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_compile_context_8)) + 40 /* .tables */)) = uintptr(unsafe.Pointer(&X_pcre2_default_tables_8)) // pcre2_context.c:137:3:
 75476  	*(*func(*libc.TLS, Tsize_t, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_convert_context_8)) + 0)) = default_malloc                  // pcre2_context.c:198:5:
 75477  	*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_convert_context_8)) + 8)) = default_free                            // pcre2_context.c:198:21:
 75478  	*(*func(*libc.TLS, Tsize_t, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_convert_context_8)) + 0)) = default_malloc                  // pcre2_context.c:198:5:
 75479  	*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_convert_context_8)) + 8)) = default_free                            // pcre2_context.c:198:21:
 75480  	*(*func(*libc.TLS, Tsize_t, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_match_context_8)) + 0)) = default_malloc                    // pcre2_context.c:164:5:
 75481  	*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_match_context_8)) + 8)) = default_free                              // pcre2_context.c:164:21:
 75482  	*(*func(*libc.TLS, Tsize_t, uintptr) uintptr)(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_match_context_8)) + 0)) = default_malloc                    // pcre2_context.c:164:5:
 75483  	*(*func(*libc.TLS, uintptr, uintptr))(unsafe.Pointer(uintptr(unsafe.Pointer(&X_pcre2_default_match_context_8)) + 8)) = default_free                              // pcre2_context.c:164:21:
 75484  }
 75485  
 75486  var ts1 = "\x00MARK\x00ACCEPT\x00F\x00FAIL\x00COMMIT\x00PRUNE\x00SKIP\x00THEN\x00pla\x00plb\x00napla\x00naplb\x00nla\x00nlb\x00positive_lookahead\x00positive_lookbehind\x00non_atomic_positive_lookahead\x00non_atomic_positive_lookbehind\x00negative_lookahead\x00negative_lookbehind\x00atomic\x00sr\x00asr\x00script_run\x00atomic_script_run\x00alpha\x00lower\x00upper\x00alnum\x00ascii\x00blank\x00cntrl\x00digit\x00graph\x00print\x00punct\x00space\x00word\x00xdigit\x00UTF8)\x00UTF)\x00UCP)\x00NOTEMPTY)\x00NOTEMPTY_ATSTART)\x00NO_AUTO_POSSESS)\x00NO_DOTSTAR_ANCHOR)\x00NO_JIT)\x00NO_START_OPT)\x00LIMIT_HEAP=\x00LIMIT_MATCH=\x00LIMIT_DEPTH=\x00LIMIT_RECURSION=\x00CR)\x00LF)\x00CRLF)\x00ANY)\x00NUL)\x00ANYCRLF)\x00BSR_ANYCRLF)\x00BSR_UNICODE)\x00bidiclass\x00bc\x00script\x00sc\x00scriptextensions\x00scx\x00[:<:]]\x00[:>:]]\x00Q\\E\x00VERSION\x00DEFINE\x00Z\x0010.40 2022-04-14\x0010.402022-04-14\x00\\?*+|.^${}[]()\x00(){}123456789\x00(*NUL)\x00]\x00:]\x00\\\x00[\x00^\x00alnum:alpha:ascii:blank:cntrl:digit:graph:lower:print:punct:space:upper:word:xdigit:\x00\x00no error\x00\\ at end of pattern\x00\\c at end of pattern\x00unrecognized character follows \\\x00numbers out of order in {} quantifier\x00number too big in {} quantifier\x00missing terminating ] for character class\x00escape sequence is invalid in character class\x00range out of order in character class\x00quantifier does not follow a repeatable item\x00internal error: unexpected repeat\x00unrecognized character after (? or (?-\x00POSIX named classes are supported only within a class\x00POSIX collating elements are not supported\x00missing closing parenthesis\x00reference to non-existent subpattern\x00pattern passed as NULL\x00unrecognised compile-time option bit(s)\x00missing ) after (?# comment\x00parentheses are too deeply nested\x00regular expression is too large\x00failed to allocate heap memory\x00unmatched closing parenthesis\x00internal error: code overflow\x00missing closing parenthesis for condition\x00lookbehind assertion is not fixed length\x00a relative value of zero is not allowed\x00conditional subpattern contains more than two branches\x00assertion expected after (?( or (?(?C)\x00digit expected after (?+ or (?-\x00unknown POSIX class name\x00internal error in pcre2_study(): should not occur\x00this version of PCRE2 does not have Unicode support\x00parentheses are too deeply nested (stack check)\x00character code point value in \\x{} or \\o{} is too large\x00lookbehind is too complicated\x00\\C is not allowed in a lookbehind assertion in UTF-8 mode\x00PCRE2 does not support \\F, \\L, \\l, \\N{name}, \\U, or \\u\x00number after (?C is greater than 255\x00closing parenthesis for (?C expected\x00invalid escape sequence in (*VERB) name\x00unrecognized character after (?P\x00syntax error in subpattern name (missing terminator?)\x00two named subpatterns have the same name (PCRE2_DUPNAMES not set)\x00subpattern name must start with a non-digit\x00this version of PCRE2 does not have support for \\P, \\p, or \\X\x00malformed \\P or \\p sequence\x00unknown property after \\P or \\p\x00subpattern name is too long (maximum 32 code units)\x00too many named subpatterns (maximum 10000)\x00invalid range in character class\x00octal value is greater than \\377 in 8-bit non-UTF-8 mode\x00internal error: overran compiling workspace\x00internal error: previously-checked referenced subpattern not found\x00DEFINE subpattern contains more than one branch\x00missing opening brace after \\o\x00internal error: unknown newline setting\x00\\g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number\x00(?R (recursive pattern call) must be followed by a closing parenthesis\x00obsolete error (should not occur)\x00(*VERB) not recognized or malformed\x00subpattern number is too big\x00subpattern name expected\x00internal error: parsed pattern overflow\x00non-octal character in \\o{} (closing brace missing?)\x00different names for subpatterns of the same number are not allowed\x00(*MARK) must have an argument\x00non-hex character in \\x{} (closing brace missing?)\x00\\c must be followed by a printable ASCII character\x00\\k is not followed by a braced, angle-bracketed, or quoted name\x00internal error: unknown meta code in check_lookbehinds()\x00\\N is not supported in a class\x00callout string is too long\x00disallowed Unicode code point (>= 0xd800 && <= 0xdfff)\x00using UTF is disabled by the application\x00using UCP is disabled by the application\x00name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)\x00character code point value in \\u.... sequence is too large\x00digits missing in \\x{} or \\o{} or \\N{U+}\x00syntax error or number too big in (?(VERSION condition\x00internal error: unknown opcode in auto_possessify()\x00missing terminating delimiter for callout with string argument\x00unrecognized string delimiter follows (?C\x00using \\C is disabled by the application\x00(?| and/or (?J: or (?x: parentheses are too deeply nested\x00using \\C is disabled in this PCRE2 library\x00regular expression is too complicated\x00lookbehind assertion is too long\x00pattern string is longer than the limit set by the application\x00internal error: unknown code in parsed pattern\x00internal error: bad code value in parsed_skip()\x00PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES is not allowed in UTF-16 mode\x00invalid option bits with PCRE2_LITERAL\x00\\N{U+dddd} is supported only in Unicode (UTF) mode\x00invalid hyphen in option setting\x00(*alpha_assertion) not recognized\x00script runs require Unicode support, which this version of PCRE2 does not have\x00too many capturing groups (maximum 65535)\x00atomic assertion expected after (?( or (?(?C)\x00\\K is not allowed in lookarounds (but see PCRE2_EXTRA_ALLOW_LOOKAROUND_BSK)\x00\x00no error\x00no match\x00partial match\x00UTF-8 error: 1 byte missing at end\x00UTF-8 error: 2 bytes missing at end\x00UTF-8 error: 3 bytes missing at end\x00UTF-8 error: 4 bytes missing at end\x00UTF-8 error: 5 bytes missing at end\x00UTF-8 error: byte 2 top bits not 0x80\x00UTF-8 error: byte 3 top bits not 0x80\x00UTF-8 error: byte 4 top bits not 0x80\x00UTF-8 error: byte 5 top bits not 0x80\x00UTF-8 error: byte 6 top bits not 0x80\x00UTF-8 error: 5-byte character is not allowed (RFC 3629)\x00UTF-8 error: 6-byte character is not allowed (RFC 3629)\x00UTF-8 error: code points greater than 0x10ffff are not defined\x00UTF-8 error: code points 0xd800-0xdfff are not defined\x00UTF-8 error: overlong 2-byte sequence\x00UTF-8 error: overlong 3-byte sequence\x00UTF-8 error: overlong 4-byte sequence\x00UTF-8 error: overlong 5-byte sequence\x00UTF-8 error: overlong 6-byte sequence\x00UTF-8 error: isolated byte with 0x80 bit set\x00UTF-8 error: illegal byte (0xfe or 0xff)\x00UTF-16 error: missing low surrogate at end\x00UTF-16 error: invalid low surrogate\x00UTF-16 error: isolated low surrogate\x00UTF-32 error: code points 0xd800-0xdfff are not defined\x00UTF-32 error: code points greater than 0x10ffff are not defined\x00bad data value\x00patterns do not all use the same character tables\x00magic number missing\x00pattern compiled in wrong mode: 8/16/32-bit error\x00bad offset value\x00bad option value\x00invalid replacement string\x00bad offset into UTF string\x00callout error code\x00invalid data in workspace for DFA restart\x00too much recursion for DFA matching\x00backreference condition or recursion test is not supported for DFA matching\x00function is not supported for DFA matching\x00pattern contains an item that is not supported for DFA matching\x00workspace size exceeded in DFA matching\x00internal error - pattern overwritten?\x00bad JIT option\x00JIT stack limit reached\x00match limit exceeded\x00no more memory\x00unknown substring\x00non-unique substring name\x00NULL argument passed with non-zero length\x00nested recursion at the same subject position\x00matching depth limit exceeded\x00requested value is not available\x00requested value is not set\x00offset limit set without PCRE2_USE_OFFSET_LIMIT\x00bad escape sequence in replacement string\x00expected closing curly bracket in replacement string\x00bad substitution in replacement string\x00match with end before start or start moved backwards is not supported\x00too many replacements (more than INT_MAX)\x00bad serialized data\x00heap limit exceeded\x00invalid syntax\x00internal error - duplicate substitution match\x00PCRE2_MATCH_INVALID_UTF is not supported for DFA matching\x00\x00\x00\x00JIT is not supported\x00MARK\x00adlam\x00adlm\x00aghb\x00ahex\x00ahom\x00alpha\x00alphabetic\x00anatolianhieroglyphs\x00any\x00arab\x00arabic\x00armenian\x00armi\x00armn\x00ascii\x00asciihexdigit\x00avestan\x00avst\x00bali\x00balinese\x00bamu\x00bamum\x00bass\x00bassavah\x00batak\x00batk\x00beng\x00bengali\x00bhaiksuki\x00bhks\x00bidial\x00bidian\x00bidib\x00bidibn\x00bidic\x00bidicontrol\x00bidics\x00bidien\x00bidies\x00bidiet\x00bidifsi\x00bidil\x00bidilre\x00bidilri\x00bidilro\x00bidim\x00bidimirrored\x00bidinsm\x00bidion\x00bidipdf\x00bidipdi\x00bidir\x00bidirle\x00bidirli\x00bidirlo\x00bidis\x00bidiws\x00bopo\x00bopomofo\x00brah\x00brahmi\x00brai\x00braille\x00bugi\x00buginese\x00buhd\x00buhid\x00c\x00cakm\x00canadianaboriginal\x00cans\x00cari\x00carian\x00cased\x00caseignorable\x00caucasianalbanian\x00cc\x00cf\x00chakma\x00cham\x00changeswhencasefolded\x00changeswhencasemapped\x00changeswhenlowercased\x00changeswhentitlecased\x00changeswhenuppercased\x00cher\x00cherokee\x00chorasmian\x00chrs\x00ci\x00cn\x00co\x00common\x00copt\x00coptic\x00cpmn\x00cprt\x00cs\x00cuneiform\x00cwcf\x00cwcm\x00cwl\x00cwt\x00cwu\x00cypriot\x00cyprominoan\x00cyrillic\x00cyrl\x00dash\x00defaultignorablecodepoint\x00dep\x00deprecated\x00deseret\x00deva\x00devanagari\x00di\x00dia\x00diacritic\x00diak\x00divesakuru\x00dogr\x00dogra\x00dsrt\x00dupl\x00duployan\x00ebase\x00ecomp\x00egyp\x00egyptianhieroglyphs\x00elba\x00elbasan\x00elym\x00elymaic\x00emod\x00emoji\x00emojicomponent\x00emojimodifier\x00emojimodifierbase\x00emojipresentation\x00epres\x00ethi\x00ethiopic\x00ext\x00extendedpictographic\x00extender\x00extpict\x00geor\x00georgian\x00glag\x00glagolitic\x00gong\x00gonm\x00goth\x00gothic\x00gran\x00grantha\x00graphemebase\x00graphemeextend\x00graphemelink\x00grbase\x00greek\x00grek\x00grext\x00grlink\x00gujarati\x00gujr\x00gunjalagondi\x00gurmukhi\x00guru\x00han\x00hang\x00hangul\x00hani\x00hanifirohingya\x00hano\x00hanunoo\x00hatr\x00hatran\x00hebr\x00hebrew\x00hex\x00hexdigit\x00hira\x00hiragana\x00hluw\x00hmng\x00hmnp\x00hung\x00idc\x00idcontinue\x00ideo\x00ideographic\x00ids\x00idsb\x00idsbinaryoperator\x00idst\x00idstart\x00idstrinaryoperator\x00imperialaramaic\x00inherited\x00inscriptionalpahlavi\x00inscriptionalparthian\x00ital\x00java\x00javanese\x00joinc\x00joincontrol\x00kaithi\x00kali\x00kana\x00kannada\x00katakana\x00kayahli\x00khar\x00kharoshthi\x00khitansmallscript\x00khmer\x00khmr\x00khoj\x00khojki\x00khudawadi\x00kits\x00knda\x00kthi\x00l\x00l&\x00lana\x00lao\x00laoo\x00latin\x00latn\x00lc\x00lepc\x00lepcha\x00limb\x00limbu\x00lina\x00linb\x00lineara\x00linearb\x00lisu\x00ll\x00lm\x00lo\x00loe\x00logicalorderexception\x00lower\x00lowercase\x00lt\x00lu\x00lyci\x00lycian\x00lydi\x00lydian\x00m\x00mahajani\x00mahj\x00maka\x00makasar\x00malayalam\x00mand\x00mandaic\x00mani\x00manichaean\x00marc\x00marchen\x00masaramgondi\x00math\x00mc\x00me\x00medefaidrin\x00medf\x00meeteimayek\x00mend\x00mendekikakui\x00merc\x00mero\x00meroiticcursive\x00meroitichieroglyphs\x00miao\x00mlym\x00mn\x00modi\x00mong\x00mongolian\x00mro\x00mroo\x00mtei\x00mult\x00multani\x00myanmar\x00mymr\x00n\x00nabataean\x00nand\x00nandinagari\x00narb\x00nbat\x00nchar\x00nd\x00newa\x00newtailue\x00nko\x00nkoo\x00nl\x00no\x00noncharactercodepoint\x00nshu\x00nushu\x00nyiakengpuachuehmong\x00ogam\x00ogham\x00olchiki\x00olck\x00oldhungarian\x00olditalic\x00oldnortharabian\x00oldpermic\x00oldpersian\x00oldsogdian\x00oldsoutharabian\x00oldturkic\x00olduyghur\x00oriya\x00orkh\x00orya\x00osage\x00osge\x00osma\x00osmanya\x00ougr\x00p\x00pahawhhmong\x00palm\x00palmyrene\x00patsyn\x00patternsyntax\x00patternwhitespace\x00patws\x00pauc\x00paucinhau\x00pc\x00pcm\x00pd\x00pe\x00perm\x00pf\x00phag\x00phagspa\x00phli\x00phlp\x00phnx\x00phoenician\x00pi\x00plrd\x00po\x00prependedconcatenationmark\x00prti\x00ps\x00psalterpahlavi\x00qaac\x00qaai\x00qmark\x00quotationmark\x00radical\x00regionalindicator\x00rejang\x00ri\x00rjng\x00rohg\x00runic\x00runr\x00s\x00samaritan\x00samr\x00sarb\x00saur\x00saurashtra\x00sc\x00sd\x00sentenceterminal\x00sgnw\x00sharada\x00shavian\x00shaw\x00shrd\x00sidd\x00siddham\x00signwriting\x00sind\x00sinh\x00sinhala\x00sk\x00sm\x00so\x00softdotted\x00sogd\x00sogdian\x00sogo\x00sora\x00sorasompeng\x00soyo\x00soyombo\x00space\x00sterm\x00sund\x00sundanese\x00sylo\x00sylotinagri\x00syrc\x00syriac\x00tagalog\x00tagb\x00tagbanwa\x00taile\x00taitham\x00taiviet\x00takr\x00takri\x00tale\x00talu\x00tamil\x00taml\x00tang\x00tangsa\x00tangut\x00tavt\x00telu\x00telugu\x00term\x00terminalpunctuation\x00tfng\x00tglg\x00thaa\x00thaana\x00thai\x00tibetan\x00tibt\x00tifinagh\x00tirh\x00tirhuta\x00tnsa\x00toto\x00ugar\x00ugaritic\x00uideo\x00unifiedideograph\x00unknown\x00upper\x00uppercase\x00vai\x00vaii\x00variationselector\x00vith\x00vithkuqi\x00vs\x00wancho\x00wara\x00warangciti\x00wcho\x00whitespace\x00wspace\x00xan\x00xidc\x00xidcontinue\x00xids\x00xidstart\x00xpeo\x00xps\x00xsp\x00xsux\x00xuc\x00xwd\x00yezi\x00yezidi\x00yi\x00yiii\x00z\x00zanabazarsquare\x00zanb\x00zinh\x00zl\x00zp\x00zs\x00zyyy\x00zzzz\x00\x0014.0.0\x00"
 75487  var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data