Login
Check-in [eeac3c6fe0]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Checked in the generated fsl_schema_*_cstr.c files to make it easier to port the build to non-Unix systems.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: eeac3c6fe017b1a95be2991cbd238cca3b2e11f2
User & Date: stephan 2021-02-11 12:49:17.306
Context
2021-02-11
12:56
Fixed a missed link in the fossil-wiki-to-markdown port. check-in: f2f497c658 user: stephan tags: trunk
12:49
Checked in the generated fsl_schema_*_cstr.c files to make it easier to port the build to non-Unix systems. check-in: eeac3c6fe0 user: stephan tags: trunk
12:42
Moved C++ and s2 bindings to bindings/{cpp,s2}. Got the C++ bindings compiling for new gcc breakage and new, stricter T-card validation. check-in: fdc5e1014e user: stephan tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to .fossil-settings/ignore-glob.
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54

*.vg
*.massif
*._out
Makefile
autosetup/jimsh0
config.log
config.make
cpp/Makefile
cpp/test
doc/Doxyfile
f-apps/Makefile
f-apps/zipped.zip
f-apps/f-acat
f-apps/f-add
f-apps/f-adiff
f-apps/f-checkin
f-apps/f-config
f-apps/f-delta
f-apps/f-event
f-apps/f-ls
f-apps/f-mfparse
f-apps/f-new

f-apps/f-query
f-apps/f-resolve
f-apps/f-rm
f-apps/f-sanity
f-apps/f-sizeof
f-apps/f-status
f-apps/f-tag
f-apps/f-timeline
f-apps/f-vdiff
f-apps/f-wiki
f-apps/f-zip
f-apps/test
include/fossil-scm/autoconfig.h
src/Makefile
src/fsl_schema_*_cstr.c
th1ish/Makefile
tools/text2c
s2/f-s2sh
*/tmp/*
doc/libfossil-API-html/*








|
|













>














<
<

|


>
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49


50
51
52
53
54
*.vg
*.massif
*._out
Makefile
autosetup/jimsh0
config.log
config.make
bindings/cpp/Makefile
bindings/cpp/test
doc/Doxyfile
f-apps/Makefile
f-apps/zipped.zip
f-apps/f-acat
f-apps/f-add
f-apps/f-adiff
f-apps/f-checkin
f-apps/f-config
f-apps/f-delta
f-apps/f-event
f-apps/f-ls
f-apps/f-mfparse
f-apps/f-new
f-apps/f-parseparty
f-apps/f-query
f-apps/f-resolve
f-apps/f-rm
f-apps/f-sanity
f-apps/f-sizeof
f-apps/f-status
f-apps/f-tag
f-apps/f-timeline
f-apps/f-vdiff
f-apps/f-wiki
f-apps/f-zip
f-apps/test
include/fossil-scm/autoconfig.h
src/Makefile


tools/text2c
bindings/s2/f-s2sh
*/tmp/*
doc/libfossil-API-html/*
compile_commands*
Changes to BUILDING-MSVC.txt.
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
These configurations will create Dll versions of libfossil.  Static libraries
are not provided at this time due to a potential, albeit unlikely, consequence
of a version mismatch issue in the sqlite used internally, and sqlite that may
be use by clients.  However, if you need static linkage, you can achieve the
same net result by using the 'amalgamation' build (which is a source
distribution).

Caveat:  presently, a few files are generated by the build system.  These
generated files are not produced in the MSVC configurations, so you'll have
to generate them separately.  Namely:
    src/fsl_schema_checkout_cstr.c
    src/fsl_schema_config_cstr.c
    src/fsl_schema_repo1_cstr.c
    src/fsl_schema_repo2_cstr.c
    src/fsl_schema_ticket_cstr.c
    src/fsl_schema_ticket_reports_cstr.c
At some point in the future, these will be in the repo, and you won't have
to perform this step.  At that time, this caveat should be removed.

Caveat:  to produce the 'amalgamation' build, you will need a build environment
with autoconf tools, such as Linux.  In that environment
./configure --disable-shared --no-long-long
cd src
make amal
This will produce three files:
    libfossil-config.h







<
<
<
<
<
<
<
<
<
<
<
<







12
13
14
15
16
17
18












19
20
21
22
23
24
25
These configurations will create Dll versions of libfossil.  Static libraries
are not provided at this time due to a potential, albeit unlikely, consequence
of a version mismatch issue in the sqlite used internally, and sqlite that may
be use by clients.  However, if you need static linkage, you can achieve the
same net result by using the 'amalgamation' build (which is a source
distribution).













Caveat:  to produce the 'amalgamation' build, you will need a build environment
with autoconf tools, such as Linux.  In that environment
./configure --disable-shared --no-long-long
cd src
make amal
This will produce three files:
    libfossil-config.h
Added src/fsl_schema_checkout_cstr.c.


























































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
/* Binary form of file ../sql/checkout.sql */
/** @page page_fsl_schema_checkout_cstr Schema: checkout.sql
@code
-- The VVAR table holds miscellanous information about the local database
-- in the form of name-value pairs.  This is similar to the VAR table
-- table in the repository except that this table holds information that
-- is specific to the local checkout.
--
-- Important Variables:
--
--     repository        Full pathname of the repository database
--     user-id           Userid to use
--
CREATE TABLE ckout.vvar(
  name TEXT PRIMARY KEY NOT NULL,  -- Primary name of the entry
  value CLOB,                      -- Content of the named parameter
  CHECK( typeof(name)='text' AND length(name)>=1 )
);

-- Each entry in the vfile table represents a single file in the
-- current checkout.
--
-- The file.rid field is 0 for files or folders that have been
-- added but not yet committed.
--
-- Vfile.chnged is 0 for unmodified files, 1 for files that have
-- been edited or which have been subjected to a 3-way merge.
-- Vfile.chnged is 2 if the file has been replaced from a different
-- version by the merge and 3 if the file has been added by a merge.
-- Vfile.chnged is 4|5 is the same as 2|3, but the operation has been
-- done by an --integrate merge.  The difference between vfile.chnged==2|4
-- and a regular add is that with vfile.chnged==2|4 we know that the
-- current version of the file is already in the repository.
--
CREATE TABLE ckout.vfile(
  id INTEGER PRIMARY KEY,           -- ID of the checked out file
  vid INTEGER REFERENCES blob,      -- The baseline this file is part of.
  chnged INT DEFAULT 0,             -- 0:unchnged 1:edited 2:m-chng 3:m-add 4:i-chng 5:i-add
  deleted BOOLEAN DEFAULT 0,        -- True if deleted
  isexe BOOLEAN,                    -- True if file should be executable
  islink BOOLEAN,                   -- True if file should be symlink
  rid INTEGER,                      -- Originally from this repository record
  mrid INTEGER,                     -- Based on this record due to a merge
  mtime INTEGER,                    -- Mtime of file on disk. sec since 1970
  pathname TEXT,                    -- Full pathname relative to root
  origname TEXT,                    -- Original pathname. NULL if unchanged
  mhash TEXT,                       -- Hash of mrid iff mrid!=rid. Added 2019-01-19.
  UNIQUE(pathname,vid)
);

-- This table holds a record of uncommitted merges in the local
-- file tree.  If a VFILE entry with id has merged with another
-- record, there is an entry in this table with (id,merge) where
-- merge is the RECORD table entry that the file merged against.
-- An id of 0 or <-3 here means the version record itself.  When
-- id==(-1) that is a cherrypick merge, id==(-2) that is a
-- backout merge and id==(-4) is a integrate merge.

CREATE TABLE ckout.vmerge(
  id INTEGER REFERENCES vfile,      -- VFILE entry that has been merged
  merge INTEGER,                    -- Merged with this record
  mhash TEXT                        -- SHA1/SHA3 hash for merge object
);
CREATE UNIQUE INDEX ckout.vmergex1 ON vmerge(id,mhash);

-- The following trigger will prevent older versions of Fossil that
-- do not know about the new vmerge.mhash column from updating the
-- vmerge table.  This must be done with a trigger, since legacy Fossil
-- uses INSERT OR IGNORE to update vmerge, and the OR IGNORE will cause
-- a NOT NULL constraint to be silently ignored.
CREATE TRIGGER ckout.vmerge_ck1 AFTER INSERT ON vmerge
WHEN new.mhash IS NULL BEGIN
  SELECT raise(FAIL,
  'trying to update a newer checkout with an older version of Fossil');
END;

-- Identifier for this file type.
-- The integer is the same as 'FSLC'.
PRAGMA application_id=252006674;
 @endcode
 @see fsl_schema_checkout()
*/
/* auto-generated code - edit at your own risk! (Good luck with that!) */
static char const fsl_schema_checkout_cstr_a[] = {
45, 45, 32, 84, 104, 101, 32, 86, 86, 65, 82, 32, 116, 97, 98, 108, 101, 32, 104, 111, 
108, 100, 115, 32, 109, 105, 115, 99, 101, 108, 108, 97, 110, 111, 117, 115, 32, 105, 110, 102, 
111, 114, 109, 97, 116, 105, 111, 110, 32, 97, 98, 111, 117, 116, 32, 116, 104, 101, 32, 108, 
111, 99, 97, 108, 32, 100, 97, 116, 97, 98, 97, 115, 101, 10, 45, 45, 32, 105, 110, 32, 
116, 104, 101, 32, 102, 111, 114, 109, 32, 111, 102, 32, 110, 97, 109, 101, 45, 118, 97, 108, 
117, 101, 32, 112, 97, 105, 114, 115, 46, 32, 32, 84, 104, 105, 115, 32, 105, 115, 32, 115, 
105, 109, 105, 108, 97, 114, 32, 116, 111, 32, 116, 104, 101, 32, 86, 65, 82, 32, 116, 97, 
98, 108, 101, 10, 45, 45, 32, 116, 97, 98, 108, 101, 32, 105, 110, 32, 116, 104, 101, 32, 
114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 32, 101, 120, 99, 101, 112, 116, 32, 116, 104, 
97, 116, 32, 116, 104, 105, 115, 32, 116, 97, 98, 108, 101, 32, 104, 111, 108, 100, 115, 32, 
105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 32, 116, 104, 97, 116, 10, 45, 45, 32, 
105, 115, 32, 115, 112, 101, 99, 105, 102, 105, 99, 32, 116, 111, 32, 116, 104, 101, 32, 108, 
111, 99, 97, 108, 32, 99, 104, 101, 99, 107, 111, 117, 116, 46, 10, 45, 45, 10, 45, 45, 
32, 73, 109, 112, 111, 114, 116, 97, 110, 116, 32, 86, 97, 114, 105, 97, 98, 108, 101, 115, 
58, 10, 45, 45, 10, 45, 45, 32, 32, 32, 32, 32, 114, 101, 112, 111, 115, 105, 116, 111, 
114, 121, 32, 32, 32, 32, 32, 32, 32, 32, 70, 117, 108, 108, 32, 112, 97, 116, 104, 110, 
97, 109, 101, 32, 111, 102, 32, 116, 104, 101, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 
121, 32, 100, 97, 116, 97, 98, 97, 115, 101, 10, 45, 45, 32, 32, 32, 32, 32, 117, 115, 
101, 114, 45, 105, 100, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 85, 115, 101, 114, 
105, 100, 32, 116, 111, 32, 117, 115, 101, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 
84, 65, 66, 76, 69, 32, 99, 107, 111, 117, 116, 46, 118, 118, 97, 114, 40, 10, 32, 32, 
110, 97, 109, 101, 32, 84, 69, 88, 84, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 
89, 32, 78, 79, 84, 32, 78, 85, 76, 76, 44, 32, 32, 45, 45, 32, 80, 114, 105, 109, 
97, 114, 121, 32, 110, 97, 109, 101, 32, 111, 102, 32, 116, 104, 101, 32, 101, 110, 116, 114, 
121, 10, 32, 32, 118, 97, 108, 117, 101, 32, 67, 76, 79, 66, 44, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
67, 111, 110, 116, 101, 110, 116, 32, 111, 102, 32, 116, 104, 101, 32, 110, 97, 109, 101, 100, 
32, 112, 97, 114, 97, 109, 101, 116, 101, 114, 10, 32, 32, 67, 72, 69, 67, 75, 40, 32, 
116, 121, 112, 101, 111, 102, 40, 110, 97, 109, 101, 41, 61, 39, 116, 101, 120, 116, 39, 32, 
65, 78, 68, 32, 108, 101, 110, 103, 116, 104, 40, 110, 97, 109, 101, 41, 62, 61, 49, 32, 
41, 10, 41, 59, 10, 10, 45, 45, 32, 69, 97, 99, 104, 32, 101, 110, 116, 114, 121, 32, 
105, 110, 32, 116, 104, 101, 32, 118, 102, 105, 108, 101, 32, 116, 97, 98, 108, 101, 32, 114, 
101, 112, 114, 101, 115, 101, 110, 116, 115, 32, 97, 32, 115, 105, 110, 103, 108, 101, 32, 102, 
105, 108, 101, 32, 105, 110, 32, 116, 104, 101, 10, 45, 45, 32, 99, 117, 114, 114, 101, 110, 
116, 32, 99, 104, 101, 99, 107, 111, 117, 116, 46, 10, 45, 45, 10, 45, 45, 32, 84, 104, 
101, 32, 102, 105, 108, 101, 46, 114, 105, 100, 32, 102, 105, 101, 108, 100, 32, 105, 115, 32, 
48, 32, 102, 111, 114, 32, 102, 105, 108, 101, 115, 32, 111, 114, 32, 102, 111, 108, 100, 101, 
114, 115, 32, 116, 104, 97, 116, 32, 104, 97, 118, 101, 32, 98, 101, 101, 110, 10, 45, 45, 
32, 97, 100, 100, 101, 100, 32, 98, 117, 116, 32, 110, 111, 116, 32, 121, 101, 116, 32, 99, 
111, 109, 109, 105, 116, 116, 101, 100, 46, 10, 45, 45, 10, 45, 45, 32, 86, 102, 105, 108, 
101, 46, 99, 104, 110, 103, 101, 100, 32, 105, 115, 32, 48, 32, 102, 111, 114, 32, 117, 110, 
109, 111, 100, 105, 102, 105, 101, 100, 32, 102, 105, 108, 101, 115, 44, 32, 49, 32, 102, 111, 
114, 32, 102, 105, 108, 101, 115, 32, 116, 104, 97, 116, 32, 104, 97, 118, 101, 10, 45, 45, 
32, 98, 101, 101, 110, 32, 101, 100, 105, 116, 101, 100, 32, 111, 114, 32, 119, 104, 105, 99, 
104, 32, 104, 97, 118, 101, 32, 98, 101, 101, 110, 32, 115, 117, 98, 106, 101, 99, 116, 101, 
100, 32, 116, 111, 32, 97, 32, 51, 45, 119, 97, 121, 32, 109, 101, 114, 103, 101, 46, 10, 
45, 45, 32, 86, 102, 105, 108, 101, 46, 99, 104, 110, 103, 101, 100, 32, 105, 115, 32, 50, 
32, 105, 102, 32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 104, 97, 115, 32, 98, 101, 101, 
110, 32, 114, 101, 112, 108, 97, 99, 101, 100, 32, 102, 114, 111, 109, 32, 97, 32, 100, 105, 
102, 102, 101, 114, 101, 110, 116, 10, 45, 45, 32, 118, 101, 114, 115, 105, 111, 110, 32, 98, 
121, 32, 116, 104, 101, 32, 109, 101, 114, 103, 101, 32, 97, 110, 100, 32, 51, 32, 105, 102, 
32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 104, 97, 115, 32, 98, 101, 101, 110, 32, 97, 
100, 100, 101, 100, 32, 98, 121, 32, 97, 32, 109, 101, 114, 103, 101, 46, 10, 45, 45, 32, 
86, 102, 105, 108, 101, 46, 99, 104, 110, 103, 101, 100, 32, 105, 115, 32, 52, 124, 53, 32, 
105, 115, 32, 116, 104, 101, 32, 115, 97, 109, 101, 32, 97, 115, 32, 50, 124, 51, 44, 32, 
98, 117, 116, 32, 116, 104, 101, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 32, 104, 97, 
115, 32, 98, 101, 101, 110, 10, 45, 45, 32, 100, 111, 110, 101, 32, 98, 121, 32, 97, 110, 
32, 45, 45, 105, 110, 116, 101, 103, 114, 97, 116, 101, 32, 109, 101, 114, 103, 101, 46, 32, 
32, 84, 104, 101, 32, 100, 105, 102, 102, 101, 114, 101, 110, 99, 101, 32, 98, 101, 116, 119, 
101, 101, 110, 32, 118, 102, 105, 108, 101, 46, 99, 104, 110, 103, 101, 100, 61, 61, 50, 124, 
52, 10, 45, 45, 32, 97, 110, 100, 32, 97, 32, 114, 101, 103, 117, 108, 97, 114, 32, 97, 
100, 100, 32, 105, 115, 32, 116, 104, 97, 116, 32, 119, 105, 116, 104, 32, 118, 102, 105, 108, 
101, 46, 99, 104, 110, 103, 101, 100, 61, 61, 50, 124, 52, 32, 119, 101, 32, 107, 110, 111, 
119, 32, 116, 104, 97, 116, 32, 116, 104, 101, 10, 45, 45, 32, 99, 117, 114, 114, 101, 110, 
116, 32, 118, 101, 114, 115, 105, 111, 110, 32, 111, 102, 32, 116, 104, 101, 32, 102, 105, 108, 
101, 32, 105, 115, 32, 97, 108, 114, 101, 97, 100, 121, 32, 105, 110, 32, 116, 104, 101, 32, 
114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 
69, 32, 84, 65, 66, 76, 69, 32, 99, 107, 111, 117, 116, 46, 118, 102, 105, 108, 101, 40, 
10, 32, 32, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 
89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
73, 68, 32, 111, 102, 32, 116, 104, 101, 32, 99, 104, 101, 99, 107, 101, 100, 32, 111, 117, 
116, 32, 102, 105, 108, 101, 10, 32, 32, 118, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 
32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 98, 108, 111, 98, 44, 32, 32, 32, 
32, 32, 32, 45, 45, 32, 84, 104, 101, 32, 98, 97, 115, 101, 108, 105, 110, 101, 32, 116, 
104, 105, 115, 32, 102, 105, 108, 101, 32, 105, 115, 32, 112, 97, 114, 116, 32, 111, 102, 46, 
10, 32, 32, 99, 104, 110, 103, 101, 100, 32, 73, 78, 84, 32, 68, 69, 70, 65, 85, 76, 
84, 32, 48, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
48, 58, 117, 110, 99, 104, 110, 103, 101, 100, 32, 49, 58, 101, 100, 105, 116, 101, 100, 32, 
50, 58, 109, 45, 99, 104, 110, 103, 32, 51, 58, 109, 45, 97, 100, 100, 32, 52, 58, 105, 
45, 99, 104, 110, 103, 32, 53, 58, 105, 45, 97, 100, 100, 10, 32, 32, 100, 101, 108, 101, 
116, 101, 100, 32, 66, 79, 79, 76, 69, 65, 78, 32, 68, 69, 70, 65, 85, 76, 84, 32, 
48, 44, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 84, 114, 117, 101, 32, 105, 102, 
32, 100, 101, 108, 101, 116, 101, 100, 10, 32, 32, 105, 115, 101, 120, 101, 32, 66, 79, 79, 
76, 69, 65, 78, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 45, 45, 32, 84, 114, 117, 101, 32, 105, 102, 32, 102, 105, 108, 101, 
32, 115, 104, 111, 117, 108, 100, 32, 98, 101, 32, 101, 120, 101, 99, 117, 116, 97, 98, 108, 
101, 10, 32, 32, 105, 115, 108, 105, 110, 107, 32, 66, 79, 79, 76, 69, 65, 78, 44, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 
32, 84, 114, 117, 101, 32, 105, 102, 32, 102, 105, 108, 101, 32, 115, 104, 111, 117, 108, 100, 
32, 98, 101, 32, 115, 121, 109, 108, 105, 110, 107, 10, 32, 32, 114, 105, 100, 32, 73, 78, 
84, 69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 79, 114, 105, 103, 105, 110, 97, 108, 108, 
121, 32, 102, 114, 111, 109, 32, 116, 104, 105, 115, 32, 114, 101, 112, 111, 115, 105, 116, 111, 
114, 121, 32, 114, 101, 99, 111, 114, 100, 10, 32, 32, 109, 114, 105, 100, 32, 73, 78, 84, 
69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 45, 45, 32, 66, 97, 115, 101, 100, 32, 111, 110, 32, 116, 104, 
105, 115, 32, 114, 101, 99, 111, 114, 100, 32, 100, 117, 101, 32, 116, 111, 32, 97, 32, 109, 
101, 114, 103, 101, 10, 32, 32, 109, 116, 105, 109, 101, 32, 73, 78, 84, 69, 71, 69, 82, 
44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 45, 45, 32, 77, 116, 105, 109, 101, 32, 111, 102, 32, 102, 105, 108, 101, 32, 111, 110, 
32, 100, 105, 115, 107, 46, 32, 115, 101, 99, 32, 115, 105, 110, 99, 101, 32, 49, 57, 55, 
48, 10, 32, 32, 112, 97, 116, 104, 110, 97, 109, 101, 32, 84, 69, 88, 84, 44, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 
32, 70, 117, 108, 108, 32, 112, 97, 116, 104, 110, 97, 109, 101, 32, 114, 101, 108, 97, 116, 
105, 118, 101, 32, 116, 111, 32, 114, 111, 111, 116, 10, 32, 32, 111, 114, 105, 103, 110, 97, 
109, 101, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 79, 114, 105, 103, 105, 110, 97, 108, 32, 
112, 97, 116, 104, 110, 97, 109, 101, 46, 32, 78, 85, 76, 76, 32, 105, 102, 32, 117, 110, 
99, 104, 97, 110, 103, 101, 100, 10, 32, 32, 109, 104, 97, 115, 104, 32, 84, 69, 88, 84, 
44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 45, 45, 32, 72, 97, 115, 104, 32, 111, 102, 32, 109, 114, 105, 100, 32, 
105, 102, 102, 32, 109, 114, 105, 100, 33, 61, 114, 105, 100, 46, 32, 65, 100, 100, 101, 100, 
32, 50, 48, 49, 57, 45, 48, 49, 45, 49, 57, 46, 10, 32, 32, 85, 78, 73, 81, 85, 
69, 40, 112, 97, 116, 104, 110, 97, 109, 101, 44, 118, 105, 100, 41, 10, 41, 59, 10, 10, 
45, 45, 32, 84, 104, 105, 115, 32, 116, 97, 98, 108, 101, 32, 104, 111, 108, 100, 115, 32, 
97, 32, 114, 101, 99, 111, 114, 100, 32, 111, 102, 32, 117, 110, 99, 111, 109, 109, 105, 116, 
116, 101, 100, 32, 109, 101, 114, 103, 101, 115, 32, 105, 110, 32, 116, 104, 101, 32, 108, 111, 
99, 97, 108, 10, 45, 45, 32, 102, 105, 108, 101, 32, 116, 114, 101, 101, 46, 32, 32, 73, 
102, 32, 97, 32, 86, 70, 73, 76, 69, 32, 101, 110, 116, 114, 121, 32, 119, 105, 116, 104, 
32, 105, 100, 32, 104, 97, 115, 32, 109, 101, 114, 103, 101, 100, 32, 119, 105, 116, 104, 32, 
97, 110, 111, 116, 104, 101, 114, 10, 45, 45, 32, 114, 101, 99, 111, 114, 100, 44, 32, 116, 
104, 101, 114, 101, 32, 105, 115, 32, 97, 110, 32, 101, 110, 116, 114, 121, 32, 105, 110, 32, 
116, 104, 105, 115, 32, 116, 97, 98, 108, 101, 32, 119, 105, 116, 104, 32, 40, 105, 100, 44, 
109, 101, 114, 103, 101, 41, 32, 119, 104, 101, 114, 101, 10, 45, 45, 32, 109, 101, 114, 103, 
101, 32, 105, 115, 32, 116, 104, 101, 32, 82, 69, 67, 79, 82, 68, 32, 116, 97, 98, 108, 
101, 32, 101, 110, 116, 114, 121, 32, 116, 104, 97, 116, 32, 116, 104, 101, 32, 102, 105, 108, 
101, 32, 109, 101, 114, 103, 101, 100, 32, 97, 103, 97, 105, 110, 115, 116, 46, 10, 45, 45, 
32, 65, 110, 32, 105, 100, 32, 111, 102, 32, 48, 32, 111, 114, 32, 60, 45, 51, 32, 104, 
101, 114, 101, 32, 109, 101, 97, 110, 115, 32, 116, 104, 101, 32, 118, 101, 114, 115, 105, 111, 
110, 32, 114, 101, 99, 111, 114, 100, 32, 105, 116, 115, 101, 108, 102, 46, 32, 32, 87, 104, 
101, 110, 10, 45, 45, 32, 105, 100, 61, 61, 40, 45, 49, 41, 32, 116, 104, 97, 116, 32, 
105, 115, 32, 97, 32, 99, 104, 101, 114, 114, 121, 112, 105, 99, 107, 32, 109, 101, 114, 103, 
101, 44, 32, 105, 100, 61, 61, 40, 45, 50, 41, 32, 116, 104, 97, 116, 32, 105, 115, 32, 
97, 10, 45, 45, 32, 98, 97, 99, 107, 111, 117, 116, 32, 109, 101, 114, 103, 101, 32, 97, 
110, 100, 32, 105, 100, 61, 61, 40, 45, 52, 41, 32, 105, 115, 32, 97, 32, 105, 110, 116, 
101, 103, 114, 97, 116, 101, 32, 109, 101, 114, 103, 101, 46, 10, 10, 67, 82, 69, 65, 84, 
69, 32, 84, 65, 66, 76, 69, 32, 99, 107, 111, 117, 116, 46, 118, 109, 101, 114, 103, 101, 
40, 10, 32, 32, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 70, 69, 82, 
69, 78, 67, 69, 83, 32, 118, 102, 105, 108, 101, 44, 32, 32, 32, 32, 32, 32, 45, 45, 
32, 86, 70, 73, 76, 69, 32, 101, 110, 116, 114, 121, 32, 116, 104, 97, 116, 32, 104, 97, 
115, 32, 98, 101, 101, 110, 32, 109, 101, 114, 103, 101, 100, 10, 32, 32, 109, 101, 114, 103, 
101, 32, 73, 78, 84, 69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 77, 101, 114, 103, 101, 100, 32, 
119, 105, 116, 104, 32, 116, 104, 105, 115, 32, 114, 101, 99, 111, 114, 100, 10, 32, 32, 109, 
104, 97, 115, 104, 32, 84, 69, 88, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 83, 72, 65, 49, 
47, 83, 72, 65, 51, 32, 104, 97, 115, 104, 32, 102, 111, 114, 32, 109, 101, 114, 103, 101, 
32, 111, 98, 106, 101, 99, 116, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 85, 78, 
73, 81, 85, 69, 32, 73, 78, 68, 69, 88, 32, 99, 107, 111, 117, 116, 46, 118, 109, 101, 
114, 103, 101, 120, 49, 32, 79, 78, 32, 118, 109, 101, 114, 103, 101, 40, 105, 100, 44, 109, 
104, 97, 115, 104, 41, 59, 10, 10, 45, 45, 32, 84, 104, 101, 32, 102, 111, 108, 108, 111, 
119, 105, 110, 103, 32, 116, 114, 105, 103, 103, 101, 114, 32, 119, 105, 108, 108, 32, 112, 114, 
101, 118, 101, 110, 116, 32, 111, 108, 100, 101, 114, 32, 118, 101, 114, 115, 105, 111, 110, 115, 
32, 111, 102, 32, 70, 111, 115, 115, 105, 108, 32, 116, 104, 97, 116, 10, 45, 45, 32, 100, 
111, 32, 110, 111, 116, 32, 107, 110, 111, 119, 32, 97, 98, 111, 117, 116, 32, 116, 104, 101, 
32, 110, 101, 119, 32, 118, 109, 101, 114, 103, 101, 46, 109, 104, 97, 115, 104, 32, 99, 111, 
108, 117, 109, 110, 32, 102, 114, 111, 109, 32, 117, 112, 100, 97, 116, 105, 110, 103, 32, 116, 
104, 101, 10, 45, 45, 32, 118, 109, 101, 114, 103, 101, 32, 116, 97, 98, 108, 101, 46, 32, 
32, 84, 104, 105, 115, 32, 109, 117, 115, 116, 32, 98, 101, 32, 100, 111, 110, 101, 32, 119, 
105, 116, 104, 32, 97, 32, 116, 114, 105, 103, 103, 101, 114, 44, 32, 115, 105, 110, 99, 101, 
32, 108, 101, 103, 97, 99, 121, 32, 70, 111, 115, 115, 105, 108, 10, 45, 45, 32, 117, 115, 
101, 115, 32, 73, 78, 83, 69, 82, 84, 32, 79, 82, 32, 73, 71, 78, 79, 82, 69, 32, 
116, 111, 32, 117, 112, 100, 97, 116, 101, 32, 118, 109, 101, 114, 103, 101, 44, 32, 97, 110, 
100, 32, 116, 104, 101, 32, 79, 82, 32, 73, 71, 78, 79, 82, 69, 32, 119, 105, 108, 108, 
32, 99, 97, 117, 115, 101, 10, 45, 45, 32, 97, 32, 78, 79, 84, 32, 78, 85, 76, 76, 
32, 99, 111, 110, 115, 116, 114, 97, 105, 110, 116, 32, 116, 111, 32, 98, 101, 32, 115, 105, 
108, 101, 110, 116, 108, 121, 32, 105, 103, 110, 111, 114, 101, 100, 46, 10, 67, 82, 69, 65, 
84, 69, 32, 84, 82, 73, 71, 71, 69, 82, 32, 99, 107, 111, 117, 116, 46, 118, 109, 101, 
114, 103, 101, 95, 99, 107, 49, 32, 65, 70, 84, 69, 82, 32, 73, 78, 83, 69, 82, 84, 
32, 79, 78, 32, 118, 109, 101, 114, 103, 101, 10, 87, 72, 69, 78, 32, 110, 101, 119, 46, 
109, 104, 97, 115, 104, 32, 73, 83, 32, 78, 85, 76, 76, 32, 66, 69, 71, 73, 78, 10, 
32, 32, 83, 69, 76, 69, 67, 84, 32, 114, 97, 105, 115, 101, 40, 70, 65, 73, 76, 44, 
10, 32, 32, 39, 116, 114, 121, 105, 110, 103, 32, 116, 111, 32, 117, 112, 100, 97, 116, 101, 
32, 97, 32, 110, 101, 119, 101, 114, 32, 99, 104, 101, 99, 107, 111, 117, 116, 32, 119, 105, 
116, 104, 32, 97, 110, 32, 111, 108, 100, 101, 114, 32, 118, 101, 114, 115, 105, 111, 110, 32, 
111, 102, 32, 70, 111, 115, 115, 105, 108, 39, 41, 59, 10, 69, 78, 68, 59, 10, 10, 45, 
45, 32, 73, 100, 101, 110, 116, 105, 102, 105, 101, 114, 32, 102, 111, 114, 32, 116, 104, 105, 
115, 32, 102, 105, 108, 101, 32, 116, 121, 112, 101, 46, 10, 45, 45, 32, 84, 104, 101, 32, 
105, 110, 116, 101, 103, 101, 114, 32, 105, 115, 32, 116, 104, 101, 32, 115, 97, 109, 101, 32, 
97, 115, 32, 39, 70, 83, 76, 67, 39, 46, 10, 80, 82, 65, 71, 77, 65, 32, 97, 112, 
112, 108, 105, 99, 97, 116, 105, 111, 110, 95, 105, 100, 61, 50, 53, 50, 48, 48, 54, 54, 
55, 52, 59, 10, 
0};
char const * fsl_schema_checkout_cstr = fsl_schema_checkout_cstr_a;
/* end of ../sql/checkout.sql */
Added src/fsl_schema_config_cstr.c.














































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* Binary form of file ../sql/config.sql */
/** @page page_fsl_schema_config_cstr Schema: config.sql
@code
-- This file contains the schema for the database that is kept in the
-- ~/.fossil file and that stores information about the users setup.
--
CREATE TABLE cfg.global_config(
  name TEXT PRIMARY KEY,
  value TEXT
);

-- Identifier for this file type.
-- The integer is the same as 'FSLG'.
PRAGMA application_id=252006675;
 @endcode
 @see fsl_schema_config()
*/
/* auto-generated code - edit at your own risk! (Good luck with that!) */
static char const fsl_schema_config_cstr_a[] = {
45, 45, 32, 84, 104, 105, 115, 32, 102, 105, 108, 101, 32, 99, 111, 110, 116, 97, 105, 110, 
115, 32, 116, 104, 101, 32, 115, 99, 104, 101, 109, 97, 32, 102, 111, 114, 32, 116, 104, 101, 
32, 100, 97, 116, 97, 98, 97, 115, 101, 32, 116, 104, 97, 116, 32, 105, 115, 32, 107, 101, 
112, 116, 32, 105, 110, 32, 116, 104, 101, 10, 45, 45, 32, 126, 47, 46, 102, 111, 115, 115, 
105, 108, 32, 102, 105, 108, 101, 32, 97, 110, 100, 32, 116, 104, 97, 116, 32, 115, 116, 111, 
114, 101, 115, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 32, 97, 98, 111, 117, 
116, 32, 116, 104, 101, 32, 117, 115, 101, 114, 115, 32, 115, 101, 116, 117, 112, 46, 10, 45, 
45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 99, 102, 103, 46, 103, 
108, 111, 98, 97, 108, 95, 99, 111, 110, 102, 105, 103, 40, 10, 32, 32, 110, 97, 109, 101, 
32, 84, 69, 88, 84, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 10, 32, 
32, 118, 97, 108, 117, 101, 32, 84, 69, 88, 84, 10, 41, 59, 10, 10, 45, 45, 32, 73, 
100, 101, 110, 116, 105, 102, 105, 101, 114, 32, 102, 111, 114, 32, 116, 104, 105, 115, 32, 102, 
105, 108, 101, 32, 116, 121, 112, 101, 46, 10, 45, 45, 32, 84, 104, 101, 32, 105, 110, 116, 
101, 103, 101, 114, 32, 105, 115, 32, 116, 104, 101, 32, 115, 97, 109, 101, 32, 97, 115, 32, 
39, 70, 83, 76, 71, 39, 46, 10, 80, 82, 65, 71, 77, 65, 32, 97, 112, 112, 108, 105, 
99, 97, 116, 105, 111, 110, 95, 105, 100, 61, 50, 53, 50, 48, 48, 54, 54, 55, 53, 59, 
10, 
0};
char const * fsl_schema_config_cstr = fsl_schema_config_cstr_a;
/* end of ../sql/config.sql */
Added src/fsl_schema_forum_cstr.c.














































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* Binary form of file ../sql/forum.sql */
/** @page page_fsl_schema_forum_cstr Schema: forum.sql
@code
CREATE TABLE repo.forumpost(
  fpid INTEGER PRIMARY KEY,  -- BLOB.rid for the artifact
  froot INT,                 -- fpid of the thread root
  fprev INT,                 -- Previous version of this same post
  firt INT,                  -- This post is in-reply-to
  fmtime REAL                -- When posted.  Julian day
);
CREATE INDEX repo.forumthread ON forumpost(froot,fmtime);
 @endcode
 @see fsl_schema_forum()
*/
/* auto-generated code - edit at your own risk! (Good luck with that!) */
static char const fsl_schema_forum_cstr_a[] = {
67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 102, 111, 
114, 117, 109, 112, 111, 115, 116, 40, 10, 32, 32, 102, 112, 105, 100, 32, 73, 78, 84, 69, 
71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 32, 32, 45, 45, 
32, 66, 76, 79, 66, 46, 114, 105, 100, 32, 102, 111, 114, 32, 116, 104, 101, 32, 97, 114, 
116, 105, 102, 97, 99, 116, 10, 32, 32, 102, 114, 111, 111, 116, 32, 73, 78, 84, 44, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 102, 
112, 105, 100, 32, 111, 102, 32, 116, 104, 101, 32, 116, 104, 114, 101, 97, 100, 32, 114, 111, 
111, 116, 10, 32, 32, 102, 112, 114, 101, 118, 32, 73, 78, 84, 44, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 80, 114, 101, 118, 105, 
111, 117, 115, 32, 118, 101, 114, 115, 105, 111, 110, 32, 111, 102, 32, 116, 104, 105, 115, 32, 
115, 97, 109, 101, 32, 112, 111, 115, 116, 10, 32, 32, 102, 105, 114, 116, 32, 73, 78, 84, 
44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 
45, 32, 84, 104, 105, 115, 32, 112, 111, 115, 116, 32, 105, 115, 32, 105, 110, 45, 114, 101, 
112, 108, 121, 45, 116, 111, 10, 32, 32, 102, 109, 116, 105, 109, 101, 32, 82, 69, 65, 76, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 87, 
104, 101, 110, 32, 112, 111, 115, 116, 101, 100, 46, 32, 32, 74, 117, 108, 105, 97, 110, 32, 
100, 97, 121, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 88, 32, 
114, 101, 112, 111, 46, 102, 111, 114, 117, 109, 116, 104, 114, 101, 97, 100, 32, 79, 78, 32, 
102, 111, 114, 117, 109, 112, 111, 115, 116, 40, 102, 114, 111, 111, 116, 44, 102, 109, 116, 105, 
109, 101, 41, 59, 10, 
0};
char const * fsl_schema_forum_cstr = fsl_schema_forum_cstr_a;
/* end of ../sql/forum.sql */
Added src/fsl_schema_repo1_cstr.c.












































































































































































































































































































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
/* Binary form of file ../sql/repo-static.sql */
/** @page page_fsl_schema_repo1_cstr Schema: repo-static.sql
@code
-- This file contains parts of the schema that are fixed and
-- unchanging across Fossil versions.


-- The BLOB and DELTA tables contain all records held in the repository.
--
-- The BLOB.CONTENT column is always compressed using zlib.  This
-- column might hold the full text of the record or it might hold
-- a delta that is able to reconstruct the record from some other
-- record.  If BLOB.CONTENT holds a delta, then a DELTA table entry
-- will exist for the record and that entry will point to another
-- entry that holds the source of the delta.  Deltas can be chained.
--
-- The blob and delta tables collectively hold the "global state" of
-- a Fossil repository.  
--
CREATE TABLE repo.blob(
  rid INTEGER PRIMARY KEY,        -- Record ID
  rcvid INTEGER,                  -- Origin of this record
  size INTEGER,                   -- Size of content. -1 for a phantom.
  uuid TEXT UNIQUE NOT NULL,      -- SHA1 hash of the content
  content BLOB,                   -- Compressed content of this record
  CHECK( length(uuid)>=40 AND rid>0 )
);
CREATE TABLE repo.delta(
  rid INTEGER PRIMARY KEY,                 -- Record ID
  srcid INTEGER NOT NULL REFERENCES blob   -- Record holding source document
);
CREATE INDEX repo.delta_i1 ON delta(srcid);

-------------------------------------------------------------------------
-- The BLOB and DELTA tables above hold the "global state" of a Fossil
-- project; the stuff that is normally exchanged during "sync".  The
-- "local state" of a repository is contained in the remaining tables of
-- the zRepositorySchema1 string.  
-------------------------------------------------------------------------

-- Whenever new blobs are received into the repository, an entry
-- in this table records the source of the blob.
--
CREATE TABLE repo.rcvfrom(
  rcvid INTEGER PRIMARY KEY,      -- Received-From ID
  uid INTEGER REFERENCES user,    -- User login
  mtime DATETIME,                 -- Time of receipt.  Julian day.
  nonce TEXT UNIQUE,              -- Nonce used for login
  ipaddr TEXT                     -- Remote IP address.  NULL for direct.
);

-- Information about users
--
-- The user.pw field can be either cleartext of the password, or
-- a SHA1 hash of the password.  If the user.pw field is exactly 40
-- characters long we assume it is a SHA1 hash.  Otherwise, it is
-- cleartext.  The sha1_shared_secret() routine computes the password
-- hash based on the project-code, the user login, and the cleartext
-- password.
--
CREATE TABLE repo.user(
  uid INTEGER PRIMARY KEY,        -- User ID
  login TEXT UNIQUE,              -- login name of the user
  pw TEXT,                        -- password
  cap TEXT,                       -- Capabilities of this user
  cookie TEXT,                    -- WWW login cookie
  ipaddr TEXT,                    -- IP address for which cookie is valid
  cexpire DATETIME,               -- Time when cookie expires
  info TEXT,                      -- contact information
  mtime DATE,                     -- last change.  seconds since 1970
  photo BLOB                      -- JPEG image of this user
);

-- The VAR table holds miscellanous information about the repository.
-- in the form of name-value pairs.
--
CREATE TABLE repo.config(
  name TEXT PRIMARY KEY NOT NULL,  -- Primary name of the entry
  value CLOB,                      -- Content of the named parameter
  mtime DATE,                      -- last modified.  seconds since 1970
  CHECK( typeof(name)='text' AND length(name)>=1 )
);

-- Artifacts that should not be processed are identified in the
-- "shun" table.  Artifacts that are control-file forgeries or
-- spam or artifacts whose contents violate administrative policy
-- can be shunned in order to prevent them from contaminating
-- the repository.
--
-- Shunned artifacts do not exist in the blob table.  Hence they
-- have not artifact ID (rid) and we thus must store their full
-- UUID.
--
CREATE TABLE repo.shun(
  uuid UNIQUE,          -- UUID of artifact to be shunned. Canonical form
  mtime DATE,           -- When added.  seconds since 1970
  scom TEXT             -- Optional text explaining why the shun occurred
);

-- Artifacts that should not be pushed are stored in the "private"
-- table.  Private artifacts are omitted from the "unclustered" and
-- "unsent" tables.
--
CREATE TABLE repo.private(rid INTEGER PRIMARY KEY);

-- An entry in this table describes a database query that generates a
-- table of tickets.
--
CREATE TABLE repo.reportfmt(
   rn INTEGER PRIMARY KEY,  -- Report number
   owner TEXT,              -- Owner of this report format (not used)
   title TEXT UNIQUE,       -- Title of this report
   mtime DATE,              -- Last modified.  seconds since 1970
   cols TEXT,               -- A color-key specification
   sqlcode TEXT             -- An SQL SELECT statement for this report
);

-- Some ticket content (such as the originators email address or contact
-- information) needs to be obscured to protect privacy.  This is achieved
-- by storing an SHA1 hash of the content.  For display, the hash is
-- mapped back into the original text using this table.  
--
-- This table contains sensitive information and should not be shared
-- with unauthorized users.
--
CREATE TABLE repo.concealed(
  hash TEXT PRIMARY KEY,    -- The SHA1 hash of content
  mtime DATE,               -- Time created.  Seconds since 1970
  content TEXT              -- Content intended to be concealed
);

-- The application ID helps the unix "file" command to identify the
-- database as a fossil repository.
PRAGMA application_id=252006673;
 @endcode
 @see fsl_schema_repo1()
*/
/* auto-generated code - edit at your own risk! (Good luck with that!) */
static char const fsl_schema_repo1_cstr_a[] = {
45, 45, 32, 84, 104, 105, 115, 32, 102, 105, 108, 101, 32, 99, 111, 110, 116, 97, 105, 110, 
115, 32, 112, 97, 114, 116, 115, 32, 111, 102, 32, 116, 104, 101, 32, 115, 99, 104, 101, 109, 
97, 32, 116, 104, 97, 116, 32, 97, 114, 101, 32, 102, 105, 120, 101, 100, 32, 97, 110, 100, 
10, 45, 45, 32, 117, 110, 99, 104, 97, 110, 103, 105, 110, 103, 32, 97, 99, 114, 111, 115, 
115, 32, 70, 111, 115, 115, 105, 108, 32, 118, 101, 114, 115, 105, 111, 110, 115, 46, 10, 10, 
10, 45, 45, 32, 84, 104, 101, 32, 66, 76, 79, 66, 32, 97, 110, 100, 32, 68, 69, 76, 
84, 65, 32, 116, 97, 98, 108, 101, 115, 32, 99, 111, 110, 116, 97, 105, 110, 32, 97, 108, 
108, 32, 114, 101, 99, 111, 114, 100, 115, 32, 104, 101, 108, 100, 32, 105, 110, 32, 116, 104, 
101, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 46, 10, 45, 45, 10, 45, 45, 32, 
84, 104, 101, 32, 66, 76, 79, 66, 46, 67, 79, 78, 84, 69, 78, 84, 32, 99, 111, 108, 
117, 109, 110, 32, 105, 115, 32, 97, 108, 119, 97, 121, 115, 32, 99, 111, 109, 112, 114, 101, 
115, 115, 101, 100, 32, 117, 115, 105, 110, 103, 32, 122, 108, 105, 98, 46, 32, 32, 84, 104, 
105, 115, 10, 45, 45, 32, 99, 111, 108, 117, 109, 110, 32, 109, 105, 103, 104, 116, 32, 104, 
111, 108, 100, 32, 116, 104, 101, 32, 102, 117, 108, 108, 32, 116, 101, 120, 116, 32, 111, 102, 
32, 116, 104, 101, 32, 114, 101, 99, 111, 114, 100, 32, 111, 114, 32, 105, 116, 32, 109, 105, 
103, 104, 116, 32, 104, 111, 108, 100, 10, 45, 45, 32, 97, 32, 100, 101, 108, 116, 97, 32, 
116, 104, 97, 116, 32, 105, 115, 32, 97, 98, 108, 101, 32, 116, 111, 32, 114, 101, 99, 111, 
110, 115, 116, 114, 117, 99, 116, 32, 116, 104, 101, 32, 114, 101, 99, 111, 114, 100, 32, 102, 
114, 111, 109, 32, 115, 111, 109, 101, 32, 111, 116, 104, 101, 114, 10, 45, 45, 32, 114, 101, 
99, 111, 114, 100, 46, 32, 32, 73, 102, 32, 66, 76, 79, 66, 46, 67, 79, 78, 84, 69, 
78, 84, 32, 104, 111, 108, 100, 115, 32, 97, 32, 100, 101, 108, 116, 97, 44, 32, 116, 104, 
101, 110, 32, 97, 32, 68, 69, 76, 84, 65, 32, 116, 97, 98, 108, 101, 32, 101, 110, 116, 
114, 121, 10, 45, 45, 32, 119, 105, 108, 108, 32, 101, 120, 105, 115, 116, 32, 102, 111, 114, 
32, 116, 104, 101, 32, 114, 101, 99, 111, 114, 100, 32, 97, 110, 100, 32, 116, 104, 97, 116, 
32, 101, 110, 116, 114, 121, 32, 119, 105, 108, 108, 32, 112, 111, 105, 110, 116, 32, 116, 111, 
32, 97, 110, 111, 116, 104, 101, 114, 10, 45, 45, 32, 101, 110, 116, 114, 121, 32, 116, 104, 
97, 116, 32, 104, 111, 108, 100, 115, 32, 116, 104, 101, 32, 115, 111, 117, 114, 99, 101, 32, 
111, 102, 32, 116, 104, 101, 32, 100, 101, 108, 116, 97, 46, 32, 32, 68, 101, 108, 116, 97, 
115, 32, 99, 97, 110, 32, 98, 101, 32, 99, 104, 97, 105, 110, 101, 100, 46, 10, 45, 45, 
10, 45, 45, 32, 84, 104, 101, 32, 98, 108, 111, 98, 32, 97, 110, 100, 32, 100, 101, 108, 
116, 97, 32, 116, 97, 98, 108, 101, 115, 32, 99, 111, 108, 108, 101, 99, 116, 105, 118, 101, 
108, 121, 32, 104, 111, 108, 100, 32, 116, 104, 101, 32, 34, 103, 108, 111, 98, 97, 108, 32, 
115, 116, 97, 116, 101, 34, 32, 111, 102, 10, 45, 45, 32, 97, 32, 70, 111, 115, 115, 105, 
108, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 46, 32, 32, 10, 45, 45, 10, 67, 
82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 98, 108, 111, 
98, 40, 10, 32, 32, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 
77, 65, 82, 89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
82, 101, 99, 111, 114, 100, 32, 73, 68, 10, 32, 32, 114, 99, 118, 105, 100, 32, 73, 78, 
84, 69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 45, 45, 32, 79, 114, 105, 103, 105, 110, 32, 111, 102, 32, 116, 104, 105, 
115, 32, 114, 101, 99, 111, 114, 100, 10, 32, 32, 115, 105, 122, 101, 32, 73, 78, 84, 69, 
71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 45, 45, 32, 83, 105, 122, 101, 32, 111, 102, 32, 99, 111, 110, 116, 101, 110, 
116, 46, 32, 45, 49, 32, 102, 111, 114, 32, 97, 32, 112, 104, 97, 110, 116, 111, 109, 46, 
10, 32, 32, 117, 117, 105, 100, 32, 84, 69, 88, 84, 32, 85, 78, 73, 81, 85, 69, 32, 
78, 79, 84, 32, 78, 85, 76, 76, 44, 32, 32, 32, 32, 32, 32, 45, 45, 32, 83, 72, 
65, 49, 32, 104, 97, 115, 104, 32, 111, 102, 32, 116, 104, 101, 32, 99, 111, 110, 116, 101, 
110, 116, 10, 32, 32, 99, 111, 110, 116, 101, 110, 116, 32, 66, 76, 79, 66, 44, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
67, 111, 109, 112, 114, 101, 115, 115, 101, 100, 32, 99, 111, 110, 116, 101, 110, 116, 32, 111, 
102, 32, 116, 104, 105, 115, 32, 114, 101, 99, 111, 114, 100, 10, 32, 32, 67, 72, 69, 67, 
75, 40, 32, 108, 101, 110, 103, 116, 104, 40, 117, 117, 105, 100, 41, 62, 61, 52, 48, 32, 
65, 78, 68, 32, 114, 105, 100, 62, 48, 32, 41, 10, 41, 59, 10, 67, 82, 69, 65, 84, 
69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 100, 101, 108, 116, 97, 40, 10, 
32, 32, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 
89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 45, 45, 32, 82, 101, 99, 111, 114, 100, 32, 73, 68, 10, 32, 32, 115, 114, 
99, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 78, 79, 84, 32, 78, 85, 76, 76, 
32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 98, 108, 111, 98, 32, 32, 32, 45, 
45, 32, 82, 101, 99, 111, 114, 100, 32, 104, 111, 108, 100, 105, 110, 103, 32, 115, 111, 117, 
114, 99, 101, 32, 100, 111, 99, 117, 109, 101, 110, 116, 10, 41, 59, 10, 67, 82, 69, 65, 
84, 69, 32, 73, 78, 68, 69, 88, 32, 114, 101, 112, 111, 46, 100, 101, 108, 116, 97, 95, 
105, 49, 32, 79, 78, 32, 100, 101, 108, 116, 97, 40, 115, 114, 99, 105, 100, 41, 59, 10, 
10, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 
45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 
45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 
45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 45, 45, 32, 84, 104, 
101, 32, 66, 76, 79, 66, 32, 97, 110, 100, 32, 68, 69, 76, 84, 65, 32, 116, 97, 98, 
108, 101, 115, 32, 97, 98, 111, 118, 101, 32, 104, 111, 108, 100, 32, 116, 104, 101, 32, 34, 
103, 108, 111, 98, 97, 108, 32, 115, 116, 97, 116, 101, 34, 32, 111, 102, 32, 97, 32, 70, 
111, 115, 115, 105, 108, 10, 45, 45, 32, 112, 114, 111, 106, 101, 99, 116, 59, 32, 116, 104, 
101, 32, 115, 116, 117, 102, 102, 32, 116, 104, 97, 116, 32, 105, 115, 32, 110, 111, 114, 109, 
97, 108, 108, 121, 32, 101, 120, 99, 104, 97, 110, 103, 101, 100, 32, 100, 117, 114, 105, 110, 
103, 32, 34, 115, 121, 110, 99, 34, 46, 32, 32, 84, 104, 101, 10, 45, 45, 32, 34, 108, 
111, 99, 97, 108, 32, 115, 116, 97, 116, 101, 34, 32, 111, 102, 32, 97, 32, 114, 101, 112, 
111, 115, 105, 116, 111, 114, 121, 32, 105, 115, 32, 99, 111, 110, 116, 97, 105, 110, 101, 100, 
32, 105, 110, 32, 116, 104, 101, 32, 114, 101, 109, 97, 105, 110, 105, 110, 103, 32, 116, 97, 
98, 108, 101, 115, 32, 111, 102, 10, 45, 45, 32, 116, 104, 101, 32, 122, 82, 101, 112, 111, 
115, 105, 116, 111, 114, 121, 83, 99, 104, 101, 109, 97, 49, 32, 115, 116, 114, 105, 110, 103, 
46, 32, 32, 10, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 
45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 
45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 
45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 45, 
45, 32, 87, 104, 101, 110, 101, 118, 101, 114, 32, 110, 101, 119, 32, 98, 108, 111, 98, 115, 
32, 97, 114, 101, 32, 114, 101, 99, 101, 105, 118, 101, 100, 32, 105, 110, 116, 111, 32, 116, 
104, 101, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 44, 32, 97, 110, 32, 101, 110, 
116, 114, 121, 10, 45, 45, 32, 105, 110, 32, 116, 104, 105, 115, 32, 116, 97, 98, 108, 101, 
32, 114, 101, 99, 111, 114, 100, 115, 32, 116, 104, 101, 32, 115, 111, 117, 114, 99, 101, 32, 
111, 102, 32, 116, 104, 101, 32, 98, 108, 111, 98, 46, 10, 45, 45, 10, 67, 82, 69, 65, 
84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 114, 99, 118, 102, 114, 111, 
109, 40, 10, 32, 32, 114, 99, 118, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 
82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
82, 101, 99, 101, 105, 118, 101, 100, 45, 70, 114, 111, 109, 32, 73, 68, 10, 32, 32, 117, 
105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 
83, 32, 117, 115, 101, 114, 44, 32, 32, 32, 32, 45, 45, 32, 85, 115, 101, 114, 32, 108, 
111, 103, 105, 110, 10, 32, 32, 109, 116, 105, 109, 101, 32, 68, 65, 84, 69, 84, 73, 77, 
69, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 
45, 32, 84, 105, 109, 101, 32, 111, 102, 32, 114, 101, 99, 101, 105, 112, 116, 46, 32, 32, 
74, 117, 108, 105, 97, 110, 32, 100, 97, 121, 46, 10, 32, 32, 110, 111, 110, 99, 101, 32, 
84, 69, 88, 84, 32, 85, 78, 73, 81, 85, 69, 44, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 45, 45, 32, 78, 111, 110, 99, 101, 32, 117, 115, 101, 100, 32, 
102, 111, 114, 32, 108, 111, 103, 105, 110, 10, 32, 32, 105, 112, 97, 100, 100, 114, 32, 84, 
69, 88, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 45, 45, 32, 82, 101, 109, 111, 116, 101, 32, 73, 80, 32, 97, 100, 100, 
114, 101, 115, 115, 46, 32, 32, 78, 85, 76, 76, 32, 102, 111, 114, 32, 100, 105, 114, 101, 
99, 116, 46, 10, 41, 59, 10, 10, 45, 45, 32, 73, 110, 102, 111, 114, 109, 97, 116, 105, 
111, 110, 32, 97, 98, 111, 117, 116, 32, 117, 115, 101, 114, 115, 10, 45, 45, 10, 45, 45, 
32, 84, 104, 101, 32, 117, 115, 101, 114, 46, 112, 119, 32, 102, 105, 101, 108, 100, 32, 99, 
97, 110, 32, 98, 101, 32, 101, 105, 116, 104, 101, 114, 32, 99, 108, 101, 97, 114, 116, 101, 
120, 116, 32, 111, 102, 32, 116, 104, 101, 32, 112, 97, 115, 115, 119, 111, 114, 100, 44, 32, 
111, 114, 10, 45, 45, 32, 97, 32, 83, 72, 65, 49, 32, 104, 97, 115, 104, 32, 111, 102, 
32, 116, 104, 101, 32, 112, 97, 115, 115, 119, 111, 114, 100, 46, 32, 32, 73, 102, 32, 116, 
104, 101, 32, 117, 115, 101, 114, 46, 112, 119, 32, 102, 105, 101, 108, 100, 32, 105, 115, 32, 
101, 120, 97, 99, 116, 108, 121, 32, 52, 48, 10, 45, 45, 32, 99, 104, 97, 114, 97, 99, 
116, 101, 114, 115, 32, 108, 111, 110, 103, 32, 119, 101, 32, 97, 115, 115, 117, 109, 101, 32, 
105, 116, 32, 105, 115, 32, 97, 32, 83, 72, 65, 49, 32, 104, 97, 115, 104, 46, 32, 32, 
79, 116, 104, 101, 114, 119, 105, 115, 101, 44, 32, 105, 116, 32, 105, 115, 10, 45, 45, 32, 
99, 108, 101, 97, 114, 116, 101, 120, 116, 46, 32, 32, 84, 104, 101, 32, 115, 104, 97, 49, 
95, 115, 104, 97, 114, 101, 100, 95, 115, 101, 99, 114, 101, 116, 40, 41, 32, 114, 111, 117, 
116, 105, 110, 101, 32, 99, 111, 109, 112, 117, 116, 101, 115, 32, 116, 104, 101, 32, 112, 97, 
115, 115, 119, 111, 114, 100, 10, 45, 45, 32, 104, 97, 115, 104, 32, 98, 97, 115, 101, 100, 
32, 111, 110, 32, 116, 104, 101, 32, 112, 114, 111, 106, 101, 99, 116, 45, 99, 111, 100, 101, 
44, 32, 116, 104, 101, 32, 117, 115, 101, 114, 32, 108, 111, 103, 105, 110, 44, 32, 97, 110, 
100, 32, 116, 104, 101, 32, 99, 108, 101, 97, 114, 116, 101, 120, 116, 10, 45, 45, 32, 112, 
97, 115, 115, 119, 111, 114, 100, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 
65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 117, 115, 101, 114, 40, 10, 32, 32, 117, 105, 
100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 
89, 44, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 85, 115, 101, 114, 32, 73, 68, 
10, 32, 32, 108, 111, 103, 105, 110, 32, 84, 69, 88, 84, 32, 85, 78, 73, 81, 85, 69, 
44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 108, 111, 
103, 105, 110, 32, 110, 97, 109, 101, 32, 111, 102, 32, 116, 104, 101, 32, 117, 115, 101, 114, 
10, 32, 32, 112, 119, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 112, 97, 
115, 115, 119, 111, 114, 100, 10, 32, 32, 99, 97, 112, 32, 84, 69, 88, 84, 44, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 45, 45, 32, 67, 97, 112, 97, 98, 105, 108, 105, 116, 105, 101, 115, 32, 111, 102, 32, 
116, 104, 105, 115, 32, 117, 115, 101, 114, 10, 32, 32, 99, 111, 111, 107, 105, 101, 32, 84, 
69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 45, 45, 32, 87, 87, 87, 32, 108, 111, 103, 105, 110, 32, 99, 111, 111, 
107, 105, 101, 10, 32, 32, 105, 112, 97, 100, 100, 114, 32, 84, 69, 88, 84, 44, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 
32, 73, 80, 32, 97, 100, 100, 114, 101, 115, 115, 32, 102, 111, 114, 32, 119, 104, 105, 99, 
104, 32, 99, 111, 111, 107, 105, 101, 32, 105, 115, 32, 118, 97, 108, 105, 100, 10, 32, 32, 
99, 101, 120, 112, 105, 114, 101, 32, 68, 65, 84, 69, 84, 73, 77, 69, 44, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 84, 105, 109, 101, 32, 
119, 104, 101, 110, 32, 99, 111, 111, 107, 105, 101, 32, 101, 120, 112, 105, 114, 101, 115, 10, 
32, 32, 105, 110, 102, 111, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 99, 111, 110, 
116, 97, 99, 116, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 10, 32, 32, 109, 
116, 105, 109, 101, 32, 68, 65, 84, 69, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 108, 97, 115, 116, 32, 99, 
104, 97, 110, 103, 101, 46, 32, 32, 115, 101, 99, 111, 110, 100, 115, 32, 115, 105, 110, 99, 
101, 32, 49, 57, 55, 48, 10, 32, 32, 112, 104, 111, 116, 111, 32, 66, 76, 79, 66, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 45, 45, 32, 74, 80, 69, 71, 32, 105, 109, 97, 103, 101, 32, 111, 102, 32, 116, 104, 
105, 115, 32, 117, 115, 101, 114, 10, 41, 59, 10, 10, 45, 45, 32, 84, 104, 101, 32, 86, 
65, 82, 32, 116, 97, 98, 108, 101, 32, 104, 111, 108, 100, 115, 32, 109, 105, 115, 99, 101, 
108, 108, 97, 110, 111, 117, 115, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 32, 
97, 98, 111, 117, 116, 32, 116, 104, 101, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 
46, 10, 45, 45, 32, 105, 110, 32, 116, 104, 101, 32, 102, 111, 114, 109, 32, 111, 102, 32, 
110, 97, 109, 101, 45, 118, 97, 108, 117, 101, 32, 112, 97, 105, 114, 115, 46, 10, 45, 45, 
10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 99, 
111, 110, 102, 105, 103, 40, 10, 32, 32, 110, 97, 109, 101, 32, 84, 69, 88, 84, 32, 80, 
82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 32, 78, 79, 84, 32, 78, 85, 76, 76, 44, 
32, 32, 45, 45, 32, 80, 114, 105, 109, 97, 114, 121, 32, 110, 97, 109, 101, 32, 111, 102, 
32, 116, 104, 101, 32, 101, 110, 116, 114, 121, 10, 32, 32, 118, 97, 108, 117, 101, 32, 67, 
76, 79, 66, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 45, 45, 32, 67, 111, 110, 116, 101, 110, 116, 32, 111, 102, 32, 
116, 104, 101, 32, 110, 97, 109, 101, 100, 32, 112, 97, 114, 97, 109, 101, 116, 101, 114, 10, 
32, 32, 109, 116, 105, 109, 101, 32, 68, 65, 84, 69, 44, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 108, 97, 
115, 116, 32, 109, 111, 100, 105, 102, 105, 101, 100, 46, 32, 32, 115, 101, 99, 111, 110, 100, 
115, 32, 115, 105, 110, 99, 101, 32, 49, 57, 55, 48, 10, 32, 32, 67, 72, 69, 67, 75, 
40, 32, 116, 121, 112, 101, 111, 102, 40, 110, 97, 109, 101, 41, 61, 39, 116, 101, 120, 116, 
39, 32, 65, 78, 68, 32, 108, 101, 110, 103, 116, 104, 40, 110, 97, 109, 101, 41, 62, 61, 
49, 32, 41, 10, 41, 59, 10, 10, 45, 45, 32, 65, 114, 116, 105, 102, 97, 99, 116, 115, 
32, 116, 104, 97, 116, 32, 115, 104, 111, 117, 108, 100, 32, 110, 111, 116, 32, 98, 101, 32, 
112, 114, 111, 99, 101, 115, 115, 101, 100, 32, 97, 114, 101, 32, 105, 100, 101, 110, 116, 105, 
102, 105, 101, 100, 32, 105, 110, 32, 116, 104, 101, 10, 45, 45, 32, 34, 115, 104, 117, 110, 
34, 32, 116, 97, 98, 108, 101, 46, 32, 32, 65, 114, 116, 105, 102, 97, 99, 116, 115, 32, 
116, 104, 97, 116, 32, 97, 114, 101, 32, 99, 111, 110, 116, 114, 111, 108, 45, 102, 105, 108, 
101, 32, 102, 111, 114, 103, 101, 114, 105, 101, 115, 32, 111, 114, 10, 45, 45, 32, 115, 112, 
97, 109, 32, 111, 114, 32, 97, 114, 116, 105, 102, 97, 99, 116, 115, 32, 119, 104, 111, 115, 
101, 32, 99, 111, 110, 116, 101, 110, 116, 115, 32, 118, 105, 111, 108, 97, 116, 101, 32, 97, 
100, 109, 105, 110, 105, 115, 116, 114, 97, 116, 105, 118, 101, 32, 112, 111, 108, 105, 99, 121, 
10, 45, 45, 32, 99, 97, 110, 32, 98, 101, 32, 115, 104, 117, 110, 110, 101, 100, 32, 105, 
110, 32, 111, 114, 100, 101, 114, 32, 116, 111, 32, 112, 114, 101, 118, 101, 110, 116, 32, 116, 
104, 101, 109, 32, 102, 114, 111, 109, 32, 99, 111, 110, 116, 97, 109, 105, 110, 97, 116, 105, 
110, 103, 10, 45, 45, 32, 116, 104, 101, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 
46, 10, 45, 45, 10, 45, 45, 32, 83, 104, 117, 110, 110, 101, 100, 32, 97, 114, 116, 105, 
102, 97, 99, 116, 115, 32, 100, 111, 32, 110, 111, 116, 32, 101, 120, 105, 115, 116, 32, 105, 
110, 32, 116, 104, 101, 32, 98, 108, 111, 98, 32, 116, 97, 98, 108, 101, 46, 32, 32, 72, 
101, 110, 99, 101, 32, 116, 104, 101, 121, 10, 45, 45, 32, 104, 97, 118, 101, 32, 110, 111, 
116, 32, 97, 114, 116, 105, 102, 97, 99, 116, 32, 73, 68, 32, 40, 114, 105, 100, 41, 32, 
97, 110, 100, 32, 119, 101, 32, 116, 104, 117, 115, 32, 109, 117, 115, 116, 32, 115, 116, 111, 
114, 101, 32, 116, 104, 101, 105, 114, 32, 102, 117, 108, 108, 10, 45, 45, 32, 85, 85, 73, 
68, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 
101, 112, 111, 46, 115, 104, 117, 110, 40, 10, 32, 32, 117, 117, 105, 100, 32, 85, 78, 73, 
81, 85, 69, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 85, 85, 73, 
68, 32, 111, 102, 32, 97, 114, 116, 105, 102, 97, 99, 116, 32, 116, 111, 32, 98, 101, 32, 
115, 104, 117, 110, 110, 101, 100, 46, 32, 67, 97, 110, 111, 110, 105, 99, 97, 108, 32, 102, 
111, 114, 109, 10, 32, 32, 109, 116, 105, 109, 101, 32, 68, 65, 84, 69, 44, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 87, 104, 101, 110, 32, 97, 100, 100, 101, 
100, 46, 32, 32, 115, 101, 99, 111, 110, 100, 115, 32, 115, 105, 110, 99, 101, 32, 49, 57, 
55, 48, 10, 32, 32, 115, 99, 111, 109, 32, 84, 69, 88, 84, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 79, 112, 116, 105, 111, 110, 97, 108, 32, 116, 
101, 120, 116, 32, 101, 120, 112, 108, 97, 105, 110, 105, 110, 103, 32, 119, 104, 121, 32, 116, 
104, 101, 32, 115, 104, 117, 110, 32, 111, 99, 99, 117, 114, 114, 101, 100, 10, 41, 59, 10, 
10, 45, 45, 32, 65, 114, 116, 105, 102, 97, 99, 116, 115, 32, 116, 104, 97, 116, 32, 115, 
104, 111, 117, 108, 100, 32, 110, 111, 116, 32, 98, 101, 32, 112, 117, 115, 104, 101, 100, 32, 
97, 114, 101, 32, 115, 116, 111, 114, 101, 100, 32, 105, 110, 32, 116, 104, 101, 32, 34, 112, 
114, 105, 118, 97, 116, 101, 34, 10, 45, 45, 32, 116, 97, 98, 108, 101, 46, 32, 32, 80, 
114, 105, 118, 97, 116, 101, 32, 97, 114, 116, 105, 102, 97, 99, 116, 115, 32, 97, 114, 101, 
32, 111, 109, 105, 116, 116, 101, 100, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 34, 117, 
110, 99, 108, 117, 115, 116, 101, 114, 101, 100, 34, 32, 97, 110, 100, 10, 45, 45, 32, 34, 
117, 110, 115, 101, 110, 116, 34, 32, 116, 97, 98, 108, 101, 115, 46, 10, 45, 45, 10, 67, 
82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 112, 114, 105, 
118, 97, 116, 101, 40, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 
77, 65, 82, 89, 32, 75, 69, 89, 41, 59, 10, 10, 45, 45, 32, 65, 110, 32, 101, 110, 
116, 114, 121, 32, 105, 110, 32, 116, 104, 105, 115, 32, 116, 97, 98, 108, 101, 32, 100, 101, 
115, 99, 114, 105, 98, 101, 115, 32, 97, 32, 100, 97, 116, 97, 98, 97, 115, 101, 32, 113, 
117, 101, 114, 121, 32, 116, 104, 97, 116, 32, 103, 101, 110, 101, 114, 97, 116, 101, 115, 32, 
97, 10, 45, 45, 32, 116, 97, 98, 108, 101, 32, 111, 102, 32, 116, 105, 99, 107, 101, 116, 
115, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 
101, 112, 111, 46, 114, 101, 112, 111, 114, 116, 102, 109, 116, 40, 10, 32, 32, 32, 114, 110, 
32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 
44, 32, 32, 45, 45, 32, 82, 101, 112, 111, 114, 116, 32, 110, 117, 109, 98, 101, 114, 10, 
32, 32, 32, 111, 119, 110, 101, 114, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 79, 119, 110, 101, 114, 32, 111, 102, 32, 
116, 104, 105, 115, 32, 114, 101, 112, 111, 114, 116, 32, 102, 111, 114, 109, 97, 116, 32, 40, 
110, 111, 116, 32, 117, 115, 101, 100, 41, 10, 32, 32, 32, 116, 105, 116, 108, 101, 32, 84, 
69, 88, 84, 32, 85, 78, 73, 81, 85, 69, 44, 32, 32, 32, 32, 32, 32, 32, 45, 45, 
32, 84, 105, 116, 108, 101, 32, 111, 102, 32, 116, 104, 105, 115, 32, 114, 101, 112, 111, 114, 
116, 10, 32, 32, 32, 109, 116, 105, 109, 101, 32, 68, 65, 84, 69, 44, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 76, 97, 115, 116, 32, 109, 111, 
100, 105, 102, 105, 101, 100, 46, 32, 32, 115, 101, 99, 111, 110, 100, 115, 32, 115, 105, 110, 
99, 101, 32, 49, 57, 55, 48, 10, 32, 32, 32, 99, 111, 108, 115, 32, 84, 69, 88, 84, 
44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 65, 
32, 99, 111, 108, 111, 114, 45, 107, 101, 121, 32, 115, 112, 101, 99, 105, 102, 105, 99, 97, 
116, 105, 111, 110, 10, 32, 32, 32, 115, 113, 108, 99, 111, 100, 101, 32, 84, 69, 88, 84, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 65, 110, 32, 83, 
81, 76, 32, 83, 69, 76, 69, 67, 84, 32, 115, 116, 97, 116, 101, 109, 101, 110, 116, 32, 
102, 111, 114, 32, 116, 104, 105, 115, 32, 114, 101, 112, 111, 114, 116, 10, 41, 59, 10, 10, 
45, 45, 32, 83, 111, 109, 101, 32, 116, 105, 99, 107, 101, 116, 32, 99, 111, 110, 116, 101, 
110, 116, 32, 40, 115, 117, 99, 104, 32, 97, 115, 32, 116, 104, 101, 32, 111, 114, 105, 103, 
105, 110, 97, 116, 111, 114, 115, 32, 101, 109, 97, 105, 108, 32, 97, 100, 100, 114, 101, 115, 
115, 32, 111, 114, 32, 99, 111, 110, 116, 97, 99, 116, 10, 45, 45, 32, 105, 110, 102, 111, 
114, 109, 97, 116, 105, 111, 110, 41, 32, 110, 101, 101, 100, 115, 32, 116, 111, 32, 98, 101, 
32, 111, 98, 115, 99, 117, 114, 101, 100, 32, 116, 111, 32, 112, 114, 111, 116, 101, 99, 116, 
32, 112, 114, 105, 118, 97, 99, 121, 46, 32, 32, 84, 104, 105, 115, 32, 105, 115, 32, 97, 
99, 104, 105, 101, 118, 101, 100, 10, 45, 45, 32, 98, 121, 32, 115, 116, 111, 114, 105, 110, 
103, 32, 97, 110, 32, 83, 72, 65, 49, 32, 104, 97, 115, 104, 32, 111, 102, 32, 116, 104, 
101, 32, 99, 111, 110, 116, 101, 110, 116, 46, 32, 32, 70, 111, 114, 32, 100, 105, 115, 112, 
108, 97, 121, 44, 32, 116, 104, 101, 32, 104, 97, 115, 104, 32, 105, 115, 10, 45, 45, 32, 
109, 97, 112, 112, 101, 100, 32, 98, 97, 99, 107, 32, 105, 110, 116, 111, 32, 116, 104, 101, 
32, 111, 114, 105, 103, 105, 110, 97, 108, 32, 116, 101, 120, 116, 32, 117, 115, 105, 110, 103, 
32, 116, 104, 105, 115, 32, 116, 97, 98, 108, 101, 46, 32, 32, 10, 45, 45, 10, 45, 45, 
32, 84, 104, 105, 115, 32, 116, 97, 98, 108, 101, 32, 99, 111, 110, 116, 97, 105, 110, 115, 
32, 115, 101, 110, 115, 105, 116, 105, 118, 101, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 
111, 110, 32, 97, 110, 100, 32, 115, 104, 111, 117, 108, 100, 32, 110, 111, 116, 32, 98, 101, 
32, 115, 104, 97, 114, 101, 100, 10, 45, 45, 32, 119, 105, 116, 104, 32, 117, 110, 97, 117, 
116, 104, 111, 114, 105, 122, 101, 100, 32, 117, 115, 101, 114, 115, 46, 10, 45, 45, 10, 67, 
82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 99, 111, 110, 
99, 101, 97, 108, 101, 100, 40, 10, 32, 32, 104, 97, 115, 104, 32, 84, 69, 88, 84, 32, 
80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 45, 45, 32, 84, 
104, 101, 32, 83, 72, 65, 49, 32, 104, 97, 115, 104, 32, 111, 102, 32, 99, 111, 110, 116, 
101, 110, 116, 10, 32, 32, 109, 116, 105, 109, 101, 32, 68, 65, 84, 69, 44, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 84, 105, 109, 101, 32, 
99, 114, 101, 97, 116, 101, 100, 46, 32, 32, 83, 101, 99, 111, 110, 100, 115, 32, 115, 105, 
110, 99, 101, 32, 49, 57, 55, 48, 10, 32, 32, 99, 111, 110, 116, 101, 110, 116, 32, 84, 
69, 88, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
67, 111, 110, 116, 101, 110, 116, 32, 105, 110, 116, 101, 110, 100, 101, 100, 32, 116, 111, 32, 
98, 101, 32, 99, 111, 110, 99, 101, 97, 108, 101, 100, 10, 41, 59, 10, 10, 45, 45, 32, 
84, 104, 101, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 32, 73, 68, 32, 104, 
101, 108, 112, 115, 32, 116, 104, 101, 32, 117, 110, 105, 120, 32, 34, 102, 105, 108, 101, 34, 
32, 99, 111, 109, 109, 97, 110, 100, 32, 116, 111, 32, 105, 100, 101, 110, 116, 105, 102, 121, 
32, 116, 104, 101, 10, 45, 45, 32, 100, 97, 116, 97, 98, 97, 115, 101, 32, 97, 115, 32, 
97, 32, 102, 111, 115, 115, 105, 108, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 46, 
10, 80, 82, 65, 71, 77, 65, 32, 97, 112, 112, 108, 105, 99, 97, 116, 105, 111, 110, 95, 
105, 100, 61, 50, 53, 50, 48, 48, 54, 54, 55, 51, 59, 10, 
0};
char const * fsl_schema_repo1_cstr = fsl_schema_repo1_cstr_a;
/* end of ../sql/repo-static.sql */
Added src/fsl_schema_repo2_cstr.c.










































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
/* Binary form of file ../sql/repo-transient.sql */
/** @page page_fsl_schema_repo2_cstr Schema: repo-transient.sql
@code
-- This file contains parts of the schema that can change from one
-- version to the next. The data stored in these tables is
-- reconstructed from the information in the main repo schema by the
-- "rebuild" operation.

-- Filenames
--
CREATE TABLE repo.filename(
  fnid INTEGER PRIMARY KEY,    -- Filename ID
  name TEXT UNIQUE             -- Name of file page
);

-- Linkages between check-ins, files created by each check-in, and
-- the names of those files.
--
-- Each entry represents a file that changed content from pid to fid
-- due to the check-in that goes from pmid to mid.  fnid is the name
-- of the file in the mid check-in.  If the file was renamed as part
-- of the mid check-in, then pfnid is the previous filename.
--
-- There can be multiple entries for (mid,fid) if the mid check-in was
-- a merge.  Entries with isaux==0 are from the primary parent.  Merge
-- parents have isaux set to true.
--
-- Field name mnemonics:
--    mid = Manifest ID.  (Each check-in is stored as a "Manifest")
--    fid = File ID.
--    pmid = Parent Manifest ID.
--    pid = Parent file ID.
--    fnid = File Name ID.
--    pfnid = Parent File Name ID.
--    isaux = pmid IS AUXiliary parent, not primary parent
--
-- pid==0    if the file is added by check-in mid.
-- pid==(-1) if the file exists in a merge parents but not in the primary
--           parent.  In other words, if the file file was added by merge.
--           (TODO: confirm if/where this is used in fossil and then make sure
--           libfossil does so, too.)
-- fid==0    if the file is removed by check-in mid.
--
CREATE TABLE repo.mlink(
  mid INTEGER,        -- Check-in that contains fid
  fid INTEGER,        -- New file content RID. 0 if deleted
  pmid INTEGER,       -- Check-in RID that contains pid
  pid INTEGER,        -- Prev file content RID. 0 if new. -1 if from a merge
  fnid INTEGER REFERENCES filename,   -- Name of the file
  pfnid INTEGER REFERENCES filename,  -- Previous name. 0 if unchanged
  mperm INTEGER,                      -- File permissions.  1==exec
  isaux BOOLEAN DEFAULT 0             -- TRUE if pmid is the primary
);
CREATE INDEX repo.mlink_i1 ON mlink(mid);
CREATE INDEX repo.mlink_i2 ON mlink(fnid);
CREATE INDEX repo.mlink_i3 ON mlink(fid);
CREATE INDEX repo.mlink_i4 ON mlink(pid);

-- Parent/child linkages between checkins
--
CREATE TABLE repo.plink(
  pid INTEGER REFERENCES blob,    -- Parent manifest
  cid INTEGER REFERENCES blob,    -- Child manifest
  isprim BOOLEAN,                 -- pid is the primary parent of cid
  mtime DATETIME,                 -- the date/time stamp on cid.  Julian day.
  baseid INTEGER REFERENCES blob, -- Baseline if cid is a delta manifest.
  UNIQUE(pid, cid)
);
CREATE INDEX repo.plink_i2 ON plink(cid,pid);

-- A "leaf" checkin is a checkin that has no children in the same
-- branch.  The set of all leaves is easily computed with a join,
-- between the plink and tagxref tables, but it is a slower join for
-- very large repositories (repositories with 100,000 or more checkins)
-- and so it makes sense to precompute the set of leaves.  There is
-- one entry in the following table for each leaf.
--
CREATE TABLE repo.leaf(rid INTEGER PRIMARY KEY);

-- Events used to generate a timeline
--
CREATE TABLE repo.event(
  type TEXT,                      -- Type of event: 'ci', 'w', 'e', 't', 'g'
  mtime DATETIME,                 -- Time of occurrence. Julian day.
  objid INTEGER PRIMARY KEY,      -- Associated record ID
  tagid INTEGER,                  -- Associated ticket or wiki name tag
  uid INTEGER REFERENCES user,    -- User who caused the event
  bgcolor TEXT,                   -- Color set by 'bgcolor' property
  euser TEXT,                     -- User set by 'user' property
  user TEXT,                      -- Name of the user
  ecomment TEXT,                  -- Comment set by 'comment' property
  comment TEXT,                   -- Comment describing the event
  brief TEXT,                     -- Short comment when tagid already seen
  omtime DATETIME                 -- Original unchanged date+time, or NULL
);
CREATE INDEX repo.event_i1 ON event(mtime);

-- A record of phantoms.  A phantom is a record for which we know the
-- UUID but we do not (yet) know the file content.
--
CREATE TABLE repo.phantom(
  rid INTEGER PRIMARY KEY         -- Record ID of the phantom
);

-- A record of orphaned delta-manifests.  An orphan is a delta-manifest
-- for which we have content, but its baseline-manifest is a phantom.
-- We have to track all orphan manifests so that when the baseline arrives,
-- we know to process the orphaned deltas.
CREATE TABLE repo.orphan(
  rid INTEGER PRIMARY KEY,        -- Delta manifest with a phantom baseline
  baseline INTEGER                -- Phantom baseline of this orphan
);
CREATE INDEX repo.orphan_baseline ON orphan(baseline);

-- Unclustered records.  An unclustered record is a record (including
-- a cluster records themselves) that is not mentioned by some other
-- cluster.
--
-- Phantoms are usually included in the unclustered table.  A new cluster
-- will never be created that contains a phantom.  But another repository
-- might send us a cluster that contains entries that are phantoms to
-- us.
--
CREATE TABLE repo.unclustered(
  rid INTEGER PRIMARY KEY         -- Record ID of the unclustered file
);

-- Records which have never been pushed to another server.  This is
-- used to reduce push operations to a single HTTP request in the
-- common case when one repository only talks to a single server.
--
CREATE TABLE repo.unsent(
  rid INTEGER PRIMARY KEY         -- Record ID of the phantom
);

-- Each baseline or manifest can have one or more tags.  A tag
-- is defined by a row in the next table.
-- 
-- Wiki pages are tagged with "wiki-NAME" where NAME is the name of
-- the wiki page.  Tickets changes are tagged with "ticket-UUID" where 
-- UUID is the indentifier of the ticket.  Tags used to assign symbolic
-- names to baselines are branches are of the form "sym-NAME" where
-- NAME is the symbolic name.
--
CREATE TABLE repo.tag(
  tagid INTEGER PRIMARY KEY,       -- Numeric tag ID
  tagname TEXT UNIQUE              -- Tag name.
);
INSERT INTO repo.tag VALUES(1, 'bgcolor');         -- FSL_TAGID_BGCOLOR
INSERT INTO repo.tag VALUES(2, 'comment');         -- FSL_TAGID_COMMENT
INSERT INTO repo.tag VALUES(3, 'user');            -- FSL_TAGID_USER
INSERT INTO repo.tag VALUES(4, 'date');            -- FSL_TAGID_DATE
INSERT INTO repo.tag VALUES(5, 'hidden');          -- FSL_TAGID_HIDDEN
INSERT INTO repo.tag VALUES(6, 'private');         -- FSL_TAGID_PRIVATE
INSERT INTO repo.tag VALUES(7, 'cluster');         -- FSL_TAGID_CLUSTER
INSERT INTO repo.tag VALUES(8, 'branch');          -- FSL_TAGID_BRANCH
INSERT INTO repo.tag VALUES(9, 'closed');          -- FSL_TAGID_CLOSED
INSERT INTO repo.tag VALUES(10,'parent');          -- FSL_TAGID_PARENT
INSERT INTO repo.tag VALUES(11,'note');            -- FSL_TAG_NOTE
-- arguable, to force auto-increment to start at 100:
-- INSERT INTO tag VALUES(99,'FSL_TAGID_MAX_INTERNAL');

-- Assignments of tags to baselines.  Note that we allow tags to
-- have values assigned to them.  So we are not really dealing with
-- tags here.  These are really properties.  But we are going to
-- keep calling them tags because in many cases the value is ignored.
--
CREATE TABLE repo.tagxref(
  tagid INTEGER REFERENCES tag,   -- The tag that was added or removed
  tagtype INTEGER,                -- 0:-,cancel  1:+,single  2:*,propagate
  srcid INTEGER REFERENCES blob,  -- Artifact of tag. 0 for propagated tags
  origid INTEGER REFERENCES blob, -- check-in holding propagated tag
  value TEXT,                     -- Value of the tag.  Might be NULL.
  mtime TIMESTAMP,                -- Time of addition or removal. Julian day
  rid INTEGER REFERENCE blob,     -- Artifact tag is applied to
  UNIQUE(rid, tagid)
);
CREATE INDEX repo.tagxref_i1 ON tagxref(tagid, mtime);

-- When a hyperlink occurs from one artifact to another (for example
-- when a check-in comment refers to a ticket) an entry is made in
-- the following table for that hyperlink.  This table is used to
-- facilitate the display of "back links".
--
CREATE TABLE repo.backlink(
  target TEXT,           -- Where the hyperlink points to
  srctype INT,           -- 0: check-in  1: ticket  2: wiki
  srcid INT,             -- rid for checkin or wiki.  tkt_id for ticket.
  mtime TIMESTAMP,       -- time that the hyperlink was added. Julian day.
  UNIQUE(target, srctype, srcid)
);
CREATE INDEX repo.backlink_src ON backlink(srcid, srctype);

-- Each attachment is an entry in the following table.  Only
-- the most recent attachment (identified by the D card) is saved.
--
CREATE TABLE repo.attachment(
  attachid INTEGER PRIMARY KEY,   -- Local id for this attachment
  isLatest BOOLEAN DEFAULT 0,     -- True if this is the one to use
  mtime TIMESTAMP,                -- Last changed.  Julian day.
  src TEXT,                       -- UUID of the attachment.  NULL to delete
  target TEXT,                    -- Object attached to. Wikiname or Tkt UUID
  filename TEXT,                  -- Filename for the attachment
  comment TEXT,                   -- Comment associated with this attachment
  user TEXT                       -- Name of user adding attachment
);
CREATE INDEX repo.attachment_idx1 ON attachment(target, filename, mtime);
CREATE INDEX repo.attachment_idx2 ON attachment(src);

-- For tracking cherrypick merges
CREATE TABLE repo.cherrypick(
  parentid INT,
  childid INT,
  isExclude BOOLEAN DEFAULT false,
  PRIMARY KEY(parentid, childid)
) WITHOUT ROWID;
CREATE INDEX repo.cherrypick_cid ON cherrypick(childid);
 @endcode
 @see fsl_schema_repo2()
*/
/* auto-generated code - edit at your own risk! (Good luck with that!) */
static char const fsl_schema_repo2_cstr_a[] = {
45, 45, 32, 84, 104, 105, 115, 32, 102, 105, 108, 101, 32, 99, 111, 110, 116, 97, 105, 110, 
115, 32, 112, 97, 114, 116, 115, 32, 111, 102, 32, 116, 104, 101, 32, 115, 99, 104, 101, 109, 
97, 32, 116, 104, 97, 116, 32, 99, 97, 110, 32, 99, 104, 97, 110, 103, 101, 32, 102, 114, 
111, 109, 32, 111, 110, 101, 10, 45, 45, 32, 118, 101, 114, 115, 105, 111, 110, 32, 116, 111, 
32, 116, 104, 101, 32, 110, 101, 120, 116, 46, 32, 84, 104, 101, 32, 100, 97, 116, 97, 32, 
115, 116, 111, 114, 101, 100, 32, 105, 110, 32, 116, 104, 101, 115, 101, 32, 116, 97, 98, 108, 
101, 115, 32, 105, 115, 10, 45, 45, 32, 114, 101, 99, 111, 110, 115, 116, 114, 117, 99, 116, 
101, 100, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 105, 110, 102, 111, 114, 109, 97, 116, 
105, 111, 110, 32, 105, 110, 32, 116, 104, 101, 32, 109, 97, 105, 110, 32, 114, 101, 112, 111, 
32, 115, 99, 104, 101, 109, 97, 32, 98, 121, 32, 116, 104, 101, 10, 45, 45, 32, 34, 114, 
101, 98, 117, 105, 108, 100, 34, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 46, 10, 10, 
45, 45, 32, 70, 105, 108, 101, 110, 97, 109, 101, 115, 10, 45, 45, 10, 67, 82, 69, 65, 
84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 102, 105, 108, 101, 110, 97, 
109, 101, 40, 10, 32, 32, 102, 110, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 
82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 45, 45, 32, 70, 105, 
108, 101, 110, 97, 109, 101, 32, 73, 68, 10, 32, 32, 110, 97, 109, 101, 32, 84, 69, 88, 
84, 32, 85, 78, 73, 81, 85, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 45, 45, 32, 78, 97, 109, 101, 32, 111, 102, 32, 102, 105, 108, 101, 32, 112, 97, 103, 
101, 10, 41, 59, 10, 10, 45, 45, 32, 76, 105, 110, 107, 97, 103, 101, 115, 32, 98, 101, 
116, 119, 101, 101, 110, 32, 99, 104, 101, 99, 107, 45, 105, 110, 115, 44, 32, 102, 105, 108, 
101, 115, 32, 99, 114, 101, 97, 116, 101, 100, 32, 98, 121, 32, 101, 97, 99, 104, 32, 99, 
104, 101, 99, 107, 45, 105, 110, 44, 32, 97, 110, 100, 10, 45, 45, 32, 116, 104, 101, 32, 
110, 97, 109, 101, 115, 32, 111, 102, 32, 116, 104, 111, 115, 101, 32, 102, 105, 108, 101, 115, 
46, 10, 45, 45, 10, 45, 45, 32, 69, 97, 99, 104, 32, 101, 110, 116, 114, 121, 32, 114, 
101, 112, 114, 101, 115, 101, 110, 116, 115, 32, 97, 32, 102, 105, 108, 101, 32, 116, 104, 97, 
116, 32, 99, 104, 97, 110, 103, 101, 100, 32, 99, 111, 110, 116, 101, 110, 116, 32, 102, 114, 
111, 109, 32, 112, 105, 100, 32, 116, 111, 32, 102, 105, 100, 10, 45, 45, 32, 100, 117, 101, 
32, 116, 111, 32, 116, 104, 101, 32, 99, 104, 101, 99, 107, 45, 105, 110, 32, 116, 104, 97, 
116, 32, 103, 111, 101, 115, 32, 102, 114, 111, 109, 32, 112, 109, 105, 100, 32, 116, 111, 32, 
109, 105, 100, 46, 32, 32, 102, 110, 105, 100, 32, 105, 115, 32, 116, 104, 101, 32, 110, 97, 
109, 101, 10, 45, 45, 32, 111, 102, 32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 105, 110, 
32, 116, 104, 101, 32, 109, 105, 100, 32, 99, 104, 101, 99, 107, 45, 105, 110, 46, 32, 32, 
73, 102, 32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 119, 97, 115, 32, 114, 101, 110, 97, 
109, 101, 100, 32, 97, 115, 32, 112, 97, 114, 116, 10, 45, 45, 32, 111, 102, 32, 116, 104, 
101, 32, 109, 105, 100, 32, 99, 104, 101, 99, 107, 45, 105, 110, 44, 32, 116, 104, 101, 110, 
32, 112, 102, 110, 105, 100, 32, 105, 115, 32, 116, 104, 101, 32, 112, 114, 101, 118, 105, 111, 
117, 115, 32, 102, 105, 108, 101, 110, 97, 109, 101, 46, 10, 45, 45, 10, 45, 45, 32, 84, 
104, 101, 114, 101, 32, 99, 97, 110, 32, 98, 101, 32, 109, 117, 108, 116, 105, 112, 108, 101, 
32, 101, 110, 116, 114, 105, 101, 115, 32, 102, 111, 114, 32, 40, 109, 105, 100, 44, 102, 105, 
100, 41, 32, 105, 102, 32, 116, 104, 101, 32, 109, 105, 100, 32, 99, 104, 101, 99, 107, 45, 
105, 110, 32, 119, 97, 115, 10, 45, 45, 32, 97, 32, 109, 101, 114, 103, 101, 46, 32, 32, 
69, 110, 116, 114, 105, 101, 115, 32, 119, 105, 116, 104, 32, 105, 115, 97, 117, 120, 61, 61, 
48, 32, 97, 114, 101, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 112, 114, 105, 109, 97, 
114, 121, 32, 112, 97, 114, 101, 110, 116, 46, 32, 32, 77, 101, 114, 103, 101, 10, 45, 45, 
32, 112, 97, 114, 101, 110, 116, 115, 32, 104, 97, 118, 101, 32, 105, 115, 97, 117, 120, 32, 
115, 101, 116, 32, 116, 111, 32, 116, 114, 117, 101, 46, 10, 45, 45, 10, 45, 45, 32, 70, 
105, 101, 108, 100, 32, 110, 97, 109, 101, 32, 109, 110, 101, 109, 111, 110, 105, 99, 115, 58, 
10, 45, 45, 32, 32, 32, 32, 109, 105, 100, 32, 61, 32, 77, 97, 110, 105, 102, 101, 115, 
116, 32, 73, 68, 46, 32, 32, 40, 69, 97, 99, 104, 32, 99, 104, 101, 99, 107, 45, 105, 
110, 32, 105, 115, 32, 115, 116, 111, 114, 101, 100, 32, 97, 115, 32, 97, 32, 34, 77, 97, 
110, 105, 102, 101, 115, 116, 34, 41, 10, 45, 45, 32, 32, 32, 32, 102, 105, 100, 32, 61, 
32, 70, 105, 108, 101, 32, 73, 68, 46, 10, 45, 45, 32, 32, 32, 32, 112, 109, 105, 100, 
32, 61, 32, 80, 97, 114, 101, 110, 116, 32, 77, 97, 110, 105, 102, 101, 115, 116, 32, 73, 
68, 46, 10, 45, 45, 32, 32, 32, 32, 112, 105, 100, 32, 61, 32, 80, 97, 114, 101, 110, 
116, 32, 102, 105, 108, 101, 32, 73, 68, 46, 10, 45, 45, 32, 32, 32, 32, 102, 110, 105, 
100, 32, 61, 32, 70, 105, 108, 101, 32, 78, 97, 109, 101, 32, 73, 68, 46, 10, 45, 45, 
32, 32, 32, 32, 112, 102, 110, 105, 100, 32, 61, 32, 80, 97, 114, 101, 110, 116, 32, 70, 
105, 108, 101, 32, 78, 97, 109, 101, 32, 73, 68, 46, 10, 45, 45, 32, 32, 32, 32, 105, 
115, 97, 117, 120, 32, 61, 32, 112, 109, 105, 100, 32, 73, 83, 32, 65, 85, 88, 105, 108, 
105, 97, 114, 121, 32, 112, 97, 114, 101, 110, 116, 44, 32, 110, 111, 116, 32, 112, 114, 105, 
109, 97, 114, 121, 32, 112, 97, 114, 101, 110, 116, 10, 45, 45, 10, 45, 45, 32, 112, 105, 
100, 61, 61, 48, 32, 32, 32, 32, 105, 102, 32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 
105, 115, 32, 97, 100, 100, 101, 100, 32, 98, 121, 32, 99, 104, 101, 99, 107, 45, 105, 110, 
32, 109, 105, 100, 46, 10, 45, 45, 32, 112, 105, 100, 61, 61, 40, 45, 49, 41, 32, 105, 
102, 32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 101, 120, 105, 115, 116, 115, 32, 105, 110, 
32, 97, 32, 109, 101, 114, 103, 101, 32, 112, 97, 114, 101, 110, 116, 115, 32, 98, 117, 116, 
32, 110, 111, 116, 32, 105, 110, 32, 116, 104, 101, 32, 112, 114, 105, 109, 97, 114, 121, 10, 
45, 45, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 112, 97, 114, 101, 110, 116, 46, 
32, 32, 73, 110, 32, 111, 116, 104, 101, 114, 32, 119, 111, 114, 100, 115, 44, 32, 105, 102, 
32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 102, 105, 108, 101, 32, 119, 97, 115, 32, 97, 
100, 100, 101, 100, 32, 98, 121, 32, 109, 101, 114, 103, 101, 46, 10, 45, 45, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 40, 84, 79, 68, 79, 58, 32, 99, 111, 110, 102, 105, 
114, 109, 32, 105, 102, 47, 119, 104, 101, 114, 101, 32, 116, 104, 105, 115, 32, 105, 115, 32, 
117, 115, 101, 100, 32, 105, 110, 32, 102, 111, 115, 115, 105, 108, 32, 97, 110, 100, 32, 116, 
104, 101, 110, 32, 109, 97, 107, 101, 32, 115, 117, 114, 101, 10, 45, 45, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 108, 105, 98, 102, 111, 115, 115, 105, 108, 32, 100, 111, 101, 
115, 32, 115, 111, 44, 32, 116, 111, 111, 46, 41, 10, 45, 45, 32, 102, 105, 100, 61, 61, 
48, 32, 32, 32, 32, 105, 102, 32, 116, 104, 101, 32, 102, 105, 108, 101, 32, 105, 115, 32, 
114, 101, 109, 111, 118, 101, 100, 32, 98, 121, 32, 99, 104, 101, 99, 107, 45, 105, 110, 32, 
109, 105, 100, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 
32, 114, 101, 112, 111, 46, 109, 108, 105, 110, 107, 40, 10, 32, 32, 109, 105, 100, 32, 73, 
78, 84, 69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 67, 104, 
101, 99, 107, 45, 105, 110, 32, 116, 104, 97, 116, 32, 99, 111, 110, 116, 97, 105, 110, 115, 
32, 102, 105, 100, 10, 32, 32, 102, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 44, 32, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 78, 101, 119, 32, 102, 105, 108, 101, 32, 99, 
111, 110, 116, 101, 110, 116, 32, 82, 73, 68, 46, 32, 48, 32, 105, 102, 32, 100, 101, 108, 
101, 116, 101, 100, 10, 32, 32, 112, 109, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 44, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 67, 104, 101, 99, 107, 45, 105, 110, 32, 82, 
73, 68, 32, 116, 104, 97, 116, 32, 99, 111, 110, 116, 97, 105, 110, 115, 32, 112, 105, 100, 
10, 32, 32, 112, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 
32, 32, 32, 45, 45, 32, 80, 114, 101, 118, 32, 102, 105, 108, 101, 32, 99, 111, 110, 116, 
101, 110, 116, 32, 82, 73, 68, 46, 32, 48, 32, 105, 102, 32, 110, 101, 119, 46, 32, 45, 
49, 32, 105, 102, 32, 102, 114, 111, 109, 32, 97, 32, 109, 101, 114, 103, 101, 10, 32, 32, 
102, 110, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 70, 69, 82, 69, 78, 
67, 69, 83, 32, 102, 105, 108, 101, 110, 97, 109, 101, 44, 32, 32, 32, 45, 45, 32, 78, 
97, 109, 101, 32, 111, 102, 32, 116, 104, 101, 32, 102, 105, 108, 101, 10, 32, 32, 112, 102, 
110, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 70, 69, 82, 69, 78, 67, 
69, 83, 32, 102, 105, 108, 101, 110, 97, 109, 101, 44, 32, 32, 45, 45, 32, 80, 114, 101, 
118, 105, 111, 117, 115, 32, 110, 97, 109, 101, 46, 32, 48, 32, 105, 102, 32, 117, 110, 99, 
104, 97, 110, 103, 101, 100, 10, 32, 32, 109, 112, 101, 114, 109, 32, 73, 78, 84, 69, 71, 
69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 45, 45, 32, 70, 105, 108, 101, 32, 112, 101, 114, 109, 105, 115, 115, 
105, 111, 110, 115, 46, 32, 32, 49, 61, 61, 101, 120, 101, 99, 10, 32, 32, 105, 115, 97, 
117, 120, 32, 66, 79, 79, 76, 69, 65, 78, 32, 68, 69, 70, 65, 85, 76, 84, 32, 48, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 84, 82, 85, 69, 
32, 105, 102, 32, 112, 109, 105, 100, 32, 105, 115, 32, 116, 104, 101, 32, 112, 114, 105, 109, 
97, 114, 121, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 88, 32, 
114, 101, 112, 111, 46, 109, 108, 105, 110, 107, 95, 105, 49, 32, 79, 78, 32, 109, 108, 105, 
110, 107, 40, 109, 105, 100, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 
88, 32, 114, 101, 112, 111, 46, 109, 108, 105, 110, 107, 95, 105, 50, 32, 79, 78, 32, 109, 
108, 105, 110, 107, 40, 102, 110, 105, 100, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 
78, 68, 69, 88, 32, 114, 101, 112, 111, 46, 109, 108, 105, 110, 107, 95, 105, 51, 32, 79, 
78, 32, 109, 108, 105, 110, 107, 40, 102, 105, 100, 41, 59, 10, 67, 82, 69, 65, 84, 69, 
32, 73, 78, 68, 69, 88, 32, 114, 101, 112, 111, 46, 109, 108, 105, 110, 107, 95, 105, 52, 
32, 79, 78, 32, 109, 108, 105, 110, 107, 40, 112, 105, 100, 41, 59, 10, 10, 45, 45, 32, 
80, 97, 114, 101, 110, 116, 47, 99, 104, 105, 108, 100, 32, 108, 105, 110, 107, 97, 103, 101, 
115, 32, 98, 101, 116, 119, 101, 101, 110, 32, 99, 104, 101, 99, 107, 105, 110, 115, 10, 45, 
45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 
112, 108, 105, 110, 107, 40, 10, 32, 32, 112, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 
32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 98, 108, 111, 98, 44, 32, 32, 32, 
32, 45, 45, 32, 80, 97, 114, 101, 110, 116, 32, 109, 97, 110, 105, 102, 101, 115, 116, 10, 
32, 32, 99, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 70, 69, 82, 69, 
78, 67, 69, 83, 32, 98, 108, 111, 98, 44, 32, 32, 32, 32, 45, 45, 32, 67, 104, 105, 
108, 100, 32, 109, 97, 110, 105, 102, 101, 115, 116, 10, 32, 32, 105, 115, 112, 114, 105, 109, 
32, 66, 79, 79, 76, 69, 65, 78, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 45, 45, 32, 112, 105, 100, 32, 105, 115, 32, 116, 104, 101, 32, 
112, 114, 105, 109, 97, 114, 121, 32, 112, 97, 114, 101, 110, 116, 32, 111, 102, 32, 99, 105, 
100, 10, 32, 32, 109, 116, 105, 109, 101, 32, 68, 65, 84, 69, 84, 73, 77, 69, 44, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 116, 
104, 101, 32, 100, 97, 116, 101, 47, 116, 105, 109, 101, 32, 115, 116, 97, 109, 112, 32, 111, 
110, 32, 99, 105, 100, 46, 32, 32, 74, 117, 108, 105, 97, 110, 32, 100, 97, 121, 46, 10, 
32, 32, 98, 97, 115, 101, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 70, 
69, 82, 69, 78, 67, 69, 83, 32, 98, 108, 111, 98, 44, 32, 45, 45, 32, 66, 97, 115, 
101, 108, 105, 110, 101, 32, 105, 102, 32, 99, 105, 100, 32, 105, 115, 32, 97, 32, 100, 101, 
108, 116, 97, 32, 109, 97, 110, 105, 102, 101, 115, 116, 46, 10, 32, 32, 85, 78, 73, 81, 
85, 69, 40, 112, 105, 100, 44, 32, 99, 105, 100, 41, 10, 41, 59, 10, 67, 82, 69, 65, 
84, 69, 32, 73, 78, 68, 69, 88, 32, 114, 101, 112, 111, 46, 112, 108, 105, 110, 107, 95, 
105, 50, 32, 79, 78, 32, 112, 108, 105, 110, 107, 40, 99, 105, 100, 44, 112, 105, 100, 41, 
59, 10, 10, 45, 45, 32, 65, 32, 34, 108, 101, 97, 102, 34, 32, 99, 104, 101, 99, 107, 
105, 110, 32, 105, 115, 32, 97, 32, 99, 104, 101, 99, 107, 105, 110, 32, 116, 104, 97, 116, 
32, 104, 97, 115, 32, 110, 111, 32, 99, 104, 105, 108, 100, 114, 101, 110, 32, 105, 110, 32, 
116, 104, 101, 32, 115, 97, 109, 101, 10, 45, 45, 32, 98, 114, 97, 110, 99, 104, 46, 32, 
32, 84, 104, 101, 32, 115, 101, 116, 32, 111, 102, 32, 97, 108, 108, 32, 108, 101, 97, 118, 
101, 115, 32, 105, 115, 32, 101, 97, 115, 105, 108, 121, 32, 99, 111, 109, 112, 117, 116, 101, 
100, 32, 119, 105, 116, 104, 32, 97, 32, 106, 111, 105, 110, 44, 10, 45, 45, 32, 98, 101, 
116, 119, 101, 101, 110, 32, 116, 104, 101, 32, 112, 108, 105, 110, 107, 32, 97, 110, 100, 32, 
116, 97, 103, 120, 114, 101, 102, 32, 116, 97, 98, 108, 101, 115, 44, 32, 98, 117, 116, 32, 
105, 116, 32, 105, 115, 32, 97, 32, 115, 108, 111, 119, 101, 114, 32, 106, 111, 105, 110, 32, 
102, 111, 114, 10, 45, 45, 32, 118, 101, 114, 121, 32, 108, 97, 114, 103, 101, 32, 114, 101, 
112, 111, 115, 105, 116, 111, 114, 105, 101, 115, 32, 40, 114, 101, 112, 111, 115, 105, 116, 111, 
114, 105, 101, 115, 32, 119, 105, 116, 104, 32, 49, 48, 48, 44, 48, 48, 48, 32, 111, 114, 
32, 109, 111, 114, 101, 32, 99, 104, 101, 99, 107, 105, 110, 115, 41, 10, 45, 45, 32, 97, 
110, 100, 32, 115, 111, 32, 105, 116, 32, 109, 97, 107, 101, 115, 32, 115, 101, 110, 115, 101, 
32, 116, 111, 32, 112, 114, 101, 99, 111, 109, 112, 117, 116, 101, 32, 116, 104, 101, 32, 115, 
101, 116, 32, 111, 102, 32, 108, 101, 97, 118, 101, 115, 46, 32, 32, 84, 104, 101, 114, 101, 
32, 105, 115, 10, 45, 45, 32, 111, 110, 101, 32, 101, 110, 116, 114, 121, 32, 105, 110, 32, 
116, 104, 101, 32, 102, 111, 108, 108, 111, 119, 105, 110, 103, 32, 116, 97, 98, 108, 101, 32, 
102, 111, 114, 32, 101, 97, 99, 104, 32, 108, 101, 97, 102, 46, 10, 45, 45, 10, 67, 82, 
69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 108, 101, 97, 102, 
40, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 
32, 75, 69, 89, 41, 59, 10, 10, 45, 45, 32, 69, 118, 101, 110, 116, 115, 32, 117, 115, 
101, 100, 32, 116, 111, 32, 103, 101, 110, 101, 114, 97, 116, 101, 32, 97, 32, 116, 105, 109, 
101, 108, 105, 110, 101, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 
69, 32, 114, 101, 112, 111, 46, 101, 118, 101, 110, 116, 40, 10, 32, 32, 116, 121, 112, 101, 
32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 84, 121, 112, 101, 32, 111, 102, 32, 101, 
118, 101, 110, 116, 58, 32, 39, 99, 105, 39, 44, 32, 39, 119, 39, 44, 32, 39, 101, 39, 
44, 32, 39, 116, 39, 44, 32, 39, 103, 39, 10, 32, 32, 109, 116, 105, 109, 101, 32, 68, 
65, 84, 69, 84, 73, 77, 69, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 45, 45, 32, 84, 105, 109, 101, 32, 111, 102, 32, 111, 99, 99, 117, 
114, 114, 101, 110, 99, 101, 46, 32, 74, 117, 108, 105, 97, 110, 32, 100, 97, 121, 46, 10, 
32, 32, 111, 98, 106, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 
65, 82, 89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 32, 32, 45, 45, 32, 65, 115, 115, 
111, 99, 105, 97, 116, 101, 100, 32, 114, 101, 99, 111, 114, 100, 32, 73, 68, 10, 32, 32, 
116, 97, 103, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 65, 115, 115, 111, 99, 
105, 97, 116, 101, 100, 32, 116, 105, 99, 107, 101, 116, 32, 111, 114, 32, 119, 105, 107, 105, 
32, 110, 97, 109, 101, 32, 116, 97, 103, 10, 32, 32, 117, 105, 100, 32, 73, 78, 84, 69, 
71, 69, 82, 32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 117, 115, 101, 114, 44, 
32, 32, 32, 32, 45, 45, 32, 85, 115, 101, 114, 32, 119, 104, 111, 32, 99, 97, 117, 115, 
101, 100, 32, 116, 104, 101, 32, 101, 118, 101, 110, 116, 10, 32, 32, 98, 103, 99, 111, 108, 
111, 114, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 67, 111, 108, 111, 114, 32, 115, 101, 116, 32, 
98, 121, 32, 39, 98, 103, 99, 111, 108, 111, 114, 39, 32, 112, 114, 111, 112, 101, 114, 116, 
121, 10, 32, 32, 101, 117, 115, 101, 114, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 85, 
115, 101, 114, 32, 115, 101, 116, 32, 98, 121, 32, 39, 117, 115, 101, 114, 39, 32, 112, 114, 
111, 112, 101, 114, 116, 121, 10, 32, 32, 117, 115, 101, 114, 32, 84, 69, 88, 84, 44, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 45, 45, 32, 78, 97, 109, 101, 32, 111, 102, 32, 116, 104, 101, 32, 117, 115, 101, 114, 
10, 32, 32, 101, 99, 111, 109, 109, 101, 110, 116, 32, 84, 69, 88, 84, 44, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 67, 111, 
109, 109, 101, 110, 116, 32, 115, 101, 116, 32, 98, 121, 32, 39, 99, 111, 109, 109, 101, 110, 
116, 39, 32, 112, 114, 111, 112, 101, 114, 116, 121, 10, 32, 32, 99, 111, 109, 109, 101, 110, 
116, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 45, 45, 32, 67, 111, 109, 109, 101, 110, 116, 32, 100, 101, 115, 
99, 114, 105, 98, 105, 110, 103, 32, 116, 104, 101, 32, 101, 118, 101, 110, 116, 10, 32, 32, 
98, 114, 105, 101, 102, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 83, 104, 111, 114, 116, 
32, 99, 111, 109, 109, 101, 110, 116, 32, 119, 104, 101, 110, 32, 116, 97, 103, 105, 100, 32, 
97, 108, 114, 101, 97, 100, 121, 32, 115, 101, 101, 110, 10, 32, 32, 111, 109, 116, 105, 109, 
101, 32, 68, 65, 84, 69, 84, 73, 77, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 79, 114, 105, 103, 105, 110, 97, 108, 32, 117, 
110, 99, 104, 97, 110, 103, 101, 100, 32, 100, 97, 116, 101, 43, 116, 105, 109, 101, 44, 32, 
111, 114, 32, 78, 85, 76, 76, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 
68, 69, 88, 32, 114, 101, 112, 111, 46, 101, 118, 101, 110, 116, 95, 105, 49, 32, 79, 78, 
32, 101, 118, 101, 110, 116, 40, 109, 116, 105, 109, 101, 41, 59, 10, 10, 45, 45, 32, 65, 
32, 114, 101, 99, 111, 114, 100, 32, 111, 102, 32, 112, 104, 97, 110, 116, 111, 109, 115, 46, 
32, 32, 65, 32, 112, 104, 97, 110, 116, 111, 109, 32, 105, 115, 32, 97, 32, 114, 101, 99, 
111, 114, 100, 32, 102, 111, 114, 32, 119, 104, 105, 99, 104, 32, 119, 101, 32, 107, 110, 111, 
119, 32, 116, 104, 101, 10, 45, 45, 32, 85, 85, 73, 68, 32, 98, 117, 116, 32, 119, 101, 
32, 100, 111, 32, 110, 111, 116, 32, 40, 121, 101, 116, 41, 32, 107, 110, 111, 119, 32, 116, 
104, 101, 32, 102, 105, 108, 101, 32, 99, 111, 110, 116, 101, 110, 116, 46, 10, 45, 45, 10, 
67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 112, 104, 
97, 110, 116, 111, 109, 40, 10, 32, 32, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 
32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 45, 45, 32, 82, 101, 99, 111, 114, 100, 32, 73, 68, 32, 111, 102, 32, 116, 104, 101, 
32, 112, 104, 97, 110, 116, 111, 109, 10, 41, 59, 10, 10, 45, 45, 32, 65, 32, 114, 101, 
99, 111, 114, 100, 32, 111, 102, 32, 111, 114, 112, 104, 97, 110, 101, 100, 32, 100, 101, 108, 
116, 97, 45, 109, 97, 110, 105, 102, 101, 115, 116, 115, 46, 32, 32, 65, 110, 32, 111, 114, 
112, 104, 97, 110, 32, 105, 115, 32, 97, 32, 100, 101, 108, 116, 97, 45, 109, 97, 110, 105, 
102, 101, 115, 116, 10, 45, 45, 32, 102, 111, 114, 32, 119, 104, 105, 99, 104, 32, 119, 101, 
32, 104, 97, 118, 101, 32, 99, 111, 110, 116, 101, 110, 116, 44, 32, 98, 117, 116, 32, 105, 
116, 115, 32, 98, 97, 115, 101, 108, 105, 110, 101, 45, 109, 97, 110, 105, 102, 101, 115, 116, 
32, 105, 115, 32, 97, 32, 112, 104, 97, 110, 116, 111, 109, 46, 10, 45, 45, 32, 87, 101, 
32, 104, 97, 118, 101, 32, 116, 111, 32, 116, 114, 97, 99, 107, 32, 97, 108, 108, 32, 111, 
114, 112, 104, 97, 110, 32, 109, 97, 110, 105, 102, 101, 115, 116, 115, 32, 115, 111, 32, 116, 
104, 97, 116, 32, 119, 104, 101, 110, 32, 116, 104, 101, 32, 98, 97, 115, 101, 108, 105, 110, 
101, 32, 97, 114, 114, 105, 118, 101, 115, 44, 10, 45, 45, 32, 119, 101, 32, 107, 110, 111, 
119, 32, 116, 111, 32, 112, 114, 111, 99, 101, 115, 115, 32, 116, 104, 101, 32, 111, 114, 112, 
104, 97, 110, 101, 100, 32, 100, 101, 108, 116, 97, 115, 46, 10, 67, 82, 69, 65, 84, 69, 
32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 111, 114, 112, 104, 97, 110, 40, 10, 
32, 32, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 
89, 32, 75, 69, 89, 44, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 68, 101, 108, 
116, 97, 32, 109, 97, 110, 105, 102, 101, 115, 116, 32, 119, 105, 116, 104, 32, 97, 32, 112, 
104, 97, 110, 116, 111, 109, 32, 98, 97, 115, 101, 108, 105, 110, 101, 10, 32, 32, 98, 97, 
115, 101, 108, 105, 110, 101, 32, 73, 78, 84, 69, 71, 69, 82, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 80, 104, 97, 110, 116, 111, 109, 
32, 98, 97, 115, 101, 108, 105, 110, 101, 32, 111, 102, 32, 116, 104, 105, 115, 32, 111, 114, 
112, 104, 97, 110, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 88, 
32, 114, 101, 112, 111, 46, 111, 114, 112, 104, 97, 110, 95, 98, 97, 115, 101, 108, 105, 110, 
101, 32, 79, 78, 32, 111, 114, 112, 104, 97, 110, 40, 98, 97, 115, 101, 108, 105, 110, 101, 
41, 59, 10, 10, 45, 45, 32, 85, 110, 99, 108, 117, 115, 116, 101, 114, 101, 100, 32, 114, 
101, 99, 111, 114, 100, 115, 46, 32, 32, 65, 110, 32, 117, 110, 99, 108, 117, 115, 116, 101, 
114, 101, 100, 32, 114, 101, 99, 111, 114, 100, 32, 105, 115, 32, 97, 32, 114, 101, 99, 111, 
114, 100, 32, 40, 105, 110, 99, 108, 117, 100, 105, 110, 103, 10, 45, 45, 32, 97, 32, 99, 
108, 117, 115, 116, 101, 114, 32, 114, 101, 99, 111, 114, 100, 115, 32, 116, 104, 101, 109, 115, 
101, 108, 118, 101, 115, 41, 32, 116, 104, 97, 116, 32, 105, 115, 32, 110, 111, 116, 32, 109, 
101, 110, 116, 105, 111, 110, 101, 100, 32, 98, 121, 32, 115, 111, 109, 101, 32, 111, 116, 104, 
101, 114, 10, 45, 45, 32, 99, 108, 117, 115, 116, 101, 114, 46, 10, 45, 45, 10, 45, 45, 
32, 80, 104, 97, 110, 116, 111, 109, 115, 32, 97, 114, 101, 32, 117, 115, 117, 97, 108, 108, 
121, 32, 105, 110, 99, 108, 117, 100, 101, 100, 32, 105, 110, 32, 116, 104, 101, 32, 117, 110, 
99, 108, 117, 115, 116, 101, 114, 101, 100, 32, 116, 97, 98, 108, 101, 46, 32, 32, 65, 32, 
110, 101, 119, 32, 99, 108, 117, 115, 116, 101, 114, 10, 45, 45, 32, 119, 105, 108, 108, 32, 
110, 101, 118, 101, 114, 32, 98, 101, 32, 99, 114, 101, 97, 116, 101, 100, 32, 116, 104, 97, 
116, 32, 99, 111, 110, 116, 97, 105, 110, 115, 32, 97, 32, 112, 104, 97, 110, 116, 111, 109, 
46, 32, 32, 66, 117, 116, 32, 97, 110, 111, 116, 104, 101, 114, 32, 114, 101, 112, 111, 115, 
105, 116, 111, 114, 121, 10, 45, 45, 32, 109, 105, 103, 104, 116, 32, 115, 101, 110, 100, 32, 
117, 115, 32, 97, 32, 99, 108, 117, 115, 116, 101, 114, 32, 116, 104, 97, 116, 32, 99, 111, 
110, 116, 97, 105, 110, 115, 32, 101, 110, 116, 114, 105, 101, 115, 32, 116, 104, 97, 116, 32, 
97, 114, 101, 32, 112, 104, 97, 110, 116, 111, 109, 115, 32, 116, 111, 10, 45, 45, 32, 117, 
115, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 
101, 112, 111, 46, 117, 110, 99, 108, 117, 115, 116, 101, 114, 101, 100, 40, 10, 32, 32, 114, 
105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 
69, 89, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 82, 101, 99, 111, 114, 100, 
32, 73, 68, 32, 111, 102, 32, 116, 104, 101, 32, 117, 110, 99, 108, 117, 115, 116, 101, 114, 
101, 100, 32, 102, 105, 108, 101, 10, 41, 59, 10, 10, 45, 45, 32, 82, 101, 99, 111, 114, 
100, 115, 32, 119, 104, 105, 99, 104, 32, 104, 97, 118, 101, 32, 110, 101, 118, 101, 114, 32, 
98, 101, 101, 110, 32, 112, 117, 115, 104, 101, 100, 32, 116, 111, 32, 97, 110, 111, 116, 104, 
101, 114, 32, 115, 101, 114, 118, 101, 114, 46, 32, 32, 84, 104, 105, 115, 32, 105, 115, 10, 
45, 45, 32, 117, 115, 101, 100, 32, 116, 111, 32, 114, 101, 100, 117, 99, 101, 32, 112, 117, 
115, 104, 32, 111, 112, 101, 114, 97, 116, 105, 111, 110, 115, 32, 116, 111, 32, 97, 32, 115, 
105, 110, 103, 108, 101, 32, 72, 84, 84, 80, 32, 114, 101, 113, 117, 101, 115, 116, 32, 105, 
110, 32, 116, 104, 101, 10, 45, 45, 32, 99, 111, 109, 109, 111, 110, 32, 99, 97, 115, 101, 
32, 119, 104, 101, 110, 32, 111, 110, 101, 32, 114, 101, 112, 111, 115, 105, 116, 111, 114, 121, 
32, 111, 110, 108, 121, 32, 116, 97, 108, 107, 115, 32, 116, 111, 32, 97, 32, 115, 105, 110, 
103, 108, 101, 32, 115, 101, 114, 118, 101, 114, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 
69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 117, 110, 115, 101, 110, 116, 40, 
10, 32, 32, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 
82, 89, 32, 75, 69, 89, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 82, 101, 
99, 111, 114, 100, 32, 73, 68, 32, 111, 102, 32, 116, 104, 101, 32, 112, 104, 97, 110, 116, 
111, 109, 10, 41, 59, 10, 10, 45, 45, 32, 69, 97, 99, 104, 32, 98, 97, 115, 101, 108, 
105, 110, 101, 32, 111, 114, 32, 109, 97, 110, 105, 102, 101, 115, 116, 32, 99, 97, 110, 32, 
104, 97, 118, 101, 32, 111, 110, 101, 32, 111, 114, 32, 109, 111, 114, 101, 32, 116, 97, 103, 
115, 46, 32, 32, 65, 32, 116, 97, 103, 10, 45, 45, 32, 105, 115, 32, 100, 101, 102, 105, 
110, 101, 100, 32, 98, 121, 32, 97, 32, 114, 111, 119, 32, 105, 110, 32, 116, 104, 101, 32, 
110, 101, 120, 116, 32, 116, 97, 98, 108, 101, 46, 10, 45, 45, 32, 10, 45, 45, 32, 87, 
105, 107, 105, 32, 112, 97, 103, 101, 115, 32, 97, 114, 101, 32, 116, 97, 103, 103, 101, 100, 
32, 119, 105, 116, 104, 32, 34, 119, 105, 107, 105, 45, 78, 65, 77, 69, 34, 32, 119, 104, 
101, 114, 101, 32, 78, 65, 77, 69, 32, 105, 115, 32, 116, 104, 101, 32, 110, 97, 109, 101, 
32, 111, 102, 10, 45, 45, 32, 116, 104, 101, 32, 119, 105, 107, 105, 32, 112, 97, 103, 101, 
46, 32, 32, 84, 105, 99, 107, 101, 116, 115, 32, 99, 104, 97, 110, 103, 101, 115, 32, 97, 
114, 101, 32, 116, 97, 103, 103, 101, 100, 32, 119, 105, 116, 104, 32, 34, 116, 105, 99, 107, 
101, 116, 45, 85, 85, 73, 68, 34, 32, 119, 104, 101, 114, 101, 32, 10, 45, 45, 32, 85, 
85, 73, 68, 32, 105, 115, 32, 116, 104, 101, 32, 105, 110, 100, 101, 110, 116, 105, 102, 105, 
101, 114, 32, 111, 102, 32, 116, 104, 101, 32, 116, 105, 99, 107, 101, 116, 46, 32, 32, 84, 
97, 103, 115, 32, 117, 115, 101, 100, 32, 116, 111, 32, 97, 115, 115, 105, 103, 110, 32, 115, 
121, 109, 98, 111, 108, 105, 99, 10, 45, 45, 32, 110, 97, 109, 101, 115, 32, 116, 111, 32, 
98, 97, 115, 101, 108, 105, 110, 101, 115, 32, 97, 114, 101, 32, 98, 114, 97, 110, 99, 104, 
101, 115, 32, 97, 114, 101, 32, 111, 102, 32, 116, 104, 101, 32, 102, 111, 114, 109, 32, 34, 
115, 121, 109, 45, 78, 65, 77, 69, 34, 32, 119, 104, 101, 114, 101, 10, 45, 45, 32, 78, 
65, 77, 69, 32, 105, 115, 32, 116, 104, 101, 32, 115, 121, 109, 98, 111, 108, 105, 99, 32, 
110, 97, 109, 101, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 
69, 32, 114, 101, 112, 111, 46, 116, 97, 103, 40, 10, 32, 32, 116, 97, 103, 105, 100, 32, 
73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 78, 117, 109, 101, 114, 105, 99, 32, 116, 97, 
103, 32, 73, 68, 10, 32, 32, 116, 97, 103, 110, 97, 109, 101, 32, 84, 69, 88, 84, 32, 
85, 78, 73, 81, 85, 69, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
45, 45, 32, 84, 97, 103, 32, 110, 97, 109, 101, 46, 10, 41, 59, 10, 73, 78, 83, 69, 
82, 84, 32, 73, 78, 84, 79, 32, 114, 101, 112, 111, 46, 116, 97, 103, 32, 86, 65, 76, 
85, 69, 83, 40, 49, 44, 32, 39, 98, 103, 99, 111, 108, 111, 114, 39, 41, 59, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 70, 83, 76, 95, 84, 65, 71, 73, 68, 95, 
66, 71, 67, 79, 76, 79, 82, 10, 73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 32, 
114, 101, 112, 111, 46, 116, 97, 103, 32, 86, 65, 76, 85, 69, 83, 40, 50, 44, 32, 39, 
99, 111, 109, 109, 101, 110, 116, 39, 41, 59, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 
45, 32, 70, 83, 76, 95, 84, 65, 71, 73, 68, 95, 67, 79, 77, 77, 69, 78, 84, 10, 
73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 32, 114, 101, 112, 111, 46, 116, 97, 103, 
32, 86, 65, 76, 85, 69, 83, 40, 51, 44, 32, 39, 117, 115, 101, 114, 39, 41, 59, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 70, 83, 76, 95, 84, 65, 
71, 73, 68, 95, 85, 83, 69, 82, 10, 73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 
32, 114, 101, 112, 111, 46, 116, 97, 103, 32, 86, 65, 76, 85, 69, 83, 40, 52, 44, 32, 
39, 100, 97, 116, 101, 39, 41, 59, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
45, 45, 32, 70, 83, 76, 95, 84, 65, 71, 73, 68, 95, 68, 65, 84, 69, 10, 73, 78, 
83, 69, 82, 84, 32, 73, 78, 84, 79, 32, 114, 101, 112, 111, 46, 116, 97, 103, 32, 86, 
65, 76, 85, 69, 83, 40, 53, 44, 32, 39, 104, 105, 100, 100, 101, 110, 39, 41, 59, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 70, 83, 76, 95, 84, 65, 71, 73, 
68, 95, 72, 73, 68, 68, 69, 78, 10, 73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 
32, 114, 101, 112, 111, 46, 116, 97, 103, 32, 86, 65, 76, 85, 69, 83, 40, 54, 44, 32, 
39, 112, 114, 105, 118, 97, 116, 101, 39, 41, 59, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
45, 45, 32, 70, 83, 76, 95, 84, 65, 71, 73, 68, 95, 80, 82, 73, 86, 65, 84, 69, 
10, 73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 32, 114, 101, 112, 111, 46, 116, 97, 
103, 32, 86, 65, 76, 85, 69, 83, 40, 55, 44, 32, 39, 99, 108, 117, 115, 116, 101, 114, 
39, 41, 59, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 70, 83, 76, 95, 84, 
65, 71, 73, 68, 95, 67, 76, 85, 83, 84, 69, 82, 10, 73, 78, 83, 69, 82, 84, 32, 
73, 78, 84, 79, 32, 114, 101, 112, 111, 46, 116, 97, 103, 32, 86, 65, 76, 85, 69, 83, 
40, 56, 44, 32, 39, 98, 114, 97, 110, 99, 104, 39, 41, 59, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 45, 45, 32, 70, 83, 76, 95, 84, 65, 71, 73, 68, 95, 66, 82, 65, 
78, 67, 72, 10, 73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 32, 114, 101, 112, 111, 
46, 116, 97, 103, 32, 86, 65, 76, 85, 69, 83, 40, 57, 44, 32, 39, 99, 108, 111, 115, 
101, 100, 39, 41, 59, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 70, 83, 
76, 95, 84, 65, 71, 73, 68, 95, 67, 76, 79, 83, 69, 68, 10, 73, 78, 83, 69, 82, 
84, 32, 73, 78, 84, 79, 32, 114, 101, 112, 111, 46, 116, 97, 103, 32, 86, 65, 76, 85, 
69, 83, 40, 49, 48, 44, 39, 112, 97, 114, 101, 110, 116, 39, 41, 59, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 45, 45, 32, 70, 83, 76, 95, 84, 65, 71, 73, 68, 95, 80, 
65, 82, 69, 78, 84, 10, 73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 32, 114, 101, 
112, 111, 46, 116, 97, 103, 32, 86, 65, 76, 85, 69, 83, 40, 49, 49, 44, 39, 110, 111, 
116, 101, 39, 41, 59, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
70, 83, 76, 95, 84, 65, 71, 95, 78, 79, 84, 69, 10, 45, 45, 32, 97, 114, 103, 117, 
97, 98, 108, 101, 44, 32, 116, 111, 32, 102, 111, 114, 99, 101, 32, 97, 117, 116, 111, 45, 
105, 110, 99, 114, 101, 109, 101, 110, 116, 32, 116, 111, 32, 115, 116, 97, 114, 116, 32, 97, 
116, 32, 49, 48, 48, 58, 10, 45, 45, 32, 73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 
79, 32, 116, 97, 103, 32, 86, 65, 76, 85, 69, 83, 40, 57, 57, 44, 39, 70, 83, 76, 
95, 84, 65, 71, 73, 68, 95, 77, 65, 88, 95, 73, 78, 84, 69, 82, 78, 65, 76, 39, 
41, 59, 10, 10, 45, 45, 32, 65, 115, 115, 105, 103, 110, 109, 101, 110, 116, 115, 32, 111, 
102, 32, 116, 97, 103, 115, 32, 116, 111, 32, 98, 97, 115, 101, 108, 105, 110, 101, 115, 46, 
32, 32, 78, 111, 116, 101, 32, 116, 104, 97, 116, 32, 119, 101, 32, 97, 108, 108, 111, 119, 
32, 116, 97, 103, 115, 32, 116, 111, 10, 45, 45, 32, 104, 97, 118, 101, 32, 118, 97, 108, 
117, 101, 115, 32, 97, 115, 115, 105, 103, 110, 101, 100, 32, 116, 111, 32, 116, 104, 101, 109, 
46, 32, 32, 83, 111, 32, 119, 101, 32, 97, 114, 101, 32, 110, 111, 116, 32, 114, 101, 97, 
108, 108, 121, 32, 100, 101, 97, 108, 105, 110, 103, 32, 119, 105, 116, 104, 10, 45, 45, 32, 
116, 97, 103, 115, 32, 104, 101, 114, 101, 46, 32, 32, 84, 104, 101, 115, 101, 32, 97, 114, 
101, 32, 114, 101, 97, 108, 108, 121, 32, 112, 114, 111, 112, 101, 114, 116, 105, 101, 115, 46, 
32, 32, 66, 117, 116, 32, 119, 101, 32, 97, 114, 101, 32, 103, 111, 105, 110, 103, 32, 116, 
111, 10, 45, 45, 32, 107, 101, 101, 112, 32, 99, 97, 108, 108, 105, 110, 103, 32, 116, 104, 
101, 109, 32, 116, 97, 103, 115, 32, 98, 101, 99, 97, 117, 115, 101, 32, 105, 110, 32, 109, 
97, 110, 121, 32, 99, 97, 115, 101, 115, 32, 116, 104, 101, 32, 118, 97, 108, 117, 101, 32, 
105, 115, 32, 105, 103, 110, 111, 114, 101, 100, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 
69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 116, 97, 103, 120, 114, 101, 102, 
40, 10, 32, 32, 116, 97, 103, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 
70, 69, 82, 69, 78, 67, 69, 83, 32, 116, 97, 103, 44, 32, 32, 32, 45, 45, 32, 84, 
104, 101, 32, 116, 97, 103, 32, 116, 104, 97, 116, 32, 119, 97, 115, 32, 97, 100, 100, 101, 
100, 32, 111, 114, 32, 114, 101, 109, 111, 118, 101, 100, 10, 32, 32, 116, 97, 103, 116, 121, 
112, 101, 32, 73, 78, 84, 69, 71, 69, 82, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 48, 58, 45, 44, 99, 97, 110, 99, 101, 108, 
32, 32, 49, 58, 43, 44, 115, 105, 110, 103, 108, 101, 32, 32, 50, 58, 42, 44, 112, 114, 
111, 112, 97, 103, 97, 116, 101, 10, 32, 32, 115, 114, 99, 105, 100, 32, 73, 78, 84, 69, 
71, 69, 82, 32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 98, 108, 111, 98, 44, 
32, 32, 45, 45, 32, 65, 114, 116, 105, 102, 97, 99, 116, 32, 111, 102, 32, 116, 97, 103, 
46, 32, 48, 32, 102, 111, 114, 32, 112, 114, 111, 112, 97, 103, 97, 116, 101, 100, 32, 116, 
97, 103, 115, 10, 32, 32, 111, 114, 105, 103, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 
32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 98, 108, 111, 98, 44, 32, 45, 45, 
32, 99, 104, 101, 99, 107, 45, 105, 110, 32, 104, 111, 108, 100, 105, 110, 103, 32, 112, 114, 
111, 112, 97, 103, 97, 116, 101, 100, 32, 116, 97, 103, 10, 32, 32, 118, 97, 108, 117, 101, 
32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 86, 97, 108, 117, 101, 32, 111, 102, 32, 116, 
104, 101, 32, 116, 97, 103, 46, 32, 32, 77, 105, 103, 104, 116, 32, 98, 101, 32, 78, 85, 
76, 76, 46, 10, 32, 32, 109, 116, 105, 109, 101, 32, 84, 73, 77, 69, 83, 84, 65, 77, 
80, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 
32, 84, 105, 109, 101, 32, 111, 102, 32, 97, 100, 100, 105, 116, 105, 111, 110, 32, 111, 114, 
32, 114, 101, 109, 111, 118, 97, 108, 46, 32, 74, 117, 108, 105, 97, 110, 32, 100, 97, 121, 
10, 32, 32, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 69, 70, 69, 82, 
69, 78, 67, 69, 32, 98, 108, 111, 98, 44, 32, 32, 32, 32, 32, 45, 45, 32, 65, 114, 
116, 105, 102, 97, 99, 116, 32, 116, 97, 103, 32, 105, 115, 32, 97, 112, 112, 108, 105, 101, 
100, 32, 116, 111, 10, 32, 32, 85, 78, 73, 81, 85, 69, 40, 114, 105, 100, 44, 32, 116, 
97, 103, 105, 100, 41, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 
88, 32, 114, 101, 112, 111, 46, 116, 97, 103, 120, 114, 101, 102, 95, 105, 49, 32, 79, 78, 
32, 116, 97, 103, 120, 114, 101, 102, 40, 116, 97, 103, 105, 100, 44, 32, 109, 116, 105, 109, 
101, 41, 59, 10, 10, 45, 45, 32, 87, 104, 101, 110, 32, 97, 32, 104, 121, 112, 101, 114, 
108, 105, 110, 107, 32, 111, 99, 99, 117, 114, 115, 32, 102, 114, 111, 109, 32, 111, 110, 101, 
32, 97, 114, 116, 105, 102, 97, 99, 116, 32, 116, 111, 32, 97, 110, 111, 116, 104, 101, 114, 
32, 40, 102, 111, 114, 32, 101, 120, 97, 109, 112, 108, 101, 10, 45, 45, 32, 119, 104, 101, 
110, 32, 97, 32, 99, 104, 101, 99, 107, 45, 105, 110, 32, 99, 111, 109, 109, 101, 110, 116, 
32, 114, 101, 102, 101, 114, 115, 32, 116, 111, 32, 97, 32, 116, 105, 99, 107, 101, 116, 41, 
32, 97, 110, 32, 101, 110, 116, 114, 121, 32, 105, 115, 32, 109, 97, 100, 101, 32, 105, 110, 
10, 45, 45, 32, 116, 104, 101, 32, 102, 111, 108, 108, 111, 119, 105, 110, 103, 32, 116, 97, 
98, 108, 101, 32, 102, 111, 114, 32, 116, 104, 97, 116, 32, 104, 121, 112, 101, 114, 108, 105, 
110, 107, 46, 32, 32, 84, 104, 105, 115, 32, 116, 97, 98, 108, 101, 32, 105, 115, 32, 117, 
115, 101, 100, 32, 116, 111, 10, 45, 45, 32, 102, 97, 99, 105, 108, 105, 116, 97, 116, 101, 
32, 116, 104, 101, 32, 100, 105, 115, 112, 108, 97, 121, 32, 111, 102, 32, 34, 98, 97, 99, 
107, 32, 108, 105, 110, 107, 115, 34, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 69, 32, 
84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 98, 97, 99, 107, 108, 105, 110, 107, 40, 
10, 32, 32, 116, 97, 114, 103, 101, 116, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 45, 45, 32, 87, 104, 101, 114, 101, 32, 116, 104, 101, 32, 104, 
121, 112, 101, 114, 108, 105, 110, 107, 32, 112, 111, 105, 110, 116, 115, 32, 116, 111, 10, 32, 
32, 115, 114, 99, 116, 121, 112, 101, 32, 73, 78, 84, 44, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 45, 45, 32, 48, 58, 32, 99, 104, 101, 99, 107, 45, 105, 110, 32, 32, 
49, 58, 32, 116, 105, 99, 107, 101, 116, 32, 32, 50, 58, 32, 119, 105, 107, 105, 10, 32, 
32, 115, 114, 99, 105, 100, 32, 73, 78, 84, 44, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 45, 45, 32, 114, 105, 100, 32, 102, 111, 114, 32, 99, 104, 101, 99, 107, 
105, 110, 32, 111, 114, 32, 119, 105, 107, 105, 46, 32, 32, 116, 107, 116, 95, 105, 100, 32, 
102, 111, 114, 32, 116, 105, 99, 107, 101, 116, 46, 10, 32, 32, 109, 116, 105, 109, 101, 32, 
84, 73, 77, 69, 83, 84, 65, 77, 80, 44, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
116, 105, 109, 101, 32, 116, 104, 97, 116, 32, 116, 104, 101, 32, 104, 121, 112, 101, 114, 108, 
105, 110, 107, 32, 119, 97, 115, 32, 97, 100, 100, 101, 100, 46, 32, 74, 117, 108, 105, 97, 
110, 32, 100, 97, 121, 46, 10, 32, 32, 85, 78, 73, 81, 85, 69, 40, 116, 97, 114, 103, 
101, 116, 44, 32, 115, 114, 99, 116, 121, 112, 101, 44, 32, 115, 114, 99, 105, 100, 41, 10, 
41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 88, 32, 114, 101, 112, 111, 
46, 98, 97, 99, 107, 108, 105, 110, 107, 95, 115, 114, 99, 32, 79, 78, 32, 98, 97, 99, 
107, 108, 105, 110, 107, 40, 115, 114, 99, 105, 100, 44, 32, 115, 114, 99, 116, 121, 112, 101, 
41, 59, 10, 10, 45, 45, 32, 69, 97, 99, 104, 32, 97, 116, 116, 97, 99, 104, 109, 101, 
110, 116, 32, 105, 115, 32, 97, 110, 32, 101, 110, 116, 114, 121, 32, 105, 110, 32, 116, 104, 
101, 32, 102, 111, 108, 108, 111, 119, 105, 110, 103, 32, 116, 97, 98, 108, 101, 46, 32, 32, 
79, 110, 108, 121, 10, 45, 45, 32, 116, 104, 101, 32, 109, 111, 115, 116, 32, 114, 101, 99, 
101, 110, 116, 32, 97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 32, 40, 105, 100, 101, 110, 
116, 105, 102, 105, 101, 100, 32, 98, 121, 32, 116, 104, 101, 32, 68, 32, 99, 97, 114, 100, 
41, 32, 105, 115, 32, 115, 97, 118, 101, 100, 46, 10, 45, 45, 10, 67, 82, 69, 65, 84, 
69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 97, 116, 116, 97, 99, 104, 109, 
101, 110, 116, 40, 10, 32, 32, 97, 116, 116, 97, 99, 104, 105, 100, 32, 73, 78, 84, 69, 
71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 32, 32, 32, 45, 
45, 32, 76, 111, 99, 97, 108, 32, 105, 100, 32, 102, 111, 114, 32, 116, 104, 105, 115, 32, 
97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 10, 32, 32, 105, 115, 76, 97, 116, 101, 115, 
116, 32, 66, 79, 79, 76, 69, 65, 78, 32, 68, 69, 70, 65, 85, 76, 84, 32, 48, 44, 
32, 32, 32, 32, 32, 45, 45, 32, 84, 114, 117, 101, 32, 105, 102, 32, 116, 104, 105, 115, 
32, 105, 115, 32, 116, 104, 101, 32, 111, 110, 101, 32, 116, 111, 32, 117, 115, 101, 10, 32, 
32, 109, 116, 105, 109, 101, 32, 84, 73, 77, 69, 83, 84, 65, 77, 80, 44, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 76, 97, 115, 116, 
32, 99, 104, 97, 110, 103, 101, 100, 46, 32, 32, 74, 117, 108, 105, 97, 110, 32, 100, 97, 
121, 46, 10, 32, 32, 115, 114, 99, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
85, 85, 73, 68, 32, 111, 102, 32, 116, 104, 101, 32, 97, 116, 116, 97, 99, 104, 109, 101, 
110, 116, 46, 32, 32, 78, 85, 76, 76, 32, 116, 111, 32, 100, 101, 108, 101, 116, 101, 10, 
32, 32, 116, 97, 114, 103, 101, 116, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 79, 98, 106, 
101, 99, 116, 32, 97, 116, 116, 97, 99, 104, 101, 100, 32, 116, 111, 46, 32, 87, 105, 107, 
105, 110, 97, 109, 101, 32, 111, 114, 32, 84, 107, 116, 32, 85, 85, 73, 68, 10, 32, 32, 
102, 105, 108, 101, 110, 97, 109, 101, 32, 84, 69, 88, 84, 44, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 70, 105, 108, 101, 110, 
97, 109, 101, 32, 102, 111, 114, 32, 116, 104, 101, 32, 97, 116, 116, 97, 99, 104, 109, 101, 
110, 116, 10, 32, 32, 99, 111, 109, 109, 101, 110, 116, 32, 84, 69, 88, 84, 44, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 
67, 111, 109, 109, 101, 110, 116, 32, 97, 115, 115, 111, 99, 105, 97, 116, 101, 100, 32, 119, 
105, 116, 104, 32, 116, 104, 105, 115, 32, 97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 10, 
32, 32, 117, 115, 101, 114, 32, 84, 69, 88, 84, 32, 32, 32, 32, 32, 32, 32, 32, 32, 
32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 78, 97, 109, 
101, 32, 111, 102, 32, 117, 115, 101, 114, 32, 97, 100, 100, 105, 110, 103, 32, 97, 116, 116, 
97, 99, 104, 109, 101, 110, 116, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 
68, 69, 88, 32, 114, 101, 112, 111, 46, 97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 95, 
105, 100, 120, 49, 32, 79, 78, 32, 97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 40, 116, 
97, 114, 103, 101, 116, 44, 32, 102, 105, 108, 101, 110, 97, 109, 101, 44, 32, 109, 116, 105, 
109, 101, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 88, 32, 114, 101, 
112, 111, 46, 97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 95, 105, 100, 120, 50, 32, 79, 
78, 32, 97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 40, 115, 114, 99, 41, 59, 10, 10, 
45, 45, 32, 70, 111, 114, 32, 116, 114, 97, 99, 107, 105, 110, 103, 32, 99, 104, 101, 114, 
114, 121, 112, 105, 99, 107, 32, 109, 101, 114, 103, 101, 115, 10, 67, 82, 69, 65, 84, 69, 
32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 99, 104, 101, 114, 114, 121, 112, 105, 
99, 107, 40, 10, 32, 32, 112, 97, 114, 101, 110, 116, 105, 100, 32, 73, 78, 84, 44, 10, 
32, 32, 99, 104, 105, 108, 100, 105, 100, 32, 73, 78, 84, 44, 10, 32, 32, 105, 115, 69, 
120, 99, 108, 117, 100, 101, 32, 66, 79, 79, 76, 69, 65, 78, 32, 68, 69, 70, 65, 85, 
76, 84, 32, 102, 97, 108, 115, 101, 44, 10, 32, 32, 80, 82, 73, 77, 65, 82, 89, 32, 
75, 69, 89, 40, 112, 97, 114, 101, 110, 116, 105, 100, 44, 32, 99, 104, 105, 108, 100, 105, 
100, 41, 10, 41, 32, 87, 73, 84, 72, 79, 85, 84, 32, 82, 79, 87, 73, 68, 59, 10, 
67, 82, 69, 65, 84, 69, 32, 73, 78, 68, 69, 88, 32, 114, 101, 112, 111, 46, 99, 104, 
101, 114, 114, 121, 112, 105, 99, 107, 95, 99, 105, 100, 32, 79, 78, 32, 99, 104, 101, 114, 
114, 121, 112, 105, 99, 107, 40, 99, 104, 105, 108, 100, 105, 100, 41, 59, 10, 
0};
char const * fsl_schema_repo2_cstr = fsl_schema_repo2_cstr_a;
/* end of ../sql/repo-transient.sql */
Added src/fsl_schema_ticket_cstr.c.




































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
/* Binary form of file ../sql/ticket.sql */
/** @page page_fsl_schema_ticket_cstr Schema: ticket.sql
@code
-- Template for the TICKET table
CREATE TABLE repo.ticket(
  -- Do not change any column that begins with tkt_
  tkt_id INTEGER PRIMARY KEY,
  tkt_uuid TEXT UNIQUE,
  tkt_mtime DATE,
  tkt_ctime DATE,
  -- Add as many field as required below this line
  type TEXT,
  status TEXT,
  subsystem TEXT,
  priority TEXT,
  severity TEXT,
  foundin TEXT,
  private_contact TEXT,
  resolution TEXT,
  title TEXT,
  comment TEXT
);
CREATE TABLE repo.ticketchng(
  -- Do not change any column that begins with tkt_
  tkt_id INTEGER REFERENCES ticket,
  tkt_rid INTEGER REFERENCES blob,
  tkt_mtime DATE,
  -- Add as many fields as required below this line
  login TEXT,
  username TEXT,
  mimetype TEXT,
  icomment TEXT
);
CREATE INDEX repo.ticketchng_idx1 ON ticketchng(tkt_id, tkt_mtime);
 @endcode
 @see fsl_schema_ticket()
*/
/* auto-generated code - edit at your own risk! (Good luck with that!) */
static char const fsl_schema_ticket_cstr_a[] = {
45, 45, 32, 84, 101, 109, 112, 108, 97, 116, 101, 32, 102, 111, 114, 32, 116, 104, 101, 32, 
84, 73, 67, 75, 69, 84, 32, 116, 97, 98, 108, 101, 10, 67, 82, 69, 65, 84, 69, 32, 
84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 46, 116, 105, 99, 107, 101, 116, 40, 10, 32, 
32, 45, 45, 32, 68, 111, 32, 110, 111, 116, 32, 99, 104, 97, 110, 103, 101, 32, 97, 110, 
121, 32, 99, 111, 108, 117, 109, 110, 32, 116, 104, 97, 116, 32, 98, 101, 103, 105, 110, 115, 
32, 119, 105, 116, 104, 32, 116, 107, 116, 95, 10, 32, 32, 116, 107, 116, 95, 105, 100, 32, 
73, 78, 84, 69, 71, 69, 82, 32, 80, 82, 73, 77, 65, 82, 89, 32, 75, 69, 89, 44, 
10, 32, 32, 116, 107, 116, 95, 117, 117, 105, 100, 32, 84, 69, 88, 84, 32, 85, 78, 73, 
81, 85, 69, 44, 10, 32, 32, 116, 107, 116, 95, 109, 116, 105, 109, 101, 32, 68, 65, 84, 
69, 44, 10, 32, 32, 116, 107, 116, 95, 99, 116, 105, 109, 101, 32, 68, 65, 84, 69, 44, 
10, 32, 32, 45, 45, 32, 65, 100, 100, 32, 97, 115, 32, 109, 97, 110, 121, 32, 102, 105, 
101, 108, 100, 32, 97, 115, 32, 114, 101, 113, 117, 105, 114, 101, 100, 32, 98, 101, 108, 111, 
119, 32, 116, 104, 105, 115, 32, 108, 105, 110, 101, 10, 32, 32, 116, 121, 112, 101, 32, 84, 
69, 88, 84, 44, 10, 32, 32, 115, 116, 97, 116, 117, 115, 32, 84, 69, 88, 84, 44, 10, 
32, 32, 115, 117, 98, 115, 121, 115, 116, 101, 109, 32, 84, 69, 88, 84, 44, 10, 32, 32, 
112, 114, 105, 111, 114, 105, 116, 121, 32, 84, 69, 88, 84, 44, 10, 32, 32, 115, 101, 118, 
101, 114, 105, 116, 121, 32, 84, 69, 88, 84, 44, 10, 32, 32, 102, 111, 117, 110, 100, 105, 
110, 32, 84, 69, 88, 84, 44, 10, 32, 32, 112, 114, 105, 118, 97, 116, 101, 95, 99, 111, 
110, 116, 97, 99, 116, 32, 84, 69, 88, 84, 44, 10, 32, 32, 114, 101, 115, 111, 108, 117, 
116, 105, 111, 110, 32, 84, 69, 88, 84, 44, 10, 32, 32, 116, 105, 116, 108, 101, 32, 84, 
69, 88, 84, 44, 10, 32, 32, 99, 111, 109, 109, 101, 110, 116, 32, 84, 69, 88, 84, 10, 
41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 84, 65, 66, 76, 69, 32, 114, 101, 112, 111, 
46, 116, 105, 99, 107, 101, 116, 99, 104, 110, 103, 40, 10, 32, 32, 45, 45, 32, 68, 111, 
32, 110, 111, 116, 32, 99, 104, 97, 110, 103, 101, 32, 97, 110, 121, 32, 99, 111, 108, 117, 
109, 110, 32, 116, 104, 97, 116, 32, 98, 101, 103, 105, 110, 115, 32, 119, 105, 116, 104, 32, 
116, 107, 116, 95, 10, 32, 32, 116, 107, 116, 95, 105, 100, 32, 73, 78, 84, 69, 71, 69, 
82, 32, 82, 69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 116, 105, 99, 107, 101, 116, 44, 
10, 32, 32, 116, 107, 116, 95, 114, 105, 100, 32, 73, 78, 84, 69, 71, 69, 82, 32, 82, 
69, 70, 69, 82, 69, 78, 67, 69, 83, 32, 98, 108, 111, 98, 44, 10, 32, 32, 116, 107, 
116, 95, 109, 116, 105, 109, 101, 32, 68, 65, 84, 69, 44, 10, 32, 32, 45, 45, 32, 65, 
100, 100, 32, 97, 115, 32, 109, 97, 110, 121, 32, 102, 105, 101, 108, 100, 115, 32, 97, 115, 
32, 114, 101, 113, 117, 105, 114, 101, 100, 32, 98, 101, 108, 111, 119, 32, 116, 104, 105, 115, 
32, 108, 105, 110, 101, 10, 32, 32, 108, 111, 103, 105, 110, 32, 84, 69, 88, 84, 44, 10, 
32, 32, 117, 115, 101, 114, 110, 97, 109, 101, 32, 84, 69, 88, 84, 44, 10, 32, 32, 109, 
105, 109, 101, 116, 121, 112, 101, 32, 84, 69, 88, 84, 44, 10, 32, 32, 105, 99, 111, 109, 
109, 101, 110, 116, 32, 84, 69, 88, 84, 10, 41, 59, 10, 67, 82, 69, 65, 84, 69, 32, 
73, 78, 68, 69, 88, 32, 114, 101, 112, 111, 46, 116, 105, 99, 107, 101, 116, 99, 104, 110, 
103, 95, 105, 100, 120, 49, 32, 79, 78, 32, 116, 105, 99, 107, 101, 116, 99, 104, 110, 103, 
40, 116, 107, 116, 95, 105, 100, 44, 32, 116, 107, 116, 95, 109, 116, 105, 109, 101, 41, 59, 
10, 
0};
char const * fsl_schema_ticket_cstr = fsl_schema_ticket_cstr_a;
/* end of ../sql/ticket.sql */
Added src/fsl_schema_ticket_reports_cstr.c.
































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/* Binary form of file ../sql/ticket-reports.sql */
/** @page page_fsl_schema_ticket_reports_cstr Schema: ticket-reports.sql
@code
INSERT INTO reportfmt(title,mtime,cols,sqlcode) 
VALUES('All Tickets',julianday('1970-01-01'),'#ffffff Key:
#f2dcdc Active
#e8e8e8 Review
#cfe8bd Fixed
#bde5d6 Tested
#cacae5 Deferred
#c8c8c8 Closed','SELECT
  CASE WHEN status IN (''Open'',''Verified'') THEN ''#f2dcdc''
       WHEN status=''Review'' THEN ''#e8e8e8''
       WHEN status=''Fixed'' THEN ''#cfe8bd''
       WHEN status=''Tested'' THEN ''#bde5d6''
       WHEN status=''Deferred'' THEN ''#cacae5''
       ELSE ''#c8c8c8'' END AS ''bgcolor'',
  substr(tkt_uuid,1,10) AS ''#'',
  datetime(tkt_mtime) AS ''mtime'',
  type,
  status,
  subsystem,
  title
FROM ticket');
 @endcode
 @see fsl_schema_ticket_reports()
*/
/* auto-generated code - edit at your own risk! (Good luck with that!) */
static char const fsl_schema_ticket_reports_cstr_a[] = {
73, 78, 83, 69, 82, 84, 32, 73, 78, 84, 79, 32, 114, 101, 112, 111, 114, 116, 102, 109, 
116, 40, 116, 105, 116, 108, 101, 44, 109, 116, 105, 109, 101, 44, 99, 111, 108, 115, 44, 115, 
113, 108, 99, 111, 100, 101, 41, 32, 10, 86, 65, 76, 85, 69, 83, 40, 39, 65, 108, 108, 
32, 84, 105, 99, 107, 101, 116, 115, 39, 44, 106, 117, 108, 105, 97, 110, 100, 97, 121, 40, 
39, 49, 57, 55, 48, 45, 48, 49, 45, 48, 49, 39, 41, 44, 39, 35, 102, 102, 102, 102, 
102, 102, 32, 75, 101, 121, 58, 10, 35, 102, 50, 100, 99, 100, 99, 32, 65, 99, 116, 105, 
118, 101, 10, 35, 101, 56, 101, 56, 101, 56, 32, 82, 101, 118, 105, 101, 119, 10, 35, 99, 
102, 101, 56, 98, 100, 32, 70, 105, 120, 101, 100, 10, 35, 98, 100, 101, 53, 100, 54, 32, 
84, 101, 115, 116, 101, 100, 10, 35, 99, 97, 99, 97, 101, 53, 32, 68, 101, 102, 101, 114, 
114, 101, 100, 10, 35, 99, 56, 99, 56, 99, 56, 32, 67, 108, 111, 115, 101, 100, 39, 44, 
39, 83, 69, 76, 69, 67, 84, 10, 32, 32, 67, 65, 83, 69, 32, 87, 72, 69, 78, 32, 
115, 116, 97, 116, 117, 115, 32, 73, 78, 32, 40, 39, 39, 79, 112, 101, 110, 39, 39, 44, 
39, 39, 86, 101, 114, 105, 102, 105, 101, 100, 39, 39, 41, 32, 84, 72, 69, 78, 32, 39, 
39, 35, 102, 50, 100, 99, 100, 99, 39, 39, 10, 32, 32, 32, 32, 32, 32, 32, 87, 72, 
69, 78, 32, 115, 116, 97, 116, 117, 115, 61, 39, 39, 82, 101, 118, 105, 101, 119, 39, 39, 
32, 84, 72, 69, 78, 32, 39, 39, 35, 101, 56, 101, 56, 101, 56, 39, 39, 10, 32, 32, 
32, 32, 32, 32, 32, 87, 72, 69, 78, 32, 115, 116, 97, 116, 117, 115, 61, 39, 39, 70, 
105, 120, 101, 100, 39, 39, 32, 84, 72, 69, 78, 32, 39, 39, 35, 99, 102, 101, 56, 98, 
100, 39, 39, 10, 32, 32, 32, 32, 32, 32, 32, 87, 72, 69, 78, 32, 115, 116, 97, 116, 
117, 115, 61, 39, 39, 84, 101, 115, 116, 101, 100, 39, 39, 32, 84, 72, 69, 78, 32, 39, 
39, 35, 98, 100, 101, 53, 100, 54, 39, 39, 10, 32, 32, 32, 32, 32, 32, 32, 87, 72, 
69, 78, 32, 115, 116, 97, 116, 117, 115, 61, 39, 39, 68, 101, 102, 101, 114, 114, 101, 100, 
39, 39, 32, 84, 72, 69, 78, 32, 39, 39, 35, 99, 97, 99, 97, 101, 53, 39, 39, 10, 
32, 32, 32, 32, 32, 32, 32, 69, 76, 83, 69, 32, 39, 39, 35, 99, 56, 99, 56, 99, 
56, 39, 39, 32, 69, 78, 68, 32, 65, 83, 32, 39, 39, 98, 103, 99, 111, 108, 111, 114, 
39, 39, 44, 10, 32, 32, 115, 117, 98, 115, 116, 114, 40, 116, 107, 116, 95, 117, 117, 105, 
100, 44, 49, 44, 49, 48, 41, 32, 65, 83, 32, 39, 39, 35, 39, 39, 44, 10, 32, 32, 
100, 97, 116, 101, 116, 105, 109, 101, 40, 116, 107, 116, 95, 109, 116, 105, 109, 101, 41, 32, 
65, 83, 32, 39, 39, 109, 116, 105, 109, 101, 39, 39, 44, 10, 32, 32, 116, 121, 112, 101, 
44, 10, 32, 32, 115, 116, 97, 116, 117, 115, 44, 10, 32, 32, 115, 117, 98, 115, 121, 115, 
116, 101, 109, 44, 10, 32, 32, 116, 105, 116, 108, 101, 10, 70, 82, 79, 77, 32, 116, 105, 
99, 107, 101, 116, 39, 41, 59, 10, 
0};
char const * fsl_schema_ticket_reports_cstr = fsl_schema_ticket_reports_cstr_a;
/* end of ../sql/ticket-reports.sql */