gitlab.com/CoiaPrant/sqlite3@v1.19.1/speedtest1/main_linux_ppc64le.go (about)

     1  // Code generated by 'ccgo -export-defines "" -ignore-unsupported-alignment -o speedtest1/main_linux_ppc64le.go -trace-translation-units testdata/sqlite-src-3390300/test/speedtest1.c -Itestdata/sqlite-amalgamation-3390300 -l gitlab.com/CoiaPrant/sqlite3/lib -full-path-comments -DNDEBUG -DHAVE_USLEEP -DLONGDOUBLE_TYPE=double -DSQLITE_CORE -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_MEMORY_MANAGEMENT -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_PREUPDATE_HOOK -DSQLITE_ENABLE_RBU -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_SESSION -DSQLITE_ENABLE_SNAPSHOT -DSQLITE_ENABLE_STAT4 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_MUTEX_APPDEF=1 -DSQLITE_MUTEX_NOOP -DSQLITE_SOUNDEX -DSQLITE_THREADSAFE=1 -DSQLITE_OS_UNIX=1', DO NOT EDIT.
     2  
     3  package main
     4  
     5  import (
     6  	"math"
     7  	"reflect"
     8  	"sync/atomic"
     9  	"unsafe"
    10  
    11  	"modernc.org/libc"
    12  	"modernc.org/libc/sys/types"
    13  	"gitlab.com/CoiaPrant/sqlite3/lib"
    14  )
    15  
    16  var _ = math.Pi
    17  var _ reflect.Kind
    18  var _ atomic.Value
    19  var _ unsafe.Pointer
    20  var _ *libc.TLS
    21  var _ types.Size_t
    22  
    23  func main() { libc.Start(main1) }
    24  
    25  const (
    26  	BIG_ENDIAN                            = 4321
    27  	BUFSIZ                                = 8192
    28  	BYTE_ORDER                            = 1234
    29  	EOF                                   = -1
    30  	EXIT_FAILURE                          = 1
    31  	EXIT_SUCCESS                          = 0
    32  	FD_SETSIZE                            = 1024
    33  	FILENAME_MAX                          = 4096
    34  	FOPEN_MAX                             = 16
    35  	FTS5_TOKENIZE_AUX                     = 0x0008
    36  	FTS5_TOKENIZE_DOCUMENT                = 0x0004
    37  	FTS5_TOKENIZE_PREFIX                  = 0x0002
    38  	FTS5_TOKENIZE_QUERY                   = 0x0001
    39  	FTS5_TOKEN_COLOCATED                  = 0x0001
    40  	FULLY_WITHIN                          = 2
    41  	F_LOCK                                = 1
    42  	F_OK                                  = 0
    43  	F_TEST                                = 3
    44  	F_TLOCK                               = 2
    45  	F_ULOCK                               = 0
    46  	HAVE_USLEEP                           = 1
    47  	LITTLE_ENDIAN                         = 1234
    48  	L_INCR                                = 1
    49  	L_SET                                 = 0
    50  	L_XTND                                = 2
    51  	L_ctermid                             = 9
    52  	L_tmpnam                              = 20
    53  	NAMEWIDTH                             = 60
    54  	NDEBUG                                = 1
    55  	NOT_WITHIN                            = 0
    56  	PARTLY_WITHIN                         = 1
    57  	PDP_ENDIAN                            = 3412
    58  	P_tmpdir                              = "/tmp"
    59  	RAND_MAX                              = 2147483647
    60  	R_OK                                  = 4
    61  	SEEK_CUR                              = 1
    62  	SEEK_END                              = 2
    63  	SEEK_SET                              = 0
    64  	SQLITE3_H                             = 0
    65  	SQLITE3_TEXT                          = 3
    66  	SQLITE_ABORT                          = 4
    67  	SQLITE_ABORT_ROLLBACK                 = 516
    68  	SQLITE_ACCESS_EXISTS                  = 0
    69  	SQLITE_ACCESS_READ                    = 2
    70  	SQLITE_ACCESS_READWRITE               = 1
    71  	SQLITE_ALTER_TABLE                    = 26
    72  	SQLITE_ANALYZE                        = 28
    73  	SQLITE_ANY                            = 5
    74  	SQLITE_API                            = 0
    75  	SQLITE_APICALL                        = 0
    76  	SQLITE_ATTACH                         = 24
    77  	SQLITE_AUTH                           = 23
    78  	SQLITE_AUTH_USER                      = 279
    79  	SQLITE_BLOB                           = 4
    80  	SQLITE_BUSY                           = 5
    81  	SQLITE_BUSY_RECOVERY                  = 261
    82  	SQLITE_BUSY_SNAPSHOT                  = 517
    83  	SQLITE_BUSY_TIMEOUT                   = 773
    84  	SQLITE_CALLBACK                       = 0
    85  	SQLITE_CANTOPEN                       = 14
    86  	SQLITE_CANTOPEN_CONVPATH              = 1038
    87  	SQLITE_CANTOPEN_DIRTYWAL              = 1294
    88  	SQLITE_CANTOPEN_FULLPATH              = 782
    89  	SQLITE_CANTOPEN_ISDIR                 = 526
    90  	SQLITE_CANTOPEN_NOTEMPDIR             = 270
    91  	SQLITE_CANTOPEN_SYMLINK               = 1550
    92  	SQLITE_CDECL                          = 0
    93  	SQLITE_CHANGESETAPPLY_INVERT          = 0x0002
    94  	SQLITE_CHANGESETAPPLY_NOSAVEPOINT     = 0x0001
    95  	SQLITE_CHANGESETSTART_INVERT          = 0x0002
    96  	SQLITE_CHANGESET_ABORT                = 2
    97  	SQLITE_CHANGESET_CONFLICT             = 3
    98  	SQLITE_CHANGESET_CONSTRAINT           = 4
    99  	SQLITE_CHANGESET_DATA                 = 1
   100  	SQLITE_CHANGESET_FOREIGN_KEY          = 5
   101  	SQLITE_CHANGESET_NOTFOUND             = 2
   102  	SQLITE_CHANGESET_OMIT                 = 0
   103  	SQLITE_CHANGESET_REPLACE              = 1
   104  	SQLITE_CHECKPOINT_FULL                = 1
   105  	SQLITE_CHECKPOINT_PASSIVE             = 0
   106  	SQLITE_CHECKPOINT_RESTART             = 2
   107  	SQLITE_CHECKPOINT_TRUNCATE            = 3
   108  	SQLITE_CONFIG_COVERING_INDEX_SCAN     = 20
   109  	SQLITE_CONFIG_GETMALLOC               = 5
   110  	SQLITE_CONFIG_GETMUTEX                = 11
   111  	SQLITE_CONFIG_GETPCACHE               = 15
   112  	SQLITE_CONFIG_GETPCACHE2              = 19
   113  	SQLITE_CONFIG_HEAP                    = 8
   114  	SQLITE_CONFIG_LOG                     = 16
   115  	SQLITE_CONFIG_LOOKASIDE               = 13
   116  	SQLITE_CONFIG_MALLOC                  = 4
   117  	SQLITE_CONFIG_MEMDB_MAXSIZE           = 29
   118  	SQLITE_CONFIG_MEMSTATUS               = 9
   119  	SQLITE_CONFIG_MMAP_SIZE               = 22
   120  	SQLITE_CONFIG_MULTITHREAD             = 2
   121  	SQLITE_CONFIG_MUTEX                   = 10
   122  	SQLITE_CONFIG_PAGECACHE               = 7
   123  	SQLITE_CONFIG_PCACHE                  = 14
   124  	SQLITE_CONFIG_PCACHE2                 = 18
   125  	SQLITE_CONFIG_PCACHE_HDRSZ            = 24
   126  	SQLITE_CONFIG_PMASZ                   = 25
   127  	SQLITE_CONFIG_SCRATCH                 = 6
   128  	SQLITE_CONFIG_SERIALIZED              = 3
   129  	SQLITE_CONFIG_SINGLETHREAD            = 1
   130  	SQLITE_CONFIG_SMALL_MALLOC            = 27
   131  	SQLITE_CONFIG_SORTERREF_SIZE          = 28
   132  	SQLITE_CONFIG_SQLLOG                  = 21
   133  	SQLITE_CONFIG_STMTJRNL_SPILL          = 26
   134  	SQLITE_CONFIG_URI                     = 17
   135  	SQLITE_CONFIG_WIN32_HEAPSIZE          = 23
   136  	SQLITE_CONSTRAINT                     = 19
   137  	SQLITE_CONSTRAINT_CHECK               = 275
   138  	SQLITE_CONSTRAINT_COMMITHOOK          = 531
   139  	SQLITE_CONSTRAINT_DATATYPE            = 3091
   140  	SQLITE_CONSTRAINT_FOREIGNKEY          = 787
   141  	SQLITE_CONSTRAINT_FUNCTION            = 1043
   142  	SQLITE_CONSTRAINT_NOTNULL             = 1299
   143  	SQLITE_CONSTRAINT_PINNED              = 2835
   144  	SQLITE_CONSTRAINT_PRIMARYKEY          = 1555
   145  	SQLITE_CONSTRAINT_ROWID               = 2579
   146  	SQLITE_CONSTRAINT_TRIGGER             = 1811
   147  	SQLITE_CONSTRAINT_UNIQUE              = 2067
   148  	SQLITE_CONSTRAINT_VTAB                = 2323
   149  	SQLITE_COPY                           = 0
   150  	SQLITE_CORE                           = 1
   151  	SQLITE_CORRUPT                        = 11
   152  	SQLITE_CORRUPT_INDEX                  = 779
   153  	SQLITE_CORRUPT_SEQUENCE               = 523
   154  	SQLITE_CORRUPT_VTAB                   = 267
   155  	SQLITE_CREATE_INDEX                   = 1
   156  	SQLITE_CREATE_TABLE                   = 2
   157  	SQLITE_CREATE_TEMP_INDEX              = 3
   158  	SQLITE_CREATE_TEMP_TABLE              = 4
   159  	SQLITE_CREATE_TEMP_TRIGGER            = 5
   160  	SQLITE_CREATE_TEMP_VIEW               = 6
   161  	SQLITE_CREATE_TRIGGER                 = 7
   162  	SQLITE_CREATE_VIEW                    = 8
   163  	SQLITE_CREATE_VTABLE                  = 29
   164  	SQLITE_DBCONFIG_DEFENSIVE             = 1010
   165  	SQLITE_DBCONFIG_DQS_DDL               = 1014
   166  	SQLITE_DBCONFIG_DQS_DML               = 1013
   167  	SQLITE_DBCONFIG_ENABLE_FKEY           = 1002
   168  	SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER = 1004
   169  	SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION = 1005
   170  	SQLITE_DBCONFIG_ENABLE_QPSG           = 1007
   171  	SQLITE_DBCONFIG_ENABLE_TRIGGER        = 1003
   172  	SQLITE_DBCONFIG_ENABLE_VIEW           = 1015
   173  	SQLITE_DBCONFIG_LEGACY_ALTER_TABLE    = 1012
   174  	SQLITE_DBCONFIG_LEGACY_FILE_FORMAT    = 1016
   175  	SQLITE_DBCONFIG_LOOKASIDE             = 1001
   176  	SQLITE_DBCONFIG_MAINDBNAME            = 1000
   177  	SQLITE_DBCONFIG_MAX                   = 1017
   178  	SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE      = 1006
   179  	SQLITE_DBCONFIG_RESET_DATABASE        = 1009
   180  	SQLITE_DBCONFIG_TRIGGER_EQP           = 1008
   181  	SQLITE_DBCONFIG_TRUSTED_SCHEMA        = 1017
   182  	SQLITE_DBCONFIG_WRITABLE_SCHEMA       = 1011
   183  	SQLITE_DBSTATUS_CACHE_HIT             = 7
   184  	SQLITE_DBSTATUS_CACHE_MISS            = 8
   185  	SQLITE_DBSTATUS_CACHE_SPILL           = 12
   186  	SQLITE_DBSTATUS_CACHE_USED            = 1
   187  	SQLITE_DBSTATUS_CACHE_USED_SHARED     = 11
   188  	SQLITE_DBSTATUS_CACHE_WRITE           = 9
   189  	SQLITE_DBSTATUS_DEFERRED_FKS          = 10
   190  	SQLITE_DBSTATUS_LOOKASIDE_HIT         = 4
   191  	SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL   = 6
   192  	SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE   = 5
   193  	SQLITE_DBSTATUS_LOOKASIDE_USED        = 0
   194  	SQLITE_DBSTATUS_MAX                   = 12
   195  	SQLITE_DBSTATUS_SCHEMA_USED           = 2
   196  	SQLITE_DBSTATUS_STMT_USED             = 3
   197  	SQLITE_DELETE                         = 9
   198  	SQLITE_DENY                           = 1
   199  	SQLITE_DEPRECATED                     = 0
   200  	SQLITE_DESERIALIZE_FREEONCLOSE        = 1
   201  	SQLITE_DESERIALIZE_READONLY           = 4
   202  	SQLITE_DESERIALIZE_RESIZEABLE         = 2
   203  	SQLITE_DETACH                         = 25
   204  	SQLITE_DETERMINISTIC                  = 0x000000800
   205  	SQLITE_DIRECTONLY                     = 0x000080000
   206  	SQLITE_DONE                           = 101
   207  	SQLITE_DROP_INDEX                     = 10
   208  	SQLITE_DROP_TABLE                     = 11
   209  	SQLITE_DROP_TEMP_INDEX                = 12
   210  	SQLITE_DROP_TEMP_TABLE                = 13
   211  	SQLITE_DROP_TEMP_TRIGGER              = 14
   212  	SQLITE_DROP_TEMP_VIEW                 = 15
   213  	SQLITE_DROP_TRIGGER                   = 16
   214  	SQLITE_DROP_VIEW                      = 17
   215  	SQLITE_DROP_VTABLE                    = 30
   216  	SQLITE_EMPTY                          = 16
   217  	SQLITE_ENABLE_COLUMN_METADATA         = 1
   218  	SQLITE_ENABLE_FTS5                    = 1
   219  	SQLITE_ENABLE_GEOPOLY                 = 1
   220  	SQLITE_ENABLE_MATH_FUNCTIONS          = 1
   221  	SQLITE_ENABLE_MEMORY_MANAGEMENT       = 1
   222  	SQLITE_ENABLE_OFFSET_SQL_FUNC         = 1
   223  	SQLITE_ENABLE_PREUPDATE_HOOK          = 1
   224  	SQLITE_ENABLE_RBU                     = 1
   225  	SQLITE_ENABLE_RTREE                   = 1
   226  	SQLITE_ENABLE_SESSION                 = 1
   227  	SQLITE_ENABLE_SNAPSHOT                = 1
   228  	SQLITE_ENABLE_STAT4                   = 1
   229  	SQLITE_ENABLE_UNLOCK_NOTIFY           = 1
   230  	SQLITE_ERROR                          = 1
   231  	SQLITE_ERROR_MISSING_COLLSEQ          = 257
   232  	SQLITE_ERROR_RETRY                    = 513
   233  	SQLITE_ERROR_SNAPSHOT                 = 769
   234  	SQLITE_EXPERIMENTAL                   = 0
   235  	SQLITE_FAIL                           = 3
   236  	SQLITE_FCNTL_BEGIN_ATOMIC_WRITE       = 31
   237  	SQLITE_FCNTL_BUSYHANDLER              = 15
   238  	SQLITE_FCNTL_CHUNK_SIZE               = 6
   239  	SQLITE_FCNTL_CKPT_DONE                = 37
   240  	SQLITE_FCNTL_CKPT_START               = 39
   241  	SQLITE_FCNTL_CKSM_FILE                = 41
   242  	SQLITE_FCNTL_COMMIT_ATOMIC_WRITE      = 32
   243  	SQLITE_FCNTL_COMMIT_PHASETWO          = 22
   244  	SQLITE_FCNTL_DATA_VERSION             = 35
   245  	SQLITE_FCNTL_EXTERNAL_READER          = 40
   246  	SQLITE_FCNTL_FILE_POINTER             = 7
   247  	SQLITE_FCNTL_GET_LOCKPROXYFILE        = 2
   248  	SQLITE_FCNTL_HAS_MOVED                = 20
   249  	SQLITE_FCNTL_JOURNAL_POINTER          = 28
   250  	SQLITE_FCNTL_LAST_ERRNO               = 4
   251  	SQLITE_FCNTL_LOCKSTATE                = 1
   252  	SQLITE_FCNTL_LOCK_TIMEOUT             = 34
   253  	SQLITE_FCNTL_MMAP_SIZE                = 18
   254  	SQLITE_FCNTL_OVERWRITE                = 11
   255  	SQLITE_FCNTL_PDB                      = 30
   256  	SQLITE_FCNTL_PERSIST_WAL              = 10
   257  	SQLITE_FCNTL_POWERSAFE_OVERWRITE      = 13
   258  	SQLITE_FCNTL_PRAGMA                   = 14
   259  	SQLITE_FCNTL_RBU                      = 26
   260  	SQLITE_FCNTL_RESERVE_BYTES            = 38
   261  	SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE    = 33
   262  	SQLITE_FCNTL_SET_LOCKPROXYFILE        = 3
   263  	SQLITE_FCNTL_SIZE_HINT                = 5
   264  	SQLITE_FCNTL_SIZE_LIMIT               = 36
   265  	SQLITE_FCNTL_SYNC                     = 21
   266  	SQLITE_FCNTL_SYNC_OMITTED             = 8
   267  	SQLITE_FCNTL_TEMPFILENAME             = 16
   268  	SQLITE_FCNTL_TRACE                    = 19
   269  	SQLITE_FCNTL_VFSNAME                  = 12
   270  	SQLITE_FCNTL_VFS_POINTER              = 27
   271  	SQLITE_FCNTL_WAL_BLOCK                = 24
   272  	SQLITE_FCNTL_WIN32_AV_RETRY           = 9
   273  	SQLITE_FCNTL_WIN32_GET_HANDLE         = 29
   274  	SQLITE_FCNTL_WIN32_SET_HANDLE         = 23
   275  	SQLITE_FCNTL_ZIPVFS                   = 25
   276  	SQLITE_FLOAT                          = 2
   277  	SQLITE_FORMAT                         = 24
   278  	SQLITE_FULL                           = 13
   279  	SQLITE_FUNCTION                       = 31
   280  	SQLITE_GET_LOCKPROXYFILE              = 2
   281  	SQLITE_IGNORE                         = 2
   282  	SQLITE_INDEX_CONSTRAINT_EQ            = 2
   283  	SQLITE_INDEX_CONSTRAINT_FUNCTION      = 150
   284  	SQLITE_INDEX_CONSTRAINT_GE            = 32
   285  	SQLITE_INDEX_CONSTRAINT_GLOB          = 66
   286  	SQLITE_INDEX_CONSTRAINT_GT            = 4
   287  	SQLITE_INDEX_CONSTRAINT_IS            = 72
   288  	SQLITE_INDEX_CONSTRAINT_ISNOT         = 69
   289  	SQLITE_INDEX_CONSTRAINT_ISNOTNULL     = 70
   290  	SQLITE_INDEX_CONSTRAINT_ISNULL        = 71
   291  	SQLITE_INDEX_CONSTRAINT_LE            = 8
   292  	SQLITE_INDEX_CONSTRAINT_LIKE          = 65
   293  	SQLITE_INDEX_CONSTRAINT_LIMIT         = 73
   294  	SQLITE_INDEX_CONSTRAINT_LT            = 16
   295  	SQLITE_INDEX_CONSTRAINT_MATCH         = 64
   296  	SQLITE_INDEX_CONSTRAINT_NE            = 68
   297  	SQLITE_INDEX_CONSTRAINT_OFFSET        = 74
   298  	SQLITE_INDEX_CONSTRAINT_REGEXP        = 67
   299  	SQLITE_INDEX_SCAN_UNIQUE              = 1
   300  	SQLITE_INNOCUOUS                      = 0x000200000
   301  	SQLITE_INSERT                         = 18
   302  	SQLITE_INTEGER                        = 1
   303  	SQLITE_INTERNAL                       = 2
   304  	SQLITE_INTERRUPT                      = 9
   305  	SQLITE_IOCAP_ATOMIC                   = 0x00000001
   306  	SQLITE_IOCAP_ATOMIC16K                = 0x00000040
   307  	SQLITE_IOCAP_ATOMIC1K                 = 0x00000004
   308  	SQLITE_IOCAP_ATOMIC2K                 = 0x00000008
   309  	SQLITE_IOCAP_ATOMIC32K                = 0x00000080
   310  	SQLITE_IOCAP_ATOMIC4K                 = 0x00000010
   311  	SQLITE_IOCAP_ATOMIC512                = 0x00000002
   312  	SQLITE_IOCAP_ATOMIC64K                = 0x00000100
   313  	SQLITE_IOCAP_ATOMIC8K                 = 0x00000020
   314  	SQLITE_IOCAP_BATCH_ATOMIC             = 0x00004000
   315  	SQLITE_IOCAP_IMMUTABLE                = 0x00002000
   316  	SQLITE_IOCAP_POWERSAFE_OVERWRITE      = 0x00001000
   317  	SQLITE_IOCAP_SAFE_APPEND              = 0x00000200
   318  	SQLITE_IOCAP_SEQUENTIAL               = 0x00000400
   319  	SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN    = 0x00000800
   320  	SQLITE_IOERR                          = 10
   321  	SQLITE_IOERR_ACCESS                   = 3338
   322  	SQLITE_IOERR_AUTH                     = 7178
   323  	SQLITE_IOERR_BEGIN_ATOMIC             = 7434
   324  	SQLITE_IOERR_BLOCKED                  = 2826
   325  	SQLITE_IOERR_CHECKRESERVEDLOCK        = 3594
   326  	SQLITE_IOERR_CLOSE                    = 4106
   327  	SQLITE_IOERR_COMMIT_ATOMIC            = 7690
   328  	SQLITE_IOERR_CONVPATH                 = 6666
   329  	SQLITE_IOERR_CORRUPTFS                = 8458
   330  	SQLITE_IOERR_DATA                     = 8202
   331  	SQLITE_IOERR_DELETE                   = 2570
   332  	SQLITE_IOERR_DELETE_NOENT             = 5898
   333  	SQLITE_IOERR_DIR_CLOSE                = 4362
   334  	SQLITE_IOERR_DIR_FSYNC                = 1290
   335  	SQLITE_IOERR_FSTAT                    = 1802
   336  	SQLITE_IOERR_FSYNC                    = 1034
   337  	SQLITE_IOERR_GETTEMPPATH              = 6410
   338  	SQLITE_IOERR_LOCK                     = 3850
   339  	SQLITE_IOERR_MMAP                     = 6154
   340  	SQLITE_IOERR_NOMEM                    = 3082
   341  	SQLITE_IOERR_RDLOCK                   = 2314
   342  	SQLITE_IOERR_READ                     = 266
   343  	SQLITE_IOERR_ROLLBACK_ATOMIC          = 7946
   344  	SQLITE_IOERR_SEEK                     = 5642
   345  	SQLITE_IOERR_SHMLOCK                  = 5130
   346  	SQLITE_IOERR_SHMMAP                   = 5386
   347  	SQLITE_IOERR_SHMOPEN                  = 4618
   348  	SQLITE_IOERR_SHMSIZE                  = 4874
   349  	SQLITE_IOERR_SHORT_READ               = 522
   350  	SQLITE_IOERR_TRUNCATE                 = 1546
   351  	SQLITE_IOERR_UNLOCK                   = 2058
   352  	SQLITE_IOERR_VNODE                    = 6922
   353  	SQLITE_IOERR_WRITE                    = 778
   354  	SQLITE_LAST_ERRNO                     = 4
   355  	SQLITE_LIKE_DOESNT_MATCH_BLOBS        = 1
   356  	SQLITE_LIMIT_ATTACHED                 = 7
   357  	SQLITE_LIMIT_COLUMN                   = 2
   358  	SQLITE_LIMIT_COMPOUND_SELECT          = 4
   359  	SQLITE_LIMIT_EXPR_DEPTH               = 3
   360  	SQLITE_LIMIT_FUNCTION_ARG             = 6
   361  	SQLITE_LIMIT_LENGTH                   = 0
   362  	SQLITE_LIMIT_LIKE_PATTERN_LENGTH      = 8
   363  	SQLITE_LIMIT_SQL_LENGTH               = 1
   364  	SQLITE_LIMIT_TRIGGER_DEPTH            = 10
   365  	SQLITE_LIMIT_VARIABLE_NUMBER          = 9
   366  	SQLITE_LIMIT_VDBE_OP                  = 5
   367  	SQLITE_LIMIT_WORKER_THREADS           = 11
   368  	SQLITE_LOCKED                         = 6
   369  	SQLITE_LOCKED_SHAREDCACHE             = 262
   370  	SQLITE_LOCKED_VTAB                    = 518
   371  	SQLITE_LOCK_EXCLUSIVE                 = 4
   372  	SQLITE_LOCK_NONE                      = 0
   373  	SQLITE_LOCK_PENDING                   = 3
   374  	SQLITE_LOCK_RESERVED                  = 2
   375  	SQLITE_LOCK_SHARED                    = 1
   376  	SQLITE_MISMATCH                       = 20
   377  	SQLITE_MISUSE                         = 21
   378  	SQLITE_MUTEX_APPDEF                   = 1
   379  	SQLITE_MUTEX_FAST                     = 0
   380  	SQLITE_MUTEX_NOOP                     = 1
   381  	SQLITE_MUTEX_RECURSIVE                = 1
   382  	SQLITE_MUTEX_STATIC_APP1              = 8
   383  	SQLITE_MUTEX_STATIC_APP2              = 9
   384  	SQLITE_MUTEX_STATIC_APP3              = 10
   385  	SQLITE_MUTEX_STATIC_LRU               = 6
   386  	SQLITE_MUTEX_STATIC_LRU2              = 7
   387  	SQLITE_MUTEX_STATIC_MAIN              = 2
   388  	SQLITE_MUTEX_STATIC_MASTER            = 2
   389  	SQLITE_MUTEX_STATIC_MEM               = 3
   390  	SQLITE_MUTEX_STATIC_MEM2              = 4
   391  	SQLITE_MUTEX_STATIC_OPEN              = 4
   392  	SQLITE_MUTEX_STATIC_PMEM              = 7
   393  	SQLITE_MUTEX_STATIC_PRNG              = 5
   394  	SQLITE_MUTEX_STATIC_VFS1              = 11
   395  	SQLITE_MUTEX_STATIC_VFS2              = 12
   396  	SQLITE_MUTEX_STATIC_VFS3              = 13
   397  	SQLITE_NOLFS                          = 22
   398  	SQLITE_NOMEM                          = 7
   399  	SQLITE_NOTADB                         = 26
   400  	SQLITE_NOTFOUND                       = 12
   401  	SQLITE_NOTICE                         = 27
   402  	SQLITE_NOTICE_RECOVER_ROLLBACK        = 539
   403  	SQLITE_NOTICE_RECOVER_WAL             = 283
   404  	SQLITE_NULL                           = 5
   405  	SQLITE_OK                             = 0
   406  	SQLITE_OK_LOAD_PERMANENTLY            = 256
   407  	SQLITE_OK_SYMLINK                     = 512
   408  	SQLITE_OPEN_AUTOPROXY                 = 0x00000020
   409  	SQLITE_OPEN_CREATE                    = 0x00000004
   410  	SQLITE_OPEN_DELETEONCLOSE             = 0x00000008
   411  	SQLITE_OPEN_EXCLUSIVE                 = 0x00000010
   412  	SQLITE_OPEN_EXRESCODE                 = 0x02000000
   413  	SQLITE_OPEN_FULLMUTEX                 = 0x00010000
   414  	SQLITE_OPEN_MAIN_DB                   = 0x00000100
   415  	SQLITE_OPEN_MAIN_JOURNAL              = 0x00000800
   416  	SQLITE_OPEN_MASTER_JOURNAL            = 0x00004000
   417  	SQLITE_OPEN_MEMORY                    = 0x00000080
   418  	SQLITE_OPEN_NOFOLLOW                  = 0x01000000
   419  	SQLITE_OPEN_NOMUTEX                   = 0x00008000
   420  	SQLITE_OPEN_PRIVATECACHE              = 0x00040000
   421  	SQLITE_OPEN_READONLY                  = 0x00000001
   422  	SQLITE_OPEN_READWRITE                 = 0x00000002
   423  	SQLITE_OPEN_SHAREDCACHE               = 0x00020000
   424  	SQLITE_OPEN_SUBJOURNAL                = 0x00002000
   425  	SQLITE_OPEN_SUPER_JOURNAL             = 0x00004000
   426  	SQLITE_OPEN_TEMP_DB                   = 0x00000200
   427  	SQLITE_OPEN_TEMP_JOURNAL              = 0x00001000
   428  	SQLITE_OPEN_TRANSIENT_DB              = 0x00000400
   429  	SQLITE_OPEN_URI                       = 0x00000040
   430  	SQLITE_OPEN_WAL                       = 0x00080000
   431  	SQLITE_OS_UNIX                        = 1
   432  	SQLITE_PERM                           = 3
   433  	SQLITE_PRAGMA                         = 19
   434  	SQLITE_PREPARE_NORMALIZE              = 0x02
   435  	SQLITE_PREPARE_NO_VTAB                = 0x04
   436  	SQLITE_PREPARE_PERSISTENT             = 0x01
   437  	SQLITE_PROTOCOL                       = 15
   438  	SQLITE_RANGE                          = 25
   439  	SQLITE_READ                           = 20
   440  	SQLITE_READONLY                       = 8
   441  	SQLITE_READONLY_CANTINIT              = 1288
   442  	SQLITE_READONLY_CANTLOCK              = 520
   443  	SQLITE_READONLY_DBMOVED               = 1032
   444  	SQLITE_READONLY_DIRECTORY             = 1544
   445  	SQLITE_READONLY_RECOVERY              = 264
   446  	SQLITE_READONLY_ROLLBACK              = 776
   447  	SQLITE_RECURSIVE                      = 33
   448  	SQLITE_REINDEX                        = 27
   449  	SQLITE_REPLACE                        = 5
   450  	SQLITE_ROLLBACK                       = 1
   451  	SQLITE_ROW                            = 100
   452  	SQLITE_SAVEPOINT                      = 32
   453  	SQLITE_SCANSTAT_EST                   = 2
   454  	SQLITE_SCANSTAT_EXPLAIN               = 4
   455  	SQLITE_SCANSTAT_NAME                  = 3
   456  	SQLITE_SCANSTAT_NLOOP                 = 0
   457  	SQLITE_SCANSTAT_NVISIT                = 1
   458  	SQLITE_SCANSTAT_SELECTID              = 5
   459  	SQLITE_SCHEMA                         = 17
   460  	SQLITE_SELECT                         = 21
   461  	SQLITE_SERIALIZE_NOCOPY               = 0x001
   462  	SQLITE_SESSION_CONFIG_STRMSIZE        = 1
   463  	SQLITE_SESSION_OBJCONFIG_SIZE         = 1
   464  	SQLITE_SET_LOCKPROXYFILE              = 3
   465  	SQLITE_SHM_EXCLUSIVE                  = 8
   466  	SQLITE_SHM_LOCK                       = 2
   467  	SQLITE_SHM_NLOCK                      = 8
   468  	SQLITE_SHM_SHARED                     = 4
   469  	SQLITE_SHM_UNLOCK                     = 1
   470  	SQLITE_SOUNDEX                        = 1
   471  	SQLITE_SOURCE_ID                      = "2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8"
   472  	SQLITE_STATUS_MALLOC_COUNT            = 9
   473  	SQLITE_STATUS_MALLOC_SIZE             = 5
   474  	SQLITE_STATUS_MEMORY_USED             = 0
   475  	SQLITE_STATUS_PAGECACHE_OVERFLOW      = 2
   476  	SQLITE_STATUS_PAGECACHE_SIZE          = 7
   477  	SQLITE_STATUS_PAGECACHE_USED          = 1
   478  	SQLITE_STATUS_PARSER_STACK            = 6
   479  	SQLITE_STATUS_SCRATCH_OVERFLOW        = 4
   480  	SQLITE_STATUS_SCRATCH_SIZE            = 8
   481  	SQLITE_STATUS_SCRATCH_USED            = 3
   482  	SQLITE_STDCALL                        = 0
   483  	SQLITE_STMTSTATUS_AUTOINDEX           = 3
   484  	SQLITE_STMTSTATUS_FILTER_HIT          = 8
   485  	SQLITE_STMTSTATUS_FILTER_MISS         = 7
   486  	SQLITE_STMTSTATUS_FULLSCAN_STEP       = 1
   487  	SQLITE_STMTSTATUS_MEMUSED             = 99
   488  	SQLITE_STMTSTATUS_REPREPARE           = 5
   489  	SQLITE_STMTSTATUS_RUN                 = 6
   490  	SQLITE_STMTSTATUS_SORT                = 2
   491  	SQLITE_STMTSTATUS_VM_STEP             = 4
   492  	SQLITE_SUBTYPE                        = 0x000100000
   493  	SQLITE_SYNC_DATAONLY                  = 0x00010
   494  	SQLITE_SYNC_FULL                      = 0x00003
   495  	SQLITE_SYNC_NORMAL                    = 0x00002
   496  	SQLITE_SYSAPI                         = 0
   497  	SQLITE_TESTCTRL_ALWAYS                = 13
   498  	SQLITE_TESTCTRL_ASSERT                = 12
   499  	SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS   = 10
   500  	SQLITE_TESTCTRL_BITVEC_TEST           = 8
   501  	SQLITE_TESTCTRL_BYTEORDER             = 22
   502  	SQLITE_TESTCTRL_EXPLAIN_STMT          = 19
   503  	SQLITE_TESTCTRL_EXTRA_SCHEMA_CHECKS   = 29
   504  	SQLITE_TESTCTRL_FAULT_INSTALL         = 9
   505  	SQLITE_TESTCTRL_FIRST                 = 5
   506  	SQLITE_TESTCTRL_IMPOSTER              = 25
   507  	SQLITE_TESTCTRL_INTERNAL_FUNCTIONS    = 17
   508  	SQLITE_TESTCTRL_ISINIT                = 23
   509  	SQLITE_TESTCTRL_ISKEYWORD             = 16
   510  	SQLITE_TESTCTRL_LAST                  = 33
   511  	SQLITE_TESTCTRL_LOCALTIME_FAULT       = 18
   512  	SQLITE_TESTCTRL_LOGEST                = 33
   513  	SQLITE_TESTCTRL_NEVER_CORRUPT         = 20
   514  	SQLITE_TESTCTRL_ONCE_RESET_THRESHOLD  = 19
   515  	SQLITE_TESTCTRL_OPTIMIZATIONS         = 15
   516  	SQLITE_TESTCTRL_PARSER_COVERAGE       = 26
   517  	SQLITE_TESTCTRL_PENDING_BYTE          = 11
   518  	SQLITE_TESTCTRL_PRNG_RESET            = 7
   519  	SQLITE_TESTCTRL_PRNG_RESTORE          = 6
   520  	SQLITE_TESTCTRL_PRNG_SAVE             = 5
   521  	SQLITE_TESTCTRL_PRNG_SEED             = 28
   522  	SQLITE_TESTCTRL_RESERVE               = 14
   523  	SQLITE_TESTCTRL_RESULT_INTREAL        = 27
   524  	SQLITE_TESTCTRL_SCRATCHMALLOC         = 17
   525  	SQLITE_TESTCTRL_SEEK_COUNT            = 30
   526  	SQLITE_TESTCTRL_SORTER_MMAP           = 24
   527  	SQLITE_TESTCTRL_TRACEFLAGS            = 31
   528  	SQLITE_TESTCTRL_TUNE                  = 32
   529  	SQLITE_TESTCTRL_VDBE_COVERAGE         = 21
   530  	SQLITE_TEXT                           = 3
   531  	SQLITE_THREADSAFE                     = 1
   532  	SQLITE_TOOBIG                         = 18
   533  	SQLITE_TRACE_CLOSE                    = 0x08
   534  	SQLITE_TRACE_PROFILE                  = 0x02
   535  	SQLITE_TRACE_ROW                      = 0x04
   536  	SQLITE_TRACE_STMT                     = 0x01
   537  	SQLITE_TRANSACTION                    = 22
   538  	SQLITE_TXN_NONE                       = 0
   539  	SQLITE_TXN_READ                       = 1
   540  	SQLITE_TXN_WRITE                      = 2
   541  	SQLITE_UPDATE                         = 23
   542  	SQLITE_UTF16                          = 4
   543  	SQLITE_UTF16BE                        = 3
   544  	SQLITE_UTF16LE                        = 2
   545  	SQLITE_UTF16_ALIGNED                  = 8
   546  	SQLITE_UTF8                           = 1
   547  	SQLITE_VERSION                        = "3.39.3"
   548  	SQLITE_VERSION_NUMBER                 = 3039003
   549  	SQLITE_VTAB_CONSTRAINT_SUPPORT        = 1
   550  	SQLITE_VTAB_DIRECTONLY                = 3
   551  	SQLITE_VTAB_INNOCUOUS                 = 2
   552  	SQLITE_WARNING                        = 28
   553  	SQLITE_WARNING_AUTOINDEX              = 284
   554  	SQLITE_WIN32_DATA_DIRECTORY_TYPE      = 1
   555  	SQLITE_WIN32_TEMP_DIRECTORY_TYPE      = 2
   556  	STDERR_FILENO                         = 2
   557  	STDIN_FILENO                          = 0
   558  	STDOUT_FILENO                         = 1
   559  	TMP_MAX                               = 238328
   560  	WCONTINUED                            = 8
   561  	WEXITED                               = 4
   562  	WNOHANG                               = 1
   563  	WNOWAIT                               = 0x01000000
   564  	WSTOPPED                              = 2
   565  	WUNTRACED                             = 2
   566  	W_OK                                  = 2
   567  	X_OK                                  = 1
   568  	X_ALLOCA_H                            = 1
   569  	X_ANSI_STDARG_H_                      = 0
   570  	X_ARCH_PPC                            = 1
   571  	X_ARCH_PPC64                          = 1
   572  	X_ARCH_PPCGR                          = 1
   573  	X_ARCH_PPCSQ                          = 1
   574  	X_ARCH_PWR4                           = 1
   575  	X_ARCH_PWR5                           = 1
   576  	X_ARCH_PWR5X                          = 1
   577  	X_ARCH_PWR6                           = 1
   578  	X_ARCH_PWR7                           = 1
   579  	X_ARCH_PWR8                           = 1
   580  	X_ASSERT_H                            = 1
   581  	X_ATFILE_SOURCE                       = 1
   582  	X_BITS_BYTESWAP_H                     = 1
   583  	X_BITS_ENDIANNESS_H                   = 1
   584  	X_BITS_ENDIAN_H                       = 1
   585  	X_BITS_FLOATN_COMMON_H                = 0
   586  	X_BITS_FLOATN_H                       = 0
   587  	X_BITS_POSIX_OPT_H                    = 1
   588  	X_BITS_PTHREADTYPES_ARCH_H            = 1
   589  	X_BITS_PTHREADTYPES_COMMON_H          = 1
   590  	X_BITS_STDINT_INTN_H                  = 1
   591  	X_BITS_STDIO_LIM_H                    = 1
   592  	X_BITS_TIME64_H                       = 1
   593  	X_BITS_TYPESIZES_H                    = 1
   594  	X_BITS_TYPES_H                        = 1
   595  	X_BITS_TYPES_LOCALE_T_H               = 1
   596  	X_BITS_TYPES___LOCALE_T_H             = 1
   597  	X_BITS_UINTN_IDENTITY_H               = 1
   598  	X_BSD_SIZE_T_                         = 0
   599  	X_BSD_SIZE_T_DEFINED_                 = 0
   600  	X_CALL_ELF                            = 2
   601  	X_CALL_LINUX                          = 1
   602  	X_CTYPE_H                             = 1
   603  	X_DEFAULT_SOURCE                      = 1
   604  	X_ENDIAN_H                            = 1
   605  	X_FEATURES_H                          = 1
   606  	X_FILE_OFFSET_BITS                    = 64
   607  	X_FTS5_H                              = 0
   608  	X_GCC_SIZE_T                          = 0
   609  	X_GCC_WCHAR_T                         = 0
   610  	X_GETOPT_CORE_H                       = 1
   611  	X_GETOPT_POSIX_H                      = 1
   612  	X_IOFBF                               = 0
   613  	X_IOLBF                               = 1
   614  	X_IONBF                               = 2
   615  	X_IO_EOF_SEEN                         = 0x0010
   616  	X_IO_ERR_SEEN                         = 0x0020
   617  	X_IO_USER_LOCK                        = 0x8000
   618  	X_LFS64_ASYNCHRONOUS_IO               = 1
   619  	X_LFS64_LARGEFILE                     = 1
   620  	X_LFS64_STDIO                         = 1
   621  	X_LFS_ASYNCHRONOUS_IO                 = 1
   622  	X_LFS_LARGEFILE                       = 1
   623  	X_LITTLE_ENDIAN                       = 1
   624  	X_LP64                                = 1
   625  	X_POSIX2_CHAR_TERM                    = 200809
   626  	X_POSIX2_C_BIND                       = 200809
   627  	X_POSIX2_C_DEV                        = 200809
   628  	X_POSIX2_C_VERSION                    = 200809
   629  	X_POSIX2_LOCALEDEF                    = 200809
   630  	X_POSIX2_SW_DEV                       = 200809
   631  	X_POSIX2_VERSION                      = 200809
   632  	X_POSIX_ADVISORY_INFO                 = 200809
   633  	X_POSIX_ASYNCHRONOUS_IO               = 200809
   634  	X_POSIX_ASYNC_IO                      = 1
   635  	X_POSIX_BARRIERS                      = 200809
   636  	X_POSIX_CHOWN_RESTRICTED              = 0
   637  	X_POSIX_CLOCK_SELECTION               = 200809
   638  	X_POSIX_CPUTIME                       = 0
   639  	X_POSIX_C_SOURCE                      = 200809
   640  	X_POSIX_FSYNC                         = 200809
   641  	X_POSIX_IPV6                          = 200809
   642  	X_POSIX_JOB_CONTROL                   = 1
   643  	X_POSIX_MAPPED_FILES                  = 200809
   644  	X_POSIX_MEMLOCK                       = 200809
   645  	X_POSIX_MEMLOCK_RANGE                 = 200809
   646  	X_POSIX_MEMORY_PROTECTION             = 200809
   647  	X_POSIX_MESSAGE_PASSING               = 200809
   648  	X_POSIX_MONOTONIC_CLOCK               = 0
   649  	X_POSIX_NO_TRUNC                      = 1
   650  	X_POSIX_PRIORITIZED_IO                = 200809
   651  	X_POSIX_PRIORITY_SCHEDULING           = 200809
   652  	X_POSIX_RAW_SOCKETS                   = 200809
   653  	X_POSIX_READER_WRITER_LOCKS           = 200809
   654  	X_POSIX_REALTIME_SIGNALS              = 200809
   655  	X_POSIX_REENTRANT_FUNCTIONS           = 1
   656  	X_POSIX_REGEXP                        = 1
   657  	X_POSIX_SAVED_IDS                     = 1
   658  	X_POSIX_SEMAPHORES                    = 200809
   659  	X_POSIX_SHARED_MEMORY_OBJECTS         = 200809
   660  	X_POSIX_SHELL                         = 1
   661  	X_POSIX_SOURCE                        = 1
   662  	X_POSIX_SPAWN                         = 200809
   663  	X_POSIX_SPIN_LOCKS                    = 200809
   664  	X_POSIX_SPORADIC_SERVER               = -1
   665  	X_POSIX_SYNCHRONIZED_IO               = 200809
   666  	X_POSIX_THREADS                       = 200809
   667  	X_POSIX_THREAD_ATTR_STACKADDR         = 200809
   668  	X_POSIX_THREAD_ATTR_STACKSIZE         = 200809
   669  	X_POSIX_THREAD_CPUTIME                = 0
   670  	X_POSIX_THREAD_PRIORITY_SCHEDULING    = 200809
   671  	X_POSIX_THREAD_PRIO_INHERIT           = 200809
   672  	X_POSIX_THREAD_PRIO_PROTECT           = 200809
   673  	X_POSIX_THREAD_PROCESS_SHARED         = 200809
   674  	X_POSIX_THREAD_ROBUST_PRIO_INHERIT    = 200809
   675  	X_POSIX_THREAD_ROBUST_PRIO_PROTECT    = -1
   676  	X_POSIX_THREAD_SAFE_FUNCTIONS         = 200809
   677  	X_POSIX_THREAD_SPORADIC_SERVER        = -1
   678  	X_POSIX_TIMEOUTS                      = 200809
   679  	X_POSIX_TIMERS                        = 200809
   680  	X_POSIX_TRACE                         = -1
   681  	X_POSIX_TRACE_EVENT_FILTER            = -1
   682  	X_POSIX_TRACE_INHERIT                 = -1
   683  	X_POSIX_TRACE_LOG                     = -1
   684  	X_POSIX_TYPED_MEMORY_OBJECTS          = -1
   685  	X_POSIX_V6_LP64_OFF64                 = 1
   686  	X_POSIX_V6_LPBIG_OFFBIG               = -1
   687  	X_POSIX_V7_LP64_OFF64                 = 1
   688  	X_POSIX_V7_LPBIG_OFFBIG               = -1
   689  	X_POSIX_VDISABLE                      = 0
   690  	X_POSIX_VERSION                       = 200809
   691  	X_RWLOCK_INTERNAL_H                   = 0
   692  	X_SIZET_                              = 0
   693  	X_SIZE_T                              = 0
   694  	X_SIZE_T_                             = 0
   695  	X_SIZE_T_DECLARED                     = 0
   696  	X_SIZE_T_DEFINED                      = 0
   697  	X_SIZE_T_DEFINED_                     = 0
   698  	X_SQLITE3RTREE_H_                     = 0
   699  	X_STDARG_H                            = 0
   700  	X_STDC_PREDEF_H                       = 1
   701  	X_STDIO_H                             = 1
   702  	X_STDLIB_H                            = 1
   703  	X_STRINGS_H                           = 1
   704  	X_STRING_H                            = 1
   705  	X_STRUCT_TIMESPEC                     = 1
   706  	X_SYS_CDEFS_H                         = 1
   707  	X_SYS_SELECT_H                        = 1
   708  	X_SYS_SIZE_T_H                        = 0
   709  	X_SYS_TYPES_H                         = 1
   710  	X_THREAD_MUTEX_INTERNAL_H             = 1
   711  	X_THREAD_SHARED_TYPES_H               = 1
   712  	X_T_SIZE                              = 0
   713  	X_T_SIZE_                             = 0
   714  	X_T_WCHAR                             = 0
   715  	X_T_WCHAR_                            = 0
   716  	X_UNISTD_H                            = 1
   717  	X_VA_LIST                             = 0
   718  	X_VA_LIST_                            = 0
   719  	X_VA_LIST_DEFINED                     = 0
   720  	X_VA_LIST_T_H                         = 0
   721  	X_WCHAR_T                             = 0
   722  	X_WCHAR_T_                            = 0
   723  	X_WCHAR_T_DECLARED                    = 0
   724  	X_WCHAR_T_DEFINED                     = 0
   725  	X_WCHAR_T_DEFINED_                    = 0
   726  	X_WCHAR_T_H                           = 0
   727  	X_XBS5_LP64_OFF64                     = 1
   728  	X_XBS5_LPBIG_OFFBIG                   = -1
   729  	X_XOPEN_ENH_I18N                      = 1
   730  	X_XOPEN_LEGACY                        = 1
   731  	X_XOPEN_REALTIME                      = 1
   732  	X_XOPEN_REALTIME_THREADS              = 1
   733  	X_XOPEN_SHM                           = 1
   734  	X_XOPEN_UNIX                          = 1
   735  	X_XOPEN_VERSION                       = 700
   736  	X_XOPEN_XCU_VERSION                   = 4
   737  	X_XOPEN_XPG2                          = 1
   738  	X_XOPEN_XPG3                          = 1
   739  	X_XOPEN_XPG4                          = 1
   740  	Linux                                 = 1
   741  	Unix                                  = 1
   742  )
   743  
   744  const (
   745  	_PC_LINK_MAX           = 0
   746  	_PC_MAX_CANON          = 1
   747  	_PC_MAX_INPUT          = 2
   748  	_PC_NAME_MAX           = 3
   749  	_PC_PATH_MAX           = 4
   750  	_PC_PIPE_BUF           = 5
   751  	_PC_CHOWN_RESTRICTED   = 6
   752  	_PC_NO_TRUNC           = 7
   753  	_PC_VDISABLE           = 8
   754  	_PC_SYNC_IO            = 9
   755  	_PC_ASYNC_IO           = 10
   756  	_PC_PRIO_IO            = 11
   757  	_PC_SOCK_MAXBUF        = 12
   758  	_PC_FILESIZEBITS       = 13
   759  	_PC_REC_INCR_XFER_SIZE = 14
   760  	_PC_REC_MAX_XFER_SIZE  = 15
   761  	_PC_REC_MIN_XFER_SIZE  = 16
   762  	_PC_REC_XFER_ALIGN     = 17
   763  	_PC_ALLOC_SIZE_MIN     = 18
   764  	_PC_SYMLINK_MAX        = 19
   765  	_PC_2_SYMLINKS         = 20
   766  )
   767  
   768  const (
   769  	_CS_PATH = 0
   770  
   771  	_CS_V6_WIDTH_RESTRICTED_ENVS = 1
   772  
   773  	_CS_GNU_LIBC_VERSION       = 2
   774  	_CS_GNU_LIBPTHREAD_VERSION = 3
   775  
   776  	_CS_V5_WIDTH_RESTRICTED_ENVS = 4
   777  
   778  	_CS_V7_WIDTH_RESTRICTED_ENVS = 5
   779  
   780  	_CS_LFS_CFLAGS      = 1000
   781  	_CS_LFS_LDFLAGS     = 1001
   782  	_CS_LFS_LIBS        = 1002
   783  	_CS_LFS_LINTFLAGS   = 1003
   784  	_CS_LFS64_CFLAGS    = 1004
   785  	_CS_LFS64_LDFLAGS   = 1005
   786  	_CS_LFS64_LIBS      = 1006
   787  	_CS_LFS64_LINTFLAGS = 1007
   788  
   789  	_CS_XBS5_ILP32_OFF32_CFLAGS     = 1100
   790  	_CS_XBS5_ILP32_OFF32_LDFLAGS    = 1101
   791  	_CS_XBS5_ILP32_OFF32_LIBS       = 1102
   792  	_CS_XBS5_ILP32_OFF32_LINTFLAGS  = 1103
   793  	_CS_XBS5_ILP32_OFFBIG_CFLAGS    = 1104
   794  	_CS_XBS5_ILP32_OFFBIG_LDFLAGS   = 1105
   795  	_CS_XBS5_ILP32_OFFBIG_LIBS      = 1106
   796  	_CS_XBS5_ILP32_OFFBIG_LINTFLAGS = 1107
   797  	_CS_XBS5_LP64_OFF64_CFLAGS      = 1108
   798  	_CS_XBS5_LP64_OFF64_LDFLAGS     = 1109
   799  	_CS_XBS5_LP64_OFF64_LIBS        = 1110
   800  	_CS_XBS5_LP64_OFF64_LINTFLAGS   = 1111
   801  	_CS_XBS5_LPBIG_OFFBIG_CFLAGS    = 1112
   802  	_CS_XBS5_LPBIG_OFFBIG_LDFLAGS   = 1113
   803  	_CS_XBS5_LPBIG_OFFBIG_LIBS      = 1114
   804  	_CS_XBS5_LPBIG_OFFBIG_LINTFLAGS = 1115
   805  
   806  	_CS_POSIX_V6_ILP32_OFF32_CFLAGS     = 1116
   807  	_CS_POSIX_V6_ILP32_OFF32_LDFLAGS    = 1117
   808  	_CS_POSIX_V6_ILP32_OFF32_LIBS       = 1118
   809  	_CS_POSIX_V6_ILP32_OFF32_LINTFLAGS  = 1119
   810  	_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS    = 1120
   811  	_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS   = 1121
   812  	_CS_POSIX_V6_ILP32_OFFBIG_LIBS      = 1122
   813  	_CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS = 1123
   814  	_CS_POSIX_V6_LP64_OFF64_CFLAGS      = 1124
   815  	_CS_POSIX_V6_LP64_OFF64_LDFLAGS     = 1125
   816  	_CS_POSIX_V6_LP64_OFF64_LIBS        = 1126
   817  	_CS_POSIX_V6_LP64_OFF64_LINTFLAGS   = 1127
   818  	_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS    = 1128
   819  	_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS   = 1129
   820  	_CS_POSIX_V6_LPBIG_OFFBIG_LIBS      = 1130
   821  	_CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS = 1131
   822  
   823  	_CS_POSIX_V7_ILP32_OFF32_CFLAGS     = 1132
   824  	_CS_POSIX_V7_ILP32_OFF32_LDFLAGS    = 1133
   825  	_CS_POSIX_V7_ILP32_OFF32_LIBS       = 1134
   826  	_CS_POSIX_V7_ILP32_OFF32_LINTFLAGS  = 1135
   827  	_CS_POSIX_V7_ILP32_OFFBIG_CFLAGS    = 1136
   828  	_CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS   = 1137
   829  	_CS_POSIX_V7_ILP32_OFFBIG_LIBS      = 1138
   830  	_CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS = 1139
   831  	_CS_POSIX_V7_LP64_OFF64_CFLAGS      = 1140
   832  	_CS_POSIX_V7_LP64_OFF64_LDFLAGS     = 1141
   833  	_CS_POSIX_V7_LP64_OFF64_LIBS        = 1142
   834  	_CS_POSIX_V7_LP64_OFF64_LINTFLAGS   = 1143
   835  	_CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS    = 1144
   836  	_CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS   = 1145
   837  	_CS_POSIX_V7_LPBIG_OFFBIG_LIBS      = 1146
   838  	_CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS = 1147
   839  
   840  	_CS_V6_ENV = 1148
   841  	_CS_V7_ENV = 1149
   842  )
   843  
   844  const (
   845  	_SC_ARG_MAX               = 0
   846  	_SC_CHILD_MAX             = 1
   847  	_SC_CLK_TCK               = 2
   848  	_SC_NGROUPS_MAX           = 3
   849  	_SC_OPEN_MAX              = 4
   850  	_SC_STREAM_MAX            = 5
   851  	_SC_TZNAME_MAX            = 6
   852  	_SC_JOB_CONTROL           = 7
   853  	_SC_SAVED_IDS             = 8
   854  	_SC_REALTIME_SIGNALS      = 9
   855  	_SC_PRIORITY_SCHEDULING   = 10
   856  	_SC_TIMERS                = 11
   857  	_SC_ASYNCHRONOUS_IO       = 12
   858  	_SC_PRIORITIZED_IO        = 13
   859  	_SC_SYNCHRONIZED_IO       = 14
   860  	_SC_FSYNC                 = 15
   861  	_SC_MAPPED_FILES          = 16
   862  	_SC_MEMLOCK               = 17
   863  	_SC_MEMLOCK_RANGE         = 18
   864  	_SC_MEMORY_PROTECTION     = 19
   865  	_SC_MESSAGE_PASSING       = 20
   866  	_SC_SEMAPHORES            = 21
   867  	_SC_SHARED_MEMORY_OBJECTS = 22
   868  	_SC_AIO_LISTIO_MAX        = 23
   869  	_SC_AIO_MAX               = 24
   870  	_SC_AIO_PRIO_DELTA_MAX    = 25
   871  	_SC_DELAYTIMER_MAX        = 26
   872  	_SC_MQ_OPEN_MAX           = 27
   873  	_SC_MQ_PRIO_MAX           = 28
   874  	_SC_VERSION               = 29
   875  	_SC_PAGESIZE              = 30
   876  	_SC_RTSIG_MAX             = 31
   877  	_SC_SEM_NSEMS_MAX         = 32
   878  	_SC_SEM_VALUE_MAX         = 33
   879  	_SC_SIGQUEUE_MAX          = 34
   880  	_SC_TIMER_MAX             = 35
   881  
   882  	_SC_BC_BASE_MAX        = 36
   883  	_SC_BC_DIM_MAX         = 37
   884  	_SC_BC_SCALE_MAX       = 38
   885  	_SC_BC_STRING_MAX      = 39
   886  	_SC_COLL_WEIGHTS_MAX   = 40
   887  	_SC_EQUIV_CLASS_MAX    = 41
   888  	_SC_EXPR_NEST_MAX      = 42
   889  	_SC_LINE_MAX           = 43
   890  	_SC_RE_DUP_MAX         = 44
   891  	_SC_CHARCLASS_NAME_MAX = 45
   892  
   893  	_SC_2_VERSION   = 46
   894  	_SC_2_C_BIND    = 47
   895  	_SC_2_C_DEV     = 48
   896  	_SC_2_FORT_DEV  = 49
   897  	_SC_2_FORT_RUN  = 50
   898  	_SC_2_SW_DEV    = 51
   899  	_SC_2_LOCALEDEF = 52
   900  
   901  	_SC_PII                 = 53
   902  	_SC_PII_XTI             = 54
   903  	_SC_PII_SOCKET          = 55
   904  	_SC_PII_INTERNET        = 56
   905  	_SC_PII_OSI             = 57
   906  	_SC_POLL                = 58
   907  	_SC_SELECT              = 59
   908  	_SC_UIO_MAXIOV          = 60
   909  	_SC_IOV_MAX             = 60
   910  	_SC_PII_INTERNET_STREAM = 61
   911  	_SC_PII_INTERNET_DGRAM  = 62
   912  	_SC_PII_OSI_COTS        = 63
   913  	_SC_PII_OSI_CLTS        = 64
   914  	_SC_PII_OSI_M           = 65
   915  	_SC_T_IOV_MAX           = 66
   916  
   917  	_SC_THREADS                      = 67
   918  	_SC_THREAD_SAFE_FUNCTIONS        = 68
   919  	_SC_GETGR_R_SIZE_MAX             = 69
   920  	_SC_GETPW_R_SIZE_MAX             = 70
   921  	_SC_LOGIN_NAME_MAX               = 71
   922  	_SC_TTY_NAME_MAX                 = 72
   923  	_SC_THREAD_DESTRUCTOR_ITERATIONS = 73
   924  	_SC_THREAD_KEYS_MAX              = 74
   925  	_SC_THREAD_STACK_MIN             = 75
   926  	_SC_THREAD_THREADS_MAX           = 76
   927  	_SC_THREAD_ATTR_STACKADDR        = 77
   928  	_SC_THREAD_ATTR_STACKSIZE        = 78
   929  	_SC_THREAD_PRIORITY_SCHEDULING   = 79
   930  	_SC_THREAD_PRIO_INHERIT          = 80
   931  	_SC_THREAD_PRIO_PROTECT          = 81
   932  	_SC_THREAD_PROCESS_SHARED        = 82
   933  
   934  	_SC_NPROCESSORS_CONF = 83
   935  	_SC_NPROCESSORS_ONLN = 84
   936  	_SC_PHYS_PAGES       = 85
   937  	_SC_AVPHYS_PAGES     = 86
   938  	_SC_ATEXIT_MAX       = 87
   939  	_SC_PASS_MAX         = 88
   940  
   941  	_SC_XOPEN_VERSION     = 89
   942  	_SC_XOPEN_XCU_VERSION = 90
   943  	_SC_XOPEN_UNIX        = 91
   944  	_SC_XOPEN_CRYPT       = 92
   945  	_SC_XOPEN_ENH_I18N    = 93
   946  	_SC_XOPEN_SHM         = 94
   947  
   948  	_SC_2_CHAR_TERM = 95
   949  	_SC_2_C_VERSION = 96
   950  	_SC_2_UPE       = 97
   951  
   952  	_SC_XOPEN_XPG2 = 98
   953  	_SC_XOPEN_XPG3 = 99
   954  	_SC_XOPEN_XPG4 = 100
   955  
   956  	_SC_CHAR_BIT   = 101
   957  	_SC_CHAR_MAX   = 102
   958  	_SC_CHAR_MIN   = 103
   959  	_SC_INT_MAX    = 104
   960  	_SC_INT_MIN    = 105
   961  	_SC_LONG_BIT   = 106
   962  	_SC_WORD_BIT   = 107
   963  	_SC_MB_LEN_MAX = 108
   964  	_SC_NZERO      = 109
   965  	_SC_SSIZE_MAX  = 110
   966  	_SC_SCHAR_MAX  = 111
   967  	_SC_SCHAR_MIN  = 112
   968  	_SC_SHRT_MAX   = 113
   969  	_SC_SHRT_MIN   = 114
   970  	_SC_UCHAR_MAX  = 115
   971  	_SC_UINT_MAX   = 116
   972  	_SC_ULONG_MAX  = 117
   973  	_SC_USHRT_MAX  = 118
   974  
   975  	_SC_NL_ARGMAX  = 119
   976  	_SC_NL_LANGMAX = 120
   977  	_SC_NL_MSGMAX  = 121
   978  	_SC_NL_NMAX    = 122
   979  	_SC_NL_SETMAX  = 123
   980  	_SC_NL_TEXTMAX = 124
   981  
   982  	_SC_XBS5_ILP32_OFF32  = 125
   983  	_SC_XBS5_ILP32_OFFBIG = 126
   984  	_SC_XBS5_LP64_OFF64   = 127
   985  	_SC_XBS5_LPBIG_OFFBIG = 128
   986  
   987  	_SC_XOPEN_LEGACY           = 129
   988  	_SC_XOPEN_REALTIME         = 130
   989  	_SC_XOPEN_REALTIME_THREADS = 131
   990  
   991  	_SC_ADVISORY_INFO          = 132
   992  	_SC_BARRIERS               = 133
   993  	_SC_BASE                   = 134
   994  	_SC_C_LANG_SUPPORT         = 135
   995  	_SC_C_LANG_SUPPORT_R       = 136
   996  	_SC_CLOCK_SELECTION        = 137
   997  	_SC_CPUTIME                = 138
   998  	_SC_THREAD_CPUTIME         = 139
   999  	_SC_DEVICE_IO              = 140
  1000  	_SC_DEVICE_SPECIFIC        = 141
  1001  	_SC_DEVICE_SPECIFIC_R      = 142
  1002  	_SC_FD_MGMT                = 143
  1003  	_SC_FIFO                   = 144
  1004  	_SC_PIPE                   = 145
  1005  	_SC_FILE_ATTRIBUTES        = 146
  1006  	_SC_FILE_LOCKING           = 147
  1007  	_SC_FILE_SYSTEM            = 148
  1008  	_SC_MONOTONIC_CLOCK        = 149
  1009  	_SC_MULTI_PROCESS          = 150
  1010  	_SC_SINGLE_PROCESS         = 151
  1011  	_SC_NETWORKING             = 152
  1012  	_SC_READER_WRITER_LOCKS    = 153
  1013  	_SC_SPIN_LOCKS             = 154
  1014  	_SC_REGEXP                 = 155
  1015  	_SC_REGEX_VERSION          = 156
  1016  	_SC_SHELL                  = 157
  1017  	_SC_SIGNALS                = 158
  1018  	_SC_SPAWN                  = 159
  1019  	_SC_SPORADIC_SERVER        = 160
  1020  	_SC_THREAD_SPORADIC_SERVER = 161
  1021  	_SC_SYSTEM_DATABASE        = 162
  1022  	_SC_SYSTEM_DATABASE_R      = 163
  1023  	_SC_TIMEOUTS               = 164
  1024  	_SC_TYPED_MEMORY_OBJECTS   = 165
  1025  	_SC_USER_GROUPS            = 166
  1026  	_SC_USER_GROUPS_R          = 167
  1027  	_SC_2_PBS                  = 168
  1028  	_SC_2_PBS_ACCOUNTING       = 169
  1029  	_SC_2_PBS_LOCATE           = 170
  1030  	_SC_2_PBS_MESSAGE          = 171
  1031  	_SC_2_PBS_TRACK            = 172
  1032  	_SC_SYMLOOP_MAX            = 173
  1033  	_SC_STREAMS                = 174
  1034  	_SC_2_PBS_CHECKPOINT       = 175
  1035  
  1036  	_SC_V6_ILP32_OFF32  = 176
  1037  	_SC_V6_ILP32_OFFBIG = 177
  1038  	_SC_V6_LP64_OFF64   = 178
  1039  	_SC_V6_LPBIG_OFFBIG = 179
  1040  
  1041  	_SC_HOST_NAME_MAX      = 180
  1042  	_SC_TRACE              = 181
  1043  	_SC_TRACE_EVENT_FILTER = 182
  1044  	_SC_TRACE_INHERIT      = 183
  1045  	_SC_TRACE_LOG          = 184
  1046  
  1047  	_SC_LEVEL1_ICACHE_SIZE     = 185
  1048  	_SC_LEVEL1_ICACHE_ASSOC    = 186
  1049  	_SC_LEVEL1_ICACHE_LINESIZE = 187
  1050  	_SC_LEVEL1_DCACHE_SIZE     = 188
  1051  	_SC_LEVEL1_DCACHE_ASSOC    = 189
  1052  	_SC_LEVEL1_DCACHE_LINESIZE = 190
  1053  	_SC_LEVEL2_CACHE_SIZE      = 191
  1054  	_SC_LEVEL2_CACHE_ASSOC     = 192
  1055  	_SC_LEVEL2_CACHE_LINESIZE  = 193
  1056  	_SC_LEVEL3_CACHE_SIZE      = 194
  1057  	_SC_LEVEL3_CACHE_ASSOC     = 195
  1058  	_SC_LEVEL3_CACHE_LINESIZE  = 196
  1059  	_SC_LEVEL4_CACHE_SIZE      = 197
  1060  	_SC_LEVEL4_CACHE_ASSOC     = 198
  1061  	_SC_LEVEL4_CACHE_LINESIZE  = 199
  1062  
  1063  	_SC_IPV6        = 235
  1064  	_SC_RAW_SOCKETS = 236
  1065  
  1066  	_SC_V7_ILP32_OFF32  = 237
  1067  	_SC_V7_ILP32_OFFBIG = 238
  1068  	_SC_V7_LP64_OFF64   = 239
  1069  	_SC_V7_LPBIG_OFFBIG = 240
  1070  
  1071  	_SC_SS_REPL_MAX = 241
  1072  
  1073  	_SC_TRACE_EVENT_NAME_MAX = 242
  1074  	_SC_TRACE_NAME_MAX       = 243
  1075  	_SC_TRACE_SYS_MAX        = 244
  1076  	_SC_TRACE_USER_EVENT_MAX = 245
  1077  
  1078  	_SC_XOPEN_STREAMS = 246
  1079  
  1080  	_SC_THREAD_ROBUST_PRIO_INHERIT = 247
  1081  	_SC_THREAD_ROBUST_PRIO_PROTECT = 248
  1082  )
  1083  
  1084  const (
  1085  	P_ALL  = 0
  1086  	P_PID  = 1
  1087  	P_PGID = 2
  1088  )
  1089  
  1090  const (
  1091  	_ISupper  = 256
  1092  	_ISlower  = 512
  1093  	_ISalpha  = 1024
  1094  	_ISdigit  = 2048
  1095  	_ISxdigit = 4096
  1096  	_ISspace  = 8192
  1097  	_ISprint  = 16384
  1098  	_ISgraph  = 32768
  1099  	_ISblank  = 1
  1100  	_IScntrl  = 2
  1101  	_ISpunct  = 4
  1102  	_ISalnum  = 8
  1103  )
  1104  
  1105  type ptrdiff_t = int64
  1106  
  1107  type size_t = uint64
  1108  
  1109  type wchar_t = int32
  1110  
  1111  var zHelp = *(*[2263]uint8)(unsafe.Pointer(ts))
  1112  
  1113  type va_list = uintptr
  1114  
  1115  type sqlite_int64 = int64
  1116  type sqlite_uint64 = uint64
  1117  type sqlite3_int64 = sqlite_int64
  1118  type sqlite3_uint64 = sqlite_uint64
  1119  
  1120  type sqlite3_callback = uintptr
  1121  
  1122  type sqlite3_file1 = struct{ pMethods uintptr }
  1123  
  1124  type sqlite3_file = sqlite3_file1
  1125  type sqlite3_io_methods1 = struct {
  1126  	iVersion               int32
  1127  	_                      [4]byte
  1128  	xClose                 uintptr
  1129  	xRead                  uintptr
  1130  	xWrite                 uintptr
  1131  	xTruncate              uintptr
  1132  	xSync                  uintptr
  1133  	xFileSize              uintptr
  1134  	xLock                  uintptr
  1135  	xUnlock                uintptr
  1136  	xCheckReservedLock     uintptr
  1137  	xFileControl           uintptr
  1138  	xSectorSize            uintptr
  1139  	xDeviceCharacteristics uintptr
  1140  	xShmMap                uintptr
  1141  	xShmLock               uintptr
  1142  	xShmBarrier            uintptr
  1143  	xShmUnmap              uintptr
  1144  	xFetch                 uintptr
  1145  	xUnfetch               uintptr
  1146  }
  1147  
  1148  type sqlite3_io_methods = sqlite3_io_methods1
  1149  
  1150  type sqlite3_vfs1 = struct {
  1151  	iVersion          int32
  1152  	szOsFile          int32
  1153  	mxPathname        int32
  1154  	_                 [4]byte
  1155  	pNext             uintptr
  1156  	zName             uintptr
  1157  	pAppData          uintptr
  1158  	xOpen             uintptr
  1159  	xDelete           uintptr
  1160  	xAccess           uintptr
  1161  	xFullPathname     uintptr
  1162  	xDlOpen           uintptr
  1163  	xDlError          uintptr
  1164  	xDlSym            uintptr
  1165  	xDlClose          uintptr
  1166  	xRandomness       uintptr
  1167  	xSleep            uintptr
  1168  	xCurrentTime      uintptr
  1169  	xGetLastError     uintptr
  1170  	xCurrentTimeInt64 uintptr
  1171  	xSetSystemCall    uintptr
  1172  	xGetSystemCall    uintptr
  1173  	xNextSystemCall   uintptr
  1174  }
  1175  
  1176  type sqlite3_vfs = sqlite3_vfs1
  1177  type sqlite3_syscall_ptr = uintptr
  1178  
  1179  type sqlite3_mem_methods1 = struct {
  1180  	xMalloc   uintptr
  1181  	xFree     uintptr
  1182  	xRealloc  uintptr
  1183  	xSize     uintptr
  1184  	xRoundup  uintptr
  1185  	xInit     uintptr
  1186  	xShutdown uintptr
  1187  	pAppData  uintptr
  1188  }
  1189  
  1190  type sqlite3_mem_methods = sqlite3_mem_methods1
  1191  
  1192  type sqlite3_destructor_type = uintptr
  1193  
  1194  type sqlite3_vtab1 = struct {
  1195  	pModule uintptr
  1196  	nRef    int32
  1197  	_       [4]byte
  1198  	zErrMsg uintptr
  1199  }
  1200  
  1201  type sqlite3_vtab = sqlite3_vtab1
  1202  type sqlite3_index_info1 = struct {
  1203  	nConstraint      int32
  1204  	_                [4]byte
  1205  	aConstraint      uintptr
  1206  	nOrderBy         int32
  1207  	_                [4]byte
  1208  	aOrderBy         uintptr
  1209  	aConstraintUsage uintptr
  1210  	idxNum           int32
  1211  	_                [4]byte
  1212  	idxStr           uintptr
  1213  	needToFreeIdxStr int32
  1214  	orderByConsumed  int32
  1215  	estimatedCost    float64
  1216  	estimatedRows    sqlite3_int64
  1217  	idxFlags         int32
  1218  	_                [4]byte
  1219  	colUsed          sqlite3_uint64
  1220  }
  1221  
  1222  type sqlite3_index_info = sqlite3_index_info1
  1223  type sqlite3_vtab_cursor1 = struct{ pVtab uintptr }
  1224  
  1225  type sqlite3_vtab_cursor = sqlite3_vtab_cursor1
  1226  type sqlite3_module1 = struct {
  1227  	iVersion      int32
  1228  	_             [4]byte
  1229  	xCreate       uintptr
  1230  	xConnect      uintptr
  1231  	xBestIndex    uintptr
  1232  	xDisconnect   uintptr
  1233  	xDestroy      uintptr
  1234  	xOpen         uintptr
  1235  	xClose        uintptr
  1236  	xFilter       uintptr
  1237  	xNext         uintptr
  1238  	xEof          uintptr
  1239  	xColumn       uintptr
  1240  	xRowid        uintptr
  1241  	xUpdate       uintptr
  1242  	xBegin        uintptr
  1243  	xSync         uintptr
  1244  	xCommit       uintptr
  1245  	xRollback     uintptr
  1246  	xFindFunction uintptr
  1247  	xRename       uintptr
  1248  	xSavepoint    uintptr
  1249  	xRelease      uintptr
  1250  	xRollbackTo   uintptr
  1251  	xShadowName   uintptr
  1252  }
  1253  
  1254  type sqlite3_module = sqlite3_module1
  1255  
  1256  type sqlite3_index_constraint = struct {
  1257  	iColumn     int32
  1258  	op          uint8
  1259  	usable      uint8
  1260  	_           [2]byte
  1261  	iTermOffset int32
  1262  }
  1263  
  1264  type sqlite3_index_orderby = struct {
  1265  	iColumn int32
  1266  	desc    uint8
  1267  	_       [3]byte
  1268  }
  1269  
  1270  type sqlite3_index_constraint_usage = struct {
  1271  	argvIndex int32
  1272  	omit      uint8
  1273  	_         [3]byte
  1274  }
  1275  
  1276  type sqlite3_mutex_methods1 = struct {
  1277  	xMutexInit    uintptr
  1278  	xMutexEnd     uintptr
  1279  	xMutexAlloc   uintptr
  1280  	xMutexFree    uintptr
  1281  	xMutexEnter   uintptr
  1282  	xMutexTry     uintptr
  1283  	xMutexLeave   uintptr
  1284  	xMutexHeld    uintptr
  1285  	xMutexNotheld uintptr
  1286  }
  1287  
  1288  type sqlite3_mutex_methods = sqlite3_mutex_methods1
  1289  
  1290  type sqlite3_pcache_page1 = struct {
  1291  	pBuf   uintptr
  1292  	pExtra uintptr
  1293  }
  1294  
  1295  type sqlite3_pcache_page = sqlite3_pcache_page1
  1296  
  1297  type sqlite3_pcache_methods21 = struct {
  1298  	iVersion   int32
  1299  	_          [4]byte
  1300  	pArg       uintptr
  1301  	xInit      uintptr
  1302  	xShutdown  uintptr
  1303  	xCreate    uintptr
  1304  	xCachesize uintptr
  1305  	xPagecount uintptr
  1306  	xFetch     uintptr
  1307  	xUnpin     uintptr
  1308  	xRekey     uintptr
  1309  	xTruncate  uintptr
  1310  	xDestroy   uintptr
  1311  	xShrink    uintptr
  1312  }
  1313  
  1314  type sqlite3_pcache_methods2 = sqlite3_pcache_methods21
  1315  
  1316  type sqlite3_pcache_methods1 = struct {
  1317  	pArg       uintptr
  1318  	xInit      uintptr
  1319  	xShutdown  uintptr
  1320  	xCreate    uintptr
  1321  	xCachesize uintptr
  1322  	xPagecount uintptr
  1323  	xFetch     uintptr
  1324  	xUnpin     uintptr
  1325  	xRekey     uintptr
  1326  	xTruncate  uintptr
  1327  	xDestroy   uintptr
  1328  }
  1329  
  1330  type sqlite3_pcache_methods = sqlite3_pcache_methods1
  1331  
  1332  type sqlite3_snapshot1 = struct{ hidden [48]uint8 }
  1333  
  1334  type sqlite3_snapshot = sqlite3_snapshot1
  1335  
  1336  type sqlite3_rtree_geometry1 = struct {
  1337  	pContext uintptr
  1338  	nParam   int32
  1339  	_        [4]byte
  1340  	aParam   uintptr
  1341  	pUser    uintptr
  1342  	xDelUser uintptr
  1343  }
  1344  
  1345  type sqlite3_rtree_geometry = sqlite3_rtree_geometry1
  1346  type sqlite3_rtree_query_info1 = struct {
  1347  	pContext      uintptr
  1348  	nParam        int32
  1349  	_             [4]byte
  1350  	aParam        uintptr
  1351  	pUser         uintptr
  1352  	xDelUser      uintptr
  1353  	aCoord        uintptr
  1354  	anQueue       uintptr
  1355  	nCoord        int32
  1356  	iLevel        int32
  1357  	mxLevel       int32
  1358  	_             [4]byte
  1359  	iRowid        sqlite3_int64
  1360  	rParentScore  sqlite3_rtree_dbl
  1361  	eParentWithin int32
  1362  	eWithin       int32
  1363  	rScore        sqlite3_rtree_dbl
  1364  	apSqlParam    uintptr
  1365  }
  1366  
  1367  type sqlite3_rtree_query_info = sqlite3_rtree_query_info1
  1368  
  1369  type sqlite3_rtree_dbl = float64
  1370  
  1371  type Fts5ExtensionApi1 = struct {
  1372  	iVersion           int32
  1373  	_                  [4]byte
  1374  	xUserData          uintptr
  1375  	xColumnCount       uintptr
  1376  	xRowCount          uintptr
  1377  	xColumnTotalSize   uintptr
  1378  	xTokenize          uintptr
  1379  	xPhraseCount       uintptr
  1380  	xPhraseSize        uintptr
  1381  	xInstCount         uintptr
  1382  	xInst              uintptr
  1383  	xRowid             uintptr
  1384  	xColumnText        uintptr
  1385  	xColumnSize        uintptr
  1386  	xQueryPhrase       uintptr
  1387  	xSetAuxdata        uintptr
  1388  	xGetAuxdata        uintptr
  1389  	xPhraseFirst       uintptr
  1390  	xPhraseNext        uintptr
  1391  	xPhraseFirstColumn uintptr
  1392  	xPhraseNextColumn  uintptr
  1393  }
  1394  
  1395  type Fts5ExtensionApi = Fts5ExtensionApi1
  1396  type Fts5PhraseIter1 = struct {
  1397  	a uintptr
  1398  	b uintptr
  1399  }
  1400  
  1401  type Fts5PhraseIter = Fts5PhraseIter1
  1402  
  1403  type fts5_extension_function = uintptr
  1404  type fts5_tokenizer1 = struct {
  1405  	xCreate   uintptr
  1406  	xDelete   uintptr
  1407  	xTokenize uintptr
  1408  }
  1409  
  1410  type fts5_tokenizer = fts5_tokenizer1
  1411  
  1412  type fts5_api1 = struct {
  1413  	iVersion         int32
  1414  	_                [4]byte
  1415  	xCreateTokenizer uintptr
  1416  	xFindTokenizer   uintptr
  1417  	xCreateFunction  uintptr
  1418  }
  1419  
  1420  type fts5_api = fts5_api1
  1421  
  1422  type _G_fpos_t = struct {
  1423  	__pos   int64
  1424  	__state struct {
  1425  		__count int32
  1426  		__value struct{ __wch uint32 }
  1427  	}
  1428  }
  1429  
  1430  type _G_fpos64_t = struct {
  1431  	__pos   int64
  1432  	__state struct {
  1433  		__count int32
  1434  		__value struct{ __wch uint32 }
  1435  	}
  1436  }
  1437  
  1438  type _IO_FILE = struct {
  1439  	_flags          int32
  1440  	_               [4]byte
  1441  	_IO_read_ptr    uintptr
  1442  	_IO_read_end    uintptr
  1443  	_IO_read_base   uintptr
  1444  	_IO_write_base  uintptr
  1445  	_IO_write_ptr   uintptr
  1446  	_IO_write_end   uintptr
  1447  	_IO_buf_base    uintptr
  1448  	_IO_buf_end     uintptr
  1449  	_IO_save_base   uintptr
  1450  	_IO_backup_base uintptr
  1451  	_IO_save_end    uintptr
  1452  	_markers        uintptr
  1453  	_chain          uintptr
  1454  	_fileno         int32
  1455  	_flags2         int32
  1456  	_old_offset     int64
  1457  	_cur_column     uint16
  1458  	_vtable_offset  int8
  1459  	_shortbuf       [1]uint8
  1460  	_               [4]byte
  1461  	_lock           uintptr
  1462  	_offset         int64
  1463  	_codecvt        uintptr
  1464  	_wide_data      uintptr
  1465  	_freeres_list   uintptr
  1466  	_freeres_buf    uintptr
  1467  	__pad5          size_t
  1468  	_mode           int32
  1469  	_unused2        [20]uint8
  1470  }
  1471  
  1472  type FILE = _IO_FILE
  1473  
  1474  type off_t = int64
  1475  
  1476  type ssize_t = int64
  1477  
  1478  type fpos_t = _G_fpos64_t
  1479  
  1480  type idtype_t = uint32
  1481  
  1482  type div_t = struct {
  1483  	quot int32
  1484  	rem  int32
  1485  }
  1486  
  1487  type ldiv_t = struct {
  1488  	quot int64
  1489  	rem  int64
  1490  }
  1491  
  1492  type lldiv_t = struct {
  1493  	quot int64
  1494  	rem  int64
  1495  }
  1496  
  1497  type u_char = uint8
  1498  type u_short = uint16
  1499  type u_int = uint32
  1500  type u_long = uint64
  1501  type quad_t = int64
  1502  type u_quad_t = uint64
  1503  type fsid_t = struct{ __val [2]int32 }
  1504  type loff_t = int64
  1505  
  1506  type ino_t = uint64
  1507  
  1508  type dev_t = uint64
  1509  
  1510  type gid_t = uint32
  1511  
  1512  type mode_t = uint32
  1513  
  1514  type nlink_t = uint64
  1515  
  1516  type uid_t = uint32
  1517  
  1518  type pid_t = int32
  1519  
  1520  type id_t = uint32
  1521  
  1522  type daddr_t = int32
  1523  type caddr_t = uintptr
  1524  
  1525  type key_t = int32
  1526  
  1527  type clock_t = int64
  1528  
  1529  type clockid_t = int32
  1530  
  1531  type time_t = int64
  1532  
  1533  type timer_t = uintptr
  1534  
  1535  type ulong = uint64
  1536  type ushort = uint16
  1537  type uint = uint32
  1538  
  1539  type int8_t = int8
  1540  type int16_t = int16
  1541  type int32_t = int32
  1542  type int64_t = int64
  1543  
  1544  type u_int8_t = uint8
  1545  type u_int16_t = uint16
  1546  type u_int32_t = uint32
  1547  type u_int64_t = uint64
  1548  
  1549  type register_t = int32
  1550  
  1551  type sigset_t = struct{ __val [16]uint64 }
  1552  
  1553  type timeval = struct {
  1554  	tv_sec  int64
  1555  	tv_usec int64
  1556  }
  1557  
  1558  type timespec = struct {
  1559  	tv_sec  int64
  1560  	tv_nsec int64
  1561  }
  1562  
  1563  type suseconds_t = int64
  1564  
  1565  type fd_set = struct{ __fds_bits [16]int64 }
  1566  
  1567  type fd_mask = int64
  1568  
  1569  type blksize_t = int64
  1570  
  1571  type blkcnt_t = int64
  1572  type fsblkcnt_t = uint64
  1573  type fsfilcnt_t = uint64
  1574  
  1575  type __pthread_internal_list = struct {
  1576  	__prev uintptr
  1577  	__next uintptr
  1578  }
  1579  
  1580  type __pthread_internal_slist = struct{ __next uintptr }
  1581  
  1582  type __pthread_mutex_s = struct {
  1583  	__lock    int32
  1584  	__count   uint32
  1585  	__owner   int32
  1586  	__nusers  uint32
  1587  	__kind    int32
  1588  	__spins   int16
  1589  	__elision int16
  1590  	__list    struct {
  1591  		__prev uintptr
  1592  		__next uintptr
  1593  	}
  1594  }
  1595  
  1596  type __pthread_rwlock_arch_t = struct {
  1597  	__readers       uint32
  1598  	__writers       uint32
  1599  	__wrphase_futex uint32
  1600  	__writers_futex uint32
  1601  	__pad3          uint32
  1602  	__pad4          uint32
  1603  	__cur_writer    int32
  1604  	__shared        int32
  1605  	__rwelision     uint8
  1606  	__pad1          [7]uint8
  1607  	__pad2          uint64
  1608  	__flags         uint32
  1609  	_               [4]byte
  1610  }
  1611  
  1612  type __pthread_cond_s = struct {
  1613  	__0            struct{ __wseq uint64 }
  1614  	__8            struct{ __g1_start uint64 }
  1615  	__g_refs       [2]uint32
  1616  	__g_size       [2]uint32
  1617  	__g1_orig_size uint32
  1618  	__wrefs        uint32
  1619  	__g_signals    [2]uint32
  1620  }
  1621  
  1622  type pthread_t = uint64
  1623  
  1624  type pthread_mutexattr_t = struct {
  1625  	_      [0]uint32
  1626  	__size [4]uint8
  1627  }
  1628  
  1629  type pthread_condattr_t = struct {
  1630  	_      [0]uint32
  1631  	__size [4]uint8
  1632  }
  1633  
  1634  type pthread_key_t = uint32
  1635  
  1636  type pthread_once_t = int32
  1637  
  1638  type pthread_attr_t1 = struct {
  1639  	_      [0]uint64
  1640  	__size [56]uint8
  1641  }
  1642  
  1643  type pthread_attr_t = pthread_attr_t1
  1644  
  1645  type pthread_mutex_t = struct{ __data __pthread_mutex_s }
  1646  
  1647  type pthread_cond_t = struct{ __data __pthread_cond_s }
  1648  
  1649  type pthread_rwlock_t = struct{ __data __pthread_rwlock_arch_t }
  1650  
  1651  type pthread_rwlockattr_t = struct {
  1652  	_      [0]uint64
  1653  	__size [8]uint8
  1654  }
  1655  
  1656  type pthread_spinlock_t = int32
  1657  
  1658  type pthread_barrier_t = struct {
  1659  	_      [0]uint64
  1660  	__size [32]uint8
  1661  }
  1662  
  1663  type pthread_barrierattr_t = struct {
  1664  	_      [0]uint32
  1665  	__size [4]uint8
  1666  }
  1667  
  1668  type random_data = struct {
  1669  	fptr      uintptr
  1670  	rptr      uintptr
  1671  	state     uintptr
  1672  	rand_type int32
  1673  	rand_deg  int32
  1674  	rand_sep  int32
  1675  	_         [4]byte
  1676  	end_ptr   uintptr
  1677  }
  1678  
  1679  type drand48_data = struct {
  1680  	__x     [3]uint16
  1681  	__old_x [3]uint16
  1682  	__c     uint16
  1683  	__init  uint16
  1684  	__a     uint64
  1685  }
  1686  
  1687  type __locale_struct = struct {
  1688  	__locales       [13]uintptr
  1689  	__ctype_b       uintptr
  1690  	__ctype_tolower uintptr
  1691  	__ctype_toupper uintptr
  1692  	__names         [13]uintptr
  1693  }
  1694  
  1695  type locale_t = uintptr
  1696  
  1697  type useconds_t = uint32
  1698  
  1699  type intptr_t = int64
  1700  
  1701  type socklen_t = uint32
  1702  
  1703  type u64 = sqlite3_uint64
  1704  
  1705  type HashContext1 = struct {
  1706  	isInit uint8
  1707  	i      uint8
  1708  	j      uint8
  1709  	s      [256]uint8
  1710  	r      [32]uint8
  1711  }
  1712  
  1713  type HashContext = HashContext1
  1714  
  1715  type Global = struct {
  1716  	db            uintptr
  1717  	pStmt         uintptr
  1718  	iStart        sqlite3_int64
  1719  	iTotal        sqlite3_int64
  1720  	bWithoutRowid int32
  1721  	bReprepare    int32
  1722  	bSqlOnly      int32
  1723  	bExplain      int32
  1724  	bVerify       int32
  1725  	bMemShrink    int32
  1726  	eTemp         int32
  1727  	szTest        int32
  1728  	nRepeat       int32
  1729  	doCheckpoint  int32
  1730  	nReserve      int32
  1731  	_             [4]byte
  1732  	zWR           uintptr
  1733  	zNN           uintptr
  1734  	zPK           uintptr
  1735  	x             uint32
  1736  	y             uint32
  1737  	nResByte      u64
  1738  	nResult       int32
  1739  	zResult       [3000]uint8
  1740  	_             [4]byte
  1741  	hashFile      uintptr
  1742  	hash          HashContext
  1743  	_             [5]byte
  1744  }
  1745  
  1746  var g Global
  1747  
  1748  func isTemp(tls *libc.TLS, N int32) uintptr {
  1749  	if g.eTemp >= N {
  1750  		return ts + 2263
  1751  	}
  1752  	return ts + 2269
  1753  }
  1754  
  1755  func fatal_error(tls *libc.TLS, zMsg uintptr, va uintptr) {
  1756  	var ap va_list
  1757  	_ = ap
  1758  	ap = va
  1759  	libc.Xvfprintf(tls, libc.Xstderr, zMsg, ap)
  1760  	_ = ap
  1761  	libc.Xexit(tls, 1)
  1762  }
  1763  
  1764  func HashInit(tls *libc.TLS) {
  1765  	var k uint32
  1766  	g.hash.i = uint8(0)
  1767  	g.hash.j = uint8(0)
  1768  	for k = uint32(0); k < uint32(256); k++ {
  1769  		*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(k))) = uint8(k)
  1770  	}
  1771  }
  1772  
  1773  func HashUpdate(tls *libc.TLS, aData uintptr, nData uint32) {
  1774  	var t uint8
  1775  	var i uint8 = g.hash.i
  1776  	var j uint8 = g.hash.j
  1777  	var k uint32
  1778  	if g.hashFile != 0 {
  1779  		libc.Xfwrite(tls, aData, uint64(1), uint64(nData), g.hashFile)
  1780  	}
  1781  	for k = uint32(0); k < nData; k++ {
  1782  		j = uint8(int32(j) + (int32(*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i)))) + int32(*(*uint8)(unsafe.Pointer(aData + uintptr(k))))))
  1783  		t = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j)))
  1784  		*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j))) = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i)))
  1785  		*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i))) = t
  1786  		i++
  1787  	}
  1788  	g.hash.i = i
  1789  	g.hash.j = j
  1790  }
  1791  
  1792  func HashFinal(tls *libc.TLS) {
  1793  	var k uint32
  1794  	var t uint8
  1795  	var i uint8
  1796  	var j uint8
  1797  	i = g.hash.i
  1798  	j = g.hash.j
  1799  	for k = uint32(0); k < uint32(32); k++ {
  1800  		i++
  1801  		t = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i)))
  1802  		j = uint8(int32(j) + int32(t))
  1803  		*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i))) = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j)))
  1804  		*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(j))) = t
  1805  		t = uint8(int32(t) + int32(*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(i)))))
  1806  		*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 259 + uintptr(k))) = *(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 3 + uintptr(t)))
  1807  	}
  1808  }
  1809  
  1810  func hexDigitValue(tls *libc.TLS, c uint8) int32 {
  1811  	if int32(c) >= '0' && int32(c) <= '9' {
  1812  		return int32(c) - '0'
  1813  	}
  1814  	if int32(c) >= 'a' && int32(c) <= 'f' {
  1815  		return int32(c) - 'a' + 10
  1816  	}
  1817  	if int32(c) >= 'A' && int32(c) <= 'F' {
  1818  		return int32(c) - 'A' + 10
  1819  	}
  1820  	return -1
  1821  }
  1822  
  1823  func integerValue(tls *libc.TLS, zArg uintptr) int32 {
  1824  	var v sqlite3_int64 = int64(0)
  1825  	var i int32
  1826  	var isNeg int32 = 0
  1827  	if int32(*(*uint8)(unsafe.Pointer(zArg))) == '-' {
  1828  		isNeg = 1
  1829  		zArg++
  1830  	} else if int32(*(*uint8)(unsafe.Pointer(zArg))) == '+' {
  1831  		zArg++
  1832  	}
  1833  	if int32(*(*uint8)(unsafe.Pointer(zArg))) == '0' && int32(*(*uint8)(unsafe.Pointer(zArg + 1))) == 'x' {
  1834  		var x int32
  1835  		zArg += uintptr(2)
  1836  		for libc.AssignInt32(&x, hexDigitValue(tls, *(*uint8)(unsafe.Pointer(zArg)))) >= 0 {
  1837  			v = v<<4 + sqlite3_int64(x)
  1838  			zArg++
  1839  		}
  1840  	} else {
  1841  		for int32(*(*uint16)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(libc.X__ctype_b_loc(tls))) + uintptr(int32(*(*uint8)(unsafe.Pointer(zArg))))*2)))&int32(_ISdigit) != 0 {
  1842  			v = v*int64(10) + sqlite3_int64(*(*uint8)(unsafe.Pointer(zArg))) - int64('0')
  1843  			zArg++
  1844  		}
  1845  	}
  1846  	for i = 0; uint64(i) < uint64(unsafe.Sizeof(aMult))/uint64(unsafe.Sizeof(struct {
  1847  		zSuffix uintptr
  1848  		iMult   int32
  1849  		_       [4]byte
  1850  	}{})); i++ {
  1851  		if sqlite3.Xsqlite3_stricmp(tls, aMult[i].zSuffix, zArg) == 0 {
  1852  			v = v * sqlite3_int64(aMult[i].iMult)
  1853  			break
  1854  		}
  1855  	}
  1856  	if v > int64(0x7fffffff) {
  1857  		fatal_error(tls, ts+2270, 0)
  1858  	}
  1859  	return func() int32 {
  1860  		if isNeg != 0 {
  1861  			return int32(-v)
  1862  		}
  1863  		return int32(v)
  1864  	}()
  1865  }
  1866  
  1867  var aMult = [9]struct {
  1868  	zSuffix uintptr
  1869  	iMult   int32
  1870  	_       [4]byte
  1871  }{
  1872  	{zSuffix: ts + 2307, iMult: 1024},
  1873  	{zSuffix: ts + 2311, iMult: 1024 * 1024},
  1874  	{zSuffix: ts + 2315, iMult: 1024 * 1024 * 1024},
  1875  	{zSuffix: ts + 2319, iMult: 1000},
  1876  	{zSuffix: ts + 2322, iMult: 1000000},
  1877  	{zSuffix: ts + 2325, iMult: 1000000000},
  1878  	{zSuffix: ts + 2328, iMult: 1000},
  1879  	{zSuffix: ts + 2330, iMult: 1000000},
  1880  	{zSuffix: ts + 2332, iMult: 1000000000},
  1881  }
  1882  
  1883  func speedtest1_timestamp(tls *libc.TLS) sqlite3_int64 {
  1884  	bp := tls.Alloc(16)
  1885  	defer tls.Free(16)
  1886  
  1887  	if clockVfs == uintptr(0) {
  1888  		clockVfs = sqlite3.Xsqlite3_vfs_find(tls, uintptr(0))
  1889  	}
  1890  	if (*sqlite3_vfs)(unsafe.Pointer(clockVfs)).iVersion >= 2 && (*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTimeInt64 != uintptr(0) {
  1891  		(*struct {
  1892  			f func(*libc.TLS, uintptr, uintptr) int32
  1893  		})(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTimeInt64})).f(tls, clockVfs, bp)
  1894  	} else {
  1895  		(*struct {
  1896  			f func(*libc.TLS, uintptr, uintptr) int32
  1897  		})(unsafe.Pointer(&struct{ uintptr }{(*sqlite3_vfs)(unsafe.Pointer(clockVfs)).xCurrentTime})).f(tls, clockVfs, bp+8)
  1898  		*(*sqlite3_int64)(unsafe.Pointer(bp)) = libc.Int64FromFloat64(*(*float64)(unsafe.Pointer(bp + 8)) * 86400000.0)
  1899  	}
  1900  	return *(*sqlite3_int64)(unsafe.Pointer(bp))
  1901  }
  1902  
  1903  var clockVfs uintptr = uintptr(0)
  1904  
  1905  func speedtest1_random(tls *libc.TLS) uint32 {
  1906  	g.x = g.x>>1 ^ (uint32(1)+^(g.x&uint32(1)))&0xd0000001
  1907  	g.y = g.y*uint32(1103515245) + uint32(12345)
  1908  	return g.x ^ g.y
  1909  }
  1910  
  1911  func swizzle(tls *libc.TLS, in uint32, limit uint32) uint32 {
  1912  	var out uint32 = uint32(0)
  1913  	for limit != 0 {
  1914  		out = out<<1 | in&uint32(1)
  1915  		in >>= 1
  1916  		limit >>= 1
  1917  	}
  1918  	return out
  1919  }
  1920  
  1921  func roundup_allones(tls *libc.TLS, limit uint32) uint32 {
  1922  	var m uint32 = uint32(1)
  1923  	for m < limit {
  1924  		m = m<<1 + uint32(1)
  1925  	}
  1926  	return m
  1927  }
  1928  
  1929  func speedtest1_numbername(tls *libc.TLS, n uint32, zOut uintptr, nOut int32) int32 {
  1930  	bp := tls.Alloc(24)
  1931  	defer tls.Free(24)
  1932  
  1933  	var i int32 = 0
  1934  
  1935  	if n >= uint32(1000000000) {
  1936  		i = i + speedtest1_numbername(tls, n/uint32(1000000000), zOut+uintptr(i), nOut-i)
  1937  		sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2334, 0)
  1938  		i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i)))
  1939  		n = n % uint32(1000000000)
  1940  	}
  1941  	if n >= uint32(1000000) {
  1942  		if i != 0 && i < nOut-1 {
  1943  			*(*uint8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = uint8(' ')
  1944  		}
  1945  		i = i + speedtest1_numbername(tls, n/uint32(1000000), zOut+uintptr(i), nOut-i)
  1946  		sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2343, 0)
  1947  		i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i)))
  1948  		n = n % uint32(1000000)
  1949  	}
  1950  	if n >= uint32(1000) {
  1951  		if i != 0 && i < nOut-1 {
  1952  			*(*uint8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = uint8(' ')
  1953  		}
  1954  		i = i + speedtest1_numbername(tls, n/uint32(1000), zOut+uintptr(i), nOut-i)
  1955  		sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2352, 0)
  1956  		i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i)))
  1957  		n = n % uint32(1000)
  1958  	}
  1959  	if n >= uint32(100) {
  1960  		if i != 0 && i < nOut-1 {
  1961  			*(*uint8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = uint8(' ')
  1962  		}
  1963  		sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2362, libc.VaList(bp, ones[n/uint32(100)]))
  1964  		i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i)))
  1965  		n = n % uint32(100)
  1966  	}
  1967  	if n >= uint32(20) {
  1968  		if i != 0 && i < nOut-1 {
  1969  			*(*uint8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = uint8(' ')
  1970  		}
  1971  		sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2373, libc.VaList(bp+8, tens[n/uint32(10)]))
  1972  		i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i)))
  1973  		n = n % uint32(10)
  1974  	}
  1975  	if n > uint32(0) {
  1976  		if i != 0 && i < nOut-1 {
  1977  			*(*uint8)(unsafe.Pointer(zOut + uintptr(libc.PostIncInt32(&i, 1)))) = uint8(' ')
  1978  		}
  1979  		sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2373, libc.VaList(bp+16, ones[n]))
  1980  		i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i)))
  1981  	}
  1982  	if i == 0 {
  1983  		sqlite3.Xsqlite3_snprintf(tls, nOut-i, zOut+uintptr(i), ts+2376, 0)
  1984  		i = i + int32(libc.Xstrlen(tls, zOut+uintptr(i)))
  1985  	}
  1986  	return i
  1987  }
  1988  
  1989  var ones = [20]uintptr{ts + 2376, ts + 2381, ts + 2385, ts + 2389, ts + 2395, ts + 2400,
  1990  	ts + 2405, ts + 2409, ts + 2415, ts + 2421, ts + 2426, ts + 2430, ts + 2437,
  1991  	ts + 2444, ts + 2453, ts + 2462, ts + 2470, ts + 2478,
  1992  	ts + 2488, ts + 2497}
  1993  var tens = [10]uintptr{ts + 2269, ts + 2426, ts + 2506, ts + 2513, ts + 2520,
  1994  	ts + 2526, ts + 2532, ts + 2538, ts + 2546, ts + 2553}
  1995  
  1996  var zDots = *(*[72]uint8)(unsafe.Pointer(ts + 2560))
  1997  
  1998  func speedtest1_begin_test(tls *libc.TLS, iTestNum int32, zTestName uintptr, va uintptr) {
  1999  	bp := tls.Alloc(64)
  2000  	defer tls.Free(64)
  2001  
  2002  	var n int32 = int32(libc.Xstrlen(tls, zTestName))
  2003  	var zName uintptr
  2004  	var ap va_list
  2005  	_ = ap
  2006  	ap = va
  2007  	zName = sqlite3.Xsqlite3_vmprintf(tls, zTestName, ap)
  2008  	_ = ap
  2009  	n = int32(libc.Xstrlen(tls, zName))
  2010  	if n > NAMEWIDTH {
  2011  		*(*uint8)(unsafe.Pointer(zName + 60)) = uint8(0)
  2012  		n = NAMEWIDTH
  2013  	}
  2014  	if g.bSqlOnly != 0 {
  2015  		libc.Xprintf(tls, ts+2632, libc.VaList(bp, iTestNum, zName, NAMEWIDTH-n, uintptr(unsafe.Pointer(&zDots))))
  2016  	} else {
  2017  		libc.Xprintf(tls, ts+2652, libc.VaList(bp+32, iTestNum, zName, NAMEWIDTH-n, uintptr(unsafe.Pointer(&zDots))))
  2018  		libc.Xfflush(tls, libc.Xstdout)
  2019  	}
  2020  	sqlite3.Xsqlite3_free(tls, zName)
  2021  	g.nResult = 0
  2022  	g.iStart = speedtest1_timestamp(tls)
  2023  	g.x = 0xad131d0b
  2024  	g.y = uint32(0x44f9eac8)
  2025  }
  2026  
  2027  func speedtest1_end_test(tls *libc.TLS) {
  2028  	bp := tls.Alloc(16)
  2029  	defer tls.Free(16)
  2030  
  2031  	var iElapseTime sqlite3_int64 = speedtest1_timestamp(tls) - g.iStart
  2032  	if g.doCheckpoint != 0 {
  2033  		speedtest1_exec(tls, ts+2666, 0)
  2034  	}
  2035  	if !(g.bSqlOnly != 0) {
  2036  		*(*sqlite3_int64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 24)) += iElapseTime
  2037  		libc.Xprintf(tls, ts+2689, libc.VaList(bp, int32(iElapseTime/int64(1000)), int32(iElapseTime%int64(1000))))
  2038  	}
  2039  	if g.pStmt != 0 {
  2040  		sqlite3.Xsqlite3_finalize(tls, g.pStmt)
  2041  		g.pStmt = uintptr(0)
  2042  	}
  2043  }
  2044  
  2045  func speedtest1_final(tls *libc.TLS) {
  2046  	bp := tls.Alloc(48)
  2047  	defer tls.Free(48)
  2048  
  2049  	if !(g.bSqlOnly != 0) {
  2050  		libc.Xprintf(tls, ts+2700, libc.VaList(bp, NAMEWIDTH-5, uintptr(unsafe.Pointer(&zDots)),
  2051  			int32(g.iTotal/int64(1000)), int32(g.iTotal%int64(1000))))
  2052  	}
  2053  	if g.bVerify != 0 {
  2054  		var i int32
  2055  		libc.Xprintf(tls, ts+2728, libc.VaList(bp+32, g.nResByte))
  2056  		HashUpdate(tls, ts+2753, uint32(1))
  2057  		HashFinal(tls)
  2058  		for i = 0; i < 24; i++ {
  2059  			libc.Xprintf(tls, ts+2755, libc.VaList(bp+40, int32(*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 3136 + 259 + uintptr(i))))))
  2060  		}
  2061  		if g.hashFile != 0 && g.hashFile != libc.Xstdout {
  2062  			libc.Xfclose(tls, g.hashFile)
  2063  		}
  2064  		libc.Xprintf(tls, ts+2753, 0)
  2065  	}
  2066  }
  2067  
  2068  func printSql(tls *libc.TLS, zSql uintptr) {
  2069  	bp := tls.Alloc(32)
  2070  	defer tls.Free(32)
  2071  
  2072  	var n int32 = int32(libc.Xstrlen(tls, zSql))
  2073  	for n > 0 && (int32(*(*uint8)(unsafe.Pointer(zSql + uintptr(n-1)))) == ';' || int32(*(*uint16)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(libc.X__ctype_b_loc(tls))) + uintptr(int32(*(*uint8)(unsafe.Pointer(zSql + uintptr(n-1)))))*2)))&int32(_ISspace) != 0) {
  2074  		n--
  2075  	}
  2076  	if g.bExplain != 0 {
  2077  		libc.Xprintf(tls, ts+2760, 0)
  2078  	}
  2079  	libc.Xprintf(tls, ts+2769, libc.VaList(bp, n, zSql))
  2080  	if g.bExplain != 0 &&
  2081  		(sqlite3.Xsqlite3_strglob(tls, ts+2776, zSql) == 0 ||
  2082  			sqlite3.Xsqlite3_strglob(tls, ts+2785, zSql) == 0 ||
  2083  			sqlite3.Xsqlite3_strglob(tls, ts+2792, zSql) == 0) {
  2084  		libc.Xprintf(tls, ts+2769, libc.VaList(bp+16, n, zSql))
  2085  	}
  2086  }
  2087  
  2088  func speedtest1_shrink_memory(tls *libc.TLS) {
  2089  	if g.bMemShrink != 0 {
  2090  		sqlite3.Xsqlite3_db_release_memory(tls, g.db)
  2091  	}
  2092  }
  2093  
  2094  func speedtest1_exec(tls *libc.TLS, zFormat uintptr, va uintptr) {
  2095  	bp := tls.Alloc(32)
  2096  	defer tls.Free(32)
  2097  
  2098  	var ap va_list
  2099  	_ = ap
  2100  	var zSql uintptr
  2101  	ap = va
  2102  	zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
  2103  	_ = ap
  2104  	if g.bSqlOnly != 0 {
  2105  		printSql(tls, zSql)
  2106  	} else {
  2107  		*(*uintptr)(unsafe.Pointer(bp + 24)) = uintptr(0)
  2108  		var rc int32 = sqlite3.Xsqlite3_exec(tls, g.db, zSql, uintptr(0), uintptr(0), bp+24)
  2109  		if *(*uintptr)(unsafe.Pointer(bp + 24)) != 0 {
  2110  			fatal_error(tls, ts+2800, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(bp + 24)), zSql))
  2111  		}
  2112  		if rc != SQLITE_OK {
  2113  			fatal_error(tls, ts+2818, libc.VaList(bp+16, sqlite3.Xsqlite3_errmsg(tls, g.db)))
  2114  		}
  2115  	}
  2116  	sqlite3.Xsqlite3_free(tls, zSql)
  2117  	speedtest1_shrink_memory(tls)
  2118  }
  2119  
  2120  func speedtest1_once(tls *libc.TLS, zFormat uintptr, va uintptr) uintptr {
  2121  	bp := tls.Alloc(24)
  2122  	defer tls.Free(24)
  2123  
  2124  	var ap va_list
  2125  	_ = ap
  2126  	var zSql uintptr
  2127  
  2128  	var zResult uintptr = uintptr(0)
  2129  	ap = va
  2130  	zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
  2131  	_ = ap
  2132  	if g.bSqlOnly != 0 {
  2133  		printSql(tls, zSql)
  2134  	} else {
  2135  		var rc int32 = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, bp+16, uintptr(0))
  2136  		if rc != 0 {
  2137  			fatal_error(tls, ts+2834, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db)))
  2138  		}
  2139  		if sqlite3.Xsqlite3_step(tls, *(*uintptr)(unsafe.Pointer(bp + 16))) == SQLITE_ROW {
  2140  			var z uintptr = sqlite3.Xsqlite3_column_text(tls, *(*uintptr)(unsafe.Pointer(bp + 16)), 0)
  2141  			if z != 0 {
  2142  				zResult = sqlite3.Xsqlite3_mprintf(tls, ts+2373, libc.VaList(bp+8, z))
  2143  			}
  2144  		}
  2145  		sqlite3.Xsqlite3_finalize(tls, *(*uintptr)(unsafe.Pointer(bp + 16)))
  2146  	}
  2147  	sqlite3.Xsqlite3_free(tls, zSql)
  2148  	speedtest1_shrink_memory(tls)
  2149  	return zResult
  2150  }
  2151  
  2152  func speedtest1_prepare(tls *libc.TLS, zFormat uintptr, va uintptr) {
  2153  	bp := tls.Alloc(8)
  2154  	defer tls.Free(8)
  2155  
  2156  	var ap va_list
  2157  	_ = ap
  2158  	var zSql uintptr
  2159  	ap = va
  2160  	zSql = sqlite3.Xsqlite3_vmprintf(tls, zFormat, ap)
  2161  	_ = ap
  2162  	if g.bSqlOnly != 0 {
  2163  		printSql(tls, zSql)
  2164  	} else {
  2165  		var rc int32
  2166  		if g.pStmt != 0 {
  2167  			sqlite3.Xsqlite3_finalize(tls, g.pStmt)
  2168  		}
  2169  		rc = sqlite3.Xsqlite3_prepare_v2(tls, g.db, zSql, -1, uintptr(unsafe.Pointer(&g))+8, uintptr(0))
  2170  		if rc != 0 {
  2171  			fatal_error(tls, ts+2834, libc.VaList(bp, sqlite3.Xsqlite3_errmsg(tls, g.db)))
  2172  		}
  2173  	}
  2174  	sqlite3.Xsqlite3_free(tls, zSql)
  2175  }
  2176  
  2177  func speedtest1_run(tls *libc.TLS) {
  2178  	bp := tls.Alloc(16)
  2179  	defer tls.Free(16)
  2180  
  2181  	var i int32
  2182  	var n int32
  2183  	var len int32
  2184  	if g.bSqlOnly != 0 {
  2185  		return
  2186  	}
  2187  
  2188  	g.nResult = 0
  2189  	for sqlite3.Xsqlite3_step(tls, g.pStmt) == SQLITE_ROW {
  2190  		n = sqlite3.Xsqlite3_column_count(tls, g.pStmt)
  2191  		for i = 0; i < n; i++ {
  2192  			var z uintptr = sqlite3.Xsqlite3_column_text(tls, g.pStmt, i)
  2193  			if z == uintptr(0) {
  2194  				z = ts + 2849
  2195  			}
  2196  			len = int32(libc.Xstrlen(tls, z))
  2197  			if g.bVerify != 0 {
  2198  				var eType int32 = sqlite3.Xsqlite3_column_type(tls, g.pStmt, i)
  2199  
  2200  				*(*uint8)(unsafe.Pointer(bp)) = uint8('\n')
  2201  				*(*uint8)(unsafe.Pointer(bp + 1)) = *(*uint8)(unsafe.Pointer(ts + 2853 + uintptr(eType)))
  2202  				if g.nResByte != 0 {
  2203  					HashUpdate(tls, bp, uint32(2))
  2204  				} else {
  2205  					HashUpdate(tls, bp+uintptr(1), uint32(1))
  2206  				}
  2207  				if eType == SQLITE_FLOAT {
  2208  					*(*u64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 112)) += uint64(2)
  2209  				} else if eType == SQLITE_BLOB {
  2210  					var nBlob int32 = sqlite3.Xsqlite3_column_bytes(tls, g.pStmt, i)
  2211  					var iBlob int32
  2212  
  2213  					var aBlob uintptr = sqlite3.Xsqlite3_column_blob(tls, g.pStmt, i)
  2214  					for iBlob = 0; iBlob < nBlob; iBlob++ {
  2215  						*(*uint8)(unsafe.Pointer(bp + 2)) = *(*uint8)(unsafe.Pointer(ts + 2860 + uintptr(int32(*(*uint8)(unsafe.Pointer(aBlob + uintptr(iBlob))))>>4)))
  2216  						*(*uint8)(unsafe.Pointer(bp + 2 + 1)) = *(*uint8)(unsafe.Pointer(ts + 2860 + uintptr(int32(*(*uint8)(unsafe.Pointer(aBlob + uintptr(iBlob))))&15)))
  2217  						HashUpdate(tls, bp+2, uint32(2))
  2218  					}
  2219  					*(*u64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 112)) += u64(nBlob*2 + 2)
  2220  				} else {
  2221  					HashUpdate(tls, z, uint32(len))
  2222  					*(*u64)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 112)) += u64(len + 2)
  2223  				}
  2224  			}
  2225  			if uint64(g.nResult+len) < uint64(unsafe.Sizeof([3000]uint8{}))-uint64(2) {
  2226  				if g.nResult > 0 {
  2227  					*(*uint8)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 124 + uintptr(libc.PostIncInt32(&g.nResult, 1)))) = uint8(' ')
  2228  				}
  2229  				libc.Xmemcpy(tls, uintptr(unsafe.Pointer(&g))+124+uintptr(g.nResult), z, uint64(len+1))
  2230  				*(*int32)(unsafe.Pointer(uintptr(unsafe.Pointer(&g)) + 120)) += len
  2231  			}
  2232  		}
  2233  	}
  2234  	if g.bReprepare != 0 {
  2235  		sqlite3.Xsqlite3_prepare_v2(tls, g.db, sqlite3.Xsqlite3_sql(tls, g.pStmt), -1, bp+8, uintptr(0))
  2236  		sqlite3.Xsqlite3_finalize(tls, g.pStmt)
  2237  		g.pStmt = *(*uintptr)(unsafe.Pointer(bp + 8))
  2238  	} else {
  2239  		sqlite3.Xsqlite3_reset(tls, g.pStmt)
  2240  	}
  2241  	speedtest1_shrink_memory(tls)
  2242  }
  2243  
  2244  func traceCallback(tls *libc.TLS, NotUsed uintptr, zSql uintptr) {
  2245  	bp := tls.Alloc(16)
  2246  	defer tls.Free(16)
  2247  
  2248  	var n int32 = int32(libc.Xstrlen(tls, zSql))
  2249  	for n > 0 && (int32(*(*uint8)(unsafe.Pointer(zSql + uintptr(n-1)))) == ';' || int32(*(*uint16)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(libc.X__ctype_b_loc(tls))) + uintptr(int32(*(*uint8)(unsafe.Pointer(zSql + uintptr(n-1)))))*2)))&int32(_ISspace) != 0) {
  2250  		n--
  2251  	}
  2252  	libc.Xfprintf(tls, libc.Xstderr, ts+2769, libc.VaList(bp, n, zSql))
  2253  }
  2254  
  2255  func randomFunc(tls *libc.TLS, context uintptr, NotUsed int32, NotUsed2 uintptr) {
  2256  	sqlite3.Xsqlite3_result_int64(tls, context, sqlite3_int64(speedtest1_random(tls)))
  2257  }
  2258  
  2259  func est_square_root(tls *libc.TLS, x int32) int32 {
  2260  	var y0 int32 = x / 2
  2261  	var y1 int32
  2262  	var n int32
  2263  	for n = 0; y0 > 0 && n < 10; n++ {
  2264  		y1 = (y0 + x/y0) / 2
  2265  		if y1 == y0 {
  2266  			break
  2267  		}
  2268  		y0 = y1
  2269  	}
  2270  	return y0
  2271  }
  2272  
  2273  func testset_main(tls *libc.TLS) {
  2274  	bp := tls.Alloc(2568)
  2275  	defer tls.Free(2568)
  2276  
  2277  	var i int32
  2278  	var n int32
  2279  	var sz int32
  2280  	var maxb int32
  2281  	var x1 uint32 = uint32(0)
  2282  	var x2 uint32 = uint32(0)
  2283  	var len int32 = 0
  2284  
  2285  	sz = libc.AssignInt32(&n, g.szTest*500)
  2286  	*(*uint8)(unsafe.Pointer(bp + 568)) = uint8(0)
  2287  	maxb = int32(roundup_allones(tls, uint32(sz)))
  2288  	speedtest1_begin_test(tls, 100, ts+2877, libc.VaList(bp, n))
  2289  	speedtest1_exec(tls, ts+2913, 0)
  2290  	speedtest1_exec(tls, ts+2919,
  2291  		libc.VaList(bp+8, isTemp(tls, 9), g.zNN, g.zNN, g.zNN))
  2292  	speedtest1_prepare(tls, ts+2977, libc.VaList(bp+40, n))
  2293  	for i = 1; i <= n; i++ {
  2294  		x1 = swizzle(tls, uint32(i), uint32(maxb))
  2295  		speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]uint8{})))
  2296  		sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, 1, sqlite3_int64(x1))
  2297  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, i)
  2298  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 3, bp+568, -1, uintptr(0))
  2299  		speedtest1_run(tls)
  2300  	}
  2301  	speedtest1_exec(tls, ts+3023, 0)
  2302  	speedtest1_end_test(tls)
  2303  
  2304  	n = sz
  2305  	speedtest1_begin_test(tls, 110, ts+3030, libc.VaList(bp+48, n))
  2306  	speedtest1_exec(tls, ts+2913, 0)
  2307  	speedtest1_exec(tls,
  2308  		ts+3067,
  2309  		libc.VaList(bp+56, isTemp(tls, 5), g.zNN, g.zPK, g.zNN, g.zNN, g.zWR))
  2310  	speedtest1_prepare(tls, ts+3130, libc.VaList(bp+104, n))
  2311  	for i = 1; i <= n; i++ {
  2312  		x1 = swizzle(tls, uint32(i), uint32(maxb))
  2313  		speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]uint8{})))
  2314  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, i)
  2315  		sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, 2, sqlite3_int64(x1))
  2316  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 3, bp+568, -1, uintptr(0))
  2317  		speedtest1_run(tls)
  2318  	}
  2319  	speedtest1_exec(tls, ts+3023, 0)
  2320  	speedtest1_end_test(tls)
  2321  
  2322  	n = sz
  2323  	speedtest1_begin_test(tls, 120, ts+3175, libc.VaList(bp+112, n))
  2324  	speedtest1_exec(tls, ts+2913, 0)
  2325  	speedtest1_exec(tls,
  2326  		ts+3214,
  2327  		libc.VaList(bp+120, isTemp(tls, 3), g.zNN, g.zPK, g.zNN, g.zNN, g.zWR))
  2328  	speedtest1_prepare(tls, ts+3277, libc.VaList(bp+168, n))
  2329  	for i = 1; i <= n; i++ {
  2330  		x1 = swizzle(tls, uint32(i), uint32(maxb))
  2331  		speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]uint8{})))
  2332  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, i)
  2333  		sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, 1, sqlite3_int64(x1))
  2334  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 3, bp+568, -1, uintptr(0))
  2335  		speedtest1_run(tls)
  2336  	}
  2337  	speedtest1_exec(tls, ts+3023, 0)
  2338  	speedtest1_end_test(tls)
  2339  
  2340  	n = 25
  2341  	speedtest1_begin_test(tls, 130, ts+3322, libc.VaList(bp+176, n))
  2342  	speedtest1_exec(tls, ts+2913, 0)
  2343  	speedtest1_prepare(tls,
  2344  		ts+3361, libc.VaList(bp+184, n))
  2345  	for i = 1; i <= n; i++ {
  2346  		if (i-1)%g.nRepeat == 0 {
  2347  			x1 = speedtest1_random(tls) % uint32(maxb)
  2348  			x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1
  2349  		}
  2350  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2351  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2))
  2352  		speedtest1_run(tls)
  2353  	}
  2354  	speedtest1_exec(tls, ts+3023, 0)
  2355  	speedtest1_end_test(tls)
  2356  
  2357  	n = 10
  2358  	speedtest1_begin_test(tls, 140, ts+3466, libc.VaList(bp+192, n))
  2359  	speedtest1_exec(tls, ts+2913, 0)
  2360  	speedtest1_prepare(tls,
  2361  		ts+3494, libc.VaList(bp+200, n))
  2362  	for i = 1; i <= n; i++ {
  2363  		if (i-1)%g.nRepeat == 0 {
  2364  			x1 = speedtest1_random(tls) % uint32(maxb)
  2365  			*(*uint8)(unsafe.Pointer(bp + 568)) = uint8('%')
  2366  			len = speedtest1_numbername(tls, uint32(i), bp+568+uintptr(1), int32(uint64(unsafe.Sizeof([2000]uint8{}))-uint64(2)))
  2367  			*(*uint8)(unsafe.Pointer(bp + 568 + uintptr(len))) = uint8('%')
  2368  			*(*uint8)(unsafe.Pointer(bp + 568 + uintptr(len+1))) = uint8(0)
  2369  		}
  2370  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len+1, uintptr(0))
  2371  		speedtest1_run(tls)
  2372  	}
  2373  	speedtest1_exec(tls, ts+3023, 0)
  2374  	speedtest1_end_test(tls)
  2375  
  2376  	n = 10
  2377  	speedtest1_begin_test(tls, 142, ts+3589, libc.VaList(bp+208, n))
  2378  	speedtest1_exec(tls, ts+2913, 0)
  2379  	speedtest1_prepare(tls,
  2380  		ts+3622, libc.VaList(bp+216, n))
  2381  	for i = 1; i <= n; i++ {
  2382  		if (i-1)%g.nRepeat == 0 {
  2383  			x1 = speedtest1_random(tls) % uint32(maxb)
  2384  			*(*uint8)(unsafe.Pointer(bp + 568)) = uint8('%')
  2385  			len = speedtest1_numbername(tls, uint32(i), bp+568+uintptr(1), int32(uint64(unsafe.Sizeof([2000]uint8{}))-uint64(2)))
  2386  			*(*uint8)(unsafe.Pointer(bp + 568 + uintptr(len))) = uint8('%')
  2387  			*(*uint8)(unsafe.Pointer(bp + 568 + uintptr(len+1))) = uint8(0)
  2388  		}
  2389  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len+1, uintptr(0))
  2390  		speedtest1_run(tls)
  2391  	}
  2392  	speedtest1_exec(tls, ts+3023, 0)
  2393  	speedtest1_end_test(tls)
  2394  
  2395  	n = 10
  2396  	speedtest1_begin_test(tls, 145, ts+3686, libc.VaList(bp+224, n))
  2397  	speedtest1_exec(tls, ts+2913, 0)
  2398  	speedtest1_prepare(tls,
  2399  		ts+3729, libc.VaList(bp+232, n))
  2400  	for i = 1; i <= n; i++ {
  2401  		if (i-1)%g.nRepeat == 0 {
  2402  			x1 = speedtest1_random(tls) % uint32(maxb)
  2403  			*(*uint8)(unsafe.Pointer(bp + 568)) = uint8('%')
  2404  			len = speedtest1_numbername(tls, uint32(i), bp+568+uintptr(1), int32(uint64(unsafe.Sizeof([2000]uint8{}))-uint64(2)))
  2405  			*(*uint8)(unsafe.Pointer(bp + 568 + uintptr(len))) = uint8('%')
  2406  			*(*uint8)(unsafe.Pointer(bp + 568 + uintptr(len+1))) = uint8(0)
  2407  		}
  2408  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len+1, uintptr(0))
  2409  		speedtest1_run(tls)
  2410  	}
  2411  	speedtest1_exec(tls, ts+3023, 0)
  2412  	speedtest1_end_test(tls)
  2413  
  2414  	speedtest1_begin_test(tls, 150, ts+3802, 0)
  2415  	speedtest1_exec(tls, ts+3826, 0)
  2416  	speedtest1_exec(tls, ts+3833, 0)
  2417  	speedtest1_exec(tls, ts+3867, 0)
  2418  	speedtest1_exec(tls, ts+3894, 0)
  2419  	speedtest1_exec(tls, ts+3928, 0)
  2420  	speedtest1_exec(tls, ts+3960, 0)
  2421  	speedtest1_exec(tls, ts+3990, 0)
  2422  	speedtest1_end_test(tls)
  2423  
  2424  	n = sz / 5
  2425  	speedtest1_begin_test(tls, 160, ts+3998, libc.VaList(bp+240, n))
  2426  	speedtest1_exec(tls, ts+2913, 0)
  2427  	speedtest1_prepare(tls,
  2428  		ts+4035, libc.VaList(bp+248, n))
  2429  	for i = 1; i <= n; i++ {
  2430  		if (i-1)%g.nRepeat == 0 {
  2431  			x1 = speedtest1_random(tls) % uint32(maxb)
  2432  			x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1
  2433  		}
  2434  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2435  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2))
  2436  		speedtest1_run(tls)
  2437  	}
  2438  	speedtest1_exec(tls, ts+3023, 0)
  2439  	speedtest1_end_test(tls)
  2440  
  2441  	n = sz / 5
  2442  	speedtest1_begin_test(tls, 161, ts+4140, libc.VaList(bp+256, n))
  2443  	speedtest1_exec(tls, ts+2913, 0)
  2444  	speedtest1_prepare(tls,
  2445  		ts+4172, libc.VaList(bp+264, n))
  2446  	for i = 1; i <= n; i++ {
  2447  		if (i-1)%g.nRepeat == 0 {
  2448  			x1 = speedtest1_random(tls) % uint32(maxb)
  2449  			x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1
  2450  		}
  2451  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2452  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2))
  2453  		speedtest1_run(tls)
  2454  	}
  2455  	speedtest1_exec(tls, ts+3023, 0)
  2456  	speedtest1_end_test(tls)
  2457  
  2458  	n = sz / 5
  2459  	speedtest1_begin_test(tls, 170, ts+4277, libc.VaList(bp+272, n))
  2460  	speedtest1_exec(tls, ts+2913, 0)
  2461  	speedtest1_prepare(tls,
  2462  		ts+4311, libc.VaList(bp+280, n))
  2463  	for i = 1; i <= n; i++ {
  2464  		if (i-1)%g.nRepeat == 0 {
  2465  			x1 = swizzle(tls, uint32(i), uint32(maxb))
  2466  			len = speedtest1_numbername(tls, x1, bp+568, int32(uint64(unsafe.Sizeof([2000]uint8{}))-uint64(1)))
  2467  		}
  2468  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, len, uintptr(0))
  2469  		speedtest1_run(tls)
  2470  	}
  2471  	speedtest1_exec(tls, ts+3023, 0)
  2472  	speedtest1_end_test(tls)
  2473  
  2474  	n = sz
  2475  	speedtest1_begin_test(tls, 180, ts+4423, libc.VaList(bp+288, n))
  2476  	speedtest1_exec(tls, ts+2913, 0)
  2477  	speedtest1_exec(tls,
  2478  		ts+4453,
  2479  		libc.VaList(bp+296, isTemp(tls, 1), g.zNN, g.zPK, g.zNN, g.zNN, g.zWR))
  2480  	speedtest1_exec(tls, ts+4524, 0)
  2481  	speedtest1_exec(tls, ts+4550, 0)
  2482  	speedtest1_exec(tls, ts+4576, 0)
  2483  	speedtest1_exec(tls, ts+3023, 0)
  2484  	speedtest1_end_test(tls)
  2485  
  2486  	n = sz
  2487  	speedtest1_begin_test(tls, 190, ts+4608, libc.VaList(bp+344, n))
  2488  	speedtest1_exec(tls, ts+4636, 0)
  2489  	speedtest1_exec(tls, ts+4652, 0)
  2490  	speedtest1_end_test(tls)
  2491  
  2492  	speedtest1_begin_test(tls, 200, ts+4685, 0)
  2493  	speedtest1_exec(tls, ts+4685, 0)
  2494  	speedtest1_end_test(tls)
  2495  
  2496  	speedtest1_begin_test(tls, 210, ts+4692, 0)
  2497  	speedtest1_exec(tls, ts+4726, 0)
  2498  	speedtest1_exec(tls, ts+4770, 0)
  2499  	speedtest1_end_test(tls)
  2500  
  2501  	n = sz / 5
  2502  	speedtest1_begin_test(tls, 230, ts+4792, libc.VaList(bp+352, n))
  2503  	speedtest1_exec(tls, ts+2913, 0)
  2504  	speedtest1_prepare(tls,
  2505  		ts+4829, libc.VaList(bp+360, n))
  2506  	for i = 1; i <= n; i++ {
  2507  		x1 = speedtest1_random(tls) % uint32(maxb)
  2508  		x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1
  2509  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2510  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2))
  2511  		speedtest1_run(tls)
  2512  	}
  2513  	speedtest1_exec(tls, ts+3023, 0)
  2514  	speedtest1_end_test(tls)
  2515  
  2516  	n = sz
  2517  	speedtest1_begin_test(tls, 240, ts+4888, libc.VaList(bp+368, n))
  2518  	speedtest1_exec(tls, ts+2913, 0)
  2519  	speedtest1_prepare(tls,
  2520  		ts+4918, libc.VaList(bp+376, n))
  2521  	for i = 1; i <= n; i++ {
  2522  		x1 = speedtest1_random(tls)%uint32(sz) + uint32(1)
  2523  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2524  		speedtest1_run(tls)
  2525  	}
  2526  	speedtest1_exec(tls, ts+3023, 0)
  2527  	speedtest1_end_test(tls)
  2528  
  2529  	speedtest1_begin_test(tls, 250, ts+4962, libc.VaList(bp+384, sz))
  2530  	speedtest1_exec(tls, ts+5003, 0)
  2531  	speedtest1_end_test(tls)
  2532  
  2533  	speedtest1_begin_test(tls, 260, ts+5023, 0)
  2534  	speedtest1_exec(tls, ts+4770, 0)
  2535  	speedtest1_end_test(tls)
  2536  
  2537  	n = sz / 5
  2538  	speedtest1_begin_test(tls, 270, ts+5056, libc.VaList(bp+392, n))
  2539  	speedtest1_exec(tls, ts+2913, 0)
  2540  	speedtest1_prepare(tls,
  2541  		ts+5093, libc.VaList(bp+400, n))
  2542  	for i = 1; i <= n; i++ {
  2543  		x1 = speedtest1_random(tls)%uint32(maxb) + uint32(1)
  2544  		x2 = speedtest1_random(tls)%uint32(10) + uint32(sz/5000) + x1
  2545  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2546  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2))
  2547  		speedtest1_run(tls)
  2548  	}
  2549  	speedtest1_exec(tls, ts+3023, 0)
  2550  	speedtest1_end_test(tls)
  2551  
  2552  	n = sz
  2553  	speedtest1_begin_test(tls, 280, ts+5147, libc.VaList(bp+408, n))
  2554  	speedtest1_exec(tls, ts+2913, 0)
  2555  	speedtest1_prepare(tls,
  2556  		ts+5177, libc.VaList(bp+416, n))
  2557  	for i = 1; i <= n; i++ {
  2558  		x1 = speedtest1_random(tls)%uint32(sz) + uint32(1)
  2559  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2560  		speedtest1_run(tls)
  2561  	}
  2562  	speedtest1_exec(tls, ts+3023, 0)
  2563  	speedtest1_end_test(tls)
  2564  
  2565  	speedtest1_begin_test(tls, 290, ts+5216, libc.VaList(bp+424, sz))
  2566  	speedtest1_exec(tls, ts+5255, 0)
  2567  	speedtest1_exec(tls, ts+5299, 0)
  2568  	speedtest1_end_test(tls)
  2569  
  2570  	speedtest1_begin_test(tls, 300, ts+5343, libc.VaList(bp+432, sz))
  2571  	speedtest1_exec(tls, ts+4636, 0)
  2572  	speedtest1_exec(tls,
  2573  		ts+5384, 0)
  2574  	speedtest1_exec(tls,
  2575  		ts+5449, 0)
  2576  	speedtest1_end_test(tls)
  2577  
  2578  	n = sz / 5
  2579  	speedtest1_begin_test(tls, 310, ts+5514, libc.VaList(bp+440, n))
  2580  	speedtest1_exec(tls, ts+2913, 0)
  2581  	speedtest1_prepare(tls,
  2582  		ts+5533, 0)
  2583  	for i = 1; i <= n; i++ {
  2584  		x1 = speedtest1_random(tls)%uint32(sz) + uint32(1)
  2585  		x2 = speedtest1_random(tls)%uint32(10) + x1 + uint32(4)
  2586  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  2587  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(x2))
  2588  		speedtest1_run(tls)
  2589  	}
  2590  	speedtest1_exec(tls, ts+3023, 0)
  2591  	speedtest1_end_test(tls)
  2592  
  2593  	speedtest1_begin_test(tls, 320, ts+5646, libc.VaList(bp+448, n))
  2594  	speedtest1_prepare(tls,
  2595  		ts+5669, 0)
  2596  	sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, est_square_root(tls, g.szTest)*50)
  2597  	speedtest1_run(tls)
  2598  	speedtest1_end_test(tls)
  2599  
  2600  	sz = libc.AssignInt32(&n, g.szTest*700)
  2601  	*(*uint8)(unsafe.Pointer(bp + 568)) = uint8(0)
  2602  	maxb = int32(roundup_allones(tls, uint32(sz/3)))
  2603  	speedtest1_begin_test(tls, 400, ts+5787, libc.VaList(bp+456, n))
  2604  	speedtest1_exec(tls, ts+2913, 0)
  2605  	speedtest1_exec(tls, ts+5812,
  2606  		libc.VaList(bp+464, isTemp(tls, 9), g.zNN))
  2607  	speedtest1_prepare(tls, ts+5860, libc.VaList(bp+480, n))
  2608  	for i = 1; i <= n; i++ {
  2609  		x1 = swizzle(tls, uint32(i), uint32(maxb))
  2610  		speedtest1_numbername(tls, uint32(i), bp+568, int32(unsafe.Sizeof([2000]uint8{})))
  2611  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(sqlite3_int64(x1)))
  2612  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+568, -1, uintptr(0))
  2613  		speedtest1_run(tls)
  2614  	}
  2615  	speedtest1_exec(tls, ts+3023, 0)
  2616  	speedtest1_end_test(tls)
  2617  	speedtest1_begin_test(tls, 410, ts+5904, libc.VaList(bp+488, n))
  2618  	speedtest1_prepare(tls, ts+5925, libc.VaList(bp+496, n))
  2619  	for i = 1; i <= n; i++ {
  2620  		x1 = swizzle(tls, uint32(i), uint32(maxb))
  2621  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(sqlite3_int64(x1)))
  2622  		speedtest1_run(tls)
  2623  	}
  2624  	speedtest1_end_test(tls)
  2625  
  2626  	sz = libc.AssignInt32(&n, g.szTest*700)
  2627  	*(*uint8)(unsafe.Pointer(bp + 568)) = uint8(0)
  2628  	maxb = int32(roundup_allones(tls, uint32(sz/3)))
  2629  	speedtest1_begin_test(tls, 500, ts+5967, libc.VaList(bp+504, n))
  2630  	speedtest1_exec(tls, ts+2913, 0)
  2631  	speedtest1_exec(tls, ts+5989,
  2632  		libc.VaList(bp+512, isTemp(tls, 9), g.zNN,
  2633  			func() uintptr {
  2634  				if sqlite3.Xsqlite3_libversion_number(tls) >= 3008002 {
  2635  					return ts + 6036
  2636  				}
  2637  				return ts + 2269
  2638  			}()))
  2639  	speedtest1_prepare(tls, ts+6050, libc.VaList(bp+536, n))
  2640  	for i = 1; i <= n; i++ {
  2641  		x1 = swizzle(tls, uint32(i), uint32(maxb))
  2642  		speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]uint8{})))
  2643  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, i)
  2644  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, -1, uintptr(0))
  2645  		speedtest1_run(tls)
  2646  	}
  2647  	speedtest1_exec(tls, ts+3023, 0)
  2648  	speedtest1_end_test(tls)
  2649  	speedtest1_begin_test(tls, 510, ts+6094, libc.VaList(bp+544, n))
  2650  	speedtest1_prepare(tls, ts+6118, libc.VaList(bp+552, n))
  2651  	for i = 1; i <= n; i++ {
  2652  		x1 = swizzle(tls, uint32(i), uint32(maxb))
  2653  		speedtest1_numbername(tls, x1, bp+568, int32(unsafe.Sizeof([2000]uint8{})))
  2654  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+568, -1, uintptr(0))
  2655  		speedtest1_run(tls)
  2656  	}
  2657  	speedtest1_end_test(tls)
  2658  	speedtest1_begin_test(tls, 520, ts+6160, libc.VaList(bp+560, n))
  2659  	speedtest1_exec(tls, ts+6179, 0)
  2660  	speedtest1_exec(tls, ts+6206, 0)
  2661  	speedtest1_end_test(tls)
  2662  
  2663  	speedtest1_begin_test(tls, 980, ts+6233, 0)
  2664  	speedtest1_exec(tls, ts+6233, 0)
  2665  	speedtest1_end_test(tls)
  2666  
  2667  	speedtest1_begin_test(tls, 990, ts+6256, 0)
  2668  	speedtest1_exec(tls, ts+6256, 0)
  2669  	speedtest1_end_test(tls)
  2670  }
  2671  
  2672  func testset_cte(tls *libc.TLS) {
  2673  	bp := tls.Alloc(32)
  2674  	defer tls.Free(32)
  2675  
  2676  	var zPuz uintptr
  2677  	var rSpacing float64
  2678  	var nElem int32
  2679  
  2680  	if g.szTest < 25 {
  2681  		zPuz = azPuzzle[0]
  2682  	} else if g.szTest < 70 {
  2683  		zPuz = azPuzzle[1]
  2684  	} else {
  2685  		zPuz = azPuzzle[2]
  2686  	}
  2687  	speedtest1_begin_test(tls, 100, ts+6264, 0)
  2688  	speedtest1_prepare(tls,
  2689  		ts+6295, 0)
  2690  	sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, zPuz, -1, uintptr(0))
  2691  	speedtest1_run(tls)
  2692  	speedtest1_end_test(tls)
  2693  
  2694  	speedtest1_begin_test(tls, 200, ts+7099, 0)
  2695  	speedtest1_prepare(tls,
  2696  		ts+7127, 0)
  2697  	sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, zPuz, -1, uintptr(0))
  2698  	speedtest1_run(tls)
  2699  	speedtest1_end_test(tls)
  2700  
  2701  	rSpacing = 5.0 / float64(g.szTest)
  2702  	speedtest1_begin_test(tls, 300, ts+7939, libc.VaList(bp, rSpacing))
  2703  	speedtest1_prepare(tls,
  2704  		ts+7970, 0)
  2705  	sqlite3.Xsqlite3_bind_double(tls, g.pStmt, 1, rSpacing*.05)
  2706  	sqlite3.Xsqlite3_bind_double(tls, g.pStmt, 2, rSpacing)
  2707  	speedtest1_run(tls)
  2708  	speedtest1_end_test(tls)
  2709  
  2710  	nElem = 10000 * g.szTest
  2711  	speedtest1_begin_test(tls, 400, ts+8566, libc.VaList(bp+8, nElem))
  2712  	speedtest1_prepare(tls,
  2713  		ts+8603,
  2714  		libc.VaList(bp+16, nElem, nElem))
  2715  	speedtest1_run(tls)
  2716  	speedtest1_end_test(tls)
  2717  }
  2718  
  2719  var azPuzzle = [3]uintptr{
  2720  	ts + 8834,
  2721  	ts + 8916,
  2722  	ts + 8998,
  2723  }
  2724  
  2725  func speedtest1_random_ascii_fp(tls *libc.TLS, zFP uintptr) {
  2726  	bp := tls.Alloc(24)
  2727  	defer tls.Free(24)
  2728  
  2729  	var x int32 = int32(speedtest1_random(tls))
  2730  	var y int32 = int32(speedtest1_random(tls))
  2731  	var z int32
  2732  	z = y % 10
  2733  	if z < 0 {
  2734  		z = -z
  2735  	}
  2736  	y = y / 10
  2737  	sqlite3.Xsqlite3_snprintf(tls, 100, zFP, ts+9080, libc.VaList(bp, y, z, x%200))
  2738  }
  2739  
  2740  func testset_fp(tls *libc.TLS) {
  2741  	bp := tls.Alloc(272)
  2742  	defer tls.Free(272)
  2743  
  2744  	var n int32
  2745  	var i int32
  2746  
  2747  	n = g.szTest * 5000
  2748  	speedtest1_begin_test(tls, 100, ts+9089, libc.VaList(bp, n*2))
  2749  	speedtest1_exec(tls, ts+2913, 0)
  2750  	speedtest1_exec(tls, ts+9120,
  2751  		libc.VaList(bp+8, isTemp(tls, 1), g.zNN, g.zNN))
  2752  	speedtest1_prepare(tls, ts+9161, libc.VaList(bp+32, n))
  2753  	for i = 1; i <= n; i++ {
  2754  		speedtest1_random_ascii_fp(tls, bp+72)
  2755  		speedtest1_random_ascii_fp(tls, bp+172)
  2756  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+72, -1, uintptr(0))
  2757  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+172, -1, uintptr(0))
  2758  		speedtest1_run(tls)
  2759  	}
  2760  	speedtest1_exec(tls, ts+3023, 0)
  2761  	speedtest1_end_test(tls)
  2762  
  2763  	n = g.szTest/25 + 2
  2764  	speedtest1_begin_test(tls, 110, ts+9203, libc.VaList(bp+40, n))
  2765  	speedtest1_prepare(tls, ts+9220, 0)
  2766  	for i = 1; i <= n; i++ {
  2767  		speedtest1_random_ascii_fp(tls, bp+72)
  2768  		speedtest1_random_ascii_fp(tls, bp+172)
  2769  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+72, -1, uintptr(0))
  2770  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+172, -1, uintptr(0))
  2771  		speedtest1_run(tls)
  2772  	}
  2773  	speedtest1_end_test(tls)
  2774  
  2775  	speedtest1_begin_test(tls, 120, ts+9268, 0)
  2776  	speedtest1_exec(tls, ts+3826, 0)
  2777  	speedtest1_exec(tls, ts+9293, 0)
  2778  	speedtest1_exec(tls, ts+9320, 0)
  2779  	speedtest1_exec(tls, ts+9347, 0)
  2780  	speedtest1_exec(tls, ts+3990, 0)
  2781  	speedtest1_end_test(tls)
  2782  
  2783  	n = g.szTest/3 + 2
  2784  	speedtest1_begin_test(tls, 130, ts+9377, libc.VaList(bp+48, n))
  2785  	speedtest1_prepare(tls, ts+9220, 0)
  2786  	for i = 1; i <= n; i++ {
  2787  		speedtest1_random_ascii_fp(tls, bp+72)
  2788  		speedtest1_random_ascii_fp(tls, bp+172)
  2789  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 1, bp+72, -1, uintptr(0))
  2790  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+172, -1, uintptr(0))
  2791  		speedtest1_run(tls)
  2792  	}
  2793  	speedtest1_end_test(tls)
  2794  
  2795  	n = g.szTest * 5000
  2796  	speedtest1_begin_test(tls, 140, ts+9402, libc.VaList(bp+56, n))
  2797  	speedtest1_exec(tls, ts+9422, 0)
  2798  	speedtest1_end_test(tls)
  2799  
  2800  	speedtest1_begin_test(tls, 150, ts+9465, libc.VaList(bp+64, n*4))
  2801  	speedtest1_exec(tls,
  2802  		ts+9483, 0)
  2803  	speedtest1_end_test(tls)
  2804  }
  2805  
  2806  func twoCoords(tls *libc.TLS, p1 int32, p2 int32, mx uint32, pX0 uintptr, pX1 uintptr) {
  2807  	var d uint32
  2808  	var x0 uint32
  2809  	var x1 uint32
  2810  	var span uint32
  2811  
  2812  	span = mx/uint32(100) + uint32(1)
  2813  	if speedtest1_random(tls)%uint32(3) == uint32(0) {
  2814  		span = span * uint32(p1)
  2815  	}
  2816  	if speedtest1_random(tls)%uint32(p2) == uint32(0) {
  2817  		span = mx / uint32(2)
  2818  	}
  2819  	d = speedtest1_random(tls)%span + uint32(1)
  2820  	x0 = speedtest1_random(tls)%(mx-d) + uint32(1)
  2821  	x1 = x0 + d
  2822  	*(*uint32)(unsafe.Pointer(pX0)) = x0
  2823  	*(*uint32)(unsafe.Pointer(pX1)) = x1
  2824  }
  2825  
  2826  func xsliceGeometryCallback(tls *libc.TLS, p uintptr, nCoord int32, aCoord uintptr, pRes uintptr) int32 {
  2827  	*(*int32)(unsafe.Pointer(pRes)) = libc.Bool32(*(*float64)(unsafe.Pointer(aCoord + 3*8)) >= *(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_geometry)(unsafe.Pointer(p)).aParam)) && *(*float64)(unsafe.Pointer(aCoord + 2*8)) <= *(*sqlite3_rtree_dbl)(unsafe.Pointer((*sqlite3_rtree_geometry)(unsafe.Pointer(p)).aParam + 1*8)))
  2828  	return SQLITE_OK
  2829  }
  2830  
  2831  func testset_rtree(tls *libc.TLS, p1 int32, p2 int32) {
  2832  	bp := tls.Alloc(224)
  2833  	defer tls.Free(224)
  2834  
  2835  	var i uint32
  2836  	var n uint32
  2837  	var mxCoord uint32
  2838  
  2839  	var iStep uint32
  2840  	var mxRowid uint32
  2841  	var aCheck uintptr = sqlite3.Xsqlite3_malloc(tls, int32(uint64(unsafe.Sizeof(int32(0)))*uint64(g.szTest)*uint64(500)))
  2842  
  2843  	mxCoord = uint32(15000)
  2844  	mxRowid = libc.AssignUint32(&n, uint32(g.szTest*500))
  2845  	speedtest1_begin_test(tls, 100, ts+9578, libc.VaList(bp, n))
  2846  	speedtest1_exec(tls, ts+2913, 0)
  2847  	speedtest1_exec(tls, ts+9604, 0)
  2848  	speedtest1_prepare(tls,
  2849  		ts+9663, 0)
  2850  	for i = uint32(1); i <= n; i++ {
  2851  		twoCoords(tls, p1, p2, mxCoord, bp+200, bp+204)
  2852  		twoCoords(tls, p1, p2, mxCoord, bp+208, bp+212)
  2853  		twoCoords(tls, p1, p2, mxCoord, bp+216, bp+220)
  2854  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i))
  2855  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32(*(*uint32)(unsafe.Pointer(bp + 200))))
  2856  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 3, int32(*(*uint32)(unsafe.Pointer(bp + 204))))
  2857  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 4, int32(*(*uint32)(unsafe.Pointer(bp + 208))))
  2858  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 5, int32(*(*uint32)(unsafe.Pointer(bp + 212))))
  2859  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 6, int32(*(*uint32)(unsafe.Pointer(bp + 216))))
  2860  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 7, int32(*(*uint32)(unsafe.Pointer(bp + 220))))
  2861  		speedtest1_run(tls)
  2862  	}
  2863  	speedtest1_exec(tls, ts+3023, 0)
  2864  	speedtest1_end_test(tls)
  2865  
  2866  	speedtest1_begin_test(tls, 101, ts+9729, 0)
  2867  	speedtest1_exec(tls, ts+9764, 0)
  2868  	speedtest1_exec(tls, ts+9822, 0)
  2869  	speedtest1_end_test(tls)
  2870  
  2871  	n = uint32(g.szTest * 200)
  2872  	speedtest1_begin_test(tls, 110, ts+9855, libc.VaList(bp+8, n))
  2873  	speedtest1_prepare(tls, ts+9898, 0)
  2874  	iStep = mxCoord / n
  2875  	for i = uint32(0); i < n; i++ {
  2876  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  2877  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep))
  2878  		speedtest1_run(tls)
  2879  		*(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)
  2880  	}
  2881  	speedtest1_end_test(tls)
  2882  
  2883  	if g.bVerify != 0 {
  2884  		n = uint32(g.szTest * 200)
  2885  		speedtest1_begin_test(tls, 111, ts+9947, 0)
  2886  		speedtest1_prepare(tls, ts+9994, 0)
  2887  		iStep = mxCoord / n
  2888  		for i = uint32(0); i < n; i++ {
  2889  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  2890  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep))
  2891  			speedtest1_run(tls)
  2892  			if *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) != libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) {
  2893  				fatal_error(tls, ts+10042,
  2894  					libc.VaList(bp+16, i, i*iStep, (i+uint32(1))*iStep, *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)), libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)))
  2895  			}
  2896  		}
  2897  		speedtest1_end_test(tls)
  2898  	}
  2899  
  2900  	n = uint32(g.szTest * 200)
  2901  	speedtest1_begin_test(tls, 120, ts+10084, libc.VaList(bp+56, n))
  2902  	speedtest1_prepare(tls, ts+10125, 0)
  2903  	iStep = mxCoord / n
  2904  	for i = uint32(0); i < n; i++ {
  2905  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  2906  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep))
  2907  		speedtest1_run(tls)
  2908  		*(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)
  2909  	}
  2910  	speedtest1_end_test(tls)
  2911  
  2912  	if g.bVerify != 0 {
  2913  		n = uint32(g.szTest * 200)
  2914  		speedtest1_begin_test(tls, 121, ts+10174, 0)
  2915  		speedtest1_prepare(tls, ts+10219, 0)
  2916  		iStep = mxCoord / n
  2917  		for i = uint32(0); i < n; i++ {
  2918  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  2919  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep))
  2920  			speedtest1_run(tls)
  2921  			if *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) != libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) {
  2922  				fatal_error(tls, ts+10042,
  2923  					libc.VaList(bp+64, i, i*iStep, (i+uint32(1))*iStep, *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)), libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)))
  2924  			}
  2925  		}
  2926  		speedtest1_end_test(tls)
  2927  	}
  2928  
  2929  	n = uint32(g.szTest * 200)
  2930  	speedtest1_begin_test(tls, 125, ts+10267, libc.VaList(bp+104, n))
  2931  	sqlite3.Xsqlite3_rtree_geometry_callback(tls, g.db, ts+10303, *(*uintptr)(unsafe.Pointer(&struct {
  2932  		f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32
  2933  	}{xsliceGeometryCallback})), uintptr(0))
  2934  	speedtest1_prepare(tls, ts+10310, 0)
  2935  	iStep = mxCoord / n
  2936  	for i = uint32(0); i < n; i++ {
  2937  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  2938  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep))
  2939  		speedtest1_run(tls)
  2940  		if *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) != libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124) {
  2941  			fatal_error(tls, ts+10042,
  2942  				libc.VaList(bp+112, i, i*iStep, (i+uint32(1))*iStep, *(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)), libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)))
  2943  		}
  2944  	}
  2945  	speedtest1_end_test(tls)
  2946  
  2947  	n = uint32(g.szTest * 400)
  2948  	speedtest1_begin_test(tls, 130, ts+10364, libc.VaList(bp+152, n))
  2949  	speedtest1_prepare(tls,
  2950  		ts+10407, 0)
  2951  	iStep = mxCoord / n
  2952  	for i = uint32(0); i < n; i++ {
  2953  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  2954  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 2, int32((i+uint32(1))*iStep))
  2955  		speedtest1_run(tls)
  2956  		*(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)
  2957  	}
  2958  	speedtest1_end_test(tls)
  2959  
  2960  	n = uint32(g.szTest * 500)
  2961  	speedtest1_begin_test(tls, 140, ts+10500, libc.VaList(bp+160, n))
  2962  	speedtest1_prepare(tls, ts+10517, 0)
  2963  	for i = uint32(1); i <= n; i++ {
  2964  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i))
  2965  		speedtest1_run(tls)
  2966  	}
  2967  	speedtest1_end_test(tls)
  2968  
  2969  	n = uint32(g.szTest * 50)
  2970  	speedtest1_begin_test(tls, 150, ts+10547, libc.VaList(bp+168, n))
  2971  	speedtest1_prepare(tls, ts+10570, 0)
  2972  	for i = uint32(1); i <= n; i++ {
  2973  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*uint32(251)%mxRowid+uint32(1)))
  2974  		speedtest1_run(tls)
  2975  	}
  2976  	speedtest1_end_test(tls)
  2977  
  2978  	n = uint32(g.szTest * 5)
  2979  	speedtest1_begin_test(tls, 155, ts+10618, libc.VaList(bp+176, n))
  2980  	speedtest1_prepare(tls,
  2981  		ts+10659, 0)
  2982  	iStep = mxCoord / n
  2983  	for i = uint32(0); i < n; i++ {
  2984  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  2985  		speedtest1_run(tls)
  2986  		*(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)
  2987  	}
  2988  	speedtest1_end_test(tls)
  2989  
  2990  	n = uint32(g.szTest * 50)
  2991  	speedtest1_begin_test(tls, 160, ts+10721, libc.VaList(bp+184, n))
  2992  	speedtest1_prepare(tls, ts+10744, 0)
  2993  	for i = uint32(1); i <= n; i++ {
  2994  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*uint32(257)%mxRowid+uint32(1)))
  2995  		speedtest1_run(tls)
  2996  	}
  2997  	speedtest1_end_test(tls)
  2998  
  2999  	n = uint32(g.szTest * 5)
  3000  	speedtest1_begin_test(tls, 165, ts+10772, libc.VaList(bp+192, n))
  3001  	speedtest1_prepare(tls, ts+10813, 0)
  3002  	iStep = mxCoord / n
  3003  	for i = uint32(0); i < n; i++ {
  3004  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i*iStep))
  3005  		speedtest1_run(tls)
  3006  		*(*int32)(unsafe.Pointer(aCheck + uintptr(i)*4)) = libc.Xatoi(tls, uintptr(unsafe.Pointer(&g))+124)
  3007  	}
  3008  	speedtest1_end_test(tls)
  3009  
  3010  	speedtest1_begin_test(tls, 170, ts+10855, 0)
  3011  	speedtest1_exec(tls, ts+10902, 0)
  3012  	speedtest1_end_test(tls)
  3013  }
  3014  
  3015  func testset_orm(tls *libc.TLS) {
  3016  	bp := tls.Alloc(2016)
  3017  	defer tls.Free(2016)
  3018  
  3019  	var i uint32
  3020  	var j uint32
  3021  	var n uint32
  3022  	var nRow uint32
  3023  	var x1 uint32
  3024  	var len uint32
  3025  
  3026  	nRow = libc.AssignUint32(&n, uint32(g.szTest*250))
  3027  	speedtest1_begin_test(tls, 100, ts+10945, libc.VaList(bp, n))
  3028  	speedtest1_exec(tls,
  3029  		ts+10958, 0)
  3030  	speedtest1_prepare(tls,
  3031  		ts+14858, 0)
  3032  	for i = uint32(0); i < n; i++ {
  3033  		x1 = speedtest1_random(tls)
  3034  		speedtest1_numbername(tls, x1%uint32(1000), bp+16, int32(unsafe.Sizeof([2000]uint8{})))
  3035  		len = uint32(int32(libc.Xstrlen(tls, bp+16)))
  3036  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(i^uint32(0xf)))
  3037  		for j = uint32(0); zType[j] != 0; j++ {
  3038  			switch int32(zType[j]) {
  3039  			case 'I':
  3040  				fallthrough
  3041  			case 'T':
  3042  				sqlite3.Xsqlite3_bind_int64(tls, g.pStmt, int32(j+uint32(2)), int64(x1))
  3043  				break
  3044  			case 'F':
  3045  				sqlite3.Xsqlite3_bind_double(tls, g.pStmt, int32(j+uint32(2)), float64(x1))
  3046  				break
  3047  			case 'V':
  3048  				fallthrough
  3049  			case 'B':
  3050  				sqlite3.Xsqlite3_bind_text64(tls, g.pStmt, int32(j+uint32(2)), bp+16, uint64(len),
  3051  					uintptr(0), uint8(SQLITE_UTF8))
  3052  				break
  3053  			}
  3054  		}
  3055  		speedtest1_run(tls)
  3056  	}
  3057  	speedtest1_exec(tls, ts+3990, 0)
  3058  	speedtest1_end_test(tls)
  3059  
  3060  	n = uint32(g.szTest * 250)
  3061  	speedtest1_begin_test(tls, 110, ts+18102, libc.VaList(bp+8, n))
  3062  	speedtest1_prepare(tls,
  3063  		ts+18125, 0)
  3064  	for i = uint32(0); i < n; i++ {
  3065  		x1 = speedtest1_random(tls) % nRow
  3066  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, int32(x1))
  3067  		speedtest1_run(tls)
  3068  	}
  3069  	speedtest1_end_test(tls)
  3070  }
  3071  
  3072  var zType = *(*[120]uint8)(unsafe.Pointer(ts + 20878))
  3073  
  3074  func testset_trigger(tls *libc.TLS) {
  3075  	bp := tls.Alloc(2032)
  3076  	defer tls.Free(2032)
  3077  
  3078  	var jj int32
  3079  	var ii int32
  3080  
  3081  	var NROW int32 = 500 * g.szTest
  3082  	var NROW2 int32 = 100 * g.szTest
  3083  
  3084  	speedtest1_exec(tls,
  3085  		ts+20998, 0)
  3086  	for jj = 1; jj <= 3; jj++ {
  3087  		speedtest1_prepare(tls, ts+21326, libc.VaList(bp, jj))
  3088  		for ii = 0; ii < NROW; ii++ {
  3089  			var x1 int32 = int32(speedtest1_random(tls) % uint32(NROW))
  3090  			speedtest1_numbername(tls, uint32(x1), bp+32, int32(unsafe.Sizeof([2000]uint8{})))
  3091  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, x1)
  3092  			sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0))
  3093  			speedtest1_run(tls)
  3094  		}
  3095  	}
  3096  	speedtest1_exec(tls,
  3097  		ts+21361, 0)
  3098  
  3099  	speedtest1_begin_test(tls, 100, ts+21444, 0)
  3100  	speedtest1_prepare(tls,
  3101  		ts+21458, 0)
  3102  	speedtest1_run(tls)
  3103  	speedtest1_end_test(tls)
  3104  
  3105  	speedtest1_begin_test(tls, 110, ts+21525, 0)
  3106  	speedtest1_prepare(tls,
  3107  		ts+21539, 0)
  3108  	speedtest1_run(tls)
  3109  	speedtest1_end_test(tls)
  3110  
  3111  	speedtest1_begin_test(tls, 120, ts+21598, 0)
  3112  	for jj = 1; jj <= 3; jj++ {
  3113  		speedtest1_prepare(tls, ts+21612, libc.VaList(bp+8, jj))
  3114  		for ii = 0; ii < NROW2; ii = ii + 3 {
  3115  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, ii*3)
  3116  			speedtest1_run(tls)
  3117  		}
  3118  	}
  3119  	speedtest1_end_test(tls)
  3120  
  3121  	speedtest1_begin_test(tls, 130, ts+21646, 0)
  3122  	for jj = 1; jj <= 3; jj++ {
  3123  		speedtest1_prepare(tls, ts+21661, libc.VaList(bp+16, jj))
  3124  		for ii = 0; ii < NROW2; ii = ii + 3 {
  3125  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, ii*3)
  3126  			speedtest1_run(tls)
  3127  		}
  3128  	}
  3129  	speedtest1_end_test(tls)
  3130  
  3131  	speedtest1_begin_test(tls, 140, ts+21646, 0)
  3132  	for jj = 1; jj <= 3; jj++ {
  3133  		speedtest1_prepare(tls, ts+21661, libc.VaList(bp+24, jj))
  3134  		for ii = 0; ii < NROW2; ii = ii + 3 {
  3135  			sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, ii*3)
  3136  			speedtest1_run(tls)
  3137  		}
  3138  	}
  3139  	speedtest1_end_test(tls)
  3140  
  3141  	speedtest1_begin_test(tls, 150, ts+21695, 0)
  3142  	speedtest1_prepare(tls,
  3143  		ts+21714, 0)
  3144  	for jj = 0; jj < NROW2; jj++ {
  3145  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*3)
  3146  		speedtest1_run(tls)
  3147  	}
  3148  	speedtest1_end_test(tls)
  3149  
  3150  	speedtest1_begin_test(tls, 160, ts+21829, 0)
  3151  	speedtest1_exec(tls, ts+2913, 0)
  3152  	speedtest1_prepare(tls, ts+21850, 0)
  3153  	for jj = 0; jj < NROW2; jj++ {
  3154  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj)
  3155  		speedtest1_run(tls)
  3156  	}
  3157  	speedtest1_exec(tls, ts+3023, 0)
  3158  	speedtest1_end_test(tls)
  3159  
  3160  	speedtest1_exec(tls, ts+21885, 0)
  3161  	speedtest1_begin_test(tls, 170, ts+21933, 0)
  3162  	speedtest1_exec(tls, ts+21955, 0)
  3163  	speedtest1_end_test(tls)
  3164  
  3165  	speedtest1_exec(tls,
  3166  		ts+22000, 0)
  3167  
  3168  	speedtest1_begin_test(tls, 180, ts+22490, 0)
  3169  	speedtest1_prepare(tls, ts+22507, 0)
  3170  	for jj = 0; jj < NROW2; jj++ {
  3171  		speedtest1_numbername(tls, uint32(jj), bp+32, int32(unsafe.Sizeof([2000]uint8{})))
  3172  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj)
  3173  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0))
  3174  		speedtest1_run(tls)
  3175  	}
  3176  	speedtest1_end_test(tls)
  3177  
  3178  	speedtest1_begin_test(tls, 190, ts+22543, 0)
  3179  	speedtest1_prepare(tls, ts+22560, 0)
  3180  	for jj = 1; jj <= NROW2*2; jj = jj + 2 {
  3181  		speedtest1_numbername(tls, uint32(jj*2), bp+32, int32(unsafe.Sizeof([2000]uint8{})))
  3182  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2)
  3183  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0))
  3184  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 3, jj)
  3185  		speedtest1_run(tls)
  3186  	}
  3187  	speedtest1_end_test(tls)
  3188  
  3189  	speedtest1_begin_test(tls, 200, ts+22606, 0)
  3190  	speedtest1_prepare(tls, ts+22623, 0)
  3191  	for jj = 1; jj <= NROW2*2; jj = jj + 2 {
  3192  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2)
  3193  		speedtest1_run(tls)
  3194  	}
  3195  	speedtest1_end_test(tls)
  3196  	speedtest1_exec(tls, ts+3023, 0)
  3197  
  3198  	speedtest1_exec(tls,
  3199  		ts+22655, 0)
  3200  	speedtest1_begin_test(tls, 210, ts+22760, 0)
  3201  	speedtest1_prepare(tls, ts+22507, 0)
  3202  	for jj = 0; jj < NROW2; jj++ {
  3203  		speedtest1_numbername(tls, uint32(jj), bp+32, int32(unsafe.Sizeof([2000]uint8{})))
  3204  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj)
  3205  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0))
  3206  		speedtest1_run(tls)
  3207  	}
  3208  	speedtest1_end_test(tls)
  3209  	speedtest1_begin_test(tls, 210, ts+22779, 0)
  3210  	speedtest1_prepare(tls, ts+22560, 0)
  3211  	for jj = 1; jj <= NROW2*2; jj = jj + 2 {
  3212  		speedtest1_numbername(tls, uint32(jj*2), bp+32, int32(unsafe.Sizeof([2000]uint8{})))
  3213  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2)
  3214  		sqlite3.Xsqlite3_bind_text(tls, g.pStmt, 2, bp+32, -1, uintptr(0))
  3215  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 3, jj)
  3216  		speedtest1_run(tls)
  3217  	}
  3218  	speedtest1_end_test(tls)
  3219  	speedtest1_begin_test(tls, 220, ts+22798, 0)
  3220  	speedtest1_prepare(tls, ts+22623, 0)
  3221  	for jj = 1; jj <= NROW2*2; jj = jj + 2 {
  3222  		sqlite3.Xsqlite3_bind_int(tls, g.pStmt, 1, jj*2)
  3223  		speedtest1_run(tls)
  3224  	}
  3225  	speedtest1_end_test(tls)
  3226  	speedtest1_exec(tls, ts+3023, 0)
  3227  }
  3228  
  3229  func testset_debug1(tls *libc.TLS) {
  3230  	bp := tls.Alloc(2032)
  3231  	defer tls.Free(2032)
  3232  
  3233  	var i uint32
  3234  	var n uint32
  3235  	var x1 uint32
  3236  	var x2 uint32
  3237  
  3238  	n = uint32(g.szTest)
  3239  	for i = uint32(1); i <= n; i++ {
  3240  		x1 = swizzle(tls, i, n)
  3241  		x2 = swizzle(tls, x1, n)
  3242  		speedtest1_numbername(tls, x1, bp+32, int32(unsafe.Sizeof([2000]uint8{})))
  3243  		libc.Xprintf(tls, ts+22817, libc.VaList(bp, i, x1, x2, bp+32))
  3244  	}
  3245  }
  3246  
  3247  func displayLinuxIoStats(tls *libc.TLS, out uintptr) {
  3248  	bp := tls.Alloc(224)
  3249  	defer tls.Free(224)
  3250  
  3251  	var in uintptr
  3252  
  3253  	sqlite3.Xsqlite3_snprintf(tls, int32(unsafe.Sizeof([200]uint8{})), bp+24, ts+22833, libc.VaList(bp, libc.Xgetpid(tls)))
  3254  	in = libc.Xfopen(tls, bp+24, ts+22845)
  3255  	if in == uintptr(0) {
  3256  		return
  3257  	}
  3258  	for libc.Xfgets(tls, bp+24, int32(unsafe.Sizeof([200]uint8{})), in) != uintptr(0) {
  3259  		var i int32
  3260  		for i = 0; uint64(i) < uint64(unsafe.Sizeof(aTrans))/uint64(unsafe.Sizeof(struct {
  3261  			zPattern uintptr
  3262  			zDesc    uintptr
  3263  		}{})); i++ {
  3264  			var n int32 = int32(libc.Xstrlen(tls, aTrans[i].zPattern))
  3265  			if libc.Xstrncmp(tls, aTrans[i].zPattern, bp+24, uint64(n)) == 0 {
  3266  				libc.Xfprintf(tls, out, ts+22848, libc.VaList(bp+8, aTrans[i].zDesc, bp+24+uintptr(n)))
  3267  				break
  3268  			}
  3269  		}
  3270  	}
  3271  	libc.Xfclose(tls, in)
  3272  }
  3273  
  3274  var aTrans = [7]struct {
  3275  	zPattern uintptr
  3276  	zDesc    uintptr
  3277  }{
  3278  	{zPattern: ts + 22860, zDesc: ts + 22868},
  3279  	{zPattern: ts + 22894, zDesc: ts + 22902},
  3280  	{zPattern: ts + 22925, zDesc: ts + 22933},
  3281  	{zPattern: ts + 22954, zDesc: ts + 22962},
  3282  	{zPattern: ts + 22984, zDesc: ts + 22997},
  3283  	{zPattern: ts + 23022, zDesc: ts + 23036},
  3284  	{zPattern: ts + 23059, zDesc: ts + 23083},
  3285  }
  3286  
  3287  func xCompileOptions(tls *libc.TLS, pCtx uintptr, nVal int32, azVal uintptr, azCol uintptr) int32 {
  3288  	bp := tls.Alloc(8)
  3289  	defer tls.Free(8)
  3290  
  3291  	libc.Xprintf(tls, ts+23106, libc.VaList(bp, *(*uintptr)(unsafe.Pointer(azVal))))
  3292  	return SQLITE_OK
  3293  }
  3294  
  3295  func main1(tls *libc.TLS, argc int32, argv uintptr) int32 {
  3296  	bp := tls.Alloc(576)
  3297  	defer tls.Free(576)
  3298  
  3299  	var doAutovac int32 = 0
  3300  	var cacheSize int32 = 0
  3301  	var doExclusive int32 = 0
  3302  	var nHeap int32 = 0
  3303  	var mnHeap int32 = 0
  3304  	var doIncrvac int32 = 0
  3305  	var zJMode uintptr = uintptr(0)
  3306  	var zKey uintptr = uintptr(0)
  3307  	var nLook int32 = -1
  3308  	var szLook int32 = 0
  3309  	var noSync int32 = 0
  3310  	var pageSize int32 = 0
  3311  	var nPCache int32 = 0
  3312  	var szPCache int32 = 0
  3313  	var doPCache int32 = 0
  3314  	var showStats int32 = 0
  3315  	var nThread int32 = 0
  3316  	var mmapSize int32 = 0
  3317  	var memDb int32 = 0
  3318  	var zTSet uintptr = ts + 23129
  3319  	var doTrace int32 = 0
  3320  	var zEncoding uintptr = uintptr(0)
  3321  	var zDbName uintptr = uintptr(0)
  3322  
  3323  	var pHeap uintptr = uintptr(0)
  3324  	var pLook uintptr = uintptr(0)
  3325  	var pPCache uintptr = uintptr(0)
  3326  
  3327  	var i int32
  3328  	var rc int32
  3329  
  3330  	libc.Xprintf(tls, ts+23134,
  3331  		libc.VaList(bp, sqlite3.Xsqlite3_libversion(tls), sqlite3.Xsqlite3_sourceid(tls)))
  3332  
  3333  	g.zWR = ts + 2269
  3334  	g.zNN = ts + 2269
  3335  	g.zPK = ts + 23169
  3336  	g.szTest = 100
  3337  	g.nRepeat = 1
  3338  	for i = 1; i < argc; i++ {
  3339  		var z uintptr = *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))
  3340  		if int32(*(*uint8)(unsafe.Pointer(z))) == '-' {
  3341  			for __ccgo := true; __ccgo; __ccgo = int32(*(*uint8)(unsafe.Pointer(z))) == '-' {
  3342  				z++
  3343  			}
  3344  			if libc.Xstrcmp(tls, z, ts+23176) == 0 {
  3345  				doAutovac = 1
  3346  			} else if libc.Xstrcmp(tls, z, ts+23187) == 0 {
  3347  				if i >= argc-1 {
  3348  					fatal_error(tls, ts+23197, libc.VaList(bp+16, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3349  				}
  3350  				i++
  3351  				cacheSize = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)))
  3352  			} else if libc.Xstrcmp(tls, z, ts+23221) == 0 {
  3353  				doExclusive = 1
  3354  			} else if libc.Xstrcmp(tls, z, ts+23231) == 0 {
  3355  				g.doCheckpoint = 1
  3356  			} else if libc.Xstrcmp(tls, z, ts+23242) == 0 {
  3357  				g.bSqlOnly = 1
  3358  				g.bExplain = 1
  3359  			} else if libc.Xstrcmp(tls, z, ts+23250) == 0 {
  3360  				if i >= argc-2 {
  3361  					fatal_error(tls, ts+23255, libc.VaList(bp+24, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3362  				}
  3363  				nHeap = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8)))
  3364  				mnHeap = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+2)*8)))
  3365  				i = i + 2
  3366  			} else if libc.Xstrcmp(tls, z, ts+23280) == 0 {
  3367  				doIncrvac = 1
  3368  			} else if libc.Xstrcmp(tls, z, ts+23291) == 0 {
  3369  				if i >= argc-1 {
  3370  					fatal_error(tls, ts+23197, libc.VaList(bp+32, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3371  				}
  3372  				zJMode = *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))
  3373  			} else if libc.Xstrcmp(tls, z, ts+23299) == 0 {
  3374  				if i >= argc-1 {
  3375  					fatal_error(tls, ts+23197, libc.VaList(bp+40, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3376  				}
  3377  				zKey = *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))
  3378  			} else if libc.Xstrcmp(tls, z, ts+23303) == 0 {
  3379  				if i >= argc-2 {
  3380  					fatal_error(tls, ts+23255, libc.VaList(bp+48, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3381  				}
  3382  				nLook = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8)))
  3383  				szLook = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+2)*8)))
  3384  				i = i + 2
  3385  			} else if libc.Xstrcmp(tls, z, ts+23313) == 0 {
  3386  				memDb = 1
  3387  			} else if libc.Xstrcmp(tls, z, ts+23319) == 0 {
  3388  				sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_MULTITHREAD, 0)
  3389  			} else if libc.Xstrcmp(tls, z, ts+23331) == 0 {
  3390  				sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_MEMSTATUS, libc.VaList(bp+56, 0))
  3391  			} else if libc.Xstrcmp(tls, z, ts+23341) == 0 {
  3392  				if i >= argc-1 {
  3393  					fatal_error(tls, ts+23197, libc.VaList(bp+64, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3394  				}
  3395  				mmapSize = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)))
  3396  			} else if libc.Xstrcmp(tls, z, ts+23346) == 0 {
  3397  				noSync = 1
  3398  			} else if libc.Xstrcmp(tls, z, ts+23353) == 0 {
  3399  				g.zNN = ts + 23361
  3400  			} else if libc.Xstrcmp(tls, z, ts+23370) == 0 {
  3401  				if i >= argc-1 {
  3402  					fatal_error(tls, ts+23197, libc.VaList(bp+72, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3403  				}
  3404  				i++
  3405  				if libc.Xstrcmp(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), ts+23377) == 0 {
  3406  					g.hashFile = libc.Xstdout
  3407  				} else {
  3408  					g.hashFile = libc.Xfopen(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), ts+23379)
  3409  					if g.hashFile == uintptr(0) {
  3410  						fatal_error(tls, ts+23382, libc.VaList(bp+80, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3411  					}
  3412  				}
  3413  			} else if libc.Xstrcmp(tls, z, ts+23412) == 0 {
  3414  				if i >= argc-1 {
  3415  					fatal_error(tls, ts+23197, libc.VaList(bp+88, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3416  				}
  3417  				pageSize = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)))
  3418  			} else if libc.Xstrcmp(tls, z, ts+23421) == 0 {
  3419  				if i >= argc-2 {
  3420  					fatal_error(tls, ts+23255, libc.VaList(bp+96, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3421  				}
  3422  				nPCache = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8)))
  3423  				szPCache = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+2)*8)))
  3424  				doPCache = 1
  3425  				i = i + 2
  3426  			} else if libc.Xstrcmp(tls, z, ts+23428) == 0 {
  3427  				g.zPK = ts + 23439
  3428  			} else if libc.Xstrcmp(tls, z, ts+23451) == 0 {
  3429  				if i >= argc-1 {
  3430  					fatal_error(tls, ts+23255, libc.VaList(bp+104, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3431  				}
  3432  				g.nRepeat = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(i+1)*8)))
  3433  				i = i + 1
  3434  			} else if libc.Xstrcmp(tls, z, ts+23458) == 0 {
  3435  				g.bReprepare = 1
  3436  			} else if libc.Xstrcmp(tls, z, ts+23468) == 0 {
  3437  				sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_SERIALIZED, 0)
  3438  			} else if libc.Xstrcmp(tls, z, ts+23479) == 0 {
  3439  				sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_SINGLETHREAD, 0)
  3440  			} else if libc.Xstrcmp(tls, z, ts+23492) == 0 {
  3441  				g.bSqlOnly = 1
  3442  			} else if libc.Xstrcmp(tls, z, ts+23500) == 0 {
  3443  				g.bMemShrink = 1
  3444  			} else if libc.Xstrcmp(tls, z, ts+23514) == 0 {
  3445  				if i >= argc-1 {
  3446  					fatal_error(tls, ts+23197, libc.VaList(bp+112, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3447  				}
  3448  				g.szTest = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)))
  3449  			} else if libc.Xstrcmp(tls, z, ts+23519) == 0 {
  3450  				showStats = 1
  3451  			} else if libc.Xstrcmp(tls, z, ts+23525) == 0 {
  3452  				if i >= argc-1 {
  3453  					fatal_error(tls, ts+23197, libc.VaList(bp+120, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3454  				}
  3455  				i++
  3456  				if int32(*(*uint8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))) < '0' || int32(*(*uint8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))) > '9' || int32(*(*uint8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)) + 1))) != 0 {
  3457  					fatal_error(tls, ts+23530, 0)
  3458  				}
  3459  				g.eTemp = int32(*(*uint8)(unsafe.Pointer(*(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))) - '0'
  3460  			} else if libc.Xstrcmp(tls, z, ts+23583) == 0 {
  3461  				if i >= argc-1 {
  3462  					fatal_error(tls, ts+23197, libc.VaList(bp+128, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3463  				}
  3464  				zTSet = *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8))
  3465  			} else if libc.Xstrcmp(tls, z, ts+23591) == 0 {
  3466  				doTrace = 1
  3467  			} else if libc.Xstrcmp(tls, z, ts+23597) == 0 {
  3468  				if i >= argc-1 {
  3469  					fatal_error(tls, ts+23197, libc.VaList(bp+136, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3470  				}
  3471  				nThread = integerValue(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)))
  3472  			} else if libc.Xstrcmp(tls, z, ts+23605) == 0 {
  3473  				zEncoding = ts + 23605
  3474  			} else if libc.Xstrcmp(tls, z, ts+23613) == 0 {
  3475  				zEncoding = ts + 23613
  3476  			} else if libc.Xstrcmp(tls, z, ts+23621) == 0 {
  3477  				g.bVerify = 1
  3478  				HashInit(tls)
  3479  			} else if libc.Xstrcmp(tls, z, ts+23628) == 0 {
  3480  				if i >= argc-1 {
  3481  					fatal_error(tls, ts+23197, libc.VaList(bp+144, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))))
  3482  				}
  3483  				g.nReserve = libc.Xatoi(tls, *(*uintptr)(unsafe.Pointer(argv + uintptr(libc.PreIncInt32(&i, 1))*8)))
  3484  			} else if libc.Xstrcmp(tls, z, ts+23636) == 0 {
  3485  				if libc.Xstrstr(tls, g.zWR, ts+23650) != uintptr(0) {
  3486  				} else if libc.Xstrstr(tls, g.zWR, ts+23658) != uintptr(0) {
  3487  					g.zWR = ts + 23665
  3488  				} else {
  3489  					g.zWR = ts + 6036
  3490  				}
  3491  				g.zPK = ts + 23439
  3492  			} else if libc.Xstrcmp(tls, z, ts+23686) == 0 {
  3493  				if libc.Xstrstr(tls, g.zWR, ts+23658) != uintptr(0) {
  3494  				} else if libc.Xstrstr(tls, g.zWR, ts+23650) != uintptr(0) {
  3495  					g.zWR = ts + 23665
  3496  				} else {
  3497  					g.zWR = ts + 23658
  3498  				}
  3499  			} else if libc.Xstrcmp(tls, z, ts+23693) == 0 || libc.Xstrcmp(tls, z, ts+23698) == 0 {
  3500  				libc.Xprintf(tls, uintptr(unsafe.Pointer(&zHelp)), libc.VaList(bp+152, *(*uintptr)(unsafe.Pointer(argv))))
  3501  				libc.Xexit(tls, 0)
  3502  			} else {
  3503  				fatal_error(tls, ts+23700,
  3504  					libc.VaList(bp+160, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), *(*uintptr)(unsafe.Pointer(argv))))
  3505  			}
  3506  		} else if zDbName == uintptr(0) {
  3507  			zDbName = *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8))
  3508  		} else {
  3509  			fatal_error(tls, ts+23741,
  3510  				libc.VaList(bp+176, *(*uintptr)(unsafe.Pointer(argv + uintptr(i)*8)), *(*uintptr)(unsafe.Pointer(argv))))
  3511  		}
  3512  	}
  3513  	if zDbName != uintptr(0) {
  3514  		libc.Xunlink(tls, zDbName)
  3515  	}
  3516  	if nHeap > 0 {
  3517  		pHeap = libc.Xmalloc(tls, uint64(nHeap))
  3518  		if pHeap == uintptr(0) {
  3519  			fatal_error(tls, ts+23784, libc.VaList(bp+192, nHeap))
  3520  		}
  3521  		rc = sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_HEAP, libc.VaList(bp+200, pHeap, nHeap, mnHeap))
  3522  		if rc != 0 {
  3523  			fatal_error(tls, ts+23814, libc.VaList(bp+224, rc))
  3524  		}
  3525  	}
  3526  	if doPCache != 0 {
  3527  		if nPCache > 0 && szPCache > 0 {
  3528  			pPCache = libc.Xmalloc(tls, uint64(sqlite3_int64(nPCache)*sqlite3_int64(szPCache)))
  3529  			if pPCache == uintptr(0) {
  3530  				fatal_error(tls, ts+23845,
  3531  					libc.VaList(bp+232, sqlite3_int64(nPCache)*sqlite3_int64(szPCache)))
  3532  			}
  3533  		}
  3534  		rc = sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_PAGECACHE, libc.VaList(bp+240, pPCache, szPCache, nPCache))
  3535  		if rc != 0 {
  3536  			fatal_error(tls, ts+23879, libc.VaList(bp+264, rc))
  3537  		}
  3538  	}
  3539  	if nLook >= 0 {
  3540  		sqlite3.Xsqlite3_config(tls, SQLITE_CONFIG_LOOKASIDE, libc.VaList(bp+272, 0, 0))
  3541  	}
  3542  	sqlite3.Xsqlite3_initialize(tls)
  3543  
  3544  	if sqlite3.Xsqlite3_open(tls, func() uintptr {
  3545  		if memDb != 0 {
  3546  			return ts + 23912
  3547  		}
  3548  		return zDbName
  3549  	}(), uintptr(unsafe.Pointer(&g))) != 0 {
  3550  		fatal_error(tls, ts+23921, libc.VaList(bp+288, zDbName))
  3551  	}
  3552  	if nLook > 0 && szLook > 0 {
  3553  		pLook = libc.Xmalloc(tls, uint64(nLook*szLook))
  3554  		rc = sqlite3.Xsqlite3_db_config(tls, g.db, SQLITE_DBCONFIG_LOOKASIDE, libc.VaList(bp+296, pLook, szLook, nLook))
  3555  		if rc != 0 {
  3556  			fatal_error(tls, ts+23952, libc.VaList(bp+320, rc))
  3557  		}
  3558  	}
  3559  	if g.nReserve > 0 {
  3560  		sqlite3.Xsqlite3_file_control(tls, g.db, uintptr(0), SQLITE_FCNTL_RESERVE_BYTES, uintptr(unsafe.Pointer(&g))+72)
  3561  	}
  3562  
  3563  	sqlite3.Xsqlite3_create_function(tls, g.db, ts+23988, 0, SQLITE_UTF8, uintptr(0), *(*uintptr)(unsafe.Pointer(&struct {
  3564  		f func(*libc.TLS, uintptr, int32, uintptr)
  3565  	}{randomFunc})), uintptr(0), uintptr(0))
  3566  	if doTrace != 0 {
  3567  		sqlite3.Xsqlite3_trace(tls, g.db, *(*uintptr)(unsafe.Pointer(&struct {
  3568  			f func(*libc.TLS, uintptr, uintptr)
  3569  		}{traceCallback})), uintptr(0))
  3570  	}
  3571  	if memDb > 0 {
  3572  		speedtest1_exec(tls, ts+23995, 0)
  3573  	}
  3574  	if mmapSize > 0 {
  3575  		speedtest1_exec(tls, ts+24020, libc.VaList(bp+328, mmapSize))
  3576  	}
  3577  	speedtest1_exec(tls, ts+24040, libc.VaList(bp+336, nThread))
  3578  	if zKey != 0 {
  3579  		speedtest1_exec(tls, ts+24058, libc.VaList(bp+344, zKey))
  3580  	}
  3581  	if zEncoding != 0 {
  3582  		speedtest1_exec(tls, ts+24075, libc.VaList(bp+352, zEncoding))
  3583  	}
  3584  	if doAutovac != 0 {
  3585  		speedtest1_exec(tls, ts+24094, 0)
  3586  	} else if doIncrvac != 0 {
  3587  		speedtest1_exec(tls, ts+24118, 0)
  3588  	}
  3589  	if pageSize != 0 {
  3590  		speedtest1_exec(tls, ts+24149, libc.VaList(bp+360, pageSize))
  3591  	}
  3592  	if cacheSize != 0 {
  3593  		speedtest1_exec(tls, ts+24169, libc.VaList(bp+368, cacheSize))
  3594  	}
  3595  	if noSync != 0 {
  3596  		speedtest1_exec(tls, ts+24190, 0)
  3597  	}
  3598  	if doExclusive != 0 {
  3599  		speedtest1_exec(tls, ts+24213, 0)
  3600  	}
  3601  	if zJMode != 0 {
  3602  		speedtest1_exec(tls, ts+24243, libc.VaList(bp+376, zJMode))
  3603  	}
  3604  
  3605  	if g.bExplain != 0 {
  3606  		libc.Xprintf(tls, ts+24266, 0)
  3607  	}
  3608  	for __ccgo1 := true; __ccgo1; __ccgo1 = *(*uint8)(unsafe.Pointer(zTSet)) != 0 {
  3609  		var zThisTest uintptr = zTSet
  3610  		var zComma uintptr = libc.Xstrchr(tls, zThisTest, ',')
  3611  		if zComma != 0 {
  3612  			*(*uint8)(unsafe.Pointer(zComma)) = uint8(0)
  3613  			zTSet = zComma + uintptr(1)
  3614  		} else {
  3615  			zTSet = ts + 2269
  3616  		}
  3617  		if g.iTotal > int64(0) || zComma != uintptr(0) {
  3618  			libc.Xprintf(tls, ts+24285, libc.VaList(bp+384, zThisTest))
  3619  		}
  3620  		if libc.Xstrcmp(tls, zThisTest, ts+23129) == 0 {
  3621  			testset_main(tls)
  3622  		} else if libc.Xstrcmp(tls, zThisTest, ts+24312) == 0 {
  3623  			testset_debug1(tls)
  3624  		} else if libc.Xstrcmp(tls, zThisTest, ts+24319) == 0 {
  3625  			testset_orm(tls)
  3626  		} else if libc.Xstrcmp(tls, zThisTest, ts+24323) == 0 {
  3627  			testset_cte(tls)
  3628  		} else if libc.Xstrcmp(tls, zThisTest, ts+24327) == 0 {
  3629  			testset_fp(tls)
  3630  		} else if libc.Xstrcmp(tls, zThisTest, ts+24330) == 0 {
  3631  			testset_trigger(tls)
  3632  		} else if libc.Xstrcmp(tls, zThisTest, ts+24338) == 0 {
  3633  			testset_rtree(tls, 6, 147)
  3634  		} else {
  3635  			fatal_error(tls,
  3636  				ts+24344,
  3637  				libc.VaList(bp+392, zThisTest))
  3638  		}
  3639  		if *(*uint8)(unsafe.Pointer(zTSet)) != 0 {
  3640  			var zSql uintptr
  3641  			var zObj uintptr
  3642  			speedtest1_begin_test(tls, 999, ts+24413, 0)
  3643  			for 1 != 0 {
  3644  				zObj = speedtest1_once(tls,
  3645  					ts+24432, 0)
  3646  				if zObj == uintptr(0) {
  3647  					break
  3648  				}
  3649  				zSql = sqlite3.Xsqlite3_mprintf(tls, ts+24502, libc.VaList(bp+400, zObj))
  3650  				speedtest1_exec(tls, zSql, 0)
  3651  				sqlite3.Xsqlite3_free(tls, zSql)
  3652  				sqlite3.Xsqlite3_free(tls, zObj)
  3653  			}
  3654  			for 1 != 0 {
  3655  				zObj = speedtest1_once(tls,
  3656  					ts+24523, 0)
  3657  				if zObj == uintptr(0) {
  3658  					break
  3659  				}
  3660  				zSql = sqlite3.Xsqlite3_mprintf(tls, ts+24502, libc.VaList(bp+408, zObj))
  3661  				speedtest1_exec(tls, zSql, 0)
  3662  				sqlite3.Xsqlite3_free(tls, zSql)
  3663  				sqlite3.Xsqlite3_free(tls, zObj)
  3664  			}
  3665  			speedtest1_end_test(tls)
  3666  		}
  3667  	}
  3668  	speedtest1_final(tls)
  3669  
  3670  	if showStats != 0 {
  3671  		sqlite3.Xsqlite3_exec(tls, g.db, ts+24593, *(*uintptr)(unsafe.Pointer(&struct {
  3672  			f func(*libc.TLS, uintptr, int32, uintptr, uintptr) int32
  3673  		}{xCompileOptions})), uintptr(0), uintptr(0))
  3674  	}
  3675  
  3676  	if showStats != 0 {
  3677  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_USED, bp+568, bp+572, 0)
  3678  		libc.Xprintf(tls, ts+24616, libc.VaList(bp+416, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572))))
  3679  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_HIT, bp+568, bp+572, 0)
  3680  		libc.Xprintf(tls, ts+24661, libc.VaList(bp+432, *(*int32)(unsafe.Pointer(bp + 572))))
  3681  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE, bp+568, bp+572, 0)
  3682  		libc.Xprintf(tls, ts+24697, libc.VaList(bp+440, *(*int32)(unsafe.Pointer(bp + 572))))
  3683  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL, bp+568, bp+572, 0)
  3684  		libc.Xprintf(tls, ts+24733, libc.VaList(bp+448, *(*int32)(unsafe.Pointer(bp + 572))))
  3685  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_USED, bp+568, bp+572, 0)
  3686  		libc.Xprintf(tls, ts+24769, libc.VaList(bp+456, *(*int32)(unsafe.Pointer(bp + 568))))
  3687  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_HIT, bp+568, bp+572, 1)
  3688  		libc.Xprintf(tls, ts+24811, libc.VaList(bp+464, *(*int32)(unsafe.Pointer(bp + 568))))
  3689  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_MISS, bp+568, bp+572, 1)
  3690  		libc.Xprintf(tls, ts+24847, libc.VaList(bp+472, *(*int32)(unsafe.Pointer(bp + 568))))
  3691  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_CACHE_WRITE, bp+568, bp+572, 1)
  3692  		libc.Xprintf(tls, ts+24883, libc.VaList(bp+480, *(*int32)(unsafe.Pointer(bp + 568))))
  3693  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_SCHEMA_USED, bp+568, bp+572, 0)
  3694  		libc.Xprintf(tls, ts+24919, libc.VaList(bp+488, *(*int32)(unsafe.Pointer(bp + 568))))
  3695  		sqlite3.Xsqlite3_db_status(tls, g.db, SQLITE_DBSTATUS_STMT_USED, bp+568, bp+572, 0)
  3696  		libc.Xprintf(tls, ts+24961, libc.VaList(bp+496, *(*int32)(unsafe.Pointer(bp + 568))))
  3697  	}
  3698  
  3699  	sqlite3.Xsqlite3_close(tls, g.db)
  3700  
  3701  	if showStats != 0 {
  3702  		sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_MEMORY_USED, bp+568, bp+572, 0)
  3703  		libc.Xprintf(tls, ts+25003, libc.VaList(bp+504, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572))))
  3704  		sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_MALLOC_COUNT, bp+568, bp+572, 0)
  3705  		libc.Xprintf(tls, ts+25048, libc.VaList(bp+520, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572))))
  3706  		sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_PAGECACHE_OVERFLOW, bp+568, bp+572, 0)
  3707  		libc.Xprintf(tls, ts+25093, libc.VaList(bp+536, *(*int32)(unsafe.Pointer(bp + 568)), *(*int32)(unsafe.Pointer(bp + 572))))
  3708  		sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_MALLOC_SIZE, bp+568, bp+572, 0)
  3709  		libc.Xprintf(tls, ts+25138, libc.VaList(bp+552, *(*int32)(unsafe.Pointer(bp + 572))))
  3710  		sqlite3.Xsqlite3_status(tls, SQLITE_STATUS_PAGECACHE_SIZE, bp+568, bp+572, 0)
  3711  		libc.Xprintf(tls, ts+25180, libc.VaList(bp+560, *(*int32)(unsafe.Pointer(bp + 572))))
  3712  	}
  3713  
  3714  	if showStats != 0 {
  3715  		displayLinuxIoStats(tls, libc.Xstdout)
  3716  	}
  3717  
  3718  	libc.Xfree(tls, pLook)
  3719  	libc.Xfree(tls, pPCache)
  3720  	libc.Xfree(tls, pHeap)
  3721  	return 0
  3722  }
  3723  
  3724  var ts1 = "Usage: %s [--options] DATABASE\nOptions:\n  --autovacuum        Enable AUTOVACUUM mode\n  --cachesize N       Set the cache size to N\n  --checkpoint        Run PRAGMA wal_checkpoint after each test case\n  --exclusive         Enable locking_mode=EXCLUSIVE\n  --explain           Like --sqlonly but with added EXPLAIN keywords\n  --heap SZ MIN       Memory allocator uses SZ bytes & min allocation MIN\n  --incrvacuum        Enable incremenatal vacuum mode\n  --journal M         Set the journal_mode to M\n  --key KEY           Set the encryption key to KEY\n  --lookaside N SZ    Configure lookaside for N slots of SZ bytes each\n  --memdb             Use an in-memory database\n  --mmap SZ           MMAP the first SZ bytes of the database file\n  --multithread       Set multithreaded mode\n  --nomemstat         Disable memory statistics\n  --nosync            Set PRAGMA synchronous=OFF\n  --notnull           Add NOT NULL constraints to table columns\n  --output FILE       Store SQL output in FILE\n  --pagesize N        Set the page size to N\n  --pcache N SZ       Configure N pages of pagecache each of size SZ bytes\n  --primarykey        Use PRIMARY KEY instead of UNIQUE where appropriate\n  --repeat N          Repeat each SELECT N times (default: 1)\n  --reprepare         Reprepare each statement upon every invocation\n  --reserve N         Reserve N bytes on each database page\n  --serialized        Set serialized threading mode\n  --singlethread      Set single-threaded mode - disables all mutexing\n  --sqlonly           No-op.  Only show the SQL that would have been run.\n  --shrink-memory     Invoke sqlite3_db_release_memory() frequently.\n  --size N            Relative test size.  Default=100\n  --strict            Use STRICT table where appropriate\n  --stats             Show statistics at the end\n  --temp N            N from 0 to 9.  0: no temp table. 9: all temp tables\n  --testset T         Run test-set T (main, cte, rtree, orm, fp, debug)\n  --trace             Turn on SQL tracing\n  --threads N         Use up to N threads for sorting\n  --utf16be           Set text encoding to UTF-16BE\n  --utf16le           Set text encoding to UTF-16LE\n  --verify            Run additional verification steps.\n  --without-rowid     Use WITHOUT ROWID where appropriate\n\x00 TEMP\x00\x00parameter too large - max 2147483648\x00KiB\x00MiB\x00GiB\x00KB\x00MB\x00GB\x00K\x00M\x00G\x00 billion\x00 million\x00 thousand\x00%s hundred\x00%s\x00zero\x00one\x00two\x00three\x00four\x00five\x00six\x00seven\x00eight\x00nine\x00ten\x00eleven\x00twelve\x00thirteen\x00fourteen\x00fifteen\x00sixteen\x00seventeen\x00eighteen\x00nineteen\x00twenty\x00thirty\x00forty\x00fifty\x00sixty\x00seventy\x00eighty\x00ninety\x00.......................................................................\x00/* %4d - %s%.*s */\n\x00%4d - %s%.*s \x00PRAGMA wal_checkpoint;\x00%4d.%03ds\n\x00       TOTAL%.*s %4d.%03ds\n\x00Verification Hash: %llu \x00\n\x00%02x\x00EXPLAIN \x00%.*s;\n\x00CREATE *\x00DROP *\x00ALTER *\x00SQL error: %s\n%s\n\x00exec error: %s\n\x00SQL error: %s\n\x00nil\x00-IFTBN\x000123456789abcdef\x00%d INSERTs into table with no index\x00BEGIN\x00CREATE%s TABLE z1(a INTEGER %s, b INTEGER %s, c TEXT %s);\x00INSERT INTO z1 VALUES(?1,?2,?3); --  %d times\x00COMMIT\x00%d ordered INSERTS with one index/PK\x00CREATE%s TABLE z2(a INTEGER %s %s, b INTEGER %s, c TEXT %s) %s\x00INSERT INTO z2 VALUES(?1,?2,?3); -- %d times\x00%d unordered INSERTS with one index/PK\x00CREATE%s TABLE t3(a INTEGER %s %s, b INTEGER %s, c TEXT %s) %s\x00INSERT INTO t3 VALUES(?1,?2,?3); -- %d times\x00%d SELECTS, numeric BETWEEN, unindexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(c) FROM z1\n WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d SELECTS, LIKE, unindexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(c) FROM z1\n WHERE c LIKE ?1; -- %d times\x00%d SELECTS w/ORDER BY, unindexed\x00SELECT a, b, c FROM z1 WHERE c LIKE ?1\n ORDER BY a; -- %d times\x00%d SELECTS w/ORDER BY and LIMIT, unindexed\x00SELECT a, b, c FROM z1 WHERE c LIKE ?1\n ORDER BY a LIMIT 10; -- %d times\x00CREATE INDEX five times\x00BEGIN;\x00CREATE UNIQUE INDEX t1b ON z1(b);\x00CREATE INDEX t1c ON z1(c);\x00CREATE UNIQUE INDEX t2b ON z2(b);\x00CREATE INDEX t2c ON z2(c DESC);\x00CREATE INDEX t3bc ON t3(b,c);\x00COMMIT;\x00%d SELECTS, numeric BETWEEN, indexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(a) FROM z1\n WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d SELECTS, numeric BETWEEN, PK\x00SELECT count(*), avg(b), sum(length(c)), group_concat(a) FROM z2\n WHERE a BETWEEN ?1 AND ?2; -- %d times\x00%d SELECTS, text BETWEEN, indexed\x00SELECT count(*), avg(b), sum(length(c)), group_concat(a) FROM z1\n WHERE c BETWEEN ?1 AND (?1||'~'); -- %d times\x00%d INSERTS with three indexes\x00CREATE%s TABLE t4(\n  a INTEGER %s %s,\n  b INTEGER %s,\n  c TEXT %s\n) %s\x00CREATE INDEX t4b ON t4(b)\x00CREATE INDEX t4c ON t4(c)\x00INSERT INTO t4 SELECT * FROM z1\x00DELETE and REFILL one table\x00DELETE FROM z2;\x00INSERT INTO z2 SELECT * FROM z1;\x00VACUUM\x00ALTER TABLE ADD COLUMN, and query\x00ALTER TABLE z2 ADD COLUMN d INT DEFAULT 123\x00SELECT sum(d) FROM z2\x00%d UPDATES, numeric BETWEEN, indexed\x00UPDATE z2 SET d=b*2 WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d UPDATES of individual rows\x00UPDATE z2 SET d=b*3 WHERE a=?1; -- %d times\x00One big UPDATE of the whole %d-row table\x00UPDATE z2 SET d=b*4\x00Query added column after filling\x00%d DELETEs, numeric BETWEEN, indexed\x00DELETE FROM z2 WHERE b BETWEEN ?1 AND ?2; -- %d times\x00%d DELETEs of individual rows\x00DELETE FROM t3 WHERE a=?1; -- %d times\x00Refill two %d-row tables using REPLACE\x00REPLACE INTO z2(a,b,c) SELECT a,b,c FROM z1\x00REPLACE INTO t3(a,b,c) SELECT a,b,c FROM z1\x00Refill a %d-row table using (b&1)==(a&1)\x00INSERT INTO z2(a,b,c)\n SELECT a,b,c FROM z1  WHERE (b&1)==(a&1);\x00INSERT INTO z2(a,b,c)\n SELECT a,b,c FROM z1  WHERE (b&1)<>(a&1);\x00%d four-ways joins\x00SELECT z1.c FROM z1, z2, t3, t4\n WHERE t4.a BETWEEN ?1 AND ?2\n   AND t3.a=t4.b\n   AND z2.a=t3.b\n   AND z1.c=z2.c\x00subquery in result set\x00SELECT sum(a), max(c),\n       avg((SELECT a FROM z2 WHERE 5+z2.b=z1.b) AND rowid<?1), max(c)\n FROM z1 WHERE rowid<?1;\x00%d REPLACE ops on an IPK\x00CREATE%s TABLE t5(a INTEGER PRIMARY KEY, b %s);\x00REPLACE INTO t5 VALUES(?1,?2); --  %d times\x00%d SELECTS on an IPK\x00SELECT b FROM t5 WHERE a=?1; --  %d times\x00%d REPLACE on TEXT PK\x00CREATE%s TABLE t6(a TEXT PRIMARY KEY, b %s)%s;\x00WITHOUT ROWID\x00REPLACE INTO t6 VALUES(?1,?2); --  %d times\x00%d SELECTS on a TEXT PK\x00SELECT b FROM t6 WHERE a=?1; --  %d times\x00%d SELECT DISTINCT\x00SELECT DISTINCT b FROM t5;\x00SELECT DISTINCT b FROM t6;\x00PRAGMA integrity_check\x00ANALYZE\x00Sudoku with recursive 'digits'\x00WITH RECURSIVE\n  input(sud) AS (VALUES(?1)),\n  digits(z,lp) AS (\n    VALUES('1', 1)\n    UNION ALL\n    SELECT CAST(lp+1 AS TEXT), lp+1 FROM digits WHERE lp<9\n  ),\n  x(s, ind) AS (\n    SELECT sud, instr(sud, '.') FROM input\n    UNION ALL\n    SELECT\n      substr(s, 1, ind-1) || z || substr(s, ind+1),\n      instr( substr(s, 1, ind-1) || z || substr(s, ind+1), '.' )\n     FROM x, digits AS z\n    WHERE ind>0\n      AND NOT EXISTS (\n            SELECT 1\n              FROM digits AS lp\n             WHERE z.z = substr(s, ((ind-1)/9)*9 + lp, 1)\n                OR z.z = substr(s, ((ind-1)%%9) + (lp-1)*9 + 1, 1)\n                OR z.z = substr(s, (((ind-1)/3) %% 3) * 3\n                        + ((ind-1)/27) * 27 + lp\n                        + ((lp-1) / 3) * 6, 1)\n         )\n  )\nSELECT s FROM x WHERE ind=0;\x00Sudoku with VALUES 'digits'\x00WITH RECURSIVE\n  input(sud) AS (VALUES(?1)),\n  digits(z,lp) AS (VALUES('1',1),('2',2),('3',3),('4',4),('5',5),\n                         ('6',6),('7',7),('8',8),('9',9)),\n  x(s, ind) AS (\n    SELECT sud, instr(sud, '.') FROM input\n    UNION ALL\n    SELECT\n      substr(s, 1, ind-1) || z || substr(s, ind+1),\n      instr( substr(s, 1, ind-1) || z || substr(s, ind+1), '.' )\n     FROM x, digits AS z\n    WHERE ind>0\n      AND NOT EXISTS (\n            SELECT 1\n              FROM digits AS lp\n             WHERE z.z = substr(s, ((ind-1)/9)*9 + lp, 1)\n                OR z.z = substr(s, ((ind-1)%%9) + (lp-1)*9 + 1, 1)\n                OR z.z = substr(s, (((ind-1)/3) %% 3) * 3\n                        + ((ind-1)/27) * 27 + lp\n                        + ((lp-1) / 3) * 6, 1)\n         )\n  )\nSELECT s FROM x WHERE ind=0;\x00Mandelbrot Set with spacing=%f\x00WITH RECURSIVE \n  xaxis(x) AS (VALUES(-2.0) UNION ALL SELECT x+?1 FROM xaxis WHERE x<1.2),\n  yaxis(y) AS (VALUES(-1.0) UNION ALL SELECT y+?2 FROM yaxis WHERE y<1.0),\n  m(iter, cx, cy, x, y) AS (\n    SELECT 0, x, y, 0.0, 0.0 FROM xaxis, yaxis\n    UNION ALL\n    SELECT iter+1, cx, cy, x*x-y*y + cx, 2.0*x*y + cy FROM m \n     WHERE (x*x + y*y) < 4.0 AND iter<28\n  ),\n  m2(iter, cx, cy) AS (\n    SELECT max(iter), cx, cy FROM m GROUP BY cx, cy\n  ),\n  a(t) AS (\n    SELECT group_concat( substr(' .+*#', 1+min(iter/7,4), 1), '') \n    FROM m2 GROUP BY cy\n  )\nSELECT group_concat(rtrim(t),x'0a') FROM a;\x00EXCEPT operator on %d-element tables\x00WITH RECURSIVE \n  z1(x) AS (VALUES(2) UNION ALL SELECT x+2 FROM z1 WHERE x<%d),\n  z2(y) AS (VALUES(3) UNION ALL SELECT y+3 FROM z2 WHERE y<%d)\nSELECT count(x), avg(x) FROM (\n  SELECT x FROM z1 EXCEPT SELECT y FROM z2 ORDER BY 1\n);\x00534...9..67.195....98....6.8...6...34..8.3..1....2...6.6....28....419..5...28..79\x0053....9..6..195....98....6.8...6...34..8.3..1....2...6.6....28....419..5....8..79\x0053.......6..195....98....6.8...6...34..8.3..1....2...6.6....28....419..5....8..79\x00%d.%de%d\x00Fill a table with %d FP values\x00CREATE%s TABLE z1(a REAL %s, b REAL %s);\x00INSERT INTO z1 VALUES(?1,?2); -- %d times\x00%d range queries\x00SELECT sum(b) FROM z1 WHERE a BETWEEN ?1 AND ?2\x00CREATE INDEX three times\x00CREATE INDEX t1a ON z1(a);\x00CREATE INDEX t1b ON z1(b);\x00CREATE INDEX t1ab ON z1(a,b);\x00%d indexed range queries\x00%d calls to round()\x00SELECT sum(round(a,2)+round(b,4)) FROM z1;\x00%d printf() calls\x00WITH c(fmt) AS (VALUES('%%g'),('%%e'),('%%!g'),('%%.20f'))SELECT sum(printf(fmt,a)) FROM z1, c\x00%d INSERTs into an r-tree\x00CREATE VIRTUAL TABLE rt1 USING rtree(id,x0,x1,y0,y1,z0,z1)\x00INSERT INTO rt1(id,x0,x1,y0,y1,z0,z1)VALUES(?1,?2,?3,?4,?5,?6,?7)\x00Copy from rtree to a regular table\x00CREATE TABLE z1(id INTEGER PRIMARY KEY,x0,x1,y0,y1,z0,z1)\x00INSERT INTO z1 SELECT * FROM rt1\x00%d one-dimensional intersect slice queries\x00SELECT count(*) FROM rt1 WHERE x0>=?1 AND x1<=?2\x00Verify result from 1-D intersect slice queries\x00SELECT count(*) FROM z1 WHERE x0>=?1 AND x1<=?2\x00Count disagree step %d: %d..%d.  %d vs %d\x00%d one-dimensional overlap slice queries\x00SELECT count(*) FROM rt1 WHERE y1>=?1 AND y0<=?2\x00Verify result from 1-D overlap slice queries\x00SELECT count(*) FROM z1 WHERE y1>=?1 AND y0<=?2\x00%d custom geometry callback queries\x00xslice\x00SELECT count(*) FROM rt1 WHERE id MATCH xslice(?1,?2)\x00%d three-dimensional intersect box queries\x00SELECT count(*) FROM rt1 WHERE x1>=?1 AND x0<=?2 AND y1>=?1 AND y0<=?2 AND z1>=?1 AND z0<=?2\x00%d rowid queries\x00SELECT * FROM rt1 WHERE id=?1\x00%d UPDATEs using rowid\x00UPDATE rt1 SET x0=x0+100, x1=x1+100 WHERE id=?1\x00%d UPDATEs using one-dimensional overlap\x00UPDATE rt1 SET x0=x0-100, x1=x1-100 WHERE y1>=?1 AND y0<=?1+5\x00%d DELETEs using rowid\x00DELETE FROM rt1 WHERE id=?1\x00%d DELETEs using one-dimensional overlap\x00DELETE FROM rt1 WHERE y1>=?1 AND y0<=?1+5\x00Restore deleted entries using INSERT OR IGNORE\x00INSERT OR IGNORE INTO rt1 SELECT * FROM z1\x00Fill %d rows\x00BEGIN;CREATE TABLE ZLOOKSLIKECOREDATA (  ZPK INTEGER PRIMARY KEY,  ZTERMFITTINGHOUSINGCOMMAND INTEGER,  ZBRIEFGOBYDODGERHEIGHT BLOB,  ZCAPABLETRIPDOORALMOND BLOB,  ZDEPOSITPAIRCOLLEGECOMET INTEGER,  ZFRAMEENTERSIMPLEMOUTH INTEGER,  ZHOPEFULGATEHOLECHALK INTEGER,  ZSLEEPYUSERGRANDBOWL TIMESTAMP,  ZDEWPEACHCAREERCELERY INTEGER,  ZHANGERLITHIUMDINNERMEET VARCHAR,  ZCLUBRELEASELIZARDADVICE VARCHAR,  ZCHARGECLICKHUMANEHIRE INTEGER,  ZFINGERDUEPIZZAOPTION TIMESTAMP,  ZFLYINGDOCTORTABLEMELODY BLOB,  ZLONGFINLEAVEIMAGEOIL TIMESTAMP,  ZFAMILYVISUALOWNERMATTER BLOB,  ZGOLDYOUNGINITIALNOSE FLOAT,  ZCAUSESALAMITERMCYAN BLOB,  ZSPREADMOTORBISCUITBACON FLOAT,  ZGIFTICEFISHGLUEHAIR INTEGER,  ZNOTICEPEARPOLICYJUICE TIMESTAMP,  ZBANKBUFFALORECOVERORBIT TIMESTAMP,  ZLONGDIETESSAYNATURE FLOAT,  ZACTIONRANGEELEGANTNEUTRON BLOB,  ZCADETBRIGHTPLANETBANK TIMESTAMP,  ZAIRFORGIVEHEADFROG BLOB,  ZSHARKJUSTFRUITMOVIE VARCHAR,  ZFARMERMORNINGMIRRORCONCERN BLOB,  ZWOODPOETRYCOBBLERBENCH VARCHAR,  ZHAFNIUMSCRIPTSALADMOTOR INTEGER,  ZPROBLEMCLUBPOPOVERJELLY FLOAT,  ZEIGHTLEADERWORKERMOST TIMESTAMP,  ZGLASSRESERVEBARIUMMEAL BLOB,  ZCLAMBITARUGULAFAJITA BLOB,  ZDECADEJOYOUSWAVEHABIT FLOAT,  ZCOMPANYSUMMERFIBERELF INTEGER,  ZTREATTESTQUILLCHARGE TIMESTAMP,  ZBROWBALANCEKEYCHOWDER FLOAT,  ZPEACHCOPPERDINNERLAKE FLOAT,  ZDRYWALLBEYONDBROWNBOWL VARCHAR,  ZBELLYCRASHITEMLACK BLOB,  ZTENNISCYCLEBILLOFFICER INTEGER,  ZMALLEQUIPTHANKSGLUE FLOAT,  ZMISSREPLYHUMANLIVING INTEGER,  ZKIWIVISUALPRIDEAPPLE VARCHAR,  ZWISHHITSKINMOTOR BLOB,  ZCALMRACCOONPROGRAMDEBIT VARCHAR,  ZSHINYASSISTLIVINGCRAB VARCHAR,  ZRESOLVEWRISTWRAPAPPLE VARCHAR,  ZAPPEALSIMPLESECONDHOUSING BLOB,  ZCORNERANCHORTAPEDIVER TIMESTAMP,  ZMEMORYREQUESTSOURCEBIG VARCHAR,  ZTRYFACTKEEPMILK TIMESTAMP,  ZDIVERPAINTLEATHEREASY INTEGER,  ZSORTMISTYQUOTECABBAGE BLOB,  ZTUNEGASBUFFALOCAPITAL BLOB,  ZFILLSTOPLAWJOYFUL FLOAT,  ZSTEELCAREFULPLATENUMBER FLOAT,  ZGIVEVIVIDDIVINEMEANING INTEGER,  ZTREATPACKFUTURECONVERT VARCHAR,  ZCALMLYGEMFINISHEFFECT INTEGER,  ZCABBAGESOCKEASEMINUTE BLOB,  ZPLANETFAMILYPUREMEMORY TIMESTAMP,  ZMERRYCRACKTRAINLEADER BLOB,  ZMINORWAYPAPERCLASSY TIMESTAMP,  ZEAGLELINEMINEMAIL VARCHAR,  ZRESORTYARDGREENLET TIMESTAMP,  ZYARDOREGANOVIVIDJEWEL TIMESTAMP,  ZPURECAKEVIVIDNEATLY FLOAT,  ZASKCONTACTMONITORFUN TIMESTAMP,  ZMOVEWHOGAMMAINCH VARCHAR,  ZLETTUCEBIRDMEETDEBATE TIMESTAMP,  ZGENENATURALHEARINGKITE VARCHAR,  ZMUFFINDRYERDRAWFORTUNE FLOAT,  ZGRAYSURVEYWIRELOVE FLOAT,  ZPLIERSPRINTASKOREGANO INTEGER,  ZTRAVELDRIVERCONTESTLILY INTEGER,  ZHUMORSPICESANDKIDNEY TIMESTAMP,  ZARSENICSAMPLEWAITMUON INTEGER,  ZLACEADDRESSGROUNDCAREFUL FLOAT,  ZBAMBOOMESSWASABIEVENING BLOB,  ZONERELEASEAVERAGENURSE INTEGER,  ZRADIANTWHENTRYCARD TIMESTAMP,  ZREWARDINSIDEMANGOINTENSE FLOAT,  ZNEATSTEWPARTIRON TIMESTAMP,  ZOUTSIDEPEAHENCOUNTICE TIMESTAMP,  ZCREAMEVENINGLIPBRANCH FLOAT,  ZWHALEMATHAVOCADOCOPPER FLOAT,  ZLIFEUSELEAFYBELL FLOAT,  ZWEALTHLINENGLEEFULDAY VARCHAR,  ZFACEINVITETALKGOLD BLOB,  ZWESTAMOUNTAFFECTHEARING INTEGER,  ZDELAYOUTCOMEHORNAGENCY INTEGER,  ZBIGTHINKCONVERTECONOMY BLOB,  ZBASEGOUDAREGULARFORGIVE TIMESTAMP,  ZPATTERNCLORINEGRANDCOLBY TIMESTAMP,  ZCYANBASEFEEDADROIT INTEGER,  ZCARRYFLOORMINNOWDRAGON TIMESTAMP,  ZIMAGEPENCILOTHERBOTTOM FLOAT,  ZXENONFLIGHTPALEAPPLE TIMESTAMP,  ZHERRINGJOKEFEATUREHOPEFUL FLOAT,  ZCAPYEARLYRIVETBRUSH FLOAT,  ZAGEREEDFROGBASKET VARCHAR,  ZUSUALBODYHALIBUTDIAMOND VARCHAR,  ZFOOTTAPWORDENTRY VARCHAR,  ZDISHKEEPBLESTMONITOR FLOAT,  ZBROADABLESOLIDCASUAL INTEGER,  ZSQUAREGLEEFULCHILDLIGHT INTEGER,  ZHOLIDAYHEADPONYDETAIL INTEGER,  ZGENERALRESORTSKYOPEN TIMESTAMP,  ZGLADSPRAYKIDNEYGUPPY VARCHAR,  ZSWIMHEAVYMENTIONKIND BLOB,  ZMESSYSULFURDREAMFESTIVE BLOB,  ZSKYSKYCLASSICBRIEF VARCHAR,  ZDILLASKHOKILEMON FLOAT,  ZJUNIORSHOWPRESSNOVA FLOAT,  ZSIZETOEAWARDFRESH TIMESTAMP,  ZKEYFAILAPRICOTMETAL VARCHAR,  ZHANDYREPAIRPROTONAIRPORT VARCHAR,  ZPOSTPROTEINHANDLEACTOR BLOB);\x00INSERT INTO ZLOOKSLIKECOREDATA(ZPK,ZAIRFORGIVEHEADFROG,ZGIFTICEFISHGLUEHAIR,ZDELAYOUTCOMEHORNAGENCY,ZSLEEPYUSERGRANDBOWL,ZGLASSRESERVEBARIUMMEAL,ZBRIEFGOBYDODGERHEIGHT,ZBAMBOOMESSWASABIEVENING,ZFARMERMORNINGMIRRORCONCERN,ZTREATPACKFUTURECONVERT,ZCAUSESALAMITERMCYAN,ZCALMRACCOONPROGRAMDEBIT,ZHOLIDAYHEADPONYDETAIL,ZWOODPOETRYCOBBLERBENCH,ZHAFNIUMSCRIPTSALADMOTOR,ZUSUALBODYHALIBUTDIAMOND,ZOUTSIDEPEAHENCOUNTICE,ZDIVERPAINTLEATHEREASY,ZWESTAMOUNTAFFECTHEARING,ZSIZETOEAWARDFRESH,ZDEWPEACHCAREERCELERY,ZSTEELCAREFULPLATENUMBER,ZCYANBASEFEEDADROIT,ZCALMLYGEMFINISHEFFECT,ZHANDYREPAIRPROTONAIRPORT,ZGENENATURALHEARINGKITE,ZBROADABLESOLIDCASUAL,ZPOSTPROTEINHANDLEACTOR,ZLACEADDRESSGROUNDCAREFUL,ZIMAGEPENCILOTHERBOTTOM,ZPROBLEMCLUBPOPOVERJELLY,ZPATTERNCLORINEGRANDCOLBY,ZNEATSTEWPARTIRON,ZAPPEALSIMPLESECONDHOUSING,ZMOVEWHOGAMMAINCH,ZTENNISCYCLEBILLOFFICER,ZSHARKJUSTFRUITMOVIE,ZKEYFAILAPRICOTMETAL,ZCOMPANYSUMMERFIBERELF,ZTERMFITTINGHOUSINGCOMMAND,ZRESORTYARDGREENLET,ZCABBAGESOCKEASEMINUTE,ZSQUAREGLEEFULCHILDLIGHT,ZONERELEASEAVERAGENURSE,ZBIGTHINKCONVERTECONOMY,ZPLIERSPRINTASKOREGANO,ZDECADEJOYOUSWAVEHABIT,ZDRYWALLBEYONDBROWNBOWL,ZCLUBRELEASELIZARDADVICE,ZWHALEMATHAVOCADOCOPPER,ZBELLYCRASHITEMLACK,ZLETTUCEBIRDMEETDEBATE,ZCAPABLETRIPDOORALMOND,ZRADIANTWHENTRYCARD,ZCAPYEARLYRIVETBRUSH,ZAGEREEDFROGBASKET,ZSWIMHEAVYMENTIONKIND,ZTRAVELDRIVERCONTESTLILY,ZGLADSPRAYKIDNEYGUPPY,ZBANKBUFFALORECOVERORBIT,ZFINGERDUEPIZZAOPTION,ZCLAMBITARUGULAFAJITA,ZLONGFINLEAVEIMAGEOIL,ZLONGDIETESSAYNATURE,ZJUNIORSHOWPRESSNOVA,ZHOPEFULGATEHOLECHALK,ZDEPOSITPAIRCOLLEGECOMET,ZWEALTHLINENGLEEFULDAY,ZFILLSTOPLAWJOYFUL,ZTUNEGASBUFFALOCAPITAL,ZGRAYSURVEYWIRELOVE,ZCORNERANCHORTAPEDIVER,ZREWARDINSIDEMANGOINTENSE,ZCADETBRIGHTPLANETBANK,ZPLANETFAMILYPUREMEMORY,ZTREATTESTQUILLCHARGE,ZCREAMEVENINGLIPBRANCH,ZSKYSKYCLASSICBRIEF,ZARSENICSAMPLEWAITMUON,ZBROWBALANCEKEYCHOWDER,ZFLYINGDOCTORTABLEMELODY,ZHANGERLITHIUMDINNERMEET,ZNOTICEPEARPOLICYJUICE,ZSHINYASSISTLIVINGCRAB,ZLIFEUSELEAFYBELL,ZFACEINVITETALKGOLD,ZGENERALRESORTSKYOPEN,ZPURECAKEVIVIDNEATLY,ZKIWIVISUALPRIDEAPPLE,ZMESSYSULFURDREAMFESTIVE,ZCHARGECLICKHUMANEHIRE,ZHERRINGJOKEFEATUREHOPEFUL,ZYARDOREGANOVIVIDJEWEL,ZFOOTTAPWORDENTRY,ZWISHHITSKINMOTOR,ZBASEGOUDAREGULARFORGIVE,ZMUFFINDRYERDRAWFORTUNE,ZACTIONRANGEELEGANTNEUTRON,ZTRYFACTKEEPMILK,ZPEACHCOPPERDINNERLAKE,ZFRAMEENTERSIMPLEMOUTH,ZMERRYCRACKTRAINLEADER,ZMEMORYREQUESTSOURCEBIG,ZCARRYFLOORMINNOWDRAGON,ZMINORWAYPAPERCLASSY,ZDILLASKHOKILEMON,ZRESOLVEWRISTWRAPAPPLE,ZASKCONTACTMONITORFUN,ZGIVEVIVIDDIVINEMEANING,ZEIGHTLEADERWORKERMOST,ZMISSREPLYHUMANLIVING,ZXENONFLIGHTPALEAPPLE,ZSORTMISTYQUOTECABBAGE,ZEAGLELINEMINEMAIL,ZFAMILYVISUALOWNERMATTER,ZSPREADMOTORBISCUITBACON,ZDISHKEEPBLESTMONITOR,ZMALLEQUIPTHANKSGLUE,ZGOLDYOUNGINITIALNOSE,ZHUMORSPICESANDKIDNEY)VALUES(?1,?26,?20,?93,?8,?33,?3,?81,?28,?60,?18,?47,?109,?29,?30,?104,?86,?54,?92,?117,?9,?58,?97,?61,?119,?73,?107,?120,?80,?99,?31,?96,?85,?50,?71,?42,?27,?118,?36,?2,?67,?62,?108,?82,?94,?76,?35,?40,?11,?88,?41,?72,?4,?83,?102,?103,?112,?77,?111,?22,?13,?34,?15,?23,?116,?7,?5,?90,?57,?56,?75,?51,?84,?25,?63,?37,?87,?114,?79,?38,?14,?10,?21,?48,?89,?91,?110,?69,?45,?113,?12,?101,?68,?105,?46,?95,?74,?24,?53,?39,?6,?64,?52,?98,?65,?115,?49,?70,?59,?32,?44,?100,?55,?66,?16,?19,?106,?43,?17,?78);\x00Query %d rows by rowid\x00SELECT ZCYANBASEFEEDADROIT,ZJUNIORSHOWPRESSNOVA,ZCAUSESALAMITERMCYAN,ZHOPEFULGATEHOLECHALK,ZHUMORSPICESANDKIDNEY,ZSWIMHEAVYMENTIONKIND,ZMOVEWHOGAMMAINCH,ZAPPEALSIMPLESECONDHOUSING,ZHAFNIUMSCRIPTSALADMOTOR,ZNEATSTEWPARTIRON,ZLONGFINLEAVEIMAGEOIL,ZDEWPEACHCAREERCELERY,ZXENONFLIGHTPALEAPPLE,ZCALMRACCOONPROGRAMDEBIT,ZUSUALBODYHALIBUTDIAMOND,ZTRYFACTKEEPMILK,ZWEALTHLINENGLEEFULDAY,ZLONGDIETESSAYNATURE,ZLIFEUSELEAFYBELL,ZTREATPACKFUTURECONVERT,ZMEMORYREQUESTSOURCEBIG,ZYARDOREGANOVIVIDJEWEL,ZDEPOSITPAIRCOLLEGECOMET,ZSLEEPYUSERGRANDBOWL,ZBRIEFGOBYDODGERHEIGHT,ZCLUBRELEASELIZARDADVICE,ZCAPABLETRIPDOORALMOND,ZDRYWALLBEYONDBROWNBOWL,ZASKCONTACTMONITORFUN,ZKIWIVISUALPRIDEAPPLE,ZNOTICEPEARPOLICYJUICE,ZPEACHCOPPERDINNERLAKE,ZSTEELCAREFULPLATENUMBER,ZGLADSPRAYKIDNEYGUPPY,ZCOMPANYSUMMERFIBERELF,ZTENNISCYCLEBILLOFFICER,ZIMAGEPENCILOTHERBOTTOM,ZWESTAMOUNTAFFECTHEARING,ZDIVERPAINTLEATHEREASY,ZSKYSKYCLASSICBRIEF,ZMESSYSULFURDREAMFESTIVE,ZMERRYCRACKTRAINLEADER,ZBROADABLESOLIDCASUAL,ZGLASSRESERVEBARIUMMEAL,ZTUNEGASBUFFALOCAPITAL,ZBANKBUFFALORECOVERORBIT,ZTREATTESTQUILLCHARGE,ZBAMBOOMESSWASABIEVENING,ZREWARDINSIDEMANGOINTENSE,ZEAGLELINEMINEMAIL,ZCALMLYGEMFINISHEFFECT,ZKEYFAILAPRICOTMETAL,ZFINGERDUEPIZZAOPTION,ZCADETBRIGHTPLANETBANK,ZGOLDYOUNGINITIALNOSE,ZMISSREPLYHUMANLIVING,ZEIGHTLEADERWORKERMOST,ZFRAMEENTERSIMPLEMOUTH,ZBIGTHINKCONVERTECONOMY,ZFACEINVITETALKGOLD,ZPOSTPROTEINHANDLEACTOR,ZHERRINGJOKEFEATUREHOPEFUL,ZCABBAGESOCKEASEMINUTE,ZMUFFINDRYERDRAWFORTUNE,ZPROBLEMCLUBPOPOVERJELLY,ZGIVEVIVIDDIVINEMEANING,ZGENENATURALHEARINGKITE,ZGENERALRESORTSKYOPEN,ZLETTUCEBIRDMEETDEBATE,ZBASEGOUDAREGULARFORGIVE,ZCHARGECLICKHUMANEHIRE,ZPLANETFAMILYPUREMEMORY,ZMINORWAYPAPERCLASSY,ZCAPYEARLYRIVETBRUSH,ZSIZETOEAWARDFRESH,ZARSENICSAMPLEWAITMUON,ZSQUAREGLEEFULCHILDLIGHT,ZSHINYASSISTLIVINGCRAB,ZCORNERANCHORTAPEDIVER,ZDECADEJOYOUSWAVEHABIT,ZTRAVELDRIVERCONTESTLILY,ZFLYINGDOCTORTABLEMELODY,ZSHARKJUSTFRUITMOVIE,ZFAMILYVISUALOWNERMATTER,ZFARMERMORNINGMIRRORCONCERN,ZGIFTICEFISHGLUEHAIR,ZOUTSIDEPEAHENCOUNTICE,ZSPREADMOTORBISCUITBACON,ZWISHHITSKINMOTOR,ZHOLIDAYHEADPONYDETAIL,ZWOODPOETRYCOBBLERBENCH,ZAIRFORGIVEHEADFROG,ZBROWBALANCEKEYCHOWDER,ZDISHKEEPBLESTMONITOR,ZCLAMBITARUGULAFAJITA,ZPLIERSPRINTASKOREGANO,ZRADIANTWHENTRYCARD,ZDELAYOUTCOMEHORNAGENCY,ZPURECAKEVIVIDNEATLY,ZPATTERNCLORINEGRANDCOLBY,ZHANDYREPAIRPROTONAIRPORT,ZAGEREEDFROGBASKET,ZSORTMISTYQUOTECABBAGE,ZFOOTTAPWORDENTRY,ZRESOLVEWRISTWRAPAPPLE,ZDILLASKHOKILEMON,ZFILLSTOPLAWJOYFUL,ZACTIONRANGEELEGANTNEUTRON,ZRESORTYARDGREENLET,ZCREAMEVENINGLIPBRANCH,ZWHALEMATHAVOCADOCOPPER,ZGRAYSURVEYWIRELOVE,ZBELLYCRASHITEMLACK,ZHANGERLITHIUMDINNERMEET,ZCARRYFLOORMINNOWDRAGON,ZMALLEQUIPTHANKSGLUE,ZTERMFITTINGHOUSINGCOMMAND,ZONERELEASEAVERAGENURSE,ZLACEADDRESSGROUNDCAREFUL FROM ZLOOKSLIKECOREDATA WHERE ZPK=?1;\x00IBBIIITIVVITBTBFBFITTFBTBVBVIFTBBFITFFVBIFIVBVVVBTVTIBBFFIVIBTBTVTTFTVTVFFIITIFBITFTTFFFVBIIBTTITFTFFVVVFIIITVBBVFFTVVB\x00BEGIN;CREATE TABLE z1(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE TABLE z2(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE TABLE t3(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE VIEW v1 AS SELECT rowid, i, t FROM z1;CREATE VIEW v2 AS SELECT rowid, i, t FROM z2;CREATE VIEW v3 AS SELECT rowid, i, t FROM t3;\x00INSERT INTO t%d VALUES(NULL,?1,?2)\x00CREATE INDEX i1 ON z1(t);CREATE INDEX i2 ON z2(t);CREATE INDEX i3 ON t3(t);COMMIT;\x00speed4p-join1\x00SELECT * FROM z1, z2, t3 WHERE z1.oid = z2.oid AND z2.oid = t3.oid\x00speed4p-join2\x00SELECT * FROM z1, z2, t3 WHERE z1.t = z2.t AND z2.t = t3.t\x00speed4p-view1\x00SELECT * FROM v%d WHERE rowid = ?\x00speed4p-table1\x00SELECT * FROM t%d WHERE rowid = ?\x00speed4p-subselect1\x00SELECT (SELECT t FROM z1 WHERE rowid = ?1),(SELECT t FROM z2 WHERE rowid = ?1),(SELECT t FROM t3 WHERE rowid = ?1)\x00speed4p-rowid-update\x00UPDATE z1 SET i=i+1 WHERE rowid=?1\x00CREATE TABLE t5(t TEXT PRIMARY KEY, i INTEGER);\x00speed4p-insert-ignore\x00INSERT OR IGNORE INTO t5 SELECT t, i FROM z1\x00CREATE TABLE log(op TEXT, r INTEGER, i INTEGER, t TEXT);CREATE TABLE t4(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);CREATE TRIGGER t4_trigger1 AFTER INSERT ON t4 BEGIN  INSERT INTO log VALUES('INSERT INTO t4', new.rowid, new.i, new.t);END;CREATE TRIGGER t4_trigger2 AFTER UPDATE ON t4 BEGIN  INSERT INTO log VALUES('UPDATE OF t4', new.rowid, new.i, new.t);END;CREATE TRIGGER t4_trigger3 AFTER DELETE ON t4 BEGIN  INSERT INTO log VALUES('DELETE OF t4', old.rowid, old.i, old.t);END;BEGIN;\x00speed4p-trigger1\x00INSERT INTO t4 VALUES(NULL, ?1, ?2)\x00speed4p-trigger2\x00UPDATE t4 SET i = ?1, t = ?2 WHERE rowid = ?3\x00speed4p-trigger3\x00DELETE FROM t4 WHERE rowid = ?1\x00DROP TABLE t4;DROP TABLE log;VACUUM;CREATE TABLE t4(rowid INTEGER PRIMARY KEY, i INTEGER, t TEXT);BEGIN;\x00speed4p-notrigger1\x00speed4p-notrigger2\x00speed4p-notrigger3\x00%5d %5d %5d %s\n\x00/proc/%d/io\x00rb\x00-- %-28s %s\x00rchar: \x00Bytes received by read():\x00wchar: \x00Bytes sent to write():\x00syscr: \x00Read() system calls:\x00syscw: \x00Write() system calls:\x00read_bytes: \x00Bytes rcvd from storage:\x00write_bytes: \x00Bytes sent to storage:\x00cancelled_write_bytes: \x00Cancelled write bytes:\x00-- Compile option: %s\n\x00main\x00-- Speedtest1 for SQLite %s %.48s\n\x00UNIQUE\x00autovacuum\x00cachesize\x00missing argument on %s\n\x00exclusive\x00checkpoint\x00explain\x00heap\x00missing arguments on %s\n\x00incrvacuum\x00journal\x00key\x00lookaside\x00memdb\x00multithread\x00nomemstat\x00mmap\x00nosync\x00notnull\x00NOT NULL\x00output\x00-\x00wb\x00cannot open \"%s\" for writing\n\x00pagesize\x00pcache\x00primarykey\x00PRIMARY KEY\x00repeat\x00reprepare\x00serialized\x00singlethread\x00sqlonly\x00shrink-memory\x00size\x00stats\x00temp\x00argument to --temp should be integer between 0 and 9\x00testset\x00trace\x00threads\x00utf16le\x00utf16be\x00verify\x00reserve\x00without-rowid\x00WITHOUT\x00STRICT\x00WITHOUT ROWID,STRICT\x00strict\x00help\x00?\x00unknown option: %s\nUse \"%s -?\" for help\n\x00surplus argument: %s\nUse \"%s -?\" for help\n\x00cannot allocate %d-byte heap\n\x00heap configuration failed: %d\n\x00cannot allocate %lld-byte pcache\n\x00pcache configuration failed: %d\n\x00:memory:\x00Cannot open database file: %s\n\x00lookaside configuration failed: %d\n\x00random\x00PRAGMA temp_store=memory\x00PRAGMA mmap_size=%d\x00PRAGMA threads=%d\x00PRAGMA key('%s')\x00PRAGMA encoding=%s\x00PRAGMA auto_vacuum=FULL\x00PRAGMA auto_vacuum=INCREMENTAL\x00PRAGMA page_size=%d\x00PRAGMA cache_size=%d\x00PRAGMA synchronous=OFF\x00PRAGMA locking_mode=EXCLUSIVE\x00PRAGMA journal_mode=%s\x00.explain\n.echo on\n\x00       Begin testset \"%s\"\n\x00debug1\x00orm\x00cte\x00fp\x00trigger\x00rtree\x00unknown testset: \"%s\"\nChoices: cte debug1 fp main orm rtree trigger\n\x00Reset the database\x00SELECT name FROM main.sqlite_master WHERE sql LIKE 'CREATE %%TABLE%%'\x00DROP TABLE main.\"%w\"\x00SELECT name FROM temp.sqlite_master WHERE sql LIKE 'CREATE %%TABLE%%'\x00PRAGMA compile_options\x00-- Lookaside Slots Used:        %d (max %d)\n\x00-- Successful lookasides:       %d\n\x00-- Lookaside size faults:       %d\n\x00-- Lookaside OOM faults:        %d\n\x00-- Pager Heap Usage:            %d bytes\n\x00-- Page cache hits:             %d\n\x00-- Page cache misses:           %d\n\x00-- Page cache writes:           %d\n\x00-- Schema Heap Usage:           %d bytes\n\x00-- Statement Heap Usage:        %d bytes\n\x00-- Memory Used (bytes):         %d (max %d)\n\x00-- Outstanding Allocations:     %d (max %d)\n\x00-- Pcache Overflow Bytes:       %d (max %d)\n\x00-- Largest Allocation:          %d bytes\n\x00-- Largest Pcache Allocation:   %d bytes\n\x00"
  3725  var ts = (*reflect.StringHeader)(unsafe.Pointer(&ts1)).Data