add date*' and exn:fail:syntax:unbound'

The `date*' structure type is an extension of `date' with
`nanosecond' and `time-zone-name' fields.

The `seconds->date' function now accepts a real and returns a
`date*'. The fractional part of its argument goes into the
`nanosecond' field.
This commit is contained in:
Matthew Flatt 2011-09-28 20:20:05 -06:00
parent 58097a12fe
commit ac8990d519
24 changed files with 624 additions and 388 deletions

View File

@ -193,6 +193,24 @@
'(#f #f #f)
(quote-syntax exn:fail)))
(λ () (quote-syntax kernel:exn:fail:syntax)))))
(begin
(#%require
(rename '#%kernel kernel:exn:fail:syntax:unbound exn:fail:syntax:unbound))
(define make-exn:fail:syntax:unbound kernel:exn:fail:syntax:unbound)
(define-syntax exn:fail:syntax:unbound
(make-self-ctr-struct-info
(λ ()
(list
(quote-syntax struct:exn:fail:syntax:unbound)
(quote-syntax make-exn:fail:syntax:unbound)
(quote-syntax exn:fail:syntax:unbound?)
(list
(quote-syntax exn:fail:syntax-exprs)
(quote-syntax exn-continuation-marks)
(quote-syntax exn-message))
'(#f #f #f)
(quote-syntax exn:fail:syntax)))
(λ () (quote-syntax kernel:exn:fail:syntax:unbound)))))
(begin
(#%require (rename '#%kernel kernel:exn:fail:read exn:fail:read))
(define make-exn:fail:read kernel:exn:fail:read)
@ -422,6 +440,32 @@
'(#f #f #f #f #f #f #f #f #f #f)
#t))
(λ () (quote-syntax kernel:date)))))
(begin
(#%require (rename '#%kernel kernel:date* date*))
(define make-date* kernel:date*)
(define-syntax date*
(make-self-ctr-struct-info
(λ ()
(list
(quote-syntax struct:date*)
(quote-syntax make-date*)
(quote-syntax date*?)
(list
(quote-syntax date*-time-zone-name)
(quote-syntax date*-nanosecond)
(quote-syntax date-time-zone-offset)
(quote-syntax date-dst?)
(quote-syntax date-year-day)
(quote-syntax date-week-day)
(quote-syntax date-year)
(quote-syntax date-month)
(quote-syntax date-day)
(quote-syntax date-hour)
(quote-syntax date-minute)
(quote-syntax date-second))
'(#f #f #f #f #f #f #f #f #f #f #f #f)
#t))
(λ () (quote-syntax kernel:date*)))))
(begin
(#%require (rename '#%kernel kernel:srcloc srcloc))
(define make-srcloc kernel:srcloc)

View File

@ -1,6 +1,7 @@
(module serialize racket/base
(require syntax/modcollapse
unstable/struct
racket/list
"serialize-structs.rkt")
;; This module implements the core serializer. The syntactic
@ -229,8 +230,10 @@
(loop (mcdr v))]
[(box? v)
(loop (unbox v))]
[(date*? v)
(for-each loop (take (struct->list v) 12))]
[(date? v)
(for-each loop (struct->list v))]
(for-each loop (take (struct->list v) 10))]
[(hash? v)
(hash-for-each v (lambda (k v)
(loop k)
@ -316,9 +319,12 @@
(hash-map v (lambda (k v)
(cons (loop k)
(loop v))))))]
[(date*? v)
(cons 'date*
(map (serial #t) (take (struct->list v) 12)))]
[(date? v)
(cons 'date
(map (serial #t) (struct->list v)))]
(map (serial #t) (take (struct->list v) 10)))]
[(arity-at-least? v)
(cons 'arity-at-least
((serial #t) (arity-at-least-value v)))]
@ -381,7 +387,7 @@
[main-serialized (serialize-one v share #t mod-map mod-map-cache)]
[mod-map-l (map car (sort (hash-map mod-map cons)
(lambda (a b) (< (cdr a) (cdr b)))))])
(list '(2) ;; serialization-format version
(list '(3) ;; serialization-format version
(hash-count mod-map)
(map (lambda (v) (if (symbol-interned? (cdr v))
v
@ -482,6 +488,7 @@
(make-immutable-hash al)
(make-immutable-hasheqv al)))))]
[(date) (apply make-date (map loop (cdr v)))]
[(date*) (apply make-date* (map loop (cdr v)))]
[(arity-at-least) (make-arity-at-least (loop (cdr v)))]
[(mpi) (module-path-index-join (loop (cadr v))
(loop (cddr v)))]

View File

@ -494,6 +494,12 @@ Raised for a syntax error that is not a @racket[read] error. The
@racket[exprs] indicate the relevant source expressions,
least-specific to most-specific.}
@defstruct[(exn:fail:syntax:unbound exn:fail:syntax) ()
#:inspector #f]{
Raised by @racket[#%top] or @racket[set!] for an
unbound identifier within a module.}
@defstruct[(exn:fail:read exn:fail) ([srclocs (listof srcloc?)])
#:inspector #f]{

View File

@ -47,7 +47,7 @@ The following kinds of values are serializable:
@item{@tech{pairs}, @tech{mutable pairs}, @tech{vectors}, @tech{box}es, @tech{hash tables}, and @tech{sets};}
@item{@racket[date] and @racket[arity-at-least] structures; and}
@item{@racket[date], @racket[date*], and @racket[arity-at-least] structures; and}
@item{@tech{module path index} values.}
@ -83,11 +83,12 @@ elements:
@itemize[
@item{An optional list @racket['(1)] or @racket['(2)] that represents
@item{An optional list @racket['(1)], @racket['(2)], or @racket['(3)] that represents
the version of the serialization format. If the first element
of a representation is not a list, then the version is
@racket[0]. Version 1 adds support for mutable pairs, and
version 2 adds support for @tech{unreadable symbols}.}
@racket[0]. Version 1 adds support for mutable pairs,
version 2 adds support for @tech{unreadable symbols},
and version 3 adds support for @racket[date*] structures.}
@item{A non-negative exact integer @racket[_s-count] that represents the
number of distinct structure types represented in the
@ -155,6 +156,11 @@ elements:
@item{no symbols --- @racket[(make-hasheq)]}
]}
@item{@racket['date*] for a @racket[date*] structure, which
fails on deserialization (since dates are immutable;
this case does not appear in output generated by
@racket[serialize]);}
@item{@racket['date] for a @racket[date] structure, which
fails on deserialization (since dates are immutable;
this case does not appear in output generated by
@ -162,12 +168,12 @@ elements:
@item{@racket['arity-at-least] for an
@racket[arity-at-least] structure, which fails on
deserialization (since dates are immutable; this
deserialization (since arity-at-least are immutable; this
case does not appear in output generated by
@racket[serialize]); or}
@item{@racket['mpi] for a @tech{module path index}, which
fails on deserialization (since dates are immutable;
fails on deserialization (since a module path index is immutable;
this case does not appear in output generated by
@racket[serialize]).}
@ -273,6 +279,10 @@ elements:
hash-table key and the @racket[cdr] is a serial for
the corresponding value.}
@item{a pair whose @racket[car] is @racket['date*] and whose
@racket[cdr] is a list of serials; it represents a
@racket[date*] structure.}
@item{a pair whose @racket[car] is @racket['date] and whose
@racket[cdr] is a list of serials; it represents a
@racket[date] structure.}

View File

@ -14,13 +14,14 @@ The value of @racket[(current-seconds)] increases as time passes
seconds can be compared with a time returned by
@racket[file-or-directory-modify-seconds].}
@defproc[(seconds->date [secs-n exact-integer?]
@defproc[(seconds->date [secs-n real?]
[local-time? any/c #t])
date?]{
Takes @racket[secs-n], a platform-specific time in seconds returned by
@racket[current-seconds] or @racket[file-or-directory-modify-seconds],
and returns an instance of the @racket[date] structure type. If
@racket[current-seconds], @racket[current-inexact-milliseconds],
or @racket[file-or-directory-modify-seconds],
and returns an instance of the @racket[date*] structure type. If
@racket[secs-n] is too small or large, the @exnraise[exn:fail].
The resulting @racket[date] reflects the time according to the local
@ -59,6 +60,9 @@ daylight-saving adjustment (e.g., Pacific Daylight Time is
the @racket[dst?] and @racket[time-zone-offset] fields are
@racket[#f] and @racket[0], respectively.
The @racket[date] constructor accepts any value for @racket[dst?]
and converts any non-@racket[#f] value to @racket[#t].
The value produced for the @racket[time-zone-offset] field tends to be
sensitive to the value of the @envvar{TZ} environment variable,
especially on Unix platforms; consult the system documentation
@ -67,6 +71,20 @@ especially on Unix platforms; consult the system documentation
See also the @racketmodname[racket/date] library.}
@defstruct[(date* date) ([nanosecond (integer-in 0 999999999)]
[time-zone-name (and/c string? immutable?)])]{
Extends @racket[date] with a time zone name, such as @racket["MDT"],
@racket["Mountain Daylight Time"], or @racket["UTC"].
When a @racket[date*] record is generated by @racket[seconds->date]
with @racket[#f] as the second argument, then the
@racket[time-zone-name] field is @racket["UTC"].
The @racket[date*] constructor accepts a mutable string for
@racket[time-zone-name] and converts it to an immutable one.}
@defproc[(current-milliseconds) exact-integer?]{
Returns the current ``time'' in @tech{fixnum} milliseconds (possibly
@ -143,7 +161,7 @@ result is the result of @racket[expr].}
@note-lib-only[racket/date]
@defproc[(current-date) date?]{
@defproc[(current-date) date*?]{
An abbreviation for @racket[(seconds->date (current-seconds))].}

View File

@ -23,6 +23,14 @@
(test 0 find-seconds 0 0 0 1 1 1970 #f)
(test 32416215 find-seconds 15 30 4 11 1 1971 #f)
(let* ([s (current-seconds)]
[d1 (seconds->date s)]
[d2 (seconds->date (+ s 1/100000000))])
(test 0 date*-nanosecond d1)
(test 10 date*-nanosecond d2)
(test (date*-time-zone-name d1) date*-time-zone-name d2)
(test (struct-copy date d1) values (struct-copy date d2)))
; date->string
(let* ([secs (find-seconds 1 2 3 4 5 2006)]
[d-some-tz (seconds->date secs)]
@ -64,15 +72,25 @@
(err/rt-test (find-seconds 0 0 0 1 1 1490) exn:fail?)
(err/rt-test (find-seconds 0 0 0 1 1 2890) exn:fail?))
;; 1990 April 1 was start of daylight savings:
(test-find 0 0 1 1 4 1990) ; ok
(let ([s (find-seconds 1 0 3 1 4 1990)]) ; ok
(when (date-dst? (seconds->date s))
;; We have daylight savings here; 2:01 AM doesn't exist
(err/rt-test (find-seconds 0 1 2 1 4 1990) exn:fail?)
;; This date is ambiguous; find-seconds should find
;; one of the two possible values, though:
(test-find 0 30 1 27 10 1996)))
;; Daylight saving checks:
;; March 13 was start of daylight saving in most of the US for 2011.
;; Check whether we seem to be in a US time zone with daylight saving:
(let ([d1 (seconds->date (find-seconds 0 0 1 13 1 2011))]
[d2 (seconds->date (find-seconds 0 0 1 13 5 2011))])
(when (and (not (date-dst? d1))
(>= -10800 (date-time-zone-offset d1) -28800)
(date-dst? d2)
(>= -14400 (date-time-zone-offset d2) -25200))
;; It looks like we have US daylight saving:
(test-find 0 0 1 13 3 2011) ; ok
(let ([s (find-seconds 1 0 3 13 3 2011)]) ; ok
;; Since we have daylight savings here; 2:01 AM doesn't exist
(err/rt-test (find-seconds 0 1 2 13 3 2011) exn:fail?)
;; During the end of DST in 2010,
;; this date is ambiguous; find-seconds should find
;; one of the two possible values, though:
(test-find 0 30 1 7 11 2010))))
;; bug fixes
(test "JD 12" julian/scalinger->string 12)

View File

@ -40,6 +40,7 @@
(mkp "arity-at-least")
(mkp "srcloc")
(mkp "date")
(mkp "date*")
(mkp "exn")
(mkp "exn:fail")
(mkp "exn:fail:contract")
@ -49,6 +50,7 @@
(mkp "exn:fail:contract:continuation")
(mkp "exn:fail:contract:variable")
(mkp "exn:fail:syntax")
(mkp "exn:fail:syntax:unbound")
(mkp "exn:fail:read")
(mkp "exn:fail:read:eof")
(mkp "exn:fail:read:non-char")

View File

@ -123,6 +123,7 @@
(test-ser null)
(test-ser (current-directory))
(test-ser (seconds->date (current-seconds)))
(test-ser (struct-copy date (seconds->date (current-seconds)))) ; not date*
(test-ser (procedure-arity (lambda (x . y) 10)))
(test-ser (make-immutable-hasheq '((1 . a) (2 . b))))
(test-ser (make-immutable-hasheqv '((1 . a) (2 . b))))

View File

@ -7,10 +7,10 @@
(let* ([now (seconds->date (current-seconds))]
[v (modulo (add1 (date-second now)) 60)])
(test #t equal? now (copy-struct date now))
(test #f equal? now (copy-struct date now (date-second v)))
(test v date-second (copy-struct date now (date-second v)))
(test (date-year now) date-year (copy-struct date now (date-second v))))
(test #t equal? now (copy-struct date* now))
(test #f equal? now (copy-struct date* now (date-second v)))
(test v date-second (copy-struct date* now (date-second v)))
(test (date-year now) date-year (copy-struct date* now (date-second v))))
(err/rt-test (copy-struct date 10))
(err/rt-test (copy-struct date 10 (date-second 0)))

View File

@ -1,3 +1,9 @@
Version 5.1.3.11
Added exn:fail:syntax:unbound
Added date*, which extends date to include nanoseconds and a
time zone name
Changed seconds->date to accept a real number return a date*
Version 5.1.3.10
Added variable-reference->module-declare-inspector, which allows
a macro or other syntax tool to get the enclosing module's

View File

@ -215,7 +215,7 @@ starter: mzstart.exe
exn:
$(MAKE) $(srcdir)/src/schexn.h
$(MAKE) $(collectsdir)/scheme/private/kernstruct.rkt
$(MAKE) $(collectsdir)/racket/private/kernstruct.rkt
STARTUPDEST = startup.inc
CSTARTUPDEST = cstartup.inc
@ -240,8 +240,8 @@ headers:
$(srcdir)/src/schexn.h: $(srcdir)/src/makeexn
$(RACKET) -um $(srcdir)/src/makeexn > $(srcdir)/src/schexn.h
$(collectsdir)/scheme/private/kernstruct.rkt: $(srcdir)/src/makeexn
$(RACKET) -um $(srcdir)/src/makeexn kernstruct $(collectsdir)/scheme/private/kernstruct.rkt
$(collectsdir)/racket/private/kernstruct.rkt: $(srcdir)/src/makeexn
$(RACKET) -um $(srcdir)/src/makeexn kernstruct $(collectsdir)/racket/private/kernstruct.rkt
$(srcdir)/src/$(STARTUPDEST): $(srcdir)/src/startup.rktl $(srcdir)/src/sstoinct.rkt
$(RACKET) -cu $(srcdir)/src/sstoinct.rkt < $(srcdir)/src/startup.rktl > $(srcdir)/src/$(STARTUPDEST)

View File

@ -69,6 +69,7 @@
# define UNISTD_INCLUDE
# define USE_TM_GMTOFF_FIELD
# define USE_TM_ZONE_FIELD
# define FLAGS_ALREADY_SET
@ -102,12 +103,14 @@
# undef USE_FLOCK_FOR_FILE_LOCKS
# define USE_FCNTL_AND_FORK_FOR_FILE_LOCKS
# define USE_TIMEZONE_AND_ALTZONE_VAR
# define USE_TZNAME_VAR
# define USE_NULL_TO_DISCONNECT_UDP
# else
/* SunOS4 */
# define SCHEME_PLATFORM_LIBRARY_SUBPATH "sparc-sunos4"
# define SIGSET_IS_SIGNAL
# define USE_TM_GMTOFF_FIELD
# define USE_TM_ZONE_FIELD
# define NO_STRERROR_AVAILABLE
# define USE_ON_EXIT_FOR_ATEXIT
# endif
@ -146,6 +149,7 @@
# define USE_FCNTL_O_NONBLOCK
# define USE_TIMEZONE_VAR_W_DLS
# define USE_TZNAME_VAR
# define FLAGS_ALREADY_SET
@ -208,6 +212,7 @@
# define USE_DYNAMIC_FDSET_SIZE
# define USE_TIMEZONE_VAR_W_DLS
# define USE_TZNAME_VAR
# define MZ_TCP_LISTEN_IPV6_ONLY_SOCKOPT
@ -257,6 +262,7 @@
# define SIGSET_IS_SIGNAL
# define USE_TM_GMTOFF_FIELD
# define USE_TM_ZONE_FIELD
#if defined(__alpha__)
# define USE_DIVIDE_MAKE_INFINITY
@ -308,6 +314,7 @@
# define REGISTER_POOR_MACHINE
# define USE_TM_GMTOFF_FIELD
# define USE_TM_ZONE_FIELD
#if defined(__x86_64__)
# define MZ_USE_JIT_X86_64
@ -374,6 +381,7 @@
# define SIGSET_IS_SIGNAL
# define USE_TM_GMTOFF_FIELD
# define USE_TM_ZONE_FIELD
# define MZ_JIT_USE_MPROTECT
@ -401,6 +409,7 @@
# define USE_FCNTL_O_NONBLOCK
# define USE_TIMEZONE_AND_ALTZONE_VAR
# define USE_TZNAME_VAR
# define FLAGS_ALREADY_SET
@ -464,6 +473,7 @@
# define USE_ULIMIT
# define USE_TIMEZONE_VAR_W_DLS
# define USE_TZNAME_VAR
# define FLAGS_ALREADY_SET
@ -526,6 +536,7 @@
# define TIME_SYNTAX
# define USE_FTIME
# define USE_TIMEZONE_VAR_W_DLS
# define USE_TZNAME_VAR
# define WINDOWS_GET_PROCESS_TIMES
# define GETENV_FUNCTION
# define DIR_FUNCTION
@ -720,6 +731,7 @@
# define SIGSET_IS_SIGNAL
# define USE_TM_GMTOFF_FIELD
# define USE_TM_ZONE_FIELD
# define USE_UNDERSCORE_SETJMP
@ -762,6 +774,7 @@
# define SIGSET_IS_SIGNAL
# define USE_TM_GMTOFF_FIELD
# define USE_TM_ZONE_FIELD
# define USE_UNDERSCORE_SETJMP
@ -985,6 +998,10 @@
daylight savings is in effect.
USE_TM_GMTOFF_FIELD gets timezone offset from the tm_gmtoff field
of the tm struct. */
/* USE_TZNAME_VAR gets the timezone name from a tzname global.
USE_TM_ZONE_FIELD gets the timezone name from a tm_zone field
of the tm struct. */
/*******************/

View File

@ -1862,10 +1862,10 @@ scheme_lookup_binding(Scheme_Object *find_id, Scheme_Comp_Env *env, int flags,
if (genv->module && (genv->disallow_unbound > 0)) {
/* Free identifier. Maybe don't continue. */
if (flags & (SCHEME_SETTING | SCHEME_REFERENCING)) {
scheme_wrong_syntax(((flags & SCHEME_SETTING)
? scheme_set_stx_string
: scheme_var_ref_string),
NULL, src_find_id, "unbound identifier in module");
scheme_unbound_syntax(((flags & SCHEME_SETTING)
? scheme_set_stx_string
: scheme_var_ref_string),
NULL, src_find_id, "unbound identifier in module");
return NULL;
}
if (flags & SCHEME_NULL_FOR_UNBOUND)
@ -1928,10 +1928,10 @@ scheme_lookup_binding(Scheme_Object *find_id, Scheme_Comp_Env *env, int flags,
&& (genv->module && (genv->disallow_unbound > 0))) {
/* Check for set! of unbound identifier: */
if (!scheme_lookup_in_table(genv->toplevel, (const char *)find_global_id)) {
scheme_wrong_syntax(((flags & SCHEME_SETTING)
scheme_unbound_syntax(((flags & SCHEME_SETTING)
? scheme_set_stx_string
: scheme_var_ref_string),
NULL, src_find_id, "unbound identifier in module");
NULL, src_find_id, "unbound identifier in module");
return NULL;
}
}

View File

@ -5182,7 +5182,7 @@ int scheme_check_top_identifier_bound(Scheme_Object *c, Scheme_Env *genv, int di
reason = "unbound identifier in module";
else
reason = "unbound identifier in module (in phase %d)";
scheme_wrong_syntax(scheme_expand_stx_string, NULL, c, reason, genv->phase);
scheme_unbound_syntax(scheme_expand_stx_string, NULL, c, reason, genv->phase);
}
}
}

View File

@ -1,43 +1,43 @@
{
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,48,0,0,0,0,0,0,0,0,0,0,
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,49,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,51,0,0,0,1,0,0,10,0,13,0,
17,0,22,0,29,0,42,0,49,0,54,0,59,0,63,0,70,0,73,0,82,
20,0,24,0,29,0,32,0,37,0,50,0,57,0,64,0,68,0,73,0,82,
0,85,0,91,0,105,0,119,0,122,0,128,0,132,0,134,0,145,0,147,0,
161,0,168,0,190,0,192,0,206,0,17,1,46,1,57,1,68,1,93,1,126,
1,159,1,218,1,17,2,95,2,150,2,155,2,175,2,68,3,88,3,140,3,
206,3,95,4,237,4,34,5,45,5,124,5,0,0,83,7,0,0,69,35,37,
109,105,110,45,115,116,120,29,11,11,63,108,101,116,64,99,111,110,100,66,117,
110,108,101,115,115,72,112,97,114,97,109,101,116,101,114,105,122,101,66,100,101,
102,105,110,101,64,119,104,101,110,64,108,101,116,42,63,97,110,100,66,108,101,
116,114,101,99,62,111,114,68,104,101,114,101,45,115,116,120,29,11,11,65,113,
109,105,110,45,115,116,120,29,11,11,66,100,101,102,105,110,101,63,97,110,100,
64,108,101,116,42,62,111,114,64,99,111,110,100,72,112,97,114,97,109,101,116,
101,114,105,122,101,66,108,101,116,114,101,99,66,117,110,108,101,115,115,63,108,
101,116,64,119,104,101,110,68,104,101,114,101,45,115,116,120,29,11,11,65,113,
117,111,116,101,29,94,2,15,68,35,37,107,101,114,110,101,108,11,29,94,2,
15,68,35,37,112,97,114,97,109,122,11,62,105,102,65,98,101,103,105,110,63,
115,116,120,61,115,70,108,101,116,45,118,97,108,117,101,115,61,120,73,108,101,
116,114,101,99,45,118,97,108,117,101,115,66,108,97,109,98,100,97,1,20,112,
97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45,107,101,121,61,118,
73,100,101,102,105,110,101,45,118,97,108,117,101,115,97,36,11,8,240,83,76,
73,100,101,102,105,110,101,45,118,97,108,117,101,115,97,36,11,8,240,85,76,
0,0,95,159,2,17,36,36,159,2,16,36,36,159,2,16,36,36,16,20,2,
3,2,2,2,5,2,2,2,7,2,2,2,6,2,2,2,8,2,2,2,9,
2,2,2,10,2,2,2,4,2,2,2,11,2,2,2,12,2,2,97,37,11,
8,240,83,76,0,0,93,159,2,16,36,37,16,2,2,13,161,2,2,37,2,
13,2,2,2,13,96,38,11,8,240,83,76,0,0,16,0,96,11,11,8,240,
83,76,0,0,16,0,18,98,64,104,101,114,101,13,16,5,36,2,14,2,2,
3,2,2,2,6,2,2,2,4,2,2,2,5,2,2,2,9,2,2,2,7,
2,2,2,8,2,2,2,10,2,2,2,11,2,2,2,12,2,2,97,37,11,
8,240,85,76,0,0,93,159,2,16,36,37,16,2,2,13,161,2,2,37,2,
13,2,2,2,13,96,38,11,8,240,85,76,0,0,16,0,96,11,11,8,240,
85,76,0,0,16,0,18,98,64,104,101,114,101,13,16,5,36,2,14,2,2,
11,11,8,32,8,31,8,30,8,29,27,248,22,155,4,195,249,22,148,4,80,
158,39,36,251,22,83,2,18,248,22,98,199,12,249,22,73,2,19,248,22,100,
201,27,248,22,155,4,195,249,22,148,4,80,158,39,36,251,22,83,2,18,248,
22,98,199,249,22,73,2,19,248,22,100,201,12,27,248,22,75,248,22,155,4,
196,28,248,22,81,193,20,14,159,37,36,37,28,248,22,81,248,22,75,194,248,
22,74,193,249,22,148,4,80,158,39,36,251,22,83,2,18,248,22,74,199,249,
22,73,2,10,248,22,75,201,11,18,100,10,13,16,5,36,2,14,2,2,11,
22,73,2,4,248,22,75,201,11,18,100,10,13,16,5,36,2,14,2,2,11,
11,8,32,8,31,8,30,8,29,16,4,11,11,2,20,3,1,8,101,110,118,
49,52,55,51,57,16,4,11,11,2,21,3,1,8,101,110,118,49,52,55,52,
48,27,248,22,75,248,22,155,4,196,28,248,22,81,193,20,14,159,37,36,37,
49,52,57,55,48,16,4,11,11,2,21,3,1,8,101,110,118,49,52,57,55,
49,27,248,22,75,248,22,155,4,196,28,248,22,81,193,20,14,159,37,36,37,
28,248,22,81,248,22,75,194,248,22,74,193,249,22,148,4,80,158,39,36,250,
22,83,2,22,248,22,83,249,22,83,248,22,83,2,23,248,22,74,201,251,22,
83,2,18,2,23,2,23,249,22,73,2,12,248,22,75,204,18,100,11,13,16,
83,2,18,2,23,2,23,249,22,73,2,6,248,22,75,204,18,100,11,13,16,
5,36,2,14,2,2,11,11,8,32,8,31,8,30,8,29,16,4,11,11,2,
20,3,1,8,101,110,118,49,52,55,52,50,16,4,11,11,2,21,3,1,8,
101,110,118,49,52,55,52,51,248,22,155,4,193,27,248,22,155,4,194,249,22,
20,3,1,8,101,110,118,49,52,57,55,51,16,4,11,11,2,21,3,1,8,
101,110,118,49,52,57,55,52,248,22,155,4,193,27,248,22,155,4,194,249,22,
73,248,22,83,248,22,74,196,248,22,75,195,27,248,22,75,248,22,155,4,23,
197,1,249,22,148,4,80,158,39,36,28,248,22,58,248,22,149,4,248,22,74,
23,198,2,27,249,22,2,32,0,88,163,8,36,37,43,11,9,222,33,40,248,
@ -51,7 +51,7 @@
88,163,8,36,37,47,11,9,222,33,43,248,22,155,4,248,22,74,201,248,22,
75,198,27,248,22,75,248,22,155,4,196,27,248,22,155,4,248,22,74,195,249,
22,148,4,80,158,40,36,28,248,22,81,195,250,22,84,2,22,9,248,22,75,
199,250,22,83,2,3,248,22,83,248,22,74,199,250,22,84,2,9,248,22,75,
199,250,22,83,2,11,248,22,83,248,22,74,199,250,22,84,2,5,248,22,75,
201,248,22,75,202,27,248,22,75,248,22,155,4,23,197,1,27,249,22,1,22,
87,249,22,2,22,155,4,248,22,155,4,248,22,74,199,248,22,175,4,249,22,
148,4,80,158,41,36,251,22,83,1,22,119,105,116,104,45,99,111,110,116,105,
@ -62,13 +62,13 @@
22,75,204,27,248,22,75,248,22,155,4,196,28,248,22,81,193,20,14,159,37,
36,37,249,22,148,4,80,158,39,36,27,248,22,155,4,248,22,74,197,28,249,
22,141,9,62,61,62,248,22,149,4,248,22,98,196,250,22,83,2,22,248,22,
83,249,22,83,21,93,2,27,248,22,74,199,250,22,84,2,4,249,22,83,2,
83,249,22,83,21,93,2,27,248,22,74,199,250,22,84,2,7,249,22,83,2,
27,249,22,83,248,22,107,203,2,27,248,22,75,202,251,22,83,2,18,28,249,
22,141,9,248,22,149,4,248,22,74,200,64,101,108,115,101,10,248,22,74,197,
250,22,84,2,22,9,248,22,75,200,249,22,73,2,4,248,22,75,202,99,13,
250,22,84,2,22,9,248,22,75,200,249,22,73,2,7,248,22,75,202,99,13,
16,5,36,2,14,2,2,11,11,8,32,8,31,8,30,8,29,16,4,11,11,
2,20,3,1,8,101,110,118,49,52,55,54,53,16,4,11,11,2,21,3,1,
8,101,110,118,49,52,55,54,54,18,158,94,10,64,118,111,105,100,8,48,27,
2,20,3,1,8,101,110,118,49,52,57,57,54,16,4,11,11,2,21,3,1,
8,101,110,118,49,52,57,57,55,18,158,94,10,64,118,111,105,100,8,48,27,
248,22,75,248,22,155,4,196,249,22,148,4,80,158,39,36,28,248,22,58,248,
22,149,4,248,22,74,197,250,22,83,2,28,248,22,83,248,22,74,199,248,22,
98,198,27,248,22,149,4,248,22,74,197,250,22,83,2,28,248,22,83,248,22,
@ -81,25 +81,25 @@
16,1,2,13,37,11,11,11,16,0,16,0,16,0,36,36,11,12,11,11,16,
0,16,0,16,0,36,36,16,11,16,5,11,20,15,16,2,20,14,159,36,36,
37,80,158,36,36,36,20,112,159,36,16,1,2,13,16,1,33,33,10,16,5,
2,5,88,163,8,36,37,53,37,9,223,0,33,34,36,20,112,159,36,16,1,
2,13,16,0,11,16,5,2,8,88,163,8,36,37,53,37,9,223,0,33,35,
36,20,112,159,36,16,1,2,13,16,0,11,16,5,2,10,88,163,8,36,37,
2,10,88,163,8,36,37,53,37,9,223,0,33,34,36,20,112,159,36,16,1,
2,13,16,0,11,16,5,2,12,88,163,8,36,37,53,37,9,223,0,33,35,
36,20,112,159,36,16,1,2,13,16,0,11,16,5,2,4,88,163,8,36,37,
53,37,9,223,0,33,36,36,20,112,159,36,16,1,2,13,16,1,33,37,11,
16,5,2,12,88,163,8,36,37,56,37,9,223,0,33,38,36,20,112,159,36,
16,1,2,13,16,1,33,39,11,16,5,2,3,88,163,8,36,37,58,37,9,
223,0,33,42,36,20,112,159,36,16,1,2,13,16,0,11,16,5,2,11,88,
16,5,2,6,88,163,8,36,37,56,37,9,223,0,33,38,36,20,112,159,36,
16,1,2,13,16,1,33,39,11,16,5,2,11,88,163,8,36,37,58,37,9,
223,0,33,42,36,20,112,159,36,16,1,2,13,16,0,11,16,5,2,9,88,
163,8,36,37,53,37,9,223,0,33,44,36,20,112,159,36,16,1,2,13,16,
0,11,16,5,2,9,88,163,8,36,37,54,37,9,223,0,33,45,36,20,112,
159,36,16,1,2,13,16,0,11,16,5,2,6,88,163,8,36,37,56,37,9,
223,0,33,46,36,20,112,159,36,16,1,2,13,16,0,11,16,5,2,4,88,
0,11,16,5,2,5,88,163,8,36,37,54,37,9,223,0,33,45,36,20,112,
159,36,16,1,2,13,16,0,11,16,5,2,8,88,163,8,36,37,56,37,9,
223,0,33,46,36,20,112,159,36,16,1,2,13,16,0,11,16,5,2,7,88,
163,8,36,37,58,37,9,223,0,33,47,36,20,112,159,36,16,1,2,13,16,
1,33,49,11,16,5,2,7,88,163,8,36,37,54,37,9,223,0,33,50,36,
1,33,49,11,16,5,2,3,88,163,8,36,37,54,37,9,223,0,33,50,36,
20,112,159,36,16,1,2,13,16,0,11,16,0,94,2,16,2,17,93,2,16,
9,9,36,0};
EVAL_ONE_SIZED_STR((char *)expr, 2019);
}
{
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,48,0,0,0,0,0,0,0,0,0,0,
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,49,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,109,0,0,0,1,0,0,8,0,21,0,
26,0,43,0,65,0,94,0,109,0,127,0,143,0,157,0,179,0,195,0,212,
0,234,0,245,0,251,0,4,1,11,1,18,1,30,1,46,1,70,1,102,1,
@ -150,187 +150,187 @@
11,11,80,76,84,67,79,76,76,69,67,84,83,6,0,0,6,0,0,69,97,
100,100,111,110,45,100,105,114,6,8,8,99,111,108,108,101,99,116,115,27,20,
13,159,80,159,37,51,37,250,80,159,40,52,37,249,22,27,11,80,159,42,51,
37,22,187,13,10,248,22,191,5,23,196,2,28,248,22,190,6,23,194,2,12,
37,22,131,14,10,248,22,191,5,23,196,2,28,248,22,190,6,23,194,2,12,
86,94,248,22,149,9,23,194,1,27,20,13,159,80,159,38,51,37,250,80,159,
41,52,37,249,22,27,11,80,159,43,51,37,22,187,13,10,248,22,191,5,23,
41,52,37,249,22,27,11,80,159,43,51,37,22,131,14,10,248,22,191,5,23,
197,2,28,248,22,190,6,23,194,2,12,86,94,248,22,149,9,23,194,1,27,
20,13,159,80,159,39,51,37,250,80,159,42,52,37,249,22,27,11,80,159,44,
51,37,22,187,13,10,248,22,191,5,23,198,2,28,248,22,190,6,23,194,2,
51,37,22,131,14,10,248,22,191,5,23,198,2,28,248,22,190,6,23,194,2,
12,86,94,248,22,149,9,23,194,1,248,80,159,40,8,31,39,197,28,248,22,
81,23,195,2,9,27,248,22,74,23,196,2,27,28,248,22,173,14,23,195,2,
23,194,1,28,248,22,172,14,23,195,2,249,22,174,14,23,196,1,250,80,159,
43,39,39,248,22,189,14,2,31,11,10,250,80,159,41,39,39,248,22,189,14,
2,31,23,197,1,10,28,23,193,2,249,22,73,248,22,176,14,249,22,174,14,
23,198,1,247,22,190,14,27,248,22,75,23,200,1,28,248,22,81,23,194,2,
9,27,248,22,74,23,195,2,27,28,248,22,173,14,23,195,2,23,194,1,28,
248,22,172,14,23,195,2,249,22,174,14,23,196,1,250,80,159,48,39,39,248,
22,189,14,2,31,11,10,250,80,159,46,39,39,248,22,189,14,2,31,23,197,
1,10,28,23,193,2,249,22,73,248,22,176,14,249,22,174,14,23,198,1,247,
22,190,14,248,80,159,46,8,30,39,248,22,75,23,199,1,86,94,23,193,1,
81,23,195,2,9,27,248,22,74,23,196,2,27,28,248,22,181,14,23,195,2,
23,194,1,28,248,22,180,14,23,195,2,249,22,182,14,23,196,1,250,80,159,
43,39,39,248,22,133,15,2,31,11,10,250,80,159,41,39,39,248,22,133,15,
2,31,23,197,1,10,28,23,193,2,249,22,73,248,22,184,14,249,22,182,14,
23,198,1,247,22,134,15,27,248,22,75,23,200,1,28,248,22,81,23,194,2,
9,27,248,22,74,23,195,2,27,28,248,22,181,14,23,195,2,23,194,1,28,
248,22,180,14,23,195,2,249,22,182,14,23,196,1,250,80,159,48,39,39,248,
22,133,15,2,31,11,10,250,80,159,46,39,39,248,22,133,15,2,31,23,197,
1,10,28,23,193,2,249,22,73,248,22,184,14,249,22,182,14,23,198,1,247,
22,134,15,248,80,159,46,8,30,39,248,22,75,23,199,1,86,94,23,193,1,
248,80,159,44,8,30,39,248,22,75,23,197,1,86,94,23,193,1,27,248,22,
75,23,198,1,28,248,22,81,23,194,2,9,27,248,22,74,23,195,2,27,28,
248,22,173,14,23,195,2,23,194,1,28,248,22,172,14,23,195,2,249,22,174,
14,23,196,1,250,80,159,46,39,39,248,22,189,14,2,31,11,10,250,80,159,
44,39,39,248,22,189,14,2,31,23,197,1,10,28,23,193,2,249,22,73,248,
22,176,14,249,22,174,14,23,198,1,247,22,190,14,248,80,159,44,8,30,39,
248,22,181,14,23,195,2,23,194,1,28,248,22,180,14,23,195,2,249,22,182,
14,23,196,1,250,80,159,46,39,39,248,22,133,15,2,31,11,10,250,80,159,
44,39,39,248,22,133,15,2,31,23,197,1,10,28,23,193,2,249,22,73,248,
22,184,14,249,22,182,14,23,198,1,247,22,134,15,248,80,159,44,8,30,39,
248,22,75,23,199,1,248,80,159,42,8,30,39,248,22,75,196,28,248,22,81,
23,195,2,9,27,248,22,74,23,196,2,27,28,248,22,173,14,23,195,2,23,
194,1,28,248,22,172,14,23,195,2,249,22,174,14,23,196,1,250,80,159,43,
39,39,248,22,189,14,2,31,11,10,250,80,159,41,39,39,248,22,189,14,2,
31,23,197,1,10,28,23,193,2,249,22,73,248,22,176,14,249,22,174,14,23,
198,1,247,22,190,14,248,80,159,41,8,29,39,248,22,75,23,200,1,248,80,
23,195,2,9,27,248,22,74,23,196,2,27,28,248,22,181,14,23,195,2,23,
194,1,28,248,22,180,14,23,195,2,249,22,182,14,23,196,1,250,80,159,43,
39,39,248,22,133,15,2,31,11,10,250,80,159,41,39,39,248,22,133,15,2,
31,23,197,1,10,28,23,193,2,249,22,73,248,22,184,14,249,22,182,14,23,
198,1,247,22,134,15,248,80,159,41,8,29,39,248,22,75,23,200,1,248,80,
159,39,8,29,39,248,22,75,197,28,248,22,81,23,195,2,9,27,248,22,74,
23,196,2,27,28,248,22,173,14,23,195,2,23,194,1,28,248,22,172,14,23,
195,2,249,22,174,14,23,196,1,250,80,159,43,39,39,248,22,189,14,2,31,
11,10,250,80,159,41,39,39,248,22,189,14,2,31,23,197,1,10,28,23,193,
2,249,22,73,248,22,176,14,249,22,174,14,23,198,1,247,22,190,14,248,80,
23,196,2,27,28,248,22,181,14,23,195,2,23,194,1,28,248,22,180,14,23,
195,2,249,22,182,14,23,196,1,250,80,159,43,39,39,248,22,133,15,2,31,
11,10,250,80,159,41,39,39,248,22,133,15,2,31,23,197,1,10,28,23,193,
2,249,22,73,248,22,184,14,249,22,182,14,23,198,1,247,22,134,15,248,80,
159,41,8,28,39,248,22,75,23,200,1,248,80,159,39,8,28,39,248,22,75,
197,27,248,22,149,14,23,195,2,28,23,193,2,192,86,94,23,193,1,28,248,
22,131,7,23,195,2,27,248,22,171,14,195,28,192,192,248,22,172,14,195,11,
86,94,28,28,248,22,150,14,23,195,2,10,28,248,22,149,14,23,195,2,10,
28,248,22,131,7,23,195,2,28,248,22,171,14,23,195,2,10,248,22,172,14,
197,27,248,22,157,14,23,195,2,28,23,193,2,192,86,94,23,193,1,28,248,
22,131,7,23,195,2,27,248,22,179,14,195,28,192,192,248,22,180,14,195,11,
86,94,28,28,248,22,158,14,23,195,2,10,28,248,22,157,14,23,195,2,10,
28,248,22,131,7,23,195,2,28,248,22,179,14,23,195,2,10,248,22,180,14,
23,195,2,11,12,250,22,177,9,76,110,111,114,109,97,108,45,112,97,116,104,
45,99,97,115,101,6,42,42,112,97,116,104,32,40,102,111,114,32,97,110,121,
32,115,121,115,116,101,109,41,32,111,114,32,118,97,108,105,100,45,112,97,116,
104,32,115,116,114,105,110,103,23,197,2,28,28,248,22,150,14,23,195,2,249,
22,141,9,248,22,151,14,23,197,2,2,32,249,22,141,9,247,22,153,8,2,
32,27,28,248,22,131,7,23,196,2,23,195,2,248,22,143,8,248,22,154,14,
23,197,2,28,249,22,141,15,0,21,35,114,120,34,94,91,92,92,93,91,92,
104,32,115,116,114,105,110,103,23,197,2,28,28,248,22,158,14,23,195,2,249,
22,141,9,248,22,159,14,23,197,2,2,32,249,22,141,9,247,22,153,8,2,
32,27,28,248,22,131,7,23,196,2,23,195,2,248,22,143,8,248,22,162,14,
23,197,2,28,249,22,149,15,0,21,35,114,120,34,94,91,92,92,93,91,92,
92,93,91,63,93,91,92,92,93,34,23,195,2,28,248,22,131,7,195,248,22,
157,14,195,194,27,248,22,170,7,23,195,1,249,22,158,14,248,22,146,8,250,
22,149,15,0,6,35,114,120,34,47,34,28,249,22,141,15,0,22,35,114,120,
165,14,195,194,27,248,22,170,7,23,195,1,249,22,166,14,248,22,146,8,250,
22,157,15,0,6,35,114,120,34,47,34,28,249,22,149,15,0,22,35,114,120,
34,91,47,92,92,93,91,46,32,93,43,91,47,92,92,93,42,36,34,23,201,
2,23,199,1,250,22,149,15,0,19,35,114,120,34,91,32,46,93,43,40,91,
2,23,199,1,250,22,157,15,0,19,35,114,120,34,91,32,46,93,43,40,91,
47,92,92,93,42,41,36,34,23,202,1,6,2,2,92,49,80,159,44,37,38,
2,32,28,248,22,131,7,194,248,22,157,14,194,193,32,56,88,163,8,36,39,
2,32,28,248,22,131,7,194,248,22,165,14,194,193,32,56,88,163,8,36,39,
53,11,70,102,111,117,110,100,45,101,120,101,99,222,33,59,32,57,88,163,8,
36,40,58,11,64,110,101,120,116,222,33,58,27,248,22,175,14,23,196,2,28,
249,22,143,9,23,195,2,23,197,1,11,28,248,22,171,14,23,194,2,27,249,
22,167,14,23,197,1,23,196,1,28,23,197,2,90,159,39,11,89,161,39,36,
11,248,22,170,14,23,197,2,86,95,23,195,1,23,194,1,27,28,23,202,2,
27,248,22,175,14,23,199,2,28,249,22,143,9,23,195,2,23,200,2,11,28,
248,22,171,14,23,194,2,250,2,56,23,205,2,23,206,2,249,22,167,14,23,
36,40,58,11,64,110,101,120,116,222,33,58,27,248,22,183,14,23,196,2,28,
249,22,143,9,23,195,2,23,197,1,11,28,248,22,179,14,23,194,2,27,249,
22,175,14,23,197,1,23,196,1,28,23,197,2,90,159,39,11,89,161,39,36,
11,248,22,178,14,23,197,2,86,95,23,195,1,23,194,1,27,28,23,202,2,
27,248,22,183,14,23,199,2,28,249,22,143,9,23,195,2,23,200,2,11,28,
248,22,179,14,23,194,2,250,2,56,23,205,2,23,206,2,249,22,175,14,23,
200,2,23,198,1,250,2,56,23,205,2,23,206,2,23,196,1,11,28,23,193,
2,192,86,94,23,193,1,27,28,248,22,149,14,23,196,2,27,249,22,167,14,
23,198,2,23,205,2,28,28,248,22,162,14,193,10,248,22,161,14,193,192,11,
11,28,23,193,2,192,86,94,23,193,1,28,23,203,2,11,27,248,22,175,14,
23,200,2,28,249,22,143,9,23,195,2,23,201,1,11,28,248,22,171,14,23,
194,2,250,2,56,23,206,1,23,207,1,249,22,167,14,23,201,1,23,198,1,
2,192,86,94,23,193,1,27,28,248,22,157,14,23,196,2,27,249,22,175,14,
23,198,2,23,205,2,28,28,248,22,170,14,193,10,248,22,169,14,193,192,11,
11,28,23,193,2,192,86,94,23,193,1,28,23,203,2,11,27,248,22,183,14,
23,200,2,28,249,22,143,9,23,195,2,23,201,1,11,28,248,22,179,14,23,
194,2,250,2,56,23,206,1,23,207,1,249,22,175,14,23,201,1,23,198,1,
250,2,56,205,206,195,192,86,94,23,194,1,28,23,196,2,90,159,39,11,89,
161,39,36,11,248,22,170,14,23,197,2,86,95,23,195,1,23,194,1,27,28,
23,201,2,27,248,22,175,14,23,199,2,28,249,22,143,9,23,195,2,23,200,
2,11,28,248,22,171,14,23,194,2,250,2,56,23,204,2,23,205,2,249,22,
167,14,23,200,2,23,198,1,250,2,56,23,204,2,23,205,2,23,196,1,11,
28,23,193,2,192,86,94,23,193,1,27,28,248,22,149,14,23,196,2,27,249,
22,167,14,23,198,2,23,204,2,28,28,248,22,162,14,193,10,248,22,161,14,
161,39,36,11,248,22,178,14,23,197,2,86,95,23,195,1,23,194,1,27,28,
23,201,2,27,248,22,183,14,23,199,2,28,249,22,143,9,23,195,2,23,200,
2,11,28,248,22,179,14,23,194,2,250,2,56,23,204,2,23,205,2,249,22,
175,14,23,200,2,23,198,1,250,2,56,23,204,2,23,205,2,23,196,1,11,
28,23,193,2,192,86,94,23,193,1,27,28,248,22,157,14,23,196,2,27,249,
22,175,14,23,198,2,23,204,2,28,28,248,22,170,14,193,10,248,22,169,14,
193,192,11,11,28,23,193,2,192,86,94,23,193,1,28,23,202,2,11,27,248,
22,175,14,23,200,2,28,249,22,143,9,23,195,2,23,201,1,11,28,248,22,
171,14,23,194,2,250,2,56,23,205,1,23,206,1,249,22,167,14,23,201,1,
22,183,14,23,200,2,28,249,22,143,9,23,195,2,23,201,1,11,28,248,22,
179,14,23,194,2,250,2,56,23,205,1,23,206,1,249,22,175,14,23,201,1,
23,198,1,250,2,56,204,205,195,192,28,23,193,2,90,159,39,11,89,161,39,
36,11,248,22,170,14,23,199,2,86,95,23,195,1,23,194,1,27,28,23,198,
36,11,248,22,178,14,23,199,2,86,95,23,195,1,23,194,1,27,28,23,198,
2,251,2,57,23,198,2,23,203,2,23,201,2,23,202,2,11,28,23,193,2,
192,86,94,23,193,1,27,28,248,22,149,14,195,27,249,22,167,14,197,200,28,
28,248,22,162,14,193,10,248,22,161,14,193,192,11,11,28,192,192,28,198,11,
192,86,94,23,193,1,27,28,248,22,157,14,195,27,249,22,175,14,197,200,28,
28,248,22,170,14,193,10,248,22,169,14,193,192,11,11,28,192,192,28,198,11,
251,2,57,198,203,201,202,194,32,60,88,163,8,36,40,58,11,2,30,222,33,
61,28,248,22,81,23,197,2,11,27,248,22,174,14,248,22,74,23,199,2,27,
249,22,167,14,23,196,1,23,197,2,28,248,22,161,14,23,194,2,250,2,56,
61,28,248,22,81,23,197,2,11,27,248,22,182,14,248,22,74,23,199,2,27,
249,22,175,14,23,196,1,23,197,2,28,248,22,169,14,23,194,2,250,2,56,
198,199,195,86,94,23,193,1,27,248,22,75,23,200,1,28,248,22,81,23,194,
2,11,27,248,22,174,14,248,22,74,23,196,2,27,249,22,167,14,23,196,1,
23,200,2,28,248,22,161,14,23,194,2,250,2,56,201,202,195,86,94,23,193,
1,27,248,22,75,23,197,1,28,248,22,81,23,194,2,11,27,248,22,174,14,
248,22,74,195,27,249,22,167,14,23,196,1,202,28,248,22,161,14,193,250,2,
56,204,205,195,251,2,60,204,205,206,248,22,75,199,86,95,28,28,248,22,149,
14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,22,171,14,23,195,2,
10,248,22,172,14,23,195,2,11,12,250,22,177,9,2,5,6,25,25,112,97,
2,11,27,248,22,182,14,248,22,74,23,196,2,27,249,22,175,14,23,196,1,
23,200,2,28,248,22,169,14,23,194,2,250,2,56,201,202,195,86,94,23,193,
1,27,248,22,75,23,197,1,28,248,22,81,23,194,2,11,27,248,22,182,14,
248,22,74,195,27,249,22,175,14,23,196,1,202,28,248,22,169,14,193,250,2,
56,204,205,195,251,2,60,204,205,206,248,22,75,199,86,95,28,28,248,22,157,
14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,22,179,14,23,195,2,
10,248,22,180,14,23,195,2,11,12,250,22,177,9,2,5,6,25,25,112,97,
116,104,32,111,114,32,115,116,114,105,110,103,32,40,115,97,110,115,32,110,117,
108,41,23,197,2,28,28,23,195,2,28,28,248,22,149,14,23,196,2,10,28,
248,22,131,7,23,196,2,28,248,22,171,14,23,196,2,10,248,22,172,14,23,
196,2,11,248,22,171,14,23,196,2,11,10,12,250,22,177,9,2,5,6,29,
108,41,23,197,2,28,28,23,195,2,28,28,248,22,157,14,23,196,2,10,28,
248,22,131,7,23,196,2,28,248,22,179,14,23,196,2,10,248,22,180,14,23,
196,2,11,248,22,179,14,23,196,2,11,10,12,250,22,177,9,2,5,6,29,
29,35,102,32,111,114,32,114,101,108,97,116,105,118,101,32,112,97,116,104,32,
111,114,32,115,116,114,105,110,103,23,198,2,28,28,248,22,171,14,23,195,2,
90,159,39,11,89,161,39,36,11,248,22,170,14,23,198,2,249,22,141,9,194,
111,114,32,115,116,114,105,110,103,23,198,2,28,28,248,22,179,14,23,195,2,
90,159,39,11,89,161,39,36,11,248,22,178,14,23,198,2,249,22,141,9,194,
2,33,11,27,248,22,151,8,6,4,4,80,65,84,72,27,28,23,194,2,27,
249,80,158,41,40,23,197,1,9,28,249,22,141,9,247,22,153,8,2,32,249,
22,73,248,22,158,14,5,1,46,194,192,86,94,23,194,1,9,28,248,22,81,
23,194,2,11,27,248,22,174,14,248,22,74,23,196,2,27,249,22,167,14,23,
196,1,23,200,2,28,248,22,161,14,23,194,2,250,2,56,201,202,195,86,94,
22,73,248,22,166,14,5,1,46,194,192,86,94,23,194,1,9,28,248,22,81,
23,194,2,11,27,248,22,182,14,248,22,74,23,196,2,27,249,22,175,14,23,
196,1,23,200,2,28,248,22,169,14,23,194,2,250,2,56,201,202,195,86,94,
23,193,1,27,248,22,75,23,197,1,28,248,22,81,23,194,2,11,27,248,22,
174,14,248,22,74,23,196,2,27,249,22,167,14,23,196,1,23,203,2,28,248,
22,161,14,23,194,2,250,2,56,204,205,195,86,94,23,193,1,27,248,22,75,
23,197,1,28,248,22,81,23,194,2,11,27,248,22,174,14,248,22,74,195,27,
249,22,167,14,23,196,1,205,28,248,22,161,14,193,250,2,56,23,15,23,16,
195,251,2,60,23,15,23,16,23,17,248,22,75,199,27,248,22,174,14,23,196,
1,28,248,22,161,14,193,250,2,56,198,199,195,11,250,80,159,39,39,39,196,
182,14,248,22,74,23,196,2,27,249,22,175,14,23,196,1,23,203,2,28,248,
22,169,14,23,194,2,250,2,56,204,205,195,86,94,23,193,1,27,248,22,75,
23,197,1,28,248,22,81,23,194,2,11,27,248,22,182,14,248,22,74,195,27,
249,22,175,14,23,196,1,205,28,248,22,169,14,193,250,2,56,23,15,23,16,
195,251,2,60,23,15,23,16,23,17,248,22,75,199,27,248,22,182,14,23,196,
1,28,248,22,169,14,193,250,2,56,198,199,195,11,250,80,159,39,39,39,196,
197,11,250,80,159,39,39,39,196,11,11,32,65,88,163,8,36,39,57,11,2,
30,222,33,67,0,8,35,114,120,35,34,92,34,34,27,249,22,137,15,23,197,
30,222,33,67,0,8,35,114,120,35,34,92,34,34,27,249,22,145,15,23,197,
2,23,198,2,28,23,193,2,86,94,23,196,1,27,248,22,98,23,195,2,27,
27,248,22,107,23,197,1,27,249,22,137,15,23,201,2,23,196,2,28,23,193,
27,248,22,107,23,197,1,27,249,22,145,15,23,201,2,23,196,2,28,23,193,
2,86,94,23,194,1,27,248,22,98,23,195,2,27,250,2,65,23,203,2,23,
204,1,248,22,107,23,199,1,28,249,22,128,8,23,196,2,2,34,249,22,87,
23,202,2,194,249,22,73,248,22,158,14,28,249,22,141,9,247,22,153,8,2,
32,250,22,149,15,2,66,23,200,1,2,35,23,197,1,194,86,95,23,199,1,
23,202,2,194,249,22,73,248,22,166,14,28,249,22,141,9,247,22,153,8,2,
32,250,22,157,15,2,66,23,200,1,2,35,23,197,1,194,86,95,23,199,1,
23,193,1,28,249,22,128,8,23,196,2,2,34,249,22,87,23,200,2,9,249,
22,73,248,22,158,14,28,249,22,141,9,247,22,153,8,2,32,250,22,149,15,
22,73,248,22,166,14,28,249,22,141,9,247,22,153,8,2,32,250,22,157,15,
2,66,23,200,1,2,35,23,197,1,9,28,249,22,128,8,23,196,2,2,34,
249,22,87,197,194,86,94,23,196,1,249,22,73,248,22,158,14,28,249,22,141,
9,247,22,153,8,2,32,250,22,149,15,2,66,23,200,1,2,35,23,197,1,
249,22,87,197,194,86,94,23,196,1,249,22,73,248,22,166,14,28,249,22,141,
9,247,22,153,8,2,32,250,22,157,15,2,66,23,200,1,2,35,23,197,1,
194,86,94,23,193,1,28,249,22,128,8,23,198,2,2,34,249,22,87,195,9,
86,94,23,194,1,249,22,73,248,22,158,14,28,249,22,141,9,247,22,153,8,
2,32,250,22,149,15,2,66,23,202,1,2,35,23,199,1,9,86,95,28,28,
86,94,23,194,1,249,22,73,248,22,166,14,28,249,22,141,9,247,22,153,8,
2,32,250,22,157,15,2,66,23,202,1,2,35,23,199,1,9,86,95,28,28,
248,22,184,7,194,10,248,22,131,7,194,12,250,22,177,9,2,6,6,21,21,
98,121,116,101,32,115,116,114,105,110,103,32,111,114,32,115,116,114,105,110,103,
196,28,28,248,22,82,195,249,22,4,22,149,14,196,11,12,250,22,177,9,2,
196,28,28,248,22,82,195,249,22,4,22,157,14,196,11,12,250,22,177,9,2,
6,6,13,13,108,105,115,116,32,111,102,32,112,97,116,104,115,197,250,2,65,
197,195,28,248,22,131,7,197,248,22,145,8,197,196,86,94,28,28,248,22,149,
14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,22,171,14,23,195,2,
10,248,22,172,14,23,195,2,11,12,250,22,177,9,23,196,2,2,36,23,197,
2,28,248,22,171,14,23,195,2,12,248,22,163,12,249,22,169,11,248,22,160,
197,195,28,248,22,131,7,197,248,22,145,8,197,196,86,94,28,28,248,22,157,
14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,22,179,14,23,195,2,
10,248,22,180,14,23,195,2,11,12,250,22,177,9,23,196,2,2,36,23,197,
2,28,248,22,179,14,23,195,2,12,248,22,171,12,249,22,174,11,248,22,160,
7,250,22,179,7,2,37,23,200,1,23,201,1,247,22,23,86,94,28,28,248,
22,149,14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,22,171,14,23,
195,2,10,248,22,172,14,23,195,2,11,12,250,22,177,9,23,196,2,2,36,
23,197,2,28,248,22,171,14,23,195,2,12,248,22,163,12,249,22,169,11,248,
22,157,14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,22,179,14,23,
195,2,10,248,22,180,14,23,195,2,11,12,250,22,177,9,23,196,2,2,36,
23,197,2,28,248,22,179,14,23,195,2,12,248,22,171,12,249,22,174,11,248,
22,160,7,250,22,179,7,2,37,23,200,1,23,201,1,247,22,23,86,94,86,
94,28,28,248,22,149,14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,
22,171,14,23,195,2,10,248,22,172,14,23,195,2,11,12,250,22,177,9,195,
2,36,23,197,2,28,248,22,171,14,23,195,2,12,248,22,163,12,249,22,169,
94,28,28,248,22,157,14,23,195,2,10,28,248,22,131,7,23,195,2,28,248,
22,179,14,23,195,2,10,248,22,180,14,23,195,2,11,12,250,22,177,9,195,
2,36,23,197,2,28,248,22,179,14,23,195,2,12,248,22,171,12,249,22,174,
11,248,22,160,7,250,22,179,7,2,37,199,23,201,1,247,22,23,249,22,3,
88,163,8,36,37,50,11,9,223,2,33,70,196,86,94,28,28,248,22,149,14,
23,194,2,10,28,248,22,131,7,23,194,2,28,248,22,171,14,23,194,2,10,
248,22,172,14,23,194,2,11,12,250,22,177,9,2,9,2,36,23,196,2,28,
248,22,171,14,23,194,2,12,248,22,163,12,249,22,169,11,248,22,160,7,250,
22,179,7,2,37,2,9,23,200,1,247,22,23,248,22,163,12,249,22,138,12,
23,196,1,247,22,23,86,94,86,94,86,94,28,28,248,22,149,14,194,10,28,
248,22,131,7,194,28,248,22,171,14,194,10,248,22,172,14,194,11,12,250,22,
177,9,2,9,2,36,196,28,248,22,171,14,194,12,248,22,163,12,249,22,169,
88,163,8,36,37,50,11,9,223,2,33,70,196,86,94,28,28,248,22,157,14,
23,194,2,10,28,248,22,131,7,23,194,2,28,248,22,179,14,23,194,2,10,
248,22,180,14,23,194,2,11,12,250,22,177,9,2,9,2,36,23,196,2,28,
248,22,179,14,23,194,2,12,248,22,171,12,249,22,174,11,248,22,160,7,250,
22,179,7,2,37,2,9,23,200,1,247,22,23,248,22,171,12,249,22,146,12,
23,196,1,247,22,23,86,94,86,94,86,94,28,28,248,22,157,14,194,10,28,
248,22,131,7,194,28,248,22,179,14,194,10,248,22,180,14,194,11,12,250,22,
177,9,2,9,2,36,196,28,248,22,179,14,194,12,248,22,171,12,249,22,174,
11,248,22,160,7,250,22,179,7,2,37,2,9,200,247,22,23,249,22,3,32,
0,88,163,8,36,37,49,11,9,222,33,72,196,252,80,158,41,44,2,9,32,
0,88,163,8,36,37,45,11,9,222,33,73,198,199,11,86,94,28,28,248,22,
149,14,23,194,2,10,28,248,22,131,7,23,194,2,28,248,22,171,14,23,194,
2,10,248,22,172,14,23,194,2,11,12,250,22,177,9,2,11,2,36,23,196,
2,28,248,22,171,14,23,194,2,12,248,22,163,12,249,22,169,11,248,22,160,
7,250,22,179,7,2,37,2,11,23,200,1,247,22,23,248,22,163,12,249,22,
138,12,23,196,1,247,22,23,86,95,86,94,28,28,248,22,149,14,194,10,28,
248,22,131,7,194,28,248,22,171,14,194,10,248,22,172,14,194,11,12,250,22,
177,9,2,11,2,36,196,28,248,22,171,14,194,12,248,22,163,12,249,22,169,
157,14,23,194,2,10,28,248,22,131,7,23,194,2,28,248,22,179,14,23,194,
2,10,248,22,180,14,23,194,2,11,12,250,22,177,9,2,11,2,36,23,196,
2,28,248,22,179,14,23,194,2,12,248,22,171,12,249,22,174,11,248,22,160,
7,250,22,179,7,2,37,2,11,23,200,1,247,22,23,248,22,171,12,249,22,
146,12,23,196,1,247,22,23,86,95,86,94,28,28,248,22,157,14,194,10,28,
248,22,131,7,194,28,248,22,179,14,194,10,248,22,180,14,194,11,12,250,22,
177,9,2,11,2,36,196,28,248,22,179,14,194,12,248,22,171,12,249,22,174,
11,248,22,160,7,250,22,179,7,2,37,2,11,200,247,22,23,86,94,86,94,
28,28,248,22,149,14,23,196,2,10,28,248,22,131,7,23,196,2,28,248,22,
171,14,23,196,2,10,248,22,172,14,23,196,2,11,12,250,22,177,9,2,11,
2,36,23,198,2,28,248,22,171,14,23,196,2,12,248,22,163,12,249,22,169,
28,28,248,22,157,14,23,196,2,10,28,248,22,131,7,23,196,2,28,248,22,
179,14,23,196,2,10,248,22,180,14,23,196,2,11,12,250,22,177,9,2,11,
2,36,23,198,2,28,248,22,179,14,23,196,2,12,248,22,171,12,249,22,174,
11,248,22,160,7,250,22,179,7,2,37,2,11,23,202,2,247,22,23,249,22,
3,32,0,88,163,8,36,37,49,11,9,222,33,75,23,198,2,249,22,167,14,
3,32,0,88,163,8,36,37,49,11,9,222,33,75,23,198,2,249,22,175,14,
252,80,158,43,44,2,11,32,0,88,163,8,36,37,45,11,9,222,33,76,23,
202,1,23,203,1,200,195,0,6,45,105,110,102,46,48,27,248,22,189,14,2,
38,27,28,248,22,172,14,23,195,2,193,20,13,159,80,159,38,51,37,250,80,
159,41,52,37,249,22,27,11,80,159,43,51,37,22,190,14,248,22,189,14,68,
111,114,105,103,45,100,105,114,27,248,22,189,14,2,31,250,80,159,42,39,39,
23,196,1,23,198,1,11,28,192,250,22,167,14,195,6,6,6,99,111,110,102,
202,1,23,203,1,200,195,0,6,45,105,110,102,46,48,27,248,22,133,15,2,
38,27,28,248,22,180,14,23,195,2,193,20,13,159,80,159,38,51,37,250,80,
159,41,52,37,249,22,27,11,80,159,43,51,37,22,134,15,248,22,133,15,68,
111,114,105,103,45,100,105,114,27,248,22,133,15,2,31,250,80,159,42,39,39,
23,196,1,23,198,1,11,28,192,250,22,175,14,195,6,6,6,99,111,110,102,
105,103,6,10,10,108,105,110,107,115,46,114,107,116,100,11,86,94,27,247,22,
132,10,28,249,22,189,9,23,195,2,2,39,251,22,128,10,23,197,1,2,39,
250,22,179,7,2,40,28,23,202,1,80,159,46,46,38,80,159,46,49,38,248,
22,161,11,23,205,1,247,22,23,12,248,193,247,22,133,2,2,78,86,95,27,
22,166,11,23,205,1,247,22,23,12,248,193,247,22,133,2,2,78,86,95,27,
247,22,132,10,28,249,22,189,9,23,195,2,2,39,251,22,128,10,23,197,1,
2,39,250,22,179,7,2,40,28,202,80,159,47,46,38,80,159,47,49,38,248,
22,161,11,23,206,1,247,22,23,12,28,192,28,194,86,94,20,18,159,11,80,
22,166,11,23,206,1,247,22,23,12,28,192,28,194,86,94,20,18,159,11,80,
158,39,47,247,22,133,2,20,18,159,11,80,158,39,48,192,86,94,20,18,159,
11,80,158,39,53,247,22,133,2,20,18,159,11,80,158,39,54,192,12,248,194,
247,22,133,2,20,20,94,248,22,191,5,23,194,2,28,248,22,190,6,248,22,
@ -339,62 +339,62 @@
110,248,22,179,5,193,28,248,22,82,23,194,2,28,28,249,22,184,3,38,248,
22,86,23,196,2,10,249,22,184,3,39,248,22,86,23,196,2,28,28,248,22,
131,7,248,22,74,23,195,2,10,249,22,141,9,64,114,111,111,116,248,22,74,
23,196,2,28,27,248,22,98,194,28,248,22,149,14,23,194,2,10,28,248,22,
131,7,23,194,2,28,248,22,171,14,23,194,2,10,248,22,172,14,23,194,1,
11,27,248,22,81,248,22,100,195,28,192,192,248,22,150,15,248,22,107,195,11,
23,196,2,28,27,248,22,98,194,28,248,22,157,14,23,194,2,10,28,248,22,
131,7,23,194,2,28,248,22,179,14,23,194,2,10,248,22,180,14,23,194,1,
11,27,248,22,81,248,22,100,195,28,192,192,248,22,158,15,248,22,107,195,11,
11,11,11,250,22,151,2,196,197,249,22,73,197,200,28,28,248,22,81,248,22,
100,23,197,2,10,249,22,141,15,248,22,107,23,198,2,247,22,149,8,27,248,
22,176,14,249,22,174,14,248,22,98,23,200,2,23,198,1,28,248,22,58,248,
100,23,197,2,10,249,22,149,15,248,22,107,23,198,2,247,22,149,8,27,248,
22,184,14,249,22,182,14,248,22,98,23,200,2,23,198,1,28,248,22,58,248,
22,74,23,198,2,86,94,23,196,1,86,94,28,250,22,153,2,196,11,11,12,
250,22,151,2,196,11,9,249,22,157,2,195,88,163,8,36,38,50,11,9,224,
3,2,33,86,27,248,22,61,248,22,74,23,199,1,250,22,151,2,23,198,2,
23,196,2,249,22,73,248,22,125,23,200,1,250,22,153,2,23,203,1,23,201,
1,9,12,250,22,151,2,195,196,248,22,88,198,20,13,159,80,159,37,56,37,
88,163,36,37,54,8,128,144,9,225,1,0,2,33,80,27,250,22,184,14,28,
88,163,36,37,54,8,128,144,9,225,1,0,2,33,80,27,250,22,128,15,28,
23,197,2,80,159,41,46,38,80,159,41,49,38,11,32,0,88,163,8,36,36,
41,11,9,222,33,81,28,249,22,186,3,23,195,2,28,23,196,2,80,158,40,
48,80,158,40,54,20,13,159,80,159,38,56,37,20,20,94,88,163,36,37,55,
8,240,0,60,6,0,9,226,2,1,3,0,33,82,23,196,1,20,13,159,80,
159,38,51,37,26,29,80,159,8,31,52,37,249,22,27,11,80,159,8,33,51,
37,22,183,13,10,22,184,13,10,22,185,13,10,22,188,13,10,22,187,13,10,
22,189,13,10,22,186,13,10,22,190,13,10,22,191,13,10,22,128,14,10,22,
129,14,10,22,130,14,10,22,131,14,11,22,181,13,11,27,249,22,170,5,28,
37,22,191,13,10,22,128,14,10,22,129,14,10,22,132,14,10,22,131,14,10,
22,133,14,10,22,130,14,10,22,134,14,10,22,135,14,10,22,136,14,10,22,
137,14,10,22,138,14,10,22,139,14,11,22,189,13,11,27,249,22,170,5,28,
196,80,159,41,46,38,80,159,41,49,38,66,98,105,110,97,114,121,27,250,22,
40,22,31,88,163,8,36,36,44,11,9,223,4,33,83,20,20,94,88,163,36,
36,43,11,9,223,4,33,84,23,197,1,86,94,28,28,248,22,82,23,194,2,
249,22,4,32,0,88,163,8,36,37,45,11,9,222,33,85,23,195,2,11,12,
248,22,174,9,6,18,18,105,108,108,45,102,111,114,109,101,100,32,99,111,110,
116,101,110,116,27,247,22,133,2,27,90,159,39,11,89,161,39,36,11,248,22,
170,14,28,201,80,159,46,46,38,80,159,46,49,38,192,86,96,249,22,3,20,
178,14,28,201,80,159,46,46,38,80,159,46,49,38,192,86,96,249,22,3,20,
20,94,88,163,8,36,37,54,11,9,224,2,3,33,87,23,195,1,23,197,1,
249,22,157,2,195,88,163,8,36,38,48,11,9,223,3,33,88,28,197,86,94,
20,18,159,11,80,158,42,47,193,20,18,159,11,80,158,42,48,196,86,94,20,
18,159,11,80,158,42,53,193,20,18,159,11,80,158,42,54,196,193,28,193,80,
158,38,47,80,158,38,53,248,22,9,88,163,8,32,37,8,40,8,240,0,188,
23,0,9,224,1,2,33,89,0,7,35,114,120,34,47,43,34,28,248,22,131,
7,23,195,2,27,249,22,139,15,2,91,196,28,192,28,249,22,184,3,248,22,
7,23,195,2,27,249,22,147,15,2,91,196,28,192,28,249,22,184,3,248,22,
97,195,248,22,174,3,248,22,134,7,198,249,22,7,250,22,153,7,199,36,248,
22,97,198,197,249,22,7,250,22,153,7,199,36,248,22,97,198,249,22,73,249,
22,153,7,200,248,22,99,199,199,249,22,7,196,197,90,159,39,11,89,161,39,
36,11,248,22,170,14,23,198,1,86,94,23,195,1,28,249,22,141,9,23,195,
36,11,248,22,178,14,23,198,1,86,94,23,195,1,28,249,22,141,9,23,195,
2,2,33,249,22,7,195,199,27,249,22,73,23,197,1,23,201,1,28,248,22,
131,7,23,195,2,27,249,22,139,15,2,91,196,28,192,28,249,22,184,3,248,
131,7,23,195,2,27,249,22,147,15,2,91,196,28,192,28,249,22,184,3,248,
22,97,195,248,22,174,3,248,22,134,7,198,249,22,7,250,22,153,7,199,36,
248,22,97,198,195,249,22,7,250,22,153,7,199,36,248,22,97,198,249,22,73,
249,22,153,7,200,248,22,99,199,197,249,22,7,196,195,90,159,39,11,89,161,
39,36,11,248,22,170,14,23,198,1,28,249,22,141,9,194,2,33,249,22,7,
39,36,11,248,22,178,14,23,198,1,28,249,22,141,9,194,2,33,249,22,7,
195,197,249,80,159,45,57,39,194,249,22,73,197,199,32,93,88,163,36,44,8,
36,11,65,99,108,111,111,112,222,33,98,32,94,88,163,8,36,37,55,11,2,
30,222,33,95,28,248,22,81,248,22,75,23,195,2,248,22,83,27,248,22,74,
23,196,1,28,248,22,149,14,23,194,2,248,22,153,14,23,194,1,192,250,22,
84,27,248,22,74,23,198,2,28,248,22,149,14,23,194,2,248,22,153,14,23,
23,196,1,28,248,22,157,14,23,194,2,248,22,161,14,23,194,1,192,250,22,
84,27,248,22,74,23,198,2,28,248,22,157,14,23,194,2,248,22,161,14,23,
194,1,192,2,41,27,248,22,75,23,198,1,28,248,22,81,248,22,75,23,195,
2,248,22,83,27,248,22,74,23,196,1,28,248,22,149,14,23,194,2,248,22,
153,14,23,194,1,192,250,22,84,27,248,22,74,23,198,2,28,248,22,149,14,
23,194,2,248,22,153,14,23,194,1,192,2,41,27,248,22,75,23,198,1,28,
2,248,22,83,27,248,22,74,23,196,1,28,248,22,157,14,23,194,2,248,22,
161,14,23,194,1,192,250,22,84,27,248,22,74,23,198,2,28,248,22,157,14,
23,194,2,248,22,161,14,23,194,1,192,2,41,27,248,22,75,23,198,1,28,
248,22,81,248,22,75,23,195,2,248,22,83,27,248,22,74,23,196,1,28,248,
22,149,14,23,194,2,248,22,153,14,23,194,1,192,250,22,84,27,248,22,74,
23,198,2,28,248,22,149,14,23,194,2,248,22,153,14,23,194,1,192,2,41,
22,157,14,23,194,2,248,22,161,14,23,194,1,192,250,22,84,27,248,22,74,
23,198,2,28,248,22,157,14,23,194,2,248,22,161,14,23,194,1,192,2,41,
248,2,94,248,22,75,23,198,1,32,96,88,163,8,36,38,57,11,66,102,105,
108,116,101,114,222,33,97,28,248,22,81,23,195,2,9,28,248,23,194,2,248,
22,74,23,196,2,249,22,73,248,22,74,23,197,2,27,248,22,75,23,198,1,
@ -435,25 +435,25 @@
2,94,23,199,2,248,23,199,1,252,22,179,7,6,44,44,126,97,58,32,99,
111,108,108,101,99,116,105,111,110,32,110,111,116,32,102,111,117,110,100,58,32,
126,115,32,105,110,32,97,110,121,32,111,102,58,32,126,115,126,97,23,203,1,
28,248,22,81,23,203,1,28,248,22,149,14,23,202,2,248,22,153,14,23,202,
1,23,201,1,250,22,154,7,28,248,22,149,14,23,205,2,248,22,153,14,23,
28,248,22,81,23,203,1,28,248,22,157,14,23,202,2,248,22,161,14,23,202,
1,23,201,1,250,22,154,7,28,248,22,157,14,23,205,2,248,22,161,14,23,
205,1,23,204,1,6,1,1,47,23,202,2,28,248,22,81,23,201,2,9,28,
248,22,149,14,248,22,74,23,202,2,249,22,73,248,22,74,23,203,2,27,248,
22,75,23,204,2,28,248,22,81,23,194,2,9,28,248,22,149,14,248,22,74,
248,22,157,14,248,22,74,23,202,2,249,22,73,248,22,74,23,203,2,27,248,
22,75,23,204,2,28,248,22,81,23,194,2,9,28,248,22,157,14,248,22,74,
23,195,2,249,22,73,248,22,74,23,196,2,27,248,22,75,23,197,1,28,248,
22,81,23,194,2,9,28,248,22,149,14,248,22,74,23,195,2,249,22,73,248,
22,74,23,196,2,249,2,96,22,149,14,248,22,75,23,198,1,249,2,96,22,
149,14,248,22,75,23,196,1,27,248,22,75,23,195,1,28,248,22,81,23,194,
2,9,28,248,22,149,14,248,22,74,23,195,2,249,22,73,248,22,74,23,196,
2,249,2,96,22,149,14,248,22,75,23,198,1,249,2,96,22,149,14,248,22,
22,81,23,194,2,9,28,248,22,157,14,248,22,74,23,195,2,249,22,73,248,
22,74,23,196,2,249,2,96,22,157,14,248,22,75,23,198,1,249,2,96,22,
157,14,248,22,75,23,196,1,27,248,22,75,23,195,1,28,248,22,81,23,194,
2,9,28,248,22,157,14,248,22,74,23,195,2,249,22,73,248,22,74,23,196,
2,249,2,96,22,157,14,248,22,75,23,198,1,249,2,96,22,157,14,248,22,
75,23,196,1,27,248,22,75,23,202,2,28,248,22,81,23,194,2,9,28,248,
22,149,14,248,22,74,23,195,2,249,22,73,248,22,74,23,196,2,27,248,22,
75,23,197,1,28,248,22,81,23,194,2,9,28,248,22,149,14,248,22,74,23,
195,2,249,22,73,248,22,74,23,196,2,249,2,96,22,149,14,248,22,75,23,
198,1,249,2,96,22,149,14,248,22,75,23,196,1,27,248,22,75,23,195,1,
28,248,22,81,23,194,2,9,28,248,22,149,14,248,22,74,23,195,2,249,22,
73,248,22,74,23,196,2,249,2,96,22,149,14,248,22,75,23,198,1,249,2,
96,22,149,14,248,22,75,23,196,1,28,249,22,5,22,127,23,202,2,250,22,
22,157,14,248,22,74,23,195,2,249,22,73,248,22,74,23,196,2,27,248,22,
75,23,197,1,28,248,22,81,23,194,2,9,28,248,22,157,14,248,22,74,23,
195,2,249,22,73,248,22,74,23,196,2,249,2,96,22,157,14,248,22,75,23,
198,1,249,2,96,22,157,14,248,22,75,23,196,1,27,248,22,75,23,195,1,
28,248,22,81,23,194,2,9,28,248,22,157,14,248,22,74,23,195,2,249,22,
73,248,22,74,23,196,2,249,2,96,22,157,14,248,22,75,23,198,1,249,2,
96,22,157,14,248,22,75,23,196,1,28,249,22,5,22,127,23,202,2,250,22,
179,7,6,21,21,32,111,114,58,32,126,115,32,105,110,32,97,110,121,32,111,
102,58,32,126,115,23,202,1,249,22,2,22,128,2,28,248,22,81,23,206,2,
86,94,23,205,1,9,28,248,22,127,248,22,74,23,207,2,249,22,73,248,22,
@ -472,71 +472,71 @@
194,2,9,28,248,22,127,248,22,74,23,195,2,249,22,73,248,22,74,23,196,
2,249,2,96,22,127,248,22,75,23,198,1,249,2,96,22,127,248,22,75,23,
196,1,86,94,23,199,1,6,0,0,27,248,22,74,23,201,2,27,28,248,22,
149,14,23,195,2,249,22,167,14,23,196,1,23,198,2,248,22,128,2,23,195,
1,28,28,248,22,149,14,248,22,74,23,203,2,248,22,162,14,23,194,2,10,
27,250,22,1,22,167,14,23,197,1,23,201,2,28,28,248,22,81,23,199,2,
10,248,22,162,14,23,194,2,28,23,201,2,28,28,248,22,161,14,249,22,167,
14,195,203,10,27,28,248,22,149,14,202,248,22,153,14,202,201,27,248,22,134,
157,14,23,195,2,249,22,175,14,23,196,1,23,198,2,248,22,128,2,23,195,
1,28,28,248,22,157,14,248,22,74,23,203,2,248,22,170,14,23,194,2,10,
27,250,22,1,22,175,14,23,197,1,23,201,2,28,28,248,22,81,23,199,2,
10,248,22,170,14,23,194,2,28,23,201,2,28,28,248,22,169,14,249,22,175,
14,195,203,10,27,28,248,22,157,14,202,248,22,161,14,202,201,27,248,22,134,
7,23,195,2,27,28,249,22,188,3,23,196,2,40,28,249,22,137,7,6,4,
4,46,114,107,116,249,22,153,7,23,199,2,249,22,176,3,23,200,2,40,249,
22,154,7,250,22,153,7,23,200,1,36,249,22,176,3,23,201,1,40,6,3,
3,46,115,115,86,95,23,195,1,23,194,1,11,11,28,23,193,2,248,22,161,
14,249,22,167,14,198,23,196,1,11,192,26,8,2,93,203,204,205,206,23,15,
3,46,115,115,86,95,23,195,1,23,194,1,11,11,28,23,193,2,248,22,169,
14,249,22,175,14,198,23,196,1,11,192,26,8,2,93,203,204,205,206,23,15,
23,16,248,22,75,23,18,28,23,18,23,18,200,192,26,8,2,93,203,204,205,
206,23,15,23,16,248,22,75,23,18,23,18,26,8,2,93,202,203,204,205,206,
23,15,248,22,75,23,17,23,17,90,159,38,11,89,161,38,36,11,249,80,159,
40,57,39,23,200,1,23,201,1,27,248,22,61,28,248,22,149,14,195,248,22,
153,14,195,194,27,247,22,130,15,27,250,22,87,28,23,197,2,28,247,22,129,
40,57,39,23,200,1,23,201,1,27,248,22,61,28,248,22,157,14,195,248,22,
161,14,195,194,27,247,22,138,15,27,250,22,87,28,23,197,2,28,247,22,137,
15,27,248,80,159,46,55,39,10,27,250,22,153,2,23,197,2,23,203,2,11,
28,23,193,2,192,86,94,23,193,1,250,22,153,2,23,197,1,11,9,9,9,
28,23,197,1,28,80,159,44,49,38,27,248,80,159,46,55,39,11,27,250,22,
153,2,23,197,2,23,203,1,11,28,23,193,2,192,86,94,23,193,1,250,22,
153,2,23,197,1,11,9,86,94,23,198,1,9,9,247,22,191,14,26,8,2,
93,200,203,204,206,23,15,23,18,200,11,86,95,28,28,248,22,150,14,23,194,
2,10,28,248,22,149,14,23,194,2,10,28,248,22,131,7,23,194,2,28,248,
22,171,14,23,194,2,10,248,22,172,14,23,194,2,11,12,252,22,177,9,23,
153,2,23,197,1,11,9,86,94,23,198,1,9,9,247,22,135,15,26,8,2,
93,200,203,204,206,23,15,23,18,200,11,86,95,28,28,248,22,158,14,23,194,
2,10,28,248,22,157,14,23,194,2,10,28,248,22,131,7,23,194,2,28,248,
22,179,14,23,194,2,10,248,22,180,14,23,194,2,11,12,252,22,177,9,23,
200,2,2,42,36,23,198,2,23,199,2,28,28,248,22,131,7,23,195,2,10,
248,22,184,7,23,195,2,86,94,23,194,1,12,252,22,177,9,23,200,2,2,
43,37,23,198,2,23,199,1,90,159,39,11,89,161,39,36,11,248,22,170,14,
43,37,23,198,2,23,199,1,90,159,39,11,89,161,39,36,11,248,22,178,14,
23,197,2,86,94,23,195,1,86,94,28,192,12,250,22,178,9,23,201,1,2,
44,23,199,1,249,22,7,194,195,90,159,38,11,89,161,38,36,11,86,95,28,
28,248,22,150,14,23,196,2,10,28,248,22,149,14,23,196,2,10,28,248,22,
131,7,23,196,2,28,248,22,171,14,23,196,2,10,248,22,172,14,23,196,2,
28,248,22,158,14,23,196,2,10,28,248,22,157,14,23,196,2,10,28,248,22,
131,7,23,196,2,28,248,22,179,14,23,196,2,10,248,22,180,14,23,196,2,
11,12,252,22,177,9,2,25,2,42,36,23,200,2,23,201,2,28,28,248,22,
131,7,23,197,2,10,248,22,184,7,23,197,2,12,252,22,177,9,2,25,2,
43,37,23,200,2,23,201,2,90,159,39,11,89,161,39,36,11,248,22,170,14,
43,37,23,200,2,23,201,2,90,159,39,11,89,161,39,36,11,248,22,178,14,
23,199,2,86,94,23,195,1,86,94,28,192,12,250,22,178,9,2,25,2,44,
23,201,2,249,22,7,194,195,27,249,22,159,14,250,22,148,15,0,20,35,114,
120,35,34,40,63,58,91,46,93,91,94,46,93,42,124,41,36,34,248,22,155,
23,201,2,249,22,7,194,195,27,249,22,167,14,250,22,156,15,0,20,35,114,
120,35,34,40,63,58,91,46,93,91,94,46,93,42,124,41,36,34,248,22,163,
14,23,201,1,28,248,22,131,7,23,203,2,249,22,146,8,23,204,1,8,63,
23,202,1,28,248,22,150,14,23,199,2,248,22,151,14,23,199,1,86,94,23,
198,1,247,22,152,14,28,248,22,149,14,194,249,22,167,14,195,194,192,90,159,
38,11,89,161,38,36,11,86,95,28,28,248,22,150,14,23,196,2,10,28,248,
22,149,14,23,196,2,10,28,248,22,131,7,23,196,2,28,248,22,171,14,23,
196,2,10,248,22,172,14,23,196,2,11,12,252,22,177,9,2,26,2,42,36,
23,202,1,28,248,22,158,14,23,199,2,248,22,159,14,23,199,1,86,94,23,
198,1,247,22,160,14,28,248,22,157,14,194,249,22,175,14,195,194,192,90,159,
38,11,89,161,38,36,11,86,95,28,28,248,22,158,14,23,196,2,10,28,248,
22,157,14,23,196,2,10,28,248,22,131,7,23,196,2,28,248,22,179,14,23,
196,2,10,248,22,180,14,23,196,2,11,12,252,22,177,9,2,26,2,42,36,
23,200,2,23,201,2,28,28,248,22,131,7,23,197,2,10,248,22,184,7,23,
197,2,12,252,22,177,9,2,26,2,43,37,23,200,2,23,201,2,90,159,39,
11,89,161,39,36,11,248,22,170,14,23,199,2,86,94,23,195,1,86,94,28,
11,89,161,39,36,11,248,22,178,14,23,199,2,86,94,23,195,1,86,94,28,
192,12,250,22,178,9,2,26,2,44,23,201,2,249,22,7,194,195,27,249,22,
159,14,249,22,132,8,250,22,149,15,0,9,35,114,120,35,34,91,46,93,34,
248,22,155,14,23,203,1,6,1,1,95,28,248,22,131,7,23,202,2,249,22,
146,8,23,203,1,8,63,23,201,1,28,248,22,150,14,23,199,2,248,22,151,
14,23,199,1,86,94,23,198,1,247,22,152,14,28,248,22,149,14,194,249,22,
167,14,195,194,192,249,247,22,159,5,194,11,27,247,22,129,15,249,80,159,39,
167,14,249,22,132,8,250,22,157,15,0,9,35,114,120,35,34,91,46,93,34,
248,22,163,14,23,203,1,6,1,1,95,28,248,22,131,7,23,202,2,249,22,
146,8,23,203,1,8,63,23,201,1,28,248,22,158,14,23,199,2,248,22,159,
14,23,199,1,86,94,23,198,1,247,22,160,14,28,248,22,157,14,194,249,22,
175,14,195,194,192,249,247,22,159,5,194,11,27,247,22,137,15,249,80,159,39,
40,38,28,23,195,2,27,248,22,151,8,2,45,28,192,192,2,46,2,47,27,
28,23,196,1,250,22,167,14,248,22,189,14,2,48,247,22,149,8,2,49,11,
27,248,80,159,42,8,28,39,250,22,87,9,248,22,83,248,22,189,14,2,38,
9,28,193,249,22,73,195,194,192,27,247,22,129,15,249,80,159,39,40,38,28,
28,23,196,1,250,22,175,14,248,22,133,15,2,48,247,22,149,8,2,49,11,
27,248,80,159,42,8,28,39,250,22,87,9,248,22,83,248,22,133,15,2,38,
9,28,193,249,22,73,195,194,192,27,247,22,137,15,249,80,159,39,40,38,28,
23,195,2,27,248,22,151,8,2,45,28,192,192,2,46,2,47,27,28,23,196,
1,250,22,167,14,248,22,189,14,2,48,247,22,149,8,2,49,11,27,248,80,
159,42,8,29,39,250,22,87,23,203,1,248,22,83,248,22,189,14,2,38,9,
28,193,249,22,73,195,194,192,27,247,22,129,15,249,80,159,39,40,38,28,23,
1,250,22,175,14,248,22,133,15,2,48,247,22,149,8,2,49,11,27,248,80,
159,42,8,29,39,250,22,87,23,203,1,248,22,83,248,22,133,15,2,38,9,
28,193,249,22,73,195,194,192,27,247,22,137,15,249,80,159,39,40,38,28,23,
195,2,27,248,22,151,8,2,45,28,192,192,2,46,2,47,27,28,23,196,1,
250,22,167,14,248,22,189,14,2,48,247,22,149,8,2,49,11,27,248,80,159,
42,8,30,39,250,22,87,23,203,1,248,22,83,248,22,189,14,2,38,23,204,
250,22,175,14,248,22,133,15,2,48,247,22,149,8,2,49,11,27,248,80,159,
42,8,30,39,250,22,87,23,203,1,248,22,83,248,22,133,15,2,38,23,204,
1,28,193,249,22,73,195,194,192,86,94,249,22,184,6,247,22,155,5,195,248,
22,146,6,249,22,128,4,36,249,22,176,3,197,198,27,28,23,197,2,86,95,
23,196,1,23,195,1,23,197,1,86,94,23,197,1,27,248,22,189,14,2,31,
23,196,1,23,195,1,23,197,1,86,94,23,197,1,27,248,22,133,15,2,31,
27,250,80,159,42,39,39,23,197,1,11,11,27,248,22,131,4,23,199,1,27,
28,23,194,2,23,194,1,86,94,23,194,1,36,27,248,22,131,4,23,202,1,
27,28,23,194,2,23,194,1,86,94,23,194,1,36,249,22,186,5,23,199,1,
@ -568,7 +568,7 @@
36,37,54,38,2,4,223,0,33,55,80,159,36,38,37,20,15,16,2,20,25,
96,2,5,88,163,8,36,39,8,24,52,9,223,0,33,62,88,163,36,38,47,
44,9,223,0,33,63,88,163,36,37,46,44,9,223,0,33,64,80,159,36,39,
37,20,15,16,2,27,248,22,133,15,248,22,145,8,27,28,249,22,141,9,247,
37,20,15,16,2,27,248,22,141,15,248,22,145,8,27,28,249,22,141,9,247,
22,153,8,2,32,6,1,1,59,6,1,1,58,250,22,179,7,6,14,14,40,
91,94,126,97,93,42,41,126,97,40,46,42,41,23,196,2,23,196,1,88,163,
8,36,38,48,11,2,6,223,0,33,68,80,159,36,40,37,20,15,16,2,32,
@ -576,7 +576,7 @@
2,32,0,88,163,8,36,39,51,11,2,8,222,33,71,80,159,36,42,37,20,
15,16,2,88,163,45,38,51,8,128,4,2,9,223,0,33,74,80,159,36,43,
37,20,15,16,2,88,163,45,39,52,8,128,4,2,11,223,0,33,77,80,159,
36,45,37,20,15,16,2,248,22,189,14,70,108,105,110,107,115,45,102,105,108,
36,45,37,20,15,16,2,248,22,133,15,70,108,105,110,107,115,45,102,105,108,
101,80,159,36,46,37,20,15,16,2,247,22,133,2,80,158,36,47,20,15,16,
2,2,78,80,158,36,48,20,15,16,2,248,80,159,37,50,37,88,163,36,36,
49,8,240,8,128,1,0,9,223,1,33,79,80,159,36,49,37,20,15,16,2,
@ -599,7 +599,7 @@
EVAL_ONE_SIZED_STR((char *)expr, 10421);
}
{
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,48,0,0,0,0,0,0,0,0,0,0,
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,49,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,12,0,0,0,1,0,0,15,0,40,0,
57,0,75,0,97,0,120,0,140,0,162,0,169,0,176,0,183,0,0,0,175,
1,0,0,74,35,37,112,108,97,99,101,45,115,116,114,117,99,116,1,23,115,
@ -617,7 +617,7 @@
11,11,16,5,2,3,2,7,2,8,2,4,2,2,16,5,11,11,11,11,11,
16,5,2,3,2,7,2,8,2,4,2,2,41,41,37,12,11,11,16,0,16,
0,16,0,36,36,11,12,11,11,16,0,16,0,16,0,36,36,16,2,20,15,
16,6,253,22,177,10,2,3,11,38,36,11,248,22,83,249,22,73,22,165,10,
16,6,253,22,182,10,2,3,11,38,36,11,248,22,83,249,22,73,22,170,10,
88,163,36,37,45,44,9,223,9,33,9,80,159,36,36,37,80,159,36,37,37,
80,159,36,38,37,80,159,36,39,37,80,159,36,40,37,20,15,16,3,249,22,
7,88,163,36,37,45,44,9,223,2,33,10,88,163,36,37,45,44,9,223,2,
@ -626,7 +626,7 @@
EVAL_ONE_SIZED_STR((char *)expr, 497);
}
{
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,48,0,0,0,0,0,0,0,0,0,0,
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,49,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,65,0,0,0,1,0,0,7,0,18,0,
45,0,51,0,64,0,73,0,80,0,102,0,124,0,150,0,158,0,170,0,185,
0,201,0,219,0,239,0,251,0,11,1,34,1,46,1,77,1,84,1,89,1,
@ -654,48 +654,48 @@
109,101,5,3,46,122,111,5,3,46,122,111,6,6,6,110,97,116,105,118,101,
64,108,111,111,112,63,108,105,98,67,105,103,110,111,114,101,100,249,22,14,195,
80,159,38,49,38,249,80,159,38,52,39,195,10,90,159,39,11,89,161,39,36,
11,248,22,170,14,197,86,95,23,195,1,23,193,1,28,249,22,137,15,0,11,
35,114,120,34,91,46,93,115,115,36,34,248,22,154,14,23,197,1,249,80,159,
11,248,22,178,14,197,86,95,23,195,1,23,193,1,28,249,22,145,15,0,11,
35,114,120,34,91,46,93,115,115,36,34,248,22,162,14,23,197,1,249,80,159,
41,56,39,198,5,4,46,114,107,116,196,27,28,23,195,2,28,249,22,141,9,
23,197,2,80,158,39,50,86,94,23,195,1,80,158,37,51,27,248,22,138,5,
23,197,2,28,248,22,149,14,23,194,2,90,159,39,11,89,161,39,36,11,248,
22,170,14,23,197,1,86,95,20,18,159,11,80,158,41,50,198,20,18,159,11,
23,197,2,28,248,22,157,14,23,194,2,90,159,39,11,89,161,39,36,11,248,
22,178,14,23,197,1,86,95,20,18,159,11,80,158,41,50,198,20,18,159,11,
80,158,41,51,192,192,11,11,28,23,193,2,192,86,94,23,193,1,27,247,22,
160,5,28,192,192,247,22,190,14,250,22,167,14,23,197,1,23,199,1,249,80,
159,43,39,39,23,198,1,2,26,250,22,167,14,23,197,1,23,199,1,249,80,
159,43,39,39,23,198,1,2,27,252,22,167,14,23,199,1,23,201,1,2,28,
247,22,154,8,249,80,159,45,39,39,23,200,1,80,159,45,36,38,252,22,167,
160,5,28,192,192,247,22,134,15,250,22,175,14,23,197,1,23,199,1,249,80,
159,43,39,39,23,198,1,2,26,250,22,175,14,23,197,1,23,199,1,249,80,
159,43,39,39,23,198,1,2,27,252,22,175,14,23,199,1,23,201,1,2,28,
247,22,154,8,249,80,159,45,39,39,23,200,1,80,159,45,36,38,252,22,175,
14,23,199,1,23,201,1,2,28,247,22,154,8,249,80,159,45,39,39,23,200,
1,80,159,45,36,38,27,252,22,167,14,23,200,1,23,202,1,2,28,247,22,
154,8,249,80,159,46,39,39,23,201,1,80,159,46,36,38,27,250,22,184,14,
1,80,159,45,36,38,27,252,22,175,14,23,200,1,23,202,1,2,28,247,22,
154,8,249,80,159,46,39,39,23,201,1,80,159,46,36,38,27,250,22,128,15,
196,11,32,0,88,163,8,36,36,41,11,9,222,11,28,192,249,22,73,195,194,
11,27,252,22,167,14,23,200,1,23,202,1,2,28,247,22,154,8,249,80,159,
46,39,39,23,201,1,80,159,46,36,38,27,250,22,184,14,196,11,32,0,88,
163,8,36,36,41,11,9,222,11,28,192,249,22,73,195,194,11,27,250,22,167,
11,27,252,22,175,14,23,200,1,23,202,1,2,28,247,22,154,8,249,80,159,
46,39,39,23,201,1,80,159,46,36,38,27,250,22,128,15,196,11,32,0,88,
163,8,36,36,41,11,9,222,11,28,192,249,22,73,195,194,11,27,250,22,175,
14,23,198,1,23,200,1,249,80,159,44,39,39,23,199,1,2,26,27,250,22,
184,14,196,11,32,0,88,163,8,36,36,41,11,9,222,11,28,192,249,22,73,
195,194,11,27,250,22,167,14,23,198,1,23,200,1,249,80,159,44,39,39,23,
199,1,2,27,27,250,22,184,14,196,11,32,0,88,163,8,36,36,41,11,9,
128,15,196,11,32,0,88,163,8,36,36,41,11,9,222,11,28,192,249,22,73,
195,194,11,27,250,22,175,14,23,198,1,23,200,1,249,80,159,44,39,39,23,
199,1,2,27,27,250,22,128,15,196,11,32,0,88,163,8,36,36,41,11,9,
222,11,28,192,249,22,73,195,194,11,86,94,28,248,80,159,37,38,39,23,195,
2,12,250,22,177,9,77,108,111,97,100,47,117,115,101,45,99,111,109,112,105,
108,101,100,6,25,25,112,97,116,104,32,111,114,32,118,97,108,105,100,45,112,
97,116,104,32,115,116,114,105,110,103,23,197,2,90,159,46,11,89,161,37,36,
11,28,248,22,173,14,23,205,2,23,204,2,27,247,22,160,5,28,23,193,2,
249,22,174,14,23,207,2,23,195,1,23,205,2,89,161,39,37,11,248,22,170,
11,28,248,22,181,14,23,205,2,23,204,2,27,247,22,160,5,28,23,193,2,
249,22,182,14,23,207,2,23,195,1,23,205,2,89,161,39,37,11,248,22,178,
14,23,205,1,86,94,23,196,1,89,161,38,40,11,28,23,205,2,27,248,22,
154,14,23,197,2,27,248,22,189,7,23,195,2,28,28,249,22,188,3,23,195,
162,14,23,197,2,27,248,22,189,7,23,195,2,28,28,249,22,188,3,23,195,
2,40,249,22,128,8,5,4,46,114,107,116,249,22,131,8,23,198,2,249,22,
176,3,23,199,2,40,11,249,22,7,23,199,2,248,22,158,14,249,22,132,8,
176,3,23,199,2,40,11,249,22,7,23,199,2,248,22,166,14,249,22,132,8,
250,22,131,8,23,202,1,36,249,22,176,3,23,203,1,40,5,3,46,115,115,
249,22,7,23,199,2,11,249,22,7,23,197,2,11,89,161,37,42,11,28,249,
22,141,9,23,199,2,23,197,2,23,193,2,249,22,167,14,23,196,2,23,199,
22,141,9,23,199,2,23,197,2,23,193,2,249,22,175,14,23,196,2,23,199,
2,89,161,37,43,11,28,23,198,2,28,249,22,141,9,23,200,2,23,197,1,
23,193,1,86,94,23,193,1,249,22,167,14,23,196,2,23,200,2,86,94,23,
23,193,1,86,94,23,193,1,249,22,175,14,23,196,2,23,200,2,86,94,23,
195,1,11,89,161,37,44,11,28,249,22,141,9,23,196,2,68,114,101,108,97,
116,105,118,101,86,94,23,194,1,2,25,23,194,1,89,161,37,45,11,247,22,
128,15,27,250,22,184,14,23,203,2,11,32,0,88,163,8,36,36,41,11,9,
136,15,27,250,22,128,15,23,203,2,11,32,0,88,163,8,36,36,41,11,9,
222,11,27,28,23,194,2,249,22,73,23,203,2,23,196,1,86,94,23,194,1,
11,27,28,23,203,2,28,23,194,2,11,27,250,22,184,14,23,207,2,11,32,
11,27,28,23,203,2,28,23,194,2,11,27,250,22,128,15,23,207,2,11,32,
0,88,163,8,36,36,41,11,9,222,11,28,192,249,22,73,23,206,2,194,11,
11,27,28,23,195,2,23,195,2,23,194,2,27,88,163,36,37,50,44,62,122,
111,225,15,13,9,33,36,27,88,163,36,37,50,44,66,97,108,116,45,122,111,
@ -710,8 +710,8 @@
201,1,23,200,1,23,199,1,23,198,1,23,196,1,23,195,1,23,194,1,20,
13,159,80,159,57,40,37,250,80,159,8,24,41,37,249,22,27,11,80,159,8,
26,40,37,22,181,4,11,20,13,159,80,159,57,40,37,250,80,159,8,24,41,
37,249,22,27,11,80,159,8,26,40,37,22,160,5,28,248,22,149,14,23,216,
2,23,215,1,86,94,23,215,1,247,22,190,14,249,247,22,132,15,248,22,74,
37,249,22,27,11,80,159,8,26,40,37,22,160,5,28,248,22,157,14,23,216,
2,23,215,1,86,94,23,215,1,247,22,134,15,249,247,22,140,15,248,22,74,
195,23,25,86,94,23,193,1,27,28,23,195,2,28,23,197,1,27,249,22,5,
88,163,8,36,37,53,45,9,225,25,23,20,33,41,23,217,2,27,28,23,204,
2,11,193,28,192,192,28,193,28,203,28,249,22,188,3,248,22,75,196,248,22,
@ -720,8 +720,8 @@
1,23,195,1,20,13,159,80,159,58,40,37,250,80,159,8,25,41,37,249,22,
27,11,80,159,8,27,40,37,22,181,4,23,215,1,20,13,159,80,159,58,40,
37,250,80,159,8,25,41,37,249,22,27,11,80,159,8,27,40,37,22,160,5,
28,248,22,149,14,23,217,2,23,216,1,86,94,23,216,1,247,22,190,14,249,
247,22,132,15,248,22,74,195,23,26,86,94,23,193,1,27,28,23,197,2,28,
28,248,22,157,14,23,217,2,23,216,1,86,94,23,216,1,247,22,134,15,249,
247,22,140,15,248,22,74,195,23,26,86,94,23,193,1,27,28,23,197,2,28,
23,201,1,27,249,22,5,20,20,94,88,163,8,36,37,51,44,9,225,26,24,
20,33,42,23,213,1,23,218,2,27,28,23,204,2,11,193,28,192,192,28,193,
28,23,204,2,28,249,22,188,3,248,22,75,196,248,22,75,23,207,2,193,11,
@ -729,8 +729,8 @@
215,1,23,213,1,23,212,1,23,211,1,23,202,1,23,200,1,23,197,1,23,
196,1,20,13,159,80,159,59,40,37,250,80,159,8,26,41,37,249,22,27,11,
80,159,8,28,40,37,22,181,4,11,20,13,159,80,159,59,40,37,250,80,159,
8,26,41,37,249,22,27,11,80,159,8,28,40,37,22,160,5,28,248,22,149,
14,23,218,2,23,217,1,86,94,23,217,1,247,22,190,14,249,247,22,158,5,
8,26,41,37,249,22,27,11,80,159,8,28,40,37,22,160,5,28,248,22,157,
14,23,218,2,23,217,1,86,94,23,217,1,247,22,134,15,249,247,22,158,5,
248,22,74,195,23,27,86,94,23,193,1,27,28,23,197,1,28,23,201,1,27,
249,22,5,20,20,94,88,163,8,36,37,51,44,9,225,27,25,22,33,43,23,
215,1,23,219,1,27,28,23,205,2,11,193,28,192,192,28,193,28,204,28,249,
@ -739,26 +739,26 @@
1,20,13,159,80,159,8,24,40,37,250,80,159,8,27,41,37,249,22,27,11,
80,159,8,29,40,37,22,181,4,23,217,1,20,13,159,80,159,8,24,40,37,
250,80,159,8,27,41,37,249,22,27,11,80,159,8,29,40,37,22,160,5,28,
248,22,149,14,23,219,2,23,218,1,86,94,23,218,1,247,22,190,14,249,247,
248,22,157,14,23,219,2,23,218,1,86,94,23,218,1,247,22,134,15,249,247,
22,158,5,248,22,74,195,23,28,86,94,23,193,1,27,28,23,199,2,86,94,
23,215,1,23,214,1,86,94,23,214,1,23,215,1,20,13,159,80,159,8,25,
40,37,250,80,159,8,28,41,37,249,22,27,11,80,159,8,30,40,37,22,181,
4,28,23,30,28,23,202,1,11,195,86,94,23,202,1,11,20,13,159,80,159,
8,25,40,37,250,80,159,8,28,41,37,249,22,27,11,80,159,8,30,40,37,
22,160,5,28,248,22,149,14,23,220,2,23,219,1,86,94,23,219,1,247,22,
190,14,249,247,22,158,5,194,23,29,27,249,22,161,8,80,159,39,45,38,249,
22,160,5,28,248,22,157,14,23,220,2,23,219,1,86,94,23,219,1,247,22,
134,15,249,247,22,158,5,194,23,29,27,249,22,161,8,80,159,39,45,38,249,
22,183,3,248,22,179,3,248,22,166,2,200,8,128,8,27,28,193,248,22,169,
2,194,11,28,192,27,249,22,96,198,195,28,192,248,22,75,193,11,11,27,249,
22,183,3,248,22,179,3,248,22,166,2,198,8,128,8,27,249,22,161,8,80,
159,40,45,38,195,27,28,193,248,22,169,2,194,11,250,22,162,8,80,159,42,
45,38,197,248,22,168,2,249,22,73,249,22,73,204,205,28,198,198,9,0,17,
35,114,120,34,94,40,46,42,63,41,47,40,46,42,41,36,34,32,48,88,163,
8,36,37,59,11,2,29,222,33,49,27,249,22,137,15,2,47,23,196,2,28,
8,36,37,59,11,2,29,222,33,49,27,249,22,145,15,2,47,23,196,2,28,
23,193,2,86,94,23,194,1,249,22,73,248,22,98,23,196,2,27,248,22,107,
23,197,1,27,249,22,137,15,2,47,23,196,2,28,23,193,2,86,94,23,194,
1,249,22,73,248,22,98,23,196,2,27,248,22,107,23,197,1,27,249,22,137,
23,197,1,27,249,22,145,15,2,47,23,196,2,28,23,193,2,86,94,23,194,
1,249,22,73,248,22,98,23,196,2,27,248,22,107,23,197,1,27,249,22,145,
15,2,47,23,196,2,28,23,193,2,86,94,23,194,1,249,22,73,248,22,98,
23,196,2,27,248,22,107,23,197,1,27,249,22,137,15,2,47,23,196,2,28,
23,196,2,27,248,22,107,23,197,1,27,249,22,145,15,2,47,23,196,2,28,
23,193,2,86,94,23,194,1,249,22,73,248,22,98,23,196,2,248,2,48,248,
22,107,23,197,1,248,22,83,194,248,22,83,194,248,22,83,194,248,22,83,194,
32,50,88,163,36,37,55,11,2,29,222,33,51,28,248,22,81,248,22,75,23,
@ -768,12 +768,12 @@
23,195,2,249,22,7,9,248,22,74,195,90,159,38,11,89,161,38,36,11,248,
2,50,248,22,75,196,249,22,7,249,22,73,248,22,74,199,196,195,249,22,7,
249,22,73,248,22,74,199,196,195,249,22,7,249,22,73,248,22,74,199,196,195,
27,27,249,22,137,15,2,47,23,197,2,28,23,193,2,86,94,23,195,1,249,
22,73,248,22,98,23,196,2,27,248,22,107,23,197,1,27,249,22,137,15,2,
27,27,249,22,145,15,2,47,23,197,2,28,23,193,2,86,94,23,195,1,249,
22,73,248,22,98,23,196,2,27,248,22,107,23,197,1,27,249,22,145,15,2,
47,23,196,2,28,23,193,2,86,94,23,194,1,249,22,73,248,22,98,23,196,
2,27,248,22,107,23,197,1,27,249,22,137,15,2,47,23,196,2,28,23,193,
2,27,248,22,107,23,197,1,27,249,22,145,15,2,47,23,196,2,28,23,193,
2,86,94,23,194,1,249,22,73,248,22,98,23,196,2,27,248,22,107,23,197,
1,27,249,22,137,15,2,47,23,196,2,28,23,193,2,86,94,23,194,1,249,
1,27,249,22,145,15,2,47,23,196,2,28,23,193,2,86,94,23,194,1,249,
22,73,248,22,98,23,196,2,248,2,48,248,22,107,23,197,1,248,22,83,194,
248,22,83,194,248,22,83,194,248,22,83,195,28,23,195,1,192,28,248,22,81,
248,22,75,23,195,2,249,22,7,9,248,22,74,195,27,248,22,75,194,90,159,
@ -785,9 +785,9 @@
74,200,196,195,86,95,28,248,22,136,5,195,12,250,22,177,9,2,21,6,20,
20,114,101,115,111,108,118,101,100,45,109,111,100,117,108,101,45,112,97,116,104,
197,28,24,193,2,248,24,194,1,195,86,94,23,193,1,12,27,250,22,153,2,
80,159,41,43,38,248,22,162,15,247,22,191,12,11,27,28,23,194,2,193,86,
80,159,41,43,38,248,22,170,15,247,22,135,13,11,27,28,23,194,2,193,86,
94,23,194,1,27,247,22,133,2,86,94,250,22,151,2,80,159,43,43,38,248,
22,162,15,247,22,191,12,195,192,250,22,151,2,195,199,66,97,116,116,97,99,
22,170,15,247,22,135,13,195,192,250,22,151,2,195,199,66,97,116,116,97,99,
104,251,211,197,198,199,10,28,192,250,22,176,9,11,196,195,248,22,174,9,194,
28,249,22,137,7,194,6,1,1,46,2,25,28,249,22,137,7,194,6,2,2,
46,46,62,117,112,192,32,57,88,163,8,36,37,50,11,67,115,115,45,62,114,
@ -799,10 +799,10 @@
108,101,32,105,110,32,108,111,97,100,105,110,103,32,97,116,32,126,46,115,58,
32,126,46,115,23,200,1,249,22,2,22,75,248,22,88,249,22,73,23,206,1,
23,202,1,12,12,247,192,20,13,159,80,159,41,48,38,249,22,73,249,22,73,
248,22,162,15,247,22,191,12,23,200,1,23,195,1,20,13,159,80,159,41,40,
248,22,170,15,247,22,135,13,23,200,1,23,195,1,20,13,159,80,159,41,40,
37,250,80,159,44,41,37,249,22,27,11,80,159,46,40,37,22,180,4,23,197,
1,249,247,22,159,5,23,199,1,248,22,61,248,22,153,14,23,199,1,86,94,
28,28,248,22,149,14,23,196,2,10,248,22,144,5,23,196,2,12,28,23,197,
1,249,247,22,159,5,23,199,1,248,22,61,248,22,161,14,23,199,1,86,94,
28,28,248,22,157,14,23,196,2,10,248,22,144,5,23,196,2,12,28,23,197,
2,250,22,176,9,11,6,15,15,98,97,100,32,109,111,100,117,108,101,32,112,
97,116,104,23,200,2,250,22,177,9,2,21,6,19,19,109,111,100,117,108,101,
45,112,97,116,104,32,111,114,32,112,97,116,104,23,198,2,28,28,248,22,71,
@ -815,57 +815,57 @@
111,108,118,101,114,12,252,212,199,200,201,202,80,158,42,53,86,94,23,193,1,
27,88,163,8,36,37,46,11,79,115,104,111,119,45,99,111,108,108,101,99,116,
105,111,110,45,101,114,114,223,5,33,55,27,28,248,22,58,23,198,2,27,248,
80,159,41,46,39,249,22,73,23,201,2,247,22,191,14,28,23,193,2,192,86,
80,159,41,46,39,249,22,73,23,201,2,247,22,135,15,28,23,193,2,192,86,
94,23,193,1,90,159,38,11,89,161,38,36,11,249,80,159,44,52,39,248,22,
64,23,203,2,11,27,28,248,22,81,23,195,2,6,8,8,109,97,105,110,46,
114,107,116,249,22,154,7,23,197,2,6,4,4,46,114,107,116,27,252,80,159,
49,57,39,2,21,23,204,1,28,248,22,81,23,201,2,23,201,1,86,94,23,
201,1,248,22,74,23,201,2,28,248,22,81,23,201,2,86,94,23,200,1,9,
248,22,75,23,201,1,23,199,2,249,22,167,14,23,195,1,23,196,1,28,248,
248,22,75,23,201,1,23,199,2,249,22,175,14,23,195,1,23,196,1,28,248,
22,131,7,23,198,2,86,94,23,194,1,27,248,80,159,41,8,26,39,23,200,
2,27,248,80,159,42,46,39,249,22,73,23,202,2,23,197,2,28,23,193,2,
192,86,94,23,193,1,90,159,38,11,89,161,38,36,11,249,80,159,45,52,39,
23,203,2,11,250,22,1,22,167,14,23,199,1,249,22,87,249,22,2,32,0,
23,203,2,11,250,22,1,22,175,14,23,199,1,249,22,87,249,22,2,32,0,
88,163,8,36,37,44,11,9,222,33,56,23,200,1,248,22,83,248,2,57,23,
201,1,28,248,22,149,14,23,198,2,86,94,23,194,1,28,248,22,172,14,23,
198,2,248,80,159,40,8,27,39,248,22,176,14,23,199,2,248,22,83,6,26,
201,1,28,248,22,157,14,23,198,2,86,94,23,194,1,28,248,22,180,14,23,
198,2,248,80,159,40,8,27,39,248,22,184,14,23,199,2,248,22,83,6,26,
26,32,40,97,32,112,97,116,104,32,109,117,115,116,32,98,101,32,97,98,115,
111,108,117,116,101,41,28,249,22,141,9,248,22,74,23,200,2,2,30,27,248,
80,159,41,46,39,249,22,73,23,201,2,247,22,191,14,28,23,193,2,192,86,
80,159,41,46,39,249,22,73,23,201,2,247,22,135,15,28,23,193,2,192,86,
94,23,193,1,90,159,39,11,89,161,38,36,11,249,80,159,45,52,39,248,22,
98,23,204,2,11,89,161,37,38,11,28,248,22,81,248,22,100,23,203,2,28,
248,22,81,23,194,2,249,22,141,15,0,8,35,114,120,34,91,46,93,34,23,
248,22,81,23,194,2,249,22,149,15,0,8,35,114,120,34,91,46,93,34,23,
196,2,11,10,27,28,23,196,2,248,2,57,23,196,2,28,248,22,81,23,195,
2,6,8,8,109,97,105,110,46,114,107,116,28,249,22,141,15,0,8,35,114,
2,6,8,8,109,97,105,110,46,114,107,116,28,249,22,149,15,0,8,35,114,
120,34,91,46,93,34,23,197,2,248,2,57,23,196,2,249,22,154,7,23,197,
2,6,4,4,46,114,107,116,27,28,23,197,1,86,94,23,196,1,249,22,87,
28,248,22,81,248,22,100,23,207,2,21,93,6,5,5,109,122,108,105,98,249,
22,1,22,87,249,22,2,80,159,51,8,28,39,248,22,100,23,210,2,23,197,
1,28,248,22,81,23,196,2,86,94,23,195,1,248,22,83,23,197,1,86,94,
23,196,1,23,195,1,27,252,80,159,51,57,39,2,21,23,206,1,248,22,74,
23,200,2,248,22,75,23,200,1,23,200,2,249,22,167,14,23,195,1,23,197,
23,200,2,248,22,75,23,200,1,23,200,2,249,22,175,14,23,195,1,23,197,
1,28,249,22,141,9,248,22,74,23,200,2,64,102,105,108,101,248,80,159,40,
8,27,39,248,22,176,14,249,22,174,14,248,22,178,14,248,22,98,23,203,2,
248,80,159,44,8,26,39,23,203,2,12,86,94,28,28,248,22,149,14,23,194,
8,27,39,248,22,184,14,249,22,182,14,248,22,186,14,248,22,98,23,203,2,
248,80,159,44,8,26,39,23,203,2,12,86,94,28,28,248,22,157,14,23,194,
2,10,248,22,156,8,23,194,2,86,94,23,199,1,12,28,23,199,2,250,22,
176,9,67,114,101,113,117,105,114,101,249,22,179,7,6,17,17,98,97,100,32,
109,111,100,117,108,101,32,112,97,116,104,126,97,28,23,198,2,248,22,74,23,
199,2,6,0,0,23,202,1,86,94,23,199,1,250,22,177,9,2,21,249,22,
179,7,6,13,13,109,111,100,117,108,101,32,112,97,116,104,126,97,28,23,198,
2,248,22,74,23,199,2,6,0,0,23,200,2,27,28,248,22,156,8,23,195,
2,249,22,161,8,23,196,2,36,249,22,176,14,248,22,177,14,23,197,2,11,
2,249,22,161,8,23,196,2,36,249,22,184,14,248,22,185,14,23,197,2,11,
27,28,248,22,156,8,23,196,2,249,22,161,8,23,197,2,37,248,80,159,42,
58,39,23,195,2,90,159,39,11,89,161,39,36,11,28,248,22,156,8,23,199,
2,250,22,7,2,31,249,22,161,8,23,203,2,38,2,31,248,22,170,14,23,
2,250,22,7,2,31,249,22,161,8,23,203,2,38,2,31,248,22,178,14,23,
198,2,86,95,23,195,1,23,193,1,27,28,248,22,156,8,23,200,2,249,22,
161,8,23,201,2,39,249,80,159,47,56,39,23,197,2,5,0,27,28,248,22,
156,8,23,201,2,249,22,161,8,23,202,2,40,248,22,137,5,23,200,2,27,
27,250,22,153,2,80,159,51,43,38,248,22,162,15,247,22,191,12,11,28,23,
27,250,22,153,2,80,159,51,43,38,248,22,170,15,247,22,135,13,11,28,23,
193,2,192,86,94,23,193,1,27,247,22,133,2,86,94,250,22,151,2,80,159,
52,43,38,248,22,162,15,247,22,191,12,195,192,86,95,28,23,208,1,27,250,
52,43,38,248,22,170,15,247,22,135,13,195,192,86,95,28,23,208,1,27,250,
22,153,2,23,197,2,197,11,28,23,193,1,12,86,94,27,27,28,248,22,17,
80,159,51,49,38,80,159,50,49,38,247,22,19,251,22,27,11,80,159,54,48,
38,9,23,197,1,27,248,22,162,15,247,22,191,12,86,94,249,22,3,20,20,
38,9,23,197,1,27,248,22,170,15,247,22,135,13,86,94,249,22,3,20,20,
94,88,163,8,36,37,55,11,9,226,12,11,2,3,33,59,23,195,1,23,196,
2,248,28,248,22,17,80,159,52,49,38,32,0,88,163,36,37,42,11,9,222,
33,60,80,159,51,8,29,39,20,20,94,88,163,36,36,52,8,176,64,9,228,
@ -874,14 +874,14 @@
22,58,23,206,2,10,28,248,22,71,23,206,2,249,22,141,9,248,22,74,23,
208,2,2,30,11,27,28,248,22,131,7,23,207,2,249,22,73,23,208,1,248,
80,159,51,8,26,39,23,210,1,86,94,23,207,1,249,22,73,23,208,1,247,
22,191,14,27,249,22,183,3,248,22,179,3,248,22,166,2,23,198,2,8,128,
22,135,15,27,249,22,183,3,248,22,179,3,248,22,166,2,23,198,2,8,128,
8,27,249,22,161,8,80,159,52,45,38,23,196,2,27,28,23,194,2,248,22,
169,2,23,195,1,86,94,23,194,1,11,250,22,162,8,80,159,54,45,38,23,
198,1,248,22,168,2,249,22,73,249,22,73,23,204,1,252,22,158,8,23,217,
1,23,216,1,23,214,1,23,212,1,23,18,28,23,199,2,23,199,1,86,94,
23,199,1,9,12,193,86,96,20,18,159,11,80,158,36,53,248,80,159,37,8,
25,37,249,22,27,11,80,159,39,55,37,248,22,179,4,80,159,37,54,38,248,
22,159,5,80,159,37,37,39,248,22,182,13,80,159,37,42,39,20,18,159,11,
22,159,5,80,159,37,37,39,248,22,190,13,80,159,37,42,39,20,18,159,11,
80,158,36,53,248,80,159,37,8,25,37,249,22,27,11,80,159,39,55,37,159,
36,20,112,159,36,16,1,11,16,0,20,26,141,2,1,2,1,29,11,11,11,
11,11,10,38,80,158,36,36,20,112,159,40,16,26,2,2,2,3,30,2,5,
@ -927,7 +927,7 @@
EVAL_ONE_SIZED_STR((char *)expr, 6253);
}
{
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,48,0,0,0,0,0,0,0,0,0,0,
SHARED_OK static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,8,53,46,49,46,51,46,49,49,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,11,0,0,0,1,0,0,10,0,16,0,
29,0,44,0,58,0,78,0,90,0,104,0,118,0,170,0,0,0,94,1,0,
0,69,35,37,98,117,105,108,116,105,110,65,113,117,111,116,101,29,94,2,2,
@ -935,7 +935,7 @@
114,107,11,29,94,2,2,68,35,37,112,97,114,97,109,122,11,29,94,2,2,
74,35,37,112,108,97,99,101,45,115,116,114,117,99,116,11,29,94,2,2,66,
35,37,98,111,111,116,11,29,94,2,2,68,35,37,101,120,112,111,98,115,11,
29,94,2,2,68,35,37,107,101,114,110,101,108,11,97,36,11,8,240,11,78,
29,94,2,2,68,35,37,107,101,114,110,101,108,11,97,36,11,8,240,13,78,
0,0,100,159,2,3,36,36,159,2,4,36,36,159,2,5,36,36,159,2,6,
36,36,159,2,7,36,36,159,2,8,36,36,159,2,9,36,36,159,2,9,36,
36,16,0,159,36,20,112,159,36,16,1,11,16,0,20,26,141,2,1,2,1,

View File

@ -1619,7 +1619,8 @@ static void do_wrong_syntax(const char *where,
Scheme_Object *detail_form,
Scheme_Object *form,
char *s, intptr_t slen,
Scheme_Object *extra_sources)
Scheme_Object *extra_sources,
int exn_kind)
{
intptr_t len, vlen, dvlen, blen, plen;
char *buffer;
@ -1775,7 +1776,7 @@ static void do_wrong_syntax(const char *where,
form = scheme_make_pair(form, extra_sources);
}
scheme_raise_exn(MZEXN_FAIL_SYNTAX,
scheme_raise_exn(exn_kind,
form,
"%t", buffer, blen);
}
@ -1799,7 +1800,23 @@ void scheme_wrong_syntax(const char *where,
HIDE_FROM_XFORM(va_end(args));
}
do_wrong_syntax(where, detail_form, form, s, slen, scheme_null);
do_wrong_syntax(where, detail_form, form, s, slen, scheme_null, MZEXN_FAIL_SYNTAX);
}
void scheme_unbound_syntax(const char *where,
Scheme_Object *detail_form,
Scheme_Object *form,
const char *detail, ...)
{
char *s;
intptr_t slen;
GC_CAN_IGNORE va_list args;
HIDE_FROM_XFORM(va_start(args, detail));
slen = sch_vsprintf(NULL, 0, detail, args, &s);
HIDE_FROM_XFORM(va_end(args));
do_wrong_syntax(where, detail_form, form, s, slen, scheme_null, MZEXN_FAIL_SYNTAX_UNBOUND);
}
void scheme_wrong_syntax_with_more_sources(const char *where,
@ -1822,7 +1839,7 @@ void scheme_wrong_syntax_with_more_sources(const char *where,
HIDE_FROM_XFORM(va_end(args));
}
do_wrong_syntax(where, detail_form, form, s, slen, extra_sources);
do_wrong_syntax(where, detail_form, form, s, slen, extra_sources, MZEXN_FAIL_SYNTAX);
}
void scheme_wrong_rator(Scheme_Object *rator, int argc, Scheme_Object **argv)

View File

@ -8224,12 +8224,13 @@ static Scheme_Object *seconds_to_date(int argc, Scheme_Object **argv)
# endif
#endif
CHECK_TIME_T now;
Scheme_Object *p[10], *secs;
char *tzn;
Scheme_Object *p[12], *secs, *nsecs, *zname;
secs = argv[0];
if (!SCHEME_INTP(secs) && !SCHEME_BIGNUMP(secs)) {
scheme_wrong_type("seconds->date", "exact integer", 0, argc, argv);
if (!SCHEME_REALP(secs)) {
scheme_wrong_type("seconds->date", "real", 0, argc, argv);
return NULL;
}
@ -8238,6 +8239,22 @@ static Scheme_Object *seconds_to_date(int argc, Scheme_Object **argv)
else
get_gmt = 0;
if (SCHEME_INTP(secs) || SCHEME_BIGNUMP(secs)) {
nsecs = scheme_make_integer(0);
} else {
nsecs = secs;
p[0] = secs;
secs = scheme_floor(1, p);
nsecs = scheme_bin_minus(nsecs, secs);
nsecs = scheme_bin_mult(nsecs, scheme_make_integer(1000000000));
p[0] = nsecs;
nsecs = scheme_floor(1, p);
p[0] = nsecs;
nsecs = scheme_inexact_to_exact(1, p);
p[0] = secs;
secs = scheme_inexact_to_exact(1, p);
}
if (scheme_get_time_val(secs, &lnow)
&& ((UNBUNDLE_TIME_TYPE)(now = (CHECK_TIME_T)lnow)) == lnow) {
int success;
@ -8359,10 +8376,23 @@ static Scheme_Object *seconds_to_date(int argc, Scheme_Object **argv)
# ifdef USE_TM_GMTOFF_FIELD
tzoffset = localTime->tm_gmtoff;
# endif
}
# ifdef USE_TZNAME_VAR
tzn = MSC_IZE(tzname)[localTime->tm_isdst];
# elif defined(USE_TM_ZONE_FIELD)
tzn = localTime->tm_zone;
# else
tzn = NULL;
# endif
} else
tzn = "UTC";
#endif
if (!tzn)
tzn = "?";
zname = scheme_make_utf8_string(tzn);
SCHEME_SET_IMMUTABLE(zname);
p[0] = scheme_make_integer(sec);
p[1] = scheme_make_integer(min);
p[2] = scheme_make_integer(hour);
@ -8373,8 +8403,10 @@ static Scheme_Object *seconds_to_date(int argc, Scheme_Object **argv)
p[7] = scheme_make_integer(yday);
p[8] = dst ? scheme_true : scheme_false;
p[9] = scheme_make_integer(tzoffset);
p[10] = nsecs;
p[11] = zname;
return scheme_make_struct_instance(scheme_date, 10, p);
return scheme_make_struct_instance(scheme_date, 12, p);
}
}

View File

@ -7,7 +7,8 @@ else
fi
|#
#lang at-exp scheme
#lang at-exp racket/base
(require racket/pretty)
(provide main)
(define (main [arg #f] [filename #f])
@ -41,11 +42,13 @@ propeties (the latter in curly braces), strings are contracts/comments.
(continuation [] "attempt to cross a continuation barrier")
(variable [variable_field_check
(id "symbol" "the variable's identifier")]
"unbound/not-yet-defined global or module variable"))
"not-yet-defined global or module variable"))
(syntax [syntax_field_check
(exprs "immutable list of syntax objects" "illegal expression(s)")
{exn:source scheme_source_property |scheme_make_prim(extract_syntax_locations)|}]
"syntax error, but not a \\scmfirst{read} error")
"syntax error, but not a \\scmfirst{read} error"
(unbound []
"unbound module variable"))
(read [read_field_check
(srclocs "immutable list of \\scmk{srcloc}s (see \\SecRef{linecol})" "source location(s) of error")
{exn:source scheme_source_property |scheme_make_prim(extract_read_locations)|}]
@ -238,6 +241,9 @@ Not an exception in the above sense:
'((arity-at-least (arity-at-least-value) #t)
(date (date-time-zone-offset date-dst? date-year-day date-week-day date-year
date-month date-day date-hour date-minute date-second) #t)
(date* (date*-time-zone-name date*-nanosecond
date-time-zone-offset date-dst? date-year-day date-week-day date-year
date-month date-day date-hour date-minute date-second) #t)
(srcloc (srcloc-span srcloc-position srcloc-column srcloc-line srcloc-source) #t))))
(with-output-to-file filename #:exists 'replace
@ -245,7 +251,7 @@ Not an exception in the above sense:
(printf ";; This file was generated by makeexn\n")
(printf ";;----------------------------------------------------------------------\n")
(printf ";; record for static info produced by structs defined in c\n")
(pretty-print (append preamble exceptions structs)))))
(pretty-write (append preamble exceptions structs)))))
(define (print-header)
@(compose output list){

View File

@ -77,7 +77,6 @@ static Scheme_Object *bitwise_bit_field (int argc, Scheme_Object *argv[]);
static Scheme_Object *integer_length (int argc, Scheme_Object *argv[]);
static Scheme_Object *gcd (int argc, Scheme_Object *argv[]);
static Scheme_Object *lcm (int argc, Scheme_Object *argv[]);
static Scheme_Object *floor_prim (int argc, Scheme_Object *argv[]);
static Scheme_Object *ceiling (int argc, Scheme_Object *argv[]);
static Scheme_Object *sch_truncate (int argc, Scheme_Object *argv[]);
static Scheme_Object *sch_round (int argc, Scheme_Object *argv[]);
@ -452,7 +451,7 @@ scheme_init_number (Scheme_Env *env)
0, -1, 1),
env);
scheme_add_global_constant("floor",
scheme_make_folding_prim(floor_prim,
scheme_make_folding_prim(scheme_floor,
"floor",
1, 1, 1),
env);
@ -1626,8 +1625,8 @@ bin_lcm (Scheme_Object *n1, Scheme_Object *n2)
return scheme_abs(1, &ret);
}
static Scheme_Object *
floor_prim (int argc, Scheme_Object *argv[])
Scheme_Object *
scheme_floor (int argc, Scheme_Object *argv[])
{
Scheme_Object *o = argv[0];
Scheme_Type t;
@ -2402,10 +2401,10 @@ Scheme_Object *do_int_sqrt (const char *name, int argc, Scheme_Object *argv[], i
v = scheme_sqrt(1, &v);
if (SCHEME_COMPLEXP(v)) {
v = scheme_complex_imaginary_part(v);
v = floor_prim(1, &v);
v = scheme_floor(1, &v);
v = scheme_make_complex(scheme_make_integer(0), v);
} else
v = floor_prim(1, &v);
v = scheme_floor(1, &v);
if (w_rem) {
rem = scheme_bin_minus(rem, scheme_bin_mult(v, v));

View File

@ -11,6 +11,7 @@ enum {
MZEXN_FAIL_CONTRACT_CONTINUATION,
MZEXN_FAIL_CONTRACT_VARIABLE,
MZEXN_FAIL_SYNTAX,
MZEXN_FAIL_SYNTAX_UNBOUND,
MZEXN_FAIL_READ,
MZEXN_FAIL_READ_EOF,
MZEXN_FAIL_READ_NON_CHAR,
@ -31,7 +32,7 @@ enum {
#define MZEXN_MAXARGS 3
#ifdef GLOBAL_EXN_ARRAY
READ_ONLY static exn_rec exn_table[] = {
static exn_rec exn_table[] = {
{ 2, NULL, NULL, 0, NULL, -1 },
{ 2, NULL, NULL, 0, NULL, 0 },
{ 2, NULL, NULL, 0, NULL, 1 },
@ -41,12 +42,13 @@ READ_ONLY static exn_rec exn_table[] = {
{ 2, NULL, NULL, 0, NULL, 2 },
{ 3, NULL, NULL, 0, NULL, 2 },
{ 3, NULL, NULL, 0, NULL, 1 },
{ 3, NULL, NULL, 0, NULL, 8 },
{ 3, NULL, NULL, 0, NULL, 1 },
{ 3, NULL, NULL, 0, NULL, 9 },
{ 3, NULL, NULL, 0, NULL, 9 },
{ 3, NULL, NULL, 0, NULL, 10 },
{ 3, NULL, NULL, 0, NULL, 10 },
{ 2, NULL, NULL, 0, NULL, 1 },
{ 2, NULL, NULL, 0, NULL, 12 },
{ 2, NULL, NULL, 0, NULL, 12 },
{ 2, NULL, NULL, 0, NULL, 13 },
{ 2, NULL, NULL, 0, NULL, 13 },
{ 2, NULL, NULL, 0, NULL, 1 },
{ 2, NULL, NULL, 0, NULL, 1 },
{ 2, NULL, NULL, 0, NULL, 1 },
@ -54,7 +56,7 @@ READ_ONLY static exn_rec exn_table[] = {
{ 3, NULL, NULL, 0, NULL, 0 }
};
#else
READ_ONLY static exn_rec *exn_table;
static exn_rec *exn_table;
#endif
#endif
@ -72,6 +74,7 @@ READ_ONLY static exn_rec *exn_table;
exn_table[MZEXN_FAIL_CONTRACT_CONTINUATION].args = 2;
exn_table[MZEXN_FAIL_CONTRACT_VARIABLE].args = 3;
exn_table[MZEXN_FAIL_SYNTAX].args = 3;
exn_table[MZEXN_FAIL_SYNTAX_UNBOUND].args = 3;
exn_table[MZEXN_FAIL_READ].args = 3;
exn_table[MZEXN_FAIL_READ_EOF].args = 3;
exn_table[MZEXN_FAIL_READ_NON_CHAR].args = 3;
@ -88,11 +91,11 @@ READ_ONLY static exn_rec *exn_table;
#endif
#ifdef _MZEXN_DECL_FIELDS
READ_ONLY static const char *MZEXN_FIELDS[2] = { "message", "continuation-marks" };
READ_ONLY static const char *MZEXN_FAIL_CONTRACT_VARIABLE_FIELDS[1] = { "id" };
READ_ONLY static const char *MZEXN_FAIL_SYNTAX_FIELDS[1] = { "exprs" };
READ_ONLY static const char *MZEXN_FAIL_READ_FIELDS[1] = { "srclocs" };
READ_ONLY static const char *MZEXN_BREAK_FIELDS[1] = { "continuation" };
static const char *MZEXN_FIELDS[2] = { "message", "continuation-marks" };
static const char *MZEXN_FAIL_CONTRACT_VARIABLE_FIELDS[1] = { "id" };
static const char *MZEXN_FAIL_SYNTAX_FIELDS[1] = { "exprs" };
static const char *MZEXN_FAIL_READ_FIELDS[1] = { "srclocs" };
static const char *MZEXN_BREAK_FIELDS[1] = { "continuation" };
#endif
#ifdef _MZEXN_DECL_PROPS
@ -110,6 +113,7 @@ READ_ONLY static exn_rec *exn_table;
SETUP_STRUCT(MZEXN_FAIL_CONTRACT_CONTINUATION, EXN_PARENT(MZEXN_FAIL_CONTRACT), "exn:fail:contract:continuation", 0, NULL, scheme_null, NULL)
SETUP_STRUCT(MZEXN_FAIL_CONTRACT_VARIABLE, EXN_PARENT(MZEXN_FAIL_CONTRACT), "exn:fail:contract:variable", 1, MZEXN_FAIL_CONTRACT_VARIABLE_FIELDS, scheme_null, scheme_make_prim(variable_field_check))
SETUP_STRUCT(MZEXN_FAIL_SYNTAX, EXN_PARENT(MZEXN_FAIL), "exn:fail:syntax", 1, MZEXN_FAIL_SYNTAX_FIELDS, MZEXN_FAIL_SYNTAX_PROPS, scheme_make_prim(syntax_field_check))
SETUP_STRUCT(MZEXN_FAIL_SYNTAX_UNBOUND, EXN_PARENT(MZEXN_FAIL_SYNTAX), "exn:fail:syntax:unbound", 0, NULL, scheme_null, NULL)
SETUP_STRUCT(MZEXN_FAIL_READ, EXN_PARENT(MZEXN_FAIL), "exn:fail:read", 1, MZEXN_FAIL_READ_FIELDS, MZEXN_FAIL_READ_PROPS, scheme_make_prim(read_field_check))
SETUP_STRUCT(MZEXN_FAIL_READ_EOF, EXN_PARENT(MZEXN_FAIL_READ), "exn:fail:read:eof", 0, NULL, scheme_null, NULL)
SETUP_STRUCT(MZEXN_FAIL_READ_NON_CHAR, EXN_PARENT(MZEXN_FAIL_READ), "exn:fail:read:non-char", 0, NULL, scheme_null, NULL)

View File

@ -13,7 +13,7 @@
#define USE_COMPILED_STARTUP 1
#define EXPECTED_PRIM_COUNT 1035
#define EXPECTED_PRIM_COUNT 1043
#define EXPECTED_UNSAFE_COUNT 78
#define EXPECTED_FLFXNUM_COUNT 68
#define EXPECTED_FUTURES_COUNT 11

View File

@ -1995,6 +1995,8 @@ Scheme_Object *scheme_bitwise_and(int argc, Scheme_Object *argv[]);
int scheme_exact_p(Scheme_Object *n);
int scheme_nonneg_exact_p(Scheme_Object *n);
Scheme_Object *scheme_floor(int argc, Scheme_Object *argv[]);
#ifdef TIME_TYPE_IS_UNSIGNED
# define scheme_make_integer_value_from_time(t) scheme_make_integer_value_from_unsigned((uintptr_t)t)
# define scheme_get_time_val(o, v) scheme_get_unsigned_int_val(o, v)
@ -3218,6 +3220,10 @@ void scheme_wrong_syntax(const char *where,
Scheme_Object *local_form,
Scheme_Object *form,
const char *detail, ...);
void scheme_unbound_syntax(const char *where,
Scheme_Object *local_form,
Scheme_Object *form,
const char *detail, ...);
void scheme_wrong_syntax_with_more_sources(const char *where,
Scheme_Object *detail_form,
Scheme_Object *form,

View File

@ -13,12 +13,12 @@
consistently.)
*/
#define MZSCHEME_VERSION "5.1.3.10"
#define MZSCHEME_VERSION "5.1.3.11"
#define MZSCHEME_VERSION_X 5
#define MZSCHEME_VERSION_Y 1
#define MZSCHEME_VERSION_Z 3
#define MZSCHEME_VERSION_W 10
#define MZSCHEME_VERSION_W 11
#define MZSCHEME_VERSION_MAJOR ((MZSCHEME_VERSION_X * 100) + MZSCHEME_VERSION_Y)
#define MZSCHEME_VERSION_MINOR ((MZSCHEME_VERSION_Z * 1000) + MZSCHEME_VERSION_W)

View File

@ -158,6 +158,7 @@ Scheme_Object *special_comment_p(int argc, Scheme_Object **argv);
static Scheme_Object *check_arity_at_least_fields(int argc, Scheme_Object **argv);
static Scheme_Object *check_date_fields(int argc, Scheme_Object **argv);
static Scheme_Object *check_date_star_fields(int argc, Scheme_Object **argv);
static Scheme_Object *check_location_fields(int argc, Scheme_Object **argv);
static Scheme_Object *check_exn_source_property_value_ok(int argc, Scheme_Object *argv[]);
@ -227,6 +228,7 @@ scheme_init_struct (Scheme_Env *env)
READ_ONLY static const char *date_fields[10] = { "second", "minute", "hour",
"day", "month", "year",
"week-day", "year-day", "dst?", "time-zone-offset" };
READ_ONLY static const char *date_star_fields[2] = { "nanosecond", "time-zone-name" };
#endif
READ_ONLY static const char *location_fields[10] = { "source", "line", "column", "position", "span" };
@ -268,6 +270,22 @@ scheme_init_struct (Scheme_Env *env)
env);
}
scheme_date = scheme_make_struct_type_from_string("date*", scheme_date, 2, NULL,
scheme_make_prim(check_date_star_fields), 1);
ts_names = scheme_make_struct_names_from_array("date*",
2, date_star_fields,
BUILTIN_STRUCT_FLAGS, &ts_count);
ts_values = scheme_make_struct_values(scheme_date, ts_names, ts_count,
BUILTIN_STRUCT_FLAGS);
for (i = 0; i < ts_count - 1; i++) {
scheme_add_global_constant(scheme_symbol_val(ts_names[i]), ts_values[i],
env);
}
#endif
/* Add location structure: */
@ -5015,39 +5033,64 @@ static Scheme_Object *check_date_fields(int argc, Scheme_Object **argv)
a = argv[0];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 0) || (SCHEME_INT_VAL(a) > 61))
scheme_wrong_field_type(argv[10], "integer in [0, 61]", a);
scheme_wrong_field_type(argv[10], "exact integer in [0, 61]", a);
a = argv[1];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 0) || (SCHEME_INT_VAL(a) > 59))
scheme_wrong_field_type(argv[10], "integer in [0, 59]", a);
scheme_wrong_field_type(argv[10], "exact integer in [0, 59]", a);
a = argv[2];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 0) || (SCHEME_INT_VAL(a) > 23))
scheme_wrong_field_type(argv[10], "integer in [0, 23]", a);
scheme_wrong_field_type(argv[10], "exact integer in [0, 23]", a);
a = argv[3];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 1) || (SCHEME_INT_VAL(a) > 31))
scheme_wrong_field_type(argv[10], "integer in [1, 31]", a);
scheme_wrong_field_type(argv[10], "exact integer in [1, 31]", a);
a = argv[4];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 1) || (SCHEME_INT_VAL(a) > 12))
scheme_wrong_field_type(argv[10], "integer in [1, 12]", a);
scheme_wrong_field_type(argv[10], "exact integer in [1, 12]", a);
a = argv[5];
if (!SCHEME_INTP(a) && !SCHEME_BIGNUMP(a))
scheme_wrong_field_type(argv[10], "exact integer", a);
a = argv[6];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 0) || (SCHEME_INT_VAL(a) > 6))
scheme_wrong_field_type(argv[10], "integer in [0, 6]", a);
scheme_wrong_field_type(argv[10], "exact integer in [0, 6]", a);
a = argv[7];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 0) || (SCHEME_INT_VAL(a) > 365))
scheme_wrong_field_type(argv[10], "integer in [0, 365]", a);
scheme_wrong_field_type(argv[10], "exact integer in [0, 365]", a);
a = argv[9];
if (!SCHEME_INTP(a) && !SCHEME_BIGNUMP(a))
scheme_wrong_field_type(argv[10], "exact integer", a);
/* Normalize dst? boolean: */
/* Normalize dst? boolean: */
memcpy(args, argv, sizeof(Scheme_Object *) * 10);
args[8] = (SCHEME_TRUEP(argv[8]) ? scheme_true : scheme_false);
return scheme_values(10, args);
}
static Scheme_Object *check_date_star_fields(int argc, Scheme_Object **argv)
{
Scheme_Object *args[12], *a;
a = argv[10];
if (!SCHEME_INTP(a) || (SCHEME_INT_VAL(a) < 0)
|| (SCHEME_INT_VAL(a) > 999999999))
scheme_wrong_field_type(argv[12], "exact integer in [0, 999999999]", a);
a = argv[11];
if (!SCHEME_CHAR_STRINGP(a))
scheme_wrong_field_type(argv[12], "string", a);
memcpy(args, argv, sizeof(Scheme_Object *) * 12);
if (!SCHEME_IMMUTABLEP(argv[11])) {
a = argv[11];
a = scheme_make_immutable_sized_char_string(SCHEME_CHAR_STR_VAL(a),
SCHEME_CHAR_STRLEN_VAL(a),
1);
args[11] = a;
}
return scheme_values(12, args);
}
/*========================================================================*/
/* special-comment struct */
/*========================================================================*/