diff --git a/collects/compiler/distribute.ss b/collects/compiler/distribute.ss index 95d9554694..43275c9be6 100644 --- a/collects/compiler/distribute.ss +++ b/collects/compiler/distribute.ss @@ -109,7 +109,7 @@ [sub-dir (build-path 'up relative-dir)] [(and (eq? 'macosx (system-type)) - (memq type '(mred mredx)) + (memq type '(mredcgc mred3m)) (not single-mac-app?)) (build-path 'up 'up 'up relative-dir)] [else @@ -126,6 +126,11 @@ exts-dir relative-exts-dir relative->binary-relative) + ;; Copy over runtime files and adjust embedded paths: + (copy-runtime-files-and-patch-binaries orig-binaries binaries types sub-dirs + exts-dir + relative-exts-dir + relative->binary-relative) ;; Done! (void))))) @@ -355,27 +360,30 @@ (flush-output o))) 'update))))) - (define (copy-extensions-and-patch-binaries orig-binaries binaries types sub-dirs - exts-dir relative-exts-dir - relative->binary-relative) + (define (copy-and-patch-binaries copy? magic + extract-src construct-dest transform-entry + init-counter inc-counter + orig-binaries binaries types sub-dirs + exts-dir relative-exts-dir + relative->binary-relative) (let loop ([orig-binaries orig-binaries] [binaries binaries] [types types] [sub-dirs sub-dirs] - [counter 0]) + [counter init-counter]) (unless (null? binaries) (let-values ([(exts start-pos end-pos) (with-input-from-file (car binaries) (lambda () (let* ([i (current-input-port)] - [m (regexp-match-positions #rx#"eXtEnSiOn-modules" i)]) + [m (regexp-match-positions magic i)]) (if m - ;; Read extension table: + ;; Read table: (begin (file-position i (cdar m)) (let ([l (read i)]) (values (cadr l) (cdar m) (file-position i)))) - ;; No extension table: + ;; No table: (values null #f #f)))))]) (if (null? exts) (loop (cdr orig-binaries) (cdr binaries) (cdr types) (cdr sub-dirs) counter) @@ -385,52 +393,152 @@ (let loop ([exts exts][counter counter]) (if (null? exts) (values null counter) - (let* ([src (path->complete-path - (bytes->path (caar exts)) - (let-values ([(base name dir?) - (split-path (path->complete-path (car orig-binaries) - (current-directory)))]) - base))] - [name (let-values ([(base name dir?) (split-path src)]) - name)] + (let* ([src (extract-src (car exts) (car orig-binaries))] + [dest (construct-dest src)] [sub (format "e~a" counter)]) - ; Make dest dir and copy - (make-directory* (build-path exts-dir sub)) - (let ([f (build-path exts-dir sub name)]) - (when (file-exists? f) - (delete-file f)) - (copy-file src f)) + (when (and src copy?) + ; Make dest and copy + (make-directory* (build-path exts-dir sub (or (path-only dest) 'same))) + (let ([f (build-path exts-dir sub dest)]) + (when (or (file-exists? f) + (directory-exists? f) + (link-exists? f)) + (delete-directory/files f)) + (copy-directory/files src f))) ;; Generate the new extension entry for the table, and combine with ;; recur result for the rest: (let-values ([(rest-exts counter) - (loop (cdr exts) (add1 counter))]) - (values (cons (list (path->bytes - (relative->binary-relative (car types) - (car sub-dirs) - (build-path relative-exts-dir sub name))) - (cadr (car exts))) - rest-exts) + (loop (cdr exts) (inc-counter counter))]) + (values (if src + (cons (transform-entry + (path->bytes + (relative->binary-relative (car sub-dirs) + (car types) + (build-path relative-exts-dir sub dest))) + (car exts)) + rest-exts) + (cons (car exts) + rest-exts)) counter)))))]) - ;; Update the binary with the new paths - (let* ([str (string->bytes/utf-8 (format "~s" new-exts))] - [extra-space 7] ; = "(quote" plus ")" - [delta (- (- end-pos start-pos) (bytes-length str) extra-space)]) - (when (negative? delta) - (error 'copy-extensions-and-patch-binaries - "not enough room in executable for revised extension table")) - (with-output-to-file (car binaries) - (lambda () - (let ([o (current-output-port)]) - (file-position o start-pos) - (write-bytes #"(quote" o) - (write-bytes str o) - ;; Add space before final closing paren. This preserves space in case the - ;; genereated binary is input for a future distribution build. - (write-bytes (make-bytes delta (char->integer #\space)) o) - (write-bytes #")" o))) - 'update)) + (when copy? + ;; Update the binary with the new paths + (let* ([str (string->bytes/utf-8 (format "~s" new-exts))] + [extra-space 7] ; = "(quote" plus ")" + [delta (- (- end-pos start-pos) (bytes-length str) extra-space)]) + (when (negative? delta) + (error 'copy-and-patch-binaries + "not enough room in executable for revised ~s table" + magic)) + (with-output-to-file (car binaries) + (lambda () + (let ([o (current-output-port)]) + (file-position o start-pos) + (write-bytes #"(quote" o) + (write-bytes str o) + ;; Add space before final closing paren. This preserves space in case the + ;; genereated binary is input for a future distribution build. + (write-bytes (make-bytes delta (char->integer #\space)) o) + (write-bytes #")" o))) + 'update))) (loop (cdr orig-binaries) (cdr binaries) (cdr types) (cdr sub-dirs) counter))))))) + (define (copy-extensions-and-patch-binaries orig-binaries binaries types sub-dirs + exts-dir relative-exts-dir + relative->binary-relative) + (copy-and-patch-binaries #t #rx#"eXtEnSiOn-modules" + ;; extract-src: + (lambda (ext orig-binary) + (path->complete-path + (bytes->path (car ext)) + (let-values ([(base name dir?) + (split-path (path->complete-path orig-binary + (current-directory)))]) + base))) + ;; construct-dest: + (lambda (src) + (let-values ([(base name dir?) (split-path src)]) + name)) + ;; transform-entry + (lambda (new-path ext) + (list new-path (cadr ext))) + 0 add1 ; <- counter + orig-binaries binaries types sub-dirs + exts-dir relative-exts-dir + relative->binary-relative)) + + (define (copy-runtime-files-and-patch-binaries orig-binaries binaries types sub-dirs + exts-dir relative-exts-dir + relative->binary-relative) + (let ([paths null]) + ;; Pass 1: collect all the paths + (copy-and-patch-binaries #f #rx#"rUnTiMe-paths" + ;; extract-src: + (lambda (rt orig-binary) + (and (cadr rt) + (bytes->path (cadr rt)))) + ;; construct-dest: + (lambda (src) + (when src + (set! paths (cons src paths))) + "dummy") + ;; transform-entry + (lambda (new-path ext) ext) + "rt" values ; <- counter + orig-binaries binaries types sub-dirs + exts-dir relative-exts-dir + relative->binary-relative) + (unless (null? paths) + ;; Determine the shared path prefix: + (let* ([root-table (make-hash-table 'equal)] + [root->path-element (lambda (root) + (hash-table-get root-table + root + (lambda () + (let ([v (format "r~a" (hash-table-count root-table))]) + (hash-table-put! root-table root v) + v))))] + [explode (lambda (src) + (reverse + (let loop ([src src]) + (let-values ([(base name dir?) (split-path src)]) + (if base + (cons name (loop base)) + (list (root->path-element name)))))))] + ;; In reverse order, so we can pick off the paths + ;; in the second pass: + [exploded (reverse (map explode paths))] + [max-len (apply max 0 (map length exploded))] + [common-len (let loop ([cnt 0]) + (cond + [((add1 cnt) . = . max-len) cnt] + [(andmap (let ([i (list-ref (car exploded) cnt)]) + (lambda (e) + (equal? (list-ref e cnt) i))) + exploded) + (loop (add1 cnt))] + [else cnt]))]) + + + ;; Pass 2: change all the paths + (copy-and-patch-binaries #t #rx#"rUnTiMe-paths" + ;; extract-src: + (lambda (rt orig-binary) + (and (cadr rt) + (bytes->path (cadr rt)))) + ;; construct-dest: + (lambda (src) + (and src + (begin0 + (apply build-path (list-tail (car exploded) common-len)) + (set! exploded (cdr exploded))))) + ;; transform-entry + (lambda (new-path ext) + (cons (car ext) (list new-path))) + "rt" values ; <- counter + orig-binaries binaries types sub-dirs + exts-dir relative-exts-dir + relative->binary-relative))))) + ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Utilities @@ -503,7 +611,7 @@ (link-exists? dest)) (delete-directory/files dest)) (copy-directory/files src dest)) - + (define (app-to-file b) (if (and (eq? 'macosx (system-type)) (regexp-match #rx#"[.][aA][pP][pP]$" diff --git a/collects/compiler/embed-unit.ss b/collects/compiler/embed-unit.ss index 4fff4b84f2..641ffa4014 100644 --- a/collects/compiler/embed-unit.ss +++ b/collects/compiler/embed-unit.ss @@ -17,341 +17,344 @@ "private/mach-o.ss" "private/windlldir.ss" "private/collects-path.ss") - + (provide compiler:embed@) - + (define-unit compiler:embed@ - (import) - (export compiler:embed^) - - (define (embedding-executable-is-directory? mred?) - #f) - - (define (embedding-executable-is-actually-directory? mred?) - (and mred? (eq? 'macosx (system-type)))) - - (define (embedding-executable-put-file-extension+style+filters mred?) - (case (system-type) - [(windows) (values "exe" null '(("Executable" "*.exe")))] - [(macosx) (if mred? - (values "app" '(enter-packages) '(("App" "*.app"))) - (values #f null null))] - [else (values #f null null)])) - - (define (embedding-executable-add-suffix path mred?) - (let* ([path (if (string? path) - (string->path path) - path)] - [fixup (lambda (re sfx) - (if (regexp-match re (path->bytes path)) - path - (path-replace-suffix path sfx)))]) - (case (system-type) - [(windows) (fixup #rx#"[.][eE][xX][eE]$" #".exe")] - [(macosx) (if mred? - (fixup #rx#"[.][aA][pP][pP]$" #".app") - path)] - [else path]))) - - (define (mac-dest->executable dest mred?) - (if mred? - (let-values ([(base name dir?) (split-path dest)]) - (build-path dest - "Contents" "MacOS" - (path-replace-suffix name #""))) - dest)) - - ;; Find executable relative to the "mzlib" - ;; collection. - (define (find-exe mred? variant) - (let* ([base (if mred? - (find-gui-bin-dir) - (find-console-bin-dir))] - [fail - (lambda () - (error 'create-embedding-executable - "can't find ~a executable for variant ~a" - (if mred? "MrEd" "MzScheme") - variant))]) - (let ([exe (build-path - base - (case (system-type) - [(macosx) - (cond - [(not mred?) - ;; Need MzScheme: - (string-append "mzscheme" (variant-suffix variant #f))] - [mred? - ;; Need MrEd: - (let ([sfx (variant-suffix variant #t)]) - (build-path (format "MrEd~a.app" sfx) - "Contents" "MacOS" - (format "MrEd~a" sfx)))])] - [(windows) - (format "~a~a.exe" (if mred? - "MrEd" - "MzScheme") - (variant-suffix variant #t))] - [(unix) - (format "~a~a" (if mred? - "mred" - "mzscheme") - (variant-suffix variant #f))]))]) - (unless (or (file-exists? exe) - (directory-exists? exe)) - (fail)) - exe))) - - (define exe-suffix? - (delay (equal? #"i386-cygwin" (path->bytes (system-library-subpath))))) - - ;; Find the magic point in the binary: - (define (find-cmdline what rx) - (let ([m (regexp-match-positions rx (current-input-port))]) - (if m - (caar m) - (error - 'create-embedding-executable - (format - "can't find ~a position in executable" - what))))) - - - (define (relativize exec-name dest adjust) - (let ([p (find-relative-path - (let-values ([(dir name dir?) (split-path - (normal-case-path - (normalize-path dest)))]) - dir) - (normal-case-path (normalize-path exec-name)))]) - (if (relative-path? p) - (adjust p) - p))) - - ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (define (prepare-macosx-mred exec-name dest aux variant) - (let* ([name (let-values ([(base name dir?) (split-path dest)]) - (path-replace-suffix name #""))] - [src (build-path (collection-path "launcher") - "Starter.app")] - [creator (let ([c (assq 'creator aux)]) - (or (and c - (cdr c)) - "MrSt"))] - [file-types (let ([m (assq 'file-types aux)]) - (and m - (pair? (cdr m)) - (cdr m)))] - [resource-files (let ([m (assq 'resource-files aux)]) - (and m - (cdr m)))]) - (when creator - (unless (and (string? creator) (= 4 (string-length creator))) - (error 'make-executable "creator is not a 4-character string: ~e" creator))) - (when file-types - (unless (and (list? file-types) - (andmap list? file-types) - (andmap (lambda (spec) - (andmap (lambda (p) - (and (list? p) - (= 2 (length p)) - (string? (car p)))) - spec)) - file-types)) - (error 'make-executable "bad file-types spec: ~e" file-types))) - (when resource-files - (unless (and (list? resource-files) - (andmap path-string? - resource-files)) - (error 'make-executable "resource-files is not a list of paths: ~e" resource-files))) - - (when (or (directory-exists? dest) - (file-exists? dest) - (link-exists? dest)) - (delete-directory/files dest)) - (make-directory* (build-path dest "Contents" "Resources")) - (make-directory* (build-path dest "Contents" "MacOS")) - (copy-file exec-name (build-path dest "Contents" "MacOS" name)) - (copy-file (build-path src "Contents" "PkgInfo") - (build-path dest "Contents" "PkgInfo")) - (let ([icon (or (let ([icon (assq 'icns aux)]) - (and icon - (cdr icon))) - (build-path src "Contents" "Resources" "Starter.icns"))]) - (copy-file icon - (build-path dest "Contents" "Resources" "Starter.icns"))) - (let ([orig-plist (call-with-input-file (build-path src - "Contents" - "Info.plist") - read-plist)] - [plist-replace (lambda (plist . l) - (let loop ([plist plist][l l]) - (if (null? l) - plist - (let ([key (car l)] - [val (cadr l)]) - (loop `(dict - ,@(let loop ([c (cdr plist)]) - (cond - [(null? c) (list (list 'assoc-pair key val))] - [(string=? (cadar c) key) - (cons (list 'assoc-pair key val) - (cdr c))] - [else - (cons (car c) - (loop (cdr c)))]))) - (cddr l))))))]) - (let* ([new-plist (plist-replace - orig-plist - - "CFBundleExecutable" - (path->string name) - - "CFBundleSignature" - creator - - "CFBundleIdentifier" - (format "org.plt-scheme.~a" (path->string name)))] - [new-plist (if file-types - (plist-replace - new-plist - - "CFBundleDocumentTypes" - (cons 'array - (map (lambda (spec) - (cons - 'dict - (map (lambda (p) - (list - 'assoc-pair - (car p) - (cadr p))) - spec))) - file-types))) - - new-plist)]) - (call-with-output-file (build-path dest - "Contents" - "Info.plist") - (lambda (port) - (write-plist new-plist port)) - 'truncate))) - (call-with-output-file (build-path dest - "Contents" - "PkgInfo") - (lambda (port) - (fprintf port "APPL~a" creator)) - 'truncate) - (when resource-files - (for-each (lambda (p) - (let-values ([(base name dir?) (split-path p)]) - (copy-file p (build-path dest - "Contents" - "Resources" - name)))) - resource-files)) - (build-path dest "Contents" "MacOS" name))) - - (define (finish-osx-mred dest flags exec-name keep-exe? relative?) - (call-with-output-file (build-path dest - "Contents" - "Resources" - "starter-info") - (lambda (port) - (write-plist - `(dict ,@(if keep-exe? - `((assoc-pair "executable name" - ,(path->string - (if relative? - (relativize exec-name dest - (lambda (p) - (build-path 'up 'up 'up p))) - exec-name)))) - null) - (assoc-pair "stored arguments" - (array ,@flags))) - port)) - 'truncate)) - - ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - ;; Represent modules with lists starting with the filename, so we - ;; can use assoc: - (define (make-mod normal-file-path normal-module-path code name prefix full-name relative-mappings) - (list normal-file-path normal-module-path code - name prefix full-name relative-mappings)) - - (define (mod-file m) (car m)) - (define (mod-mod-path m) (cadr m)) - (define (mod-code m) (caddr m)) - (define (mod-name m) (list-ref m 3)) - (define (mod-prefix m) (list-ref m 4)) - (define (mod-full-name m) (list-ref m 5)) - (define (mod-mappings m) (list-ref m 6)) - - (define (generate-prefix) - (format "#%embedded:~a:" (gensym))) - - (define (normalize filename) - (simplify-path (expand-path filename))) - - (define (is-lib-path? a) - (and (pair? a) - (eq? 'lib (car a)))) - - (define (unix-style-split p) - (let ([m (regexp-match #rx"^([^/]*)/(.*)$" p)]) - (if m - (cons (cadr m) (unix-style-split (caddr m))) - (list p)))) - - (define (extract-last l) - (let loop ([l l][dirs null]) - (if (null? (cdr l)) - (values (reverse dirs) (car l)) - (loop (cdr l) (cons (car l) dirs))))) - - (define (lib-module-filename collects-dest module-path) - (let-values ([(dir file) - (extract-last - (append (apply append (map unix-style-split - (if (null? (cddr module-path)) - '("mzlib") - (cddr module-path)))) - (unix-style-split (cadr module-path))))]) - (let ([p (build-path collects-dest - (apply build-path dir) - "compiled" - (path-replace-suffix file #".zo"))]) - (let-values ([(base name dir?) (split-path p)]) - (make-directory* base) - p)))) - - (define-struct extension (path)) - - ;; Loads module code, using .zo if there, compiling from .scm if not - (define (get-code filename module-path codes prefixes verbose? collects-dest on-extension) - (when verbose? - (fprintf (current-error-port) "Getting ~s~n" filename)) - (let ([a (assoc filename (unbox codes))]) - (if a - ;; Already have this module. Make sure that library-referenced - ;; modules are consistently referenced through library paths: - (let ([found-lib? (is-lib-path? (mod-mod-path a))] - [look-lib? (is-lib-path? module-path)]) - (cond - [(and found-lib? look-lib?) - 'ok] - [(or found-lib? look-lib?) - (error 'find-module - "module referenced both as a library and through a path: ~a" - filename)] - [else 'ok])) - ;; First use of the module. Get code and then get code for imports. - (let ([code (get-module-code filename + (import) + (export compiler:embed^) + + (define (embedding-executable-is-directory? mred?) + #f) + + (define (embedding-executable-is-actually-directory? mred?) + (and mred? (eq? 'macosx (system-type)))) + + (define (embedding-executable-put-file-extension+style+filters mred?) + (case (system-type) + [(windows) (values "exe" null '(("Executable" "*.exe")))] + [(macosx) (if mred? + (values "app" '(enter-packages) '(("App" "*.app"))) + (values #f null null))] + [else (values #f null null)])) + + (define (embedding-executable-add-suffix path mred?) + (let* ([path (if (string? path) + (string->path path) + path)] + [fixup (lambda (re sfx) + (if (regexp-match re (path->bytes path)) + path + (path-replace-suffix path sfx)))]) + (case (system-type) + [(windows) (fixup #rx#"[.][eE][xX][eE]$" #".exe")] + [(macosx) (if mred? + (fixup #rx#"[.][aA][pP][pP]$" #".app") + path)] + [else path]))) + + (define (mac-dest->executable dest mred?) + (if mred? + (let-values ([(base name dir?) (split-path dest)]) + (build-path dest + "Contents" "MacOS" + (path-replace-suffix name #""))) + dest)) + + ;; Find executable relative to the "mzlib" + ;; collection. + (define (find-exe mred? variant) + (let* ([base (if mred? + (find-gui-bin-dir) + (find-console-bin-dir))] + [fail + (lambda () + (error 'create-embedding-executable + "can't find ~a executable for variant ~a" + (if mred? "MrEd" "MzScheme") + variant))]) + (let ([exe (build-path + base + (case (system-type) + [(macosx) + (cond + [(not mred?) + ;; Need MzScheme: + (string-append "mzscheme" (variant-suffix variant #f))] + [mred? + ;; Need MrEd: + (let ([sfx (variant-suffix variant #t)]) + (build-path (format "MrEd~a.app" sfx) + "Contents" "MacOS" + (format "MrEd~a" sfx)))])] + [(windows) + (format "~a~a.exe" (if mred? + "MrEd" + "MzScheme") + (variant-suffix variant #t))] + [(unix) + (format "~a~a" (if mred? + "mred" + "mzscheme") + (variant-suffix variant #f))]))]) + (unless (or (file-exists? exe) + (directory-exists? exe)) + (fail)) + exe))) + + (define exe-suffix? + (delay (equal? #"i386-cygwin" (path->bytes (system-library-subpath))))) + + ;; Find the magic point in the binary: + (define (find-cmdline what rx) + (let ([m (regexp-match-positions rx (current-input-port))]) + (if m + (caar m) + (error + 'create-embedding-executable + (format + "can't find ~a position in executable" + what))))) + + + (define (relativize exec-name dest adjust) + (let ([p (find-relative-path + (let-values ([(dir name dir?) (split-path + (normal-case-path + (normalize-path dest)))]) + dir) + (normal-case-path (normalize-path exec-name)))]) + (if (relative-path? p) + (adjust p) + p))) + + ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + + (define (prepare-macosx-mred exec-name dest aux variant) + (let* ([name (let-values ([(base name dir?) (split-path dest)]) + (path-replace-suffix name #""))] + [src (build-path (collection-path "launcher") + "Starter.app")] + [creator (let ([c (assq 'creator aux)]) + (or (and c + (cdr c)) + "MrSt"))] + [file-types (let ([m (assq 'file-types aux)]) + (and m + (pair? (cdr m)) + (cdr m)))] + [resource-files (let ([m (assq 'resource-files aux)]) + (and m + (cdr m)))]) + (when creator + (unless (and (string? creator) (= 4 (string-length creator))) + (error 'make-executable "creator is not a 4-character string: ~e" creator))) + (when file-types + (unless (and (list? file-types) + (andmap list? file-types) + (andmap (lambda (spec) + (andmap (lambda (p) + (and (list? p) + (= 2 (length p)) + (string? (car p)))) + spec)) + file-types)) + (error 'make-executable "bad file-types spec: ~e" file-types))) + (when resource-files + (unless (and (list? resource-files) + (andmap path-string? + resource-files)) + (error 'make-executable "resource-files is not a list of paths: ~e" resource-files))) + + (when (or (directory-exists? dest) + (file-exists? dest) + (link-exists? dest)) + (delete-directory/files dest)) + (make-directory* (build-path dest "Contents" "Resources")) + (make-directory* (build-path dest "Contents" "MacOS")) + (copy-file exec-name (build-path dest "Contents" "MacOS" name)) + (copy-file (build-path src "Contents" "PkgInfo") + (build-path dest "Contents" "PkgInfo")) + (let ([icon (or (let ([icon (assq 'icns aux)]) + (and icon + (cdr icon))) + (build-path src "Contents" "Resources" "Starter.icns"))]) + (copy-file icon + (build-path dest "Contents" "Resources" "Starter.icns"))) + (let ([orig-plist (call-with-input-file (build-path src + "Contents" + "Info.plist") + read-plist)] + [plist-replace (lambda (plist . l) + (let loop ([plist plist][l l]) + (if (null? l) + plist + (let ([key (car l)] + [val (cadr l)]) + (loop `(dict + ,@(let loop ([c (cdr plist)]) + (cond + [(null? c) (list (list 'assoc-pair key val))] + [(string=? (cadar c) key) + (cons (list 'assoc-pair key val) + (cdr c))] + [else + (cons (car c) + (loop (cdr c)))]))) + (cddr l))))))]) + (let* ([new-plist (plist-replace + orig-plist + + "CFBundleExecutable" + (path->string name) + + "CFBundleSignature" + creator + + "CFBundleIdentifier" + (format "org.plt-scheme.~a" (path->string name)))] + [new-plist (if file-types + (plist-replace + new-plist + + "CFBundleDocumentTypes" + (cons 'array + (map (lambda (spec) + (cons + 'dict + (map (lambda (p) + (list + 'assoc-pair + (car p) + (cadr p))) + spec))) + file-types))) + + new-plist)]) + (call-with-output-file (build-path dest + "Contents" + "Info.plist") + (lambda (port) + (write-plist new-plist port)) + 'truncate))) + (call-with-output-file (build-path dest + "Contents" + "PkgInfo") + (lambda (port) + (fprintf port "APPL~a" creator)) + 'truncate) + (when resource-files + (for-each (lambda (p) + (let-values ([(base name dir?) (split-path p)]) + (copy-file p (build-path dest + "Contents" + "Resources" + name)))) + resource-files)) + (build-path dest "Contents" "MacOS" name))) + + (define (finish-osx-mred dest flags exec-name keep-exe? relative?) + (call-with-output-file (build-path dest + "Contents" + "Resources" + "starter-info") + (lambda (port) + (write-plist + `(dict ,@(if keep-exe? + `((assoc-pair "executable name" + ,(path->string + (if relative? + (relativize exec-name dest + (lambda (p) + (build-path 'up 'up 'up p))) + exec-name)))) + null) + (assoc-pair "stored arguments" + (array ,@flags))) + port)) + 'truncate)) + + ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + + ;; Represent modules with lists starting with the filename, so we + ;; can use assoc: + (define (make-mod normal-file-path normal-module-path code name prefix full-name relative-mappings runtime-paths) + (list normal-file-path normal-module-path code + name prefix full-name relative-mappings runtime-paths)) + + (define (mod-file m) (car m)) + (define (mod-mod-path m) (cadr m)) + (define (mod-code m) (caddr m)) + (define (mod-name m) (list-ref m 3)) + (define (mod-prefix m) (list-ref m 4)) + (define (mod-full-name m) (list-ref m 5)) + (define (mod-mappings m) (list-ref m 6)) + (define (mod-runtime-paths m) (list-ref m 7)) + + (define (generate-prefix) + (format "#%embedded:~a:" (gensym))) + + (define (normalize filename) + (normal-case-path (simplify-path (expand-path filename)))) + + (define (is-lib-path? a) + (and (pair? a) + (eq? 'lib (car a)))) + + (define (unix-style-split p) + (let ([m (regexp-match #rx"^([^/]*)/(.*)$" p)]) + (if m + (cons (cadr m) (unix-style-split (caddr m))) + (list p)))) + + (define (extract-last l) + (let loop ([l l][dirs null]) + (if (null? (cdr l)) + (values (reverse dirs) (car l)) + (loop (cdr l) (cons (car l) dirs))))) + + (define (lib-module-filename collects-dest module-path) + (let-values ([(dir file) + (extract-last + (append (apply append (map unix-style-split + (if (null? (cddr module-path)) + '("mzlib") + (cddr module-path)))) + (unix-style-split (cadr module-path))))]) + (let ([p (build-path collects-dest + (apply build-path dir) + "compiled" + (path-replace-suffix file #".zo"))]) + (let-values ([(base name dir?) (split-path p)]) + (make-directory* base) + p)))) + + (define-struct extension (path)) + + ;; Loads module code, using .zo if there, compiling from .scm if not + (define (get-code filename module-path codes prefixes verbose? collects-dest on-extension + compiler expand-namespace) + (let ([a (assoc filename (unbox codes))]) + (if a + ;; Already have this module. Make sure that library-referenced + ;; modules are consistently referenced through library paths: + (let ([found-lib? (is-lib-path? (mod-mod-path a))] + [look-lib? (is-lib-path? module-path)]) + (cond + [(and found-lib? look-lib?) + 'ok] + [(or found-lib? look-lib?) + (error 'find-module + "module referenced both as a library and through a path: ~a" + filename)] + [else 'ok])) + ;; First use of the module. Get code and then get code for imports. + (begin + (when verbose? + (fprintf (current-error-port) "Getting ~s~n" filename)) + (let ([code (get-module-code filename "compiled" - compile + compiler (if on-extension (lambda (f l?) (on-extension f l?) @@ -369,531 +372,618 @@ (cdr a) (generate-prefix)))]) (cond - [(extension? code) - (set-box! codes - (cons (make-mod filename module-path code - name prefix (string->symbol - (format "~a~a" prefix name)) - null) - (unbox codes)))] - [code - (let-values ([(imports fs-imports ft-imports) (module-compiled-imports code)]) - (let ([all-file-imports (filter (lambda (x) (not (symbol? x))) - (append imports fs-imports ft-imports))]) - (let ([sub-files (map (lambda (i) (normalize (resolve-module-path-index i filename))) - all-file-imports)] - [sub-paths (map (lambda (i) (collapse-module-path-index i module-path)) - all-file-imports)]) - ;; Get code for imports: - (for-each (lambda (sub-filename sub-path) - (get-code sub-filename - sub-path - codes - prefixes - verbose? - collects-dest - on-extension)) - sub-files sub-paths) - (if (and collects-dest - (is-lib-path? module-path)) - ;; Install code as .zo: - (begin - (with-output-to-file (lib-module-filename collects-dest module-path) - (lambda () - (write code)) - 'truncate/replace) - ;; Record module as copied - (set-box! codes - (cons (make-mod filename module-path #f - #f #f #f #f) - (unbox codes)))) - ;; Build up relative module resolutions, relative to this one, - ;; that will be requested at run-time. - (let ([mappings (map (lambda (sub-i sub-filename sub-path) - (and (not (and collects-dest - (is-lib-path? sub-path))) - (let-values ([(path base) (module-path-index-split sub-i)]) - ;; Assert: base should refer to this module: - (let-values ([(path2 base2) (module-path-index-split base)]) - (when (or path2 base2) - (error 'embed "unexpected nested module path index"))) - (let ([m (assoc sub-filename (unbox codes))]) - (cons path (mod-full-name m)))))) - all-file-imports sub-files sub-paths)]) - ;; Record the module - (set-box! codes - (cons (make-mod filename module-path code - name prefix (string->symbol - (format "~a~a" prefix name)) - (filter (lambda (p) - (and p (cdr p))) - mappings)) - (unbox codes))))))))] - [else - (set-box! codes - (cons (make-mod filename module-path code - name #f #f - null) - (unbox codes)))]))))) - - ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (define (make-module-name-resolver code-l) - (let ([extensions (filter (lambda (m) (extension? (mod-code m))) code-l)]) - `(let ([orig (current-module-name-resolver)] - [ns (current-namespace)] - [mapping-table (quote - ,(map - (lambda (m) - `(,(mod-full-name m) - ,(mod-mappings m))) - code-l))] - [library-table (quote - ,(filter values - (map (lambda (m) - (let ([path (mod-mod-path m)]) - (if (and (pair? path) - (eq? 'lib (car path))) - (cons path (mod-full-name m)) - #f))) - code-l)))]) - (letrec ([embedded-resolver - (case-lambda - [(name) - ;; a notification - (orig name)] - [(name rel-to stx) - (embedded-resolver name rel-to stx #t)] - [(name rel-to stx load?) - (if (not (eq? (current-namespace) ns)) - ;; Wrong namespace - (orig name rel-to stx load?) - ;; Have a relative mapping? - (let ([a (assoc rel-to mapping-table)]) - (if a - (let ([a2 (assoc name (cadr a))]) - (if a2 - (cdr a2) - ;; No relative mapping found (presumably a lib) - (orig name rel-to stx))) - ;; A library mapping that we have? - (let ([a3 (and (pair? name) - (eq? (car name) 'lib) - (ormap (lambda (lib-entry) - (with-handlers ([exn:fail? (lambda (x) #f)]) - ;; To check equality of library references, - ;; we have to consider relative paths in the - ;; filename part of the name. - (let loop ([a (build-path - (apply build-path - 'same - (cddar lib-entry)) - (cadar lib-entry))] - [b (build-path - (apply build-path - 'same - (let ([d (cddr name)]) - (if (null? d) - '("mzlib") - d))) - (cadr name))]) - (if (equal? a b) - lib-entry - (let-values ([(abase aname d?) (split-path a)]) - (if (eq? aname 'same) - (loop abase b) - (let-values ([(bbase bname a?) (split-path b)]) - (if (eq? bname 'same) - (loop a bbase) - (if (equal? aname bname) - (loop abase bbase) - #f))))))))) - library-table))]) - (if a3 - ;; Have it: - (cdr a3) - ;; Let default handler try: - (orig name rel-to stx load?))))))])]) - (current-module-name-resolver embedded-resolver))))) - - ;; Write a module bundle that can be loaded with 'load' (do not embed it - ;; into an executable). The bundle is written to the current output port. - (define (write-module-bundle verbose? modules literal-files literal-expression collects-dest - on-extension program-name) - (let* ([module-paths (map cadr modules)] - [files (map - (lambda (mp) - (let ([f (resolve-module-path mp #f)]) - (unless f - (error 'write-module-bundle "bad module path: ~e" mp)) - (normalize f))) - module-paths)] - [collapsed-mps (map - (lambda (mp) - (collapse-module-path mp ".")) - module-paths)] - [prefix-mapping (map (lambda (f m) - (cons f (let ([p (car m)]) - (cond - [(symbol? p) (symbol->string p)] - [(eq? p #t) (generate-prefix)] - [(not p) ""] - [else (error - 'write-module-bundle - "bad prefix: ~e" - p)])))) - files modules)] - ;; Each element is created with `make-mod'. - ;; As we descend the module tree, we append to the front after - ;; loasing imports, so the list in the right order. - [codes (box null)]) - (for-each (lambda (f mp) (get-code f mp codes prefix-mapping verbose? collects-dest - on-extension)) - files - collapsed-mps) - ;; Drop elements of `codes' that just record copied libs: - (set-box! codes (filter mod-code (unbox codes))) - ;; Install a module name resolver that redirects - ;; to the embedded modules - (write (make-module-name-resolver (filter mod-code (unbox codes)))) - ;; Write the extension table and copy module code: - (let* ([l (unbox codes)] - [extensions (filter (lambda (m) (extension? (mod-code m))) l)]) - (unless (null? extensions) - (write - `(let ([eXtEnSiOn-modules ;; this name is magic for the exe -> distribution process - (quote ,(map (lambda (m) - (let ([p (extension-path (mod-code m))]) - (when verbose? - (fprintf (current-error-port) "Recording extension at ~s~n" p)) - (list (path->bytes p) - (string->symbol (mod-prefix m)) - ;; The program name isn't used. It just helps ensures that - ;; there's plenty of room in the executable for patching - ;; the path later when making a distribution. - (path->bytes program-name)))) - extensions))]) - (for-each (lambda (pr) - (current-module-name-prefix (cadr pr)) - (let ([p (bytes->path (car pr))]) - (load-extension (if (relative-path? p) - (parameterize ([current-directory (find-system-path 'orig-dir)]) - (or (find-executable-path (find-system-path 'exec-file) p #t) - (path->complete-path p (current-directory)))) - p)))) - eXtEnSiOn-modules)))) - (for-each - (lambda (nc) - (unless (extension? (mod-code nc)) - (when verbose? - (fprintf (current-error-port) "Writing module from ~s~n" (mod-file nc))) - (write `(current-module-name-prefix ',(string->symbol (mod-prefix nc)))) - (write (mod-code nc)))) - l)) - (write '(current-module-name-prefix #f)) - (newline) - (for-each (lambda (f) - (when verbose? - (fprintf (current-error-port) "Copying from ~s~n" f)) - (call-with-input-file* - f - (lambda (i) - (copy-port i (current-output-port))))) - literal-files) - (when literal-expression - (write literal-expression)))) - - ;; The old interface: - (define make-embedding-executable - (opt-lambda (dest mred? verbose? - modules - literal-files literal-expression - cmdline - [aux null] - [launcher? #f] - [variant (system-type 'gc)]) - (create-embedding-executable dest - #:mred? mred? - #:verbose? verbose? - #:modules modules - #:literal-files literal-files - #:literal-expression literal-expression - #:cmdline cmdline - #:aux aux - #:launcher? launcher? - #:variant variant))) - - ;; Use `write-module-bundle', but figure out how to put it into an executable - (define/kw (create-embedding-executable dest - #:key - [mred? #f] - [verbose? #f] - [modules null] - [literal-files null] - [literal-expression #f] - [cmdline null] - [aux null] - [launcher? #f] - [variant (system-type 'gc)] - [collects-path #f] - [collects-dest #f] - [on-extension #f]) - (define keep-exe? (and launcher? - (let ([m (assq 'forget-exe? aux)]) - (or (not m) - (not (cdr m)))))) - (define unix-starter? (and (eq? (system-type) 'unix) - (let ([m (assq 'original-exe? aux)]) - (or (not m) - (not (cdr m)))))) - (define long-cmdline? (or (eq? (system-type) 'windows) - (and mred? (eq? 'macosx (system-type))) - unix-starter?)) - (define relative? (let ([m (assq 'relative? aux)]) - (and m (cdr m)))) - (define collects-path-bytes (collects-path->bytes - ((if (and mred? - (eq? 'macosx (system-type))) - mac-mred-collects-path-adjust - values) - collects-path))) - (unless (or long-cmdline? - ((apply + (length cmdline) (map (lambda (s) - (bytes-length (string->bytes/utf-8 s))) - cmdline)) . < . 50)) - (error 'create-embedding-executable "command line too long")) - (check-collects-path 'create-embedding-executable collects-path collects-path-bytes) - (let ([exe (find-exe mred? variant)]) - (when verbose? - (fprintf (current-error-port) "Copying to ~s~n" dest)) - (let-values ([(dest-exe orig-exe osx?) - (cond - [(and mred? (eq? 'macosx (system-type))) - (values (prepare-macosx-mred exe dest aux variant) #f #t)] - [unix-starter? - (let ([starter (build-path (find-lib-dir) - (if (force exe-suffix?) - "starter.exe" - "starter"))]) - (when (or (file-exists? dest) - (directory-exists? dest) - (link-exists? dest)) - (delete-file dest)) - (copy-file starter dest) - (values dest starter #f))] - [else - (when (or (file-exists? dest) - (directory-exists? dest) - (link-exists? dest)) - ;; Delete-file isn't enough if the target - ;; is supposed to be a directory. But - ;; currently, that happens only for MrEd - ;; on Mac OS X, which is handles above. - (delete-file dest)) - (copy-file exe dest) - (values dest exe #f)])]) - (with-handlers ([void (lambda (x) - (if osx? - (when (directory-exists? dest) - (delete-directory/files dest)) - (when (file-exists? dest) - (delete-file dest))) - (raise x))]) - (when (and (eq? 'macosx (system-type)) - (not unix-starter?)) - (let ([m (assq 'framework-root aux)]) - (if m - (when (cdr m) - (update-framework-path (cdr m) - (mac-dest->executable dest mred?) - mred?)) - ;; Check whether we need an absolute path to frameworks: - (let ([dest (mac-dest->executable dest mred?)]) - (when (regexp-match #rx"^@executable_path" - (get-current-framework-path dest - (if mred? - "PLT_MrEd" - "PLT_MzScheme"))) - (update-framework-path (string-append - (path->string (find-lib-dir)) - "/") - dest - mred?)))))) - (when (eq? 'windows (system-type)) - (let ([m (assq 'dll-dir aux)]) - (if m - (when (cdr m) - (update-dll-dir dest (cdr m))) - ;; Check whether we need an absolute path to DLLs: - (let ([dir (get-current-dll-dir dest)]) - (when (relative-path? dir) - (let-values ([(orig-dir name dir?) (split-path - (path->complete-path orig-exe))]) - (update-dll-dir dest (build-path orig-dir dir)))))))) - (let ([write-module - (lambda () - (write-module-bundle verbose? modules literal-files literal-expression collects-dest - on-extension - (file-name-from-path dest)))]) - (let-values ([(start end) - (if (and (eq? (system-type) 'macosx) - (not unix-starter?)) - ;; For Mach-O, we know how to add a proper segment - (let ([s (open-output-bytes)]) - (parameterize ([current-output-port s]) - (write-module)) - (let ([s (get-output-bytes s)]) - (let ([start (add-plt-segment dest-exe s)]) - (values start - (+ start (bytes-length s)))))) - ;; Other platforms: just add to the end of the file: - (let ([start (file-size dest-exe)]) - (with-output-to-file dest-exe write-module 'append) - (values start (file-size dest-exe))))]) - (when verbose? - (fprintf (current-error-port) "Setting command line~n")) - (let ([start-s (number->string start)] - [end-s (number->string end)]) - (let ([full-cmdline (append - (if launcher? - (if (and (eq? 'windows (system-type)) - keep-exe?) - ;; argv[0] replacement: - (list (path->string - (if relative? - (relativize exe dest-exe values) - exe))) - ;; No argv[0]: - null) - (list "-k" start-s end-s)) - cmdline)]) - (when collects-path-bytes - (when verbose? - (fprintf (current-error-port) "Setting collection path~n")) - (set-collects-path dest-exe collects-path-bytes)) - (cond - [osx? - (finish-osx-mred dest full-cmdline exe keep-exe? relative?)] - [unix-starter? - (let ([numpos (with-input-from-file dest-exe - (lambda () (find-cmdline - "configuration" - #"cOnFiG:")))] - [typepos (and (or mred? (eq? variant '3m)) - (with-input-from-file dest-exe - (lambda () (find-cmdline - "exeuctable type" - #"bINARy tYPe:"))))] - [cmdline - (apply bytes-append - (map (lambda (s) - (bytes-append - (cond - [(path? s) (path->bytes s)] - [else (string->bytes/locale s)]) - #"\0")) - (append - (list (if relative? - (relativize exe dest-exe values) - exe) - (let ([dir (find-dll-dir)]) - (if dir - (if relative? - (relativize dir dest-exe values) - dir) - ""))) - full-cmdline)))] - [out (open-output-file dest-exe 'update)]) - (let ([cmdline-end (+ end (bytes-length cmdline))] - [write-num (lambda (n) - (write-bytes (integer->integer-bytes n 4 #t #f) out))]) - (dynamic-wind - void - (lambda () - (when typepos - (when mred? - (file-position out (+ typepos 13)) - (write-bytes #"r" out)) - (when (eq? variant '3m) - (file-position out (+ typepos 15)) - (write-bytes #"3" out)) - (flush-output out)) - (file-position out (+ numpos 7)) - (write-bytes #"!" out) - (write-num start) - (write-num end) - (write-num cmdline-end) - (write-num (length full-cmdline)) - (write-num (if mred? 1 0)) - (flush-output out) - (file-position out end) - (write-bytes cmdline out) - (flush-output out)) - (lambda () - (close-output-port out)))))] - [else - (let ([cmdpos (with-input-from-file dest-exe - (lambda () (find-cmdline - "cmdline" - #"\\[Replace me for EXE hack")))] - [anotherpos (and mred? - (eq? 'windows (system-type)) - (let ([m (assq 'single-instance? aux)]) - (and m (not (cdr m)))) - (with-input-from-file dest-exe - (lambda () (find-cmdline - "instance-check" - #"yes, please check for another"))))] - [out (open-output-file dest-exe 'update)]) - (dynamic-wind - void - (lambda () - (when anotherpos - (file-position out anotherpos) - (write-bytes #"no," out)) - (if long-cmdline? - ;; write cmdline at end: - (file-position out end) - (begin - ;; write (short) cmdline in the normal position: - (file-position out cmdpos) - (display "!" out))) - (for-each - (lambda (s) - (fprintf out "~a~a~c" - (integer->integer-bytes - (add1 (bytes-length (string->bytes/utf-8 s)) ) - 4 #t #f) - s - #\000)) - full-cmdline) - (display "\0\0\0\0" out) - (when long-cmdline? - ;; cmdline written at the end; - ;; now put forwarding information at the normal cmdline pos - (let ([new-end (file-position out)]) - (file-position out cmdpos) - (fprintf out "~a...~a~a" - (if keep-exe? "*" "?") - (integer->integer-bytes end 4 #t #f) - (integer->integer-bytes (- new-end end) 4 #t #f))))) - (lambda () - (close-output-port out))) - (let ([m (and (eq? 'windows (system-type)) - (assq 'ico aux))]) - (when m - (install-icon dest-exe (cdr m)))) - (let ([m (and (eq? 'windows (system-type)) - (assq 'subsystem aux))]) - (when m - (set-subsystem dest-exe (cdr m)))))]))))))))) - - ;; For Mac OS X MrEd, the actual executable is deep inside the - ;; nominal executable bundle - (define (mac-mred-collects-path-adjust p) - (cond - [(not p) #f] - [(list? p) (map mac-mred-collects-path-adjust p)] - [(relative-path? p) (build-path 'up 'up 'up p)] - [else p])))) + [(extension? code) + (set-box! codes + (cons (make-mod filename module-path code + name prefix (string->symbol + (format "~a~a" prefix name)) + null null) + (unbox codes)))] + [code + (let-values ([(imports fs-imports ft-imports) (module-compiled-imports code)]) + (let ([all-file-imports (filter (lambda (x) (not (symbol? x))) + (append imports fs-imports ft-imports))]) + (let ([sub-files (map (lambda (i) (normalize (resolve-module-path-index i filename))) + all-file-imports)] + [sub-paths (map (lambda (i) (collapse-module-path-index i module-path)) + all-file-imports)]) + ;; Get code for imports: + (for-each (lambda (sub-filename sub-path) + (get-code sub-filename + sub-path + codes + prefixes + verbose? + collects-dest + on-extension + compiler + expand-namespace)) + sub-files sub-paths) + (let ([runtime-paths + (parameterize ([current-namespace expand-namespace]) + (eval code) + (let ([module-path + (if (path? module-path) + (path->complete-path module-path) + module-path)]) + (syntax-case (expand `(module m mzscheme + (require (only ,module-path) + (lib "runtime-path.ss")) + (runtime-paths ,module-path))) (quote) + [(_ m mz (#%mb rfs req (quote (spec ...)))) + (syntax-object->datum #'(spec ...))] + [_else (error 'create-empbedding-executable + "expansion mismatch when getting external paths")])))]) + (when verbose? + (unless (null? runtime-paths) + (fprintf (current-error-port) "Runtime paths for ~s: ~s\n" + filename + runtime-paths))) + (if (and collects-dest + (is-lib-path? module-path)) + ;; Install code as .zo: + (begin + (with-output-to-file (lib-module-filename collects-dest module-path) + (lambda () + (write code)) + 'truncate/replace) + ;; Record module as copied + (set-box! codes + (cons (make-mod filename module-path #f + #f #f #f #f null) + (unbox codes)))) + ;; Build up relative module resolutions, relative to this one, + ;; that will be requested at run-time. + (let ([mappings (map (lambda (sub-i sub-filename sub-path) + (and (not (and collects-dest + (is-lib-path? sub-path))) + (let-values ([(path base) (module-path-index-split sub-i)]) + ;; Assert: base should refer to this module: + (let-values ([(path2 base2) (module-path-index-split base)]) + (when (or path2 base2) + (error 'embed "unexpected nested module path index"))) + (let ([m (assoc sub-filename (unbox codes))]) + (cons path (mod-full-name m)))))) + all-file-imports sub-files sub-paths)]) + ;; Record the module + (set-box! codes + (cons (make-mod filename module-path code + name prefix (string->symbol + (format "~a~a" prefix name)) + (filter (lambda (p) + (and p (cdr p))) + mappings) + runtime-paths) + (unbox codes)))))))))] + [else + (set-box! codes + (cons (make-mod filename module-path code + name #f #f + null null) + (unbox codes)))])))))) + + ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + + (define (make-module-name-resolver code-l) + (let ([extensions (filter (lambda (m) (extension? (mod-code m))) code-l)]) + `(let ([orig (current-module-name-resolver)] + [ns (current-namespace)] + [mapping-table (quote + ,(map + (lambda (m) + `(,(mod-full-name m) + ,(mod-mappings m))) + code-l))] + [library-table (quote + ,(filter values + (map (lambda (m) + (let ([path (mod-mod-path m)]) + (if (and (pair? path) + (eq? 'lib (car path))) + (cons path (mod-full-name m)) + #f))) + code-l)))]) + (letrec ([embedded-resolver + (case-lambda + [(name) + ;; a notification + (orig name)] + [(name rel-to stx) + (embedded-resolver name rel-to stx #t)] + [(name rel-to stx load?) + (if (not (eq? (current-namespace) ns)) + ;; Wrong namespace + (orig name rel-to stx load?) + ;; Have a relative mapping? + (let ([a (assoc rel-to mapping-table)]) + (if a + (let ([a2 (assoc name (cadr a))]) + (if a2 + (cdr a2) + ;; No relative mapping found (presumably a lib) + (orig name rel-to stx load?))) + ;; A library mapping that we have? + (let ([a3 (and (pair? name) + (eq? (car name) 'lib) + (ormap (lambda (lib-entry) + (with-handlers ([exn:fail? (lambda (x) #f)]) + ;; To check equality of library references, + ;; we have to consider relative paths in the + ;; filename part of the name. + (let loop ([a (build-path + (apply build-path + 'same + (cddar lib-entry)) + (cadar lib-entry))] + [b (build-path + (apply build-path + 'same + (let ([d (cddr name)]) + (if (null? d) + '("mzlib") + d))) + (cadr name))]) + (if (equal? a b) + lib-entry + (let-values ([(abase aname d?) (split-path a)]) + (if (eq? aname 'same) + (loop abase b) + (let-values ([(bbase bname a?) (split-path b)]) + (if (eq? bname 'same) + (loop a bbase) + (if (equal? aname bname) + (loop abase bbase) + #f))))))))) + library-table))]) + (if a3 + ;; Have it: + (cdr a3) + ;; Let default handler try: + (orig name rel-to stx load?))))))])]) + (current-module-name-resolver embedded-resolver))))) + + ;; Write a module bundle that can be loaded with 'load' (do not embed it + ;; into an executable). The bundle is written to the current output port. + (define (write-module-bundle verbose? modules literal-files literal-expression collects-dest + on-extension program-name compiler expand-namespace) + (let* ([module-paths (map cadr modules)] + [files (map + (lambda (mp) + (let ([f (resolve-module-path mp #f)]) + (unless f + (error 'write-module-bundle "bad module path: ~e" mp)) + (normalize f))) + module-paths)] + [collapsed-mps (map + (lambda (mp) + (collapse-module-path mp ".")) + module-paths)] + [prefix-mapping (map (lambda (f m) + (cons f (let ([p (car m)]) + (cond + [(symbol? p) (symbol->string p)] + [(eq? p #t) (generate-prefix)] + [(not p) ""] + [else (error + 'write-module-bundle + "bad prefix: ~e" + p)])))) + files modules)] + ;; Each element is created with `make-mod'. + ;; As we descend the module tree, we append to the front after + ;; loasing imports, so the list in the right order. + [codes (box null)]) + (for-each (lambda (f mp) (get-code f mp codes prefix-mapping verbose? collects-dest + on-extension compiler expand-namespace)) + files + collapsed-mps) + ;; Drop elements of `codes' that just record copied libs: + (set-box! codes (filter mod-code (unbox codes))) + ;; Install a module name resolver that redirects + ;; to the embedded modules + (write (make-module-name-resolver (filter mod-code (unbox codes)))) + ;; Write the extension table and copy module code: + (let* ([l (unbox codes)] + [extensions (filter (lambda (m) (extension? (mod-code m))) l)] + [runtimes (filter (lambda (m) (pair? (mod-runtime-paths m))) l)] + [table-mod + (if (null? runtimes) + #f + (let* ([table-sym (module-path-index-resolve + (module-path-index-join '(lib "runtime-path-table.ss" "mzlib" "private") + 'mzscheme))] + [table-path (bytes->path + (bytes-append + (subbytes (string->bytes/latin-1 (symbol->string table-sym)) + 1) + #".ss"))]) + (assoc (normalize table-path) l)))]) + (unless (null? extensions) + ;; The extension table: + (write + `(let ([eXtEnSiOn-modules ;; this name is magic for the exe->distribution process + (quote ,(map (lambda (m) + (let ([p (extension-path (mod-code m))]) + (when verbose? + (fprintf (current-error-port) "Recording extension at ~s~n" p)) + (list (path->bytes p) + (string->symbol (mod-prefix m)) + ;; The program name isn't used. It just helps ensures that + ;; there's plenty of room in the executable for patching + ;; the path later when making a distribution. + (path->bytes program-name)))) + extensions))]) + (for-each (lambda (pr) + (current-module-name-prefix (cadr pr)) + (let ([p (bytes->path (car pr))]) + (load-extension (if (relative-path? p) + (parameterize ([current-directory (find-system-path 'orig-dir)]) + (or (find-executable-path (find-system-path 'exec-file) p #t) + (path->complete-path p (current-directory)))) + p)))) + eXtEnSiOn-modules)))) + ;; Runtime-path table: + (unless (null? runtimes) + (unless table-mod + (error 'create-embedding-executable "cannot find module for runtime-path table")) + (write `(current-module-name-prefix ',(string->symbol (mod-prefix table-mod)))) + (write `(module runtime-path-table mzscheme + (provide table) + (define table + (make-immutable-hash-table + (let ([rUnTiMe-paths ; this is a magic name for exe->distribution process + ',(apply append + (map (lambda (nc) + (map (lambda (p) + (list + (cons (mod-full-name nc) + (if (path? p) + (path->bytes p) + p)) + (let ([p (cond + [(bytes? p) (bytes->path p)] + [(and (list? p) (= 2 (length p)) + (eq? 'so (car p))) + (let ([f (path-replace-suffix (cadr p) + (system-type 'so-suffix))]) + (ormap (lambda (p) + (let ([p (build-path p f)]) + (and (file-exists? p) + p))) + (get-lib-search-dirs)))] + [else p])]) + (and p + (path->bytes + (if (absolute-path? p) + p + (build-path (path-only (mod-file nc)) p))))) + ;; As for the extension table, a placeholder to save + ;; room likely needed by the distribution-mangler + (bytes-append #"................." (path->bytes program-name)))) + (mod-runtime-paths nc))) + runtimes))]) + rUnTiMe-paths) + 'equal))))) + ;; Copy module code: + (for-each + (lambda (nc) + (unless (or (extension? (mod-code nc)) + (eq? nc table-mod)) + (when verbose? + (fprintf (current-error-port) "Writing module from ~s~n" (mod-file nc))) + (write `(current-module-name-prefix ',(string->symbol (mod-prefix nc)))) + (write (mod-code nc)))) + l)) + (write '(current-module-name-prefix #f)) + (newline) + (for-each (lambda (f) + (when verbose? + (fprintf (current-error-port) "Copying from ~s~n" f)) + (call-with-input-file* + f + (lambda (i) + (copy-port i (current-output-port))))) + literal-files) + (when literal-expression + (write literal-expression)))) + + ;; The old interface: + (define make-embedding-executable + (opt-lambda (dest mred? verbose? + modules + literal-files literal-expression + cmdline + [aux null] + [launcher? #f] + [variant (system-type 'gc)]) + (create-embedding-executable dest + #:mred? mred? + #:verbose? verbose? + #:modules modules + #:literal-files literal-files + #:literal-expression literal-expression + #:cmdline cmdline + #:aux aux + #:launcher? launcher? + #:variant variant))) + + ;; Use `write-module-bundle', but figure out how to put it into an executable + (define/kw (create-embedding-executable dest + #:key + [mred? #f] + [verbose? #f] + [modules null] + [literal-files null] + [literal-expression #f] + [cmdline null] + [aux null] + [launcher? #f] + [variant (system-type 'gc)] + [collects-path #f] + [collects-dest #f] + [on-extension #f] + [expand-namespace (current-namespace)] + [compiler (lambda (expr) + (parameterize ([current-namespace expand-namespace]) + (compile expr)))]) + (define keep-exe? (and launcher? + (let ([m (assq 'forget-exe? aux)]) + (or (not m) + (not (cdr m)))))) + (define unix-starter? (and (eq? (system-type) 'unix) + (let ([m (assq 'original-exe? aux)]) + (or (not m) + (not (cdr m)))))) + (define long-cmdline? (or (eq? (system-type) 'windows) + (and mred? (eq? 'macosx (system-type))) + unix-starter?)) + (define relative? (let ([m (assq 'relative? aux)]) + (and m (cdr m)))) + (define collects-path-bytes (collects-path->bytes + ((if (and mred? + (eq? 'macosx (system-type))) + mac-mred-collects-path-adjust + values) + collects-path))) + (unless (or long-cmdline? + ((apply + (length cmdline) (map (lambda (s) + (bytes-length (string->bytes/utf-8 s))) + cmdline)) . < . 50)) + (error 'create-embedding-executable "command line too long")) + (check-collects-path 'create-embedding-executable collects-path collects-path-bytes) + (let ([exe (find-exe mred? variant)]) + (when verbose? + (fprintf (current-error-port) "Copying to ~s~n" dest)) + (let-values ([(dest-exe orig-exe osx?) + (cond + [(and mred? (eq? 'macosx (system-type))) + (values (prepare-macosx-mred exe dest aux variant) #f #t)] + [unix-starter? + (let ([starter (build-path (find-lib-dir) + (if (force exe-suffix?) + "starter.exe" + "starter"))]) + (when (or (file-exists? dest) + (directory-exists? dest) + (link-exists? dest)) + (delete-file dest)) + (copy-file starter dest) + (values dest starter #f))] + [else + (when (or (file-exists? dest) + (directory-exists? dest) + (link-exists? dest)) + ;; Delete-file isn't enough if the target + ;; is supposed to be a directory. But + ;; currently, that happens only for MrEd + ;; on Mac OS X, which is handles above. + (delete-file dest)) + (copy-file exe dest) + (values dest exe #f)])]) + (with-handlers ([void (lambda (x) + (if osx? + (when (directory-exists? dest) + (delete-directory/files dest)) + (when (file-exists? dest) + (delete-file dest))) + (raise x))]) + (when (and (eq? 'macosx (system-type)) + (not unix-starter?)) + (let ([m (assq 'framework-root aux)]) + (if m + (when (cdr m) + (update-framework-path (cdr m) + (mac-dest->executable dest mred?) + mred?)) + ;; Check whether we need an absolute path to frameworks: + (let ([dest (mac-dest->executable dest mred?)]) + (when (regexp-match #rx"^@executable_path" + (get-current-framework-path dest + (if mred? + "PLT_MrEd" + "PLT_MzScheme"))) + (update-framework-path (string-append + (path->string (find-lib-dir)) + "/") + dest + mred?)))))) + (when (eq? 'windows (system-type)) + (let ([m (assq 'dll-dir aux)]) + (if m + (when (cdr m) + (update-dll-dir dest (cdr m))) + ;; Check whether we need an absolute path to DLLs: + (let ([dir (get-current-dll-dir dest)]) + (when (relative-path? dir) + (let-values ([(orig-dir name dir?) (split-path + (path->complete-path orig-exe))]) + (update-dll-dir dest (build-path orig-dir dir)))))))) + (let ([write-module + (lambda () + (write-module-bundle verbose? modules literal-files literal-expression collects-dest + on-extension + (file-name-from-path dest) + compiler + expand-namespace))]) + (let-values ([(start end) + (if (and (eq? (system-type) 'macosx) + (not unix-starter?)) + ;; For Mach-O, we know how to add a proper segment + (let ([s (open-output-bytes)]) + (parameterize ([current-output-port s]) + (write-module)) + (let ([s (get-output-bytes s)]) + (let ([start (add-plt-segment dest-exe s)]) + (values start + (+ start (bytes-length s)))))) + ;; Other platforms: just add to the end of the file: + (let ([start (file-size dest-exe)]) + (with-output-to-file dest-exe write-module 'append) + (values start (file-size dest-exe))))]) + (when verbose? + (fprintf (current-error-port) "Setting command line~n")) + (let ([start-s (number->string start)] + [end-s (number->string end)]) + (let ([full-cmdline (append + (if launcher? + (if (and (eq? 'windows (system-type)) + keep-exe?) + ;; argv[0] replacement: + (list (path->string + (if relative? + (relativize exe dest-exe values) + exe))) + ;; No argv[0]: + null) + (list "-k" start-s end-s)) + cmdline)]) + (when collects-path-bytes + (when verbose? + (fprintf (current-error-port) "Setting collection path~n")) + (set-collects-path dest-exe collects-path-bytes)) + (cond + [osx? + (finish-osx-mred dest full-cmdline exe keep-exe? relative?)] + [unix-starter? + (let ([numpos (with-input-from-file dest-exe + (lambda () (find-cmdline + "configuration" + #"cOnFiG:")))] + [typepos (and (or mred? (eq? variant '3m)) + (with-input-from-file dest-exe + (lambda () (find-cmdline + "exeuctable type" + #"bINARy tYPe:"))))] + [cmdline + (apply bytes-append + (map (lambda (s) + (bytes-append + (cond + [(path? s) (path->bytes s)] + [else (string->bytes/locale s)]) + #"\0")) + (append + (list (if relative? + (relativize exe dest-exe values) + exe) + (let ([dir (find-dll-dir)]) + (if dir + (if relative? + (relativize dir dest-exe values) + dir) + ""))) + full-cmdline)))] + [out (open-output-file dest-exe 'update)]) + (let ([cmdline-end (+ end (bytes-length cmdline))] + [write-num (lambda (n) + (write-bytes (integer->integer-bytes n 4 #t #f) out))]) + (dynamic-wind + void + (lambda () + (when typepos + (when mred? + (file-position out (+ typepos 13)) + (write-bytes #"r" out)) + (when (eq? variant '3m) + (file-position out (+ typepos 15)) + (write-bytes #"3" out)) + (flush-output out)) + (file-position out (+ numpos 7)) + (write-bytes #"!" out) + (write-num start) + (write-num end) + (write-num cmdline-end) + (write-num (length full-cmdline)) + (write-num (if mred? 1 0)) + (flush-output out) + (file-position out end) + (write-bytes cmdline out) + (flush-output out)) + (lambda () + (close-output-port out)))))] + [else + (let ([cmdpos (with-input-from-file dest-exe + (lambda () (find-cmdline + "cmdline" + #"\\[Replace me for EXE hack")))] + [anotherpos (and mred? + (eq? 'windows (system-type)) + (let ([m (assq 'single-instance? aux)]) + (and m (not (cdr m)))) + (with-input-from-file dest-exe + (lambda () (find-cmdline + "instance-check" + #"yes, please check for another"))))] + [out (open-output-file dest-exe 'update)]) + (dynamic-wind + void + (lambda () + (when anotherpos + (file-position out anotherpos) + (write-bytes #"no," out)) + (if long-cmdline? + ;; write cmdline at end: + (file-position out end) + (begin + ;; write (short) cmdline in the normal position: + (file-position out cmdpos) + (display "!" out))) + (for-each + (lambda (s) + (fprintf out "~a~a~c" + (integer->integer-bytes + (add1 (bytes-length (string->bytes/utf-8 s)) ) + 4 #t #f) + s + #\000)) + full-cmdline) + (display "\0\0\0\0" out) + (when long-cmdline? + ;; cmdline written at the end; + ;; now put forwarding information at the normal cmdline pos + (let ([new-end (file-position out)]) + (file-position out cmdpos) + (fprintf out "~a...~a~a" + (if keep-exe? "*" "?") + (integer->integer-bytes end 4 #t #f) + (integer->integer-bytes (- new-end end) 4 #t #f))))) + (lambda () + (close-output-port out))) + (let ([m (and (eq? 'windows (system-type)) + (assq 'ico aux))]) + (when m + (install-icon dest-exe (cdr m)))) + (let ([m (and (eq? 'windows (system-type)) + (assq 'subsystem aux))]) + (when m + (set-subsystem dest-exe (cdr m)))))]))))))))) + + ;; For Mac OS X MrEd, the actual executable is deep inside the + ;; nominal executable bundle + (define (mac-mred-collects-path-adjust p) + (cond + [(not p) #f] + [(list? p) (map mac-mred-collects-path-adjust p)] + [(relative-path? p) (build-path 'up 'up 'up p)] + [else p])))) diff --git a/collects/mred/private/app.ss b/collects/mred/private/app.ss index 188950103c..74e6e7df05 100644 --- a/collects/mred/private/app.ss +++ b/collects/mred/private/app.ss @@ -107,7 +107,7 @@ af (entry-point (lambda () (when (send af accept-drag?) - (send af on-drop-file f)))))))))) + (send af on-drop-file f)))))))))) (define (install-defh) (wx:application-file-handler (make-app-handler diff --git a/collects/mzlib/etc.ss b/collects/mzlib/etc.ss index d26603880d..ecb85297e2 100644 --- a/collects/mzlib/etc.ss +++ b/collects/mzlib/etc.ss @@ -380,24 +380,44 @@ (not (eq? (namespace-variable-value n #t (lambda () ns-undefined)) ns-undefined))) + (define (extract-module-directory stx) + (let ([srcmod (let ([mpi (syntax-source-module stx)]) + (if (module-path-index? mpi) + (module-path-index-resolve mpi) + mpi))]) + (let ([str (symbol->string srcmod)]) + (and ((string-length str) . > . 1) + (char=? #\, (string-ref str 0)) + (let ([path (bytes->path (string->bytes/latin-1 (substring str 1)))]) + (let-values ([(base name dir?) (split-path path)]) + (and (path? base) + base))))))) + (define-syntax (this-expression-source-directory stx) (syntax-case stx () [(_) - (let* ([source (syntax-source stx)] - [source (and (path? source) source)] - [local (or (current-load-relative-directory) (current-directory))] - [dir (path->main-collects-relative - (or (and source (file-exists? source) - (let-values ([(base file dir?) - (split-path source)]) - (and (path? base) - (path->complete-path base local)))) - local))]) - (if (and (pair? dir) (eq? 'collects (car dir))) - (with-syntax ([d dir]) - #'(main-collects-relative->path 'd)) - (with-syntax ([d (if (bytes? dir) dir (path->bytes dir))]) - #'(bytes->path d))))])) + (let ([source-path + (let* ([source (syntax-source stx)] + [source (and (path? source) source)] + [local (or (current-load-relative-directory) (current-directory))] + [dir (path->main-collects-relative + (or (and source (file-exists? source) + (let-values ([(base file dir?) + (split-path source)]) + (and (path? base) + (path->complete-path base local)))) + local))]) + (if (and (pair? dir) (eq? 'collects (car dir))) + (with-syntax ([d dir]) + (syntax/loc stx (main-collects-relative->path 'd))) + (with-syntax ([d (if (bytes? dir) dir (path->bytes dir))]) + (syntax/loc stx (bytes->path d)))))]) + (let ([mpi (syntax-source-module stx)]) + (if mpi + (quasisyntax/loc stx + (or (extract-module-directory (quote-syntax #,stx)) + #,source-path)) + source-path)))])) (define-syntax (this-expression-file-name stx) (syntax-case stx () diff --git a/collects/mzlib/private/runtime-path-table.ss b/collects/mzlib/private/runtime-path-table.ss new file mode 100644 index 0000000000..f3fd97e3e1 --- /dev/null +++ b/collects/mzlib/private/runtime-path-table.ss @@ -0,0 +1,3 @@ +(module runtime-path-table mzscheme + (provide table) + (define table #f)) \ No newline at end of file diff --git a/collects/mzlib/runtime-path.ss b/collects/mzlib/runtime-path.ss new file mode 100644 index 0000000000..2b9741e9af --- /dev/null +++ b/collects/mzlib/runtime-path.ss @@ -0,0 +1,137 @@ + +(module runtime-path mzscheme + (require (lib "etc.ss") + (lib "modcollapse.ss" "syntax") + (lib "dirs.ss" "setup") + (only "private/runtime-path-table.ss" table)) + + (provide define-runtime-path + define-runtime-paths + define-runtime-path-list + runtime-paths) + + (define-for-syntax ext-file-table (make-hash-table)) + + (define (lookup-in-table tag-stx p) + ;; This function is designed to cooperate with a table embedded + ;; in an executable by create-embedding-executable. + (let ([mpi (syntax-source-module tag-stx)]) + (let ([p (hash-table-get + table + (cons (cond + [(module-path-index? mpi) + (module-path-index-resolve mpi)] + [(symbol? mpi) mpi] + [else #f]) + (if (path? p) + (path->bytes p) + p)) + #f)]) + (and p + (car p) + (let* ([p (car p)] + [p (if (bytes? p) + (bytes->path p) + p)]) + (if (absolute-path? p) + p + (parameterize ([current-directory (find-system-path 'orig-dir)]) + (or (find-executable-path (find-system-path 'exec-file) p #t) + (build-path (current-directory) p))))))))) + + (define (resolve-paths tag-stx get-base paths) + (let ([base #f]) + (map (lambda (p) + (or + ;; Check table potentially substituted by + ;; mzc --exe: + (and table + (lookup-in-table tag-stx p)) + ;; Normal resolution + (cond + [(and (or (string? p) (path? p)) + (not (complete-path? p))) + (unless base + (set! base (get-base))) + (path->complete-path p base)] + [(string? p) (string->path p)] + [(path? p) p] + [(and (list? p) + (= 2 (length p)) + (eq? 'so (car p)) + (string? (cadr p))) + (let ([f (path-replace-suffix (cadr p) (system-type 'so-suffix))]) + (or (ormap (lambda (p) + (let ([p (build-path p f)]) + (and (file-exists? p) + p))) + (get-lib-search-dirs)) + (cadr p)))] + [else (error 'runtime-path "unknown form: ~e" p)]))) + paths))) + + (define-for-syntax (register-ext-files tag-stx paths) + (let ([mpi (syntax-source-module tag-stx)]) + (let ([modname (cond + [(module-path-index? mpi) (module-path-index-resolve mpi)] + [(symbol? mpi) mpi] + [else (error 'register-ext-files + "cannot determine source")])]) + (let ([files (hash-table-get ext-file-table modname null)]) + (hash-table-put! ext-file-table modname (append paths files)))))) + + (define-syntax (-define-runtime-path stx) + (syntax-case stx () + [(_ orig-stx (id ...) expr to-list to-values) + (let ([ids (syntax->list #'(id ...))]) + (unless (memq (syntax-local-context) '(module module-begin top-level)) + (raise-syntax-error #f "allowed only at the top level" #'orig-stx)) + (for-each (lambda (id) + (unless (identifier? id) + (raise-syntax-error + #f + #'orig-stx + id))) + ids) + (let ([tag (datum->syntax-object #'orig-stx 'tag #'orig-stx)]) + #`(begin + (define-values (id ...) + (let-values ([(id ...) expr]) + (let ([get-dir (lambda () + #,(datum->syntax-object + tag + `(,#'this-expression-source-directory) + tag))]) + (apply to-values (resolve-paths (quote-syntax #,tag) + get-dir + (to-list id ...)))))) + (begin-for-syntax + (register-ext-files + (quote-syntax #,tag) + (let-values ([(id ...) expr]) + (to-list id ...)))))))])) + + (define-syntax (define-runtime-path stx) + (syntax-case stx () + [(_ id expr) #`(-define-runtime-path #,stx (id) expr list values)])) + + (define-syntax (define-runtime-paths stx) + (syntax-case stx () + [(_ (id ...) expr) #`(-define-runtime-path #,stx (id ...) expr list values)])) + + (define-syntax (define-runtime-path-list stx) + (syntax-case stx () + [(_ id expr) #`(-define-runtime-path #,stx (id) expr values list)])) + + (define-syntax (runtime-paths stx) + (syntax-case stx () + [(_ mp) + #`(quote + #,(hash-table-get + ext-file-table + (module-path-index-resolve (module-path-index-join + (syntax-object->datum #'mp) + (syntax-source-module stx))) + null))])) + + ) diff --git a/collects/mzlib/sandbox.ss b/collects/mzlib/sandbox.ss index b951a2af35..ecf8b7eb7a 100644 --- a/collects/mzlib/sandbox.ss +++ b/collects/mzlib/sandbox.ss @@ -362,13 +362,6 @@ (define (get-uncovered-expressions eval . args) (apply (eval get-uncovered-expressions) args)) - (define-syntax parameterize* - (syntax-rules () - [(parameterize* ([p1 v1] [p v] ...) body ...) - (parameterize ([p1 v1]) (parameterize* ([p v] ...) body ...))] - [(parameterize* () body ...) - (begin body ...)])) - (define (make-evaluator* init-hook require-perms program-or-maker) (define cust (make-custodian)) (define coverage? (sandbox-coverage-enabled)) diff --git a/collects/openssl/mzssl.ss b/collects/openssl/mzssl.ss index 41e01aec2a..9078c693c2 100644 --- a/collects/openssl/mzssl.ss +++ b/collects/openssl/mzssl.ss @@ -16,7 +16,8 @@ (module mzssl mzscheme (require (lib "foreign.ss") (lib "port.ss") - (lib "kw.ss")) + (lib "kw.ss") + (lib "runtime-path.ss")) (provide ssl-available? ssl-load-fail-reason @@ -48,6 +49,17 @@ (unsafe!) + ;; We need to declare because they might be distributed with PLT Scheme + ;; in which case they should get bundled with stand-alone executables: + (define-runtime-path libcrypto-so + (case (system-type) + [(windows) '(so "libeay32")] + [else '(so "libcrypto")])) + (define-runtime-path libssl-so + (case (system-type) + [(windows) '(so "ssleay32")] + [else '(so "libssl")])) + (define ssl-load-fail-reason #f) (define 3m? (regexp-match #rx#"3m" (path->bytes (system-library-subpath)))) @@ -56,22 +68,14 @@ (with-handlers ([exn:fail? (lambda (x) (set! ssl-load-fail-reason (exn-message x)) #f)]) - (case (system-type) - [(windows) - (ffi-lib "libeay32")] - [else - (ffi-lib "libcrypto")]))) + (ffi-lib libcrypto-so))) (define libssl (and libcrypto (with-handlers ([exn:fail? (lambda (x) (set! ssl-load-fail-reason (exn-message x)) #f)]) - (case (system-type) - [(windows) - (ffi-lib "ssleay32")] - [else - (ffi-lib "libssl")])))) + (ffi-lib libssl-so)))) (define libmz (ffi-lib #f)) diff --git a/collects/plot/fit-low-level.ss b/collects/plot/fit-low-level.ss index c27c53ede3..e3f0f025f1 100644 --- a/collects/plot/fit-low-level.ss +++ b/collects/plot/fit-low-level.ss @@ -1,11 +1,12 @@ (module fit-low-level mzscheme - (require (lib "foreign.ss") (lib "etc.ss")) + (require (lib "foreign.ss") (lib "runtime-path.ss")) (unsafe!) - (define libfit - (ffi-lib (build-path (this-expression-source-directory) - "compiled" "native" (system-library-subpath #f) - "libfit"))) + (define-runtime-path libfit-path + (build-path "compiled" "native" (system-library-subpath #f) + (path-replace-suffix "libfit" (system-type 'so-suffix)))) + + (define libfit (ffi-lib libfit-path)) (define do-fit-int (get-ffi-obj "do_fit" libfit diff --git a/collects/plot/plstnd5.fnt b/collects/plot/fonts/plstnd5.fnt similarity index 100% rename from collects/plot/plstnd5.fnt rename to collects/plot/fonts/plstnd5.fnt diff --git a/collects/plot/plxtnd5.fnt b/collects/plot/fonts/plxtnd5.fnt similarity index 100% rename from collects/plot/plxtnd5.fnt rename to collects/plot/fonts/plxtnd5.fnt diff --git a/collects/plot/plplot.ss b/collects/plot/plplot.ss index b31158b779..87997790c2 100644 --- a/collects/plot/plplot.ss +++ b/collects/plot/plplot.ss @@ -1,17 +1,19 @@ (module plplot mzscheme -(require (lib "etc.ss") (lib "list.ss") (lib "foreign.ss")) +(require (lib "etc.ss") (lib "list.ss") (lib "foreign.ss") (lib "runtime-path.ss")) (unsafe!) -(define libplplot - (ffi-lib - (build-path (this-expression-source-directory) - "compiled" "native" (system-library-subpath #f) "libplplot"))) +(define-runtime-path plplot-path + (build-path "compiled" "native" (system-library-subpath #f) + (path-replace-suffix "libplplot" (system-type 'so-suffix)))) +(define-runtime-path font-dir "fonts") + +(define libplplot (ffi-lib plplot-path)) (define plplotlibdir (get-ffi-obj "plplotLibDir" libplplot _string)) ;; set the lib dir to contain the fonts: -(let ([path (this-expression-source-directory)]) +(let ([path font-dir]) ;; free current pointer, if any: (let ([p (get-ffi-obj "plplotLibDir" libplplot _pointer)]) (when p (free p))) diff --git a/collects/setup/dirs.ss b/collects/setup/dirs.ss index 8dd5ff6cea..41dd207c1a 100644 --- a/collects/setup/dirs.ss +++ b/collects/setup/dirs.ss @@ -8,10 +8,7 @@ ;; path normalization is not really necessary by any existing code, ;; but there might be applications that rely on these paths, so it's ;; best to do some minor normalization. This is similar to what - ;; "main-collects.ss" does. Again, this makes mzscheme expand paths - ;; that begin with `~'. - ;; Note: (expand-path (simplify-path P #f)) is bogus, if P is - ;; "./~foo" or "~foo/.." + ;; "main-collects.ss" does. (define (system-path* what) (simplify-path (expand-path (find-system-path what)) #f)) diff --git a/collects/syntax/doc.txt b/collects/syntax/doc.txt index fbfbae9f6e..7c6e6bf587 100644 --- a/collects/syntax/doc.txt +++ b/collects/syntax/doc.txt @@ -244,9 +244,6 @@ _docprovide.ss_: attaching documentation to exports > (provide-and-document doc-label-id doc-row ...) - a form that exports names and records documentation information. - !! IMPORTANT: For now, the exporting module must be required with a - `lib' or `file' form. Relative paths do no work correctly !! - The `doc-label-id' identifier is used as a key for accessing the documentation through `lookup-documentation'. The actual documentation is organized into "rows", each with a section title. diff --git a/collects/syntax/private/doctable.ss b/collects/syntax/private/doctable.ss index 743b422bdf..0fd6089294 100644 --- a/collects/syntax/private/doctable.ss +++ b/collects/syntax/private/doctable.ss @@ -1,15 +1,11 @@ (module doctable mzscheme - (require (lib "moddep.ss" "syntax")) - - (define ht (make-hash-table 'equal)) + (define ht (make-hash-table)) (define (register-documentation src-stx label v) (let ([mod (let ([s (syntax-source-module src-stx)]) (if (module-path-index? s) - ((current-module-name-resolver) - (collapse-module-path-index s `(lib "docprovide.ss" "syntax")) - #f #f) + (module-path-index-resolve s) s))]) (let ([mht (hash-table-get ht mod (lambda () @@ -19,9 +15,12 @@ (hash-table-put! mht label v)))) (define (lookup-documentation mod label) - (let ([mht (hash-table-get ht mod (lambda () #f))]) - (and mht - (hash-table-get mht label (lambda () #f))))) + (let ([mod (if (symbol? mod) + mod + (module-path-index-resolve (module-path-index-join mod #f)))]) + (let ([mht (hash-table-get ht mod (lambda () #f))]) + (and mht + (hash-table-get mht label (lambda () #f)))))) (provide register-documentation lookup-documentation)) diff --git a/collects/tests/mzscheme/embed-me10.ss b/collects/tests/mzscheme/embed-me10.ss new file mode 100644 index 0000000000..807eb8705d --- /dev/null +++ b/collects/tests/mzscheme/embed-me10.ss @@ -0,0 +1,9 @@ +(module embed-me10 mzscheme + (require (lib "mzssl.ss" "openssl")) + + (with-output-to-file "stdout" + (lambda () + (printf "~a\n" ssl-available?)) + 'append)) + + diff --git a/collects/tests/mzscheme/embed-me7.ss b/collects/tests/mzscheme/embed-me7.ss new file mode 100644 index 0000000000..48942b7ad8 --- /dev/null +++ b/collects/tests/mzscheme/embed-me7.ss @@ -0,0 +1,15 @@ +(module embed-me7 mzscheme + (require (lib "plot.ss" "plot") + (lib "mred.ss" "mred") + (lib "class.ss")) + + (define img (plot (line (lambda (x) x)))) + + (define e (new text%)) + + (send e insert img) + + (with-output-to-file "stdout" + (lambda () + (printf "plotted\n")) + 'append)) diff --git a/collects/tests/mzscheme/embed-me8.c b/collects/tests/mzscheme/embed-me8.c new file mode 100644 index 0000000000..c4fda30513 --- /dev/null +++ b/collects/tests/mzscheme/embed-me8.c @@ -0,0 +1,31 @@ +#include "escheme.h" + +Scheme_Object *ex(int argc, Scheme_Object **argv) +{ + return scheme_make_utf8_string("Hello, world!"); +} + +Scheme_Object *scheme_reload(Scheme_Env *env) +{ + Scheme_Env *menv; + + menv = scheme_primitive_module(scheme_intern_symbol("embed-me8"), + env); + + scheme_add_global("ex", scheme_make_prim_w_arity(ex, "ex", 0, 0), menv); + + scheme_finish_primitive_module(menv); + + return scheme_void; +} + +Scheme_Object *scheme_initialize(Scheme_Env *env) +{ + /* First load is same as every load: */ + return scheme_reload(env); +} + +Scheme_Object *scheme_module_name() +{ + return scheme_intern_symbol("embed-me8"); +} diff --git a/collects/tests/mzscheme/embed-me9.ss b/collects/tests/mzscheme/embed-me9.ss new file mode 100644 index 0000000000..877eed97de --- /dev/null +++ b/collects/tests/mzscheme/embed-me9.ss @@ -0,0 +1,6 @@ +(module embed-me9 mzscheme + (require "embed-me8.ss") + (with-output-to-file "stdout" + (lambda () + (printf "~a\n" (ex))) + 'append)) diff --git a/collects/tests/mzscheme/embed.ss b/collects/tests/mzscheme/embed.ss index ac38462f3d..9ab5ff962b 100644 --- a/collects/tests/mzscheme/embed.ss +++ b/collects/tests/mzscheme/embed.ss @@ -4,33 +4,52 @@ (Section 'embed) (require (lib "embed.ss" "compiler") - (lib "process.ss")) + (lib "file.ss") + (lib "process.ss") + (lib "distribute.ss" "compiler")) + +(define (mk-dest-bin mred?) + (case (system-type) + [(windows) "e.exe"] + [(unix) "e"] + [(macosx) (if mred? + "e.app" + "e")])) (define (mk-dest mred?) (build-path (find-system-path 'temp-dir) - (case (system-type) - [(windows) "e.exe"] - [(unix) "e"] - [(macosx) (if mred? - "e.app" - "e")]))) + (mk-dest-bin mred?))) (define mz-dest (mk-dest #f)) (define mr-dest (mk-dest #t)) +(define dist-dir (build-path (find-system-path 'temp-dir) + "e-dist")) +(define dist-mz-exe (build-path + (case (system-type) + [(windows) 'same] + [else "bin"]) + (mk-dest-bin #f))) +(define dist-mred-exe (build-path + (case (system-type) + [(windows macosx) 'same] + [else "bin"]) + (mk-dest-bin #t))) + (define (prepare exe src) (printf "Making ~a with ~a...~n" exe src) (when (file-exists? exe) (delete-file exe))) -(define (try-exe exe expect mred?) +(define (try-one-exe exe expect mred?) + (printf "Running ~a\n" exe) (let ([plthome (getenv "PLTHOME")] [collects (getenv "PLTCOLLECTS")]) ;; Try to hide usual collections: (when plthome - (putenv "PLTHOME" (path->string (find-system-path 'temp-dir)))) + (putenv "PLTHOME" (path->string (build-path (find-system-path 'temp-dir) "NOPE")))) (when collects - (putenv "PLTCOLLECTS" (path->string (find-system-path 'temp-dir)))) + (putenv "PLTCOLLECTS" (path->string (build-path (find-system-path 'temp-dir) "NOPE")))) ;; Execute: (parameterize ([current-directory (find-system-path 'temp-dir)]) (when (file-exists? "stdout") @@ -47,6 +66,24 @@ (test expect with-input-from-file (build-path (find-system-path 'temp-dir) "stdout") (lambda () (read-string 5000))))) +(define try-exe + (case-lambda + [(exe expect mred?) + (try-exe exe expect mred? void)] + [(exe expect mred? dist-hook . collects) + (try-one-exe exe expect mred?) + ;; Build a distirbution directory, and try that, too: + (when (directory-exists? dist-dir) + (delete-directory/files dist-dir)) + (assemble-distribution dist-dir (list exe) #:copy-collects collects) + (dist-hook) + (try-one-exe (build-path dist-dir + (if mred? + dist-mred-exe + dist-mz-exe)) + expect mred?) + (delete-directory/files dist-dir)])) + (define (mz-tests mred?) (define dest (if mred? mr-dest mz-dest)) (define (flags s) @@ -161,19 +198,22 @@ (mz-tests #f) (mz-tests #t) -(prepare mr-dest "embed-me5.ss") -(make-embedding-executable - mr-dest #t #f - `((#t (lib "embed-me5.ss" "tests" "mzscheme"))) - null - null - `("-ZmvqL" "embed-me5.ss" "tests/mzscheme")) -(try-exe mr-dest "This is 5: #\n" #t) +(begin + (prepare mr-dest "embed-me5.ss") + (make-embedding-executable + mr-dest #t #f + `((#t (lib "embed-me5.ss" "tests" "mzscheme"))) + null + null + `("-ZmvqL" "embed-me5.ss" "tests/mzscheme")) + (try-exe mr-dest "This is 5: #\n" #t)) ;; Try the mzc interface: (require (lib "dirs.ss" "setup") (lib "file.ss")) -(define mzc (build-path (find-console-bin-dir) "mzc")) +(define mzc (build-path (find-console-bin-dir) (if (eq? 'windows (system-type)) + "mzc.exe" + "mzc"))) (define (mzc-tests mred?) (parameterize ([current-directory (find-system-path 'temp-dir)]) @@ -206,7 +246,8 @@ "--collects-path" (path->string (find-collects-dir)) (path->string (build-path (collection-path "tests" "mzscheme") "embed-me6.ss"))) - (try-exe (mk-dest mred?) "This is 6\n#t\n" mred?) + ;; Don't try a distribution for this one: + (try-one-exe (mk-dest mred?) "This is 6\n#t\n" mred?) ;; Try --collects-dest mode (system* mzc @@ -216,7 +257,7 @@ "--collects-dest" "cts" "--collects-path" "cts" (path->string (build-path (collection-path "tests" "mzscheme") "embed-me6.ss"))) - (try-exe (mk-dest mred?) "This is 6\n#t\n" mred?) + (try-exe (mk-dest mred?) "This is 6\n#t\n" mred? void "cts") ; <- cts copied to distribution (delete-directory/files "cts") (try-exe (mk-dest mred?) "This is 6\nno etc.ss\n" mred?) @@ -225,7 +266,65 @@ (mzc-tests #t) (mzc-tests #f) -;; One MrEd-specific test with mzc: +(require (lib "file.ss" "dynext")) +(define (extension-test mred?) + (parameterize ([current-directory (find-system-path 'temp-dir)]) + + (define obj-file + (build-path (find-system-path 'temp-dir) (append-object-suffix "embed-me8"))) + + (define ext-base-dir + (build-path (find-system-path 'temp-dir) + "compiled")) + + (define ext-dir + (build-path ext-base-dir + "native" + (system-library-subpath))) + + (define ext-file + (build-path ext-dir (append-extension-suffix "embed-me8"))) + + (define ss-file + (build-path (find-system-path 'temp-dir) "embed-me9.ss")) + + (make-directory* ext-dir) + + (system* mzc + "--cc" + "-d" (path->string (path-only obj-file)) + (path->string (build-path (collection-path "tests" "mzscheme") "embed-me8.c"))) + (system* mzc + "--ld" + (path->string ext-file) + (path->string obj-file)) + + (when (file-exists? ss-file) + (delete-file ss-file)) + (copy-file (build-path (collection-path "tests" "mzscheme") "embed-me9.ss") + ss-file) + + (system* mzc + (if mred? "--gui-exe" "--exe") + (path->string (mk-dest mred?)) + (path->string ss-file)) + + (delete-file ss-file) + + (try-exe (mk-dest mred?) "Hello, world!\n" mred? (lambda () + (delete-directory/files ext-base-dir))) + + ;; openssl, which needs extra binaries under Windows + (system* mzc + (if mred? "--gui-exe" "--exe") + (path->string (mk-dest mred?)) + (path->string (build-path (collection-path "tests" "mzscheme") "embed-me10.ss"))) + (try-exe (mk-dest mred?) "#t\n" mred?))) + +(extension-test #f) +(extension-test #t) + +;; A MrEd-specific test with mzc: (parameterize ([current-directory (find-system-path 'temp-dir)]) (system* mzc "--gui-exe" @@ -233,6 +332,19 @@ (path->string (build-path (collection-path "tests" "mzscheme") "embed-me5.ss"))) (try-exe (mk-dest #t) "This is 5: #\n" #t)) +;; Another MrEd-specific: try embedding plot, which has extra DLLs and font files: +(parameterize ([current-directory (find-system-path 'temp-dir)]) + (define direct (build-path (find-system-path 'temp-dir) "direct.ps")) + (system* (build-path (find-console-bin-dir) "mred") + "-qu" + (path->string (build-path (collection-path "tests" "mzscheme") "embed-me7.ss")) + (path->string direct)) + + (system* mzc + "--gui-exe" + (path->string (mk-dest #t)) + (path->string (build-path (collection-path "tests" "mzscheme") "embed-me7.ss"))) + (try-exe (mk-dest #t) "plotted\n" #t)) (report-errs) diff --git a/collects/tests/mzscheme/module.ss b/collects/tests/mzscheme/module.ss index ef50fc3a8b..62231e5183 100644 --- a/collects/tests/mzscheme/module.ss +++ b/collects/tests/mzscheme/module.ss @@ -284,8 +284,8 @@ (lambda () (write `(module tmp2 mzscheme (require ,f1)))) 'truncate/replace) - (err/rt-test (dynamic-require f1 #f) exn:fail-cycle?) - (err/rt-test (dynamic-require f2 #f) exn:fail-cycle?) + (err/rt-test (dynamic-require (build-path (current-directory) f1) #f) exn:fail-cycle?) + (err/rt-test (dynamic-require (build-path (current-directory) f2) #f) exn:fail-cycle?) (delete-file f1) (delete-file f2)) diff --git a/doc/release-notes/mred/HISTORY b/doc/release-notes/mred/HISTORY index cf5dda2de3..735d348c48 100644 --- a/doc/release-notes/mred/HISTORY +++ b/doc/release-notes/mred/HISTORY @@ -1,8 +1,14 @@ +Version 369.10 + +Improved the disabled appearance of some controls under Mac OS X + + Version 369.9 -Added use-background-style and background-style-used? methods +Added use-style-background and style-background-used? methods to editor-snip%; changes the editor-snip WXME format + Version 369.6 WXME file format changed to include a #reader() prefix @@ -1229,7 +1235,7 @@ wx:the-snip-class-list was replaced by (wx:get-the-snip-class-list) wx:the-buffer-data-class-list was replaced by (wx:get-the-buffer-data-class-list) Added transparent text backing for editor text Added wx:dc% try-colour method -wx:window% capture-mode, release-mouse, and make-modal no longer supported +wx:window% capture-mouse, release-mouse, and make-modal no longer supported Modal dialogs can be used instead of make-modal (modal is specified through the constructor). There is currently no replacement for capture-mouse and release-mouse, but a replacement is diff --git a/doc/release-notes/mzscheme/HISTORY b/doc/release-notes/mzscheme/HISTORY index e458d8638c..397a39ef27 100644 --- a/doc/release-notes/mzscheme/HISTORY +++ b/doc/release-notes/mzscheme/HISTORY @@ -1,3 +1,9 @@ +Version 369.10 +Added parameterize* +Added module-path-index-resolve +Fixed mzc --exe to work with C-implemented extension modules +Added runtime-paths.ss MzLib library to cooperate with mzc --exe + Version 369.9 Module top-level enforces initial categorization of expressions versus other forms diff --git a/src/mzscheme/src/cstartup.inc b/src/mzscheme/src/cstartup.inc index 7644e132ce..d6e3af1638 100644 --- a/src/mzscheme/src/cstartup.inc +++ b/src/mzscheme/src/cstartup.inc @@ -1,2125 +1,2191 @@ { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,22,0,0,0,1,0,0,3,0,15,0,25,0, -37,0,47,0,57,0,65,0,73,0,83,0,95,0,110,0,124,0,132,0,142, -0,153,0,165,0,180,0,185,0,193,0,34,1,110,1,0,0,36,8,0,0, -29,11,11,71,105,100,101,110,116,105,102,105,101,114,63,69,115,116,120,45,110, -117,108,108,63,71,115,116,120,45,110,117,108,108,47,35,102,69,115,116,120,45, -112,97,105,114,63,69,115,116,120,45,108,105,115,116,63,67,115,116,120,45,99, -97,114,67,115,116,120,45,99,100,114,69,115,116,120,45,62,108,105,115,116,71, -115,116,120,45,118,101,99,116,111,114,63,74,115,116,120,45,118,101,99,116,111, -114,45,114,101,102,73,115,116,120,45,99,104,101,99,107,47,101,115,99,67,99, -111,110,115,47,35,102,69,97,112,112,101,110,100,47,35,102,70,115,116,120,45, -114,111,116,97,116,101,71,115,116,120,45,114,111,116,97,116,101,42,74,115,112, -108,105,116,45,115,116,120,45,108,105,115,116,64,108,111,111,112,0,6,45,105, -110,102,46,48,32,20,89,162,8,100,35,44,2,18,222,28,248,22,63,193,11, -28,248,22,56,193,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,193, -27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,193,248,2,20,248,22, -59,194,28,248,22,149,3,193,248,22,159,3,193,11,28,248,22,149,3,193,248, -22,159,3,193,11,28,248,22,149,3,193,248,22,159,3,193,11,32,21,89,162, -8,64,36,49,2,18,222,28,248,22,63,194,9,28,248,22,56,194,249,22,57, -248,22,58,196,27,248,22,59,197,28,248,22,63,193,9,28,248,22,56,193,249, -22,57,248,22,58,195,249,2,21,199,248,22,59,197,28,248,22,149,3,193,195, -12,28,248,22,149,3,194,192,12,159,34,20,100,159,34,16,1,20,24,65,98, -101,103,105,110,16,0,83,158,40,20,97,114,65,35,37,115,116,120,2,1,10, -10,10,34,80,158,34,34,20,100,159,36,16,16,30,2,1,2,2,193,30,2, -1,2,3,193,30,2,1,2,4,193,30,2,1,2,5,193,30,2,1,2,6, -193,30,2,1,2,7,193,30,2,1,2,8,193,30,2,1,2,9,193,30,2, -1,2,10,193,30,2,1,2,11,193,30,2,1,2,12,193,30,2,1,2,13, -193,30,2,1,2,14,193,30,2,1,2,15,193,30,2,1,2,16,193,30,2, -1,2,17,193,16,0,11,11,16,0,34,11,16,16,2,14,2,13,2,2,2, -17,2,9,2,7,2,8,2,12,2,6,2,4,2,3,2,5,2,15,2,16, -2,11,2,10,16,16,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11, -11,16,16,2,14,2,13,2,2,2,17,2,9,2,7,2,8,2,12,2,6, -2,4,2,3,2,5,2,15,2,16,2,11,2,10,50,50,9,110,83,158,34, -16,2,89,162,8,64,37,57,2,18,223,0,28,28,248,22,56,196,10,28,248, -22,149,3,196,248,22,56,248,22,153,3,197,11,91,159,37,11,90,161,37,34, -11,27,28,248,22,56,200,248,22,59,200,248,22,59,248,22,153,3,201,28,28, -248,22,56,193,10,28,248,22,149,3,193,248,22,56,248,22,153,3,194,11,91, -159,37,11,90,161,37,34,11,250,80,159,44,51,35,203,204,28,248,22,56,199, -248,22,59,199,248,22,59,248,22,153,3,200,28,249,22,189,2,196,202,250,22, -7,9,198,248,22,177,2,198,250,22,7,249,22,57,28,248,22,56,201,248,22, -58,201,248,22,58,248,22,153,3,202,197,196,197,250,22,7,9,195,28,201,28, -28,248,22,63,196,10,28,248,22,149,3,196,248,22,63,248,22,153,3,197,11, -34,2,19,28,28,248,22,63,196,10,28,248,22,149,3,196,248,22,63,248,22, -153,3,197,11,2,19,35,28,249,22,189,2,196,198,250,22,7,9,201,248,22, -177,2,198,250,22,7,249,22,57,28,248,22,56,204,248,22,58,204,248,22,58, -248,22,153,3,205,197,196,197,250,22,7,9,198,28,197,28,28,248,22,63,199, -10,28,248,22,149,3,199,248,22,63,248,22,153,3,200,11,34,2,19,28,28, -248,22,63,199,10,28,248,22,149,3,199,248,22,63,248,22,153,3,200,11,2, -19,35,80,159,34,51,35,83,158,34,16,2,89,162,8,100,35,50,2,18,223, -0,28,248,22,56,194,27,248,22,59,195,28,248,22,56,193,27,248,22,59,194, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,22,0,0,0,1,0,0,3,0,15,0,25, +0,37,0,47,0,57,0,65,0,73,0,83,0,95,0,110,0,124,0,132,0, +142,0,153,0,165,0,180,0,185,0,193,0,34,1,110,1,0,0,36,8,0, +0,29,11,11,71,105,100,101,110,116,105,102,105,101,114,63,69,115,116,120,45, +110,117,108,108,63,71,115,116,120,45,110,117,108,108,47,35,102,69,115,116,120, +45,112,97,105,114,63,69,115,116,120,45,108,105,115,116,63,67,115,116,120,45, +99,97,114,67,115,116,120,45,99,100,114,69,115,116,120,45,62,108,105,115,116, +71,115,116,120,45,118,101,99,116,111,114,63,74,115,116,120,45,118,101,99,116, +111,114,45,114,101,102,73,115,116,120,45,99,104,101,99,107,47,101,115,99,67, +99,111,110,115,47,35,102,69,97,112,112,101,110,100,47,35,102,70,115,116,120, +45,114,111,116,97,116,101,71,115,116,120,45,114,111,116,97,116,101,42,74,115, +112,108,105,116,45,115,116,120,45,108,105,115,116,64,108,111,111,112,0,6,45, +105,110,102,46,48,32,20,89,162,8,100,35,44,2,18,222,28,248,22,63,193, +11,28,248,22,56,193,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56, +193,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,193,248,2,20,248, +22,59,194,28,248,22,149,3,193,248,22,159,3,193,11,28,248,22,149,3,193, +248,22,159,3,193,11,28,248,22,149,3,193,248,22,159,3,193,11,32,21,89, +162,8,64,36,49,2,18,222,28,248,22,63,194,9,28,248,22,56,194,249,22, +57,248,22,58,196,27,248,22,59,197,28,248,22,63,193,9,28,248,22,56,193, +249,22,57,248,22,58,195,249,2,21,199,248,22,59,197,28,248,22,149,3,193, +195,12,28,248,22,149,3,194,192,12,159,34,20,100,159,34,16,1,20,24,65, +98,101,103,105,110,16,0,83,158,40,20,97,114,65,35,37,115,116,120,2,1, +10,10,10,34,80,158,34,34,20,100,159,36,16,16,30,2,1,2,2,193,30, +2,1,2,3,193,30,2,1,2,4,193,30,2,1,2,5,193,30,2,1,2, +6,193,30,2,1,2,7,193,30,2,1,2,8,193,30,2,1,2,9,193,30, +2,1,2,10,193,30,2,1,2,11,193,30,2,1,2,12,193,30,2,1,2, +13,193,30,2,1,2,14,193,30,2,1,2,15,193,30,2,1,2,16,193,30, +2,1,2,17,193,16,0,11,11,16,0,34,11,16,16,2,14,2,13,2,2, +2,17,2,9,2,7,2,8,2,12,2,6,2,4,2,3,2,5,2,15,2, +16,2,11,2,10,16,16,11,11,11,11,11,11,11,11,11,11,11,11,11,11, +11,11,16,16,2,14,2,13,2,2,2,17,2,9,2,7,2,8,2,12,2, +6,2,4,2,3,2,5,2,15,2,16,2,11,2,10,50,50,9,110,83,158, +34,16,2,89,162,8,64,37,57,2,18,223,0,28,28,248,22,56,196,10,28, +248,22,149,3,196,248,22,56,248,22,153,3,197,11,91,159,37,11,90,161,37, +34,11,27,28,248,22,56,200,248,22,59,200,248,22,59,248,22,153,3,201,28, +28,248,22,56,193,10,28,248,22,149,3,193,248,22,56,248,22,153,3,194,11, +91,159,37,11,90,161,37,34,11,250,80,159,44,51,35,203,204,28,248,22,56, +199,248,22,59,199,248,22,59,248,22,153,3,200,28,249,22,189,2,196,202,250, +22,7,9,198,248,22,177,2,198,250,22,7,249,22,57,28,248,22,56,201,248, +22,58,201,248,22,58,248,22,153,3,202,197,196,197,250,22,7,9,195,28,201, +28,28,248,22,63,196,10,28,248,22,149,3,196,248,22,63,248,22,153,3,197, +11,34,2,19,28,28,248,22,63,196,10,28,248,22,149,3,196,248,22,63,248, +22,153,3,197,11,2,19,35,28,249,22,189,2,196,198,250,22,7,9,201,248, +22,177,2,198,250,22,7,249,22,57,28,248,22,56,204,248,22,58,204,248,22, +58,248,22,153,3,205,197,196,197,250,22,7,9,198,28,197,28,28,248,22,63, +199,10,28,248,22,149,3,199,248,22,63,248,22,153,3,200,11,34,2,19,28, +28,248,22,63,199,10,28,248,22,149,3,199,248,22,63,248,22,153,3,200,11, +2,19,35,80,159,34,51,35,83,158,34,16,2,89,162,8,100,35,50,2,18, +223,0,28,248,22,56,194,27,248,22,59,195,28,248,22,56,193,27,248,22,59, +194,28,248,22,56,193,27,248,22,59,194,28,248,22,56,193,27,248,22,59,194, 28,248,22,56,193,27,248,22,59,194,28,248,22,56,193,27,248,22,59,194,28, -248,22,56,193,27,248,22,59,194,28,248,22,56,193,27,248,22,59,194,28,248, -22,56,193,27,248,22,59,194,28,248,22,56,193,248,80,159,42,50,35,248,22, -59,194,248,80,159,42,38,35,193,248,80,159,41,38,35,193,248,80,159,40,38, -35,193,248,80,159,39,38,35,193,248,80,159,38,38,35,193,248,80,159,37,38, -35,193,248,80,159,36,38,35,193,248,80,159,35,38,35,194,80,159,34,50,35, -83,158,34,16,2,32,0,89,162,34,35,42,2,2,222,28,248,22,149,3,193, -248,22,47,248,22,153,3,194,11,80,159,34,34,35,83,158,34,16,2,32,0, -89,162,34,35,42,2,3,222,28,248,22,63,193,10,28,248,22,149,3,193,248, -22,63,248,22,153,3,194,11,80,159,34,35,35,83,158,34,16,2,32,0,89, -162,34,35,42,2,4,222,28,248,22,63,193,9,28,248,22,149,3,193,28,248, -22,63,248,22,153,3,194,9,11,11,80,159,34,36,35,83,158,34,16,2,32, -0,89,162,34,35,42,2,5,222,28,248,22,56,193,10,28,248,22,149,3,193, -248,22,56,248,22,153,3,194,11,80,159,34,37,35,83,158,34,16,2,89,162, -34,35,51,2,6,223,0,28,248,22,64,194,10,28,248,22,149,3,194,28,248, -22,64,248,22,153,3,195,10,27,248,22,153,3,195,28,248,22,56,193,27,248, +248,22,56,193,27,248,22,59,194,28,248,22,56,193,248,80,159,42,50,35,248, +22,59,194,248,80,159,42,38,35,193,248,80,159,41,38,35,193,248,80,159,40, +38,35,193,248,80,159,39,38,35,193,248,80,159,38,38,35,193,248,80,159,37, +38,35,193,248,80,159,36,38,35,193,248,80,159,35,38,35,194,80,159,34,50, +35,83,158,34,16,2,32,0,89,162,34,35,42,2,2,222,28,248,22,149,3, +193,248,22,47,248,22,153,3,194,11,80,159,34,34,35,83,158,34,16,2,32, +0,89,162,34,35,42,2,3,222,28,248,22,63,193,10,28,248,22,149,3,193, +248,22,63,248,22,153,3,194,11,80,159,34,35,35,83,158,34,16,2,32,0, +89,162,34,35,42,2,4,222,28,248,22,63,193,9,28,248,22,149,3,193,28, +248,22,63,248,22,153,3,194,9,11,11,80,159,34,36,35,83,158,34,16,2, +32,0,89,162,34,35,42,2,5,222,28,248,22,56,193,10,28,248,22,149,3, +193,248,22,56,248,22,153,3,194,11,80,159,34,37,35,83,158,34,16,2,89, +162,34,35,51,2,6,223,0,28,248,22,64,194,10,28,248,22,149,3,194,28, +248,22,64,248,22,153,3,195,10,27,248,22,153,3,195,28,248,22,56,193,27, +248,22,59,194,28,248,22,56,193,27,248,22,59,194,28,248,22,56,193,27,248, 22,59,194,28,248,22,56,193,27,248,22,59,194,28,248,22,56,193,27,248,22, -59,194,28,248,22,56,193,27,248,22,59,194,28,248,22,56,193,27,248,22,59, -194,28,248,22,56,193,27,248,22,59,194,28,248,22,56,193,248,80,159,42,50, -35,248,22,59,194,248,80,159,42,38,35,193,248,80,159,41,38,35,193,248,80, -159,40,38,35,193,248,80,159,39,38,35,193,248,80,159,38,38,35,193,248,80, -159,37,38,35,193,248,80,159,36,38,35,193,28,248,22,56,194,248,80,159,35, -38,35,248,22,59,195,11,80,159,34,38,35,83,158,34,16,2,32,0,89,162, -34,35,42,2,7,222,28,248,22,56,193,248,22,58,193,248,22,58,248,22,153, -3,194,80,159,34,39,35,83,158,34,16,2,32,0,89,162,34,35,42,2,8, -222,28,248,22,56,193,248,22,59,193,248,22,59,248,22,153,3,194,80,159,34, -40,35,83,158,34,16,2,32,0,89,162,34,35,47,2,9,222,28,248,22,149, -3,193,248,22,159,3,193,27,28,248,22,63,194,11,28,248,22,56,194,27,248, -22,59,195,28,248,22,63,193,11,28,248,22,56,193,248,2,20,248,22,59,194, -28,248,22,149,3,193,248,22,159,3,193,11,28,248,22,149,3,194,248,22,159, -3,194,11,28,192,28,248,22,63,194,9,28,248,22,56,194,249,22,57,248,22, -58,196,249,2,21,196,248,22,59,198,28,248,22,149,3,194,192,12,193,80,159, -34,41,35,83,158,34,16,2,32,0,89,162,34,36,45,2,10,222,28,248,22, -149,3,193,28,248,22,166,7,248,22,153,3,194,28,193,249,22,188,2,195,248, -22,170,7,248,22,153,3,196,10,11,11,80,159,34,42,35,83,158,34,16,2, -32,0,89,162,34,36,44,2,11,222,249,22,171,7,248,22,153,3,195,195,80, -159,34,43,35,83,158,34,16,2,32,0,89,162,34,36,42,2,12,222,28,192, -192,248,194,11,80,159,34,44,35,83,158,34,16,2,32,0,89,162,34,36,43, -2,13,222,28,193,249,22,57,194,195,11,80,159,34,45,35,83,158,34,16,2, -32,0,89,162,34,36,43,2,14,222,28,192,28,193,28,248,22,63,194,192,249, -22,71,194,195,11,11,80,159,34,46,35,83,158,34,16,2,32,0,89,162,34, -35,43,2,15,222,250,22,1,22,2,22,65,195,80,159,34,47,35,83,158,34, -16,2,32,0,89,162,34,35,45,2,16,222,249,22,1,22,67,250,22,1,22, -2,22,65,197,80,159,34,48,35,83,158,34,16,2,89,162,34,37,57,2,17, -223,0,91,159,37,11,90,161,37,34,11,28,28,248,22,56,197,10,28,248,22, -149,3,197,248,22,56,248,22,153,3,198,11,91,159,37,11,90,161,37,34,11, -250,80,159,43,51,35,203,204,28,248,22,56,203,248,22,59,203,248,22,59,248, -22,153,3,204,28,249,22,189,2,196,202,250,22,7,9,202,248,22,177,2,198, -250,22,7,249,22,57,28,248,22,56,205,248,22,58,205,248,22,58,248,22,153, -3,206,197,196,197,250,22,7,9,199,28,201,28,28,248,22,63,200,10,28,248, -22,149,3,200,248,22,63,248,22,153,3,201,11,34,2,19,28,28,248,22,63, -200,10,28,248,22,149,3,200,248,22,63,248,22,153,3,201,11,2,19,35,250, -22,7,195,196,249,22,188,2,199,202,80,159,34,49,35,93,68,35,37,107,101, -114,110,101,108,9,0}; - EVAL_ONE_SIZED_STR((char *)expr, 2147); +59,194,28,248,22,56,193,27,248,22,59,194,28,248,22,56,193,248,80,159,42, +50,35,248,22,59,194,248,80,159,42,38,35,193,248,80,159,41,38,35,193,248, +80,159,40,38,35,193,248,80,159,39,38,35,193,248,80,159,38,38,35,193,248, +80,159,37,38,35,193,248,80,159,36,38,35,193,28,248,22,56,194,248,80,159, +35,38,35,248,22,59,195,11,80,159,34,38,35,83,158,34,16,2,32,0,89, +162,34,35,42,2,7,222,28,248,22,56,193,248,22,58,193,248,22,58,248,22, +153,3,194,80,159,34,39,35,83,158,34,16,2,32,0,89,162,34,35,42,2, +8,222,28,248,22,56,193,248,22,59,193,248,22,59,248,22,153,3,194,80,159, +34,40,35,83,158,34,16,2,32,0,89,162,34,35,47,2,9,222,28,248,22, +149,3,193,248,22,159,3,193,27,28,248,22,63,194,11,28,248,22,56,194,27, +248,22,59,195,28,248,22,63,193,11,28,248,22,56,193,248,2,20,248,22,59, +194,28,248,22,149,3,193,248,22,159,3,193,11,28,248,22,149,3,194,248,22, +159,3,194,11,28,192,28,248,22,63,194,9,28,248,22,56,194,249,22,57,248, +22,58,196,249,2,21,196,248,22,59,198,28,248,22,149,3,194,192,12,193,80, +159,34,41,35,83,158,34,16,2,32,0,89,162,34,36,45,2,10,222,28,248, +22,149,3,193,28,248,22,167,7,248,22,153,3,194,28,193,249,22,188,2,195, +248,22,171,7,248,22,153,3,196,10,11,11,80,159,34,42,35,83,158,34,16, +2,32,0,89,162,34,36,44,2,11,222,249,22,172,7,248,22,153,3,195,195, +80,159,34,43,35,83,158,34,16,2,32,0,89,162,34,36,42,2,12,222,28, +192,192,248,194,11,80,159,34,44,35,83,158,34,16,2,32,0,89,162,34,36, +43,2,13,222,28,193,249,22,57,194,195,11,80,159,34,45,35,83,158,34,16, +2,32,0,89,162,34,36,43,2,14,222,28,192,28,193,28,248,22,63,194,192, +249,22,71,194,195,11,11,80,159,34,46,35,83,158,34,16,2,32,0,89,162, +34,35,43,2,15,222,250,22,1,22,2,22,65,195,80,159,34,47,35,83,158, +34,16,2,32,0,89,162,34,35,45,2,16,222,249,22,1,22,67,250,22,1, +22,2,22,65,197,80,159,34,48,35,83,158,34,16,2,89,162,34,37,57,2, +17,223,0,91,159,37,11,90,161,37,34,11,28,28,248,22,56,197,10,28,248, +22,149,3,197,248,22,56,248,22,153,3,198,11,91,159,37,11,90,161,37,34, +11,250,80,159,43,51,35,203,204,28,248,22,56,203,248,22,59,203,248,22,59, +248,22,153,3,204,28,249,22,189,2,196,202,250,22,7,9,202,248,22,177,2, +198,250,22,7,249,22,57,28,248,22,56,205,248,22,58,205,248,22,58,248,22, +153,3,206,197,196,197,250,22,7,9,199,28,201,28,28,248,22,63,200,10,28, +248,22,149,3,200,248,22,63,248,22,153,3,201,11,34,2,19,28,28,248,22, +63,200,10,28,248,22,149,3,200,248,22,63,248,22,153,3,201,11,2,19,35, +250,22,7,195,196,249,22,188,2,199,202,80,159,34,49,35,93,68,35,37,107, +101,114,110,101,108,9,0}; + EVAL_ONE_SIZED_STR((char *)expr, 2148); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,107,0,0,0,1,0,0,3,0,13,0,16,0, -23,0,28,0,32,0,43,0,47,0,53,0,65,0,76,0,85,0,88,0,94, -0,105,0,119,0,129,0,133,0,143,0,153,0,163,0,166,0,174,0,191,0, -199,0,210,0,217,0,222,0,232,0,234,0,244,0,250,0,255,0,9,1,15, -1,25,1,35,1,37,1,47,1,49,1,52,1,60,1,69,1,148,1,160,1, -172,1,186,1,200,1,214,1,220,1,232,1,10,2,17,2,23,2,29,2,57, -2,224,2,230,2,241,2,1,3,40,3,80,3,110,3,126,3,133,3,139,3, -145,3,151,3,173,3,219,3,244,3,249,3,255,3,22,4,28,4,34,4,40, -4,46,4,66,4,82,4,98,4,114,4,133,4,157,4,180,4,199,4,227,4, -16,5,26,5,92,5,149,5,155,5,210,5,215,5,221,5,227,5,232,5,238, -5,254,5,14,6,30,6,45,6,76,6,82,6,88,6,94,6,0,0,52,19, -0,0,29,11,11,69,113,113,45,97,112,112,101,110,100,62,111,114,66,108,101, -116,114,101,99,64,108,101,116,42,63,97,110,100,70,113,117,97,115,105,113,117, -111,116,101,63,108,101,116,65,99,104,101,99,107,71,105,100,45,105,110,45,108, -105,115,116,63,70,115,116,120,45,50,108,105,115,116,63,68,115,116,120,45,99, -97,100,114,62,103,111,65,35,37,115,116,120,70,108,97,109,98,100,97,45,115, -116,120,73,108,101,116,114,101,99,45,118,97,108,117,101,115,3,1,7,101,110, -118,50,53,48,57,63,115,116,120,3,1,7,101,110,118,50,53,49,49,3,1, -7,101,110,118,50,53,49,53,3,1,7,101,110,118,50,53,50,50,62,113,113, -67,117,110,113,117,111,116,101,76,117,110,113,117,111,116,101,45,115,112,108,105, -99,105,110,103,67,113,113,45,108,105,115,116,70,97,112,112,108,121,45,99,111, -110,115,66,110,111,114,109,97,108,64,104,101,114,101,3,1,7,101,110,118,50, -53,51,56,61,120,3,1,7,101,110,118,50,53,52,49,65,113,117,111,116,101, -64,108,105,115,116,3,1,7,101,110,118,50,53,52,50,65,108,105,115,116,42, -3,1,7,101,110,118,50,53,52,48,3,1,7,101,110,118,50,53,52,52,61, -108,3,1,7,101,110,118,50,53,53,54,61,101,62,105,102,67,111,114,45,112, -97,114,116,68,35,37,107,101,114,110,101,108,32,44,89,162,34,36,46,2,10, -222,28,248,22,63,194,11,28,249,22,164,3,194,248,22,58,196,10,27,248,22, -59,195,28,248,22,63,193,11,28,249,22,164,3,195,248,22,58,195,10,27,248, -22,59,194,28,248,22,63,193,11,28,249,22,164,3,196,248,22,58,195,10,249, -2,44,196,248,22,59,195,30,2,14,67,115,116,120,45,99,97,114,5,30,2, -14,67,115,116,120,45,99,100,114,6,30,2,14,69,115,116,120,45,112,97,105, -114,63,11,30,2,14,69,115,116,120,45,110,117,108,108,63,10,30,2,14,69, -115,116,120,45,108,105,115,116,63,8,95,8,193,11,16,0,97,10,35,11,93, -159,2,14,9,11,16,0,96,10,34,11,16,14,2,6,2,1,2,5,2,1, -2,7,2,1,2,2,2,1,2,4,2,1,2,3,2,1,2,8,2,1,95, -8,52,8,51,8,50,18,158,2,15,8,53,18,158,2,16,8,53,16,6,11, -11,2,15,77,108,101,116,114,101,99,45,118,97,108,117,101,115,45,115,116,120, -2,17,2,17,102,8,52,8,51,8,50,8,56,16,10,11,11,2,18,66,110, -97,109,101,100,63,65,115,116,97,114,63,66,116,97,114,103,101,116,2,19,2, -19,2,19,2,19,16,8,11,11,2,11,2,10,2,12,3,1,7,101,110,118, -50,53,49,52,3,1,7,101,110,118,50,53,49,51,3,1,7,101,110,118,50, -53,49,50,16,8,11,11,2,12,2,10,2,11,2,20,2,20,2,20,16,4, -11,11,64,110,97,109,101,3,1,7,101,110,118,50,53,50,48,16,6,11,11, -68,98,105,110,100,105,110,103,115,64,98,111,100,121,2,21,2,21,16,4,11, -11,72,110,101,119,45,98,105,110,100,105,110,103,115,3,1,7,101,110,118,50, -53,50,51,18,158,2,16,8,57,18,158,66,108,97,109,98,100,97,8,57,16, -4,11,11,2,13,3,1,7,101,110,118,50,53,49,48,18,99,70,108,101,116, -45,118,97,108,117,101,115,8,52,8,51,8,50,8,56,8,60,16,4,11,11, -2,18,3,1,7,101,110,118,50,53,51,52,18,99,71,108,101,116,42,45,118, -97,108,117,101,115,8,52,8,51,8,50,8,56,8,60,16,4,11,11,2,18, -3,1,7,101,110,118,50,53,51,53,18,99,2,16,8,52,8,51,8,50,8, -56,8,60,16,4,11,11,2,18,3,1,7,101,110,118,50,53,51,54,30,2, -14,71,105,100,101,110,116,105,102,105,101,114,63,2,95,8,52,8,51,8,50, -18,158,2,28,8,65,18,158,2,23,8,65,18,158,2,24,8,65,16,4,11, -11,67,105,110,45,102,111,114,109,3,1,7,101,110,118,50,53,51,57,16,8, -11,11,2,28,71,117,110,113,117,111,116,101,45,115,116,120,1,20,117,110,113, -117,111,116,101,45,115,112,108,105,99,105,110,103,45,115,116,120,2,29,2,29, -2,29,98,8,52,8,51,8,50,8,70,8,69,16,6,11,11,2,30,63,111, -108,100,2,31,2,31,18,158,9,8,71,18,158,2,32,8,71,98,8,52,8, -51,8,50,8,70,8,69,16,6,11,11,61,97,61,100,2,34,2,34,18,158, -2,33,8,74,18,158,2,33,8,74,18,158,2,35,8,74,18,158,2,35,8, -74,16,4,11,11,65,102,105,114,115,116,3,1,7,101,110,118,50,53,53,49, -16,4,11,11,2,25,3,1,7,101,110,118,50,53,52,53,16,6,11,11,2, -30,65,108,101,118,101,108,2,37,2,37,16,4,11,11,2,22,3,1,7,101, -110,118,50,53,52,51,16,8,11,11,64,102,111,114,109,2,27,2,26,2,36, -2,36,2,36,18,103,2,7,8,52,8,51,8,50,8,70,8,69,8,83,8, -82,8,81,8,80,8,79,16,8,11,11,64,117,113,115,100,65,111,108,100,45, -108,2,38,2,39,2,39,2,39,16,4,11,11,64,114,101,115,116,3,1,7, -101,110,118,50,53,53,52,18,105,2,2,8,52,8,51,8,50,8,70,8,69, -8,83,8,82,8,81,8,80,8,79,8,86,8,85,105,8,52,8,51,8,50, -8,70,8,69,8,83,8,82,8,81,8,80,8,79,8,86,8,85,16,4,11, -11,65,114,101,115,116,120,3,1,7,101,110,118,50,53,53,56,18,158,95,10, -2,32,2,24,8,88,18,104,72,108,105,115,116,45,62,118,101,99,116,111,114, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,107,0,0,0,1,0,0,3,0,13,0,18, +0,22,0,25,0,29,0,40,0,47,0,53,0,65,0,76,0,85,0,88,0, +94,0,105,0,108,0,122,0,130,0,134,0,142,0,150,0,153,0,161,0,178, +0,186,0,197,0,204,0,209,0,217,0,219,0,227,0,233,0,238,0,246,0, +252,0,4,1,12,1,14,1,23,1,25,1,28,1,36,1,45,1,124,1,136, +1,148,1,162,1,176,1,190,1,196,1,208,1,242,1,2,2,8,2,14,2, +42,2,192,2,198,2,209,2,223,2,13,3,60,3,97,3,113,3,129,3,135, +3,141,3,147,3,167,3,213,3,247,3,252,3,2,4,34,4,40,4,46,4, +52,4,58,4,76,4,90,4,106,4,120,4,139,4,172,4,195,4,213,4,250, +4,47,5,57,5,130,5,194,5,200,5,5,6,10,6,16,6,22,6,27,6, +33,6,48,6,63,6,78,6,102,6,141,6,147,6,153,6,159,6,0,0,117, +19,0,0,29,11,11,69,113,113,45,97,112,112,101,110,100,64,108,101,116,42, +63,108,101,116,62,111,114,63,97,110,100,70,113,117,97,115,105,113,117,111,116, +101,66,108,101,116,114,101,99,65,99,104,101,99,107,71,105,100,45,105,110,45, +108,105,115,116,63,70,115,116,120,45,50,108,105,115,116,63,68,115,116,120,45, +99,97,100,114,62,103,111,65,35,37,115,116,120,70,108,97,109,98,100,97,45, +115,116,120,29,11,11,73,108,101,116,114,101,99,45,118,97,108,117,101,115,3, +1,5,101,110,118,53,53,63,115,116,120,3,1,5,101,110,118,53,55,3,1, +5,101,110,118,54,56,62,113,113,67,117,110,113,117,111,116,101,76,117,110,113, +117,111,116,101,45,115,112,108,105,99,105,110,103,67,113,113,45,108,105,115,116, +70,97,112,112,108,121,45,99,111,110,115,66,110,111,114,109,97,108,64,104,101, +114,101,3,1,5,101,110,118,56,52,61,120,3,1,5,101,110,118,56,55,65, +113,117,111,116,101,64,108,105,115,116,3,1,5,101,110,118,56,56,65,108,105, +115,116,42,3,1,5,101,110,118,56,54,3,1,5,101,110,118,57,48,61,108, +3,1,6,101,110,118,49,48,50,61,101,62,105,102,67,111,114,45,112,97,114, +116,68,35,37,107,101,114,110,101,108,32,44,89,162,34,36,46,2,10,222,28, +248,22,63,194,11,28,249,22,164,3,194,248,22,58,196,10,27,248,22,59,195, +28,248,22,63,193,11,28,249,22,164,3,195,248,22,58,195,10,27,248,22,59, +194,28,248,22,63,193,11,28,249,22,164,3,196,248,22,58,195,10,249,2,44, +196,248,22,59,195,30,2,14,67,115,116,120,45,99,97,114,5,30,2,14,67, +115,116,120,45,99,100,114,6,30,2,14,69,115,116,120,45,112,97,105,114,63, +11,30,2,14,69,115,116,120,45,110,117,108,108,63,10,30,2,14,69,115,116, +120,45,108,105,115,116,63,8,95,8,193,11,16,0,97,10,35,11,93,159,2, +14,9,11,16,0,96,10,34,11,16,14,2,2,2,1,2,4,2,1,2,8, +2,1,2,3,2,1,2,5,2,1,2,6,2,1,2,7,2,1,96,13,16, +4,34,2,16,2,1,11,8,52,8,51,8,50,18,158,2,15,8,53,18,158, +2,17,8,53,16,6,11,11,2,15,77,108,101,116,114,101,99,45,118,97,108, +117,101,115,45,115,116,120,2,18,2,18,102,13,16,4,34,2,16,2,1,11, +8,52,8,51,8,50,8,56,16,10,11,11,2,19,66,110,97,109,101,100,63, +65,115,116,97,114,63,66,116,97,114,103,101,116,2,20,2,20,2,20,2,20, +16,8,11,11,2,11,2,10,2,12,3,1,5,101,110,118,54,48,3,1,5, +101,110,118,53,57,3,1,5,101,110,118,53,56,16,4,11,11,64,110,97,109, +101,3,1,5,101,110,118,54,54,16,6,11,11,68,98,105,110,100,105,110,103, +115,64,98,111,100,121,2,21,2,21,16,4,11,11,72,110,101,119,45,98,105, +110,100,105,110,103,115,3,1,5,101,110,118,54,57,18,158,2,17,8,57,18, +158,66,108,97,109,98,100,97,8,57,16,4,11,11,2,13,3,1,5,101,110, +118,53,54,18,100,70,108,101,116,45,118,97,108,117,101,115,13,16,4,34,2, +16,2,1,11,8,52,8,51,8,50,8,56,8,60,16,4,11,11,2,19,3, +1,5,101,110,118,56,48,18,100,71,108,101,116,42,45,118,97,108,117,101,115, +13,16,4,34,2,16,2,1,11,8,52,8,51,8,50,8,56,8,60,16,4, +11,11,2,19,3,1,5,101,110,118,56,49,18,100,2,17,13,16,4,34,2, +16,2,1,11,8,52,8,51,8,50,8,56,8,60,16,4,11,11,2,19,3, +1,5,101,110,118,56,50,30,2,14,71,105,100,101,110,116,105,102,105,101,114, +63,2,96,13,16,4,34,2,16,2,1,11,8,52,8,51,8,50,18,158,2, +28,8,65,18,158,2,23,8,65,18,158,2,24,8,65,16,4,11,11,67,105, +110,45,102,111,114,109,3,1,5,101,110,118,56,53,16,8,11,11,2,28,71, +117,110,113,117,111,116,101,45,115,116,120,1,20,117,110,113,117,111,116,101,45, +115,112,108,105,99,105,110,103,45,115,116,120,2,29,2,29,2,29,99,13,16, +4,34,2,16,2,1,11,8,52,8,51,8,50,8,70,8,69,16,6,11,11, +2,30,63,111,108,100,2,31,2,31,18,158,9,8,71,18,158,2,32,8,71, +99,13,16,4,34,2,16,2,1,11,8,52,8,51,8,50,8,70,8,69,16, +6,11,11,61,97,61,100,2,34,2,34,18,158,2,33,8,74,18,158,2,33, +8,74,18,158,2,35,8,74,18,158,2,35,8,74,16,4,11,11,65,102,105, +114,115,116,3,1,5,101,110,118,57,55,16,4,11,11,2,25,3,1,5,101, +110,118,57,49,16,6,11,11,2,30,65,108,101,118,101,108,2,37,2,37,16, +4,11,11,2,22,3,1,5,101,110,118,56,57,16,8,11,11,64,102,111,114, +109,2,27,2,26,2,36,2,36,2,36,18,104,2,7,13,16,4,34,2,16, +2,1,11,8,52,8,51,8,50,8,70,8,69,8,83,8,82,8,81,8,80, +8,79,16,8,11,11,64,117,113,115,100,65,111,108,100,45,108,2,38,2,39, +2,39,2,39,16,4,11,11,64,114,101,115,116,3,1,6,101,110,118,49,48, +48,18,106,2,2,13,16,4,34,2,16,2,1,11,8,52,8,51,8,50,8, +70,8,69,8,83,8,82,8,81,8,80,8,79,8,86,8,85,106,13,16,4, +34,2,16,2,1,11,8,52,8,51,8,50,8,70,8,69,8,83,8,82,8, +81,8,80,8,79,8,86,8,85,16,4,11,11,65,114,101,115,116,120,3,1, +6,101,110,118,49,48,52,18,158,95,10,2,32,2,24,8,88,18,105,72,108, +105,115,116,45,62,118,101,99,116,111,114,13,16,4,34,2,16,2,1,11,8, +52,8,51,8,50,8,70,8,69,8,83,8,82,8,81,8,80,16,4,11,11, +2,38,3,1,6,101,110,118,49,48,53,16,4,11,11,62,108,50,3,1,6, +101,110,118,49,48,54,18,105,63,98,111,120,13,16,4,34,2,16,2,1,11, 8,52,8,51,8,50,8,70,8,69,8,83,8,82,8,81,8,80,16,4,11, -11,2,38,3,1,7,101,110,118,50,53,53,57,16,4,11,11,62,108,50,3, -1,7,101,110,118,50,53,54,48,18,104,63,98,111,120,8,52,8,51,8,50, -8,70,8,69,8,83,8,82,8,81,8,80,16,4,11,11,61,118,3,1,7, -101,110,118,50,53,54,49,16,4,11,11,62,113,118,3,1,7,101,110,118,50, -53,54,50,18,158,2,28,8,65,98,8,52,8,51,8,50,16,4,11,11,2, -28,3,1,7,101,110,118,50,53,54,52,16,4,11,11,2,30,3,1,7,101, -110,118,50,53,54,53,16,4,11,11,2,40,3,1,7,101,110,118,50,53,54, -54,18,158,10,8,93,18,158,2,41,8,93,18,158,2,6,8,93,18,158,11, -8,93,18,158,2,28,8,65,16,4,11,11,2,40,3,1,7,101,110,118,50, -53,55,48,16,4,11,11,2,30,3,1,7,101,110,118,50,53,54,57,16,4, -11,11,2,28,3,1,7,101,110,118,50,53,54,56,18,99,11,8,52,8,51, -8,50,8,101,8,100,8,99,99,8,52,8,51,8,50,8,101,8,100,8,99, -16,4,11,11,63,116,109,112,3,1,7,101,110,118,50,53,55,49,18,158,2, -8,8,103,18,158,2,41,8,103,18,158,2,3,8,103,159,34,20,100,159,34, -16,1,20,24,65,98,101,103,105,110,16,0,83,158,40,20,97,114,71,35,37, -113,113,45,97,110,100,45,111,114,2,1,10,10,10,34,80,158,34,34,20,100, -159,34,16,1,30,2,1,2,2,193,16,0,11,11,16,1,2,2,35,11,16, -6,2,3,2,4,2,5,2,6,2,7,2,8,16,6,11,11,11,11,11,11, -16,6,2,3,2,4,2,5,2,6,2,7,2,8,34,40,96,16,5,95,2, -8,2,5,2,4,87,98,83,158,34,16,2,89,162,8,64,38,51,2,9,223, -0,28,248,22,63,196,12,27,28,194,248,22,83,197,248,80,158,36,34,248,80, -158,37,34,248,22,58,199,28,28,248,22,63,198,11,28,249,22,164,3,194,248, -22,58,200,10,27,248,22,59,199,28,248,22,63,193,11,28,249,22,164,3,195, -248,22,58,195,10,27,248,22,59,194,28,248,22,63,193,11,28,249,22,164,3, -196,248,22,58,195,10,27,248,22,59,194,28,248,22,63,193,11,28,249,22,164, -3,197,248,22,58,195,10,249,2,44,197,248,22,59,195,251,22,177,8,11,6, -20,20,100,117,112,108,105,99,97,116,101,32,105,100,101,110,116,105,102,105,101, -114,199,196,251,80,159,39,52,35,198,199,248,22,59,201,249,22,57,198,203,80, -159,34,52,35,83,158,34,16,2,89,162,8,64,38,52,2,9,223,0,28,248, -22,63,197,12,27,28,195,248,22,83,198,248,80,158,36,34,248,80,158,37,34, -248,22,58,200,27,250,22,122,198,248,22,153,3,197,9,28,28,248,22,63,193, -11,28,249,22,164,3,195,248,22,58,195,10,27,248,22,59,194,28,248,22,63, -193,11,28,249,22,164,3,196,248,22,58,195,10,27,248,22,59,194,28,248,22, -63,193,11,28,249,22,164,3,197,248,22,58,195,10,27,248,22,59,194,28,248, -22,63,193,11,28,249,22,164,3,198,248,22,58,195,10,249,2,44,198,248,22, -59,195,251,22,177,8,11,6,20,20,100,117,112,108,105,99,97,116,101,32,105, -100,101,110,116,105,102,105,101,114,201,197,87,94,250,22,121,198,248,22,153,3, -197,249,22,57,198,197,251,80,159,40,51,35,199,200,201,248,22,59,203,80,159, -34,51,35,83,158,34,16,2,89,162,8,100,38,55,64,108,111,111,112,223,0, -28,248,22,63,197,9,27,248,22,58,198,249,22,62,28,28,248,80,158,38,36, -195,28,248,80,158,38,36,248,80,158,39,35,196,248,80,158,38,37,248,80,158, -39,35,248,80,158,40,35,197,11,11,28,248,22,47,248,22,153,3,248,80,158, -40,34,197,28,196,249,22,57,248,80,158,40,34,197,248,80,158,40,34,248,80, -158,41,35,198,250,22,152,3,201,249,22,62,249,22,62,248,80,158,45,34,202, -9,248,80,158,43,35,200,197,251,22,177,8,11,6,30,30,98,97,100,32,115, -121,110,116,97,120,32,40,110,111,116,32,97,110,32,105,100,101,110,116,105,102, -105,101,114,41,201,248,80,158,42,34,199,251,22,177,8,11,6,59,59,98,97, +11,61,118,3,1,6,101,110,118,49,48,55,16,4,11,11,62,113,118,3,1, +6,101,110,118,49,48,56,18,158,2,28,8,65,99,13,16,4,34,2,16,2, +1,11,8,52,8,51,8,50,16,4,11,11,2,28,3,1,6,101,110,118,49, +49,48,16,4,11,11,2,30,3,1,6,101,110,118,49,49,49,16,4,11,11, +2,40,3,1,6,101,110,118,49,49,50,18,158,10,8,93,18,158,2,41,8, +93,18,158,2,6,8,93,18,158,11,8,93,18,158,2,28,8,65,16,4,11, +11,2,40,3,1,6,101,110,118,49,49,54,16,4,11,11,2,30,3,1,6, +101,110,118,49,49,53,16,4,11,11,2,28,3,1,6,101,110,118,49,49,52, +18,100,11,13,16,4,34,2,16,2,1,11,8,52,8,51,8,50,8,101,8, +100,8,99,100,13,16,4,34,2,16,2,1,11,8,52,8,51,8,50,8,101, +8,100,8,99,16,4,11,11,63,116,109,112,3,1,6,101,110,118,49,49,55, +18,158,2,4,8,103,18,158,2,41,8,103,18,158,2,5,8,103,159,34,20, +100,159,34,16,1,20,24,65,98,101,103,105,110,16,0,83,158,40,20,97,114, +71,35,37,113,113,45,97,110,100,45,111,114,2,1,10,10,10,34,80,158,34, +34,20,100,159,34,16,1,30,2,1,2,2,193,16,0,11,11,16,1,2,2, +35,11,16,6,2,3,2,4,2,5,2,6,2,7,2,8,16,6,11,11,11, +11,11,11,16,6,2,3,2,4,2,5,2,6,2,7,2,8,34,40,96,16, +5,95,2,4,2,3,2,8,87,98,83,158,34,16,2,89,162,8,64,38,51, +2,9,223,0,28,248,22,63,196,12,27,28,194,248,22,83,197,248,80,158,36, +34,248,80,158,37,34,248,22,58,199,28,28,248,22,63,198,11,28,249,22,164, +3,194,248,22,58,200,10,27,248,22,59,199,28,248,22,63,193,11,28,249,22, +164,3,195,248,22,58,195,10,27,248,22,59,194,28,248,22,63,193,11,28,249, +22,164,3,196,248,22,58,195,10,27,248,22,59,194,28,248,22,63,193,11,28, +249,22,164,3,197,248,22,58,195,10,249,2,44,197,248,22,59,195,251,22,178, +8,11,6,20,20,100,117,112,108,105,99,97,116,101,32,105,100,101,110,116,105, +102,105,101,114,199,196,251,80,159,39,52,35,198,199,248,22,59,201,249,22,57, +198,203,80,159,34,52,35,83,158,34,16,2,89,162,8,64,38,52,2,9,223, +0,28,248,22,63,197,12,27,28,195,248,22,83,198,248,80,158,36,34,248,80, +158,37,34,248,22,58,200,27,250,22,122,198,248,22,153,3,197,9,28,28,248, +22,63,193,11,28,249,22,164,3,195,248,22,58,195,10,27,248,22,59,194,28, +248,22,63,193,11,28,249,22,164,3,196,248,22,58,195,10,27,248,22,59,194, +28,248,22,63,193,11,28,249,22,164,3,197,248,22,58,195,10,27,248,22,59, +194,28,248,22,63,193,11,28,249,22,164,3,198,248,22,58,195,10,249,2,44, +198,248,22,59,195,251,22,178,8,11,6,20,20,100,117,112,108,105,99,97,116, +101,32,105,100,101,110,116,105,102,105,101,114,201,197,87,94,250,22,121,198,248, +22,153,3,197,249,22,57,198,197,251,80,159,40,51,35,199,200,201,248,22,59, +203,80,159,34,51,35,83,158,34,16,2,89,162,8,100,38,55,64,108,111,111, +112,223,0,28,248,22,63,197,9,27,248,22,58,198,249,22,62,28,28,248,80, +158,38,36,195,28,248,80,158,38,36,248,80,158,39,35,196,248,80,158,38,37, +248,80,158,39,35,248,80,158,40,35,197,11,11,28,248,22,47,248,22,153,3, +248,80,158,40,34,197,28,196,249,22,57,248,80,158,40,34,197,248,80,158,40, +34,248,80,158,41,35,198,250,22,152,3,201,249,22,62,249,22,62,248,80,158, +45,34,202,9,248,80,158,43,35,200,197,251,22,178,8,11,6,30,30,98,97, 100,32,115,121,110,116,97,120,32,40,110,111,116,32,97,110,32,105,100,101,110, -116,105,102,105,101,114,32,97,110,100,32,101,120,112,114,101,115,115,105,111,110, -32,102,111,114,32,97,32,98,105,110,100,105,110,103,41,201,198,251,80,159,41, -50,35,200,201,202,248,22,59,204,80,159,34,50,35,83,158,34,16,2,89,162, -34,35,44,2,11,223,0,28,248,80,158,35,36,194,28,248,80,158,35,36,248, -80,158,36,35,195,248,80,158,35,37,248,80,158,36,35,248,80,158,37,35,196, -11,11,80,159,34,49,35,83,158,34,16,2,89,162,8,64,35,43,2,12,223, -0,248,80,158,35,34,248,80,158,36,35,195,80,159,34,48,35,27,20,15,159, -35,34,40,27,89,162,34,38,8,37,2,13,224,2,1,91,159,36,11,90,161, -35,34,11,80,159,37,48,35,90,161,35,35,11,80,159,37,49,35,87,94,28, -28,248,80,158,38,38,197,27,248,80,158,39,35,198,28,248,80,158,39,37,193, -10,28,248,80,158,39,37,248,80,158,40,35,194,10,28,198,28,248,22,47,248, -22,153,3,248,80,158,41,34,195,248,80,158,39,37,248,80,158,40,35,248,80, -158,41,35,195,11,11,10,250,22,177,8,11,6,10,10,98,97,100,32,115,121, -110,116,97,120,199,12,27,28,198,27,248,80,158,40,34,248,80,158,41,35,200, -28,248,22,47,248,22,153,3,194,192,11,11,27,248,80,158,40,39,27,28,195, -248,80,158,42,35,201,200,248,80,158,42,34,248,80,158,43,35,194,27,248,80, -158,41,35,248,80,158,42,35,28,196,248,80,158,43,35,202,201,28,193,27,251, -80,159,45,50,35,199,204,202,198,87,94,28,202,12,28,249,22,190,2,248,22, -70,195,39,27,247,22,116,251,80,159,46,51,35,196,200,205,197,251,80,159,45, -52,35,199,204,196,9,250,22,152,3,201,28,198,250,22,1,22,66,250,22,66, -20,15,159,50,36,40,248,22,66,249,22,66,248,22,66,23,16,250,22,68,20, -15,159,56,37,40,249,22,1,22,66,249,22,2,22,58,23,19,23,16,204,249, -22,2,22,59,200,250,22,68,23,17,198,199,203,251,22,177,8,11,6,62,62, -98,97,100,32,115,121,110,116,97,120,32,40,110,111,116,32,97,32,115,101,113, -117,101,110,99,101,32,111,102,32,105,100,101,110,116,105,102,105,101,114,45,45, -101,120,112,114,101,115,115,105,111,110,32,98,105,110,100,105,110,103,115,41,203, -248,80,158,45,34,248,80,158,46,35,205,250,22,7,89,162,34,35,46,9,224, -5,3,251,196,198,10,11,20,15,159,39,38,40,89,162,34,35,46,9,224,5, -3,251,196,198,11,10,20,15,159,39,39,40,89,162,34,35,46,9,224,5,3, -251,196,198,11,11,20,15,159,39,40,40,39,20,100,159,39,16,6,2,45,2, -46,2,47,2,48,2,49,30,2,14,69,115,116,120,45,62,108,105,115,116,4, -16,7,33,54,33,55,33,58,33,59,33,61,33,62,33,63,11,16,5,93,2, -7,87,97,83,158,34,16,2,89,162,34,39,58,2,22,223,0,28,248,80,158, -35,35,197,27,248,80,158,36,38,198,28,28,248,80,158,36,34,193,28,249,22, -166,3,194,197,248,80,158,36,39,198,11,11,27,248,80,158,37,36,199,87,94, -28,28,248,80,158,37,35,193,248,22,146,8,248,80,158,38,37,248,80,158,39, -36,195,10,251,22,177,8,2,23,6,30,30,101,120,112,101,99,116,115,32,101, -120,97,99,116,108,121,32,111,110,101,32,101,120,112,114,101,115,115,105,111,110, -199,202,12,28,248,22,129,3,200,248,80,158,37,38,193,252,80,159,41,58,35, -200,201,202,203,248,22,178,2,205,28,28,248,80,158,36,34,193,28,249,22,166, -3,194,20,15,159,37,43,40,248,80,158,36,39,198,11,11,252,80,159,40,58, -35,199,200,201,202,248,22,177,2,204,28,28,248,80,158,36,34,193,28,249,22, -166,3,194,198,248,80,158,36,39,198,11,11,251,22,177,8,2,24,6,33,33, -105,110,118,97,108,105,100,32,99,111,110,116,101,120,116,32,119,105,116,104,105, -110,32,113,117,97,115,105,113,117,111,116,101,198,201,28,28,248,80,158,36,35, -193,28,248,80,158,36,34,248,80,158,37,38,194,28,249,22,166,3,248,80,158, -38,38,195,198,248,80,158,36,39,193,11,11,11,27,248,80,158,37,36,194,87, -94,28,28,248,80,158,37,35,193,248,22,146,8,248,80,158,38,37,248,80,158, -39,36,195,10,251,22,177,8,2,23,6,30,30,101,120,112,101,99,116,115,32, -101,120,97,99,116,108,121,32,111,110,101,32,101,120,112,114,101,115,115,105,111, -110,199,202,12,27,248,80,158,38,38,194,27,248,80,158,39,36,201,27,252,80, -159,44,57,35,203,204,205,248,80,158,45,36,23,15,23,15,28,248,22,129,3, -203,27,28,249,22,148,8,195,196,28,248,80,158,41,37,194,20,15,159,40,37, -40,249,22,65,20,15,159,42,38,40,195,193,250,22,65,20,15,159,43,44,40, -198,195,27,252,80,159,45,58,35,204,205,206,201,248,22,178,2,23,17,28,28, -249,22,148,8,195,196,249,22,148,8,194,198,11,202,27,27,20,15,159,42,45, -40,27,28,249,22,148,8,197,201,28,248,80,158,44,37,196,20,15,159,43,37, -40,249,22,65,20,15,159,45,38,40,197,195,28,248,80,158,44,37,193,249,22, -65,20,15,159,45,39,40,195,28,28,248,22,56,193,28,249,22,166,3,20,15, -159,45,40,40,248,22,58,195,10,249,22,166,3,20,15,159,45,41,40,248,22, -58,195,11,250,22,67,248,22,58,196,196,248,22,59,196,250,22,65,20,15,159, -46,42,40,196,195,27,28,249,22,148,8,197,198,28,248,80,158,43,37,196,20, -15,159,42,37,40,249,22,65,20,15,159,44,38,40,197,195,28,248,80,158,43, -37,193,249,22,65,20,15,159,44,39,40,195,28,28,248,22,56,193,28,249,22, -166,3,20,15,159,44,40,40,248,22,58,195,10,249,22,166,3,20,15,159,44, -41,40,248,22,58,195,11,250,22,67,248,22,58,196,196,248,22,59,196,250,22, -65,20,15,159,45,42,40,196,195,252,80,159,40,58,35,199,200,201,202,203,28, -28,248,22,149,3,197,248,22,166,7,248,22,153,3,198,11,27,248,22,173,7, -248,22,153,3,199,27,252,80,159,41,57,35,200,201,202,198,204,28,249,22,148, -8,195,194,198,249,22,65,20,15,159,38,46,40,194,28,248,22,149,3,197,28, -248,22,113,248,22,153,3,198,27,248,22,114,248,22,153,3,199,27,252,80,159, -41,57,35,200,201,202,198,204,28,249,22,148,8,195,194,198,249,22,65,20,15, -159,38,47,40,194,196,196,80,159,34,57,35,83,158,34,16,2,89,162,8,36, -39,55,2,25,223,0,27,248,80,158,36,38,198,27,248,80,158,37,36,199,27, -252,80,159,42,57,35,201,202,203,199,205,27,252,80,159,43,57,35,202,203,204, -199,206,28,28,249,22,148,8,195,197,249,22,148,8,194,196,11,200,27,28,249, -22,148,8,196,198,28,248,80,158,40,37,195,20,15,159,39,37,40,249,22,65, -20,15,159,41,38,40,196,194,27,28,249,22,148,8,196,198,28,248,80,158,41, -37,195,20,15,159,40,37,40,249,22,65,20,15,159,42,38,40,196,194,28,248, -80,158,41,37,193,249,22,65,20,15,159,42,39,40,195,28,28,248,22,56,193, -28,249,22,166,3,20,15,159,42,40,40,248,22,58,195,10,249,22,166,3,20, -15,159,42,41,40,248,22,58,195,11,250,22,67,248,22,58,196,196,248,22,59, -196,250,22,65,20,15,159,43,42,40,196,195,80,159,34,58,35,83,158,34,16, -2,89,162,8,36,36,46,2,26,223,0,28,248,80,158,35,37,195,249,22,65, -20,15,159,36,39,40,195,28,28,248,22,56,195,28,249,22,166,3,20,15,159, -36,40,40,248,22,58,197,10,249,22,166,3,20,15,159,36,41,40,248,22,58, -197,11,250,22,67,248,22,58,198,196,248,22,59,198,250,22,65,20,15,159,37, -42,40,196,197,80,159,34,56,35,83,158,34,16,2,89,162,8,36,36,44,2, -27,223,0,28,249,22,148,8,195,196,28,248,80,158,35,37,194,20,15,159,34, -37,40,249,22,65,20,15,159,36,38,40,195,193,80,159,34,55,35,27,20,15, -159,35,34,40,27,20,15,159,36,35,40,27,20,15,159,37,36,40,89,162,8, -36,35,55,9,226,3,0,1,2,87,94,28,248,80,158,38,34,197,250,22,177, -8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,199,12,27,28,248,80, -158,39,35,248,80,158,40,36,199,28,248,80,158,39,37,248,80,158,40,36,248, -80,158,41,36,200,248,80,158,39,38,248,80,158,40,36,199,250,22,177,8,11, -6,10,10,98,97,100,32,115,121,110,116,97,120,200,250,22,177,8,11,6,10, -10,98,97,100,32,115,121,110,116,97,120,200,250,22,152,3,196,27,252,80,159, -47,57,35,206,203,204,201,34,28,249,22,148,8,194,198,28,248,80,158,43,37, -193,20,15,159,42,37,40,249,22,65,20,15,159,44,38,40,194,192,200,37,20, -100,159,38,16,6,2,64,2,47,2,46,2,48,2,45,2,49,16,14,33,66, -33,67,33,68,33,72,33,73,33,75,33,76,33,77,33,78,33,84,33,87,33, -89,33,90,33,91,11,16,5,93,2,6,27,20,15,159,35,34,39,89,162,34, -35,53,9,224,1,0,87,94,28,248,80,158,36,34,195,12,250,22,177,8,11, -6,10,10,98,97,100,32,115,121,110,116,97,120,197,27,248,80,158,37,35,196, -28,248,80,158,37,36,193,20,15,159,36,35,39,28,28,248,80,158,37,37,193, -248,80,158,37,36,248,80,158,38,35,194,10,248,80,158,37,38,193,250,22,152, -3,196,251,22,65,20,15,159,43,36,39,248,80,158,44,38,200,249,22,57,20, -15,159,45,37,39,248,80,158,46,35,202,20,15,159,43,38,39,198,35,20,100, -159,34,16,5,2,49,2,46,2,48,2,47,2,45,16,5,33,92,33,94,33, -95,33,96,33,97,11,16,5,93,2,3,27,20,15,159,35,34,40,89,162,34, -35,56,9,224,1,0,87,94,28,248,80,158,36,34,195,250,22,177,8,11,6, -10,10,98,97,100,32,115,121,110,116,97,120,197,12,27,248,80,158,37,35,196, -28,248,80,158,37,36,193,20,15,159,36,35,40,28,28,248,80,158,37,37,193, -248,80,158,37,36,248,80,158,38,35,194,11,248,80,158,37,38,193,28,248,80, -158,37,39,193,250,22,152,3,196,250,22,65,20,15,159,42,36,40,248,22,65, -249,22,65,2,42,248,80,158,46,38,202,251,22,65,20,15,159,46,37,40,2, -42,2,42,249,22,57,20,15,159,48,38,40,248,80,158,49,35,205,198,250,22, -177,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,198,35,20,100,159, -34,16,6,2,64,2,46,2,48,2,47,2,45,2,49,16,5,33,98,33,102, -33,104,33,105,33,106,11,93,83,158,34,16,2,32,0,89,162,34,36,44,2, -2,222,28,248,22,64,193,249,22,71,194,195,250,22,178,8,2,24,6,11,11, -112,114,111,112,101,114,32,108,105,115,116,195,80,159,34,34,35,93,2,43,94, -2,14,2,43,0}; - EVAL_ONE_SIZED_STR((char *)expr, 5149); +116,105,102,105,101,114,41,201,248,80,158,42,34,199,251,22,178,8,11,6,59, +59,98,97,100,32,115,121,110,116,97,120,32,40,110,111,116,32,97,110,32,105, +100,101,110,116,105,102,105,101,114,32,97,110,100,32,101,120,112,114,101,115,115, +105,111,110,32,102,111,114,32,97,32,98,105,110,100,105,110,103,41,201,198,251, +80,159,41,50,35,200,201,202,248,22,59,204,80,159,34,50,35,83,158,34,16, +2,89,162,34,35,44,2,11,223,0,28,248,80,158,35,36,194,28,248,80,158, +35,36,248,80,158,36,35,195,248,80,158,35,37,248,80,158,36,35,248,80,158, +37,35,196,11,11,80,159,34,49,35,83,158,34,16,2,89,162,8,64,35,43, +2,12,223,0,248,80,158,35,34,248,80,158,36,35,195,80,159,34,48,35,27, +20,15,159,35,34,40,27,89,162,34,38,8,37,2,13,224,2,1,91,159,36, +11,90,161,35,34,11,80,159,37,48,35,90,161,35,35,11,80,159,37,49,35, +87,94,28,28,248,80,158,38,38,197,27,248,80,158,39,35,198,28,248,80,158, +39,37,193,10,28,248,80,158,39,37,248,80,158,40,35,194,10,28,198,28,248, +22,47,248,22,153,3,248,80,158,41,34,195,248,80,158,39,37,248,80,158,40, +35,248,80,158,41,35,195,11,11,10,250,22,178,8,11,6,10,10,98,97,100, +32,115,121,110,116,97,120,199,12,27,28,198,27,248,80,158,40,34,248,80,158, +41,35,200,28,248,22,47,248,22,153,3,194,192,11,11,27,248,80,158,40,39, +27,28,195,248,80,158,42,35,201,200,248,80,158,42,34,248,80,158,43,35,194, +27,248,80,158,41,35,248,80,158,42,35,28,196,248,80,158,43,35,202,201,28, +193,27,251,80,159,45,50,35,199,204,202,198,87,94,28,202,12,28,249,22,190, +2,248,22,70,195,39,27,247,22,116,251,80,159,46,51,35,196,200,205,197,251, +80,159,45,52,35,199,204,196,9,250,22,152,3,201,28,198,250,22,1,22,66, +250,22,66,20,15,159,50,36,40,248,22,66,249,22,66,248,22,66,23,16,250, +22,68,20,15,159,56,37,40,249,22,1,22,66,249,22,2,22,58,23,19,23, +16,204,249,22,2,22,59,200,250,22,68,23,17,198,199,203,251,22,178,8,11, +6,62,62,98,97,100,32,115,121,110,116,97,120,32,40,110,111,116,32,97,32, +115,101,113,117,101,110,99,101,32,111,102,32,105,100,101,110,116,105,102,105,101, +114,45,45,101,120,112,114,101,115,115,105,111,110,32,98,105,110,100,105,110,103, +115,41,203,248,80,158,45,34,248,80,158,46,35,205,250,22,7,89,162,34,35, +46,9,224,5,3,251,196,198,10,11,20,15,159,39,38,40,89,162,34,35,46, +9,224,5,3,251,196,198,11,10,20,15,159,39,39,40,89,162,34,35,46,9, +224,5,3,251,196,198,11,11,20,15,159,39,40,40,39,20,100,159,39,16,6, +2,45,2,46,2,47,2,48,2,49,30,2,14,69,115,116,120,45,62,108,105, +115,116,4,16,7,33,54,33,55,33,58,33,59,33,61,33,62,33,63,11,16, +5,93,2,7,87,97,83,158,34,16,2,89,162,34,39,58,2,22,223,0,28, +248,80,158,35,35,197,27,248,80,158,36,38,198,28,28,248,80,158,36,34,193, +28,249,22,166,3,194,197,248,80,158,36,39,198,11,11,27,248,80,158,37,36, +199,87,94,28,28,248,80,158,37,35,193,248,22,147,8,248,80,158,38,37,248, +80,158,39,36,195,10,251,22,178,8,2,23,6,30,30,101,120,112,101,99,116, +115,32,101,120,97,99,116,108,121,32,111,110,101,32,101,120,112,114,101,115,115, +105,111,110,199,202,12,28,248,22,129,3,200,248,80,158,37,38,193,252,80,159, +41,58,35,200,201,202,203,248,22,178,2,205,28,28,248,80,158,36,34,193,28, +249,22,166,3,194,20,15,159,37,43,40,248,80,158,36,39,198,11,11,252,80, +159,40,58,35,199,200,201,202,248,22,177,2,204,28,28,248,80,158,36,34,193, +28,249,22,166,3,194,198,248,80,158,36,39,198,11,11,251,22,178,8,2,24, +6,33,33,105,110,118,97,108,105,100,32,99,111,110,116,101,120,116,32,119,105, +116,104,105,110,32,113,117,97,115,105,113,117,111,116,101,198,201,28,28,248,80, +158,36,35,193,28,248,80,158,36,34,248,80,158,37,38,194,28,249,22,166,3, +248,80,158,38,38,195,198,248,80,158,36,39,193,11,11,11,27,248,80,158,37, +36,194,87,94,28,28,248,80,158,37,35,193,248,22,147,8,248,80,158,38,37, +248,80,158,39,36,195,10,251,22,178,8,2,23,6,30,30,101,120,112,101,99, +116,115,32,101,120,97,99,116,108,121,32,111,110,101,32,101,120,112,114,101,115, +115,105,111,110,199,202,12,27,248,80,158,38,38,194,27,248,80,158,39,36,201, +27,252,80,159,44,57,35,203,204,205,248,80,158,45,36,23,15,23,15,28,248, +22,129,3,203,27,28,249,22,149,8,195,196,28,248,80,158,41,37,194,20,15, +159,40,37,40,249,22,65,20,15,159,42,38,40,195,193,250,22,65,20,15,159, +43,44,40,198,195,27,252,80,159,45,58,35,204,205,206,201,248,22,178,2,23, +17,28,28,249,22,149,8,195,196,249,22,149,8,194,198,11,202,27,27,20,15, +159,42,45,40,27,28,249,22,149,8,197,201,28,248,80,158,44,37,196,20,15, +159,43,37,40,249,22,65,20,15,159,45,38,40,197,195,28,248,80,158,44,37, +193,249,22,65,20,15,159,45,39,40,195,28,28,248,22,56,193,28,249,22,166, +3,20,15,159,45,40,40,248,22,58,195,10,249,22,166,3,20,15,159,45,41, +40,248,22,58,195,11,250,22,67,248,22,58,196,196,248,22,59,196,250,22,65, +20,15,159,46,42,40,196,195,27,28,249,22,149,8,197,198,28,248,80,158,43, +37,196,20,15,159,42,37,40,249,22,65,20,15,159,44,38,40,197,195,28,248, +80,158,43,37,193,249,22,65,20,15,159,44,39,40,195,28,28,248,22,56,193, +28,249,22,166,3,20,15,159,44,40,40,248,22,58,195,10,249,22,166,3,20, +15,159,44,41,40,248,22,58,195,11,250,22,67,248,22,58,196,196,248,22,59, +196,250,22,65,20,15,159,45,42,40,196,195,252,80,159,40,58,35,199,200,201, +202,203,28,28,248,22,149,3,197,248,22,167,7,248,22,153,3,198,11,27,248, +22,174,7,248,22,153,3,199,27,252,80,159,41,57,35,200,201,202,198,204,28, +249,22,149,8,195,194,198,249,22,65,20,15,159,38,46,40,194,28,248,22,149, +3,197,28,248,22,113,248,22,153,3,198,27,248,22,114,248,22,153,3,199,27, +252,80,159,41,57,35,200,201,202,198,204,28,249,22,149,8,195,194,198,249,22, +65,20,15,159,38,47,40,194,196,196,80,159,34,57,35,83,158,34,16,2,89, +162,8,36,39,55,2,25,223,0,27,248,80,158,36,38,198,27,248,80,158,37, +36,199,27,252,80,159,42,57,35,201,202,203,199,205,27,252,80,159,43,57,35, +202,203,204,199,206,28,28,249,22,149,8,195,197,249,22,149,8,194,196,11,200, +27,28,249,22,149,8,196,198,28,248,80,158,40,37,195,20,15,159,39,37,40, +249,22,65,20,15,159,41,38,40,196,194,27,28,249,22,149,8,196,198,28,248, +80,158,41,37,195,20,15,159,40,37,40,249,22,65,20,15,159,42,38,40,196, +194,28,248,80,158,41,37,193,249,22,65,20,15,159,42,39,40,195,28,28,248, +22,56,193,28,249,22,166,3,20,15,159,42,40,40,248,22,58,195,10,249,22, +166,3,20,15,159,42,41,40,248,22,58,195,11,250,22,67,248,22,58,196,196, +248,22,59,196,250,22,65,20,15,159,43,42,40,196,195,80,159,34,58,35,83, +158,34,16,2,89,162,8,36,36,46,2,26,223,0,28,248,80,158,35,37,195, +249,22,65,20,15,159,36,39,40,195,28,28,248,22,56,195,28,249,22,166,3, +20,15,159,36,40,40,248,22,58,197,10,249,22,166,3,20,15,159,36,41,40, +248,22,58,197,11,250,22,67,248,22,58,198,196,248,22,59,198,250,22,65,20, +15,159,37,42,40,196,197,80,159,34,56,35,83,158,34,16,2,89,162,8,36, +36,44,2,27,223,0,28,249,22,149,8,195,196,28,248,80,158,35,37,194,20, +15,159,34,37,40,249,22,65,20,15,159,36,38,40,195,193,80,159,34,55,35, +27,20,15,159,35,34,40,27,20,15,159,36,35,40,27,20,15,159,37,36,40, +89,162,8,36,35,55,9,226,3,0,1,2,87,94,28,248,80,158,38,34,197, +250,22,178,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,199,12,27, +28,248,80,158,39,35,248,80,158,40,36,199,28,248,80,158,39,37,248,80,158, +40,36,248,80,158,41,36,200,248,80,158,39,38,248,80,158,40,36,199,250,22, +178,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,200,250,22,178,8, +11,6,10,10,98,97,100,32,115,121,110,116,97,120,200,250,22,152,3,196,27, +252,80,159,47,57,35,206,203,204,201,34,28,249,22,149,8,194,198,28,248,80, +158,43,37,193,20,15,159,42,37,40,249,22,65,20,15,159,44,38,40,194,192, +200,37,20,100,159,38,16,6,2,64,2,47,2,46,2,48,2,45,2,49,16, +14,33,66,33,67,33,68,33,72,33,73,33,75,33,76,33,77,33,78,33,84, +33,87,33,89,33,90,33,91,11,16,5,93,2,6,27,20,15,159,35,34,39, +89,162,34,35,53,9,224,1,0,87,94,28,248,80,158,36,34,195,12,250,22, +178,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,197,27,248,80,158, +37,35,196,28,248,80,158,37,36,193,20,15,159,36,35,39,28,28,248,80,158, +37,37,193,248,80,158,37,36,248,80,158,38,35,194,10,248,80,158,37,38,193, +250,22,152,3,196,251,22,65,20,15,159,43,36,39,248,80,158,44,38,200,249, +22,57,20,15,159,45,37,39,248,80,158,46,35,202,20,15,159,43,38,39,198, +35,20,100,159,34,16,5,2,49,2,46,2,48,2,47,2,45,16,5,33,92, +33,94,33,95,33,96,33,97,11,16,5,93,2,5,27,20,15,159,35,34,40, +89,162,34,35,56,9,224,1,0,87,94,28,248,80,158,36,34,195,250,22,178, +8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,197,12,27,248,80,158, +37,35,196,28,248,80,158,37,36,193,20,15,159,36,35,40,28,28,248,80,158, +37,37,193,248,80,158,37,36,248,80,158,38,35,194,11,248,80,158,37,38,193, +28,248,80,158,37,39,193,250,22,152,3,196,250,22,65,20,15,159,42,36,40, +248,22,65,249,22,65,2,42,248,80,158,46,38,202,251,22,65,20,15,159,46, +37,40,2,42,2,42,249,22,57,20,15,159,48,38,40,248,80,158,49,35,205, +198,250,22,178,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,198,35, +20,100,159,34,16,6,2,64,2,46,2,48,2,47,2,45,2,49,16,5,33, +98,33,102,33,104,33,105,33,106,11,93,83,158,34,16,2,32,0,89,162,34, +36,44,2,2,222,28,248,22,64,193,249,22,71,194,195,250,22,179,8,2,24, +6,11,11,112,114,111,112,101,114,32,108,105,115,116,195,80,159,34,34,35,93, +2,43,94,2,14,2,43,0}; + EVAL_ONE_SIZED_STR((char *)expr, 5215); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,45,0,0,0,1,0,0,6,0,9,0,14,0, -19,0,25,0,30,0,42,0,52,0,62,0,72,0,77,0,83,0,93,0,104, -0,108,0,111,0,120,0,126,0,143,0,153,0,160,0,181,0,197,0,217,0, -239,0,255,0,9,1,20,1,38,1,68,1,88,1,102,1,109,1,139,1,145, -1,151,1,157,1,163,1,169,1,199,1,205,1,211,1,217,1,223,1,0,0, -16,5,0,0,65,98,101,103,105,110,29,11,11,64,99,111,110,100,64,108,111, -111,112,65,35,37,115,116,120,64,104,101,114,101,71,35,37,113,113,45,97,110, -100,45,111,114,3,1,7,101,110,118,50,53,55,55,3,1,7,101,110,118,50, -53,56,48,3,1,7,101,110,118,50,53,56,49,64,116,101,115,116,65,118,97, -108,117,101,3,1,7,101,110,118,50,53,56,50,70,108,101,116,45,118,97,108, -117,101,115,63,103,101,110,62,105,102,68,35,37,107,101,114,110,101,108,95,8, -193,11,16,0,97,10,35,11,94,159,2,7,9,11,159,2,5,9,11,16,0, -96,10,34,11,16,2,2,3,2,2,18,96,2,6,54,53,52,16,6,11,11, -65,116,101,115,116,115,66,102,105,114,115,116,63,2,9,2,9,16,4,11,11, -2,4,3,1,7,101,110,118,50,53,55,57,16,6,11,11,64,102,111,114,109, -66,115,101,114,114,111,114,2,8,2,8,16,4,11,11,67,105,110,45,102,111, -114,109,3,1,7,101,110,118,50,53,55,54,16,4,11,11,2,6,3,1,7, -101,110,118,50,53,55,53,100,54,53,52,8,26,59,58,57,56,18,158,94,10, -64,118,111,105,100,8,27,16,6,11,11,64,108,105,110,101,64,114,101,115,116, -2,10,2,10,18,103,64,101,108,115,101,54,53,52,8,26,59,58,57,56,8, -29,16,6,11,11,2,11,2,12,2,13,2,13,16,8,11,11,2,11,2,12, -65,101,108,115,101,63,2,13,2,13,2,13,102,54,53,52,8,26,59,58,57, -56,8,29,8,31,18,158,62,61,62,8,32,103,54,53,52,8,26,59,58,57, -56,8,29,8,31,16,4,11,11,2,15,3,1,7,101,110,118,50,53,56,51, -18,158,2,14,8,34,18,158,2,16,8,34,18,158,2,16,8,32,18,158,2, -1,8,32,18,158,2,1,8,32,103,54,53,52,8,26,59,58,57,56,8,29, -8,31,16,4,11,11,2,15,3,1,7,101,110,118,50,53,56,52,18,158,2, -14,8,40,18,158,2,16,8,40,18,158,2,16,8,32,18,158,2,1,8,32, -159,34,20,100,159,34,16,1,20,24,2,1,16,0,83,158,40,20,97,114,66, -35,37,99,111,110,100,2,2,10,10,10,34,80,158,34,34,20,100,159,34,16, -0,16,0,11,11,16,0,34,11,16,1,2,3,16,1,11,16,1,2,3,34, -35,93,16,5,93,2,3,87,94,83,158,34,16,2,89,162,8,64,37,8,27, -2,4,223,0,28,248,80,158,35,36,195,20,15,159,34,35,39,28,248,80,158, -35,37,195,27,248,80,158,36,38,196,27,248,80,158,37,35,197,28,248,80,158, -37,37,194,27,248,80,158,38,38,195,27,248,80,158,39,35,196,27,28,248,80, -158,40,34,195,249,22,166,3,196,20,15,159,41,36,39,11,87,94,28,192,28, -248,80,158,40,37,196,251,22,177,8,11,6,39,39,98,97,100,32,115,121,110, -116,97,120,32,40,96,101,108,115,101,39,32,99,108,97,117,115,101,32,109,117, -115,116,32,98,101,32,108,97,115,116,41,202,200,12,12,28,28,248,80,158,40, -37,194,28,248,80,158,40,34,248,80,158,41,38,195,249,22,166,3,248,80,158, -42,38,196,20,15,159,41,37,39,11,11,28,28,248,80,158,40,37,248,80,158, -41,35,195,248,80,158,40,36,248,80,158,41,35,248,80,158,42,35,196,11,27, -28,193,10,195,27,247,22,54,250,22,65,20,15,159,44,38,39,248,22,65,249, -22,65,248,22,65,199,199,251,22,65,20,15,159,48,39,39,199,249,22,65,248, -80,158,51,38,248,80,158,52,35,206,201,250,80,159,51,53,35,23,18,23,15, -11,251,22,177,8,11,6,36,36,98,97,100,32,115,121,110,116,97,120,32,40, -98,97,100,32,99,108,97,117,115,101,32,102,111,114,109,32,119,105,116,104,32, -61,62,41,202,200,28,192,28,200,250,22,65,20,15,159,42,40,39,10,249,22, -57,20,15,159,44,41,39,198,249,22,57,20,15,159,41,42,39,195,28,248,80, -158,40,36,194,27,247,22,54,250,22,65,20,15,159,43,43,39,248,22,65,249, -22,65,248,22,65,199,201,251,22,65,20,15,159,47,44,39,199,199,250,80,159, -50,53,35,23,17,206,11,251,22,65,20,15,159,43,45,39,198,249,22,57,20, -15,159,45,46,39,199,250,80,159,46,53,35,205,202,11,251,22,177,8,11,6, -44,44,98,97,100,32,115,121,110,116,97,120,32,40,99,108,97,117,115,101,32, -105,115,32,110,111,116,32,97,32,116,101,115,116,45,118,97,108,117,101,32,112, -97,105,114,41,199,197,251,22,177,8,11,6,46,46,98,97,100,32,115,121,110, -116,97,120,32,40,98,111,100,121,32,109,117,115,116,32,99,111,110,116,97,105, -110,32,97,32,108,105,115,116,32,111,102,32,112,97,105,114,115,41,197,198,80, -159,34,53,35,27,20,15,159,35,34,39,89,162,8,36,35,50,9,224,1,0, -87,94,28,248,80,158,36,34,195,250,22,177,8,11,6,10,10,98,97,100,32, -115,121,110,116,97,120,197,12,250,22,152,3,195,27,248,80,158,40,35,199,250, -80,159,42,53,35,201,195,10,197,35,20,100,159,35,16,5,30,2,5,71,105, -100,101,110,116,105,102,105,101,114,63,2,30,2,5,67,115,116,120,45,99,100, -114,6,30,2,5,69,115,116,120,45,110,117,108,108,63,10,30,2,5,69,115, -116,120,45,112,97,105,114,63,11,30,2,5,67,115,116,120,45,99,97,114,5, -16,13,33,21,33,28,33,30,33,33,33,35,33,36,33,37,33,38,33,39,33, -41,33,42,33,43,33,44,11,9,93,2,17,95,2,5,2,7,2,17,0}; - EVAL_ONE_SIZED_STR((char *)expr, 1405); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,46,0,0,0,1,0,0,6,0,9,0,14, +0,19,0,25,0,30,0,33,0,45,0,54,0,63,0,72,0,77,0,83,0, +92,0,103,0,107,0,110,0,119,0,125,0,142,0,152,0,168,0,189,0,204, +0,224,0,245,0,4,1,24,1,35,1,53,1,93,1,113,1,137,1,144,1, +183,1,189,1,195,1,201,1,207,1,213,1,252,1,2,2,8,2,14,2,20, +2,0,0,69,5,0,0,65,98,101,103,105,110,29,11,11,64,99,111,110,100, +64,108,111,111,112,65,35,37,115,116,120,64,104,101,114,101,29,11,11,71,35, +37,113,113,45,97,110,100,45,111,114,3,1,6,101,110,118,49,50,51,3,1, +6,101,110,118,49,50,54,3,1,6,101,110,118,49,50,55,64,116,101,115,116, +65,118,97,108,117,101,3,1,6,101,110,118,49,50,56,70,108,101,116,45,118, +97,108,117,101,115,63,103,101,110,62,105,102,68,35,37,107,101,114,110,101,108, +95,8,193,11,16,0,97,10,35,11,94,159,2,8,9,11,159,2,5,9,11, +16,0,96,10,34,11,16,2,2,3,2,2,18,97,2,6,13,16,4,34,2, +7,2,2,11,55,54,53,16,6,11,11,65,116,101,115,116,115,66,102,105,114, +115,116,63,2,10,2,10,16,4,11,11,2,4,3,1,6,101,110,118,49,50, +53,16,6,11,11,64,102,111,114,109,66,115,101,114,114,111,114,2,9,2,9, +16,4,11,11,67,105,110,45,102,111,114,109,3,1,6,101,110,118,49,50,50, +16,4,11,11,2,6,3,1,6,101,110,118,49,50,49,101,13,16,4,34,2, +7,2,2,11,55,54,53,8,27,8,26,59,58,57,18,158,94,10,64,118,111, +105,100,8,28,16,6,11,11,64,108,105,110,101,64,114,101,115,116,2,11,2, +11,18,104,64,101,108,115,101,13,16,4,34,2,7,2,2,11,55,54,53,8, +27,8,26,59,58,57,8,30,16,6,11,11,2,12,2,13,2,14,2,14,16, +8,11,11,2,12,2,13,65,101,108,115,101,63,2,14,2,14,2,14,103,13, +16,4,34,2,7,2,2,11,55,54,53,8,27,8,26,59,58,57,8,30,8, +32,18,158,62,61,62,8,33,104,13,16,4,34,2,7,2,2,11,55,54,53, +8,27,8,26,59,58,57,8,30,8,32,16,4,11,11,2,16,3,1,6,101, +110,118,49,50,57,18,158,2,15,8,35,18,158,2,17,8,35,18,158,2,17, +8,33,18,158,2,1,8,33,18,158,2,1,8,33,104,13,16,4,34,2,7, +2,2,11,55,54,53,8,27,8,26,59,58,57,8,30,8,32,16,4,11,11, +2,16,3,1,6,101,110,118,49,51,48,18,158,2,15,8,41,18,158,2,17, +8,41,18,158,2,17,8,33,18,158,2,1,8,33,159,34,20,100,159,34,16, +1,20,24,2,1,16,0,83,158,40,20,97,114,66,35,37,99,111,110,100,2, +2,10,10,10,34,80,158,34,34,20,100,159,34,16,0,16,0,11,11,16,0, +34,11,16,1,2,3,16,1,11,16,1,2,3,34,35,93,16,5,93,2,3, +87,94,83,158,34,16,2,89,162,8,64,37,8,27,2,4,223,0,28,248,80, +158,35,36,195,20,15,159,34,35,39,28,248,80,158,35,37,195,27,248,80,158, +36,38,196,27,248,80,158,37,35,197,28,248,80,158,37,37,194,27,248,80,158, +38,38,195,27,248,80,158,39,35,196,27,28,248,80,158,40,34,195,249,22,166, +3,196,20,15,159,41,36,39,11,87,94,28,192,28,248,80,158,40,37,196,251, +22,178,8,11,6,39,39,98,97,100,32,115,121,110,116,97,120,32,40,96,101, +108,115,101,39,32,99,108,97,117,115,101,32,109,117,115,116,32,98,101,32,108, +97,115,116,41,202,200,12,12,28,28,248,80,158,40,37,194,28,248,80,158,40, +34,248,80,158,41,38,195,249,22,166,3,248,80,158,42,38,196,20,15,159,41, +37,39,11,11,28,28,248,80,158,40,37,248,80,158,41,35,195,248,80,158,40, +36,248,80,158,41,35,248,80,158,42,35,196,11,27,28,193,10,195,27,247,22, +54,250,22,65,20,15,159,44,38,39,248,22,65,249,22,65,248,22,65,199,199, +251,22,65,20,15,159,48,39,39,199,249,22,65,248,80,158,51,38,248,80,158, +52,35,206,201,250,80,159,51,53,35,23,18,23,15,11,251,22,178,8,11,6, +36,36,98,97,100,32,115,121,110,116,97,120,32,40,98,97,100,32,99,108,97, +117,115,101,32,102,111,114,109,32,119,105,116,104,32,61,62,41,202,200,28,192, +28,200,250,22,65,20,15,159,42,40,39,10,249,22,57,20,15,159,44,41,39, +198,249,22,57,20,15,159,41,42,39,195,28,248,80,158,40,36,194,27,247,22, +54,250,22,65,20,15,159,43,43,39,248,22,65,249,22,65,248,22,65,199,201, +251,22,65,20,15,159,47,44,39,199,199,250,80,159,50,53,35,23,17,206,11, +251,22,65,20,15,159,43,45,39,198,249,22,57,20,15,159,45,46,39,199,250, +80,159,46,53,35,205,202,11,251,22,178,8,11,6,44,44,98,97,100,32,115, +121,110,116,97,120,32,40,99,108,97,117,115,101,32,105,115,32,110,111,116,32, +97,32,116,101,115,116,45,118,97,108,117,101,32,112,97,105,114,41,199,197,251, +22,178,8,11,6,46,46,98,97,100,32,115,121,110,116,97,120,32,40,98,111, +100,121,32,109,117,115,116,32,99,111,110,116,97,105,110,32,97,32,108,105,115, +116,32,111,102,32,112,97,105,114,115,41,197,198,80,159,34,53,35,27,20,15, +159,35,34,39,89,162,8,36,35,50,9,224,1,0,87,94,28,248,80,158,36, +34,195,250,22,178,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,197, +12,250,22,152,3,195,27,248,80,158,40,35,199,250,80,159,42,53,35,201,195, +10,197,35,20,100,159,35,16,5,30,2,5,71,105,100,101,110,116,105,102,105, +101,114,63,2,30,2,5,67,115,116,120,45,99,100,114,6,30,2,5,69,115, +116,120,45,110,117,108,108,63,10,30,2,5,69,115,116,120,45,112,97,105,114, +63,11,30,2,5,67,115,116,120,45,99,97,114,5,16,13,33,22,33,29,33, +31,33,34,33,36,33,37,33,38,33,39,33,40,33,42,33,43,33,44,33,45, +11,9,93,2,18,95,2,5,2,8,2,18,0}; + EVAL_ONE_SIZED_STR((char *)expr, 1461); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,11,0,0,0,1,0,0,3,0,18,0,24,0, -36,0,49,0,69,0,97,0,123,0,149,0,174,0,0,0,50,4,0,0,29, -11,11,74,105,100,101,110,116,105,102,105,101,114,47,35,102,63,65,35,37,115, -116,120,71,105,100,47,35,102,45,108,105,115,116,63,72,115,116,114,117,99,116, -45,105,110,102,111,63,79,115,116,114,117,99,116,45,105,110,102,111,45,116,121, -112,101,45,105,100,1,26,115,116,114,117,99,116,45,105,110,102,111,45,99,111, -110,115,116,114,117,99,116,111,114,45,105,100,1,24,115,116,114,117,99,116,45, -105,110,102,111,45,112,114,101,100,105,99,97,116,101,45,105,100,1,24,115,116, -114,117,99,116,45,105,110,102,111,45,97,99,99,101,115,115,111,114,45,105,100, -115,1,23,115,116,114,117,99,116,45,105,110,102,111,45,109,117,116,97,116,111, -114,45,105,100,115,159,34,20,100,159,34,16,1,20,24,65,98,101,103,105,110, -16,0,83,158,40,20,97,114,73,35,37,115,116,114,117,99,116,45,105,110,102, -111,2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,9,30,2,1,2, -2,193,30,2,3,71,105,100,101,110,116,105,102,105,101,114,63,2,30,2,1, -2,4,193,30,2,1,2,5,193,30,2,1,2,6,193,30,2,1,2,7,193, -30,2,1,2,8,193,30,2,1,2,9,193,30,2,1,2,10,193,16,0,11, -11,16,2,2,4,2,2,36,11,16,6,2,9,2,7,2,10,2,8,2,6, -2,5,16,6,11,11,11,11,11,11,16,6,2,9,2,7,2,10,2,8,2, -6,2,5,40,40,9,100,83,158,34,16,2,89,162,34,35,43,2,2,223,0, -27,248,22,146,8,195,28,192,192,248,80,158,36,35,195,80,159,34,34,35,83, -158,34,16,2,89,162,34,36,47,2,4,223,0,28,248,22,63,195,10,28,248, -22,56,195,28,248,22,63,248,22,59,196,27,248,22,58,196,27,248,22,146,8, -194,28,192,192,248,80,158,37,35,194,28,248,194,248,22,58,196,27,248,22,59, -196,28,248,22,63,193,10,28,248,22,56,193,28,248,22,63,248,22,59,194,27, -248,22,58,194,27,248,22,146,8,194,28,192,192,248,80,158,38,35,194,28,248, -195,248,22,58,194,27,248,22,59,194,28,248,22,63,193,10,28,248,22,56,193, -28,248,22,63,248,22,59,194,27,248,22,58,194,27,248,22,146,8,194,28,192, -192,248,80,158,39,35,194,28,248,196,248,22,58,194,249,80,159,38,36,35,197, -248,22,59,195,11,11,11,11,11,11,80,159,34,36,35,83,158,34,16,2,89, -162,34,35,47,2,5,223,0,28,248,22,64,194,28,249,22,188,2,248,22,70, -196,40,28,27,248,22,58,195,27,248,22,146,8,194,28,192,192,248,80,158,37, -35,194,28,27,248,22,84,195,27,248,22,146,8,194,28,192,192,248,80,158,37, -35,194,28,27,248,22,93,195,27,248,22,146,8,194,28,192,192,248,80,158,37, -35,194,28,27,80,158,35,35,27,249,22,76,197,37,28,248,22,63,193,10,28, -248,22,56,193,28,248,22,63,248,22,59,194,27,248,22,58,194,27,248,22,146, -8,194,28,192,192,248,80,158,39,35,194,28,248,194,248,22,58,194,27,248,22, -59,194,28,248,22,63,193,10,28,248,22,56,193,28,248,22,63,248,22,59,194, -27,248,22,58,194,27,248,22,146,8,194,28,192,192,248,80,158,40,35,194,28, -248,195,248,22,58,194,249,80,159,39,36,35,196,248,22,59,195,11,11,11,11, -28,27,249,22,76,196,38,28,248,22,63,193,10,28,248,22,56,193,28,248,22, -63,248,22,59,194,27,248,22,58,194,27,248,22,146,8,194,28,192,192,248,80, -158,38,35,194,28,27,248,22,58,194,27,248,22,146,8,194,28,192,192,248,80, -158,38,35,194,27,248,22,59,194,28,248,22,63,193,10,28,248,22,56,193,28, -248,22,63,248,22,59,194,27,248,22,58,194,27,248,22,146,8,194,28,192,192, -248,80,158,39,35,194,28,27,248,22,58,194,27,248,22,146,8,194,28,192,192, -248,80,158,39,35,194,249,80,159,38,36,35,80,159,38,34,35,248,22,59,195, -11,11,11,11,27,27,249,22,76,197,39,27,248,22,146,8,194,28,192,192,248, -80,158,38,35,194,28,192,192,249,22,148,8,10,249,22,76,198,39,11,11,11, -11,11,11,11,80,159,34,37,35,83,158,34,16,2,22,58,80,159,34,38,35, -83,158,34,16,2,22,84,80,159,34,39,35,83,158,34,16,2,22,93,80,159, -34,40,35,83,158,34,16,2,22,96,80,159,34,41,35,83,158,34,16,2,32, -0,89,162,34,35,42,2,10,222,249,22,76,194,38,80,159,34,42,35,95,68, -35,37,107,101,114,110,101,108,2,3,71,35,37,113,113,45,97,110,100,45,111, -114,9,0}; - EVAL_ONE_SIZED_STR((char *)expr, 1115); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,11,0,0,0,1,0,0,3,0,18,0,24, +0,36,0,49,0,69,0,97,0,123,0,149,0,174,0,0,0,50,4,0,0, +29,11,11,74,105,100,101,110,116,105,102,105,101,114,47,35,102,63,65,35,37, +115,116,120,71,105,100,47,35,102,45,108,105,115,116,63,72,115,116,114,117,99, +116,45,105,110,102,111,63,79,115,116,114,117,99,116,45,105,110,102,111,45,116, +121,112,101,45,105,100,1,26,115,116,114,117,99,116,45,105,110,102,111,45,99, +111,110,115,116,114,117,99,116,111,114,45,105,100,1,24,115,116,114,117,99,116, +45,105,110,102,111,45,112,114,101,100,105,99,97,116,101,45,105,100,1,24,115, +116,114,117,99,116,45,105,110,102,111,45,97,99,99,101,115,115,111,114,45,105, +100,115,1,23,115,116,114,117,99,116,45,105,110,102,111,45,109,117,116,97,116, +111,114,45,105,100,115,159,34,20,100,159,34,16,1,20,24,65,98,101,103,105, +110,16,0,83,158,40,20,97,114,73,35,37,115,116,114,117,99,116,45,105,110, +102,111,2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,9,30,2,1, +2,2,193,30,2,3,71,105,100,101,110,116,105,102,105,101,114,63,2,30,2, +1,2,4,193,30,2,1,2,5,193,30,2,1,2,6,193,30,2,1,2,7, +193,30,2,1,2,8,193,30,2,1,2,9,193,30,2,1,2,10,193,16,0, +11,11,16,2,2,4,2,2,36,11,16,6,2,9,2,7,2,10,2,8,2, +6,2,5,16,6,11,11,11,11,11,11,16,6,2,9,2,7,2,10,2,8, +2,6,2,5,40,40,9,100,83,158,34,16,2,89,162,34,35,43,2,2,223, +0,27,248,22,147,8,195,28,192,192,248,80,158,36,35,195,80,159,34,34,35, +83,158,34,16,2,89,162,34,36,47,2,4,223,0,28,248,22,63,195,10,28, +248,22,56,195,28,248,22,63,248,22,59,196,27,248,22,58,196,27,248,22,147, +8,194,28,192,192,248,80,158,37,35,194,28,248,194,248,22,58,196,27,248,22, +59,196,28,248,22,63,193,10,28,248,22,56,193,28,248,22,63,248,22,59,194, +27,248,22,58,194,27,248,22,147,8,194,28,192,192,248,80,158,38,35,194,28, +248,195,248,22,58,194,27,248,22,59,194,28,248,22,63,193,10,28,248,22,56, +193,28,248,22,63,248,22,59,194,27,248,22,58,194,27,248,22,147,8,194,28, +192,192,248,80,158,39,35,194,28,248,196,248,22,58,194,249,80,159,38,36,35, +197,248,22,59,195,11,11,11,11,11,11,80,159,34,36,35,83,158,34,16,2, +89,162,34,35,47,2,5,223,0,28,248,22,64,194,28,249,22,188,2,248,22, +70,196,40,28,27,248,22,58,195,27,248,22,147,8,194,28,192,192,248,80,158, +37,35,194,28,27,248,22,84,195,27,248,22,147,8,194,28,192,192,248,80,158, +37,35,194,28,27,248,22,93,195,27,248,22,147,8,194,28,192,192,248,80,158, +37,35,194,28,27,80,158,35,35,27,249,22,76,197,37,28,248,22,63,193,10, +28,248,22,56,193,28,248,22,63,248,22,59,194,27,248,22,58,194,27,248,22, +147,8,194,28,192,192,248,80,158,39,35,194,28,248,194,248,22,58,194,27,248, +22,59,194,28,248,22,63,193,10,28,248,22,56,193,28,248,22,63,248,22,59, +194,27,248,22,58,194,27,248,22,147,8,194,28,192,192,248,80,158,40,35,194, +28,248,195,248,22,58,194,249,80,159,39,36,35,196,248,22,59,195,11,11,11, +11,28,27,249,22,76,196,38,28,248,22,63,193,10,28,248,22,56,193,28,248, +22,63,248,22,59,194,27,248,22,58,194,27,248,22,147,8,194,28,192,192,248, +80,158,38,35,194,28,27,248,22,58,194,27,248,22,147,8,194,28,192,192,248, +80,158,38,35,194,27,248,22,59,194,28,248,22,63,193,10,28,248,22,56,193, +28,248,22,63,248,22,59,194,27,248,22,58,194,27,248,22,147,8,194,28,192, +192,248,80,158,39,35,194,28,27,248,22,58,194,27,248,22,147,8,194,28,192, +192,248,80,158,39,35,194,249,80,159,38,36,35,80,159,38,34,35,248,22,59, +195,11,11,11,11,27,27,249,22,76,197,39,27,248,22,147,8,194,28,192,192, +248,80,158,38,35,194,28,192,192,249,22,149,8,10,249,22,76,198,39,11,11, +11,11,11,11,11,80,159,34,37,35,83,158,34,16,2,22,58,80,159,34,38, +35,83,158,34,16,2,22,84,80,159,34,39,35,83,158,34,16,2,22,93,80, +159,34,40,35,83,158,34,16,2,22,96,80,159,34,41,35,83,158,34,16,2, +32,0,89,162,34,35,42,2,10,222,249,22,76,194,38,80,159,34,42,35,95, +68,35,37,107,101,114,110,101,108,2,3,71,35,37,113,113,45,97,110,100,45, +111,114,9,0}; + EVAL_ONE_SIZED_STR((char *)expr, 1116); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,7,0,0,0,1,0,0,3,0,25,0,38,0, -52,0,145,0,12,1,0,0,184,4,0,0,29,11,11,1,20,108,105,115,116, -45,62,105,109,109,117,116,97,98,108,101,45,108,105,115,116,72,103,101,116,45, -115,116,120,45,105,110,102,111,73,35,37,115,116,114,117,99,116,45,105,110,102, -111,32,5,89,162,34,35,48,71,101,118,101,114,121,45,111,116,104,101,114,222, -28,248,22,63,193,9,28,248,22,63,248,22,59,194,249,22,57,248,22,58,195, -9,27,248,22,86,194,27,249,22,57,248,22,58,197,9,28,248,22,63,194,192, -28,248,22,63,248,22,59,195,249,22,57,248,22,58,196,194,249,2,6,248,22, -86,196,249,22,57,248,22,58,198,196,32,6,89,162,8,64,36,50,64,108,111, -111,112,222,28,248,22,63,193,193,28,248,22,63,248,22,59,194,249,22,57,248, -22,58,195,195,27,248,22,86,194,27,249,22,57,248,22,58,197,197,28,248,22, -63,194,192,28,248,22,63,248,22,59,195,249,22,57,248,22,58,196,194,27,248, -22,86,195,27,249,22,57,248,22,58,198,196,28,248,22,63,194,192,28,248,22, -63,248,22,59,195,249,22,57,248,22,58,196,194,249,2,6,248,22,86,196,249, -22,57,248,22,58,198,196,159,34,20,100,159,34,16,1,20,24,65,98,101,103, -105,110,16,0,83,158,40,20,97,114,71,35,37,100,115,45,104,101,108,112,101, -114,2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,6,30,2,1,2, -2,193,30,2,1,2,3,193,30,2,4,72,115,116,114,117,99,116,45,105,110, -102,111,63,5,30,2,4,79,115,116,114,117,99,116,45,105,110,102,111,45,116, -121,112,101,45,105,100,4,30,2,4,1,24,115,116,114,117,99,116,45,105,110, -102,111,45,97,99,99,101,115,115,111,114,45,105,100,115,0,30,2,4,1,23, -115,116,114,117,99,116,45,105,110,102,111,45,109,117,116,97,116,111,114,45,105, -100,115,2,16,0,11,11,16,1,2,2,35,11,16,1,2,3,16,1,11,16, -1,2,3,35,35,9,94,83,158,34,16,2,89,162,8,36,35,51,2,2,223, -0,28,248,22,63,194,9,249,22,62,248,22,58,196,27,248,22,59,197,28,248, -22,63,193,9,249,22,62,248,22,58,195,27,248,22,59,196,28,248,22,63,193, -9,249,22,62,248,22,58,195,248,80,159,43,34,35,248,22,59,196,80,159,34, -34,35,83,158,34,16,2,89,162,34,38,8,37,2,3,223,0,27,28,197,247, -22,54,11,27,28,198,89,162,8,36,35,45,62,113,115,223,1,28,193,249,22, -65,194,249,22,65,72,113,117,111,116,101,45,115,121,110,116,97,120,197,11,22, -7,27,28,197,249,22,172,13,199,32,0,89,162,8,44,34,39,9,222,11,11, -87,94,28,197,28,28,248,80,158,38,36,193,248,22,146,8,248,80,158,39,37, -194,10,251,22,177,8,11,28,248,80,158,42,36,197,6,63,63,112,97,114,101, -110,116,32,115,116,114,117,99,116,32,105,110,102,111,114,109,97,116,105,111,110, -32,100,111,101,115,32,110,111,116,32,105,110,99,108,117,100,101,32,97,32,116, -121,112,101,32,102,111,114,32,115,117,98,116,121,112,105,110,103,249,22,128,7, -6,32,32,112,97,114,101,110,116,32,115,116,114,117,99,116,32,116,121,112,101, -32,110,111,116,32,100,101,102,105,110,101,100,126,97,28,198,249,22,128,7,6, -43,43,32,40,126,97,32,100,111,101,115,32,110,111,116,32,110,97,109,101,32, -115,116,114,117,99,116,32,116,121,112,101,32,105,110,102,111,114,109,97,116,105, -111,110,41,248,22,153,3,206,6,0,0,200,201,12,12,249,22,7,28,194,248, -80,158,40,37,195,11,28,200,91,159,39,11,90,161,36,34,11,28,199,249,22, -7,249,22,2,204,248,80,158,49,38,204,249,22,2,204,248,80,158,49,39,204, -249,22,7,9,9,90,161,35,36,11,248,22,94,206,90,161,35,37,11,28,206, -32,0,89,162,34,35,42,64,119,114,97,112,222,249,22,57,74,108,105,115,116, -45,105,109,109,117,116,97,98,108,101,194,22,7,90,161,35,38,11,28,206,89, -162,8,36,35,47,70,116,111,116,97,108,45,119,114,97,112,223,9,250,22,65, -63,108,101,116,248,22,65,249,22,67,198,21,93,94,1,22,115,121,110,116,97, -120,45,108,111,99,97,108,45,99,101,114,116,105,102,105,101,114,10,196,22,7, -248,197,248,197,253,22,66,248,23,17,248,22,58,23,23,248,23,17,248,22,84, -23,23,248,23,17,248,22,93,23,23,248,204,27,249,22,71,249,22,2,23,22, -248,2,5,23,17,204,28,248,22,63,193,9,249,22,62,248,22,58,195,27,248, -22,59,196,28,248,22,63,193,9,249,22,62,248,22,58,195,248,80,159,8,26, -34,35,248,22,59,196,248,204,27,249,22,71,249,22,2,23,22,28,248,22,63, -23,17,9,248,2,5,248,22,59,23,18,205,28,248,22,63,193,9,249,22,62, -248,22,58,195,27,248,22,59,196,28,248,22,63,193,9,249,22,62,248,22,58, -195,248,80,159,8,26,34,35,248,22,59,196,28,23,20,248,23,17,23,21,10, -11,80,159,34,35,35,97,68,35,37,107,101,114,110,101,108,65,35,37,115,116, -120,71,35,37,113,113,45,97,110,100,45,111,114,66,35,37,99,111,110,100,2, -4,9,0}; - EVAL_ONE_SIZED_STR((char *)expr, 1241); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,7,0,0,0,1,0,0,3,0,25,0,38, +0,52,0,145,0,12,1,0,0,184,4,0,0,29,11,11,1,20,108,105,115, +116,45,62,105,109,109,117,116,97,98,108,101,45,108,105,115,116,72,103,101,116, +45,115,116,120,45,105,110,102,111,73,35,37,115,116,114,117,99,116,45,105,110, +102,111,32,5,89,162,34,35,48,71,101,118,101,114,121,45,111,116,104,101,114, +222,28,248,22,63,193,9,28,248,22,63,248,22,59,194,249,22,57,248,22,58, +195,9,27,248,22,86,194,27,249,22,57,248,22,58,197,9,28,248,22,63,194, +192,28,248,22,63,248,22,59,195,249,22,57,248,22,58,196,194,249,2,6,248, +22,86,196,249,22,57,248,22,58,198,196,32,6,89,162,8,64,36,50,64,108, +111,111,112,222,28,248,22,63,193,193,28,248,22,63,248,22,59,194,249,22,57, +248,22,58,195,195,27,248,22,86,194,27,249,22,57,248,22,58,197,197,28,248, +22,63,194,192,28,248,22,63,248,22,59,195,249,22,57,248,22,58,196,194,27, +248,22,86,195,27,249,22,57,248,22,58,198,196,28,248,22,63,194,192,28,248, +22,63,248,22,59,195,249,22,57,248,22,58,196,194,249,2,6,248,22,86,196, +249,22,57,248,22,58,198,196,159,34,20,100,159,34,16,1,20,24,65,98,101, +103,105,110,16,0,83,158,40,20,97,114,71,35,37,100,115,45,104,101,108,112, +101,114,2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,6,30,2,1, +2,2,193,30,2,1,2,3,193,30,2,4,72,115,116,114,117,99,116,45,105, +110,102,111,63,5,30,2,4,79,115,116,114,117,99,116,45,105,110,102,111,45, +116,121,112,101,45,105,100,4,30,2,4,1,24,115,116,114,117,99,116,45,105, +110,102,111,45,97,99,99,101,115,115,111,114,45,105,100,115,0,30,2,4,1, +23,115,116,114,117,99,116,45,105,110,102,111,45,109,117,116,97,116,111,114,45, +105,100,115,2,16,0,11,11,16,1,2,2,35,11,16,1,2,3,16,1,11, +16,1,2,3,35,35,9,94,83,158,34,16,2,89,162,8,36,35,51,2,2, +223,0,28,248,22,63,194,9,249,22,62,248,22,58,196,27,248,22,59,197,28, +248,22,63,193,9,249,22,62,248,22,58,195,27,248,22,59,196,28,248,22,63, +193,9,249,22,62,248,22,58,195,248,80,159,43,34,35,248,22,59,196,80,159, +34,34,35,83,158,34,16,2,89,162,34,38,8,37,2,3,223,0,27,28,197, +247,22,54,11,27,28,198,89,162,8,36,35,45,62,113,115,223,1,28,193,249, +22,65,194,249,22,65,72,113,117,111,116,101,45,115,121,110,116,97,120,197,11, +22,7,27,28,197,249,22,173,13,199,32,0,89,162,8,44,34,39,9,222,11, +11,87,94,28,197,28,28,248,80,158,38,36,193,248,22,147,8,248,80,158,39, +37,194,10,251,22,178,8,11,28,248,80,158,42,36,197,6,63,63,112,97,114, +101,110,116,32,115,116,114,117,99,116,32,105,110,102,111,114,109,97,116,105,111, +110,32,100,111,101,115,32,110,111,116,32,105,110,99,108,117,100,101,32,97,32, +116,121,112,101,32,102,111,114,32,115,117,98,116,121,112,105,110,103,249,22,129, +7,6,32,32,112,97,114,101,110,116,32,115,116,114,117,99,116,32,116,121,112, +101,32,110,111,116,32,100,101,102,105,110,101,100,126,97,28,198,249,22,129,7, +6,43,43,32,40,126,97,32,100,111,101,115,32,110,111,116,32,110,97,109,101, +32,115,116,114,117,99,116,32,116,121,112,101,32,105,110,102,111,114,109,97,116, +105,111,110,41,248,22,153,3,206,6,0,0,200,201,12,12,249,22,7,28,194, +248,80,158,40,37,195,11,28,200,91,159,39,11,90,161,36,34,11,28,199,249, +22,7,249,22,2,204,248,80,158,49,38,204,249,22,2,204,248,80,158,49,39, +204,249,22,7,9,9,90,161,35,36,11,248,22,94,206,90,161,35,37,11,28, +206,32,0,89,162,34,35,42,64,119,114,97,112,222,249,22,57,74,108,105,115, +116,45,105,109,109,117,116,97,98,108,101,194,22,7,90,161,35,38,11,28,206, +89,162,8,36,35,47,70,116,111,116,97,108,45,119,114,97,112,223,9,250,22, +65,63,108,101,116,248,22,65,249,22,67,198,21,93,94,1,22,115,121,110,116, +97,120,45,108,111,99,97,108,45,99,101,114,116,105,102,105,101,114,10,196,22, +7,248,197,248,197,253,22,66,248,23,17,248,22,58,23,23,248,23,17,248,22, +84,23,23,248,23,17,248,22,93,23,23,248,204,27,249,22,71,249,22,2,23, +22,248,2,5,23,17,204,28,248,22,63,193,9,249,22,62,248,22,58,195,27, +248,22,59,196,28,248,22,63,193,9,249,22,62,248,22,58,195,248,80,159,8, +26,34,35,248,22,59,196,248,204,27,249,22,71,249,22,2,23,22,28,248,22, +63,23,17,9,248,2,5,248,22,59,23,18,205,28,248,22,63,193,9,249,22, +62,248,22,58,195,27,248,22,59,196,28,248,22,63,193,9,249,22,62,248,22, +58,195,248,80,159,8,26,34,35,248,22,59,196,28,23,20,248,23,17,23,21, +10,11,80,159,34,35,35,97,68,35,37,107,101,114,110,101,108,65,35,37,115, +116,120,71,35,37,113,113,45,97,110,100,45,111,114,66,35,37,99,111,110,100, +2,4,9,0}; + EVAL_ONE_SIZED_STR((char *)expr, 1242); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,74,0,0,0,1,0,0,6,0,9,0,16,0, -31,0,38,0,43,0,57,0,65,0,75,0,82,0,88,0,100,0,105,0,117, -0,131,0,138,0,143,0,148,0,162,0,178,0,180,0,182,0,185,0,195,0, -205,0,216,0,221,0,227,0,232,0,239,0,246,0,252,0,24,1,51,1,64, -1,74,1,84,1,94,1,104,1,113,1,125,1,137,1,153,1,167,1,181,1, -187,1,219,1,249,1,3,2,19,2,122,2,147,2,153,2,159,2,198,2,204, -2,210,2,216,2,255,2,5,3,11,3,22,3,28,3,88,3,211,3,231,3, -4,4,20,4,38,4,54,4,69,4,93,4,213,4,0,0,65,12,0,0,65, -98,101,103,105,110,29,11,11,66,108,101,116,47,101,99,74,45,100,101,102,105, -110,101,45,115,121,110,116,97,120,66,117,110,108,101,115,115,64,119,104,101,110, -73,100,101,102,105,110,101,45,115,116,114,117,99,116,67,45,100,101,102,105,110, -101,69,109,107,45,100,101,102,105,110,101,66,108,97,109,98,100,97,65,35,37, -115,116,120,71,35,37,113,113,45,97,110,100,45,111,114,64,104,101,114,101,71, -35,37,100,115,45,104,101,108,112,101,114,73,35,37,115,116,114,117,99,116,45, -105,110,102,111,66,35,37,99,111,110,100,64,99,111,100,101,64,98,111,100,121, -73,100,101,102,105,110,101,45,118,97,108,117,101,115,75,100,101,102,105,110,101, -45,115,121,110,116,97,120,101,115,61,120,61,108,62,105,102,3,1,7,101,110, -118,50,54,51,49,69,109,97,107,101,45,99,111,114,101,70,108,101,116,45,118, -97,108,117,101,115,64,116,121,112,101,65,109,97,107,101,114,64,112,114,101,100, -66,97,99,99,101,115,115,66,109,117,116,97,116,101,65,113,117,111,116,101,1, -26,109,97,107,101,45,115,116,114,117,99,116,45,102,105,101,108,100,45,97,99, -99,101,115,115,111,114,1,25,109,97,107,101,45,115,116,114,117,99,116,45,102, -105,101,108,100,45,109,117,116,97,116,111,114,72,115,121,110,116,97,120,45,101, -114,114,111,114,69,105,110,115,112,101,99,116,111,114,3,1,7,101,110,118,50, -54,51,57,3,1,7,101,110,118,50,54,53,51,3,1,7,101,110,118,50,54, -53,54,68,35,37,107,101,114,110,101,108,30,2,11,67,115,116,120,45,99,100, -114,6,30,2,11,67,115,116,120,45,99,97,114,5,30,2,11,71,105,100,101, -110,116,105,102,105,101,114,63,2,30,2,12,69,113,113,45,97,112,112,101,110, -100,0,30,2,11,69,115,116,120,45,62,108,105,115,116,4,95,8,193,11,16, -0,97,10,35,11,97,159,2,14,9,11,159,2,15,9,11,159,2,16,9,11, -159,2,12,9,11,159,2,11,9,11,16,0,96,10,34,11,16,12,2,3,2, -2,2,4,2,2,2,5,2,2,2,6,2,2,2,7,2,2,2,8,2,2, -18,96,2,13,8,48,8,47,8,46,16,4,11,11,2,13,3,1,7,101,110, -118,50,54,49,53,18,102,2,13,8,48,8,47,8,46,8,50,16,4,11,11, -64,98,97,115,101,3,1,7,101,110,118,50,54,49,55,16,4,11,11,2,17, -3,1,7,101,110,118,50,54,49,56,16,4,11,11,2,18,3,1,7,101,110, -118,50,54,49,57,16,4,11,11,65,102,105,114,115,116,3,1,7,101,110,118, -50,54,50,48,16,4,11,11,65,112,98,111,100,121,3,1,7,101,110,118,50, -54,50,49,97,8,48,8,47,8,46,8,50,16,4,11,11,2,9,3,1,7, -101,110,118,50,54,49,54,18,158,2,19,8,52,18,158,2,20,8,52,97,8, -48,8,47,8,46,16,4,11,11,2,21,3,1,7,101,110,118,50,54,50,51, -16,4,11,11,2,22,3,1,7,101,110,118,50,54,50,52,18,158,2,13,8, -55,18,158,2,23,8,55,18,158,2,1,8,55,97,8,48,8,47,8,46,16, -4,11,11,2,21,3,1,7,101,110,118,50,54,50,54,16,4,11,11,2,22, -3,1,7,101,110,118,50,54,50,55,18,158,2,13,8,59,18,158,2,23,8, -59,18,158,94,10,64,118,111,105,100,8,59,18,158,2,1,8,59,18,99,2, -13,8,48,8,47,8,46,16,4,11,11,2,17,3,1,7,101,110,118,50,54, -50,57,16,4,11,11,2,22,3,1,7,101,110,118,50,54,51,48,16,6,11, -11,63,118,97,114,65,101,120,112,114,115,2,24,2,24,32,65,89,162,8,100, -36,56,64,108,111,111,112,222,28,248,22,63,193,9,250,22,67,251,22,65,2, -33,2,30,200,249,22,65,2,32,248,22,58,202,251,22,65,2,34,2,31,200, -249,22,65,2,32,248,22,58,202,27,248,22,59,197,27,248,22,177,2,199,28, -248,22,63,194,9,250,22,67,251,22,65,2,33,2,30,199,249,22,65,2,32, -248,22,58,203,251,22,65,2,34,2,31,199,249,22,65,2,32,248,22,58,203, -249,2,65,248,22,59,199,248,22,177,2,198,32,66,89,162,35,37,47,2,35, -222,252,22,1,22,177,8,11,198,197,199,16,6,11,11,2,35,78,98,117,105, -108,100,45,115,116,114,117,99,116,45,110,97,109,101,115,2,37,2,37,16,4, -11,11,2,18,3,1,7,101,110,118,50,54,51,56,16,4,11,11,63,115,116, -120,3,1,7,101,110,118,50,54,51,55,16,4,11,11,2,25,3,1,7,101, -110,118,50,54,51,51,99,8,48,8,47,8,46,8,70,8,69,8,68,8,67, -18,158,94,10,77,99,117,114,114,101,110,116,45,105,110,115,112,101,99,116,111, -114,8,71,18,103,2,13,8,48,8,47,8,46,8,70,8,69,8,68,8,67, -16,10,11,11,64,110,97,109,101,71,102,105,101,108,100,45,110,97,109,101,115, -2,36,68,115,117,112,101,114,45,105,100,2,38,2,38,2,38,2,38,16,4, -11,11,73,100,101,102,105,110,101,100,45,110,97,109,101,115,3,1,7,101,110, -118,50,54,53,52,16,6,11,11,76,115,117,112,101,114,45,105,100,47,115,116, -114,117,99,116,58,68,115,116,120,45,105,110,102,111,2,39,2,39,159,34,20, -100,159,34,16,1,20,24,2,1,16,0,83,158,40,20,97,114,74,35,37,100, -101,102,105,110,101,45,101,116,45,97,108,2,2,10,10,10,34,80,158,34,34, -20,100,159,34,16,0,16,0,11,11,16,0,34,11,16,6,2,3,2,4,2, -5,2,6,2,7,2,8,16,6,11,11,11,11,11,11,16,6,2,3,2,4, -2,5,2,6,2,7,2,8,34,40,97,16,5,94,2,8,2,4,27,20,15, -159,35,34,39,27,89,162,8,36,35,42,2,9,224,2,1,89,162,8,36,35, -58,9,225,1,0,2,27,248,80,158,38,34,197,27,248,80,158,39,35,194,28, -248,80,158,39,36,193,250,22,152,3,198,250,22,67,200,248,22,65,199,249,80, -158,46,37,248,80,158,47,38,248,80,158,48,34,203,9,200,27,248,80,158,40, -34,195,250,22,152,3,20,15,159,42,35,39,250,22,65,201,248,22,65,248,80, -158,47,35,201,250,22,67,2,10,248,80,158,49,34,203,249,80,158,50,37,248, -80,158,51,38,204,9,201,249,22,7,248,195,20,15,159,39,36,39,248,195,20, -15,159,39,37,39,39,20,100,159,34,16,5,2,41,2,42,2,43,2,44,2, -45,16,4,33,49,33,51,33,53,33,54,11,16,5,93,2,6,89,162,34,35, -52,9,223,0,27,248,22,159,3,195,28,28,192,249,22,190,2,248,22,70,195, -36,11,250,22,152,3,20,15,159,38,34,36,250,22,65,20,15,159,41,35,36, -248,80,158,42,34,248,80,158,43,35,202,249,22,67,20,15,159,43,36,36,248, -80,158,44,35,248,80,158,45,35,204,197,250,22,177,8,11,6,10,10,98,97, -100,32,115,121,110,116,97,120,197,34,20,100,159,34,16,2,2,42,2,41,16, -3,33,56,33,57,33,58,11,16,5,93,2,5,89,162,34,35,52,9,223,0, -27,248,22,159,3,195,28,28,192,249,22,190,2,248,22,70,195,36,11,250,22, -152,3,20,15,159,38,34,34,251,22,65,20,15,159,42,35,34,248,22,84,200, -20,15,159,42,36,34,249,22,67,20,15,159,44,37,34,248,22,86,202,197,250, -22,177,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,197,34,20,100, -159,34,16,0,16,4,33,60,33,61,33,62,33,63,11,16,5,93,2,3,89, -162,34,35,55,9,223,0,27,248,22,159,3,195,28,28,192,28,249,22,190,2, -248,22,70,195,36,248,80,158,36,34,248,22,84,194,11,11,27,248,22,84,194, -27,248,80,158,38,35,248,80,158,39,35,198,250,22,152,3,20,15,159,40,34, -38,249,22,65,67,99,97,108,108,47,101,99,250,22,67,2,10,248,22,65,202, -249,80,158,47,36,248,80,158,48,37,203,9,199,250,22,177,8,11,6,10,10, -98,97,100,32,115,121,110,116,97,120,197,34,20,100,159,34,16,4,2,43,2, -41,2,44,2,45,16,1,33,64,11,16,5,93,2,7,27,89,162,8,36,38, -8,31,2,25,223,1,250,22,65,2,26,248,22,65,249,22,65,21,97,2,27, -2,28,2,29,2,30,2,31,26,8,22,65,76,109,97,107,101,45,115,116,114, -117,99,116,45,116,121,112,101,249,22,65,2,32,23,17,23,17,248,22,70,23, -19,34,11,64,110,117,108,108,23,16,252,22,67,66,118,97,108,117,101,115,2, -27,2,28,2,29,249,80,158,44,34,28,248,22,63,23,15,9,250,22,67,251, -22,65,2,33,2,30,34,249,22,65,2,32,248,22,58,23,24,251,22,65,2, -34,2,31,34,249,22,65,2,32,248,22,58,23,24,249,2,65,248,22,59,23, -20,35,9,89,162,8,36,35,8,34,9,224,1,0,87,94,28,248,80,158,36, -35,195,250,22,177,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,197, -12,27,248,80,158,37,36,248,80,158,38,37,197,87,100,27,248,22,56,194,28, -192,192,249,2,66,198,6,17,17,101,109,112,116,121,32,100,101,99,108,97,114, -97,116,105,111,110,27,248,80,158,38,38,194,28,192,192,249,2,66,198,6,18, -18,105,108,108,101,103,97,108,32,117,115,101,32,111,102,32,96,46,39,27,250, -22,191,2,36,248,22,70,197,37,28,192,192,249,2,66,198,6,21,21,119,114, -111,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,116,115,27,248, -80,158,38,35,248,22,58,195,28,192,192,27,28,248,80,158,39,39,248,22,58, -196,28,248,80,158,39,35,248,80,158,40,40,248,22,58,197,28,248,80,158,39, -39,248,80,158,40,37,248,22,58,197,28,248,80,158,39,35,248,80,158,40,40, -248,80,158,41,37,248,22,58,198,248,80,158,39,41,248,80,158,40,37,248,80, -158,41,37,248,22,58,198,11,11,11,11,28,192,192,249,2,66,199,6,55,55, -102,105,114,115,116,32,112,97,114,116,32,109,117,115,116,32,98,101,32,97,110, -32,105,100,101,110,116,105,102,105,101,114,32,111,114,32,112,97,105,114,32,111, -102,32,105,100,101,110,116,105,102,105,101,114,115,27,248,80,158,38,38,248,22, -84,195,28,192,192,28,248,80,158,38,39,248,22,84,195,249,2,66,198,6,41, -41,105,108,108,101,103,97,108,32,117,115,101,32,111,102,32,96,46,39,32,105, -110,32,102,105,101,108,100,32,110,97,109,101,32,115,101,113,117,101,110,99,101, -249,2,66,198,6,30,30,102,105,101,108,100,32,110,97,109,101,115,32,109,117, -115,116,32,98,101,32,97,32,115,101,113,117,101,110,99,101,249,22,3,89,162, -34,35,46,9,224,4,5,27,248,80,158,37,35,196,28,192,192,250,2,66,196, -6,27,27,102,105,101,108,100,32,110,97,109,101,32,110,111,116,32,97,32,105, -100,101,110,116,105,102,105,101,114,198,248,80,158,39,36,248,22,84,196,28,249, -22,77,247,22,174,13,21,93,70,101,120,112,114,101,115,115,105,111,110,249,2, -66,197,6,35,35,97,108,108,111,119,101,100,32,111,110,108,121,32,105,110,32, -100,101,102,105,110,105,116,105,111,110,32,99,111,110,116,101,120,116,115,12,27, -28,248,80,158,38,35,248,22,58,195,248,22,58,194,248,80,158,38,40,248,22, -58,195,27,248,80,158,39,36,248,22,84,196,27,28,248,22,63,248,22,86,197, -20,15,159,39,34,43,248,22,93,196,27,28,248,80,158,41,35,248,22,58,198, -11,248,80,158,41,40,248,80,158,42,37,248,22,58,199,27,249,22,2,89,162, -8,36,35,44,9,223,6,250,22,152,3,195,196,195,27,248,22,50,248,22,153, -3,201,27,249,22,2,22,50,249,22,2,22,153,3,203,249,22,2,22,48,249, -22,71,250,22,65,249,22,167,6,6,7,7,115,116,114,117,99,116,58,202,249, -22,167,6,6,5,5,109,97,107,101,45,202,249,22,167,6,202,6,1,1,63, -249,22,1,22,71,249,22,2,89,162,8,36,35,48,9,223,9,249,22,65,250, -22,167,6,197,6,1,1,45,198,252,22,167,6,6,4,4,115,101,116,45,199, -6,1,1,45,200,6,1,1,33,200,91,159,36,11,90,161,36,34,11,251,80, -158,47,42,206,199,198,10,27,250,22,152,3,20,15,159,47,35,43,250,22,65, -2,1,250,22,65,2,19,204,27,251,23,23,23,21,28,23,19,2,36,11,23, -15,23,20,28,23,15,251,22,65,2,26,248,22,65,249,22,65,21,93,2,36, -23,22,21,95,2,23,96,2,23,2,36,94,63,110,111,116,94,70,105,110,115, -112,101,99,116,111,114,63,2,36,11,96,76,114,97,105,115,101,45,116,121,112, -101,45,101,114,114,111,114,94,2,32,2,7,6,15,15,105,110,115,112,101,99, -116,111,114,32,111,114,32,35,102,2,36,196,192,250,22,65,2,20,248,22,65, -23,17,203,206,28,196,250,22,161,3,195,75,100,105,115,97,112,112,101,97,114, -101,100,45,117,115,101,248,22,177,13,200,192,35,20,100,159,34,16,9,2,44, -2,43,2,45,2,41,30,2,11,69,115,116,120,45,108,105,115,116,63,8,30, -2,11,69,115,116,120,45,112,97,105,114,63,11,2,42,30,2,11,69,115,116, -120,45,110,117,108,108,63,10,30,2,14,72,103,101,116,45,115,116,120,45,105, -110,102,111,0,16,2,33,72,33,73,11,9,93,2,40,98,2,40,2,11,2, -12,2,16,2,15,2,14,0}; - EVAL_ONE_SIZED_STR((char *)expr, 3304); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,75,0,0,0,1,0,0,6,0,9,0,16, +0,23,0,31,0,45,0,60,0,65,0,75,0,82,0,88,0,100,0,105,0, +108,0,120,0,134,0,141,0,146,0,151,0,165,0,181,0,183,0,185,0,188, +0,197,0,207,0,218,0,223,0,229,0,234,0,241,0,248,0,254,0,26,1, +53,1,66,1,76,1,85,1,94,1,103,1,112,1,124,1,136,1,152,1,166, +1,180,1,186,1,218,1,248,1,11,2,26,2,133,2,166,2,172,2,178,2, +224,2,230,2,236,2,242,2,32,3,38,3,44,3,55,3,61,3,128,3,251, +3,15,4,44,4,59,4,76,4,91,4,115,4,139,4,11,5,0,0,119,12, +0,0,65,98,101,103,105,110,29,11,11,66,117,110,108,101,115,115,66,108,101, +116,47,101,99,67,45,100,101,102,105,110,101,73,100,101,102,105,110,101,45,115, +116,114,117,99,116,74,45,100,101,102,105,110,101,45,115,121,110,116,97,120,64, +119,104,101,110,69,109,107,45,100,101,102,105,110,101,66,108,97,109,98,100,97, +65,35,37,115,116,120,71,35,37,113,113,45,97,110,100,45,111,114,64,104,101, +114,101,29,11,11,71,35,37,100,115,45,104,101,108,112,101,114,73,35,37,115, +116,114,117,99,116,45,105,110,102,111,66,35,37,99,111,110,100,64,99,111,100, +101,64,98,111,100,121,73,100,101,102,105,110,101,45,118,97,108,117,101,115,75, +100,101,102,105,110,101,45,115,121,110,116,97,120,101,115,61,120,61,108,62,105, +102,3,1,6,101,110,118,49,55,55,69,109,97,107,101,45,99,111,114,101,70, +108,101,116,45,118,97,108,117,101,115,64,116,121,112,101,65,109,97,107,101,114, +64,112,114,101,100,66,97,99,99,101,115,115,66,109,117,116,97,116,101,65,113, +117,111,116,101,1,26,109,97,107,101,45,115,116,114,117,99,116,45,102,105,101, +108,100,45,97,99,99,101,115,115,111,114,1,25,109,97,107,101,45,115,116,114, +117,99,116,45,102,105,101,108,100,45,109,117,116,97,116,111,114,72,115,121,110, +116,97,120,45,101,114,114,111,114,69,105,110,115,112,101,99,116,111,114,3,1, +6,101,110,118,49,56,53,3,1,6,101,110,118,49,57,57,3,1,6,101,110, +118,50,48,50,68,35,37,107,101,114,110,101,108,30,2,11,67,115,116,120,45, +99,100,114,6,30,2,11,67,115,116,120,45,99,97,114,5,30,2,11,71,105, +100,101,110,116,105,102,105,101,114,63,2,30,2,12,69,113,113,45,97,112,112, +101,110,100,0,30,2,11,69,115,116,120,45,62,108,105,115,116,4,95,8,193, +11,16,0,97,10,35,11,97,159,2,15,9,11,159,2,16,9,11,159,2,17, +9,11,159,2,12,9,11,159,2,11,9,11,16,0,96,10,34,11,16,12,2, +3,2,2,2,4,2,2,2,5,2,2,2,6,2,2,2,7,2,2,2,8, +2,2,18,97,2,13,13,16,4,34,2,14,2,2,11,8,49,8,48,8,47, +16,4,11,11,2,13,3,1,6,101,110,118,49,54,49,18,103,2,13,13,16, +4,34,2,14,2,2,11,8,49,8,48,8,47,8,51,16,4,11,11,64,98, +97,115,101,3,1,6,101,110,118,49,54,51,16,4,11,11,2,18,3,1,6, +101,110,118,49,54,52,16,4,11,11,2,19,3,1,6,101,110,118,49,54,53, +16,4,11,11,65,102,105,114,115,116,3,1,6,101,110,118,49,54,54,16,4, +11,11,65,112,98,111,100,121,3,1,6,101,110,118,49,54,55,98,13,16,4, +34,2,14,2,2,11,8,49,8,48,8,47,8,51,16,4,11,11,2,9,3, +1,6,101,110,118,49,54,50,18,158,2,20,8,53,18,158,2,21,8,53,98, +13,16,4,34,2,14,2,2,11,8,49,8,48,8,47,16,4,11,11,2,22, +3,1,6,101,110,118,49,54,57,16,4,11,11,2,23,3,1,6,101,110,118, +49,55,48,18,158,2,13,8,56,18,158,2,24,8,56,18,158,2,1,8,56, +98,13,16,4,34,2,14,2,2,11,8,49,8,48,8,47,16,4,11,11,2, +22,3,1,6,101,110,118,49,55,50,16,4,11,11,2,23,3,1,6,101,110, +118,49,55,51,18,158,2,13,8,60,18,158,2,24,8,60,18,158,94,10,64, +118,111,105,100,8,60,18,158,2,1,8,60,18,100,2,13,13,16,4,34,2, +14,2,2,11,8,49,8,48,8,47,16,4,11,11,2,18,3,1,6,101,110, +118,49,55,53,16,4,11,11,2,23,3,1,6,101,110,118,49,55,54,16,6, +11,11,63,118,97,114,65,101,120,112,114,115,2,25,2,25,32,66,89,162,8, +100,36,56,64,108,111,111,112,222,28,248,22,63,193,9,250,22,67,251,22,65, +2,34,2,31,200,249,22,65,2,33,248,22,58,202,251,22,65,2,35,2,32, +200,249,22,65,2,33,248,22,58,202,27,248,22,59,197,27,248,22,177,2,199, +28,248,22,63,194,9,250,22,67,251,22,65,2,34,2,31,199,249,22,65,2, +33,248,22,58,203,251,22,65,2,35,2,32,199,249,22,65,2,33,248,22,58, +203,249,2,66,248,22,59,199,248,22,177,2,198,32,67,89,162,35,37,47,2, +36,222,252,22,1,22,178,8,11,198,197,199,16,6,11,11,2,36,78,98,117, +105,108,100,45,115,116,114,117,99,116,45,110,97,109,101,115,2,38,2,38,16, +4,11,11,2,19,3,1,6,101,110,118,49,56,52,16,4,11,11,63,115,116, +120,3,1,6,101,110,118,49,56,51,16,4,11,11,2,26,3,1,6,101,110, +118,49,55,57,100,13,16,4,34,2,14,2,2,11,8,49,8,48,8,47,8, +71,8,70,8,69,8,68,18,158,94,10,77,99,117,114,114,101,110,116,45,105, +110,115,112,101,99,116,111,114,8,72,18,104,2,13,13,16,4,34,2,14,2, +2,11,8,49,8,48,8,47,8,71,8,70,8,69,8,68,16,10,11,11,64, +110,97,109,101,71,102,105,101,108,100,45,110,97,109,101,115,2,37,68,115,117, +112,101,114,45,105,100,2,39,2,39,2,39,2,39,16,4,11,11,73,100,101, +102,105,110,101,100,45,110,97,109,101,115,3,1,6,101,110,118,50,48,48,16, +6,11,11,76,115,117,112,101,114,45,105,100,47,115,116,114,117,99,116,58,68, +115,116,120,45,105,110,102,111,2,40,2,40,159,34,20,100,159,34,16,1,20, +24,2,1,16,0,83,158,40,20,97,114,74,35,37,100,101,102,105,110,101,45, +101,116,45,97,108,2,2,10,10,10,34,80,158,34,34,20,100,159,34,16,0, +16,0,11,11,16,0,34,11,16,6,2,3,2,4,2,5,2,6,2,7,2, +8,16,6,11,11,11,11,11,11,16,6,2,3,2,4,2,5,2,6,2,7, +2,8,34,40,97,16,5,94,2,5,2,7,27,20,15,159,35,34,39,27,89, +162,8,36,35,42,2,9,224,2,1,89,162,8,36,35,58,9,225,1,0,2, +27,248,80,158,38,34,197,27,248,80,158,39,35,194,28,248,80,158,39,36,193, +250,22,152,3,198,250,22,67,200,248,22,65,199,249,80,158,46,37,248,80,158, +47,38,248,80,158,48,34,203,9,200,27,248,80,158,40,34,195,250,22,152,3, +20,15,159,42,35,39,250,22,65,201,248,22,65,248,80,158,47,35,201,250,22, +67,2,10,248,80,158,49,34,203,249,80,158,50,37,248,80,158,51,38,204,9, +201,249,22,7,248,195,20,15,159,39,36,39,248,195,20,15,159,39,37,39,39, +20,100,159,34,16,5,2,42,2,43,2,44,2,45,2,46,16,4,33,50,33, +52,33,54,33,55,11,16,5,93,2,8,89,162,34,35,52,9,223,0,27,248, +22,159,3,195,28,28,192,249,22,190,2,248,22,70,195,36,11,250,22,152,3, +20,15,159,38,34,36,250,22,65,20,15,159,41,35,36,248,80,158,42,34,248, +80,158,43,35,202,249,22,67,20,15,159,43,36,36,248,80,158,44,35,248,80, +158,45,35,204,197,250,22,178,8,11,6,10,10,98,97,100,32,115,121,110,116, +97,120,197,34,20,100,159,34,16,2,2,43,2,42,16,3,33,57,33,58,33, +59,11,16,5,93,2,3,89,162,34,35,52,9,223,0,27,248,22,159,3,195, +28,28,192,249,22,190,2,248,22,70,195,36,11,250,22,152,3,20,15,159,38, +34,34,251,22,65,20,15,159,42,35,34,248,22,84,200,20,15,159,42,36,34, +249,22,67,20,15,159,44,37,34,248,22,86,202,197,250,22,178,8,11,6,10, +10,98,97,100,32,115,121,110,116,97,120,197,34,20,100,159,34,16,0,16,4, +33,61,33,62,33,63,33,64,11,16,5,93,2,4,89,162,34,35,55,9,223, +0,27,248,22,159,3,195,28,28,192,28,249,22,190,2,248,22,70,195,36,248, +80,158,36,34,248,22,84,194,11,11,27,248,22,84,194,27,248,80,158,38,35, +248,80,158,39,35,198,250,22,152,3,20,15,159,40,34,38,249,22,65,67,99, +97,108,108,47,101,99,250,22,67,2,10,248,22,65,202,249,80,158,47,36,248, +80,158,48,37,203,9,199,250,22,178,8,11,6,10,10,98,97,100,32,115,121, +110,116,97,120,197,34,20,100,159,34,16,4,2,44,2,42,2,45,2,46,16, +1,33,65,11,16,5,93,2,6,27,89,162,8,36,38,8,31,2,26,223,1, +250,22,65,2,27,248,22,65,249,22,65,21,97,2,28,2,29,2,30,2,31, +2,32,26,8,22,65,76,109,97,107,101,45,115,116,114,117,99,116,45,116,121, +112,101,249,22,65,2,33,23,17,23,17,248,22,70,23,19,34,11,64,110,117, +108,108,23,16,252,22,67,66,118,97,108,117,101,115,2,28,2,29,2,30,249, +80,158,44,34,28,248,22,63,23,15,9,250,22,67,251,22,65,2,34,2,31, +34,249,22,65,2,33,248,22,58,23,24,251,22,65,2,35,2,32,34,249,22, +65,2,33,248,22,58,23,24,249,2,66,248,22,59,23,20,35,9,89,162,8, +36,35,8,34,9,224,1,0,87,94,28,248,80,158,36,35,195,250,22,178,8, +11,6,10,10,98,97,100,32,115,121,110,116,97,120,197,12,27,248,80,158,37, +36,248,80,158,38,37,197,87,100,27,248,22,56,194,28,192,192,249,2,67,198, +6,17,17,101,109,112,116,121,32,100,101,99,108,97,114,97,116,105,111,110,27, +248,80,158,38,38,194,28,192,192,249,2,67,198,6,18,18,105,108,108,101,103, +97,108,32,117,115,101,32,111,102,32,96,46,39,27,250,22,191,2,36,248,22, +70,197,37,28,192,192,249,2,67,198,6,21,21,119,114,111,110,103,32,110,117, +109,98,101,114,32,111,102,32,112,97,114,116,115,27,248,80,158,38,35,248,22, +58,195,28,192,192,27,28,248,80,158,39,39,248,22,58,196,28,248,80,158,39, +35,248,80,158,40,40,248,22,58,197,28,248,80,158,39,39,248,80,158,40,37, +248,22,58,197,28,248,80,158,39,35,248,80,158,40,40,248,80,158,41,37,248, +22,58,198,248,80,158,39,41,248,80,158,40,37,248,80,158,41,37,248,22,58, +198,11,11,11,11,28,192,192,249,2,67,199,6,55,55,102,105,114,115,116,32, +112,97,114,116,32,109,117,115,116,32,98,101,32,97,110,32,105,100,101,110,116, +105,102,105,101,114,32,111,114,32,112,97,105,114,32,111,102,32,105,100,101,110, +116,105,102,105,101,114,115,27,248,80,158,38,38,248,22,84,195,28,192,192,28, +248,80,158,38,39,248,22,84,195,249,2,67,198,6,41,41,105,108,108,101,103, +97,108,32,117,115,101,32,111,102,32,96,46,39,32,105,110,32,102,105,101,108, +100,32,110,97,109,101,32,115,101,113,117,101,110,99,101,249,2,67,198,6,30, +30,102,105,101,108,100,32,110,97,109,101,115,32,109,117,115,116,32,98,101,32, +97,32,115,101,113,117,101,110,99,101,249,22,3,89,162,34,35,46,9,224,4, +5,27,248,80,158,37,35,196,28,192,192,250,2,67,196,6,27,27,102,105,101, +108,100,32,110,97,109,101,32,110,111,116,32,97,32,105,100,101,110,116,105,102, +105,101,114,198,248,80,158,39,36,248,22,84,196,28,249,22,77,247,22,175,13, +21,93,70,101,120,112,114,101,115,115,105,111,110,249,2,67,197,6,35,35,97, +108,108,111,119,101,100,32,111,110,108,121,32,105,110,32,100,101,102,105,110,105, +116,105,111,110,32,99,111,110,116,101,120,116,115,12,27,28,248,80,158,38,35, +248,22,58,195,248,22,58,194,248,80,158,38,40,248,22,58,195,27,248,80,158, +39,36,248,22,84,196,27,28,248,22,63,248,22,86,197,20,15,159,39,34,43, +248,22,93,196,27,28,248,80,158,41,35,248,22,58,198,11,248,80,158,41,40, +248,80,158,42,37,248,22,58,199,27,249,22,2,89,162,8,36,35,44,9,223, +6,250,22,152,3,195,196,195,27,248,22,50,248,22,153,3,201,27,249,22,2, +22,50,249,22,2,22,153,3,203,249,22,2,22,48,249,22,71,250,22,65,249, +22,168,6,6,7,7,115,116,114,117,99,116,58,202,249,22,168,6,6,5,5, +109,97,107,101,45,202,249,22,168,6,202,6,1,1,63,249,22,1,22,71,249, +22,2,89,162,8,36,35,48,9,223,9,249,22,65,250,22,168,6,197,6,1, +1,45,198,252,22,168,6,6,4,4,115,101,116,45,199,6,1,1,45,200,6, +1,1,33,200,91,159,36,11,90,161,36,34,11,251,80,158,47,42,206,199,198, +10,27,250,22,152,3,20,15,159,47,35,43,250,22,65,2,1,250,22,65,2, +20,204,27,251,23,23,23,21,28,23,19,2,37,11,23,15,23,20,28,23,15, +251,22,65,2,27,248,22,65,249,22,65,21,93,2,37,23,22,21,95,2,24, +96,2,24,2,37,94,63,110,111,116,94,70,105,110,115,112,101,99,116,111,114, +63,2,37,11,96,76,114,97,105,115,101,45,116,121,112,101,45,101,114,114,111, +114,94,2,33,2,6,6,15,15,105,110,115,112,101,99,116,111,114,32,111,114, +32,35,102,2,37,196,192,250,22,65,2,21,248,22,65,23,17,203,206,28,196, +250,22,161,3,195,75,100,105,115,97,112,112,101,97,114,101,100,45,117,115,101, +248,22,178,13,200,192,35,20,100,159,34,16,9,2,45,2,44,2,46,2,42, +30,2,11,69,115,116,120,45,108,105,115,116,63,8,30,2,11,69,115,116,120, +45,112,97,105,114,63,11,2,43,30,2,11,69,115,116,120,45,110,117,108,108, +63,10,30,2,15,72,103,101,116,45,115,116,120,45,105,110,102,111,0,16,2, +33,73,33,74,11,9,93,2,41,98,2,41,2,11,2,12,2,17,2,16,2, +15,0}; + EVAL_ONE_SIZED_STR((char *)expr, 3361); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,17,0,0,0,1,0,0,7,0,12,0,20,0, -27,0,34,0,39,0,50,0,65,0,70,0,74,0,77,0,91,0,95,0,110, -0,122,0,129,0,0,0,48,1,0,0,66,117,110,108,101,115,115,64,108,101, -116,42,67,45,100,101,102,105,110,101,66,108,101,116,47,101,99,66,108,101,116, -114,101,99,64,99,111,110,100,70,113,117,97,115,105,113,117,111,116,101,74,45, -100,101,102,105,110,101,45,115,121,110,116,97,120,64,119,104,101,110,63,97,110, -100,62,111,114,73,100,101,102,105,110,101,45,115,116,114,117,99,116,63,108,101, -116,74,35,37,100,101,102,105,110,101,45,101,116,45,97,108,71,35,37,113,113, -45,97,110,100,45,111,114,66,35,37,99,111,110,100,159,34,20,100,159,34,16, -1,20,24,65,98,101,103,105,110,16,0,83,158,40,20,97,114,74,35,37,115, -109,97,108,108,45,115,99,104,101,109,101,29,11,11,10,10,10,34,80,158,34, -34,20,100,159,34,16,0,16,0,11,11,16,0,34,11,16,13,2,1,2,2, -2,3,2,4,2,5,2,6,2,7,2,8,2,9,2,10,2,11,2,12,2, -13,16,13,2,14,2,15,2,14,2,14,2,15,2,16,2,15,2,14,2,14, -2,15,2,15,2,14,2,15,16,13,2,1,2,2,2,3,2,4,2,5,2, -6,2,7,2,8,2,9,2,10,2,11,2,12,2,13,34,47,9,9,97,68, -35,37,107,101,114,110,101,108,65,35,37,115,116,120,2,15,2,16,2,14,9, -0}; - EVAL_ONE_SIZED_STR((char *)expr, 357); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,17,0,0,0,1,0,0,7,0,11,0,16, +0,30,0,34,0,45,0,48,0,56,0,71,0,78,0,85,0,90,0,95,0, +110,0,122,0,129,0,0,0,48,1,0,0,66,108,101,116,47,101,99,63,108, +101,116,64,99,111,110,100,73,100,101,102,105,110,101,45,115,116,114,117,99,116, +63,97,110,100,70,113,117,97,115,105,113,117,111,116,101,62,111,114,67,45,100, +101,102,105,110,101,74,45,100,101,102,105,110,101,45,115,121,110,116,97,120,66, +108,101,116,114,101,99,66,117,110,108,101,115,115,64,108,101,116,42,64,119,104, +101,110,74,35,37,100,101,102,105,110,101,45,101,116,45,97,108,71,35,37,113, +113,45,97,110,100,45,111,114,66,35,37,99,111,110,100,159,34,20,100,159,34, +16,1,20,24,65,98,101,103,105,110,16,0,83,158,40,20,97,114,74,35,37, +115,109,97,108,108,45,115,99,104,101,109,101,29,11,11,10,10,10,34,80,158, +34,34,20,100,159,34,16,0,16,0,11,11,16,0,34,11,16,13,2,1,2, +2,2,3,2,4,2,5,2,6,2,7,2,8,2,9,2,10,2,11,2,12, +2,13,16,13,2,14,2,15,2,16,2,14,2,15,2,15,2,15,2,14,2, +14,2,15,2,14,2,15,2,14,16,13,2,1,2,2,2,3,2,4,2,5, +2,6,2,7,2,8,2,9,2,10,2,11,2,12,2,13,34,47,9,9,97, +68,35,37,107,101,114,110,101,108,65,35,37,115,116,120,2,15,2,16,2,14, +9,0}; + EVAL_ONE_SIZED_STR((char *)expr, 358); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,116,0,0,0,1,0,0,3,0,8,0,17,0, -22,0,31,0,44,0,58,0,75,0,104,0,114,0,120,0,128,0,136,0,159, -0,176,0,182,0,192,0,196,0,207,0,219,0,231,0,246,0,5,1,18,1, -35,1,48,1,63,1,74,1,85,1,103,1,128,1,146,1,155,1,168,1,191, -1,213,1,230,1,249,1,13,2,36,2,60,2,80,2,96,2,118,2,141,2, -145,2,160,2,162,2,170,2,175,2,185,2,194,2,198,2,208,2,218,2,227, -2,237,2,242,2,252,2,3,3,5,3,8,3,13,3,23,3,27,3,31,3, -33,3,37,3,43,3,100,3,110,3,121,3,125,3,133,3,143,3,147,3,155, -3,175,3,188,3,193,3,198,3,207,3,214,3,216,3,220,3,225,3,227,3, -229,3,234,3,241,3,250,3,0,4,19,4,72,4,82,4,87,4,248,4,18, -5,219,5,246,5,117,6,37,7,146,7,27,8,250,8,217,9,150,10,106,11, -215,11,68,12,166,12,92,13,201,13,24,14,97,14,0,0,0,55,0,0,29, -11,11,64,115,101,116,33,68,35,37,107,101,114,110,101,108,64,46,46,46,63, -68,115,116,120,45,109,101,109,113,72,115,116,120,45,109,101,109,113,45,112,111, -115,73,115,116,120,45,109,101,109,113,42,45,112,111,115,76,112,105,99,107,45, -115,112,101,99,105,102,105,99,105,116,121,1,27,109,97,107,101,45,109,97,116, -99,104,38,101,110,118,47,101,120,116,114,97,99,116,45,118,97,114,115,69,101, -108,108,105,112,115,105,115,63,65,35,37,115,116,120,67,115,116,120,45,99,100, -114,67,115,116,120,45,99,97,114,1,21,103,101,116,45,101,108,108,105,112,115, -105,115,45,110,101,115,116,105,110,103,115,76,102,108,97,116,116,101,110,45,110, -101,115,116,105,110,103,115,65,97,112,112,45,101,69,115,116,120,45,112,97,105, -114,63,63,97,112,112,70,97,112,112,45,97,112,112,101,110,100,71,105,100,101, -110,116,105,102,105,101,114,63,71,115,116,120,45,118,101,99,116,111,114,63,74, -109,97,107,101,45,109,97,116,99,104,38,101,110,118,74,103,101,116,45,109,97, -116,99,104,45,118,97,114,115,72,109,97,107,101,45,112,101,120,112,97,110,100, -76,101,108,108,105,112,115,105,115,45,115,117,98,45,101,110,118,72,101,120,116, -114,97,99,116,45,118,97,114,115,74,97,112,112,108,121,45,108,105,115,116,45, -114,101,102,70,97,112,112,108,121,45,116,111,45,114,70,97,112,112,108,121,45, -99,111,110,115,77,99,104,101,99,107,45,110,111,116,45,112,97,116,116,101,114, -110,1,23,109,117,108,116,105,112,108,101,45,101,108,108,105,112,115,105,115,45, -118,97,114,115,63,77,115,116,120,45,115,109,97,108,108,101,114,45,116,104,97, -110,63,68,115,116,120,45,115,105,122,101,72,110,111,45,101,108,108,105,112,115, -101,115,63,1,21,115,116,114,117,99,116,58,115,121,110,116,97,120,45,109,97, -112,112,105,110,103,1,20,45,109,97,107,101,45,115,121,110,116,97,120,45,109, -97,112,112,105,110,103,76,45,115,121,110,116,97,120,45,109,97,112,112,105,110, -103,63,78,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,114,101,102, -79,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,115,101,116,33,1, -21,45,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,100,101,112,116, -104,1,22,45,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,118,97, -108,118,97,114,79,109,97,107,101,45,115,121,110,116,97,120,45,109,97,112,112, -105,110,103,75,115,121,110,116,97,120,45,109,97,112,112,105,110,103,63,1,20, -115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,100,101,112,116,104,1, -21,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,118,97,108,118,97, -114,63,46,46,46,74,35,37,115,109,97,108,108,45,115,99,104,101,109,101,61, -112,67,112,114,111,116,111,45,114,64,100,101,115,116,3,1,7,101,110,118,50, -55,52,48,68,101,120,112,97,110,100,101,114,63,116,111,112,3,1,7,101,110, -118,50,55,52,54,3,1,7,101,110,118,50,55,52,55,68,101,108,45,99,111, -117,110,116,3,1,7,101,110,118,50,55,52,56,64,108,111,111,112,3,1,7, -101,110,118,50,56,52,56,66,108,97,109,98,100,97,61,101,62,105,102,64,108, -105,115,116,69,115,116,120,45,62,108,105,115,116,63,101,115,99,63,108,101,116, -61,108,63,109,97,112,65,113,117,111,116,101,6,54,54,109,105,115,112,108,97, -99,101,100,32,101,108,108,105,112,115,101,115,32,105,110,32,112,97,116,116,101, -114,110,32,40,102,111,108,108,111,119,115,32,111,116,104,101,114,32,101,108,108, -105,112,115,101,115,41,69,112,114,101,45,105,116,101,109,115,70,112,111,115,116, -45,105,116,101,109,115,63,111,107,63,67,99,111,110,115,47,35,102,69,97,112, -112,101,110,100,47,35,102,63,99,97,112,67,115,121,110,116,97,120,63,79,109, -111,100,117,108,101,45,105,100,101,110,116,105,102,105,101,114,61,63,72,113,117, -111,116,101,45,115,121,110,116,97,120,64,110,117,108,108,64,119,114,97,112,68, -115,121,110,116,97,120,45,101,66,115,121,110,116,97,120,61,114,63,99,97,114, -64,99,97,100,114,61,97,61,98,64,118,97,108,115,66,97,112,112,101,110,100, -68,115,104,97,108,108,111,119,115,65,97,112,112,108,121,78,112,97,116,116,101, -114,110,45,115,117,98,115,116,105,116,117,116,101,6,50,50,109,105,115,115,105, -110,103,32,101,108,108,105,112,115,101,115,32,119,105,116,104,32,112,97,116,116, -101,114,110,32,118,97,114,105,97,98,108,101,32,105,110,32,116,101,109,112,108, -97,116,101,95,8,193,11,16,2,2,2,2,3,95,35,11,16,0,97,10,34, -11,94,159,2,47,9,11,159,2,11,9,11,16,72,2,19,2,1,2,37,2, -1,2,30,2,1,2,38,2,1,2,34,2,1,2,45,2,1,2,10,2,1, -2,4,2,1,2,41,2,1,2,8,2,1,2,44,2,1,2,9,2,1,2, -29,2,1,2,31,2,1,2,26,2,1,2,5,2,1,2,35,2,1,2,27, -2,1,2,6,2,1,2,33,2,1,2,32,2,1,2,22,2,1,2,28,2, -1,2,14,2,1,2,23,2,1,2,18,2,1,2,25,2,1,2,40,2,1, -2,24,2,1,2,43,2,1,2,15,2,1,2,36,2,1,2,16,2,1,2, -7,2,1,2,42,2,1,2,39,2,1,18,97,2,46,8,97,8,96,8,95, -16,4,11,11,61,115,3,1,7,101,110,118,50,54,54,48,18,103,2,46,8, -97,8,96,8,95,16,10,11,11,2,48,2,49,61,107,2,50,2,51,2,51, -2,51,2,51,16,6,11,11,2,52,2,53,3,1,7,101,110,118,50,55,52, -52,3,1,7,101,110,118,50,55,52,50,16,6,11,11,2,52,2,53,2,54, -2,54,16,14,11,11,2,48,2,49,69,108,111,99,97,108,45,116,111,112,73, -117,115,101,45,101,108,108,105,112,115,101,115,63,72,117,115,101,45,116,97,105, -108,45,112,111,115,65,104,97,115,104,33,2,55,2,55,2,55,2,55,2,55, -2,55,16,10,11,11,66,112,45,104,101,97,100,2,56,66,114,101,115,116,45, -112,67,108,97,115,116,45,101,108,2,57,2,57,2,57,2,57,16,4,11,11, -2,58,3,1,7,101,110,118,50,55,53,49,16,4,11,11,2,56,3,1,7, -101,110,118,50,55,53,50,18,97,2,2,8,97,8,96,8,95,16,6,11,11, -64,115,101,108,102,63,115,116,120,2,59,2,59,32,101,89,162,8,100,37,50, -2,58,222,28,248,22,63,195,11,28,28,248,22,149,3,248,22,58,196,249,22, -164,3,194,248,22,58,197,11,193,27,248,22,177,2,195,27,248,22,59,197,28, -248,22,63,193,11,28,28,248,22,149,3,248,22,58,194,249,22,164,3,196,248, -22,58,195,11,193,27,248,22,177,2,195,27,248,22,59,195,28,248,22,63,193, -11,28,28,248,22,149,3,248,22,58,194,249,22,164,3,198,248,22,58,195,11, -193,250,2,101,199,248,22,177,2,197,248,22,59,196,32,102,89,162,8,100,37, -58,2,58,222,28,248,22,63,195,11,28,249,22,164,3,194,27,248,22,58,198, -28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248, -22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193, -192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22, -149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194, -28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248, -22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193, -192,248,2,103,248,22,58,194,193,250,2,102,195,248,22,177,2,197,248,22,59, -198,32,103,89,162,8,64,35,49,2,58,222,28,248,22,149,3,193,192,27,248, -22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193, -192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22, -149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194, -28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,248,2, -103,248,22,58,194,32,104,89,162,8,100,38,49,2,58,222,28,248,22,149,3, -196,27,250,22,122,196,248,22,153,3,200,9,87,94,28,249,22,5,89,162,8, -36,35,43,9,223,6,249,22,164,3,195,194,194,251,22,177,8,248,22,153,3, -199,6,30,30,118,97,114,105,97,98,108,101,32,117,115,101,100,32,116,119,105, -99,101,32,105,110,32,112,97,116,116,101,114,110,199,200,12,250,22,121,196,248, -22,153,3,200,249,22,57,201,197,28,248,22,56,196,87,94,251,2,104,196,197, -198,248,22,58,200,251,2,104,196,197,198,248,22,59,200,12,32,105,89,162,8, -64,35,50,2,58,222,28,248,22,63,193,9,28,248,22,85,193,27,248,22,59, -194,28,248,22,63,193,9,28,248,22,85,193,27,248,22,59,194,28,248,22,63, -193,9,28,248,22,85,193,248,2,105,248,22,59,194,249,22,57,248,22,83,195, -248,2,105,248,22,59,196,249,22,57,248,22,83,195,27,248,22,59,196,28,248, -22,63,193,9,28,248,22,85,193,248,2,105,248,22,59,194,249,22,57,248,22, -83,195,248,2,105,248,22,59,196,249,22,57,248,22,83,195,27,248,22,59,196, -28,248,22,63,193,9,28,248,22,85,193,27,248,22,59,194,28,248,22,63,193, -9,28,248,22,85,193,248,2,105,248,22,59,194,249,22,57,248,22,83,195,248, -2,105,248,22,59,196,249,22,57,248,22,83,195,27,248,22,59,196,28,248,22, -63,193,9,28,248,22,85,193,248,2,105,248,22,59,194,249,22,57,248,22,83, -195,248,2,105,248,22,59,196,32,106,89,162,8,64,35,50,2,58,222,28,248, -22,63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,27,248,22,59,196, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,117,0,0,0,1,0,0,3,0,8,0,17, +0,22,0,31,0,44,0,58,0,75,0,104,0,114,0,120,0,128,0,136,0, +159,0,176,0,182,0,192,0,196,0,207,0,219,0,231,0,246,0,5,1,18, +1,35,1,48,1,63,1,74,1,85,1,103,1,128,1,146,1,155,1,168,1, +191,1,213,1,230,1,249,1,13,2,36,2,60,2,80,2,96,2,118,2,141, +2,145,2,148,2,163,2,165,2,173,2,178,2,187,2,196,2,200,2,209,2, +218,2,227,2,236,2,241,2,250,2,1,3,3,3,6,3,11,3,21,3,25, +3,29,3,31,3,35,3,41,3,98,3,108,3,119,3,123,3,131,3,141,3, +145,3,153,3,173,3,186,3,191,3,196,3,205,3,212,3,214,3,218,3,223, +3,225,3,227,3,232,3,239,3,248,3,254,3,17,4,70,4,80,4,85,4, +246,4,24,5,230,5,10,6,137,6,57,7,166,7,47,8,14,9,237,9,170, +10,126,11,235,11,88,12,186,12,112,13,221,13,44,14,117,14,0,0,20,55, +0,0,29,11,11,64,115,101,116,33,68,35,37,107,101,114,110,101,108,64,46, +46,46,63,68,115,116,120,45,109,101,109,113,72,115,116,120,45,109,101,109,113, +45,112,111,115,73,115,116,120,45,109,101,109,113,42,45,112,111,115,76,112,105, +99,107,45,115,112,101,99,105,102,105,99,105,116,121,1,27,109,97,107,101,45, +109,97,116,99,104,38,101,110,118,47,101,120,116,114,97,99,116,45,118,97,114, +115,69,101,108,108,105,112,115,105,115,63,65,35,37,115,116,120,67,115,116,120, +45,99,100,114,67,115,116,120,45,99,97,114,1,21,103,101,116,45,101,108,108, +105,112,115,105,115,45,110,101,115,116,105,110,103,115,76,102,108,97,116,116,101, +110,45,110,101,115,116,105,110,103,115,65,97,112,112,45,101,69,115,116,120,45, +112,97,105,114,63,63,97,112,112,70,97,112,112,45,97,112,112,101,110,100,71, +105,100,101,110,116,105,102,105,101,114,63,71,115,116,120,45,118,101,99,116,111, +114,63,74,109,97,107,101,45,109,97,116,99,104,38,101,110,118,74,103,101,116, +45,109,97,116,99,104,45,118,97,114,115,72,109,97,107,101,45,112,101,120,112, +97,110,100,76,101,108,108,105,112,115,105,115,45,115,117,98,45,101,110,118,72, +101,120,116,114,97,99,116,45,118,97,114,115,74,97,112,112,108,121,45,108,105, +115,116,45,114,101,102,70,97,112,112,108,121,45,116,111,45,114,70,97,112,112, +108,121,45,99,111,110,115,77,99,104,101,99,107,45,110,111,116,45,112,97,116, +116,101,114,110,1,23,109,117,108,116,105,112,108,101,45,101,108,108,105,112,115, +105,115,45,118,97,114,115,63,77,115,116,120,45,115,109,97,108,108,101,114,45, +116,104,97,110,63,68,115,116,120,45,115,105,122,101,72,110,111,45,101,108,108, +105,112,115,101,115,63,1,21,115,116,114,117,99,116,58,115,121,110,116,97,120, +45,109,97,112,112,105,110,103,1,20,45,109,97,107,101,45,115,121,110,116,97, +120,45,109,97,112,112,105,110,103,76,45,115,121,110,116,97,120,45,109,97,112, +112,105,110,103,63,78,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45, +114,101,102,79,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,115,101, +116,33,1,21,45,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,100, +101,112,116,104,1,22,45,115,121,110,116,97,120,45,109,97,112,112,105,110,103, +45,118,97,108,118,97,114,79,109,97,107,101,45,115,121,110,116,97,120,45,109, +97,112,112,105,110,103,75,115,121,110,116,97,120,45,109,97,112,112,105,110,103, +63,1,20,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,100,101,112, +116,104,1,21,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,118,97, +108,118,97,114,63,46,46,46,29,11,11,74,35,37,115,109,97,108,108,45,115, +99,104,101,109,101,61,112,67,112,114,111,116,111,45,114,64,100,101,115,116,3, +1,6,101,110,118,50,56,54,68,101,120,112,97,110,100,101,114,63,116,111,112, +3,1,6,101,110,118,50,57,50,3,1,6,101,110,118,50,57,51,68,101,108, +45,99,111,117,110,116,3,1,6,101,110,118,50,57,52,64,108,111,111,112,3, +1,6,101,110,118,51,57,52,66,108,97,109,98,100,97,61,101,62,105,102,64, +108,105,115,116,69,115,116,120,45,62,108,105,115,116,63,101,115,99,63,108,101, +116,61,108,63,109,97,112,65,113,117,111,116,101,6,54,54,109,105,115,112,108, +97,99,101,100,32,101,108,108,105,112,115,101,115,32,105,110,32,112,97,116,116, +101,114,110,32,40,102,111,108,108,111,119,115,32,111,116,104,101,114,32,101,108, +108,105,112,115,101,115,41,69,112,114,101,45,105,116,101,109,115,70,112,111,115, +116,45,105,116,101,109,115,63,111,107,63,67,99,111,110,115,47,35,102,69,97, +112,112,101,110,100,47,35,102,63,99,97,112,67,115,121,110,116,97,120,63,79, +109,111,100,117,108,101,45,105,100,101,110,116,105,102,105,101,114,61,63,72,113, +117,111,116,101,45,115,121,110,116,97,120,64,110,117,108,108,64,119,114,97,112, +68,115,121,110,116,97,120,45,101,66,115,121,110,116,97,120,61,114,63,99,97, +114,64,99,97,100,114,61,97,61,98,64,118,97,108,115,66,97,112,112,101,110, +100,68,115,104,97,108,108,111,119,115,65,97,112,112,108,121,78,112,97,116,116, +101,114,110,45,115,117,98,115,116,105,116,117,116,101,6,50,50,109,105,115,115, +105,110,103,32,101,108,108,105,112,115,101,115,32,119,105,116,104,32,112,97,116, +116,101,114,110,32,118,97,114,105,97,98,108,101,32,105,110,32,116,101,109,112, +108,97,116,101,95,8,193,11,16,2,2,2,2,3,95,35,11,16,0,97,10, +34,11,94,159,2,48,9,11,159,2,11,9,11,16,72,2,29,2,1,2,35, +2,1,2,43,2,1,2,10,2,1,2,16,2,1,2,31,2,1,2,41,2, +1,2,19,2,1,2,5,2,1,2,36,2,1,2,32,2,1,2,22,2,1, +2,38,2,1,2,42,2,1,2,23,2,1,2,37,2,1,2,24,2,1,2, +30,2,1,2,8,2,1,2,44,2,1,2,26,2,1,2,28,2,1,2,14, +2,1,2,27,2,1,2,4,2,1,2,45,2,1,2,15,2,1,2,39,2, +1,2,18,2,1,2,33,2,1,2,25,2,1,2,6,2,1,2,9,2,1, +2,34,2,1,2,40,2,1,2,7,2,1,18,98,2,46,13,16,4,34,2, +47,2,1,11,8,98,8,97,8,96,16,4,11,11,61,115,3,1,6,101,110, +118,50,48,54,18,104,2,46,13,16,4,34,2,47,2,1,11,8,98,8,97, +8,96,16,10,11,11,2,49,2,50,61,107,2,51,2,52,2,52,2,52,2, +52,16,6,11,11,2,53,2,54,3,1,6,101,110,118,50,57,48,3,1,6, +101,110,118,50,56,56,16,6,11,11,2,53,2,54,2,55,2,55,16,14,11, +11,2,49,2,50,69,108,111,99,97,108,45,116,111,112,73,117,115,101,45,101, +108,108,105,112,115,101,115,63,72,117,115,101,45,116,97,105,108,45,112,111,115, +65,104,97,115,104,33,2,56,2,56,2,56,2,56,2,56,2,56,16,10,11, +11,66,112,45,104,101,97,100,2,57,66,114,101,115,116,45,112,67,108,97,115, +116,45,101,108,2,58,2,58,2,58,2,58,16,4,11,11,2,59,3,1,6, +101,110,118,50,57,55,16,4,11,11,2,57,3,1,6,101,110,118,50,57,56, +18,98,2,2,13,16,4,34,2,47,2,1,11,8,98,8,97,8,96,16,6, +11,11,64,115,101,108,102,63,115,116,120,2,60,2,60,32,102,89,162,8,100, +37,50,2,59,222,28,248,22,63,195,11,28,28,248,22,149,3,248,22,58,196, +249,22,164,3,194,248,22,58,197,11,193,27,248,22,177,2,195,27,248,22,59, +197,28,248,22,63,193,11,28,28,248,22,149,3,248,22,58,194,249,22,164,3, +196,248,22,58,195,11,193,27,248,22,177,2,195,27,248,22,59,195,28,248,22, +63,193,11,28,28,248,22,149,3,248,22,58,194,249,22,164,3,198,248,22,58, +195,11,193,250,2,102,199,248,22,177,2,197,248,22,59,196,32,103,89,162,8, +100,37,58,2,59,222,28,248,22,63,195,11,28,249,22,164,3,194,27,248,22, +58,198,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, +27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149, +3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28, +248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22, +58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, +27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149, +3,193,192,248,2,104,248,22,58,194,193,250,2,103,195,248,22,177,2,197,248, +22,59,198,32,104,89,162,8,64,35,49,2,59,222,28,248,22,149,3,193,192, +27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149, +3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28, +248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22, +58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, +248,2,104,248,22,58,194,32,105,89,162,8,100,38,49,2,59,222,28,248,22, +149,3,196,27,250,22,122,196,248,22,153,3,200,9,87,94,28,249,22,5,89, +162,8,36,35,43,9,223,6,249,22,164,3,195,194,194,251,22,178,8,248,22, +153,3,199,6,30,30,118,97,114,105,97,98,108,101,32,117,115,101,100,32,116, +119,105,99,101,32,105,110,32,112,97,116,116,101,114,110,199,200,12,250,22,121, +196,248,22,153,3,200,249,22,57,201,197,28,248,22,56,196,87,94,251,2,105, +196,197,198,248,22,58,200,251,2,105,196,197,198,248,22,59,200,12,32,106,89, +162,8,64,35,50,2,59,222,28,248,22,63,193,9,28,248,22,85,193,27,248, +22,59,194,28,248,22,63,193,9,28,248,22,85,193,27,248,22,59,194,28,248, +22,63,193,9,28,248,22,85,193,248,2,106,248,22,59,194,249,22,57,248,22, +83,195,248,2,106,248,22,59,196,249,22,57,248,22,83,195,27,248,22,59,196, +28,248,22,63,193,9,28,248,22,85,193,248,2,106,248,22,59,194,249,22,57, +248,22,83,195,248,2,106,248,22,59,196,249,22,57,248,22,83,195,27,248,22, +59,196,28,248,22,63,193,9,28,248,22,85,193,27,248,22,59,194,28,248,22, +63,193,9,28,248,22,85,193,248,2,106,248,22,59,194,249,22,57,248,22,83, +195,248,2,106,248,22,59,196,249,22,57,248,22,83,195,27,248,22,59,196,28, +248,22,63,193,9,28,248,22,85,193,248,2,106,248,22,59,194,249,22,57,248, +22,83,195,248,2,106,248,22,59,196,32,107,89,162,8,64,35,50,2,59,222, 28,248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,27,248,22, -59,196,28,248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,248, -2,106,248,22,59,196,248,2,106,248,22,59,194,27,248,22,59,194,28,248,22, -63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,248,2,106,248,22,59, -196,248,2,106,248,22,59,194,27,248,22,59,194,28,248,22,63,193,9,28,248, -22,85,193,249,22,57,248,22,83,195,27,248,22,59,196,28,248,22,63,193,9, -28,248,22,85,193,249,22,57,248,22,83,195,248,2,106,248,22,59,196,248,2, -106,248,22,59,194,27,248,22,59,194,28,248,22,63,193,9,28,248,22,85,193, -249,22,57,248,22,83,195,248,2,106,248,22,59,196,248,2,106,248,22,59,194, -32,107,89,162,8,64,36,8,26,2,81,222,28,248,22,129,3,194,192,27,250, -22,65,2,92,2,90,196,27,248,22,178,2,196,28,248,22,129,3,193,193,27, -250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193,193, -27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193, -193,27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3, -193,193,27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129, -3,193,193,27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22, -129,3,193,193,27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248, -22,129,3,193,193,249,2,107,250,22,65,2,92,2,90,198,248,22,178,2,195, -32,108,89,162,8,64,39,52,2,58,222,28,28,248,22,56,195,248,22,56,196, -11,27,248,22,58,196,27,248,22,58,198,28,28,248,22,56,194,248,22,56,193, -11,252,2,108,199,200,248,22,58,199,248,22,58,198,10,28,248,22,56,193,252, -2,108,199,200,198,248,22,58,198,11,28,248,22,149,3,194,28,248,22,149,3, -193,28,249,22,164,3,195,194,249,22,57,196,11,11,11,11,28,248,22,56,196, -27,248,22,58,197,28,28,248,22,56,196,248,22,56,193,11,252,2,108,198,199, -248,22,58,201,248,22,58,198,10,28,248,22,56,193,252,2,108,198,199,200,248, -22,58,198,11,28,248,22,149,3,196,28,248,22,149,3,193,28,249,22,164,3, -197,194,249,22,57,196,10,11,11,11,28,248,22,149,3,195,28,248,22,149,3, -196,28,249,22,164,3,196,197,249,22,57,28,198,194,195,248,22,146,8,199,11, -11,11,32,109,89,162,8,100,35,49,2,58,222,28,248,22,149,3,193,192,27, +59,196,28,248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,27, +248,22,59,196,28,248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83, +195,248,2,107,248,22,59,196,248,2,107,248,22,59,194,27,248,22,59,194,28, +248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,248,2,107,248, +22,59,196,248,2,107,248,22,59,194,27,248,22,59,194,28,248,22,63,193,9, +28,248,22,85,193,249,22,57,248,22,83,195,27,248,22,59,196,28,248,22,63, +193,9,28,248,22,85,193,249,22,57,248,22,83,195,248,2,107,248,22,59,196, +248,2,107,248,22,59,194,27,248,22,59,194,28,248,22,63,193,9,28,248,22, +85,193,249,22,57,248,22,83,195,248,2,107,248,22,59,196,248,2,107,248,22, +59,194,32,108,89,162,8,64,36,8,26,2,82,222,28,248,22,129,3,194,192, +27,250,22,65,2,93,2,91,196,27,248,22,178,2,196,28,248,22,129,3,193, +193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129,3, +193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129, +3,193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22, +129,3,193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248, +22,129,3,193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28, +248,22,129,3,193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195, +28,248,22,129,3,193,193,249,2,108,250,22,65,2,93,2,91,198,248,22,178, +2,195,32,109,89,162,8,64,39,52,2,59,222,28,28,248,22,56,195,248,22, +56,196,11,27,248,22,58,196,27,248,22,58,198,28,28,248,22,56,194,248,22, +56,193,11,252,2,109,199,200,248,22,58,199,248,22,58,198,10,28,248,22,56, +193,252,2,109,199,200,198,248,22,58,198,11,28,248,22,149,3,194,28,248,22, +149,3,193,28,249,22,164,3,195,194,249,22,57,196,11,11,11,11,28,248,22, +56,196,27,248,22,58,197,28,28,248,22,56,196,248,22,56,193,11,252,2,109, +198,199,248,22,58,201,248,22,58,198,10,28,248,22,56,193,252,2,109,198,199, +200,248,22,58,198,11,28,248,22,149,3,196,28,248,22,149,3,193,28,249,22, +164,3,197,194,249,22,57,196,10,11,11,11,28,248,22,149,3,195,28,248,22, +149,3,196,28,249,22,164,3,196,197,249,22,57,28,198,194,195,248,22,147,8, +199,11,11,11,32,110,89,162,8,100,35,49,2,59,222,28,248,22,149,3,193, +192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22, +149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194, +28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248, +22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193, +192,248,2,110,248,22,58,194,32,111,89,162,8,100,35,49,2,59,222,28,248, +22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58, +194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27, 248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3, 193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248, -22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58, -194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,248, -2,109,248,22,58,194,32,110,89,162,8,100,35,49,2,58,222,28,248,22,149, -3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28, -248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22, -58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, -27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149, -3,193,192,248,2,110,248,22,58,194,32,111,89,162,8,64,36,46,2,58,222, -28,248,22,149,3,194,28,249,22,164,3,195,194,250,22,177,8,2,83,2,94, -195,12,27,248,22,58,195,28,248,22,149,3,193,28,249,22,164,3,194,195,250, -22,177,8,2,83,2,94,196,12,27,248,22,58,194,28,248,22,149,3,193,28, -249,22,164,3,194,196,250,22,177,8,2,83,2,94,197,12,249,2,111,196,248, -22,58,195,32,112,89,162,8,64,36,57,2,58,222,28,248,22,63,194,9,28, -248,193,248,22,58,195,249,22,57,27,248,22,58,197,28,248,22,149,3,193,192, -27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149, -3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28, -248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22, -58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, -27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149, -3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,248,2,113,248,22,58, -194,249,2,112,196,248,22,59,198,249,2,112,194,248,22,59,196,32,113,89,162, -8,64,35,49,2,58,222,28,248,22,149,3,193,192,27,248,22,58,194,28,248, +22,149,3,193,192,248,2,111,248,22,58,194,32,112,89,162,8,64,36,46,2, +59,222,28,248,22,149,3,194,28,249,22,164,3,195,194,250,22,178,8,2,84, +2,95,195,12,27,248,22,58,195,28,248,22,149,3,193,28,249,22,164,3,194, +195,250,22,178,8,2,84,2,95,196,12,27,248,22,58,194,28,248,22,149,3, +193,28,249,22,164,3,194,196,250,22,178,8,2,84,2,95,197,12,249,2,112, +196,248,22,58,195,32,113,89,162,8,64,36,57,2,59,222,28,248,22,63,194, +9,28,248,193,248,22,58,195,249,22,57,27,248,22,58,197,28,248,22,149,3, +193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248, 22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58, 194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27, 248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3, -193,192,27,248,22,58,194,28,248,22,149,3,193,192,248,2,113,248,22,58,194, -32,114,89,162,8,64,35,45,2,58,222,28,248,22,63,193,11,28,248,22,56, -248,22,58,194,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,248,22, -58,194,10,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,248,22,58, -194,10,248,2,115,248,22,59,194,248,2,114,248,22,59,194,32,115,89,162,8, -64,35,44,2,58,222,28,248,22,63,193,11,28,248,22,56,248,22,58,194,10, -27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,248,22,58,194,10,27, -248,22,59,194,28,248,22,63,193,11,28,248,22,56,248,22,58,194,10,248,2, -115,248,22,59,194,159,34,20,100,159,34,16,1,20,24,65,98,101,103,105,110, -16,0,83,158,40,20,97,115,64,35,37,115,99,2,1,10,10,18,94,11,8, -95,42,80,158,34,34,20,100,159,42,16,43,30,2,1,2,4,193,30,2,1, -2,5,193,30,2,1,2,6,193,30,2,1,2,7,193,30,2,1,2,8,193, -30,2,1,2,9,193,30,2,1,2,10,193,30,2,11,69,115,116,120,45,110, -117,108,108,63,10,30,2,11,2,12,6,30,2,11,2,13,5,30,2,1,2, -14,193,30,2,1,2,15,193,30,2,1,2,16,193,30,2,11,2,17,11,30, -2,1,2,18,193,30,2,1,2,19,193,30,2,11,2,20,2,30,2,11,2, -21,15,30,71,35,37,113,113,45,97,110,100,45,111,114,69,113,113,45,97,112, -112,101,110,100,0,30,2,1,2,22,193,30,2,1,2,23,193,30,2,1,2, -24,193,30,2,1,2,25,193,30,2,1,2,26,193,30,2,1,2,27,193,30, -2,1,2,28,193,30,2,1,2,29,193,30,2,1,2,30,193,30,2,1,2, -31,193,30,2,1,2,32,193,30,2,1,2,33,193,30,2,1,2,34,193,30, -2,1,2,35,193,30,2,1,2,36,193,30,2,1,2,37,193,30,2,1,2, -38,193,30,2,1,2,39,193,30,2,1,2,40,193,30,2,1,2,41,193,30, -2,1,2,42,193,30,2,1,2,43,193,30,2,1,2,44,193,30,2,1,2, -45,193,16,3,33,98,33,99,33,100,11,11,16,27,2,36,2,40,2,41,2, -37,2,4,2,18,2,19,2,16,2,29,2,27,2,28,2,30,2,25,2,10, -2,26,2,15,2,14,2,9,2,31,2,8,2,35,2,5,2,7,2,33,2, -32,2,38,2,39,8,27,16,9,10,10,10,10,10,10,10,10,10,16,9,2, -23,2,22,2,24,2,42,2,34,2,6,2,44,2,45,2,43,16,9,11,11, -11,11,11,11,11,11,11,16,9,2,23,2,22,2,24,2,42,2,34,2,6, -2,44,2,45,2,43,43,43,9,132,83,158,34,16,2,89,162,8,64,37,52, -63,115,117,98,223,0,28,28,195,28,248,80,158,35,47,195,27,248,80,158,36, -42,196,28,248,80,158,36,47,193,28,27,248,80,158,37,43,194,28,248,22,47, -248,22,153,3,194,249,22,166,3,194,20,15,159,38,34,8,43,11,248,22,146, -8,27,248,80,158,38,43,198,28,248,22,47,248,22,153,3,194,249,22,166,3, -194,20,15,159,39,34,8,43,11,11,11,11,11,91,159,36,11,90,161,36,34, -11,27,248,80,158,38,42,248,80,158,39,42,199,28,28,248,80,158,38,47,193, -27,248,80,158,39,43,194,28,248,22,47,248,22,153,3,194,249,22,166,3,194, -20,15,159,40,34,8,43,11,11,27,248,80,158,39,42,194,27,32,0,89,162, -8,36,35,42,9,222,248,22,65,248,22,65,194,28,28,248,80,158,40,47,194, -27,248,80,158,41,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194, -20,15,159,42,34,8,43,11,11,249,80,159,41,8,54,35,248,80,158,42,42, -196,32,0,89,162,8,36,35,43,9,222,248,22,65,248,22,65,248,22,65,195, -249,22,7,195,194,249,22,7,194,22,65,27,250,80,159,40,8,53,35,199,248, -80,158,41,43,201,10,249,22,71,249,22,2,198,196,250,80,159,42,8,53,35, -201,198,10,28,248,80,158,35,47,195,27,248,80,158,36,43,196,28,28,196,28, -248,80,158,36,50,193,28,28,248,22,47,248,22,153,3,194,249,22,166,3,194, -20,15,159,37,34,8,43,11,248,80,158,36,47,248,80,158,37,42,197,11,11, -11,250,80,159,38,8,53,35,197,248,80,158,39,43,248,80,158,40,42,200,11, -249,22,72,250,80,159,40,8,53,35,199,248,80,158,41,43,201,201,250,80,159, -40,8,53,35,199,248,80,158,41,42,201,201,28,248,80,158,35,50,195,28,249, -22,5,89,162,8,36,35,43,9,223,4,28,248,22,149,3,194,249,22,164,3, -194,195,11,195,9,248,22,65,195,28,249,80,158,36,51,196,11,250,80,159,37, -8,53,35,196,248,22,173,7,248,22,153,3,199,198,9,80,159,34,8,53,35, -83,158,34,16,2,89,162,8,64,36,49,2,58,223,0,28,28,248,80,158,35, -47,194,27,248,80,158,36,43,195,28,248,22,47,248,22,153,3,194,249,22,166, -3,194,20,15,159,37,34,8,43,11,11,27,248,80,158,36,42,195,27,89,162, -8,36,35,43,9,223,4,248,22,65,248,194,195,28,28,248,80,158,37,47,194, -27,248,80,158,38,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194, -20,15,159,39,34,8,43,11,11,27,248,80,158,38,42,195,27,89,162,8,36, -35,44,9,223,6,248,22,65,248,22,65,248,195,196,28,28,248,80,158,39,47, -194,27,248,80,158,40,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3, -194,20,15,159,41,34,8,43,11,11,249,80,159,40,8,54,35,248,80,158,41, -42,196,89,162,8,36,35,45,9,223,8,248,22,65,248,22,65,248,22,65,248, -196,197,249,22,7,195,194,249,22,7,195,194,249,22,7,195,196,80,159,34,8, -54,35,83,158,34,16,2,89,162,8,100,36,8,40,2,58,223,0,28,248,22, -129,3,195,193,249,22,152,3,11,249,22,65,27,248,22,178,2,200,28,248,22, -129,3,193,198,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22, -129,3,193,203,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22, -129,3,193,23,16,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248, -22,129,3,193,23,21,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28, -248,22,129,3,193,23,26,249,22,152,3,11,249,22,65,249,80,159,8,31,8, -52,35,23,32,248,22,178,2,199,20,15,159,8,29,35,8,43,20,15,159,58, -35,8,43,20,15,159,53,35,8,43,20,15,159,48,35,8,43,20,15,159,43, -35,8,43,20,15,159,38,35,8,43,80,159,34,8,52,35,83,158,34,16,2, -89,162,8,64,37,53,2,58,223,0,28,28,248,80,158,35,47,194,27,248,80, -158,36,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159, -37,34,8,43,11,11,27,248,80,158,36,42,195,27,248,22,177,2,197,27,248, -80,158,38,43,197,28,28,248,80,158,38,47,195,27,248,80,158,39,43,196,28, -248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,40,34,8,43,11, -11,27,248,80,158,39,42,196,27,248,22,177,2,196,27,248,80,158,41,43,198, -28,28,248,80,158,41,47,195,27,248,80,158,42,43,196,28,248,22,47,248,22, -153,3,194,249,22,166,3,194,20,15,159,43,34,8,43,11,11,250,80,159,43, -8,51,35,248,80,158,44,42,198,248,22,177,2,197,248,80,158,44,43,198,250, -22,7,196,197,195,250,22,7,196,197,195,250,22,7,197,196,198,80,159,34,8, -51,35,83,158,34,16,2,89,162,34,43,8,50,63,109,38,101,223,0,28,28, -199,28,248,80,158,35,47,198,27,248,80,158,36,42,199,28,248,80,158,36,47, -193,28,27,248,80,158,37,43,194,28,248,22,47,248,22,153,3,194,249,22,166, -3,194,20,15,159,38,34,8,43,11,248,22,146,8,27,248,80,158,38,43,201, -28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,39,34,8,43, -11,11,11,11,11,28,248,80,158,35,41,248,80,158,36,42,248,80,158,37,42, -200,27,248,80,158,36,43,199,27,249,80,159,38,44,35,195,199,91,159,37,11, -90,161,37,34,11,26,9,80,159,48,8,47,35,23,15,23,16,23,17,23,18, -205,205,10,11,11,28,201,250,22,7,249,22,2,22,65,200,11,11,27,249,80, -159,42,45,35,198,32,0,89,162,8,44,35,40,9,222,10,250,22,7,250,22, -65,2,60,21,93,2,61,251,22,67,2,62,21,94,69,115,116,120,45,108,105, -115,116,63,2,61,27,248,80,159,52,46,35,205,28,249,22,150,8,194,21,94, -2,63,2,61,28,23,25,21,94,2,64,2,61,21,94,2,63,94,2,64,2, -61,28,248,22,63,204,250,22,67,66,97,110,100,109,97,112,250,22,65,2,60, -21,93,2,61,198,21,93,94,2,64,2,61,250,22,65,66,108,101,116,47,101, -99,2,65,250,22,65,2,66,248,22,65,249,22,65,2,67,250,22,67,2,68, -250,22,65,2,60,21,93,2,61,250,22,67,73,115,116,120,45,99,104,101,99, -107,47,101,115,99,23,18,21,93,2,65,21,93,94,2,64,2,61,251,22,65, -2,62,21,94,65,110,117,108,108,63,2,67,249,22,65,2,69,27,249,22,2, -32,0,89,97,8,44,35,40,9,222,23,26,28,23,38,249,22,1,22,67,194, -192,249,22,67,28,23,37,71,115,116,120,45,114,111,116,97,116,101,42,70,115, -116,120,45,114,111,116,97,116,101,21,93,2,67,21,93,11,197,11,27,249,22, -65,248,80,158,38,43,201,248,80,158,38,43,248,80,158,39,42,202,27,248,80, -158,37,42,248,80,158,38,42,201,91,159,36,11,90,161,36,34,11,28,248,80, -158,39,41,195,249,22,7,34,10,28,248,80,158,39,47,195,87,94,28,27,248, -80,158,40,43,196,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15, -159,41,34,8,43,11,251,22,177,8,248,22,153,3,202,2,70,202,248,80,158, -43,43,199,12,251,80,159,42,8,48,35,201,202,248,80,158,43,42,199,35,249, -22,7,35,11,91,159,43,11,90,161,37,34,11,28,23,17,26,9,80,159,56, -8,47,35,23,23,23,24,23,25,23,26,23,21,23,21,23,29,11,11,250,22, -7,11,11,11,90,161,37,37,11,26,9,80,159,56,8,47,35,23,23,23,24, -23,25,23,26,23,20,23,28,23,29,23,30,10,90,161,37,40,11,28,23,17, -250,22,7,195,196,11,26,9,80,159,56,8,47,35,23,23,23,24,23,25,23, -26,23,21,23,21,23,29,28,23,30,248,22,146,8,206,11,11,28,23,17,250, -22,7,249,22,71,203,200,11,11,250,22,7,250,22,65,2,60,21,93,2,61, -250,22,65,71,108,101,116,42,45,118,97,108,117,101,115,248,22,65,249,22,65, -21,95,2,71,2,72,2,73,251,22,65,74,115,112,108,105,116,45,115,116,120, -45,108,105,115,116,2,61,23,25,23,26,251,22,67,2,62,2,73,27,27,249, -80,159,8,30,48,35,23,23,2,71,27,249,80,159,8,31,48,35,23,21,2, -72,28,23,23,28,28,248,22,56,194,28,249,22,148,8,248,22,58,196,2,63, -28,248,22,56,248,22,59,195,248,22,63,248,22,86,195,11,11,11,250,22,65, -2,74,248,22,84,197,195,250,22,65,2,75,196,195,251,22,67,2,62,197,196, -21,93,11,28,23,19,28,23,36,250,22,65,2,66,21,93,94,2,76,96,2, -62,94,2,77,2,61,2,61,2,76,195,250,22,65,2,66,21,93,94,2,76, -2,61,195,192,21,93,11,28,202,202,199,28,200,23,25,11,28,248,80,158,35, -47,198,27,248,80,158,36,43,199,28,28,200,28,248,22,47,248,22,153,3,194, -249,22,166,3,194,20,15,159,37,34,8,43,11,11,28,28,248,80,158,36,47, -248,80,158,37,42,200,248,80,158,36,41,248,80,158,37,42,248,80,158,38,42, -201,11,27,248,80,158,37,43,248,80,158,38,42,201,26,9,80,159,45,8,47, -35,204,205,206,23,15,201,201,11,23,19,11,251,22,177,8,248,22,153,3,199, +193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248, +22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,248,2,114,248, +22,58,194,249,2,113,196,248,22,59,198,249,2,113,194,248,22,59,196,32,114, +89,162,8,64,35,49,2,59,222,28,248,22,149,3,193,192,27,248,22,58,194, +28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248, +22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193, +192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22, +149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,248,2,114,248,22, +58,194,32,115,89,162,8,64,35,45,2,59,222,28,248,22,63,193,11,28,248, +22,56,248,22,58,194,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56, +248,22,58,194,10,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,248, +22,58,194,10,248,2,116,248,22,59,194,248,2,115,248,22,59,194,32,116,89, +162,8,64,35,44,2,59,222,28,248,22,63,193,11,28,248,22,56,248,22,58, +194,10,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,248,22,58,194, +10,27,248,22,59,194,28,248,22,63,193,11,28,248,22,56,248,22,58,194,10, +248,2,116,248,22,59,194,159,34,20,100,159,34,16,1,20,24,65,98,101,103, +105,110,16,0,83,158,40,20,97,115,64,35,37,115,99,2,1,10,10,18,94, +11,8,96,42,80,158,34,34,20,100,159,42,16,43,30,2,1,2,4,193,30, +2,1,2,5,193,30,2,1,2,6,193,30,2,1,2,7,193,30,2,1,2, +8,193,30,2,1,2,9,193,30,2,1,2,10,193,30,2,11,69,115,116,120, +45,110,117,108,108,63,10,30,2,11,2,12,6,30,2,11,2,13,5,30,2, +1,2,14,193,30,2,1,2,15,193,30,2,1,2,16,193,30,2,11,2,17, +11,30,2,1,2,18,193,30,2,1,2,19,193,30,2,11,2,20,2,30,2, +11,2,21,15,30,71,35,37,113,113,45,97,110,100,45,111,114,69,113,113,45, +97,112,112,101,110,100,0,30,2,1,2,22,193,30,2,1,2,23,193,30,2, +1,2,24,193,30,2,1,2,25,193,30,2,1,2,26,193,30,2,1,2,27, +193,30,2,1,2,28,193,30,2,1,2,29,193,30,2,1,2,30,193,30,2, +1,2,31,193,30,2,1,2,32,193,30,2,1,2,33,193,30,2,1,2,34, +193,30,2,1,2,35,193,30,2,1,2,36,193,30,2,1,2,37,193,30,2, +1,2,38,193,30,2,1,2,39,193,30,2,1,2,40,193,30,2,1,2,41, +193,30,2,1,2,42,193,30,2,1,2,43,193,30,2,1,2,44,193,30,2, +1,2,45,193,16,3,33,99,33,100,33,101,11,11,16,27,2,36,2,40,2, +41,2,37,2,4,2,18,2,19,2,16,2,29,2,27,2,28,2,30,2,25, +2,10,2,26,2,15,2,14,2,9,2,31,2,8,2,35,2,5,2,7,2, +33,2,32,2,38,2,39,8,27,16,9,10,10,10,10,10,10,10,10,10,16, +9,2,23,2,22,2,24,2,42,2,34,2,6,2,44,2,45,2,43,16,9, +11,11,11,11,11,11,11,11,11,16,9,2,23,2,22,2,24,2,42,2,34, +2,6,2,44,2,45,2,43,43,43,9,132,83,158,34,16,2,89,162,8,64, +37,52,63,115,117,98,223,0,28,28,195,28,248,80,158,35,47,195,27,248,80, +158,36,42,196,28,248,80,158,36,47,193,28,27,248,80,158,37,43,194,28,248, +22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,38,34,8,43,11,248, +22,147,8,27,248,80,158,38,43,198,28,248,22,47,248,22,153,3,194,249,22, +166,3,194,20,15,159,39,34,8,43,11,11,11,11,11,91,159,36,11,90,161, +36,34,11,27,248,80,158,38,42,248,80,158,39,42,199,28,28,248,80,158,38, +47,193,27,248,80,158,39,43,194,28,248,22,47,248,22,153,3,194,249,22,166, +3,194,20,15,159,40,34,8,43,11,11,27,248,80,158,39,42,194,27,32,0, +89,162,8,36,35,42,9,222,248,22,65,248,22,65,194,28,28,248,80,158,40, +47,194,27,248,80,158,41,43,195,28,248,22,47,248,22,153,3,194,249,22,166, +3,194,20,15,159,42,34,8,43,11,11,249,80,159,41,8,54,35,248,80,158, +42,42,196,32,0,89,162,8,36,35,43,9,222,248,22,65,248,22,65,248,22, +65,195,249,22,7,195,194,249,22,7,194,22,65,27,250,80,159,40,8,53,35, +199,248,80,158,41,43,201,10,249,22,71,249,22,2,198,196,250,80,159,42,8, +53,35,201,198,10,28,248,80,158,35,47,195,27,248,80,158,36,43,196,28,28, +196,28,248,80,158,36,50,193,28,28,248,22,47,248,22,153,3,194,249,22,166, +3,194,20,15,159,37,34,8,43,11,248,80,158,36,47,248,80,158,37,42,197, +11,11,11,250,80,159,38,8,53,35,197,248,80,158,39,43,248,80,158,40,42, +200,11,249,22,72,250,80,159,40,8,53,35,199,248,80,158,41,43,201,201,250, +80,159,40,8,53,35,199,248,80,158,41,42,201,201,28,248,80,158,35,50,195, +28,249,22,5,89,162,8,36,35,43,9,223,4,28,248,22,149,3,194,249,22, +164,3,194,195,11,195,9,248,22,65,195,28,249,80,158,36,51,196,11,250,80, +159,37,8,53,35,196,248,22,174,7,248,22,153,3,199,198,9,80,159,34,8, +53,35,83,158,34,16,2,89,162,8,64,36,49,2,59,223,0,28,28,248,80, +158,35,47,194,27,248,80,158,36,43,195,28,248,22,47,248,22,153,3,194,249, +22,166,3,194,20,15,159,37,34,8,43,11,11,27,248,80,158,36,42,195,27, +89,162,8,36,35,43,9,223,4,248,22,65,248,194,195,28,28,248,80,158,37, +47,194,27,248,80,158,38,43,195,28,248,22,47,248,22,153,3,194,249,22,166, +3,194,20,15,159,39,34,8,43,11,11,27,248,80,158,38,42,195,27,89,162, +8,36,35,44,9,223,6,248,22,65,248,22,65,248,195,196,28,28,248,80,158, +39,47,194,27,248,80,158,40,43,195,28,248,22,47,248,22,153,3,194,249,22, +166,3,194,20,15,159,41,34,8,43,11,11,249,80,159,40,8,54,35,248,80, +158,41,42,196,89,162,8,36,35,45,9,223,8,248,22,65,248,22,65,248,22, +65,248,196,197,249,22,7,195,194,249,22,7,195,194,249,22,7,195,196,80,159, +34,8,54,35,83,158,34,16,2,89,162,8,100,36,8,40,2,59,223,0,28, +248,22,129,3,195,193,249,22,152,3,11,249,22,65,27,248,22,178,2,200,28, +248,22,129,3,193,198,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28, +248,22,129,3,193,203,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28, +248,22,129,3,193,23,16,249,22,152,3,11,249,22,65,27,248,22,178,2,198, +28,248,22,129,3,193,23,21,249,22,152,3,11,249,22,65,27,248,22,178,2, +198,28,248,22,129,3,193,23,26,249,22,152,3,11,249,22,65,249,80,159,8, +31,8,52,35,23,32,248,22,178,2,199,20,15,159,8,29,35,8,43,20,15, +159,58,35,8,43,20,15,159,53,35,8,43,20,15,159,48,35,8,43,20,15, +159,43,35,8,43,20,15,159,38,35,8,43,80,159,34,8,52,35,83,158,34, +16,2,89,162,8,64,37,53,2,59,223,0,28,28,248,80,158,35,47,194,27, +248,80,158,36,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20, +15,159,37,34,8,43,11,11,27,248,80,158,36,42,195,27,248,22,177,2,197, +27,248,80,158,38,43,197,28,28,248,80,158,38,47,195,27,248,80,158,39,43, +196,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,40,34,8, +43,11,11,27,248,80,158,39,42,196,27,248,22,177,2,196,27,248,80,158,41, +43,198,28,28,248,80,158,41,47,195,27,248,80,158,42,43,196,28,248,22,47, +248,22,153,3,194,249,22,166,3,194,20,15,159,43,34,8,43,11,11,250,80, +159,43,8,51,35,248,80,158,44,42,198,248,22,177,2,197,248,80,158,44,43, +198,250,22,7,196,197,195,250,22,7,196,197,195,250,22,7,197,196,198,80,159, +34,8,51,35,83,158,34,16,2,89,162,34,43,8,50,63,109,38,101,223,0, +28,28,199,28,248,80,158,35,47,198,27,248,80,158,36,42,199,28,248,80,158, +36,47,193,28,27,248,80,158,37,43,194,28,248,22,47,248,22,153,3,194,249, +22,166,3,194,20,15,159,38,34,8,43,11,248,22,147,8,27,248,80,158,38, +43,201,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,39,34, +8,43,11,11,11,11,11,28,248,80,158,35,41,248,80,158,36,42,248,80,158, +37,42,200,27,248,80,158,36,43,199,27,249,80,159,38,44,35,195,199,91,159, +37,11,90,161,37,34,11,26,9,80,159,48,8,47,35,23,15,23,16,23,17, +23,18,205,205,10,11,11,28,201,250,22,7,249,22,2,22,65,200,11,11,27, +249,80,159,42,45,35,198,32,0,89,162,8,44,35,40,9,222,10,250,22,7, +250,22,65,2,61,21,93,2,62,251,22,67,2,63,21,94,69,115,116,120,45, +108,105,115,116,63,2,62,27,248,80,159,52,46,35,205,28,249,22,151,8,194, +21,94,2,64,2,62,28,23,25,21,94,2,65,2,62,21,94,2,64,94,2, +65,2,62,28,248,22,63,204,250,22,67,66,97,110,100,109,97,112,250,22,65, +2,61,21,93,2,62,198,21,93,94,2,65,2,62,250,22,65,66,108,101,116, +47,101,99,2,66,250,22,65,2,67,248,22,65,249,22,65,2,68,250,22,67, +2,69,250,22,65,2,61,21,93,2,62,250,22,67,73,115,116,120,45,99,104, +101,99,107,47,101,115,99,23,18,21,93,2,66,21,93,94,2,65,2,62,251, +22,65,2,63,21,94,65,110,117,108,108,63,2,68,249,22,65,2,70,27,249, +22,2,32,0,89,97,8,44,35,40,9,222,23,26,28,23,38,249,22,1,22, +67,194,192,249,22,67,28,23,37,71,115,116,120,45,114,111,116,97,116,101,42, +70,115,116,120,45,114,111,116,97,116,101,21,93,2,68,21,93,11,197,11,27, +249,22,65,248,80,158,38,43,201,248,80,158,38,43,248,80,158,39,42,202,27, +248,80,158,37,42,248,80,158,38,42,201,91,159,36,11,90,161,36,34,11,28, +248,80,158,39,41,195,249,22,7,34,10,28,248,80,158,39,47,195,87,94,28, +27,248,80,158,40,43,196,28,248,22,47,248,22,153,3,194,249,22,166,3,194, +20,15,159,41,34,8,43,11,251,22,178,8,248,22,153,3,202,2,71,202,248, +80,158,43,43,199,12,251,80,159,42,8,48,35,201,202,248,80,158,43,42,199, +35,249,22,7,35,11,91,159,43,11,90,161,37,34,11,28,23,17,26,9,80, +159,56,8,47,35,23,23,23,24,23,25,23,26,23,21,23,21,23,29,11,11, +250,22,7,11,11,11,90,161,37,37,11,26,9,80,159,56,8,47,35,23,23, +23,24,23,25,23,26,23,20,23,28,23,29,23,30,10,90,161,37,40,11,28, +23,17,250,22,7,195,196,11,26,9,80,159,56,8,47,35,23,23,23,24,23, +25,23,26,23,21,23,21,23,29,28,23,30,248,22,147,8,206,11,11,28,23, +17,250,22,7,249,22,71,203,200,11,11,250,22,7,250,22,65,2,61,21,93, +2,62,250,22,65,71,108,101,116,42,45,118,97,108,117,101,115,248,22,65,249, +22,65,21,95,2,72,2,73,2,74,251,22,65,74,115,112,108,105,116,45,115, +116,120,45,108,105,115,116,2,62,23,25,23,26,251,22,67,2,63,2,74,27, +27,249,80,159,8,30,48,35,23,23,2,72,27,249,80,159,8,31,48,35,23, +21,2,73,28,23,23,28,28,248,22,56,194,28,249,22,149,8,248,22,58,196, +2,64,28,248,22,56,248,22,59,195,248,22,63,248,22,86,195,11,11,11,250, +22,65,2,75,248,22,84,197,195,250,22,65,2,76,196,195,251,22,67,2,63, +197,196,21,93,11,28,23,19,28,23,36,250,22,65,2,67,21,93,94,2,77, +96,2,63,94,2,78,2,62,2,62,2,77,195,250,22,65,2,67,21,93,94, +2,77,2,62,195,192,21,93,11,28,202,202,199,28,200,23,25,11,28,248,80, +158,35,47,198,27,248,80,158,36,43,199,28,28,200,28,248,22,47,248,22,153, +3,194,249,22,166,3,194,20,15,159,37,34,8,43,11,11,28,28,248,80,158, +36,47,248,80,158,37,42,200,248,80,158,36,41,248,80,158,37,42,248,80,158, +38,42,201,11,27,248,80,158,37,43,248,80,158,38,42,201,26,9,80,159,45, +8,47,35,204,205,206,23,15,201,201,11,23,19,11,251,22,178,8,248,22,153, +3,199,6,29,29,109,105,115,112,108,97,99,101,100,32,101,108,108,105,112,115, +101,115,32,105,110,32,112,97,116,116,101,114,110,199,196,91,159,43,11,90,161, +37,34,11,28,206,26,9,80,159,53,8,47,35,23,20,23,21,23,22,23,23, +23,18,23,18,23,26,11,11,250,22,7,11,11,11,90,161,37,37,11,26,9, +80,159,53,8,47,35,23,20,23,21,23,22,23,23,248,80,158,54,42,23,25, +23,25,23,26,23,27,10,90,161,37,40,11,28,206,250,22,7,195,196,11,26, +9,80,159,53,8,47,35,23,20,23,21,23,22,23,23,23,18,23,18,23,26, +28,23,27,248,22,147,8,206,11,11,28,206,250,22,7,249,22,71,203,200,11, +11,250,22,7,250,22,65,2,61,21,93,2,62,251,22,67,2,63,21,94,2, +17,2,62,27,27,249,80,159,58,48,35,23,20,21,94,2,13,2,62,27,249, +80,159,59,48,35,23,18,21,94,2,12,2,62,28,23,20,28,28,248,22,56, +194,28,249,22,149,8,248,22,58,196,2,64,28,248,22,56,248,22,59,195,248, +22,63,248,22,86,195,11,11,11,250,22,65,2,75,248,22,84,197,195,250,22, +65,2,76,196,195,251,22,67,2,63,197,196,21,93,11,28,23,16,28,23,30, +250,22,65,2,67,21,93,94,2,77,96,2,63,94,2,78,2,62,2,62,2, +77,195,250,22,65,2,67,21,93,94,2,77,2,62,195,192,21,93,11,28,202, +202,199,28,200,23,22,11,28,248,80,158,35,41,198,28,196,250,22,7,9,11, +11,250,22,7,71,115,116,120,45,110,117,108,108,47,35,102,11,11,28,248,80, +158,35,50,198,28,249,22,5,89,162,8,36,35,43,9,223,7,28,248,22,149, +3,194,249,22,164,3,194,195,11,197,28,196,250,22,7,9,11,11,250,22,7, +250,22,65,2,61,21,93,2,62,251,22,67,2,63,21,94,2,20,2,62,250, +22,67,2,63,250,22,65,2,79,2,62,249,22,65,2,80,23,23,21,94,2, +81,11,21,93,11,11,11,28,28,199,28,248,22,47,248,22,153,3,199,249,22, +166,3,199,20,15,159,36,34,8,43,11,11,251,22,178,8,248,22,153,3,198, 6,29,29,109,105,115,112,108,97,99,101,100,32,101,108,108,105,112,115,101,115, -32,105,110,32,112,97,116,116,101,114,110,199,196,91,159,43,11,90,161,37,34, -11,28,206,26,9,80,159,53,8,47,35,23,20,23,21,23,22,23,23,23,18, -23,18,23,26,11,11,250,22,7,11,11,11,90,161,37,37,11,26,9,80,159, -53,8,47,35,23,20,23,21,23,22,23,23,248,80,158,54,42,23,25,23,25, -23,26,23,27,10,90,161,37,40,11,28,206,250,22,7,195,196,11,26,9,80, -159,53,8,47,35,23,20,23,21,23,22,23,23,23,18,23,18,23,26,28,23, -27,248,22,146,8,206,11,11,28,206,250,22,7,249,22,71,203,200,11,11,250, -22,7,250,22,65,2,60,21,93,2,61,251,22,67,2,62,21,94,2,17,2, -61,27,27,249,80,159,58,48,35,23,20,21,94,2,13,2,61,27,249,80,159, -59,48,35,23,18,21,94,2,12,2,61,28,23,20,28,28,248,22,56,194,28, -249,22,148,8,248,22,58,196,2,63,28,248,22,56,248,22,59,195,248,22,63, -248,22,86,195,11,11,11,250,22,65,2,74,248,22,84,197,195,250,22,65,2, -75,196,195,251,22,67,2,62,197,196,21,93,11,28,23,16,28,23,30,250,22, -65,2,66,21,93,94,2,76,96,2,62,94,2,77,2,61,2,61,2,76,195, -250,22,65,2,66,21,93,94,2,76,2,61,195,192,21,93,11,28,202,202,199, -28,200,23,22,11,28,248,80,158,35,41,198,28,196,250,22,7,9,11,11,250, -22,7,71,115,116,120,45,110,117,108,108,47,35,102,11,11,28,248,80,158,35, -50,198,28,249,22,5,89,162,8,36,35,43,9,223,7,28,248,22,149,3,194, -249,22,164,3,194,195,11,197,28,196,250,22,7,9,11,11,250,22,7,250,22, -65,2,60,21,93,2,61,251,22,67,2,62,21,94,2,20,2,61,250,22,67, -2,62,250,22,65,2,78,2,61,249,22,65,2,79,23,23,21,94,2,80,11, -21,93,11,11,11,28,28,199,28,248,22,47,248,22,153,3,199,249,22,166,3, -199,20,15,159,36,34,8,43,11,11,251,22,177,8,248,22,153,3,198,6,29, -29,109,105,115,112,108,97,99,101,100,32,101,108,108,105,112,115,101,115,32,105, -110,32,112,97,116,116,101,114,110,198,201,28,196,250,22,7,248,22,65,201,11, -11,250,22,7,27,28,204,32,0,89,162,8,36,35,43,2,81,222,250,22,65, -2,60,21,93,2,61,195,32,0,89,162,8,36,35,45,2,81,222,250,22,65, -2,60,21,93,2,61,249,22,65,2,63,197,28,205,248,193,21,96,1,20,100, -97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116,2,76, -2,61,2,76,248,193,2,61,10,204,28,249,80,158,36,51,199,11,27,248,22, -173,7,248,22,153,3,200,28,28,197,11,27,248,22,146,8,202,28,192,192,249, -22,4,80,159,38,8,49,35,195,27,248,22,170,7,248,22,153,3,201,26,10, -80,159,46,8,50,35,202,23,17,23,19,205,206,23,15,23,16,202,248,22,146, -8,23,21,9,91,159,37,11,90,161,37,34,11,26,9,80,159,47,8,47,35, -206,23,15,23,16,23,17,204,23,18,23,20,23,21,11,28,200,250,22,7,195, -11,11,250,22,7,250,22,65,2,60,21,93,2,61,251,22,67,2,62,21,95, -2,21,2,61,11,249,80,159,50,48,35,204,21,94,72,118,101,99,116,111,114, -45,62,108,105,115,116,94,2,82,2,61,21,93,11,196,11,28,196,250,22,7, -9,11,11,250,22,7,250,22,65,2,60,21,93,2,61,250,22,67,2,62,27, -250,22,67,66,101,113,117,97,108,63,248,22,153,3,23,19,21,93,94,2,82, -2,61,28,23,19,250,22,65,63,97,110,100,21,94,2,77,2,61,195,192,21, -94,2,80,11,11,11,80,159,34,8,47,35,83,158,34,16,2,89,162,8,64, -44,8,36,2,58,223,0,28,248,22,129,3,201,250,22,7,250,22,65,2,60, -21,93,2,61,251,22,67,2,62,250,22,65,2,21,2,61,206,23,20,21,93, -11,204,11,91,159,37,11,90,161,37,34,11,27,249,22,171,7,248,22,153,3, -201,248,22,178,2,23,15,26,9,80,159,47,8,47,35,23,17,23,18,23,19, -23,20,201,201,23,16,248,22,146,8,23,23,11,26,10,80,159,47,8,50,35, -206,23,15,23,16,23,17,23,18,23,19,23,20,248,22,178,2,23,22,28,23, -22,23,22,203,27,249,80,159,50,48,35,205,250,22,65,74,115,116,120,45,118, -101,99,116,111,114,45,114,101,102,2,61,248,22,178,2,23,28,28,248,22,63, -23,25,192,28,204,28,28,248,22,56,193,28,249,22,148,8,248,22,58,195,2, -63,28,248,22,56,248,22,59,194,248,22,63,248,22,86,194,11,11,11,250,22, -65,2,74,248,22,84,196,23,27,250,22,65,2,75,195,23,27,251,22,67,2, -62,196,23,28,21,93,11,80,159,34,8,50,35,83,158,34,16,2,89,162,8, -36,35,44,9,223,0,248,22,146,8,28,248,22,47,248,22,153,3,196,249,22, -166,3,196,20,15,159,37,34,8,43,11,80,159,34,8,49,35,83,158,34,16, -2,89,162,8,64,38,51,2,58,223,0,28,248,80,158,35,41,196,249,22,7, -198,10,28,248,80,158,35,47,196,87,94,28,27,248,80,158,36,43,197,28,248, -22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,37,34,8,43,11,251, -22,177,8,248,22,153,3,198,2,70,198,248,80,158,39,43,200,12,27,248,80, -158,36,42,197,27,248,22,177,2,199,28,248,80,158,37,41,194,249,22,7,194, -10,28,248,80,158,37,47,194,87,94,28,27,248,80,158,38,43,195,28,248,22, -47,248,22,153,3,194,249,22,166,3,194,20,15,159,39,34,8,43,11,251,22, -177,8,248,22,153,3,200,2,70,200,248,80,158,41,43,198,12,251,80,159,40, -8,48,35,199,200,248,80,158,41,42,198,248,22,177,2,197,249,22,7,248,22, -177,2,195,11,249,22,7,248,22,177,2,199,11,80,159,34,8,48,35,83,158, -34,16,2,89,162,34,35,43,2,4,223,0,28,248,22,47,248,22,153,3,195, -249,22,166,3,195,20,15,159,36,34,8,43,11,80,159,34,34,35,83,158,34, -16,2,32,0,89,162,34,36,43,2,5,222,249,22,5,89,162,8,36,35,43, -9,223,2,28,248,22,149,3,194,249,22,164,3,194,195,11,195,80,159,34,35, -35,83,158,34,16,2,32,0,89,162,34,36,47,2,6,222,28,248,22,63,194, -11,28,28,248,22,149,3,248,22,58,195,249,22,164,3,194,248,22,58,196,11, -34,27,248,22,59,195,28,248,22,63,193,11,28,28,248,22,149,3,248,22,58, -194,249,22,164,3,195,248,22,58,195,11,35,250,2,101,196,36,248,22,59,196, -80,159,34,36,35,83,158,34,16,2,32,0,89,162,34,36,45,2,7,222,250, -2,102,195,34,196,80,159,34,37,35,83,158,34,16,2,32,0,89,162,34,36, -43,2,8,222,28,249,22,148,8,194,195,248,22,65,193,249,22,65,194,195,80, -159,34,38,35,83,158,34,16,2,89,162,8,36,40,59,2,9,223,0,91,159, -37,11,90,161,37,34,11,26,9,80,159,46,8,47,35,205,206,23,16,23,17, -23,15,23,15,10,10,11,28,200,27,247,22,116,87,94,251,2,104,196,201,202, -197,193,28,249,22,150,8,194,21,95,2,60,93,2,61,2,61,28,201,21,95, -2,60,94,2,61,2,78,2,61,21,95,2,60,93,2,61,2,61,250,22,65, -2,60,249,22,67,2,61,249,80,158,44,52,28,23,16,21,93,2,78,9,9, -248,80,159,41,46,35,196,80,159,34,39,35,83,158,34,16,2,89,162,34,39, -51,2,22,223,0,253,80,158,40,39,199,200,201,202,11,203,80,159,34,53,35, -83,158,34,16,2,89,162,34,38,50,2,23,223,0,253,80,158,40,39,199,200, -201,202,10,11,80,159,34,54,35,83,158,34,16,2,32,0,89,162,34,35,43, -2,16,222,28,28,248,22,56,193,28,249,22,148,8,248,22,58,195,2,60,249, -22,150,8,248,22,84,195,21,93,2,61,11,11,248,22,93,193,249,22,67,194, -21,93,2,61,80,159,34,46,35,83,158,34,16,2,32,0,89,162,34,36,45, -2,18,222,28,28,248,22,56,193,28,249,22,148,8,248,22,58,195,2,60,249, -22,150,8,248,22,84,195,21,93,2,61,11,11,27,248,22,93,194,28,249,22, -148,8,194,2,61,194,28,28,248,22,56,193,28,249,22,148,8,248,22,58,195, -2,63,28,248,22,56,248,22,59,194,28,249,22,148,8,248,22,84,195,2,61, -248,22,63,248,22,86,194,11,11,11,11,249,22,65,2,63,196,249,22,65,195, -196,249,22,65,194,195,80,159,34,48,35,83,158,34,16,2,32,0,89,162,34, -36,45,2,19,222,28,28,248,22,56,193,28,249,22,148,8,248,22,58,195,2, -63,28,248,22,56,248,22,59,194,248,22,63,248,22,86,194,11,11,11,250,22, -65,2,74,248,22,84,196,196,250,22,65,2,75,195,196,80,159,34,49,35,83, -158,34,16,2,89,162,34,38,8,27,2,24,223,0,91,159,36,10,90,161,35, -34,10,195,90,161,35,35,10,89,162,34,40,8,64,2,52,226,2,5,3,1, -28,28,199,28,248,80,158,38,47,197,27,248,80,158,39,42,198,28,248,80,158, -39,47,193,28,27,248,80,158,40,43,194,28,248,22,47,248,22,153,3,194,249, -22,166,3,194,20,15,159,41,34,8,43,11,248,22,146,8,27,248,80,158,41, -43,200,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,42,34, -8,43,11,11,11,11,11,91,159,40,11,90,161,35,34,11,248,80,158,44,43, -203,90,161,37,35,11,27,248,80,158,45,42,248,80,158,46,42,205,27,248,80, -158,46,43,248,80,158,47,42,206,28,28,248,80,158,46,47,194,27,248,80,158, -47,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,48, -34,8,43,11,11,27,248,80,158,47,42,195,27,248,80,158,48,43,196,28,28, -248,80,158,48,47,194,27,248,80,158,49,43,195,28,248,22,47,248,22,153,3, -194,249,22,166,3,194,20,15,159,50,34,8,43,11,11,27,248,80,158,49,42, -195,27,248,80,158,50,43,196,28,28,248,80,158,50,47,194,27,248,80,158,51, -43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,52,34, -8,43,11,11,27,248,80,158,51,42,195,27,248,80,158,52,43,196,28,28,248, -80,158,52,47,194,27,248,80,158,53,43,195,28,248,22,47,248,22,153,3,194, -249,22,166,3,194,20,15,159,54,34,8,43,11,11,27,248,80,158,53,42,195, -27,248,80,158,54,43,196,28,28,248,80,158,54,47,194,27,248,80,158,55,43, -195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,56,34,8, -43,11,11,250,80,159,56,8,51,35,248,80,158,57,42,197,39,248,80,158,57, -43,197,250,22,7,38,196,195,250,22,7,37,196,195,250,22,7,36,196,195,250, -22,7,35,196,195,250,22,7,34,196,195,90,161,35,38,11,28,248,22,129,3, -194,192,249,22,152,3,11,249,22,65,27,248,22,178,2,199,28,248,22,129,3, -193,197,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22,129,3, -193,202,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22,129,3, -193,23,15,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22,129, -3,193,23,20,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22, -129,3,193,23,25,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248, -22,129,3,193,23,30,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28, -248,22,129,3,193,23,35,249,22,152,3,11,249,22,65,249,80,159,8,50,8, -52,35,23,41,248,22,178,2,199,20,15,159,8,48,35,8,43,20,15,159,8, -43,35,8,43,20,15,159,8,38,35,8,43,20,15,159,8,33,35,8,43,20, -15,159,8,28,35,8,43,20,15,159,57,35,8,43,20,15,159,52,35,8,43, -20,15,159,47,35,8,43,90,161,35,39,11,28,203,249,80,159,45,44,35,198, -202,11,87,94,28,248,22,63,198,251,22,1,22,177,8,2,83,6,48,48,110, -111,32,112,97,116,116,101,114,110,32,118,97,114,105,97,98,108,101,115,32,98, -101,102,111,114,101,32,101,108,108,105,112,115,101,115,32,105,110,32,116,101,109, -112,108,97,116,101,28,249,22,148,8,205,201,248,22,65,204,249,22,65,205,201, -12,27,28,204,249,22,2,89,162,34,35,48,9,226,12,10,15,14,251,80,158, -41,56,200,196,198,197,200,11,27,28,205,28,248,22,63,194,9,28,248,22,85, -194,27,248,22,59,195,28,248,22,63,193,9,28,248,22,85,193,248,2,105,248, -22,59,194,249,22,57,248,22,83,195,248,2,105,248,22,59,196,249,22,57,248, -22,83,196,27,248,22,59,197,28,248,22,63,193,9,28,248,22,85,193,248,2, -105,248,22,59,194,249,22,57,248,22,83,195,248,2,105,248,22,59,196,11,27, -28,206,28,248,22,63,195,9,28,248,22,85,195,249,22,57,248,22,83,197,27, -248,22,59,198,28,248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83, -195,248,2,106,248,22,59,196,248,2,106,248,22,59,194,27,248,22,59,196,28, -248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,248,2,106,248, -22,59,196,248,2,106,248,22,59,194,11,27,28,23,15,248,80,159,48,57,35, -195,11,27,28,23,16,248,80,159,49,57,35,195,11,27,28,248,22,63,196,12, -28,248,22,63,197,251,22,1,22,177,8,2,83,6,29,29,116,111,111,32,109, -97,110,121,32,101,108,108,105,112,115,101,115,32,105,110,32,116,101,109,112,108, -97,116,101,28,249,22,148,8,23,19,23,15,248,22,65,23,18,249,22,65,23, -19,23,15,12,27,253,24,19,23,15,23,24,23,25,10,23,27,23,28,27,253, -24,20,23,18,28,23,25,249,22,71,205,206,11,23,18,10,11,23,29,28,23, -19,250,22,65,2,60,21,93,2,84,27,27,27,249,22,2,89,162,8,36,35, -48,9,225,25,30,27,250,80,159,39,58,35,2,84,249,80,159,41,37,35,200, -197,196,204,28,28,249,22,188,2,35,248,22,70,195,28,249,22,188,2,34,23, -17,28,248,22,63,202,249,22,150,8,200,21,95,2,60,93,2,84,94,2,85, -2,84,11,11,11,248,22,58,193,28,28,249,22,188,2,36,248,22,70,195,28, -249,22,188,2,34,23,17,28,248,22,63,202,249,22,150,8,200,21,95,2,60, -93,2,84,95,2,63,94,2,85,2,84,94,2,86,2,84,11,11,11,250,22, -67,2,68,21,95,2,60,94,2,87,2,88,95,2,63,2,87,2,88,249,80, -158,8,28,52,197,9,27,250,22,67,2,68,250,22,65,2,60,2,89,249,22, -65,23,15,28,248,22,63,23,19,2,89,21,95,2,90,2,91,2,89,249,80, -158,8,29,52,198,9,28,248,22,129,3,23,17,192,27,250,22,65,2,92,2, -90,196,27,248,22,178,2,23,19,28,248,22,129,3,193,193,27,250,22,65,2, -92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193,193,27,250,22,65, -2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193,193,27,250,22, -65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193,193,27,250, -22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193,193,27, -250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193,193, -27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3,193, -193,27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129,3, -193,193,27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22,129, -3,193,193,27,250,22,65,2,92,2,90,197,27,248,22,178,2,195,28,248,22, -129,3,193,193,249,2,107,250,22,65,2,92,2,90,198,248,22,178,2,195,28, -248,22,63,201,192,250,22,65,2,66,248,22,65,249,22,65,2,91,249,22,67, -2,63,249,80,158,8,32,52,249,22,2,89,162,8,36,35,48,9,225,34,39, -36,250,80,159,39,58,35,2,84,249,80,159,41,37,35,200,197,196,23,20,9, -195,27,248,80,159,57,59,35,199,28,249,22,148,8,194,2,80,193,250,22,65, -2,90,196,195,12,28,248,80,158,38,47,197,27,248,80,158,39,43,198,28,28, -200,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,40,34,8, -43,11,11,28,28,248,80,158,39,47,248,80,158,40,42,199,248,80,158,39,41, -248,80,158,40,42,248,80,158,41,42,200,11,27,248,80,158,40,43,248,80,158, -41,42,200,253,215,198,205,198,11,23,16,23,17,251,22,177,8,2,83,6,30, -30,109,105,115,112,108,97,99,101,100,32,101,108,108,105,112,115,101,115,32,105, -110,32,116,101,109,112,108,97,116,101,198,196,27,253,215,199,205,199,23,15,23, -16,23,17,27,253,216,248,80,158,47,42,206,206,23,15,23,16,23,17,23,18, -28,200,250,22,65,2,60,21,93,2,84,251,80,158,47,8,26,206,248,80,159, -48,59,35,201,248,80,159,48,59,35,200,206,12,28,249,80,158,39,51,198,11, -27,253,214,248,22,173,7,248,22,153,3,205,204,203,206,23,15,23,16,28,198, -250,22,65,2,60,21,93,2,84,249,22,65,72,108,105,115,116,45,62,118,101, -99,116,111,114,249,22,65,2,64,248,80,159,46,59,35,200,12,28,248,80,158, -38,50,197,28,249,22,5,89,162,8,36,35,43,9,223,6,28,248,22,149,3, -194,249,22,164,3,194,195,11,196,28,197,250,22,65,2,60,21,93,2,84,249, -22,65,2,79,201,12,28,197,27,249,22,5,89,162,8,36,35,43,9,223,7, -28,248,22,149,3,194,249,22,164,3,194,195,11,200,28,192,250,22,65,2,60, -21,93,2,84,250,80,159,44,58,35,2,84,249,80,159,46,36,35,205,206,23, -15,87,95,28,200,28,28,248,22,47,248,22,153,3,199,249,22,166,3,199,20, -15,159,40,34,8,43,11,251,22,177,8,2,83,6,30,30,109,105,115,112,108, -97,99,101,100,32,101,108,108,105,112,115,101,115,32,105,110,32,116,101,109,112, -108,97,116,101,198,201,12,12,249,80,159,40,8,27,35,199,200,250,22,65,2, -60,21,93,2,84,249,22,65,2,79,202,28,28,28,248,22,47,248,22,153,3, -198,249,22,166,3,198,20,15,159,39,34,8,43,11,199,11,12,248,202,197,28, -248,22,63,197,28,197,21,95,2,60,93,2,84,2,80,12,28,197,250,22,65, -2,60,21,93,2,84,249,22,65,2,79,201,12,27,28,197,11,247,22,116,27, -253,216,203,204,203,10,28,204,248,22,178,2,248,22,70,206,11,28,204,11,89, -162,8,36,35,51,9,223,7,27,250,22,122,196,248,22,153,3,198,9,27,28, -248,22,56,194,249,22,5,89,162,8,36,35,44,9,223,5,28,249,22,164,3, -248,22,58,196,194,193,11,195,11,28,192,249,22,61,194,249,22,57,199,248,22, -59,197,250,22,121,197,248,22,153,3,199,249,22,57,249,22,57,202,248,22,65, -203,198,28,198,250,22,65,2,60,21,93,2,84,27,27,248,80,159,44,59,35, -198,28,28,248,22,56,193,249,22,148,8,248,22,58,195,2,93,11,192,27,28, -206,251,22,152,3,23,18,2,50,23,18,23,18,11,250,22,65,1,26,100,97, -116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116,47,115,104, -97,112,101,249,22,65,2,79,197,196,28,248,80,159,43,8,28,35,203,251,22, -65,1,20,99,97,116,99,104,45,101,108,108,105,112,115,105,115,45,101,114,114, -111,114,250,22,65,2,60,9,199,249,22,65,2,69,23,15,249,22,65,2,79, -250,22,152,3,11,2,46,23,18,192,27,249,22,1,22,71,249,22,124,198,32, -0,89,162,8,36,36,41,9,222,193,249,22,7,249,22,2,22,58,196,249,22, -2,22,59,196,80,159,34,55,35,83,158,34,16,2,32,0,89,162,34,35,43, -2,28,222,28,28,248,22,56,193,28,249,22,148,8,248,22,58,195,2,60,249, -22,150,8,248,22,84,195,21,93,2,84,11,11,248,22,93,193,249,22,67,194, -21,93,2,84,80,159,34,59,35,83,158,34,16,2,89,162,34,38,55,2,29, -223,0,28,28,248,22,56,195,28,249,22,148,8,248,22,58,197,2,79,28,249, -22,148,8,248,22,84,197,248,80,158,37,43,199,27,249,22,148,8,198,2,80, -28,192,192,28,248,22,56,197,28,249,22,148,8,248,22,58,199,2,79,249,22, -148,8,248,22,84,199,248,80,158,38,42,200,11,11,11,11,11,249,22,65,2, -79,198,28,28,248,22,56,196,249,22,148,8,248,22,58,198,2,93,11,28,28, -248,22,56,195,28,249,22,148,8,248,22,58,197,2,79,249,22,148,8,248,22, -84,197,248,80,158,37,43,199,11,11,250,22,67,2,93,249,22,65,2,79,27, -249,22,57,248,22,84,203,248,22,101,204,28,248,22,149,3,200,252,22,152,3, -204,197,204,204,204,192,248,22,86,199,28,28,248,22,56,195,249,22,148,8,2, -93,248,22,58,197,11,250,22,67,2,93,249,22,65,2,79,27,249,22,57,248, -22,101,203,248,22,101,204,28,248,22,149,3,200,252,22,152,3,204,197,204,204, -204,192,249,80,158,39,52,248,22,86,200,248,22,86,201,27,247,22,54,27,249, -22,57,195,248,22,101,200,27,28,248,22,149,3,197,252,22,152,3,201,198,201, -201,201,193,252,22,67,2,93,249,22,65,2,79,199,199,202,248,22,86,204,28, -249,22,148,8,197,2,80,251,80,158,38,8,26,197,198,21,94,2,93,94,2, -79,9,200,28,28,248,22,56,196,28,249,22,148,8,248,22,58,198,2,79,27, -248,22,58,197,249,22,190,2,44,249,80,159,39,8,30,35,196,45,11,11,251, -80,158,38,8,26,197,198,249,22,65,2,93,201,200,251,80,158,38,8,26,197, -198,27,247,22,54,251,22,65,2,93,249,22,65,2,79,198,196,204,200,80,159, -34,8,26,35,83,158,34,16,2,89,162,34,36,52,2,32,223,0,249,22,190, -2,196,27,248,22,177,2,198,28,249,22,189,2,194,35,34,28,248,22,149,3, -197,249,80,159,39,8,30,35,248,22,153,3,199,194,28,248,22,56,197,27,249, -80,159,40,8,30,35,248,22,58,200,195,249,22,179,2,194,249,80,159,42,8, -30,35,248,22,59,202,249,22,180,2,199,198,28,248,22,166,7,197,249,80,159, -39,8,30,35,248,22,173,7,199,194,28,248,22,113,197,248,22,177,2,249,80, -159,40,8,30,35,248,22,114,200,248,22,178,2,196,35,80,159,34,8,29,35, -83,158,34,16,2,89,162,34,36,54,2,33,223,0,28,249,22,189,2,196,35, -34,28,248,22,149,3,194,27,248,22,153,3,195,28,249,22,189,2,197,35,34, +32,105,110,32,112,97,116,116,101,114,110,198,201,28,196,250,22,7,248,22,65, +201,11,11,250,22,7,27,28,204,32,0,89,162,8,36,35,43,2,82,222,250, +22,65,2,61,21,93,2,62,195,32,0,89,162,8,36,35,45,2,82,222,250, +22,65,2,61,21,93,2,62,249,22,65,2,64,197,28,205,248,193,21,96,1, +20,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116, +2,77,2,62,2,77,248,193,2,62,10,204,28,249,80,158,36,51,199,11,27, +248,22,174,7,248,22,153,3,200,28,28,197,11,27,248,22,147,8,202,28,192, +192,249,22,4,80,159,38,8,49,35,195,27,248,22,171,7,248,22,153,3,201, +26,10,80,159,46,8,50,35,202,23,17,23,19,205,206,23,15,23,16,202,248, +22,147,8,23,21,9,91,159,37,11,90,161,37,34,11,26,9,80,159,47,8, +47,35,206,23,15,23,16,23,17,204,23,18,23,20,23,21,11,28,200,250,22, +7,195,11,11,250,22,7,250,22,65,2,61,21,93,2,62,251,22,67,2,63, +21,95,2,21,2,62,11,249,80,159,50,48,35,204,21,94,72,118,101,99,116, +111,114,45,62,108,105,115,116,94,2,83,2,62,21,93,11,196,11,28,196,250, +22,7,9,11,11,250,22,7,250,22,65,2,61,21,93,2,62,250,22,67,2, +63,27,250,22,67,66,101,113,117,97,108,63,248,22,153,3,23,19,21,93,94, +2,83,2,62,28,23,19,250,22,65,63,97,110,100,21,94,2,78,2,62,195, +192,21,94,2,81,11,11,11,80,159,34,8,47,35,83,158,34,16,2,89,162, +8,64,44,8,36,2,59,223,0,28,248,22,129,3,201,250,22,7,250,22,65, +2,61,21,93,2,62,251,22,67,2,63,250,22,65,2,21,2,62,206,23,20, +21,93,11,204,11,91,159,37,11,90,161,37,34,11,27,249,22,172,7,248,22, +153,3,201,248,22,178,2,23,15,26,9,80,159,47,8,47,35,23,17,23,18, +23,19,23,20,201,201,23,16,248,22,147,8,23,23,11,26,10,80,159,47,8, +50,35,206,23,15,23,16,23,17,23,18,23,19,23,20,248,22,178,2,23,22, +28,23,22,23,22,203,27,249,80,159,50,48,35,205,250,22,65,74,115,116,120, +45,118,101,99,116,111,114,45,114,101,102,2,62,248,22,178,2,23,28,28,248, +22,63,23,25,192,28,204,28,28,248,22,56,193,28,249,22,149,8,248,22,58, +195,2,64,28,248,22,56,248,22,59,194,248,22,63,248,22,86,194,11,11,11, +250,22,65,2,75,248,22,84,196,23,27,250,22,65,2,76,195,23,27,251,22, +67,2,63,196,23,28,21,93,11,80,159,34,8,50,35,83,158,34,16,2,89, +162,8,36,35,44,9,223,0,248,22,147,8,28,248,22,47,248,22,153,3,196, +249,22,166,3,196,20,15,159,37,34,8,43,11,80,159,34,8,49,35,83,158, +34,16,2,89,162,8,64,38,51,2,59,223,0,28,248,80,158,35,41,196,249, +22,7,198,10,28,248,80,158,35,47,196,87,94,28,27,248,80,158,36,43,197, +28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,37,34,8,43, +11,251,22,178,8,248,22,153,3,198,2,71,198,248,80,158,39,43,200,12,27, +248,80,158,36,42,197,27,248,22,177,2,199,28,248,80,158,37,41,194,249,22, +7,194,10,28,248,80,158,37,47,194,87,94,28,27,248,80,158,38,43,195,28, +248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,39,34,8,43,11, +251,22,178,8,248,22,153,3,200,2,71,200,248,80,158,41,43,198,12,251,80, +159,40,8,48,35,199,200,248,80,158,41,42,198,248,22,177,2,197,249,22,7, +248,22,177,2,195,11,249,22,7,248,22,177,2,199,11,80,159,34,8,48,35, +83,158,34,16,2,89,162,34,35,43,2,4,223,0,28,248,22,47,248,22,153, +3,195,249,22,166,3,195,20,15,159,36,34,8,43,11,80,159,34,34,35,83, +158,34,16,2,32,0,89,162,34,36,43,2,5,222,249,22,5,89,162,8,36, +35,43,9,223,2,28,248,22,149,3,194,249,22,164,3,194,195,11,195,80,159, +34,35,35,83,158,34,16,2,32,0,89,162,34,36,47,2,6,222,28,248,22, +63,194,11,28,28,248,22,149,3,248,22,58,195,249,22,164,3,194,248,22,58, +196,11,34,27,248,22,59,195,28,248,22,63,193,11,28,28,248,22,149,3,248, +22,58,194,249,22,164,3,195,248,22,58,195,11,35,250,2,102,196,36,248,22, +59,196,80,159,34,36,35,83,158,34,16,2,32,0,89,162,34,36,45,2,7, +222,250,2,103,195,34,196,80,159,34,37,35,83,158,34,16,2,32,0,89,162, +34,36,43,2,8,222,28,249,22,149,8,194,195,248,22,65,193,249,22,65,194, +195,80,159,34,38,35,83,158,34,16,2,89,162,8,36,40,59,2,9,223,0, +91,159,37,11,90,161,37,34,11,26,9,80,159,46,8,47,35,205,206,23,16, +23,17,23,15,23,15,10,10,11,28,200,27,247,22,116,87,94,251,2,105,196, +201,202,197,193,28,249,22,151,8,194,21,95,2,61,93,2,62,2,62,28,201, +21,95,2,61,94,2,62,2,79,2,62,21,95,2,61,93,2,62,2,62,250, +22,65,2,61,249,22,67,2,62,249,80,158,44,52,28,23,16,21,93,2,79, +9,9,248,80,159,41,46,35,196,80,159,34,39,35,83,158,34,16,2,89,162, +34,39,51,2,22,223,0,253,80,158,40,39,199,200,201,202,11,203,80,159,34, +53,35,83,158,34,16,2,89,162,34,38,50,2,23,223,0,253,80,158,40,39, +199,200,201,202,10,11,80,159,34,54,35,83,158,34,16,2,32,0,89,162,34, +35,43,2,16,222,28,28,248,22,56,193,28,249,22,149,8,248,22,58,195,2, +61,249,22,151,8,248,22,84,195,21,93,2,62,11,11,248,22,93,193,249,22, +67,194,21,93,2,62,80,159,34,46,35,83,158,34,16,2,32,0,89,162,34, +36,45,2,18,222,28,28,248,22,56,193,28,249,22,149,8,248,22,58,195,2, +61,249,22,151,8,248,22,84,195,21,93,2,62,11,11,27,248,22,93,194,28, +249,22,149,8,194,2,62,194,28,28,248,22,56,193,28,249,22,149,8,248,22, +58,195,2,64,28,248,22,56,248,22,59,194,28,249,22,149,8,248,22,84,195, +2,62,248,22,63,248,22,86,194,11,11,11,11,249,22,65,2,64,196,249,22, +65,195,196,249,22,65,194,195,80,159,34,48,35,83,158,34,16,2,32,0,89, +162,34,36,45,2,19,222,28,28,248,22,56,193,28,249,22,149,8,248,22,58, +195,2,64,28,248,22,56,248,22,59,194,248,22,63,248,22,86,194,11,11,11, +250,22,65,2,75,248,22,84,196,196,250,22,65,2,76,195,196,80,159,34,49, +35,83,158,34,16,2,89,162,34,38,8,27,2,24,223,0,91,159,36,10,90, +161,35,34,10,195,90,161,35,35,10,89,162,34,40,8,64,2,53,226,2,5, +3,1,28,28,199,28,248,80,158,38,47,197,27,248,80,158,39,42,198,28,248, +80,158,39,47,193,28,27,248,80,158,40,43,194,28,248,22,47,248,22,153,3, +194,249,22,166,3,194,20,15,159,41,34,8,43,11,248,22,147,8,27,248,80, +158,41,43,200,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159, +42,34,8,43,11,11,11,11,11,91,159,40,11,90,161,35,34,11,248,80,158, +44,43,203,90,161,37,35,11,27,248,80,158,45,42,248,80,158,46,42,205,27, +248,80,158,46,43,248,80,158,47,42,206,28,28,248,80,158,46,47,194,27,248, +80,158,47,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15, +159,48,34,8,43,11,11,27,248,80,158,47,42,195,27,248,80,158,48,43,196, +28,28,248,80,158,48,47,194,27,248,80,158,49,43,195,28,248,22,47,248,22, +153,3,194,249,22,166,3,194,20,15,159,50,34,8,43,11,11,27,248,80,158, +49,42,195,27,248,80,158,50,43,196,28,28,248,80,158,50,47,194,27,248,80, +158,51,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159, +52,34,8,43,11,11,27,248,80,158,51,42,195,27,248,80,158,52,43,196,28, +28,248,80,158,52,47,194,27,248,80,158,53,43,195,28,248,22,47,248,22,153, +3,194,249,22,166,3,194,20,15,159,54,34,8,43,11,11,27,248,80,158,53, +42,195,27,248,80,158,54,43,196,28,28,248,80,158,54,47,194,27,248,80,158, +55,43,195,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,56, +34,8,43,11,11,250,80,159,56,8,51,35,248,80,158,57,42,197,39,248,80, +158,57,43,197,250,22,7,38,196,195,250,22,7,37,196,195,250,22,7,36,196, +195,250,22,7,35,196,195,250,22,7,34,196,195,90,161,35,38,11,28,248,22, +129,3,194,192,249,22,152,3,11,249,22,65,27,248,22,178,2,199,28,248,22, +129,3,193,197,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22, +129,3,193,202,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248,22, +129,3,193,23,15,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28,248, +22,129,3,193,23,20,249,22,152,3,11,249,22,65,27,248,22,178,2,198,28, +248,22,129,3,193,23,25,249,22,152,3,11,249,22,65,27,248,22,178,2,198, +28,248,22,129,3,193,23,30,249,22,152,3,11,249,22,65,27,248,22,178,2, +198,28,248,22,129,3,193,23,35,249,22,152,3,11,249,22,65,249,80,159,8, +50,8,52,35,23,41,248,22,178,2,199,20,15,159,8,48,35,8,43,20,15, +159,8,43,35,8,43,20,15,159,8,38,35,8,43,20,15,159,8,33,35,8, +43,20,15,159,8,28,35,8,43,20,15,159,57,35,8,43,20,15,159,52,35, +8,43,20,15,159,47,35,8,43,90,161,35,39,11,28,203,249,80,159,45,44, +35,198,202,11,87,94,28,248,22,63,198,251,22,1,22,178,8,2,84,6,48, +48,110,111,32,112,97,116,116,101,114,110,32,118,97,114,105,97,98,108,101,115, +32,98,101,102,111,114,101,32,101,108,108,105,112,115,101,115,32,105,110,32,116, +101,109,112,108,97,116,101,28,249,22,149,8,205,201,248,22,65,204,249,22,65, +205,201,12,27,28,204,249,22,2,89,162,34,35,48,9,226,12,10,15,14,251, +80,158,41,56,200,196,198,197,200,11,27,28,205,28,248,22,63,194,9,28,248, +22,85,194,27,248,22,59,195,28,248,22,63,193,9,28,248,22,85,193,248,2, +106,248,22,59,194,249,22,57,248,22,83,195,248,2,106,248,22,59,196,249,22, +57,248,22,83,196,27,248,22,59,197,28,248,22,63,193,9,28,248,22,85,193, +248,2,106,248,22,59,194,249,22,57,248,22,83,195,248,2,106,248,22,59,196, +11,27,28,206,28,248,22,63,195,9,28,248,22,85,195,249,22,57,248,22,83, +197,27,248,22,59,198,28,248,22,63,193,9,28,248,22,85,193,249,22,57,248, +22,83,195,248,2,107,248,22,59,196,248,2,107,248,22,59,194,27,248,22,59, +196,28,248,22,63,193,9,28,248,22,85,193,249,22,57,248,22,83,195,248,2, +107,248,22,59,196,248,2,107,248,22,59,194,11,27,28,23,15,248,80,159,48, +57,35,195,11,27,28,23,16,248,80,159,49,57,35,195,11,27,28,248,22,63, +196,12,28,248,22,63,197,251,22,1,22,178,8,2,84,6,29,29,116,111,111, +32,109,97,110,121,32,101,108,108,105,112,115,101,115,32,105,110,32,116,101,109, +112,108,97,116,101,28,249,22,149,8,23,19,23,15,248,22,65,23,18,249,22, +65,23,19,23,15,12,27,253,24,19,23,15,23,24,23,25,10,23,27,23,28, +27,253,24,20,23,18,28,23,25,249,22,71,205,206,11,23,18,10,11,23,29, +28,23,19,250,22,65,2,61,21,93,2,85,27,27,27,249,22,2,89,162,8, +36,35,48,9,225,25,30,27,250,80,159,39,58,35,2,85,249,80,159,41,37, +35,200,197,196,204,28,28,249,22,188,2,35,248,22,70,195,28,249,22,188,2, +34,23,17,28,248,22,63,202,249,22,151,8,200,21,95,2,61,93,2,85,94, +2,86,2,85,11,11,11,248,22,58,193,28,28,249,22,188,2,36,248,22,70, +195,28,249,22,188,2,34,23,17,28,248,22,63,202,249,22,151,8,200,21,95, +2,61,93,2,85,95,2,64,94,2,86,2,85,94,2,87,2,85,11,11,11, +250,22,67,2,69,21,95,2,61,94,2,88,2,89,95,2,64,2,88,2,89, +249,80,158,8,28,52,197,9,27,250,22,67,2,69,250,22,65,2,61,2,90, +249,22,65,23,15,28,248,22,63,23,19,2,90,21,95,2,91,2,92,2,90, +249,80,158,8,29,52,198,9,28,248,22,129,3,23,17,192,27,250,22,65,2, +93,2,91,196,27,248,22,178,2,23,19,28,248,22,129,3,193,193,27,250,22, +65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129,3,193,193,27,250, +22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129,3,193,193,27, +250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129,3,193,193, +27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129,3,193, +193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129,3, +193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22,129, +3,193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248,22, +129,3,193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28,248, +22,129,3,193,193,27,250,22,65,2,93,2,91,197,27,248,22,178,2,195,28, +248,22,129,3,193,193,249,2,108,250,22,65,2,93,2,91,198,248,22,178,2, +195,28,248,22,63,201,192,250,22,65,2,67,248,22,65,249,22,65,2,92,249, +22,67,2,64,249,80,158,8,32,52,249,22,2,89,162,8,36,35,48,9,225, +34,39,36,250,80,159,39,58,35,2,85,249,80,159,41,37,35,200,197,196,23, +20,9,195,27,248,80,159,57,59,35,199,28,249,22,149,8,194,2,81,193,250, +22,65,2,91,196,195,12,28,248,80,158,38,47,197,27,248,80,158,39,43,198, +28,28,200,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20,15,159,40, +34,8,43,11,11,28,28,248,80,158,39,47,248,80,158,40,42,199,248,80,158, +39,41,248,80,158,40,42,248,80,158,41,42,200,11,27,248,80,158,40,43,248, +80,158,41,42,200,253,215,198,205,198,11,23,16,23,17,251,22,178,8,2,84, +6,30,30,109,105,115,112,108,97,99,101,100,32,101,108,108,105,112,115,101,115, +32,105,110,32,116,101,109,112,108,97,116,101,198,196,27,253,215,199,205,199,23, +15,23,16,23,17,27,253,216,248,80,158,47,42,206,206,23,15,23,16,23,17, +23,18,28,200,250,22,65,2,61,21,93,2,85,251,80,158,47,8,26,206,248, +80,159,48,59,35,201,248,80,159,48,59,35,200,206,12,28,249,80,158,39,51, +198,11,27,253,214,248,22,174,7,248,22,153,3,205,204,203,206,23,15,23,16, +28,198,250,22,65,2,61,21,93,2,85,249,22,65,72,108,105,115,116,45,62, +118,101,99,116,111,114,249,22,65,2,65,248,80,159,46,59,35,200,12,28,248, +80,158,38,50,197,28,249,22,5,89,162,8,36,35,43,9,223,6,28,248,22, +149,3,194,249,22,164,3,194,195,11,196,28,197,250,22,65,2,61,21,93,2, +85,249,22,65,2,80,201,12,28,197,27,249,22,5,89,162,8,36,35,43,9, +223,7,28,248,22,149,3,194,249,22,164,3,194,195,11,200,28,192,250,22,65, +2,61,21,93,2,85,250,80,159,44,58,35,2,85,249,80,159,46,36,35,205, +206,23,15,87,95,28,200,28,28,248,22,47,248,22,153,3,199,249,22,166,3, +199,20,15,159,40,34,8,43,11,251,22,178,8,2,84,6,30,30,109,105,115, +112,108,97,99,101,100,32,101,108,108,105,112,115,101,115,32,105,110,32,116,101, +109,112,108,97,116,101,198,201,12,12,249,80,159,40,8,27,35,199,200,250,22, +65,2,61,21,93,2,85,249,22,65,2,80,202,28,28,28,248,22,47,248,22, +153,3,198,249,22,166,3,198,20,15,159,39,34,8,43,11,199,11,12,248,202, +197,28,248,22,63,197,28,197,21,95,2,61,93,2,85,2,81,12,28,197,250, +22,65,2,61,21,93,2,85,249,22,65,2,80,201,12,27,28,197,11,247,22, +116,27,253,216,203,204,203,10,28,204,248,22,178,2,248,22,70,206,11,28,204, +11,89,162,8,36,35,51,9,223,7,27,250,22,122,196,248,22,153,3,198,9, +27,28,248,22,56,194,249,22,5,89,162,8,36,35,44,9,223,5,28,249,22, +164,3,248,22,58,196,194,193,11,195,11,28,192,249,22,61,194,249,22,57,199, +248,22,59,197,250,22,121,197,248,22,153,3,199,249,22,57,249,22,57,202,248, +22,65,203,198,28,198,250,22,65,2,61,21,93,2,85,27,27,248,80,159,44, +59,35,198,28,28,248,22,56,193,249,22,149,8,248,22,58,195,2,94,11,192, +27,28,206,251,22,152,3,23,18,2,51,23,18,23,18,11,250,22,65,1,26, +100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116,47, +115,104,97,112,101,249,22,65,2,80,197,196,28,248,80,159,43,8,28,35,203, +251,22,65,1,20,99,97,116,99,104,45,101,108,108,105,112,115,105,115,45,101, +114,114,111,114,250,22,65,2,61,9,199,249,22,65,2,70,23,15,249,22,65, +2,80,250,22,152,3,11,2,46,23,18,192,27,249,22,1,22,71,249,22,124, +198,32,0,89,162,8,36,36,41,9,222,193,249,22,7,249,22,2,22,58,196, +249,22,2,22,59,196,80,159,34,55,35,83,158,34,16,2,32,0,89,162,34, +35,43,2,28,222,28,28,248,22,56,193,28,249,22,149,8,248,22,58,195,2, +61,249,22,151,8,248,22,84,195,21,93,2,85,11,11,248,22,93,193,249,22, +67,194,21,93,2,85,80,159,34,59,35,83,158,34,16,2,89,162,34,38,55, +2,29,223,0,28,28,248,22,56,195,28,249,22,149,8,248,22,58,197,2,80, +28,249,22,149,8,248,22,84,197,248,80,158,37,43,199,27,249,22,149,8,198, +2,81,28,192,192,28,248,22,56,197,28,249,22,149,8,248,22,58,199,2,80, +249,22,149,8,248,22,84,199,248,80,158,38,42,200,11,11,11,11,11,249,22, +65,2,80,198,28,28,248,22,56,196,249,22,149,8,248,22,58,198,2,94,11, +28,28,248,22,56,195,28,249,22,149,8,248,22,58,197,2,80,249,22,149,8, +248,22,84,197,248,80,158,37,43,199,11,11,250,22,67,2,94,249,22,65,2, +80,27,249,22,57,248,22,84,203,248,22,101,204,28,248,22,149,3,200,252,22, +152,3,204,197,204,204,204,192,248,22,86,199,28,28,248,22,56,195,249,22,149, +8,2,94,248,22,58,197,11,250,22,67,2,94,249,22,65,2,80,27,249,22, +57,248,22,101,203,248,22,101,204,28,248,22,149,3,200,252,22,152,3,204,197, +204,204,204,192,249,80,158,39,52,248,22,86,200,248,22,86,201,27,247,22,54, +27,249,22,57,195,248,22,101,200,27,28,248,22,149,3,197,252,22,152,3,201, +198,201,201,201,193,252,22,67,2,94,249,22,65,2,80,199,199,202,248,22,86, +204,28,249,22,149,8,197,2,81,251,80,158,38,8,26,197,198,21,94,2,94, +94,2,80,9,200,28,28,248,22,56,196,28,249,22,149,8,248,22,58,198,2, +80,27,248,22,58,197,249,22,190,2,44,249,80,159,39,8,30,35,196,45,11, +11,251,80,158,38,8,26,197,198,249,22,65,2,94,201,200,251,80,158,38,8, +26,197,198,27,247,22,54,251,22,65,2,94,249,22,65,2,80,198,196,204,200, +80,159,34,8,26,35,83,158,34,16,2,89,162,34,36,52,2,32,223,0,249, +22,190,2,196,27,248,22,177,2,198,28,249,22,189,2,194,35,34,28,248,22, +149,3,197,249,80,159,39,8,30,35,248,22,153,3,199,194,28,248,22,56,197, +27,249,80,159,40,8,30,35,248,22,58,200,195,249,22,179,2,194,249,80,159, +42,8,30,35,248,22,59,202,249,22,180,2,199,198,28,248,22,167,7,197,249, +80,159,39,8,30,35,248,22,174,7,199,194,28,248,22,113,197,248,22,177,2, +249,80,159,40,8,30,35,248,22,114,200,248,22,178,2,196,35,80,159,34,8, +29,35,83,158,34,16,2,89,162,34,36,54,2,33,223,0,28,249,22,189,2, +196,35,34,28,248,22,149,3,194,27,248,22,153,3,195,28,249,22,189,2,197, +35,34,28,248,22,149,3,193,249,80,159,37,8,30,35,248,22,153,3,195,197, +28,248,22,56,193,27,249,80,159,38,8,30,35,248,22,58,196,198,249,22,179, +2,194,249,80,159,40,8,30,35,248,22,59,198,249,22,180,2,202,198,28,248, +22,167,7,193,249,80,159,37,8,30,35,248,22,174,7,195,197,28,248,22,113, +193,248,22,177,2,249,80,159,38,8,30,35,248,22,114,196,248,22,178,2,199, +35,28,248,22,56,194,27,27,248,22,58,196,28,249,22,189,2,198,35,34,28, +248,22,149,3,193,249,80,159,38,8,30,35,248,22,153,3,195,198,28,248,22, +56,193,27,249,80,159,39,8,30,35,248,22,58,196,199,249,22,179,2,194,249, +80,159,41,8,30,35,248,22,59,198,249,22,180,2,203,198,28,248,22,167,7, +193,249,80,159,38,8,30,35,248,22,174,7,195,198,28,248,22,113,193,248,22, +177,2,249,80,159,39,8,30,35,248,22,114,196,248,22,178,2,200,35,249,22, +179,2,194,27,248,22,59,198,27,249,22,180,2,201,198,28,249,22,189,2,194, +35,34,28,248,22,149,3,194,249,80,159,41,8,30,35,248,22,153,3,196,194, +28,248,22,56,194,27,249,80,159,42,8,30,35,248,22,58,197,195,249,22,179, +2,194,249,80,159,44,8,30,35,248,22,59,199,249,22,180,2,199,198,28,248, +22,167,7,194,249,80,159,41,8,30,35,248,22,174,7,196,194,28,248,22,113, +194,248,22,177,2,249,80,159,42,8,30,35,248,22,114,197,248,22,178,2,196, +35,28,248,22,167,7,194,27,248,22,174,7,195,28,249,22,189,2,197,35,34, 28,248,22,149,3,193,249,80,159,37,8,30,35,248,22,153,3,195,197,28,248, 22,56,193,27,249,80,159,38,8,30,35,248,22,58,196,198,249,22,179,2,194, -249,80,159,40,8,30,35,248,22,59,198,249,22,180,2,202,198,28,248,22,166, -7,193,249,80,159,37,8,30,35,248,22,173,7,195,197,28,248,22,113,193,248, +249,80,159,40,8,30,35,248,22,59,198,249,22,180,2,202,198,28,248,22,167, +7,193,249,80,159,37,8,30,35,248,22,174,7,195,197,28,248,22,113,193,248, 22,177,2,249,80,159,38,8,30,35,248,22,114,196,248,22,178,2,199,35,28, -248,22,56,194,27,27,248,22,58,196,28,249,22,189,2,198,35,34,28,248,22, -149,3,193,249,80,159,38,8,30,35,248,22,153,3,195,198,28,248,22,56,193, -27,249,80,159,39,8,30,35,248,22,58,196,199,249,22,179,2,194,249,80,159, -41,8,30,35,248,22,59,198,249,22,180,2,203,198,28,248,22,166,7,193,249, -80,159,38,8,30,35,248,22,173,7,195,198,28,248,22,113,193,248,22,177,2, -249,80,159,39,8,30,35,248,22,114,196,248,22,178,2,200,35,249,22,179,2, -194,27,248,22,59,198,27,249,22,180,2,201,198,28,249,22,189,2,194,35,34, -28,248,22,149,3,194,249,80,159,41,8,30,35,248,22,153,3,196,194,28,248, -22,56,194,27,249,80,159,42,8,30,35,248,22,58,197,195,249,22,179,2,194, -249,80,159,44,8,30,35,248,22,59,199,249,22,180,2,199,198,28,248,22,166, -7,194,249,80,159,41,8,30,35,248,22,173,7,196,194,28,248,22,113,194,248, -22,177,2,249,80,159,42,8,30,35,248,22,114,197,248,22,178,2,196,35,28, -248,22,166,7,194,27,248,22,173,7,195,28,249,22,189,2,197,35,34,28,248, -22,149,3,193,249,80,159,37,8,30,35,248,22,153,3,195,197,28,248,22,56, -193,27,249,80,159,38,8,30,35,248,22,58,196,198,249,22,179,2,194,249,80, -159,40,8,30,35,248,22,59,198,249,22,180,2,202,198,28,248,22,166,7,193, -249,80,159,37,8,30,35,248,22,173,7,195,197,28,248,22,113,193,248,22,177, -2,249,80,159,38,8,30,35,248,22,114,196,248,22,178,2,199,35,28,248,22, -113,194,248,22,177,2,27,248,22,114,196,27,248,22,178,2,198,28,249,22,189, -2,194,35,34,28,248,22,149,3,194,249,80,159,39,8,30,35,248,22,153,3, -196,194,28,248,22,56,194,27,249,80,159,40,8,30,35,248,22,58,197,195,249, -22,179,2,194,249,80,159,42,8,30,35,248,22,59,199,249,22,180,2,199,198, -28,248,22,166,7,194,249,80,159,39,8,30,35,248,22,173,7,196,194,28,248, -22,113,194,248,22,177,2,249,80,159,40,8,30,35,248,22,114,197,248,22,178, -2,196,35,35,80,159,34,8,30,35,83,158,34,16,2,32,0,89,162,34,37, -45,2,27,222,28,28,194,249,22,188,2,195,196,11,28,249,22,148,8,195,34, -192,28,249,22,148,8,195,35,249,22,65,63,99,100,114,194,28,249,22,148,8, -195,36,249,22,65,64,99,100,100,114,194,28,249,22,148,8,195,37,249,22,65, -65,99,100,100,100,114,194,28,249,22,148,8,195,38,249,22,65,66,99,100,100, -100,100,114,194,250,22,65,69,108,105,115,116,45,116,97,105,108,195,196,28,249, -22,148,8,195,34,249,22,65,2,85,194,28,249,22,148,8,195,35,249,22,65, -2,86,194,28,249,22,148,8,195,36,249,22,65,65,99,97,100,100,114,194,28, -249,22,148,8,195,37,249,22,65,66,99,97,100,100,100,114,194,250,22,65,68, -108,105,115,116,45,114,101,102,195,196,80,159,34,58,35,83,158,34,16,2,89, -162,34,36,46,2,14,223,0,250,80,159,37,8,53,35,197,196,10,80,159,34, -44,35,83,158,34,16,2,89,162,8,36,38,59,2,25,223,0,27,249,22,5, -89,162,34,35,50,9,223,4,27,28,248,22,56,195,248,22,58,195,194,27,248, -22,56,196,28,28,248,22,56,194,248,22,56,195,11,252,2,108,198,200,248,22, -58,199,248,22,58,200,10,28,248,22,56,195,252,2,108,198,200,198,248,22,58, -200,11,28,248,22,149,3,194,28,248,22,149,3,195,28,249,22,164,3,195,196, -249,22,57,28,194,195,197,248,22,146,8,195,11,11,11,197,87,94,28,192,12, -251,22,1,22,177,8,2,83,6,49,49,116,111,111,32,102,101,119,32,101,108, -108,105,112,115,101,115,32,102,111,114,32,112,97,116,116,101,114,110,32,118,97, -114,105,97,98,108,101,32,105,110,32,116,101,109,112,108,97,116,101,27,28,248, -22,149,3,200,199,27,248,22,58,201,28,248,22,149,3,193,192,27,248,22,58, +248,22,113,194,248,22,177,2,27,248,22,114,196,27,248,22,178,2,198,28,249, +22,189,2,194,35,34,28,248,22,149,3,194,249,80,159,39,8,30,35,248,22, +153,3,196,194,28,248,22,56,194,27,249,80,159,40,8,30,35,248,22,58,197, +195,249,22,179,2,194,249,80,159,42,8,30,35,248,22,59,199,249,22,180,2, +199,198,28,248,22,167,7,194,249,80,159,39,8,30,35,248,22,174,7,196,194, +28,248,22,113,194,248,22,177,2,249,80,159,40,8,30,35,248,22,114,197,248, +22,178,2,196,35,35,80,159,34,8,30,35,83,158,34,16,2,32,0,89,162, +34,37,45,2,27,222,28,28,194,249,22,188,2,195,196,11,28,249,22,149,8, +195,34,192,28,249,22,149,8,195,35,249,22,65,63,99,100,114,194,28,249,22, +149,8,195,36,249,22,65,64,99,100,100,114,194,28,249,22,149,8,195,37,249, +22,65,65,99,100,100,100,114,194,28,249,22,149,8,195,38,249,22,65,66,99, +100,100,100,100,114,194,250,22,65,69,108,105,115,116,45,116,97,105,108,195,196, +28,249,22,149,8,195,34,249,22,65,2,86,194,28,249,22,149,8,195,35,249, +22,65,2,87,194,28,249,22,149,8,195,36,249,22,65,65,99,97,100,100,114, +194,28,249,22,149,8,195,37,249,22,65,66,99,97,100,100,100,114,194,250,22, +65,68,108,105,115,116,45,114,101,102,195,196,80,159,34,58,35,83,158,34,16, +2,89,162,34,36,46,2,14,223,0,250,80,159,37,8,53,35,197,196,10,80, +159,34,44,35,83,158,34,16,2,89,162,8,36,38,59,2,25,223,0,27,249, +22,5,89,162,34,35,50,9,223,4,27,28,248,22,56,195,248,22,58,195,194, +27,248,22,56,196,28,28,248,22,56,194,248,22,56,195,11,252,2,109,198,200, +248,22,58,199,248,22,58,200,10,28,248,22,56,195,252,2,109,198,200,198,248, +22,58,200,11,28,248,22,149,3,194,28,248,22,149,3,195,28,249,22,164,3, +195,196,249,22,57,28,194,195,197,248,22,147,8,195,11,11,11,197,87,94,28, +192,12,251,22,1,22,178,8,2,84,6,49,49,116,111,111,32,102,101,119,32, +101,108,108,105,112,115,101,115,32,102,111,114,32,112,97,116,116,101,114,110,32, +118,97,114,105,97,98,108,101,32,105,110,32,116,101,109,112,108,97,116,101,27, +28,248,22,149,3,200,199,27,248,22,58,201,28,248,22,149,3,193,192,27,248, +22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193, +192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22, +149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,248,2,110,248,22, +58,194,28,249,22,149,8,203,194,248,22,65,202,249,22,65,203,194,192,80,159, +34,56,35,83,158,34,16,2,32,0,89,162,34,35,42,2,26,222,249,22,2, +32,0,89,162,8,36,35,49,9,222,28,248,22,149,3,193,192,27,248,22,58, 194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27, 248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3, -193,192,27,248,22,58,194,28,248,22,149,3,193,192,248,2,109,248,22,58,194, -28,249,22,148,8,203,194,248,22,65,202,249,22,65,203,194,192,80,159,34,56, -35,83,158,34,16,2,32,0,89,162,34,35,42,2,26,222,249,22,2,32,0, -89,162,8,36,35,49,9,222,28,248,22,149,3,193,192,27,248,22,58,194,28, -248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22, -58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, -27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149, -3,193,192,248,2,110,248,22,58,194,194,80,159,34,57,35,83,158,34,16,2, -32,0,89,162,34,36,43,2,30,222,249,22,3,89,162,34,35,47,9,223,2, -28,248,22,56,194,27,248,22,58,195,28,248,22,149,3,193,28,249,22,164,3, -194,195,250,22,177,8,2,83,2,94,196,12,27,248,22,58,194,28,248,22,149, -3,193,28,249,22,164,3,194,196,250,22,177,8,2,83,2,94,197,12,249,2, -111,196,248,22,58,195,12,195,80,159,34,8,27,35,83,158,34,16,2,89,162, -34,35,46,2,10,223,0,28,248,80,158,35,47,194,27,248,80,158,36,42,195, -28,248,80,158,36,47,193,28,27,248,80,158,37,43,194,28,248,22,47,248,22, -153,3,194,249,22,166,3,194,20,15,159,38,34,8,43,11,248,22,146,8,27, -248,80,158,38,43,197,28,248,22,47,248,22,153,3,194,249,22,166,3,194,20, -15,159,39,34,8,43,11,11,11,11,80,159,34,40,35,83,158,34,16,2,32, -0,89,162,34,36,44,2,15,222,249,2,112,195,194,80,159,34,45,35,83,158, -34,16,2,32,0,89,162,34,35,42,2,31,222,248,2,114,193,80,159,34,8, -28,35,83,158,34,16,2,89,162,34,35,46,2,34,223,0,28,248,80,158,35, -47,194,28,27,248,80,158,36,43,195,28,248,80,158,36,47,193,28,27,248,80, -158,37,43,194,28,248,80,158,37,47,193,28,248,80,159,37,8,31,35,248,80, -158,38,43,194,248,80,159,37,8,31,35,248,80,158,38,42,194,11,28,248,80, -158,37,50,193,248,22,146,8,28,248,22,47,248,22,153,3,195,249,22,166,3, -195,20,15,159,39,34,8,43,11,10,27,248,80,158,37,42,194,28,248,80,158, -37,47,193,28,248,80,159,37,8,31,35,248,80,158,38,43,194,248,80,159,37, -8,31,35,248,80,158,38,42,194,11,28,248,80,158,37,50,193,248,22,146,8, -28,248,22,47,248,22,153,3,195,249,22,166,3,195,20,15,159,39,34,8,43, -11,10,11,28,248,80,158,36,50,193,248,22,146,8,28,248,22,47,248,22,153, -3,195,249,22,166,3,195,20,15,159,38,34,8,43,11,10,27,248,80,158,36, -42,195,28,248,80,158,36,47,193,28,27,248,80,158,37,43,194,28,248,80,158, -37,47,193,28,248,80,159,37,8,31,35,248,80,158,38,43,194,248,80,159,37, -8,31,35,248,80,158,38,42,194,11,28,248,80,158,37,50,193,248,22,146,8, -28,248,22,47,248,22,153,3,195,249,22,166,3,195,20,15,159,39,34,8,43, -11,10,27,248,80,158,37,42,194,28,248,80,158,37,47,193,28,248,80,159,37, -8,31,35,248,80,158,38,43,194,248,80,159,37,8,31,35,248,80,158,38,42, -194,11,28,248,80,158,37,50,193,248,22,146,8,28,248,22,47,248,22,153,3, -195,249,22,166,3,195,20,15,159,39,34,8,43,11,10,11,28,248,80,158,36, -50,193,248,22,146,8,28,248,22,47,248,22,153,3,195,249,22,166,3,195,20, -15,159,38,34,8,43,11,10,11,28,248,80,158,35,50,194,248,22,146,8,28, -248,22,47,248,22,153,3,196,249,22,166,3,196,20,15,159,37,34,8,43,11, -10,80,159,34,8,31,35,83,158,34,16,6,26,8,22,168,9,74,115,121,110, -116,97,120,45,109,97,112,112,105,110,103,11,36,34,11,9,247,22,128,10,89, -162,34,36,49,9,223,8,28,248,80,158,35,50,195,250,22,177,8,11,6,53, -53,112,97,116,116,101,114,110,32,118,97,114,105,97,98,108,101,32,99,97,110, -110,111,116,32,98,101,32,117,115,101,100,32,111,117,116,115,105,100,101,32,111, -102,32,97,32,116,101,109,112,108,97,116,101,197,251,22,177,8,11,6,53,53, -112,97,116,116,101,114,110,32,118,97,114,105,97,98,108,101,32,99,97,110,110, -111,116,32,98,101,32,117,115,101,100,32,111,117,116,115,105,100,101,32,111,102, -32,97,32,116,101,109,112,108,97,116,101,198,28,249,22,168,3,20,15,159,40, -36,8,43,248,80,158,41,43,201,248,80,158,39,43,248,80,158,40,42,200,248, -80,158,39,43,199,80,159,34,8,32,35,80,159,34,8,33,35,80,159,34,8, -34,35,80,159,34,8,35,35,80,159,34,8,36,35,83,158,34,16,2,249,22, -170,9,80,158,36,8,35,34,80,159,34,8,37,35,83,158,34,16,2,249,22, -170,9,80,158,36,8,35,35,80,159,34,8,38,35,83,158,34,16,2,89,162, -34,36,45,2,42,223,0,248,22,180,13,249,80,158,37,8,33,196,197,80,159, -34,8,39,35,83,158,34,16,2,89,162,34,35,43,2,43,223,0,28,248,22, -181,13,194,248,80,158,35,8,34,248,22,182,13,195,11,80,159,34,8,40,35, -83,158,34,16,2,89,162,34,35,43,2,44,223,0,248,80,158,35,8,37,248, -22,182,13,195,80,159,34,8,41,35,83,158,34,16,2,89,162,34,35,43,2, -45,223,0,248,80,158,35,8,38,248,22,182,13,195,80,159,34,8,42,35,95, -2,3,2,11,2,47,9,2,3,0}; - EVAL_ONE_SIZED_STR((char *)expr, 14331); +193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248, +22,149,3,193,192,248,2,111,248,22,58,194,194,80,159,34,57,35,83,158,34, +16,2,32,0,89,162,34,36,43,2,30,222,249,22,3,89,162,34,35,47,9, +223,2,28,248,22,56,194,27,248,22,58,195,28,248,22,149,3,193,28,249,22, +164,3,194,195,250,22,178,8,2,84,2,95,196,12,27,248,22,58,194,28,248, +22,149,3,193,28,249,22,164,3,194,196,250,22,178,8,2,84,2,95,197,12, +249,2,112,196,248,22,58,195,12,195,80,159,34,8,27,35,83,158,34,16,2, +89,162,34,35,46,2,10,223,0,28,248,80,158,35,47,194,27,248,80,158,36, +42,195,28,248,80,158,36,47,193,28,27,248,80,158,37,43,194,28,248,22,47, +248,22,153,3,194,249,22,166,3,194,20,15,159,38,34,8,43,11,248,22,147, +8,27,248,80,158,38,43,197,28,248,22,47,248,22,153,3,194,249,22,166,3, +194,20,15,159,39,34,8,43,11,11,11,11,80,159,34,40,35,83,158,34,16, +2,32,0,89,162,34,36,44,2,15,222,249,2,113,195,194,80,159,34,45,35, +83,158,34,16,2,32,0,89,162,34,35,42,2,31,222,248,2,115,193,80,159, +34,8,28,35,83,158,34,16,2,89,162,34,35,46,2,34,223,0,28,248,80, +158,35,47,194,28,27,248,80,158,36,43,195,28,248,80,158,36,47,193,28,27, +248,80,158,37,43,194,28,248,80,158,37,47,193,28,248,80,159,37,8,31,35, +248,80,158,38,43,194,248,80,159,37,8,31,35,248,80,158,38,42,194,11,28, +248,80,158,37,50,193,248,22,147,8,28,248,22,47,248,22,153,3,195,249,22, +166,3,195,20,15,159,39,34,8,43,11,10,27,248,80,158,37,42,194,28,248, +80,158,37,47,193,28,248,80,159,37,8,31,35,248,80,158,38,43,194,248,80, +159,37,8,31,35,248,80,158,38,42,194,11,28,248,80,158,37,50,193,248,22, +147,8,28,248,22,47,248,22,153,3,195,249,22,166,3,195,20,15,159,39,34, +8,43,11,10,11,28,248,80,158,36,50,193,248,22,147,8,28,248,22,47,248, +22,153,3,195,249,22,166,3,195,20,15,159,38,34,8,43,11,10,27,248,80, +158,36,42,195,28,248,80,158,36,47,193,28,27,248,80,158,37,43,194,28,248, +80,158,37,47,193,28,248,80,159,37,8,31,35,248,80,158,38,43,194,248,80, +159,37,8,31,35,248,80,158,38,42,194,11,28,248,80,158,37,50,193,248,22, +147,8,28,248,22,47,248,22,153,3,195,249,22,166,3,195,20,15,159,39,34, +8,43,11,10,27,248,80,158,37,42,194,28,248,80,158,37,47,193,28,248,80, +159,37,8,31,35,248,80,158,38,43,194,248,80,159,37,8,31,35,248,80,158, +38,42,194,11,28,248,80,158,37,50,193,248,22,147,8,28,248,22,47,248,22, +153,3,195,249,22,166,3,195,20,15,159,39,34,8,43,11,10,11,28,248,80, +158,36,50,193,248,22,147,8,28,248,22,47,248,22,153,3,195,249,22,166,3, +195,20,15,159,38,34,8,43,11,10,11,28,248,80,158,35,50,194,248,22,147, +8,28,248,22,47,248,22,153,3,196,249,22,166,3,196,20,15,159,37,34,8, +43,11,10,80,159,34,8,31,35,83,158,34,16,6,26,8,22,169,9,74,115, +121,110,116,97,120,45,109,97,112,112,105,110,103,11,36,34,11,9,247,22,129, +10,89,162,34,36,49,9,223,8,28,248,80,158,35,50,195,250,22,178,8,11, +6,53,53,112,97,116,116,101,114,110,32,118,97,114,105,97,98,108,101,32,99, +97,110,110,111,116,32,98,101,32,117,115,101,100,32,111,117,116,115,105,100,101, +32,111,102,32,97,32,116,101,109,112,108,97,116,101,197,251,22,178,8,11,6, +53,53,112,97,116,116,101,114,110,32,118,97,114,105,97,98,108,101,32,99,97, +110,110,111,116,32,98,101,32,117,115,101,100,32,111,117,116,115,105,100,101,32, +111,102,32,97,32,116,101,109,112,108,97,116,101,198,28,249,22,168,3,20,15, +159,40,36,8,43,248,80,158,41,43,201,248,80,158,39,43,248,80,158,40,42, +200,248,80,158,39,43,199,80,159,34,8,32,35,80,159,34,8,33,35,80,159, +34,8,34,35,80,159,34,8,35,35,80,159,34,8,36,35,83,158,34,16,2, +249,22,171,9,80,158,36,8,35,34,80,159,34,8,37,35,83,158,34,16,2, +249,22,171,9,80,158,36,8,35,35,80,159,34,8,38,35,83,158,34,16,2, +89,162,34,36,45,2,42,223,0,248,22,181,13,249,80,158,37,8,33,196,197, +80,159,34,8,39,35,83,158,34,16,2,89,162,34,35,43,2,43,223,0,28, +248,22,182,13,194,248,80,158,35,8,34,248,22,183,13,195,11,80,159,34,8, +40,35,83,158,34,16,2,89,162,34,35,43,2,44,223,0,248,80,158,35,8, +37,248,22,183,13,195,80,159,34,8,41,35,83,158,34,16,2,89,162,34,35, +43,2,45,223,0,248,80,158,35,8,38,248,22,183,13,195,80,159,34,8,42, +35,95,2,3,2,11,2,48,9,2,3,0}; + EVAL_ONE_SIZED_STR((char *)expr, 14354); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,145,0,0,0,1,0,0,3,0,31,0,53,0, -62,0,78,0,104,0,118,0,125,0,144,0,149,0,153,0,158,0,164,0,171, -0,175,0,180,0,186,0,193,0,202,0,212,0,218,0,223,0,238,0,243,0, -253,0,7,1,14,1,16,1,36,1,41,1,50,1,54,1,56,1,58,1,68, -1,77,1,85,1,93,1,103,1,108,1,118,1,132,1,136,1,149,1,159,1, -167,1,177,1,194,1,204,1,217,1,227,1,239,1,244,1,255,1,9,2,12, -2,24,2,33,2,43,2,53,2,69,2,78,2,88,2,98,2,108,2,118,2, -130,2,139,2,17,3,151,3,163,3,175,3,189,3,205,3,219,3,225,3,247, -3,41,4,137,4,198,4,26,5,42,5,100,5,116,5,132,5,148,5,168,5, -196,5,232,5,11,6,30,6,36,6,42,6,68,6,74,6,114,6,130,6,173, -6,213,6,5,7,24,7,72,7,88,7,104,7,137,7,143,7,149,7,155,7, -161,7,179,7,191,7,228,7,234,7,240,7,246,7,252,7,2,8,8,8,14, -8,20,8,80,8,86,8,92,8,120,8,186,8,210,8,216,8,222,8,31,9, -38,9,45,9,131,9,238,9,254,9,43,10,70,10,100,10,116,10,124,10,149, -10,252,10,2,11,13,11,122,11,0,0,15,26,0,0,29,11,11,1,26,100, -97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116,47,115, -104,97,112,101,1,20,99,97,116,99,104,45,101,108,108,105,112,115,105,115,45, -101,114,114,111,114,68,35,37,112,97,114,97,109,122,75,115,117,98,115,116,105, -116,117,116,101,45,115,116,111,112,1,24,97,112,112,108,121,45,112,97,116,116, -101,114,110,45,115,117,98,115,116,105,116,117,116,101,73,115,121,110,116,97,120, -45,99,97,115,101,42,42,66,115,121,110,116,97,120,78,112,97,116,116,101,114, -110,45,115,117,98,115,116,105,116,117,116,101,64,108,111,111,112,63,99,97,114, -64,99,97,100,114,65,99,97,100,100,114,66,99,97,100,100,100,114,63,99,100, -114,64,99,100,100,114,65,99,100,100,100,114,66,99,100,100,100,100,114,68,108, -105,115,116,45,114,101,102,69,108,105,115,116,45,116,97,105,108,65,35,37,115, -116,120,64,104,101,114,101,74,35,37,115,109,97,108,108,45,115,99,104,101,109, -101,64,35,37,115,99,3,1,7,101,110,118,50,56,54,49,3,1,7,101,110, -118,50,56,54,50,66,108,97,109,98,100,97,61,101,79,109,111,100,117,108,101, -45,105,100,101,110,116,105,102,105,101,114,61,63,64,116,97,105,108,68,116,114, -121,45,110,101,120,116,63,97,114,103,61,120,61,108,3,1,7,101,110,118,50, -56,56,55,68,112,97,116,116,101,114,110,115,67,102,101,110,100,101,114,115,67, -97,110,115,119,101,114,115,3,1,7,101,110,118,50,56,57,49,64,114,115,108, -116,3,1,7,101,110,118,50,56,57,53,73,112,97,116,116,101,114,110,45,118, -97,114,115,115,63,108,101,116,72,113,117,111,116,101,45,115,121,110,116,97,120, -3,1,7,101,110,118,50,56,57,56,67,112,97,116,116,101,114,110,3,1,7, -101,110,118,50,57,48,48,76,116,97,105,108,45,112,97,116,116,101,114,110,45, -118,97,114,69,116,101,109,112,45,118,97,114,115,72,112,97,116,116,101,114,110, -45,118,97,114,115,3,1,7,101,110,118,50,57,48,56,71,100,111,45,116,114, -121,45,110,101,120,116,64,109,116,99,104,70,99,97,110,116,45,102,97,105,108, -63,3,1,7,101,110,118,50,57,49,51,62,105,102,71,112,97,116,116,101,114, -110,45,118,97,114,68,116,101,109,112,45,118,97,114,3,1,7,101,110,118,50, -57,49,52,3,1,7,101,110,118,50,57,49,55,75,100,105,115,97,112,112,101, -97,114,101,100,45,117,115,101,68,104,101,114,101,45,115,116,120,3,1,7,101, -110,118,50,57,50,51,3,1,7,101,110,118,50,57,50,56,3,1,7,101,110, -118,50,57,51,53,3,1,7,101,110,118,50,57,52,52,71,112,97,114,101,110, -45,115,104,97,112,101,68,35,37,107,101,114,110,101,108,32,69,89,162,8,64, -36,49,2,10,222,28,248,22,63,194,9,28,250,22,122,195,248,22,153,3,248, -22,58,198,11,27,248,22,86,195,28,248,22,63,193,9,28,250,22,122,196,248, -22,153,3,248,22,58,197,11,249,2,69,195,248,22,86,195,249,22,57,248,22, -58,195,249,2,69,197,248,22,86,197,249,22,57,248,22,58,196,27,248,22,86, -197,28,248,22,63,193,9,28,250,22,122,198,248,22,153,3,248,22,58,197,11, -249,2,69,197,248,22,86,195,249,22,57,248,22,58,195,249,2,69,199,248,22, -86,197,32,70,89,162,8,64,36,49,2,10,222,28,248,22,63,194,9,28,250, -22,122,195,248,22,153,3,248,22,58,198,11,27,248,22,86,195,28,248,22,63, -193,9,28,250,22,122,196,248,22,153,3,248,22,58,197,11,249,2,70,195,248, -22,86,195,249,22,57,248,22,84,195,249,2,70,197,248,22,86,197,249,22,57, -248,22,84,196,27,248,22,86,197,28,248,22,63,193,9,28,250,22,122,198,248, -22,153,3,248,22,58,197,11,249,2,70,197,248,22,86,195,249,22,57,248,22, -84,195,249,2,70,199,248,22,86,197,30,2,21,67,115,116,120,45,99,97,114, -5,30,2,21,67,115,116,120,45,99,100,114,6,30,2,21,69,115,116,120,45, -62,108,105,115,116,4,30,2,21,71,105,100,101,110,116,105,102,105,101,114,63, -2,30,2,21,69,115,116,120,45,112,97,105,114,63,11,95,8,193,11,16,0, -97,10,35,11,95,159,2,24,9,11,159,2,23,9,11,159,2,21,9,11,16, -0,97,10,34,11,95,159,2,4,9,11,159,2,23,9,11,159,2,21,9,11, -16,14,2,5,2,1,2,8,2,1,2,9,2,1,2,7,2,1,2,2,2, -1,2,6,2,1,2,3,2,1,18,100,2,22,8,78,8,77,8,76,16,4, -11,11,63,115,116,120,3,1,7,101,110,118,50,56,54,48,16,6,11,11,63, -112,97,116,64,115,117,98,115,2,25,2,25,16,6,11,11,69,104,116,45,99, -111,109,109,111,110,66,104,116,45,109,97,112,2,26,2,26,16,4,11,11,71, -110,101,119,45,112,97,116,116,101,114,110,3,1,7,101,110,118,50,56,55,48, -32,80,89,162,8,100,35,45,2,10,222,28,248,22,149,3,193,192,27,248,22, -58,194,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, -27,248,22,58,194,28,248,22,149,3,193,192,248,2,80,248,22,58,194,32,81, -89,162,8,100,36,50,2,10,222,28,248,22,149,3,193,193,27,248,22,58,194, -27,248,22,177,2,196,28,248,22,149,3,194,192,27,248,22,58,195,27,248,22, -177,2,195,28,248,22,149,3,194,192,27,248,22,58,195,27,248,22,177,2,195, -28,248,22,149,3,194,192,249,2,81,248,22,58,196,248,22,177,2,195,16,8, -11,11,2,36,2,37,2,38,2,39,2,39,2,39,16,14,11,11,63,119,104, -111,71,97,114,103,45,105,115,45,115,116,120,63,64,101,120,112,114,63,107,119, -115,68,108,105,116,45,99,111,109,112,67,99,108,97,117,115,101,115,2,35,2, -35,2,35,2,35,2,35,2,35,16,4,11,11,2,34,3,1,7,101,110,118, -50,56,56,54,16,4,11,11,2,34,3,1,7,101,110,118,50,56,56,52,16, -4,11,11,2,33,3,1,7,101,110,118,50,56,56,50,18,101,2,32,8,78, -8,77,8,76,8,86,8,85,8,84,8,83,8,82,18,102,2,40,8,78,8, -77,8,76,8,86,8,85,8,84,8,83,8,82,16,4,11,11,2,32,2,41, -18,102,2,29,8,78,8,77,8,76,8,86,8,85,8,84,8,83,8,82,16, -8,11,11,2,32,2,40,2,42,2,41,2,41,2,41,16,10,11,11,2,32, -2,40,2,42,76,108,105,116,45,99,111,109,112,45,105,115,45,109,111,100,63, -2,41,2,41,2,41,2,41,101,8,78,8,77,8,76,8,86,8,85,8,84, -8,83,8,82,8,90,18,158,2,22,8,91,18,158,2,43,8,91,18,158,1, -20,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116, -8,91,18,158,2,44,8,91,16,10,11,11,2,36,2,37,1,20,117,110,102, -108,97,116,45,112,97,116,116,101,114,110,45,118,97,114,115,115,2,38,2,45, -2,45,2,45,2,45,16,4,11,11,2,10,3,1,7,101,110,118,50,56,57, -55,18,104,78,114,97,105,115,101,45,115,121,110,116,97,120,45,101,114,114,111, -114,8,78,8,77,8,76,8,86,8,85,8,84,8,83,8,82,8,90,8,97, -8,96,16,8,11,11,2,48,2,49,2,50,3,1,7,101,110,118,50,57,48, -54,3,1,7,101,110,118,50,57,48,52,3,1,7,101,110,118,50,57,48,50, -16,10,11,11,2,46,66,102,101,110,100,101,114,79,117,110,102,108,97,116,45, -112,97,116,116,101,114,110,45,118,97,114,115,66,97,110,115,119,101,114,2,47, -2,47,2,47,2,47,16,4,11,11,64,114,101,115,116,3,1,7,101,110,118, -50,56,57,57,18,108,2,31,8,78,8,77,8,76,8,86,8,85,8,84,8, -83,8,82,8,90,8,97,8,96,8,101,8,100,8,99,16,8,11,11,2,48, -2,49,2,50,2,51,2,51,2,51,16,8,11,11,2,52,2,53,2,54,2, -55,2,55,2,55,16,8,11,11,2,48,2,49,2,50,2,51,2,51,2,51, -108,8,78,8,77,8,76,8,86,8,85,8,84,8,83,8,82,8,90,8,97, -8,96,8,101,8,100,8,99,8,104,8,103,18,158,2,43,8,105,18,158,2, -22,8,105,18,158,2,56,8,105,18,158,2,43,8,105,16,4,11,11,63,112, -111,115,3,1,7,101,110,118,50,57,49,53,16,6,11,11,2,57,2,58,2, -59,2,59,110,8,78,8,77,8,76,8,86,8,85,8,84,8,83,8,82,8, -90,8,97,8,96,8,101,8,100,8,99,8,104,8,103,8,111,8,110,18,158, -2,15,8,112,18,158,2,16,8,112,18,158,2,17,8,112,18,158,2,18,8, -112,18,158,2,11,8,112,18,158,2,12,8,112,18,158,2,13,8,112,18,158, -2,14,8,112,111,8,78,8,77,8,76,8,86,8,85,8,84,8,83,8,82, -8,90,8,97,8,96,8,101,8,100,8,99,8,104,8,103,8,111,8,110,16, -4,11,11,68,97,99,99,101,115,115,111,114,3,1,7,101,110,118,50,57,49, -54,18,158,2,20,8,121,18,158,2,19,8,121,18,158,1,22,108,101,116,114, -101,99,45,115,121,110,116,97,120,101,115,43,118,97,108,117,101,115,8,105,109, -8,78,8,77,8,76,8,86,8,85,8,84,8,83,8,82,8,90,8,97,8, -96,8,101,8,100,8,99,8,104,8,103,16,8,11,11,2,57,78,117,110,102, -108,97,116,45,112,97,116,116,101,114,110,45,118,97,114,2,58,2,60,2,60, -2,60,18,158,79,109,97,107,101,45,115,121,110,116,97,120,45,109,97,112,112, -105,110,103,8,125,18,158,2,44,8,125,18,158,2,56,8,105,108,8,78,8, -77,8,76,8,86,8,85,8,84,8,83,8,82,8,90,8,97,8,96,8,101, -8,100,8,99,16,8,11,11,2,48,2,49,2,50,2,51,2,51,2,51,16, -10,11,11,2,52,2,53,2,54,61,109,2,55,2,55,2,55,2,55,18,158, -2,43,8,129,2,18,158,2,27,8,129,2,32,132,2,89,162,8,64,36,50, -2,10,222,28,248,22,129,3,194,192,27,248,22,65,194,27,248,22,178,2,196, -28,248,22,129,3,193,193,27,248,22,65,195,27,248,22,178,2,195,28,248,22, -129,3,193,193,27,248,22,65,195,27,248,22,178,2,195,28,248,22,129,3,193, -193,249,2,132,2,248,22,65,196,248,22,178,2,195,32,133,2,89,162,8,64, -36,51,2,10,222,28,248,22,63,194,9,27,27,248,22,59,195,27,248,22,59, -197,28,248,22,63,193,9,27,27,248,22,59,196,27,248,22,59,196,28,248,22, -63,193,9,27,249,2,133,2,248,22,59,197,248,22,59,196,28,248,22,58,194, -192,249,22,57,248,22,58,197,194,28,248,22,58,194,192,249,22,57,248,22,58, -197,194,28,248,22,58,195,192,249,22,57,248,22,58,196,194,16,4,11,11,2, -33,3,1,7,101,110,118,50,57,50,49,18,100,2,22,8,78,8,77,8,76, -8,134,2,16,4,11,11,2,62,2,63,16,4,11,11,2,62,2,63,16,4, -11,11,2,62,3,1,7,101,110,118,50,57,50,53,16,4,11,11,72,118,97, -114,45,98,105,110,100,105,110,103,115,3,1,7,101,110,118,50,57,50,57,16, -6,11,11,71,117,110,105,113,117,101,45,118,97,114,115,69,97,108,108,45,118, -97,114,115,115,2,64,2,64,16,4,11,11,2,46,3,1,7,101,110,118,50, -57,50,55,16,4,11,11,2,62,2,63,18,101,2,44,8,78,8,77,8,76, -8,134,2,8,139,2,8,138,2,8,137,2,8,136,2,103,8,78,8,77,8, -76,8,134,2,8,139,2,8,138,2,8,137,2,8,136,2,16,6,11,11,67, -112,114,111,116,111,45,114,76,110,111,110,45,112,97,116,116,101,114,110,45,118, -97,114,115,2,65,2,65,16,6,11,11,79,98,117,105,108,100,45,102,114,111, -109,45,116,101,109,112,108,97,116,101,61,114,2,66,2,66,16,4,11,11,63, -108,101,110,3,1,7,101,110,118,50,57,52,55,18,158,9,8,141,2,18,158, -65,108,105,115,116,42,8,141,2,32,144,2,89,162,8,64,37,50,65,115,108, -111,111,112,222,28,248,22,63,194,192,28,249,22,148,8,194,248,22,58,196,248, -22,58,195,27,248,22,59,195,27,248,22,59,197,28,248,22,63,194,194,28,249, -22,148,8,196,248,22,58,196,248,22,58,193,27,248,22,59,195,27,248,22,59, -195,28,248,22,63,194,196,28,249,22,148,8,198,248,22,58,196,248,22,58,193, -250,2,144,2,199,248,22,59,197,248,22,59,196,159,34,20,100,159,34,16,1, -20,24,65,98,101,103,105,110,16,0,83,158,40,20,97,114,69,35,37,115,116, -120,99,97,115,101,2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,5, -30,2,1,2,2,193,30,2,1,2,3,193,30,2,4,1,21,101,120,99,101, -112,116,105,111,110,45,104,97,110,100,108,101,114,45,107,101,121,2,30,2,1, -2,5,193,30,2,1,2,6,193,16,0,11,11,16,4,2,6,2,3,2,2, -2,5,38,11,16,2,2,7,2,8,16,2,11,11,16,2,2,7,2,8,34, -36,95,16,5,93,2,9,87,94,83,158,34,16,2,89,162,8,100,37,50,2, -10,223,0,28,248,22,63,196,12,87,94,27,248,22,153,3,248,22,58,198,27, -248,22,84,198,28,28,248,80,158,37,37,193,10,28,248,80,158,37,38,193,28, -249,22,77,248,22,153,3,248,80,158,40,34,196,21,102,2,11,2,12,2,13, -2,14,2,15,2,16,2,17,2,18,2,19,2,20,28,248,80,158,37,38,248, -80,158,38,35,194,248,80,158,37,37,248,80,158,38,34,248,80,158,39,35,195, -11,11,11,27,248,22,151,3,194,27,250,22,122,200,196,11,28,192,250,22,121, -201,198,195,250,22,121,200,196,198,12,250,80,159,37,41,35,196,197,248,22,86, -199,80,159,34,41,35,89,162,8,36,35,8,27,9,223,0,27,248,80,158,36, -34,248,80,158,37,35,196,27,248,80,158,37,36,248,80,158,38,35,248,80,158, -39,35,198,27,248,22,116,65,101,113,117,97,108,27,247,22,116,87,94,250,80, -159,41,41,35,196,195,197,27,28,248,22,129,3,248,22,119,195,196,91,159,35, -11,20,12,95,35,248,193,198,89,162,8,64,35,47,2,10,224,2,0,28,248, -22,56,195,27,248,194,248,22,58,197,27,248,195,248,22,59,198,28,28,249,22, -148,8,195,248,22,58,199,249,22,148,8,194,248,22,59,199,11,196,249,22,57, -195,194,28,248,22,47,195,27,250,22,122,197,198,11,28,192,192,195,28,248,22, -149,3,195,27,248,194,248,22,153,3,197,28,249,22,148,8,248,22,153,3,198, -194,195,251,22,152,3,199,196,199,199,28,248,22,166,7,195,248,22,174,7,249, -22,2,195,248,22,173,7,198,28,248,22,113,195,248,22,111,248,194,248,22,114, -197,194,250,22,152,3,20,15,159,42,34,39,251,22,67,2,6,199,249,22,65, -65,113,117,111,116,101,28,248,22,63,205,9,28,250,22,122,205,248,22,153,3, -248,22,58,23,17,11,249,2,69,204,248,22,86,23,15,249,22,57,248,22,58, -23,15,249,2,69,206,248,22,86,23,17,28,248,22,63,203,9,28,250,22,122, -203,248,22,153,3,248,22,58,23,15,11,249,2,70,202,248,22,86,205,249,22, -57,248,22,84,205,249,2,70,204,248,22,86,23,15,201,34,20,100,159,35,16, -5,2,71,2,72,2,73,2,74,2,75,16,1,33,79,11,16,5,93,2,7, -87,97,83,158,34,16,2,89,162,8,36,44,8,46,2,10,223,0,28,248,22, -63,200,251,22,65,20,15,159,38,41,43,11,6,10,10,98,97,100,32,115,121, -110,116,97,120,197,27,26,10,80,159,45,8,41,35,204,205,206,23,15,23,16, -23,17,248,22,59,23,19,248,22,59,23,20,248,22,59,23,21,248,22,59,23, -22,27,248,22,58,202,27,248,22,58,204,27,248,22,58,206,27,248,22,58,23, -16,91,159,37,10,90,161,35,34,10,249,22,2,32,0,89,162,8,36,35,45, -9,222,28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192, -27,248,22,58,194,28,248,22,149,3,193,192,248,2,80,248,22,58,194,198,90, -161,35,35,10,249,22,2,32,0,89,162,8,36,35,43,9,222,250,22,152,3, -195,247,22,54,11,209,90,161,35,36,10,248,22,178,2,248,22,70,209,27,28, -248,22,58,23,18,248,22,65,20,15,159,44,42,43,200,27,252,80,158,49,41, -23,19,205,205,248,80,158,50,35,23,21,248,22,146,8,23,19,27,28,206,249, -22,150,8,195,21,95,2,27,93,2,28,2,28,249,22,150,8,195,21,95,2, -27,94,2,28,2,29,2,28,27,250,22,65,20,15,159,49,43,43,248,22,65, -249,22,65,23,20,28,199,23,19,250,22,67,250,22,152,3,20,15,159,58,44, -43,206,23,22,23,22,28,23,24,9,248,22,65,23,28,251,22,65,20,15,159, -53,45,43,28,200,10,23,21,250,22,65,20,15,159,56,46,43,250,22,2,89, -162,8,36,36,52,9,226,25,27,19,17,249,22,65,199,27,249,80,158,42,42, -201,212,27,28,249,22,188,2,214,195,28,249,22,148,8,195,34,2,30,28,249, -22,148,8,195,35,20,15,159,41,47,43,28,249,22,148,8,195,36,20,15,159, -41,48,43,28,249,22,148,8,195,37,20,15,159,41,49,43,28,249,22,148,8, -195,38,20,15,159,41,50,43,2,30,28,249,22,148,8,195,34,20,15,159,41, -51,43,28,249,22,148,8,195,35,20,15,159,41,52,43,28,249,22,148,8,195, -36,20,15,159,41,53,43,28,249,22,148,8,195,37,20,15,159,41,54,43,11, -28,249,22,148,8,194,2,30,28,248,22,129,3,194,198,250,22,65,20,15,159, -44,55,43,201,196,28,192,249,22,65,194,200,250,22,65,20,15,159,44,56,43, -201,196,24,17,24,18,251,22,65,20,15,159,8,26,57,43,251,22,2,80,159, -8,30,8,42,35,24,22,23,26,24,23,9,28,23,23,251,22,65,20,15,159, -8,30,8,26,43,23,27,23,25,23,21,23,21,202,28,201,250,22,65,20,15, -159,49,8,27,43,248,22,65,249,22,65,2,31,250,22,65,20,15,159,55,8, -28,43,247,22,65,23,20,195,192,80,159,34,8,41,35,83,158,34,16,2,89, -162,8,36,37,54,9,223,0,249,22,65,248,22,65,196,250,22,65,20,15,159, -39,58,43,28,248,22,149,3,200,34,27,248,22,58,201,28,248,22,149,3,193, -35,27,248,22,58,194,28,248,22,149,3,193,36,249,2,81,248,22,58,195,37, -249,22,65,20,15,159,41,59,43,202,80,159,34,8,42,35,83,158,34,16,2, -89,162,34,35,44,9,223,0,27,248,80,158,36,39,248,80,158,37,39,196,28, -248,80,158,36,38,193,248,80,158,36,37,193,248,80,158,36,37,248,80,158,37, -39,196,80,159,34,8,40,35,83,158,34,16,2,89,162,34,35,44,9,223,0, -28,248,80,158,35,38,248,80,158,36,39,248,80,158,37,39,196,248,80,158,35, -37,248,80,158,36,39,195,11,80,159,34,8,39,35,89,162,8,36,35,8,38, -9,223,0,91,159,35,10,90,161,35,34,10,28,248,80,158,36,34,195,248,22, -59,248,80,158,37,35,196,11,87,94,28,28,248,80,158,36,34,195,249,22,190, -2,248,22,70,210,37,11,12,250,22,177,8,11,6,8,8,98,97,100,32,102, -111,114,109,197,27,248,22,58,209,27,248,22,84,210,27,248,22,93,211,27,248, -22,96,212,27,248,22,96,248,22,59,214,27,248,22,95,248,22,59,215,87,96, -28,248,80,158,42,34,195,12,250,22,177,8,248,22,153,3,201,6,56,56,101, -120,112,101,99,116,101,100,32,97,32,112,97,114,101,110,116,104,101,115,105,122, -101,100,32,115,101,113,117,101,110,99,101,32,111,102,32,108,105,116,101,114,97, -108,32,105,100,101,110,116,105,102,105,101,114,115,197,249,22,3,89,162,34,35, -46,9,224,9,7,28,248,80,158,36,36,195,12,250,22,177,8,248,22,153,3, -196,6,28,28,108,105,116,101,114,97,108,32,105,115,32,110,111,116,32,97,110, -32,105,100,101,110,116,105,102,105,101,114,197,248,80,158,44,35,197,249,22,3, -89,162,34,35,47,9,224,9,7,28,28,248,80,158,36,34,195,250,22,191,2, -36,248,22,70,248,80,158,40,35,199,37,11,12,250,22,177,8,248,22,153,3, -196,6,10,10,98,97,100,32,99,108,97,117,115,101,197,194,27,249,22,2,80, -158,44,37,195,27,249,22,2,80,159,45,8,39,35,196,27,249,22,2,80,159, -46,8,40,35,197,27,20,15,159,45,34,43,27,20,15,159,46,35,43,27,249, -22,2,89,162,34,35,48,9,225,15,10,13,251,80,158,40,40,196,199,199,248, -80,158,41,35,198,248,80,158,50,35,200,27,28,248,80,158,49,36,201,249,22, -166,3,202,20,15,159,50,36,43,11,250,22,152,3,20,15,159,51,37,43,250, -22,65,20,15,159,54,38,43,248,22,65,249,22,65,204,28,248,22,153,3,23, -21,23,19,250,22,65,20,15,159,8,26,39,43,249,22,65,20,15,159,8,28, -40,43,249,22,152,3,23,26,2,22,23,22,26,10,80,159,8,30,8,41,35, -23,19,23,18,23,16,23,28,23,25,23,24,23,22,23,21,23,17,23,20,23, -18,34,20,100,159,38,16,9,30,2,21,69,115,116,120,45,108,105,115,116,63, -8,2,73,2,74,2,71,2,75,2,72,30,2,24,74,103,101,116,45,109,97, -116,99,104,45,118,97,114,115,0,30,2,24,74,109,97,107,101,45,109,97,116, -99,104,38,101,110,118,1,30,2,24,72,115,116,120,45,109,101,109,113,45,112, -111,115,5,16,29,33,87,33,88,33,89,33,92,33,93,33,94,33,95,33,98, -33,102,33,106,33,107,33,108,33,109,33,113,33,114,33,115,33,116,33,117,33, -118,33,119,33,120,33,122,33,123,33,124,33,126,33,127,33,128,2,33,130,2, -33,131,2,11,16,5,93,2,8,87,96,83,158,34,16,2,89,162,8,64,38, -8,26,2,10,223,0,28,248,22,63,196,9,28,248,22,58,196,249,22,57,250, -22,161,3,250,22,152,3,248,22,58,203,248,22,153,3,248,80,158,44,42,248, -22,58,206,201,2,61,248,22,58,202,27,248,22,59,198,27,248,22,59,200,27, -248,22,59,202,28,248,22,63,194,9,28,248,22,58,194,249,22,57,250,22,161, -3,250,22,152,3,248,22,58,203,248,22,153,3,248,80,158,49,42,248,22,58, -204,206,2,61,248,22,58,198,251,80,159,45,51,35,204,248,22,59,201,248,22, -59,200,248,22,59,199,251,80,159,43,51,35,202,248,22,59,199,248,22,59,198, -248,22,59,197,27,248,22,59,196,27,248,22,59,198,27,248,22,59,200,28,248, -22,63,194,9,28,248,22,58,194,249,22,57,250,22,161,3,250,22,152,3,248, -22,58,203,248,22,153,3,248,80,158,47,42,248,22,58,204,204,2,61,248,22, -58,198,251,80,159,43,51,35,202,248,22,59,201,248,22,59,200,248,22,59,199, -251,80,159,41,51,35,200,248,22,59,199,248,22,59,198,248,22,59,197,80,159, -34,51,35,83,158,34,16,2,89,162,8,64,36,8,29,2,10,223,0,28,248, -22,63,195,9,27,249,80,159,37,50,35,248,22,59,197,248,22,59,198,28,248, -22,58,196,249,22,57,27,248,22,58,198,27,248,80,158,40,41,248,22,58,201, -28,248,22,129,3,193,193,27,248,22,65,195,27,248,22,178,2,195,28,248,22, -129,3,193,193,27,248,22,65,195,27,248,22,178,2,195,28,248,22,129,3,193, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,142,0,0,0,1,0,0,3,0,31,0,53, +0,62,0,78,0,104,0,111,0,125,0,144,0,149,0,153,0,158,0,164,0, +171,0,175,0,180,0,186,0,193,0,202,0,212,0,218,0,223,0,226,0,241, +0,246,0,255,0,8,1,15,1,17,1,37,1,42,1,51,1,55,1,57,1, +59,1,68,1,77,1,82,1,91,1,105,1,109,1,122,1,130,1,139,1,156, +1,166,1,179,1,188,1,200,1,205,1,216,1,225,1,228,1,240,1,249,1, +2,2,11,2,27,2,36,2,45,2,54,2,63,2,72,2,84,2,93,2,227, +2,105,3,117,3,129,3,143,3,159,3,173,3,179,3,201,3,251,3,98,4, +159,4,243,4,22,5,80,5,95,5,110,5,125,5,154,5,191,5,236,5,15, +6,43,6,49,6,55,6,81,6,87,6,122,6,137,6,189,6,226,6,18,7, +36,7,93,7,109,7,125,7,167,7,173,7,179,7,185,7,191,7,208,7,220, +7,10,8,16,8,22,8,28,8,34,8,40,8,46,8,52,8,58,8,126,8, +132,8,138,8,166,8,241,8,9,9,15,9,21,9,95,9,101,9,107,9,193, +9,44,10,59,10,112,10,138,10,168,10,183,10,191,10,225,10,80,11,86,11, +97,11,206,11,0,0,97,26,0,0,29,11,11,1,26,100,97,116,117,109,45, +62,115,121,110,116,97,120,45,111,98,106,101,99,116,47,115,104,97,112,101,1, +20,99,97,116,99,104,45,101,108,108,105,112,115,105,115,45,101,114,114,111,114, +68,35,37,112,97,114,97,109,122,75,115,117,98,115,116,105,116,117,116,101,45, +115,116,111,112,1,24,97,112,112,108,121,45,112,97,116,116,101,114,110,45,115, +117,98,115,116,105,116,117,116,101,66,115,121,110,116,97,120,73,115,121,110,116, +97,120,45,99,97,115,101,42,42,78,112,97,116,116,101,114,110,45,115,117,98, +115,116,105,116,117,116,101,64,108,111,111,112,63,99,97,114,64,99,97,100,114, +65,99,97,100,100,114,66,99,97,100,100,100,114,63,99,100,114,64,99,100,100, +114,65,99,100,100,100,114,66,99,100,100,100,100,114,68,108,105,115,116,45,114, +101,102,69,108,105,115,116,45,116,97,105,108,65,35,37,115,116,120,64,104,101, +114,101,29,11,11,74,35,37,115,109,97,108,108,45,115,99,104,101,109,101,64, +35,37,115,99,3,1,6,101,110,118,52,48,55,3,1,6,101,110,118,52,48, +56,66,108,97,109,98,100,97,61,101,79,109,111,100,117,108,101,45,105,100,101, +110,116,105,102,105,101,114,61,63,64,116,97,105,108,68,116,114,121,45,110,101, +120,116,63,97,114,103,61,120,61,108,3,1,6,101,110,118,52,51,51,3,1, +6,101,110,118,52,51,55,64,114,115,108,116,3,1,6,101,110,118,52,52,49, +73,112,97,116,116,101,114,110,45,118,97,114,115,115,63,108,101,116,72,113,117, +111,116,101,45,115,121,110,116,97,120,67,112,97,116,116,101,114,110,3,1,6, +101,110,118,52,52,54,76,116,97,105,108,45,112,97,116,116,101,114,110,45,118, +97,114,69,116,101,109,112,45,118,97,114,115,72,112,97,116,116,101,114,110,45, +118,97,114,115,3,1,6,101,110,118,52,53,52,71,100,111,45,116,114,121,45, +110,101,120,116,64,109,116,99,104,70,99,97,110,116,45,102,97,105,108,63,3, +1,6,101,110,118,52,53,57,62,105,102,71,112,97,116,116,101,114,110,45,118, +97,114,68,116,101,109,112,45,118,97,114,3,1,6,101,110,118,52,54,48,3, +1,6,101,110,118,52,54,51,75,100,105,115,97,112,112,101,97,114,101,100,45, +117,115,101,68,104,101,114,101,45,115,116,120,3,1,6,101,110,118,52,54,57, +3,1,6,101,110,118,52,55,52,3,1,6,101,110,118,52,56,49,3,1,6, +101,110,118,52,57,48,71,112,97,114,101,110,45,115,104,97,112,101,68,35,37, +107,101,114,110,101,108,32,66,89,162,8,64,36,49,2,10,222,28,248,22,63, +194,9,28,250,22,122,195,248,22,153,3,248,22,58,198,11,27,248,22,86,195, +28,248,22,63,193,9,28,250,22,122,196,248,22,153,3,248,22,58,197,11,249, +2,66,195,248,22,86,195,249,22,57,248,22,58,195,249,2,66,197,248,22,86, +197,249,22,57,248,22,58,196,27,248,22,86,197,28,248,22,63,193,9,28,250, +22,122,198,248,22,153,3,248,22,58,197,11,249,2,66,197,248,22,86,195,249, +22,57,248,22,58,195,249,2,66,199,248,22,86,197,32,67,89,162,8,64,36, +49,2,10,222,28,248,22,63,194,9,28,250,22,122,195,248,22,153,3,248,22, +58,198,11,27,248,22,86,195,28,248,22,63,193,9,28,250,22,122,196,248,22, +153,3,248,22,58,197,11,249,2,67,195,248,22,86,195,249,22,57,248,22,84, +195,249,2,67,197,248,22,86,197,249,22,57,248,22,84,196,27,248,22,86,197, +28,248,22,63,193,9,28,250,22,122,198,248,22,153,3,248,22,58,197,11,249, +2,67,197,248,22,86,195,249,22,57,248,22,84,195,249,2,67,199,248,22,86, +197,30,2,21,67,115,116,120,45,99,97,114,5,30,2,21,67,115,116,120,45, +99,100,114,6,30,2,21,69,115,116,120,45,62,108,105,115,116,4,30,2,21, +71,105,100,101,110,116,105,102,105,101,114,63,2,30,2,21,69,115,116,120,45, +112,97,105,114,63,11,95,8,193,11,16,0,97,10,35,11,95,159,2,25,9, +11,159,2,24,9,11,159,2,21,9,11,16,0,97,10,34,11,95,159,2,4, +9,11,159,2,24,9,11,159,2,21,9,11,16,14,2,2,2,1,2,7,2, +1,2,8,2,1,2,6,2,1,2,9,2,1,2,5,2,1,2,3,2,1, +18,101,2,22,13,16,4,34,2,23,2,1,11,8,75,8,74,8,73,16,4, +11,11,63,115,116,120,3,1,6,101,110,118,52,48,54,16,6,11,11,63,112, +97,116,64,115,117,98,115,2,26,2,26,16,6,11,11,69,104,116,45,99,111, +109,109,111,110,66,104,116,45,109,97,112,2,27,2,27,16,4,11,11,71,110, +101,119,45,112,97,116,116,101,114,110,3,1,6,101,110,118,52,49,54,32,77, +89,162,8,100,35,45,2,10,222,28,248,22,149,3,193,192,27,248,22,58,194, +28,248,22,149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248, +22,58,194,28,248,22,149,3,193,192,248,2,77,248,22,58,194,32,78,89,162, +8,100,36,50,2,10,222,28,248,22,149,3,193,193,27,248,22,58,194,27,248, +22,177,2,196,28,248,22,149,3,194,192,27,248,22,58,195,27,248,22,177,2, +195,28,248,22,149,3,194,192,27,248,22,58,195,27,248,22,177,2,195,28,248, +22,149,3,194,192,249,2,78,248,22,58,196,248,22,177,2,195,16,8,11,11, +68,112,97,116,116,101,114,110,115,67,102,101,110,100,101,114,115,67,97,110,115, +119,101,114,115,2,37,2,37,2,37,16,14,11,11,63,119,104,111,71,97,114, +103,45,105,115,45,115,116,120,63,64,101,120,112,114,63,107,119,115,68,108,105, +116,45,99,111,109,112,67,99,108,97,117,115,101,115,2,36,2,36,2,36,2, +36,2,36,2,36,16,4,11,11,2,35,3,1,6,101,110,118,52,51,50,16, +4,11,11,2,35,3,1,6,101,110,118,52,51,48,16,4,11,11,2,34,3, +1,6,101,110,118,52,50,56,18,102,2,33,13,16,4,34,2,23,2,1,11, +8,75,8,74,8,73,8,83,8,82,8,81,8,80,8,79,18,103,2,38,13, +16,4,34,2,23,2,1,11,8,75,8,74,8,73,8,83,8,82,8,81,8, +80,8,79,16,4,11,11,2,33,2,39,18,103,2,30,13,16,4,34,2,23, +2,1,11,8,75,8,74,8,73,8,83,8,82,8,81,8,80,8,79,16,8, +11,11,2,33,2,38,2,40,2,39,2,39,2,39,16,10,11,11,2,33,2, +38,2,40,76,108,105,116,45,99,111,109,112,45,105,115,45,109,111,100,63,2, +39,2,39,2,39,2,39,102,13,16,4,34,2,23,2,1,11,8,75,8,74, +8,73,8,83,8,82,8,81,8,80,8,79,8,87,18,158,2,22,8,88,18, +158,2,41,8,88,18,158,1,20,100,97,116,117,109,45,62,115,121,110,116,97, +120,45,111,98,106,101,99,116,8,88,18,158,2,42,8,88,16,4,11,11,1, +20,117,110,102,108,97,116,45,112,97,116,116,101,114,110,45,118,97,114,115,115, +3,1,6,101,110,118,52,52,52,16,4,11,11,2,10,3,1,6,101,110,118, +52,52,51,18,105,78,114,97,105,115,101,45,115,121,110,116,97,120,45,101,114, +114,111,114,13,16,4,34,2,23,2,1,11,8,75,8,74,8,73,8,83,8, +82,8,81,8,80,8,79,8,87,8,94,8,93,16,8,11,11,2,45,2,46, +2,47,3,1,6,101,110,118,52,53,50,3,1,6,101,110,118,52,53,48,3, +1,6,101,110,118,52,52,56,16,10,11,11,2,43,66,102,101,110,100,101,114, +79,117,110,102,108,97,116,45,112,97,116,116,101,114,110,45,118,97,114,115,66, +97,110,115,119,101,114,2,44,2,44,2,44,2,44,16,4,11,11,64,114,101, +115,116,3,1,6,101,110,118,52,52,53,18,109,2,32,13,16,4,34,2,23, +2,1,11,8,75,8,74,8,73,8,83,8,82,8,81,8,80,8,79,8,87, +8,94,8,93,8,98,8,97,8,96,16,8,11,11,2,45,2,46,2,47,2, +48,2,48,2,48,16,8,11,11,2,49,2,50,2,51,2,52,2,52,2,52, +16,8,11,11,2,45,2,46,2,47,2,48,2,48,2,48,109,13,16,4,34, +2,23,2,1,11,8,75,8,74,8,73,8,83,8,82,8,81,8,80,8,79, +8,87,8,94,8,93,8,98,8,97,8,96,8,101,8,100,18,158,2,41,8, +102,18,158,2,22,8,102,18,158,2,53,8,102,18,158,2,41,8,102,16,4, +11,11,63,112,111,115,3,1,6,101,110,118,52,54,49,16,6,11,11,2,54, +2,55,2,56,2,56,111,13,16,4,34,2,23,2,1,11,8,75,8,74,8, +73,8,83,8,82,8,81,8,80,8,79,8,87,8,94,8,93,8,98,8,97, +8,96,8,101,8,100,8,108,8,107,18,158,2,15,8,109,18,158,2,16,8, +109,18,158,2,17,8,109,18,158,2,18,8,109,18,158,2,11,8,109,18,158, +2,12,8,109,18,158,2,13,8,109,18,158,2,14,8,109,112,13,16,4,34, +2,23,2,1,11,8,75,8,74,8,73,8,83,8,82,8,81,8,80,8,79, +8,87,8,94,8,93,8,98,8,97,8,96,8,101,8,100,8,108,8,107,16, +4,11,11,68,97,99,99,101,115,115,111,114,3,1,6,101,110,118,52,54,50, +18,158,2,20,8,118,18,158,2,19,8,118,18,158,1,22,108,101,116,114,101, +99,45,115,121,110,116,97,120,101,115,43,118,97,108,117,101,115,8,102,110,13, +16,4,34,2,23,2,1,11,8,75,8,74,8,73,8,83,8,82,8,81,8, +80,8,79,8,87,8,94,8,93,8,98,8,97,8,96,8,101,8,100,16,8, +11,11,2,54,78,117,110,102,108,97,116,45,112,97,116,116,101,114,110,45,118, +97,114,2,55,2,57,2,57,2,57,18,158,79,109,97,107,101,45,115,121,110, +116,97,120,45,109,97,112,112,105,110,103,8,122,18,158,2,42,8,122,18,158, +2,53,8,102,109,13,16,4,34,2,23,2,1,11,8,75,8,74,8,73,8, +83,8,82,8,81,8,80,8,79,8,87,8,94,8,93,8,98,8,97,8,96, +16,8,11,11,2,45,2,46,2,47,2,48,2,48,2,48,16,10,11,11,2, +49,2,50,2,51,61,109,2,52,2,52,2,52,2,52,18,158,2,41,8,126, +18,158,2,28,8,126,32,129,2,89,162,8,64,36,50,2,10,222,28,248,22, +129,3,194,192,27,248,22,65,194,27,248,22,178,2,196,28,248,22,129,3,193, 193,27,248,22,65,195,27,248,22,178,2,195,28,248,22,129,3,193,193,27,248, -22,65,195,27,248,22,178,2,195,28,248,22,129,3,193,193,27,248,22,65,195, -27,248,22,178,2,195,28,248,22,129,3,193,193,27,248,22,65,195,27,248,22, -178,2,195,28,248,22,129,3,193,193,249,2,132,2,248,22,65,196,248,22,178, -2,195,194,192,80,159,34,50,35,83,158,34,16,2,89,162,8,36,35,44,9, -223,0,27,249,22,172,13,196,32,0,89,162,8,44,34,39,9,222,11,28,248, -80,158,36,39,193,192,11,80,159,34,49,35,89,162,8,36,35,8,31,9,223, -0,91,159,35,10,90,161,35,34,10,20,15,159,35,34,44,87,94,28,28,248, -80,158,36,34,195,27,248,80,158,37,35,196,28,248,80,158,37,34,193,248,80, -158,37,36,248,80,158,38,35,194,11,11,12,250,22,177,8,11,6,8,8,98, -97,100,32,102,111,114,109,197,250,22,152,3,210,27,248,80,158,40,37,248,80, -158,41,35,200,91,159,36,11,90,161,36,34,11,251,80,158,45,38,198,11,9, -11,27,249,22,2,80,159,44,49,35,195,28,28,28,248,22,63,193,10,248,22, -146,8,249,22,5,32,0,89,162,8,36,35,40,9,222,192,195,248,80,158,43, -40,196,11,249,22,65,20,15,159,44,35,44,197,27,249,80,159,45,50,35,196, -195,27,28,248,22,63,195,9,27,27,248,22,59,198,27,248,22,59,198,28,248, -22,63,193,9,27,249,2,133,2,248,22,59,197,248,22,59,196,28,248,22,58, -194,192,249,22,57,248,22,58,197,194,28,248,22,58,196,192,249,22,57,248,22, -58,199,194,27,251,80,158,49,38,202,198,197,202,27,28,248,22,63,197,9,28, -248,22,58,197,249,22,57,250,22,161,3,250,22,152,3,248,22,58,206,248,22, -153,3,248,80,158,56,42,248,22,58,23,15,23,21,2,61,248,22,58,204,251, -80,159,52,51,35,23,19,248,22,59,204,248,22,59,203,248,22,59,205,251,80, -159,50,51,35,23,17,248,22,59,202,248,22,59,201,248,22,59,203,28,248,80, -158,47,43,200,248,22,58,193,249,22,65,250,22,152,3,24,16,198,204,27,248, -22,70,196,28,248,22,129,3,193,20,15,159,49,36,44,28,249,22,188,2,194, -35,248,22,58,196,249,22,57,20,15,159,51,37,44,197,197,34,20,100,159,37, -16,10,2,75,2,72,30,2,21,69,115,116,120,45,110,117,108,108,63,10,2, -71,30,2,24,72,109,97,107,101,45,112,101,120,112,97,110,100,2,30,2,24, -75,115,121,110,116,97,120,45,109,97,112,112,105,110,103,63,8,30,2,24,72, -110,111,45,101,108,108,105,112,115,101,115,63,4,30,2,24,1,20,115,121,110, -116,97,120,45,109,97,112,112,105,110,103,45,100,101,112,116,104,6,30,2,24, -1,21,115,121,110,116,97,120,45,109,97,112,112,105,110,103,45,118,97,108,118, -97,114,7,2,74,16,4,33,135,2,33,140,2,33,142,2,33,143,2,11,96, -83,158,34,16,2,32,0,89,162,8,36,36,47,2,2,222,28,248,22,149,3, -194,193,27,252,22,152,3,198,199,198,11,198,27,249,22,161,3,196,2,67,28, -192,250,22,161,3,196,2,67,195,193,80,159,34,34,35,83,158,34,16,2,89, -162,34,37,44,2,3,223,0,247,248,22,9,89,162,8,32,35,45,9,226,1, -4,3,2,20,14,159,80,158,37,36,89,162,34,35,44,9,225,2,1,4,248, -193,89,162,34,34,46,9,225,3,2,4,28,248,22,132,11,193,248,22,136,11, -193,251,22,177,8,2,8,6,47,47,105,110,99,111,109,112,97,116,105,98,108, -101,32,101,108,108,105,112,115,105,115,32,109,97,116,99,104,32,99,111,117,110, -116,115,32,102,111,114,32,116,101,109,112,108,97,116,101,197,198,27,247,193,89, -162,8,36,34,40,9,223,0,192,80,159,34,35,35,83,158,34,16,2,65,100, -117,109,109,121,80,159,34,37,35,83,158,34,16,2,89,162,8,37,37,45,2, -6,223,0,91,159,35,11,20,12,95,35,248,193,195,89,162,8,64,35,51,2, -10,226,1,4,3,0,28,248,22,56,197,27,248,194,248,22,58,199,27,248,195, -248,22,59,200,28,28,249,22,148,8,195,248,22,58,201,249,22,148,8,194,248, -22,59,201,11,198,249,22,57,195,194,28,248,22,47,197,28,248,22,63,194,196, -28,249,22,148,8,198,248,22,58,196,248,22,58,195,27,248,22,59,195,27,248, -22,59,197,28,248,22,63,194,198,28,249,22,148,8,200,248,22,58,196,248,22, -58,193,250,2,144,2,201,248,22,59,197,248,22,59,196,28,248,22,149,3,197, -27,248,194,248,22,153,3,199,28,249,22,148,8,248,22,153,3,200,194,197,28, -248,22,149,3,193,192,27,252,22,152,3,203,198,203,11,203,27,249,22,161,3, -201,2,67,28,192,250,22,161,3,196,2,67,195,193,28,248,22,166,7,197,248, -22,174,7,249,22,2,195,248,22,173,7,200,28,248,22,113,197,248,22,111,248, -194,248,22,114,199,196,80,159,34,38,35,96,2,68,2,21,2,23,2,4,96, -2,21,2,23,2,24,2,68,0}; - EVAL_ONE_SIZED_STR((char *)expr, 6980); +22,65,195,27,248,22,178,2,195,28,248,22,129,3,193,193,249,2,129,2,248, +22,65,196,248,22,178,2,195,32,130,2,89,162,8,64,36,51,2,10,222,28, +248,22,63,194,9,27,27,248,22,59,195,27,248,22,59,197,28,248,22,63,193, +9,27,27,248,22,59,196,27,248,22,59,196,28,248,22,63,193,9,27,249,2, +130,2,248,22,59,197,248,22,59,196,28,248,22,58,194,192,249,22,57,248,22, +58,197,194,28,248,22,58,194,192,249,22,57,248,22,58,197,194,28,248,22,58, +195,192,249,22,57,248,22,58,196,194,16,4,11,11,2,34,3,1,6,101,110, +118,52,54,55,18,101,2,22,13,16,4,34,2,23,2,1,11,8,75,8,74, +8,73,8,131,2,16,4,11,11,2,59,2,60,16,4,11,11,2,59,2,60, +16,4,11,11,2,59,3,1,6,101,110,118,52,55,49,16,4,11,11,72,118, +97,114,45,98,105,110,100,105,110,103,115,3,1,6,101,110,118,52,55,53,16, +6,11,11,71,117,110,105,113,117,101,45,118,97,114,115,69,97,108,108,45,118, +97,114,115,115,2,61,2,61,16,4,11,11,2,43,3,1,6,101,110,118,52, +55,51,16,4,11,11,2,59,2,60,18,102,2,42,13,16,4,34,2,23,2, +1,11,8,75,8,74,8,73,8,131,2,8,136,2,8,135,2,8,134,2,8, +133,2,104,13,16,4,34,2,23,2,1,11,8,75,8,74,8,73,8,131,2, +8,136,2,8,135,2,8,134,2,8,133,2,16,6,11,11,67,112,114,111,116, +111,45,114,76,110,111,110,45,112,97,116,116,101,114,110,45,118,97,114,115,2, +62,2,62,16,6,11,11,79,98,117,105,108,100,45,102,114,111,109,45,116,101, +109,112,108,97,116,101,61,114,2,63,2,63,16,4,11,11,63,108,101,110,3, +1,6,101,110,118,52,57,51,18,158,9,8,138,2,18,158,65,108,105,115,116, +42,8,138,2,32,141,2,89,162,8,64,37,50,65,115,108,111,111,112,222,28, +248,22,63,194,192,28,249,22,149,8,194,248,22,58,196,248,22,58,195,27,248, +22,59,195,27,248,22,59,197,28,248,22,63,194,194,28,249,22,149,8,196,248, +22,58,196,248,22,58,193,27,248,22,59,195,27,248,22,59,195,28,248,22,63, +194,196,28,249,22,149,8,198,248,22,58,196,248,22,58,193,250,2,141,2,199, +248,22,59,197,248,22,59,196,159,34,20,100,159,34,16,1,20,24,65,98,101, +103,105,110,16,0,83,158,40,20,97,114,69,35,37,115,116,120,99,97,115,101, +2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,5,30,2,1,2,2, +193,30,2,1,2,3,193,30,2,4,1,21,101,120,99,101,112,116,105,111,110, +45,104,97,110,100,108,101,114,45,107,101,121,2,30,2,1,2,5,193,30,2, +1,2,6,193,16,0,11,11,16,4,2,6,2,3,2,2,2,5,38,11,16, +2,2,7,2,8,16,2,11,11,16,2,2,7,2,8,34,36,95,16,5,93, +2,9,87,94,83,158,34,16,2,89,162,8,100,37,50,2,10,223,0,28,248, +22,63,196,12,87,94,27,248,22,153,3,248,22,58,198,27,248,22,84,198,28, +28,248,80,158,37,37,193,10,28,248,80,158,37,38,193,28,249,22,77,248,22, +153,3,248,80,158,40,34,196,21,102,2,11,2,12,2,13,2,14,2,15,2, +16,2,17,2,18,2,19,2,20,28,248,80,158,37,38,248,80,158,38,35,194, +248,80,158,37,37,248,80,158,38,34,248,80,158,39,35,195,11,11,11,27,248, +22,151,3,194,27,250,22,122,200,196,11,28,192,250,22,121,201,198,195,250,22, +121,200,196,198,12,250,80,159,37,41,35,196,197,248,22,86,199,80,159,34,41, +35,89,162,8,36,35,8,27,9,223,0,27,248,80,158,36,34,248,80,158,37, +35,196,27,248,80,158,37,36,248,80,158,38,35,248,80,158,39,35,198,27,248, +22,116,65,101,113,117,97,108,27,247,22,116,87,94,250,80,159,41,41,35,196, +195,197,27,28,248,22,129,3,248,22,119,195,196,91,159,35,11,20,12,95,35, +248,193,198,89,162,8,64,35,47,2,10,224,2,0,28,248,22,56,195,27,248, +194,248,22,58,197,27,248,195,248,22,59,198,28,28,249,22,149,8,195,248,22, +58,199,249,22,149,8,194,248,22,59,199,11,196,249,22,57,195,194,28,248,22, +47,195,27,250,22,122,197,198,11,28,192,192,195,28,248,22,149,3,195,27,248, +194,248,22,153,3,197,28,249,22,149,8,248,22,153,3,198,194,195,251,22,152, +3,199,196,199,199,28,248,22,167,7,195,248,22,175,7,249,22,2,195,248,22, +174,7,198,28,248,22,113,195,248,22,111,248,194,248,22,114,197,194,250,22,152, +3,20,15,159,42,34,39,251,22,67,2,6,199,249,22,65,65,113,117,111,116, +101,28,248,22,63,205,9,28,250,22,122,205,248,22,153,3,248,22,58,23,17, +11,249,2,66,204,248,22,86,23,15,249,22,57,248,22,58,23,15,249,2,66, +206,248,22,86,23,17,28,248,22,63,203,9,28,250,22,122,203,248,22,153,3, +248,22,58,23,15,11,249,2,67,202,248,22,86,205,249,22,57,248,22,84,205, +249,2,67,204,248,22,86,23,15,201,34,20,100,159,35,16,5,2,68,2,69, +2,70,2,71,2,72,16,1,33,76,11,16,5,93,2,8,87,97,83,158,34, +16,2,89,162,8,36,44,8,46,2,10,223,0,28,248,22,63,200,251,22,65, +20,15,159,38,41,43,11,6,10,10,98,97,100,32,115,121,110,116,97,120,197, +27,26,10,80,159,45,8,41,35,204,205,206,23,15,23,16,23,17,248,22,59, +23,19,248,22,59,23,20,248,22,59,23,21,248,22,59,23,22,27,248,22,58, +202,27,248,22,58,204,27,248,22,58,206,27,248,22,58,23,16,91,159,37,10, +90,161,35,34,10,249,22,2,32,0,89,162,8,36,35,45,9,222,28,248,22, +149,3,193,192,27,248,22,58,194,28,248,22,149,3,193,192,27,248,22,58,194, +28,248,22,149,3,193,192,248,2,77,248,22,58,194,198,90,161,35,35,10,249, +22,2,32,0,89,162,8,36,35,43,9,222,250,22,152,3,195,247,22,54,11, +209,90,161,35,36,10,248,22,178,2,248,22,70,209,27,28,248,22,58,23,18, +248,22,65,20,15,159,44,42,43,200,27,252,80,158,49,41,23,19,205,205,248, +80,158,50,35,23,21,248,22,147,8,23,19,27,28,206,249,22,151,8,195,21, +95,2,28,93,2,29,2,29,249,22,151,8,195,21,95,2,28,94,2,29,2, +30,2,29,27,250,22,65,20,15,159,49,43,43,248,22,65,249,22,65,23,20, +28,199,23,19,250,22,67,250,22,152,3,20,15,159,58,44,43,206,23,22,23, +22,28,23,24,9,248,22,65,23,28,251,22,65,20,15,159,53,45,43,28,200, +10,23,21,250,22,65,20,15,159,56,46,43,250,22,2,89,162,8,36,36,52, +9,226,25,27,19,17,249,22,65,199,27,249,80,158,42,42,201,212,27,28,249, +22,188,2,214,195,28,249,22,149,8,195,34,2,31,28,249,22,149,8,195,35, +20,15,159,41,47,43,28,249,22,149,8,195,36,20,15,159,41,48,43,28,249, +22,149,8,195,37,20,15,159,41,49,43,28,249,22,149,8,195,38,20,15,159, +41,50,43,2,31,28,249,22,149,8,195,34,20,15,159,41,51,43,28,249,22, +149,8,195,35,20,15,159,41,52,43,28,249,22,149,8,195,36,20,15,159,41, +53,43,28,249,22,149,8,195,37,20,15,159,41,54,43,11,28,249,22,149,8, +194,2,31,28,248,22,129,3,194,198,250,22,65,20,15,159,44,55,43,201,196, +28,192,249,22,65,194,200,250,22,65,20,15,159,44,56,43,201,196,24,17,24, +18,251,22,65,20,15,159,8,26,57,43,251,22,2,80,159,8,30,8,42,35, +24,22,23,26,24,23,9,28,23,23,251,22,65,20,15,159,8,30,8,26,43, +23,27,23,25,23,21,23,21,202,28,201,250,22,65,20,15,159,49,8,27,43, +248,22,65,249,22,65,2,32,250,22,65,20,15,159,55,8,28,43,247,22,65, +23,20,195,192,80,159,34,8,41,35,83,158,34,16,2,89,162,8,36,37,54, +9,223,0,249,22,65,248,22,65,196,250,22,65,20,15,159,39,58,43,28,248, +22,149,3,200,34,27,248,22,58,201,28,248,22,149,3,193,35,27,248,22,58, +194,28,248,22,149,3,193,36,249,2,78,248,22,58,195,37,249,22,65,20,15, +159,41,59,43,202,80,159,34,8,42,35,83,158,34,16,2,89,162,34,35,44, +9,223,0,27,248,80,158,36,39,248,80,158,37,39,196,28,248,80,158,36,38, +193,248,80,158,36,37,193,248,80,158,36,37,248,80,158,37,39,196,80,159,34, +8,40,35,83,158,34,16,2,89,162,34,35,44,9,223,0,28,248,80,158,35, +38,248,80,158,36,39,248,80,158,37,39,196,248,80,158,35,37,248,80,158,36, +39,195,11,80,159,34,8,39,35,89,162,8,36,35,8,38,9,223,0,91,159, +35,10,90,161,35,34,10,28,248,80,158,36,34,195,248,22,59,248,80,158,37, +35,196,11,87,94,28,28,248,80,158,36,34,195,249,22,190,2,248,22,70,210, +37,11,12,250,22,178,8,11,6,8,8,98,97,100,32,102,111,114,109,197,27, +248,22,58,209,27,248,22,84,210,27,248,22,93,211,27,248,22,96,212,27,248, +22,96,248,22,59,214,27,248,22,95,248,22,59,215,87,96,28,248,80,158,42, +34,195,12,250,22,178,8,248,22,153,3,201,6,56,56,101,120,112,101,99,116, +101,100,32,97,32,112,97,114,101,110,116,104,101,115,105,122,101,100,32,115,101, +113,117,101,110,99,101,32,111,102,32,108,105,116,101,114,97,108,32,105,100,101, +110,116,105,102,105,101,114,115,197,249,22,3,89,162,34,35,46,9,224,9,7, +28,248,80,158,36,36,195,12,250,22,178,8,248,22,153,3,196,6,28,28,108, +105,116,101,114,97,108,32,105,115,32,110,111,116,32,97,110,32,105,100,101,110, +116,105,102,105,101,114,197,248,80,158,44,35,197,249,22,3,89,162,34,35,47, +9,224,9,7,28,28,248,80,158,36,34,195,250,22,191,2,36,248,22,70,248, +80,158,40,35,199,37,11,12,250,22,178,8,248,22,153,3,196,6,10,10,98, +97,100,32,99,108,97,117,115,101,197,194,27,249,22,2,80,158,44,37,195,27, +249,22,2,80,159,45,8,39,35,196,27,249,22,2,80,159,46,8,40,35,197, +27,20,15,159,45,34,43,27,20,15,159,46,35,43,27,249,22,2,89,162,34, +35,48,9,225,15,10,13,251,80,158,40,40,196,199,199,248,80,158,41,35,198, +248,80,158,50,35,200,27,28,248,80,158,49,36,201,249,22,166,3,202,20,15, +159,50,36,43,11,250,22,152,3,20,15,159,51,37,43,250,22,65,20,15,159, +54,38,43,248,22,65,249,22,65,204,28,248,22,153,3,23,21,23,19,250,22, +65,20,15,159,8,26,39,43,249,22,65,20,15,159,8,28,40,43,249,22,152, +3,23,26,2,22,23,22,26,10,80,159,8,30,8,41,35,23,19,23,18,23, +16,23,28,23,25,23,24,23,22,23,21,23,17,23,20,23,18,34,20,100,159, +38,16,9,30,2,21,69,115,116,120,45,108,105,115,116,63,8,2,70,2,71, +2,68,2,72,2,69,30,2,25,74,103,101,116,45,109,97,116,99,104,45,118, +97,114,115,0,30,2,25,74,109,97,107,101,45,109,97,116,99,104,38,101,110, +118,1,30,2,25,72,115,116,120,45,109,101,109,113,45,112,111,115,5,16,29, +33,84,33,85,33,86,33,89,33,90,33,91,33,92,33,95,33,99,33,103,33, +104,33,105,33,106,33,110,33,111,33,112,33,113,33,114,33,115,33,116,33,117, +33,119,33,120,33,121,33,123,33,124,33,125,33,127,33,128,2,11,16,5,93, +2,7,87,96,83,158,34,16,2,89,162,8,64,38,8,26,2,10,223,0,28, +248,22,63,196,9,28,248,22,58,196,249,22,57,250,22,161,3,250,22,152,3, +248,22,58,203,248,22,153,3,248,80,158,44,42,248,22,58,206,201,2,58,248, +22,58,202,27,248,22,59,198,27,248,22,59,200,27,248,22,59,202,28,248,22, +63,194,9,28,248,22,58,194,249,22,57,250,22,161,3,250,22,152,3,248,22, +58,203,248,22,153,3,248,80,158,49,42,248,22,58,204,206,2,58,248,22,58, +198,251,80,159,45,51,35,204,248,22,59,201,248,22,59,200,248,22,59,199,251, +80,159,43,51,35,202,248,22,59,199,248,22,59,198,248,22,59,197,27,248,22, +59,196,27,248,22,59,198,27,248,22,59,200,28,248,22,63,194,9,28,248,22, +58,194,249,22,57,250,22,161,3,250,22,152,3,248,22,58,203,248,22,153,3, +248,80,158,47,42,248,22,58,204,204,2,58,248,22,58,198,251,80,159,43,51, +35,202,248,22,59,201,248,22,59,200,248,22,59,199,251,80,159,41,51,35,200, +248,22,59,199,248,22,59,198,248,22,59,197,80,159,34,51,35,83,158,34,16, +2,89,162,8,64,36,8,29,2,10,223,0,28,248,22,63,195,9,27,249,80, +159,37,50,35,248,22,59,197,248,22,59,198,28,248,22,58,196,249,22,57,27, +248,22,58,198,27,248,80,158,40,41,248,22,58,201,28,248,22,129,3,193,193, +27,248,22,65,195,27,248,22,178,2,195,28,248,22,129,3,193,193,27,248,22, +65,195,27,248,22,178,2,195,28,248,22,129,3,193,193,27,248,22,65,195,27, +248,22,178,2,195,28,248,22,129,3,193,193,27,248,22,65,195,27,248,22,178, +2,195,28,248,22,129,3,193,193,27,248,22,65,195,27,248,22,178,2,195,28, +248,22,129,3,193,193,27,248,22,65,195,27,248,22,178,2,195,28,248,22,129, +3,193,193,249,2,129,2,248,22,65,196,248,22,178,2,195,194,192,80,159,34, +50,35,83,158,34,16,2,89,162,8,36,35,44,9,223,0,27,249,22,173,13, +196,32,0,89,162,8,44,34,39,9,222,11,28,248,80,158,36,39,193,192,11, +80,159,34,49,35,89,162,8,36,35,8,31,9,223,0,91,159,35,10,90,161, +35,34,10,20,15,159,35,34,44,87,94,28,28,248,80,158,36,34,195,27,248, +80,158,37,35,196,28,248,80,158,37,34,193,248,80,158,37,36,248,80,158,38, +35,194,11,11,12,250,22,178,8,11,6,8,8,98,97,100,32,102,111,114,109, +197,250,22,152,3,210,27,248,80,158,40,37,248,80,158,41,35,200,91,159,36, +11,90,161,36,34,11,251,80,158,45,38,198,11,9,11,27,249,22,2,80,159, +44,49,35,195,28,28,28,248,22,63,193,10,248,22,147,8,249,22,5,32,0, +89,162,8,36,35,40,9,222,192,195,248,80,158,43,40,196,11,249,22,65,20, +15,159,44,35,44,197,27,249,80,159,45,50,35,196,195,27,28,248,22,63,195, +9,27,27,248,22,59,198,27,248,22,59,198,28,248,22,63,193,9,27,249,2, +130,2,248,22,59,197,248,22,59,196,28,248,22,58,194,192,249,22,57,248,22, +58,197,194,28,248,22,58,196,192,249,22,57,248,22,58,199,194,27,251,80,158, +49,38,202,198,197,202,27,28,248,22,63,197,9,28,248,22,58,197,249,22,57, +250,22,161,3,250,22,152,3,248,22,58,206,248,22,153,3,248,80,158,56,42, +248,22,58,23,15,23,21,2,58,248,22,58,204,251,80,159,52,51,35,23,19, +248,22,59,204,248,22,59,203,248,22,59,205,251,80,159,50,51,35,23,17,248, +22,59,202,248,22,59,201,248,22,59,203,28,248,80,158,47,43,200,248,22,58, +193,249,22,65,250,22,152,3,24,16,198,204,27,248,22,70,196,28,248,22,129, +3,193,20,15,159,49,36,44,28,249,22,188,2,194,35,248,22,58,196,249,22, +57,20,15,159,51,37,44,197,197,34,20,100,159,37,16,10,2,72,2,69,30, +2,21,69,115,116,120,45,110,117,108,108,63,10,2,68,30,2,25,72,109,97, +107,101,45,112,101,120,112,97,110,100,2,30,2,25,75,115,121,110,116,97,120, +45,109,97,112,112,105,110,103,63,8,30,2,25,72,110,111,45,101,108,108,105, +112,115,101,115,63,4,30,2,25,1,20,115,121,110,116,97,120,45,109,97,112, +112,105,110,103,45,100,101,112,116,104,6,30,2,25,1,21,115,121,110,116,97, +120,45,109,97,112,112,105,110,103,45,118,97,108,118,97,114,7,2,71,16,4, +33,132,2,33,137,2,33,139,2,33,140,2,11,96,83,158,34,16,2,32,0, +89,162,8,36,36,47,2,2,222,28,248,22,149,3,194,193,27,252,22,152,3, +198,199,198,11,198,27,249,22,161,3,196,2,64,28,192,250,22,161,3,196,2, +64,195,193,80,159,34,34,35,83,158,34,16,2,89,162,34,37,44,2,3,223, +0,247,248,22,9,89,162,8,32,35,45,9,226,1,4,3,2,20,14,159,80, +158,37,36,89,162,34,35,44,9,225,2,1,4,248,193,89,162,34,34,46,9, +225,3,2,4,28,248,22,133,11,193,248,22,137,11,193,251,22,178,8,2,7, +6,47,47,105,110,99,111,109,112,97,116,105,98,108,101,32,101,108,108,105,112, +115,105,115,32,109,97,116,99,104,32,99,111,117,110,116,115,32,102,111,114,32, +116,101,109,112,108,97,116,101,197,198,27,247,193,89,162,8,36,34,40,9,223, +0,192,80,159,34,35,35,83,158,34,16,2,65,100,117,109,109,121,80,159,34, +37,35,83,158,34,16,2,89,162,8,37,37,45,2,6,223,0,91,159,35,11, +20,12,95,35,248,193,195,89,162,8,64,35,51,2,10,226,1,4,3,0,28, +248,22,56,197,27,248,194,248,22,58,199,27,248,195,248,22,59,200,28,28,249, +22,149,8,195,248,22,58,201,249,22,149,8,194,248,22,59,201,11,198,249,22, +57,195,194,28,248,22,47,197,28,248,22,63,194,196,28,249,22,149,8,198,248, +22,58,196,248,22,58,195,27,248,22,59,195,27,248,22,59,197,28,248,22,63, +194,198,28,249,22,149,8,200,248,22,58,196,248,22,58,193,250,2,141,2,201, +248,22,59,197,248,22,59,196,28,248,22,149,3,197,27,248,194,248,22,153,3, +199,28,249,22,149,8,248,22,153,3,200,194,197,28,248,22,149,3,193,192,27, +252,22,152,3,203,198,203,11,203,27,249,22,161,3,201,2,64,28,192,250,22, +161,3,196,2,64,195,193,28,248,22,167,7,197,248,22,175,7,249,22,2,195, +248,22,174,7,200,28,248,22,113,197,248,22,111,248,194,248,22,114,199,196,80, +159,34,38,35,96,2,65,2,21,2,24,2,4,96,2,21,2,24,2,25,2, +65,0}; + EVAL_ONE_SIZED_STR((char *)expr, 7057); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,55,0,0,0,1,0,0,3,0,12,0,25,0, -36,0,48,0,55,0,62,0,69,0,76,0,83,0,96,0,102,0,112,0,126, -0,141,0,153,0,158,0,162,0,172,0,174,0,179,0,182,0,189,0,199,0, -206,0,213,0,220,0,227,0,237,0,247,0,254,0,5,1,12,1,19,1,29, -1,39,1,48,1,62,1,74,1,86,1,98,1,112,1,126,1,156,1,162,1, -179,1,217,1,60,2,79,2,162,2,199,2,21,3,31,3,46,3,0,0,151, -6,0,0,29,11,11,68,114,101,108,111,99,97,116,101,72,115,121,110,116,97, -120,45,99,97,115,101,42,70,115,121,110,116,97,120,47,108,111,99,71,115,121, -110,116,97,120,45,99,97,115,101,3,1,4,103,52,56,56,3,1,4,103,52, -56,55,3,1,4,103,52,56,54,3,1,4,103,52,56,53,3,1,4,103,52, -56,52,6,10,10,98,97,100,32,115,121,110,116,97,120,65,35,37,115,116,120, -69,35,37,115,116,120,99,97,115,101,73,115,121,110,116,97,120,45,99,97,115, -101,42,42,74,35,37,100,101,102,105,110,101,45,101,116,45,97,108,71,35,37, -113,113,45,97,110,100,45,111,114,64,35,37,115,99,63,115,116,120,3,1,7, -101,110,118,50,57,55,55,61,95,64,115,116,120,101,62,107,108,66,99,108,97, -117,115,101,3,1,7,101,110,118,50,57,55,56,3,1,4,103,52,57,54,3, -1,4,103,52,57,53,3,1,4,103,52,57,52,3,1,4,103,52,57,51,3, -1,7,101,110,118,50,57,57,57,3,1,7,101,110,118,51,48,48,48,3,1, -4,103,53,48,48,3,1,4,103,53,48,50,3,1,4,103,53,48,49,66,115, -121,110,116,97,120,3,1,7,101,110,118,51,48,49,56,3,1,7,101,110,118, -51,48,49,57,68,35,37,107,101,114,110,101,108,30,2,12,69,115,116,120,45, -112,97,105,114,63,11,30,2,12,67,99,111,110,115,47,35,102,1,30,2,12, -67,115,116,120,45,99,97,114,5,30,2,12,67,115,116,120,45,99,100,114,6, -30,2,12,69,115,116,120,45,108,105,115,116,63,8,30,2,12,69,115,116,120, -45,62,108,105,115,116,4,30,2,13,1,24,97,112,112,108,121,45,112,97,116, -116,101,114,110,45,115,117,98,115,116,105,116,117,116,101,0,95,8,193,11,16, -0,97,10,35,11,94,159,2,17,9,11,159,2,13,9,11,16,0,97,10,34, -11,95,159,2,15,9,11,159,2,13,9,11,159,2,16,9,11,16,8,2,3, -2,1,2,4,2,1,2,2,2,1,2,5,2,1,98,8,47,8,46,8,45, -16,4,11,11,2,18,3,1,7,101,110,118,50,57,54,57,16,12,11,11,3, -1,4,103,52,55,57,3,1,4,103,52,56,48,3,1,4,103,52,56,49,3, -1,4,103,52,56,50,3,1,4,103,52,56,51,2,19,2,19,2,19,2,19, -2,19,16,12,11,11,2,20,2,21,2,22,64,105,100,61,63,2,23,2,24, -2,24,2,24,2,24,2,24,18,158,164,10,2,14,2,6,11,2,7,2,8, -2,9,2,10,8,48,98,8,47,8,46,8,45,16,4,11,11,2,18,3,1, -7,101,110,118,50,57,57,50,16,10,11,11,3,1,4,103,52,56,57,3,1, -4,103,52,57,48,3,1,4,103,52,57,49,3,1,4,103,52,57,50,2,29, -2,29,2,29,2,29,16,10,11,11,2,20,2,21,2,22,2,23,2,30,2, -30,2,30,2,30,18,158,164,10,2,14,2,25,11,2,26,2,27,79,109,111, -100,117,108,101,45,105,100,101,110,116,105,102,105,101,114,61,63,2,28,8,50, -98,8,47,8,46,8,45,16,4,11,11,2,18,3,1,7,101,110,118,51,48, -49,50,16,8,11,11,3,1,4,103,52,57,55,3,1,4,103,52,57,56,3, -1,4,103,52,57,57,2,35,2,35,2,35,16,8,11,11,2,20,63,108,111, -99,67,112,97,116,116,101,114,110,2,36,2,36,2,36,18,158,95,10,2,34, -2,31,8,52,18,158,96,10,2,2,2,32,94,2,34,2,33,8,52,159,34, -20,100,159,34,16,1,20,24,65,98,101,103,105,110,16,0,83,158,40,20,97, -114,68,35,37,115,116,120,108,111,99,2,1,10,10,10,34,80,158,34,34,20, -100,159,34,16,1,30,2,1,2,2,193,16,0,11,11,16,1,2,2,35,11, -16,3,2,3,2,4,2,5,16,3,11,11,11,16,3,2,3,2,4,2,5, -34,37,95,16,5,93,2,3,89,162,34,35,56,9,223,0,27,28,248,80,158, -36,34,195,249,80,158,37,35,248,80,158,38,36,197,27,248,80,158,39,37,198, -28,248,80,158,39,34,193,249,80,158,40,35,248,80,158,41,36,195,27,248,80, -158,42,37,196,28,248,80,158,42,34,193,249,80,158,43,35,248,80,158,44,36, -195,27,248,80,158,45,37,196,28,248,80,158,45,34,193,249,80,158,46,35,248, -80,158,47,36,195,27,248,80,158,48,37,196,28,248,80,158,48,38,193,248,80, -158,48,39,193,11,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195, -27,248,22,93,196,27,248,22,96,197,27,248,22,95,198,27,252,22,67,200,198, -202,199,201,254,80,158,48,40,20,15,159,48,34,41,21,97,2,6,2,7,2, -8,2,9,2,10,248,22,93,200,248,22,95,200,248,22,58,200,248,22,96,200, -248,22,84,200,250,22,177,8,11,2,11,197,34,20,100,159,34,16,7,2,38, -2,39,2,40,2,41,2,42,2,43,2,44,16,1,33,49,11,16,5,93,2, -5,89,162,34,35,54,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37, -35,248,80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193, -249,80,158,40,35,248,80,158,41,36,195,27,248,80,158,42,37,196,28,248,80, -158,42,34,193,249,80,158,43,35,248,80,158,44,36,195,27,248,80,158,45,37, -196,28,248,80,158,45,38,193,248,80,158,45,39,193,11,11,11,11,28,192,27, -248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,94,197,27,251, -22,67,198,200,197,199,253,80,158,46,40,20,15,159,46,34,41,21,96,2,25, -2,26,2,27,2,28,248,22,84,199,248,22,94,199,248,22,58,199,248,22,93, -199,250,22,177,8,11,2,11,197,34,20,100,159,34,16,7,2,38,2,39,2, -40,2,41,2,42,2,43,2,44,16,1,33,51,11,16,5,93,2,4,89,162, -34,35,52,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248,80, -158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80,158, -40,35,248,80,158,41,36,195,27,248,80,158,42,37,196,28,248,80,158,42,34, -193,249,80,158,43,38,248,80,158,44,36,195,248,80,158,44,39,248,80,158,45, -37,196,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86, -196,28,28,248,22,47,248,22,153,3,194,248,80,158,39,40,249,22,172,13,195, -32,0,89,162,8,44,34,39,9,222,11,11,250,80,158,41,41,20,15,159,41, -34,42,21,93,2,31,195,27,249,22,67,195,196,251,80,158,43,41,20,15,159, -43,35,42,21,94,2,32,2,33,248,22,59,197,248,22,58,197,250,22,177,8, -11,2,11,197,34,20,100,159,34,16,8,2,38,2,39,2,40,2,41,30,2, -12,69,97,112,112,101,110,100,47,35,102,0,30,2,12,71,115,116,120,45,110, -117,108,108,47,35,102,9,30,2,17,75,115,121,110,116,97,120,45,109,97,112, -112,105,110,103,63,8,2,44,16,2,33,53,33,54,11,93,83,158,34,16,2, -32,0,89,162,8,36,36,47,2,2,222,28,248,22,158,3,193,252,22,152,3, -198,248,22,153,3,199,197,11,198,193,80,159,34,34,35,96,2,37,2,16,2, -13,2,15,95,2,37,2,13,2,17,0}; - EVAL_ONE_SIZED_STR((char *)expr, 1816); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,56,0,0,0,1,0,0,3,0,12,0,24, +0,35,0,48,0,54,0,60,0,65,0,70,0,75,0,88,0,94,0,104,0, +118,0,121,0,136,0,148,0,153,0,157,0,166,0,168,0,173,0,176,0,183, +0,192,0,198,0,204,0,210,0,216,0,225,0,234,0,240,0,246,0,252,0, +3,1,12,1,21,1,30,1,44,1,56,1,68,1,80,1,94,1,108,1,138, +1,144,1,161,1,199,1,40,2,59,2,146,2,183,2,10,3,20,3,35,3, +0,0,140,6,0,0,29,11,11,68,114,101,108,111,99,97,116,101,71,115,121, +110,116,97,120,45,99,97,115,101,70,115,121,110,116,97,120,47,108,111,99,72, +115,121,110,116,97,120,45,99,97,115,101,42,3,1,3,103,49,49,3,1,3, +103,49,48,3,1,2,103,57,3,1,2,103,56,3,1,2,103,55,6,10,10, +98,97,100,32,115,121,110,116,97,120,65,35,37,115,116,120,69,35,37,115,116, +120,99,97,115,101,73,115,121,110,116,97,120,45,99,97,115,101,42,42,29,11, +11,74,35,37,100,101,102,105,110,101,45,101,116,45,97,108,71,35,37,113,113, +45,97,110,100,45,111,114,64,35,37,115,99,63,115,116,120,3,1,6,101,110, +118,53,50,51,61,95,64,115,116,120,101,62,107,108,66,99,108,97,117,115,101, +3,1,6,101,110,118,53,50,52,3,1,3,103,49,57,3,1,3,103,49,56, +3,1,3,103,49,55,3,1,3,103,49,54,3,1,6,101,110,118,53,52,53, +3,1,6,101,110,118,53,52,54,3,1,3,103,50,51,3,1,3,103,50,53, +3,1,3,103,50,52,66,115,121,110,116,97,120,3,1,6,101,110,118,53,54, +52,3,1,6,101,110,118,53,54,53,68,35,37,107,101,114,110,101,108,30,2, +12,69,115,116,120,45,112,97,105,114,63,11,30,2,12,67,99,111,110,115,47, +35,102,1,30,2,12,67,115,116,120,45,99,97,114,5,30,2,12,67,115,116, +120,45,99,100,114,6,30,2,12,69,115,116,120,45,108,105,115,116,63,8,30, +2,12,69,115,116,120,45,62,108,105,115,116,4,30,2,13,1,24,97,112,112, +108,121,45,112,97,116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101, +0,95,8,193,11,16,0,97,10,35,11,94,159,2,18,9,11,159,2,13,9, +11,16,0,97,10,34,11,95,159,2,16,9,11,159,2,13,9,11,159,2,17, +9,11,16,8,2,3,2,1,2,2,2,1,2,4,2,1,2,5,2,1,99, +13,16,4,34,2,15,2,1,11,8,48,8,47,8,46,16,4,11,11,2,19, +3,1,6,101,110,118,53,49,53,16,12,11,11,3,1,2,103,50,3,1,2, +103,51,3,1,2,103,52,3,1,2,103,53,3,1,2,103,54,2,20,2,20, +2,20,2,20,2,20,16,12,11,11,2,21,2,22,2,23,64,105,100,61,63, +2,24,2,25,2,25,2,25,2,25,2,25,18,158,164,10,2,14,2,6,11, +2,7,2,8,2,9,2,10,8,49,99,13,16,4,34,2,15,2,1,11,8, +48,8,47,8,46,16,4,11,11,2,19,3,1,6,101,110,118,53,51,56,16, +10,11,11,3,1,3,103,49,50,3,1,3,103,49,51,3,1,3,103,49,52, +3,1,3,103,49,53,2,30,2,30,2,30,2,30,16,10,11,11,2,21,2, +22,2,23,2,24,2,31,2,31,2,31,2,31,18,158,164,10,2,14,2,26, +11,2,27,2,28,79,109,111,100,117,108,101,45,105,100,101,110,116,105,102,105, +101,114,61,63,2,29,8,51,99,13,16,4,34,2,15,2,1,11,8,48,8, +47,8,46,16,4,11,11,2,19,3,1,6,101,110,118,53,53,56,16,8,11, +11,3,1,3,103,50,48,3,1,3,103,50,49,3,1,3,103,50,50,2,36, +2,36,2,36,16,8,11,11,2,21,63,108,111,99,67,112,97,116,116,101,114, +110,2,37,2,37,2,37,18,158,95,10,2,35,2,32,8,53,18,158,96,10, +2,2,2,33,94,2,35,2,34,8,53,159,34,20,100,159,34,16,1,20,24, +65,98,101,103,105,110,16,0,83,158,40,20,97,114,68,35,37,115,116,120,108, +111,99,2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,1,30,2,1, +2,2,193,16,0,11,11,16,1,2,2,35,11,16,3,2,3,2,4,2,5, +16,3,11,11,11,16,3,2,3,2,4,2,5,34,37,95,16,5,93,2,5, +89,162,34,35,56,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35, +248,80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249, +80,158,40,35,248,80,158,41,36,195,27,248,80,158,42,37,196,28,248,80,158, +42,34,193,249,80,158,43,35,248,80,158,44,36,195,27,248,80,158,45,37,196, +28,248,80,158,45,34,193,249,80,158,46,35,248,80,158,47,36,195,27,248,80, +158,48,37,196,28,248,80,158,48,38,193,248,80,158,48,39,193,11,11,11,11, +11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22, +96,197,27,248,22,95,198,27,252,22,67,199,200,201,198,202,254,80,158,48,40, +20,15,159,48,34,41,21,97,2,6,2,7,2,8,2,9,2,10,248,22,95, +200,248,22,93,200,248,22,84,200,248,22,58,200,248,22,96,200,250,22,178,8, +11,2,11,197,34,20,100,159,34,16,7,2,39,2,40,2,41,2,42,2,43, +2,44,2,45,16,1,33,50,11,16,5,93,2,3,89,162,34,35,54,9,223, +0,27,28,248,80,158,36,34,195,249,80,158,37,35,248,80,158,38,36,197,27, +248,80,158,39,37,198,28,248,80,158,39,34,193,249,80,158,40,35,248,80,158, +41,36,195,27,248,80,158,42,37,196,28,248,80,158,42,34,193,249,80,158,43, +35,248,80,158,44,36,195,27,248,80,158,45,37,196,28,248,80,158,45,38,193, +248,80,158,45,39,193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84, +195,27,248,22,93,196,27,248,22,94,197,27,251,22,67,198,199,197,200,253,80, +158,46,40,20,15,159,46,34,41,21,96,2,26,2,27,2,28,2,29,248,22, +94,199,248,22,84,199,248,22,58,199,248,22,93,199,250,22,178,8,11,2,11, +197,34,20,100,159,34,16,7,2,39,2,40,2,41,2,42,2,43,2,44,2, +45,16,1,33,52,11,16,5,93,2,4,89,162,34,35,52,9,223,0,27,28, +248,80,158,36,34,195,249,80,158,37,35,248,80,158,38,36,197,27,248,80,158, +39,37,198,28,248,80,158,39,34,193,249,80,158,40,35,248,80,158,41,36,195, +27,248,80,158,42,37,196,28,248,80,158,42,34,193,249,80,158,43,38,248,80, +158,44,36,195,248,80,158,44,39,248,80,158,45,37,196,11,11,11,28,192,27, +248,22,58,194,27,248,22,84,195,27,248,22,86,196,28,28,248,22,47,248,22, +153,3,194,248,80,158,39,40,249,22,173,13,195,32,0,89,162,8,44,34,39, +9,222,11,11,250,80,158,41,41,20,15,159,41,34,42,21,93,2,32,195,27, +249,22,67,195,196,251,80,158,43,41,20,15,159,43,35,42,21,94,2,33,2, +34,248,22,59,197,248,22,58,197,250,22,178,8,11,2,11,197,34,20,100,159, +34,16,8,2,39,2,40,2,41,2,42,30,2,12,69,97,112,112,101,110,100, +47,35,102,0,30,2,12,71,115,116,120,45,110,117,108,108,47,35,102,9,30, +2,18,75,115,121,110,116,97,120,45,109,97,112,112,105,110,103,63,8,2,45, +16,2,33,54,33,55,11,93,83,158,34,16,2,32,0,89,162,8,36,36,47, +2,2,222,28,248,22,158,3,193,252,22,152,3,198,248,22,153,3,199,197,11, +198,193,80,159,34,34,35,96,2,38,2,17,2,13,2,16,95,2,38,2,13, +2,18,0}; + EVAL_ONE_SIZED_STR((char *)expr, 1808); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,53,0,0,0,1,0,0,6,0,9,0,26,0, -34,0,48,0,70,0,76,0,86,0,96,0,108,0,113,0,120,0,127,0,140, -0,147,0,154,0,159,0,168,0,178,0,183,0,198,0,205,0,217,0,227,0, -229,0,232,0,235,0,245,0,250,0,4,1,14,1,24,1,31,1,40,1,56, -1,62,1,94,1,141,1,153,1,209,1,221,1,248,1,41,2,57,2,75,2, -90,2,96,2,122,2,142,2,175,2,187,2,193,2,0,0,219,8,0,0,65, -98,101,103,105,110,29,11,11,76,119,105,116,104,45,115,121,110,116,97,120,45, -102,97,105,108,67,99,111,117,110,116,101,114,73,97,112,112,101,110,100,45,110, -117,109,98,101,114,1,20,103,101,110,101,114,97,116,101,45,116,101,109,112,111, -114,97,114,105,101,115,65,35,37,115,116,120,69,115,116,120,45,108,105,115,116, -63,69,115,116,120,45,62,108,105,115,116,71,119,105,116,104,45,115,121,110,116, -97,120,64,108,111,111,112,3,1,4,103,53,49,52,3,1,4,103,53,49,51, -72,113,117,111,116,101,45,115,121,110,116,97,120,3,1,4,103,53,49,50,3, -1,4,103,53,49,49,64,104,101,114,101,68,35,37,115,116,120,108,111,99,69, -35,37,115,116,120,99,97,115,101,64,35,37,115,99,74,35,37,115,109,97,108, -108,45,115,99,104,101,109,101,66,35,37,99,111,110,100,71,35,37,113,113,45, -97,110,100,45,111,114,3,1,7,101,110,118,51,48,51,57,61,95,62,101,49, -62,101,50,3,1,7,101,110,118,51,48,52,48,64,100,101,115,116,3,1,7, -101,110,118,51,48,53,57,3,1,7,101,110,118,51,48,54,48,3,1,7,101, -110,118,51,48,55,53,6,4,4,126,97,126,115,68,35,37,107,101,114,110,101, -108,16,4,11,11,61,120,3,1,7,101,110,118,51,48,51,50,95,8,193,11, -16,0,97,10,35,11,97,159,2,22,9,11,159,2,23,9,11,159,2,20,9, -11,159,2,18,9,11,159,2,19,9,11,16,0,97,10,34,11,96,159,2,19, -9,11,159,2,21,9,11,159,2,18,9,11,159,2,7,9,11,16,10,2,10, -2,2,2,4,2,2,2,6,2,2,2,5,2,2,2,3,2,2,18,97,2, -17,8,38,8,37,8,36,8,35,98,8,38,8,37,8,36,8,35,16,8,11, -11,3,1,4,103,53,48,56,3,1,4,103,53,48,57,3,1,4,103,53,49, -48,2,24,2,24,2,24,16,8,11,11,2,25,2,26,2,27,2,28,2,28, -2,28,18,158,160,10,2,1,2,15,2,16,8,40,16,12,11,11,2,25,63, -111,117,116,62,105,110,2,26,2,27,2,31,2,31,2,31,2,31,2,31,16, -12,11,11,3,1,4,103,53,48,51,3,1,4,103,53,48,52,3,1,4,103, -53,48,53,3,1,4,103,53,48,54,3,1,4,103,53,48,55,2,30,2,30, -2,30,2,30,2,30,18,99,2,29,8,38,8,37,8,36,8,35,8,43,8, -42,16,4,11,11,63,105,110,115,3,1,7,101,110,118,51,48,55,50,99,8, -38,8,37,8,36,8,35,8,43,8,42,8,45,18,158,2,29,8,46,16,8, -11,11,64,116,109,112,115,65,104,101,114,101,115,64,111,117,116,115,2,32,2, -32,2,32,18,101,2,17,8,38,8,37,8,36,8,35,8,43,8,42,8,45, -8,48,101,8,38,8,37,8,36,8,35,8,43,8,42,8,45,8,48,16,4, -11,11,2,11,3,1,7,101,110,118,51,48,56,48,18,158,160,10,2,1,2, -12,2,13,8,50,18,158,2,29,8,46,159,34,20,100,159,34,16,1,20,24, -2,1,16,0,83,158,40,20,97,114,70,35,37,119,105,116,104,45,115,116,120, -2,2,10,10,10,34,80,158,34,34,20,100,159,35,16,7,30,2,2,2,3, -193,30,2,2,2,4,193,30,2,2,2,5,193,30,2,2,2,6,193,30,2, -7,2,8,8,30,2,7,2,9,4,30,2,7,71,105,100,101,110,116,105,102, -105,101,114,63,2,16,0,11,11,16,3,2,5,2,4,2,3,37,11,16,2, -2,6,2,10,16,2,11,11,16,2,2,6,2,10,35,36,93,16,5,93,2, -10,87,94,83,158,34,16,2,89,162,8,64,38,8,29,2,11,223,0,28,248, -22,63,196,27,249,22,67,196,197,251,80,158,39,42,20,15,159,39,39,48,21, -94,2,12,2,13,248,22,58,197,248,22,59,197,26,8,22,65,73,115,121,110, -116,97,120,45,99,97,115,101,42,42,11,10,248,22,58,204,9,79,109,111,100, -117,108,101,45,105,100,101,110,116,105,102,105,101,114,61,63,249,22,65,248,22, -58,23,15,251,80,159,48,56,35,23,15,23,16,248,22,59,23,18,248,22,59, -23,19,249,22,65,65,95,101,108,115,101,249,22,65,2,3,249,22,65,2,14, -250,22,152,3,11,248,22,151,3,248,22,58,23,23,248,22,58,23,22,80,159, -34,56,35,89,162,34,35,8,30,9,223,0,27,249,22,152,3,20,15,159,37, -34,48,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36, -196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,28,248,80,158,40,38, -248,80,158,41,36,194,27,248,80,158,41,37,194,28,248,80,158,41,34,193,249, -80,158,42,35,248,80,158,43,36,195,27,248,80,158,44,37,196,28,248,80,158, -44,39,193,248,80,158,44,40,193,11,11,11,11,11,28,192,27,248,22,58,194, -27,248,22,84,195,27,248,22,86,196,249,80,158,41,41,200,27,249,22,67,198, -197,251,80,158,46,42,20,15,159,46,35,48,21,94,2,15,2,16,248,22,58, -197,248,22,59,197,27,28,248,80,158,38,34,195,249,80,158,39,35,248,80,158, -40,36,197,27,248,80,158,41,37,198,28,248,80,158,41,34,193,249,80,158,42, -43,27,248,80,158,44,36,196,28,248,80,158,44,39,193,248,22,9,89,162,34, -35,46,9,224,10,1,27,249,22,2,89,162,34,35,51,9,224,4,5,249,80, -158,37,44,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158,40,36,199, -27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80, -158,43,36,195,248,80,158,43,38,248,80,158,44,37,196,11,11,194,248,80,158, -39,40,196,28,248,22,63,193,21,94,9,9,248,80,158,37,45,193,11,27,248, -80,158,44,37,196,28,248,80,158,44,34,193,249,80,158,45,35,248,80,158,46, -36,195,27,248,80,158,47,37,196,28,248,80,158,47,39,193,248,80,158,47,40, -193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93, -196,27,248,22,96,197,27,248,22,95,198,27,248,22,159,3,249,80,158,46,46, -20,15,159,46,36,48,198,87,94,251,80,158,47,47,201,206,249,80,158,49,46, -20,15,159,49,40,48,202,9,27,249,22,2,32,0,89,162,8,36,35,41,9, -222,248,22,54,65,119,115,116,109,112,195,27,249,22,2,32,0,89,162,8,36, -35,43,9,222,250,22,152,3,195,2,17,195,196,27,248,22,159,3,249,80,158, -49,46,20,15,159,49,37,48,202,250,22,152,3,20,15,159,49,38,48,250,22, -65,63,108,101,116,251,22,2,32,0,89,162,8,36,37,49,9,222,249,22,65, -194,250,22,65,1,20,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111, -98,106,101,99,116,249,22,65,2,14,200,199,204,203,205,251,80,159,56,56,35, -23,15,206,204,202,23,16,250,22,177,8,11,6,10,10,98,97,100,32,115,121, -110,116,97,120,197,34,20,100,159,35,16,14,30,2,7,69,115,116,120,45,112, -97,105,114,63,11,30,2,7,67,99,111,110,115,47,35,102,1,30,2,7,67, -115,116,120,45,99,97,114,5,30,2,7,67,115,116,120,45,99,100,114,6,30, -2,7,71,115,116,120,45,110,117,108,108,47,35,102,9,30,2,7,2,8,8, -30,2,7,2,9,4,30,2,18,68,114,101,108,111,99,97,116,101,0,30,2, -19,1,24,97,112,112,108,121,45,112,97,116,116,101,114,110,45,115,117,98,115, -116,105,116,117,116,101,0,30,2,7,69,97,112,112,101,110,100,47,35,102,0, -30,2,7,73,115,116,120,45,99,104,101,99,107,47,101,115,99,7,30,2,7, -70,115,116,120,45,114,111,116,97,116,101,12,30,2,19,1,26,100,97,116,117, -109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116,47,115,104,97,112, -101,2,30,2,20,74,103,101,116,45,109,97,116,99,104,45,118,97,114,115,0, -16,7,33,39,33,41,33,44,33,47,33,49,33,51,33,52,11,97,83,158,34, -16,2,89,162,34,35,49,9,223,0,248,247,22,178,13,28,248,22,47,195,249, -22,152,3,11,87,94,83,160,36,11,80,158,37,35,248,22,177,2,80,158,38, -35,248,22,48,250,22,128,7,2,33,200,80,158,41,35,28,248,22,144,6,195, -249,22,152,3,11,87,94,83,160,36,11,80,158,37,35,248,22,177,2,80,158, -38,35,248,22,48,250,22,128,7,2,33,200,80,158,41,35,28,248,80,158,36, -40,195,249,22,152,3,11,27,248,22,153,3,198,87,94,83,160,36,11,80,158, -38,35,248,22,177,2,80,158,39,35,248,22,48,250,22,128,7,2,33,196,80, -158,42,35,249,22,152,3,11,87,94,83,160,36,11,80,158,37,35,248,22,177, -2,80,158,38,35,248,22,48,250,22,128,7,2,33,64,116,101,109,112,80,158, -41,35,80,159,34,41,35,83,158,34,16,2,32,0,89,162,34,35,43,2,3, -222,250,22,177,8,2,10,6,20,20,98,105,110,100,105,110,103,32,109,97,116, -99,104,32,102,97,105,108,101,100,195,80,159,34,34,35,83,158,34,16,2,34, -80,158,34,35,83,158,34,16,2,89,162,34,35,45,2,5,223,0,87,94,83, -160,36,11,80,158,34,35,248,22,177,2,80,158,35,35,248,22,48,250,22,128, -7,2,33,197,80,158,38,35,80,159,34,36,35,83,158,34,16,2,89,162,34, -35,44,2,6,223,0,87,94,28,248,80,158,35,38,194,12,250,22,178,8,2, -6,6,11,11,115,121,110,116,97,120,32,112,97,105,114,196,27,248,80,158,36, -39,195,249,22,2,80,159,37,41,35,194,80,159,34,37,35,97,2,34,2,7, -2,18,2,21,2,19,98,2,34,2,19,2,18,2,20,2,23,2,22,0}; - EVAL_ONE_SIZED_STR((char *)expr, 2392); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,54,0,0,0,1,0,0,6,0,9,0,26, +0,34,0,48,0,70,0,76,0,86,0,96,0,108,0,113,0,119,0,125,0, +138,0,144,0,150,0,155,0,164,0,174,0,179,0,182,0,197,0,204,0,216, +0,225,0,227,0,230,0,233,0,242,0,247,0,0,1,9,1,18,1,25,1, +34,1,49,1,55,1,87,1,134,1,155,1,217,1,229,1,0,2,44,2,69, +2,86,2,110,2,116,2,142,2,171,2,212,2,224,2,230,2,0,0,0,9, +0,0,65,98,101,103,105,110,29,11,11,76,119,105,116,104,45,115,121,110,116, +97,120,45,102,97,105,108,67,99,111,117,110,116,101,114,73,97,112,112,101,110, +100,45,110,117,109,98,101,114,1,20,103,101,110,101,114,97,116,101,45,116,101, +109,112,111,114,97,114,105,101,115,65,35,37,115,116,120,69,115,116,120,45,108, +105,115,116,63,69,115,116,120,45,62,108,105,115,116,71,119,105,116,104,45,115, +121,110,116,97,120,64,108,111,111,112,3,1,3,103,51,55,3,1,3,103,51, +54,72,113,117,111,116,101,45,115,121,110,116,97,120,3,1,3,103,51,53,3, +1,3,103,51,52,64,104,101,114,101,68,35,37,115,116,120,108,111,99,69,35, +37,115,116,120,99,97,115,101,64,35,37,115,99,29,11,11,74,35,37,115,109, +97,108,108,45,115,99,104,101,109,101,66,35,37,99,111,110,100,71,35,37,113, +113,45,97,110,100,45,111,114,3,1,6,101,110,118,53,56,53,61,95,62,101, +49,62,101,50,3,1,6,101,110,118,53,56,54,64,100,101,115,116,3,1,6, +101,110,118,54,48,53,3,1,6,101,110,118,54,48,54,3,1,6,101,110,118, +54,50,49,6,4,4,126,97,126,115,68,35,37,107,101,114,110,101,108,16,4, +11,11,61,120,3,1,6,101,110,118,53,55,56,95,8,193,11,16,0,97,10, +35,11,97,159,2,23,9,11,159,2,24,9,11,159,2,20,9,11,159,2,18, +9,11,159,2,19,9,11,16,0,97,10,34,11,96,159,2,19,9,11,159,2, +22,9,11,159,2,18,9,11,159,2,7,9,11,16,10,2,4,2,2,2,6, +2,2,2,10,2,2,2,5,2,2,2,3,2,2,18,98,2,17,13,16,4, +34,2,21,2,2,11,8,39,8,38,8,37,8,36,99,13,16,4,34,2,21, +2,2,11,8,39,8,38,8,37,8,36,16,8,11,11,3,1,3,103,51,49, +3,1,3,103,51,50,3,1,3,103,51,51,2,25,2,25,2,25,16,8,11, +11,2,26,2,27,2,28,2,29,2,29,2,29,18,158,160,10,2,1,2,15, +2,16,8,41,16,12,11,11,2,26,63,111,117,116,62,105,110,2,27,2,28, +2,32,2,32,2,32,2,32,2,32,16,12,11,11,3,1,3,103,50,54,3, +1,3,103,50,55,3,1,3,103,50,56,3,1,3,103,50,57,3,1,3,103, +51,48,2,31,2,31,2,31,2,31,2,31,18,100,2,30,13,16,4,34,2, +21,2,2,11,8,39,8,38,8,37,8,36,8,44,8,43,16,4,11,11,63, +105,110,115,3,1,6,101,110,118,54,49,56,100,13,16,4,34,2,21,2,2, +11,8,39,8,38,8,37,8,36,8,44,8,43,8,46,18,158,2,30,8,47, +16,8,11,11,64,116,109,112,115,65,104,101,114,101,115,64,111,117,116,115,2, +33,2,33,2,33,18,102,2,17,13,16,4,34,2,21,2,2,11,8,39,8, +38,8,37,8,36,8,44,8,43,8,46,8,49,102,13,16,4,34,2,21,2, +2,11,8,39,8,38,8,37,8,36,8,44,8,43,8,46,8,49,16,4,11, +11,2,11,3,1,6,101,110,118,54,50,54,18,158,160,10,2,1,2,12,2, +13,8,51,18,158,2,30,8,47,159,34,20,100,159,34,16,1,20,24,2,1, +16,0,83,158,40,20,97,114,70,35,37,119,105,116,104,45,115,116,120,2,2, +10,10,10,34,80,158,34,34,20,100,159,35,16,7,30,2,2,2,3,193,30, +2,2,2,4,193,30,2,2,2,5,193,30,2,2,2,6,193,30,2,7,2, +8,8,30,2,7,2,9,4,30,2,7,71,105,100,101,110,116,105,102,105,101, +114,63,2,16,0,11,11,16,3,2,5,2,4,2,3,37,11,16,2,2,6, +2,10,16,2,11,11,16,2,2,6,2,10,35,36,93,16,5,93,2,10,87, +94,83,158,34,16,2,89,162,8,64,38,8,29,2,11,223,0,28,248,22,63, +196,27,249,22,67,197,196,251,80,158,39,42,20,15,159,39,39,48,21,94,2, +12,2,13,248,22,59,197,248,22,58,197,26,8,22,65,73,115,121,110,116,97, +120,45,99,97,115,101,42,42,11,10,248,22,58,204,9,79,109,111,100,117,108, +101,45,105,100,101,110,116,105,102,105,101,114,61,63,249,22,65,248,22,58,23, +15,251,80,159,48,56,35,23,15,23,16,248,22,59,23,18,248,22,59,23,19, +249,22,65,65,95,101,108,115,101,249,22,65,2,3,249,22,65,2,14,250,22, +152,3,11,248,22,151,3,248,22,58,23,23,248,22,58,23,22,80,159,34,56, +35,89,162,34,35,8,30,9,223,0,27,249,22,152,3,20,15,159,37,34,48, +196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36,196,27, +248,80,158,40,37,197,28,248,80,158,40,34,193,28,248,80,158,40,38,248,80, +158,41,36,194,27,248,80,158,41,37,194,28,248,80,158,41,34,193,249,80,158, +42,35,248,80,158,43,36,195,27,248,80,158,44,37,196,28,248,80,158,44,39, +193,248,80,158,44,40,193,11,11,11,11,11,28,192,27,248,22,58,194,27,248, +22,84,195,27,248,22,86,196,249,80,158,41,41,200,27,249,22,67,197,198,251, +80,158,46,42,20,15,159,46,35,48,21,94,2,15,2,16,248,22,59,197,248, +22,58,197,27,28,248,80,158,38,34,195,249,80,158,39,35,248,80,158,40,36, +197,27,248,80,158,41,37,198,28,248,80,158,41,34,193,249,80,158,42,43,27, +248,80,158,44,36,196,28,248,80,158,44,39,193,248,22,9,89,162,34,35,46, +9,224,10,1,27,249,22,2,89,162,34,35,51,9,224,4,5,249,80,158,37, +44,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248, +80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43, +36,195,248,80,158,43,38,248,80,158,44,37,196,11,11,194,248,80,158,39,40, +196,28,248,22,63,193,21,94,9,9,248,80,158,37,45,193,11,27,248,80,158, +44,37,196,28,248,80,158,44,34,193,249,80,158,45,35,248,80,158,46,36,195, +27,248,80,158,47,37,196,28,248,80,158,47,39,193,248,80,158,47,40,193,11, +11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27, +248,22,96,197,27,248,22,95,198,27,248,22,159,3,249,80,158,46,46,20,15, +159,46,36,48,198,87,94,251,80,158,47,47,201,206,249,80,158,49,46,20,15, +159,49,40,48,202,9,27,249,22,2,32,0,89,162,8,36,35,41,9,222,248, +22,54,65,119,115,116,109,112,195,27,249,22,2,32,0,89,162,8,36,35,43, +9,222,250,22,152,3,195,2,17,195,196,27,248,22,159,3,249,80,158,49,46, +20,15,159,49,37,48,202,250,22,152,3,20,15,159,49,38,48,250,22,65,63, +108,101,116,251,22,2,32,0,89,162,8,36,37,49,9,222,249,22,65,194,250, +22,65,1,20,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106, +101,99,116,249,22,65,2,14,200,199,204,203,205,251,80,159,56,56,35,23,15, +206,204,202,23,16,250,22,178,8,11,6,10,10,98,97,100,32,115,121,110,116, +97,120,197,34,20,100,159,35,16,14,30,2,7,69,115,116,120,45,112,97,105, +114,63,11,30,2,7,67,99,111,110,115,47,35,102,1,30,2,7,67,115,116, +120,45,99,97,114,5,30,2,7,67,115,116,120,45,99,100,114,6,30,2,7, +71,115,116,120,45,110,117,108,108,47,35,102,9,30,2,7,2,8,8,30,2, +7,2,9,4,30,2,18,68,114,101,108,111,99,97,116,101,0,30,2,19,1, +24,97,112,112,108,121,45,112,97,116,116,101,114,110,45,115,117,98,115,116,105, +116,117,116,101,0,30,2,7,69,97,112,112,101,110,100,47,35,102,0,30,2, +7,73,115,116,120,45,99,104,101,99,107,47,101,115,99,7,30,2,7,70,115, +116,120,45,114,111,116,97,116,101,12,30,2,19,1,26,100,97,116,117,109,45, +62,115,121,110,116,97,120,45,111,98,106,101,99,116,47,115,104,97,112,101,2, +30,2,20,74,103,101,116,45,109,97,116,99,104,45,118,97,114,115,0,16,7, +33,40,33,42,33,45,33,48,33,50,33,52,33,53,11,97,83,158,34,16,2, +89,162,34,35,49,9,223,0,248,247,22,179,13,28,248,22,47,195,249,22,152, +3,11,87,94,83,160,36,11,80,158,37,35,248,22,177,2,80,158,38,35,248, +22,48,250,22,129,7,2,34,200,80,158,41,35,28,248,22,145,6,195,249,22, +152,3,11,87,94,83,160,36,11,80,158,37,35,248,22,177,2,80,158,38,35, +248,22,48,250,22,129,7,2,34,200,80,158,41,35,28,248,80,158,36,40,195, +249,22,152,3,11,27,248,22,153,3,198,87,94,83,160,36,11,80,158,38,35, +248,22,177,2,80,158,39,35,248,22,48,250,22,129,7,2,34,196,80,158,42, +35,249,22,152,3,11,87,94,83,160,36,11,80,158,37,35,248,22,177,2,80, +158,38,35,248,22,48,250,22,129,7,2,34,64,116,101,109,112,80,158,41,35, +80,159,34,41,35,83,158,34,16,2,32,0,89,162,34,35,43,2,3,222,250, +22,178,8,2,10,6,20,20,98,105,110,100,105,110,103,32,109,97,116,99,104, +32,102,97,105,108,101,100,195,80,159,34,34,35,83,158,34,16,2,34,80,158, +34,35,83,158,34,16,2,89,162,34,35,45,2,5,223,0,87,94,83,160,36, +11,80,158,34,35,248,22,177,2,80,158,35,35,248,22,48,250,22,129,7,2, +34,197,80,158,38,35,80,159,34,36,35,83,158,34,16,2,89,162,34,35,44, +2,6,223,0,87,94,28,248,80,158,35,38,194,12,250,22,179,8,2,6,6, +11,11,115,121,110,116,97,120,32,112,97,105,114,196,27,248,80,158,36,39,195, +249,22,2,80,159,37,41,35,194,80,159,34,37,35,97,2,35,2,7,2,18, +2,22,2,19,98,2,35,2,19,2,18,2,20,2,24,2,23,0}; + EVAL_ONE_SIZED_STR((char *)expr, 2432); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,181,0,0,0,1,0,0,3,0,31,0,37,0, -49,0,71,0,85,0,92,0,97,0,104,0,111,0,122,0,137,0,142,0,146, -0,149,0,163,0,179,0,186,0,194,0,207,0,220,0,225,0,237,0,249,0, -4,1,15,1,31,1,44,1,48,1,59,1,74,1,86,1,96,1,105,1,112, -1,119,1,126,1,133,1,140,1,164,1,167,1,171,1,176,1,182,1,187,1, -200,1,205,1,220,1,224,1,234,1,236,1,246,1,248,1,255,1,6,2,13, -2,20,2,27,2,37,2,47,2,54,2,61,2,68,2,75,2,82,2,89,2, -96,2,103,2,110,2,114,2,121,2,146,2,159,2,169,2,179,2,184,2,190, -2,197,2,204,2,211,2,218,2,225,2,235,2,245,2,252,2,3,3,10,3, -17,3,24,3,31,3,38,3,40,3,54,3,56,3,76,3,82,3,90,3,99, -3,109,3,119,3,126,3,133,3,140,3,147,3,154,3,177,3,187,3,197,3, -206,3,220,3,232,3,244,3,0,4,14,4,28,4,46,4,60,4,76,4,91, -4,104,4,130,4,160,4,176,4,182,4,214,4,18,5,30,5,112,5,128,5, -139,5,172,5,188,5,201,5,28,6,44,6,56,6,89,6,121,6,137,6,158, -6,174,6,187,6,211,6,4,7,20,7,27,7,34,7,87,7,109,7,120,7, -134,7,148,7,181,7,248,7,15,8,31,8,44,8,127,8,142,8,154,8,187, -8,193,8,223,8,16,9,32,9,48,9,55,9,62,9,69,9,122,9,148,9, -167,9,200,9,11,10,31,10,114,10,121,10,150,10,166,10,199,10,0,0,115, -25,0,0,29,11,11,1,26,99,104,101,99,107,45,100,117,112,108,105,99,97, -116,101,45,105,100,101,110,116,105,102,105,101,114,65,35,37,115,116,120,71,105, -100,101,110,116,105,102,105,101,114,63,1,20,103,101,110,101,114,97,116,101,45, -116,101,109,112,111,114,97,114,105,101,115,73,108,101,116,114,101,99,45,115,121, -110,116,97,120,66,117,110,108,101,115,115,64,108,101,116,42,66,108,101,116,114, -101,99,66,108,101,116,47,101,99,70,108,101,116,45,115,121,110,116,97,120,74, -45,100,101,102,105,110,101,45,115,121,110,116,97,120,64,119,104,101,110,63,97, -110,100,62,111,114,73,100,101,102,105,110,101,45,115,116,114,117,99,116,75,115, -121,110,116,97,120,45,105,100,45,114,117,108,101,115,66,115,121,110,116,97,120, -67,45,100,101,102,105,110,101,72,115,121,110,116,97,120,45,99,97,115,101,42, -72,108,101,116,45,115,121,110,116,97,120,101,115,64,99,111,110,100,71,115,121, -110,116,97,120,45,99,97,115,101,71,119,105,116,104,45,115,121,110,116,97,120, -70,113,117,97,115,105,113,117,111,116,101,70,115,121,110,116,97,120,47,108,111, -99,75,108,101,116,114,101,99,45,115,121,110,116,97,120,101,115,72,115,121,110, -116,97,120,45,114,117,108,101,115,63,108,101,116,70,35,37,119,105,116,104,45, -115,116,120,74,35,37,100,101,102,105,110,101,45,101,116,45,97,108,71,35,37, -113,113,45,97,110,100,45,111,114,69,35,37,115,116,120,99,97,115,101,68,35, -37,115,116,120,108,111,99,3,1,4,103,53,50,49,3,1,4,103,53,50,48, -3,1,4,103,53,50,52,3,1,4,103,53,50,51,3,1,4,103,53,50,50, -1,22,108,101,116,114,101,99,45,115,121,110,116,97,120,101,115,43,118,97,108, -117,101,115,62,105,100,63,46,46,46,64,101,120,112,114,65,98,111,100,121,49, -64,98,111,100,121,6,10,10,98,97,100,32,115,121,110,116,97,120,64,104,101, -114,101,74,35,37,115,109,97,108,108,45,115,99,104,101,109,101,63,115,116,120, -3,1,7,101,110,118,51,49,48,55,61,95,3,1,7,101,110,118,51,49,48, -56,61,114,3,1,4,103,53,51,48,3,1,4,103,53,51,49,3,1,4,103, -53,51,52,3,1,4,103,53,51,51,3,1,4,103,53,51,50,3,1,7,101, -110,118,51,49,51,55,3,1,7,101,110,118,51,49,51,56,3,1,4,103,53, -52,55,3,1,4,103,53,52,54,3,1,4,103,53,52,53,3,1,4,103,53, -52,52,3,1,4,103,53,52,51,3,1,4,103,53,53,49,3,1,4,103,53, -53,48,3,1,4,103,53,52,57,3,1,4,103,53,52,56,63,116,109,112,66, -118,97,108,117,101,115,1,23,109,97,107,101,45,114,101,110,97,109,101,45,116, -114,97,110,115,102,111,114,109,101,114,72,113,117,111,116,101,45,115,121,110,116, -97,120,3,1,7,101,110,118,51,49,54,56,3,1,7,101,110,118,51,49,54, -57,64,100,101,115,116,65,95,101,108,115,101,3,1,4,103,53,53,55,3,1, -4,103,53,53,56,3,1,4,103,53,54,49,3,1,4,103,53,54,48,3,1, -4,103,53,53,57,3,1,7,101,110,118,51,50,50,48,3,1,7,101,110,118, -51,50,50,49,3,1,4,103,53,55,49,3,1,4,103,53,55,48,3,1,4, -103,53,55,50,3,1,4,103,53,55,53,3,1,4,103,53,55,52,3,1,4, -103,53,55,51,66,108,97,109,98,100,97,61,120,73,115,121,110,116,97,120,45, -99,97,115,101,42,42,61,107,79,109,111,100,117,108,101,45,105,100,101,110,116, -105,102,105,101,114,61,63,65,100,117,109,109,121,67,112,97,116,116,101,114,110, -68,116,101,109,112,108,97,116,101,3,1,7,101,110,118,51,50,53,52,3,1, -7,101,110,118,51,50,53,53,3,1,4,103,53,56,49,3,1,4,103,53,56, -48,3,1,4,103,53,56,52,3,1,4,103,53,56,51,3,1,4,103,53,56, -50,1,21,109,97,107,101,45,115,101,116,33,45,116,114,97,110,115,102,111,114, -109,101,114,3,1,7,101,110,118,51,51,48,50,3,1,7,101,110,118,51,51, -48,51,68,35,37,107,101,114,110,101,108,30,2,3,69,115,116,120,45,112,97, -105,114,63,11,30,2,3,67,99,111,110,115,47,35,102,1,30,2,3,67,115, -116,120,45,99,97,114,5,30,2,3,67,115,116,120,45,99,100,114,6,30,2, -3,69,97,112,112,101,110,100,47,35,102,0,30,2,3,69,115,116,120,45,108, -105,115,116,63,8,30,2,3,73,115,116,120,45,99,104,101,99,107,47,101,115, -99,7,30,2,3,69,115,116,120,45,62,108,105,115,116,4,30,2,3,71,115, -116,120,45,110,117,108,108,47,35,102,9,30,2,3,70,115,116,120,45,114,111, -116,97,116,101,12,30,2,34,68,114,101,108,111,99,97,116,101,0,30,2,33, -1,20,99,97,116,99,104,45,101,108,108,105,112,115,105,115,45,101,114,114,111, -114,1,30,2,33,1,24,97,112,112,108,121,45,112,97,116,116,101,114,110,45, -115,117,98,115,116,105,116,117,116,101,0,16,4,11,11,2,49,3,1,7,101, -110,118,51,48,57,52,95,8,193,11,16,0,97,10,35,11,97,159,2,34,9, -11,159,2,30,9,11,159,2,33,9,11,159,2,3,9,11,159,2,48,9,11, -16,0,97,10,34,11,97,159,2,34,9,11,159,2,30,9,11,159,2,33,9, -11,159,2,3,9,11,159,2,48,9,11,16,14,2,6,2,1,2,28,2,1, -2,2,2,1,2,21,2,1,2,27,2,1,2,11,2,1,2,17,2,1,18, -97,2,47,8,126,8,125,8,124,8,123,98,8,126,8,125,8,124,8,123,16, -12,11,11,3,1,4,103,53,49,53,3,1,4,103,53,49,54,3,1,4,103, -53,49,55,3,1,4,103,53,49,56,3,1,4,103,53,49,57,2,50,2,50, -2,50,2,50,2,50,16,12,11,11,2,51,2,41,2,43,2,44,2,45,2, -52,2,52,2,52,2,52,2,52,18,158,162,10,2,40,2,37,9,2,38,2, -39,8,128,2,18,158,95,10,2,35,2,36,8,128,2,18,16,2,95,2,42, -93,8,158,42,16,4,11,11,2,53,3,1,7,101,110,118,51,49,50,48,95, -9,8,158,42,2,33,16,4,11,11,2,49,3,1,7,101,110,118,51,49,50, -53,18,97,2,47,8,126,8,125,8,124,8,132,2,98,8,126,8,125,8,124, -8,132,2,16,12,11,11,3,1,4,103,53,50,53,3,1,4,103,53,50,54, -3,1,4,103,53,50,55,3,1,4,103,53,50,56,3,1,4,103,53,50,57, -2,59,2,59,2,59,2,59,2,59,16,12,11,11,2,51,2,41,2,43,2, -44,2,45,2,60,2,60,2,60,2,60,2,60,18,158,162,10,2,40,2,56, -9,2,57,2,58,8,134,2,18,158,95,10,93,2,54,2,55,8,134,2,18, -16,2,95,2,42,93,8,178,42,16,4,11,11,2,53,3,1,7,101,110,118, -51,49,53,48,95,9,8,178,42,2,33,30,2,33,1,26,100,97,116,117,109, -45,62,115,121,110,116,97,120,45,111,98,106,101,99,116,47,115,104,97,112,101, -2,30,2,3,71,115,116,120,45,114,111,116,97,116,101,42,13,30,2,30,76, -119,105,116,104,45,115,121,110,116,97,120,45,102,97,105,108,3,16,4,11,11, -2,49,3,1,7,101,110,118,51,49,53,53,18,97,2,47,8,126,8,125,8, -124,8,141,2,16,12,11,11,2,51,2,41,2,43,2,44,2,45,2,75,2, -75,2,75,2,75,2,75,16,12,11,11,3,1,4,103,53,51,53,3,1,4, -103,53,51,54,3,1,4,103,53,51,55,3,1,4,103,53,51,56,3,1,4, -103,53,51,57,2,74,2,74,2,74,2,74,2,74,98,8,126,8,125,8,124, -8,141,2,8,144,2,8,143,2,18,158,2,47,8,145,2,18,158,2,76,8, -145,2,100,8,126,8,125,8,124,8,141,2,8,144,2,8,143,2,16,4,11, -11,3,1,4,103,53,52,50,3,1,7,101,110,118,51,49,56,57,16,4,11, -11,2,70,3,1,7,101,110,118,51,49,57,48,18,158,97,10,2,40,2,66, -9,161,2,40,2,67,9,2,68,2,69,8,148,2,18,158,95,10,2,64,2, -65,8,148,2,18,158,95,10,2,61,158,2,71,2,62,8,148,2,18,158,95, -10,2,72,94,2,73,2,63,8,148,2,18,16,2,95,2,42,93,8,145,43, -16,4,11,11,2,53,3,1,7,101,110,118,51,49,57,52,95,9,8,145,43, -2,33,96,93,8,133,43,16,4,11,11,3,1,8,119,115,116,109,112,53,52, -48,3,1,7,101,110,118,51,49,56,49,16,4,11,11,3,1,4,103,53,52, -49,3,1,7,101,110,118,51,50,48,51,16,4,11,11,2,77,3,1,7,101, -110,118,51,50,48,52,18,16,2,158,95,10,94,2,70,2,42,2,42,8,154, -2,95,9,8,133,43,2,30,16,4,11,11,2,49,3,1,7,101,110,118,51, -50,48,56,18,97,2,47,8,126,8,125,8,124,8,156,2,98,8,126,8,125, -8,124,8,156,2,16,12,11,11,3,1,4,103,53,53,50,3,1,4,103,53, -53,51,3,1,4,103,53,53,52,3,1,4,103,53,53,53,3,1,4,103,53, -53,54,2,83,2,83,2,83,2,83,2,83,16,12,11,11,2,51,2,41,2, -43,2,44,2,45,2,84,2,84,2,84,2,84,2,84,18,158,161,10,2,21, -2,80,2,81,2,82,8,158,2,18,158,95,10,93,2,78,2,79,8,158,2, -18,16,2,95,2,42,93,8,170,43,16,4,11,11,2,53,3,1,7,101,110, -118,51,50,51,51,95,9,8,170,43,2,33,30,2,3,2,4,2,16,12,11, -11,2,51,2,94,67,107,101,121,119,111,114,100,2,97,2,98,2,100,2,100, -2,100,2,100,2,100,16,12,11,11,3,1,4,103,53,54,50,3,1,4,103, -53,54,51,3,1,4,103,53,54,52,3,1,4,103,53,54,53,3,1,4,103, -53,54,54,2,99,2,99,2,99,2,99,2,99,16,4,11,11,2,49,3,1, -7,101,110,118,51,50,51,56,98,8,126,8,125,8,124,8,165,2,8,164,2, -8,163,2,18,158,2,76,8,166,2,18,158,2,47,8,166,2,18,158,2,76, -8,166,2,100,8,126,8,125,8,124,8,165,2,8,164,2,8,163,2,16,4, -11,11,3,1,4,103,53,54,57,3,1,7,101,110,118,51,50,55,52,16,4, -11,11,2,96,3,1,7,101,110,118,51,50,55,53,18,158,96,10,2,91,93, -2,92,163,2,93,2,88,10,2,92,2,89,2,95,2,90,8,170,2,18,158, -95,10,158,2,85,2,86,95,2,26,2,92,2,87,8,170,2,18,16,2,95, -2,42,93,8,137,44,16,4,11,11,2,53,3,1,7,101,110,118,51,50,55, -57,95,9,8,137,44,2,33,96,93,8,128,44,16,4,11,11,3,1,8,119, -115,116,109,112,53,54,55,3,1,7,101,110,118,51,50,54,55,16,4,11,11, -3,1,4,103,53,54,56,3,1,7,101,110,118,51,50,56,52,16,4,11,11, -2,77,3,1,7,101,110,118,51,50,56,53,18,16,2,158,95,10,2,96,2, -42,8,174,2,95,9,8,128,44,2,30,98,8,126,8,125,8,124,16,4,11, -11,2,92,3,1,7,101,110,118,51,50,56,57,16,10,11,11,3,1,4,103, -53,55,54,3,1,4,103,53,55,55,3,1,4,103,53,55,56,3,1,4,103, -53,55,57,2,107,2,107,2,107,2,107,16,10,11,11,2,51,2,94,2,97, -2,98,2,108,2,108,2,108,2,108,18,158,2,76,8,176,2,18,158,95,10, -2,106,95,2,91,93,2,92,163,2,93,2,103,10,2,92,2,104,2,95,2, -105,8,176,2,18,158,95,10,2,101,95,2,26,2,92,2,102,8,176,2,18, -16,2,95,2,42,93,8,161,44,16,4,11,11,2,53,3,1,7,101,110,118, -51,51,49,51,95,9,8,161,44,2,33,159,34,20,100,159,34,16,1,20,24, -65,98,101,103,105,110,16,0,83,158,40,20,97,114,76,35,37,115,116,120,99, -97,115,101,45,115,99,104,101,109,101,2,1,10,10,10,34,80,158,34,34,20, -100,159,34,16,2,30,2,1,2,2,193,30,2,3,2,4,2,16,0,11,11, -16,0,34,11,16,26,2,2,2,5,2,6,2,7,2,8,2,9,2,10,2, -11,2,12,2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21, -2,22,2,23,2,24,2,25,2,26,2,27,2,28,2,29,16,26,11,2,30, -11,2,31,2,32,2,32,2,31,11,2,31,2,31,2,32,2,32,2,31,11, -2,33,2,31,2,34,11,66,35,37,99,111,110,100,2,34,2,30,2,32,2, -34,11,11,2,32,16,26,2,2,2,5,2,6,2,7,2,8,2,9,2,10, -2,11,2,12,2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2, -21,2,22,2,23,2,24,2,25,2,26,2,27,2,28,2,29,36,8,26,98, -16,5,93,2,27,87,94,83,158,34,16,2,89,162,35,35,46,9,223,0,251, -80,158,38,46,20,15,159,38,36,47,21,94,2,35,2,36,248,22,58,198,248, -22,84,198,80,159,34,52,35,89,162,34,35,55,9,223,0,27,249,22,152,3, -20,15,159,37,34,47,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,182,0,0,0,1,0,0,3,0,31,0,37, +0,49,0,71,0,86,0,93,0,109,0,114,0,127,0,140,0,151,0,162,0, +175,0,191,0,198,0,212,0,215,0,220,0,227,0,231,0,243,0,250,0,254, +0,6,1,11,1,25,1,37,1,48,1,59,1,74,1,84,1,93,1,105,1, +111,1,117,1,123,1,129,1,135,1,159,1,162,1,166,1,171,1,177,1,182, +1,195,1,200,1,203,1,218,1,222,1,231,1,233,1,242,1,244,1,250,1, +0,2,6,2,12,2,18,2,27,2,36,2,42,2,48,2,54,2,60,2,66, +2,72,2,78,2,84,2,90,2,94,2,101,2,126,2,139,2,148,2,157,2, +162,2,168,2,174,2,180,2,186,2,192,2,198,2,207,2,216,2,222,2,228, +2,234,2,240,2,246,2,252,2,3,3,5,3,19,3,21,3,41,3,47,3, +55,3,64,3,73,3,82,3,89,3,96,3,103,3,110,3,117,3,140,3,149, +3,158,3,167,3,181,3,193,3,205,3,217,3,231,3,245,3,7,4,21,4, +37,4,52,4,65,4,91,4,121,4,136,4,142,4,174,4,234,4,255,4,85, +5,101,5,112,5,144,5,159,5,181,5,12,6,28,6,40,6,72,6,104,6, +120,6,141,6,156,6,178,6,202,6,246,6,15,7,22,7,29,7,88,7,110, +7,121,7,135,7,149,7,181,7,243,7,10,8,25,8,47,8,134,8,149,8, +161,8,193,8,199,8,229,8,17,9,32,9,57,9,64,9,71,9,78,9,137, +9,163,9,182,9,214,9,20,10,40,10,130,10,137,10,166,10,182,10,214,10, +0,0,131,25,0,0,29,11,11,1,26,99,104,101,99,107,45,100,117,112,108, +105,99,97,116,101,45,105,100,101,110,116,105,102,105,101,114,65,35,37,115,116, +120,71,105,100,101,110,116,105,102,105,101,114,63,1,20,103,101,110,101,114,97, +116,101,45,116,101,109,112,111,114,97,114,105,101,115,74,45,100,101,102,105,110, +101,45,115,121,110,116,97,120,66,115,121,110,116,97,120,75,115,121,110,116,97, +120,45,105,100,45,114,117,108,101,115,64,99,111,110,100,72,108,101,116,45,115, +121,110,116,97,120,101,115,72,115,121,110,116,97,120,45,99,97,115,101,42,70, +113,117,97,115,105,113,117,111,116,101,70,115,121,110,116,97,120,47,108,111,99, +72,115,121,110,116,97,120,45,114,117,108,101,115,75,108,101,116,114,101,99,45, +115,121,110,116,97,120,101,115,66,108,101,116,47,101,99,73,100,101,102,105,110, +101,45,115,116,114,117,99,116,62,111,114,64,119,104,101,110,66,108,101,116,114, +101,99,63,108,101,116,71,119,105,116,104,45,115,121,110,116,97,120,66,117,110, +108,101,115,115,63,97,110,100,67,45,100,101,102,105,110,101,64,108,101,116,42, +73,108,101,116,114,101,99,45,115,121,110,116,97,120,71,115,121,110,116,97,120, +45,99,97,115,101,70,108,101,116,45,115,121,110,116,97,120,70,35,37,119,105, +116,104,45,115,116,120,74,35,37,100,101,102,105,110,101,45,101,116,45,97,108, +69,35,37,115,116,120,99,97,115,101,68,35,37,115,116,120,108,111,99,71,35, +37,113,113,45,97,110,100,45,111,114,3,1,3,103,52,52,3,1,3,103,52, +51,3,1,3,103,52,55,3,1,3,103,52,54,3,1,3,103,52,53,1,22, +108,101,116,114,101,99,45,115,121,110,116,97,120,101,115,43,118,97,108,117,101, +115,62,105,100,63,46,46,46,64,101,120,112,114,65,98,111,100,121,49,64,98, +111,100,121,6,10,10,98,97,100,32,115,121,110,116,97,120,64,104,101,114,101, +29,11,11,74,35,37,115,109,97,108,108,45,115,99,104,101,109,101,63,115,116, +120,3,1,6,101,110,118,54,53,51,61,95,3,1,6,101,110,118,54,53,52, +61,114,3,1,3,103,53,51,3,1,3,103,53,52,3,1,3,103,53,55,3, +1,3,103,53,54,3,1,3,103,53,53,3,1,6,101,110,118,54,56,51,3, +1,6,101,110,118,54,56,52,3,1,3,103,55,48,3,1,3,103,54,57,3, +1,3,103,54,56,3,1,3,103,54,55,3,1,3,103,54,54,3,1,3,103, +55,52,3,1,3,103,55,51,3,1,3,103,55,50,3,1,3,103,55,49,63, +116,109,112,66,118,97,108,117,101,115,1,23,109,97,107,101,45,114,101,110,97, +109,101,45,116,114,97,110,115,102,111,114,109,101,114,72,113,117,111,116,101,45, +115,121,110,116,97,120,3,1,6,101,110,118,55,49,52,3,1,6,101,110,118, +55,49,53,64,100,101,115,116,65,95,101,108,115,101,3,1,3,103,56,48,3, +1,3,103,56,49,3,1,3,103,56,52,3,1,3,103,56,51,3,1,3,103, +56,50,3,1,6,101,110,118,55,54,54,3,1,6,101,110,118,55,54,55,3, +1,3,103,57,52,3,1,3,103,57,51,3,1,3,103,57,53,3,1,3,103, +57,56,3,1,3,103,57,55,3,1,3,103,57,54,66,108,97,109,98,100,97, +61,120,73,115,121,110,116,97,120,45,99,97,115,101,42,42,61,107,79,109,111, +100,117,108,101,45,105,100,101,110,116,105,102,105,101,114,61,63,65,100,117,109, +109,121,67,112,97,116,116,101,114,110,68,116,101,109,112,108,97,116,101,3,1, +6,101,110,118,56,48,48,3,1,6,101,110,118,56,48,49,3,1,4,103,49, +48,52,3,1,4,103,49,48,51,3,1,4,103,49,48,55,3,1,4,103,49, +48,54,3,1,4,103,49,48,53,1,21,109,97,107,101,45,115,101,116,33,45, +116,114,97,110,115,102,111,114,109,101,114,3,1,6,101,110,118,56,52,56,3, +1,6,101,110,118,56,52,57,68,35,37,107,101,114,110,101,108,30,2,3,69, +115,116,120,45,112,97,105,114,63,11,30,2,3,67,99,111,110,115,47,35,102, +1,30,2,3,67,115,116,120,45,99,97,114,5,30,2,3,67,115,116,120,45, +99,100,114,6,30,2,3,69,97,112,112,101,110,100,47,35,102,0,30,2,3, +69,115,116,120,45,108,105,115,116,63,8,30,2,3,73,115,116,120,45,99,104, +101,99,107,47,101,115,99,7,30,2,3,69,115,116,120,45,62,108,105,115,116, +4,30,2,3,71,115,116,120,45,110,117,108,108,47,35,102,9,30,2,3,70, +115,116,120,45,114,111,116,97,116,101,12,30,2,33,68,114,101,108,111,99,97, +116,101,0,30,2,32,1,20,99,97,116,99,104,45,101,108,108,105,112,115,105, +115,45,101,114,114,111,114,1,30,2,32,1,24,97,112,112,108,121,45,112,97, +116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101,0,16,4,11,11, +2,50,3,1,6,101,110,118,54,52,48,95,8,193,11,16,0,97,10,35,11, +97,159,2,33,9,11,159,2,30,9,11,159,2,32,9,11,159,2,3,9,11, +159,2,49,9,11,16,0,97,10,34,11,97,159,2,33,9,11,159,2,30,9, +11,159,2,32,9,11,159,2,3,9,11,159,2,49,9,11,16,14,2,2,2, +1,2,8,2,1,2,14,2,1,2,27,2,1,2,10,2,1,2,29,2,1, +2,15,2,1,18,98,2,47,13,16,4,34,2,48,2,1,11,8,127,8,126, +8,125,8,124,99,13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,8, +124,16,12,11,11,3,1,3,103,51,56,3,1,3,103,51,57,3,1,3,103, +52,48,3,1,3,103,52,49,3,1,3,103,52,50,2,51,2,51,2,51,2, +51,2,51,16,12,11,11,2,52,2,41,2,43,2,44,2,45,2,53,2,53, +2,53,2,53,2,53,18,158,162,10,2,40,2,37,9,2,38,2,39,8,129, +2,18,158,95,10,2,35,2,36,8,129,2,18,16,2,95,2,42,93,8,131, +11,16,4,11,11,2,54,3,1,6,101,110,118,54,54,54,95,9,8,131,11, +2,32,16,4,11,11,2,50,3,1,6,101,110,118,54,55,49,18,98,2,47, +13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,8,133,2,99,13,16, +4,34,2,48,2,1,11,8,127,8,126,8,125,8,133,2,16,12,11,11,3, +1,3,103,52,56,3,1,3,103,52,57,3,1,3,103,53,48,3,1,3,103, +53,49,3,1,3,103,53,50,2,60,2,60,2,60,2,60,2,60,16,12,11, +11,2,52,2,41,2,43,2,44,2,45,2,61,2,61,2,61,2,61,2,61, +18,158,162,10,2,40,2,57,9,2,58,2,59,8,135,2,18,158,95,10,93, +2,55,2,56,8,135,2,18,16,2,95,2,42,93,8,151,11,16,4,11,11, +2,54,3,1,6,101,110,118,54,57,54,95,9,8,151,11,2,32,30,2,32, +1,26,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99, +116,47,115,104,97,112,101,2,30,2,3,71,115,116,120,45,114,111,116,97,116, +101,42,13,30,2,30,76,119,105,116,104,45,115,121,110,116,97,120,45,102,97, +105,108,3,16,4,11,11,2,50,3,1,6,101,110,118,55,48,49,18,98,2, +47,13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,8,142,2,16,12, +11,11,2,52,2,41,2,43,2,44,2,45,2,76,2,76,2,76,2,76,2, +76,16,12,11,11,3,1,3,103,53,56,3,1,3,103,53,57,3,1,3,103, +54,48,3,1,3,103,54,49,3,1,3,103,54,50,2,75,2,75,2,75,2, +75,2,75,99,13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,8,142, +2,8,145,2,8,144,2,18,158,2,47,8,146,2,18,158,2,77,8,146,2, +101,13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,8,142,2,8,145, +2,8,144,2,16,4,11,11,3,1,3,103,54,53,3,1,6,101,110,118,55, +51,53,16,4,11,11,2,71,3,1,6,101,110,118,55,51,54,18,158,97,10, +2,40,2,67,9,161,2,40,2,68,9,2,69,2,70,8,149,2,18,158,95, +10,2,65,2,66,8,149,2,18,158,95,10,2,62,158,2,72,2,63,8,149, +2,18,158,95,10,2,73,94,2,74,2,64,8,149,2,18,16,2,95,2,42, +93,8,182,11,16,4,11,11,2,54,3,1,6,101,110,118,55,52,48,95,9, +8,182,11,2,32,96,93,8,170,11,16,4,11,11,3,1,7,119,115,116,109, +112,54,51,3,1,6,101,110,118,55,50,55,16,4,11,11,3,1,3,103,54, +52,3,1,6,101,110,118,55,52,57,16,4,11,11,2,78,3,1,6,101,110, +118,55,53,48,18,16,2,158,95,10,94,2,71,2,42,2,42,8,155,2,95, +9,8,170,11,2,30,16,4,11,11,2,50,3,1,6,101,110,118,55,53,52, +18,98,2,47,13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,8,157, +2,99,13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,8,157,2,16, +12,11,11,3,1,3,103,55,53,3,1,3,103,55,54,3,1,3,103,55,55, +3,1,3,103,55,56,3,1,3,103,55,57,2,84,2,84,2,84,2,84,2, +84,16,12,11,11,2,52,2,41,2,43,2,44,2,45,2,85,2,85,2,85, +2,85,2,85,18,158,161,10,2,10,2,81,2,82,2,83,8,159,2,18,158, +95,10,93,2,79,2,80,8,159,2,18,16,2,95,2,42,93,8,143,12,16, +4,11,11,2,54,3,1,6,101,110,118,55,55,57,95,9,8,143,12,2,32, +30,2,3,2,4,2,16,12,11,11,2,52,2,95,67,107,101,121,119,111,114, +100,2,98,2,99,2,101,2,101,2,101,2,101,2,101,16,12,11,11,3,1, +3,103,56,53,3,1,3,103,56,54,3,1,3,103,56,55,3,1,3,103,56, +56,3,1,3,103,56,57,2,100,2,100,2,100,2,100,2,100,16,4,11,11, +2,50,3,1,6,101,110,118,55,56,52,99,13,16,4,34,2,48,2,1,11, +8,127,8,126,8,125,8,166,2,8,165,2,8,164,2,18,158,2,77,8,167, +2,18,158,2,47,8,167,2,18,158,2,77,8,167,2,101,13,16,4,34,2, +48,2,1,11,8,127,8,126,8,125,8,166,2,8,165,2,8,164,2,16,4, +11,11,3,1,3,103,57,50,3,1,6,101,110,118,56,50,48,16,4,11,11, +2,97,3,1,6,101,110,118,56,50,49,18,158,96,10,2,92,93,2,93,163, +2,94,2,89,10,2,93,2,90,2,96,2,91,8,171,2,18,158,95,10,158, +2,86,2,87,95,2,13,2,93,2,88,8,171,2,18,16,2,95,2,42,93, +8,174,12,16,4,11,11,2,54,3,1,6,101,110,118,56,50,53,95,9,8, +174,12,2,32,96,93,8,165,12,16,4,11,11,3,1,7,119,115,116,109,112, +57,48,3,1,6,101,110,118,56,49,51,16,4,11,11,3,1,3,103,57,49, +3,1,6,101,110,118,56,51,48,16,4,11,11,2,78,3,1,6,101,110,118, +56,51,49,18,16,2,158,95,10,2,97,2,42,8,175,2,95,9,8,165,12, +2,30,99,13,16,4,34,2,48,2,1,11,8,127,8,126,8,125,16,4,11, +11,2,93,3,1,6,101,110,118,56,51,53,16,10,11,11,3,1,3,103,57, +57,3,1,4,103,49,48,48,3,1,4,103,49,48,49,3,1,4,103,49,48, +50,2,108,2,108,2,108,2,108,16,10,11,11,2,52,2,95,2,98,2,99, +2,109,2,109,2,109,2,109,18,158,2,77,8,177,2,18,158,95,10,2,107, +95,2,92,93,2,93,163,2,94,2,104,10,2,93,2,105,2,96,2,106,8, +177,2,18,158,95,10,2,102,95,2,13,2,93,2,103,8,177,2,18,16,2, +95,2,42,93,8,134,13,16,4,11,11,2,54,3,1,6,101,110,118,56,53, +57,95,9,8,134,13,2,32,159,34,20,100,159,34,16,1,20,24,65,98,101, +103,105,110,16,0,83,158,40,20,97,114,76,35,37,115,116,120,99,97,115,101, +45,115,99,104,101,109,101,2,1,10,10,10,34,80,158,34,34,20,100,159,34, +16,2,30,2,1,2,2,193,30,2,3,2,4,2,16,0,11,11,16,0,34, +11,16,26,2,2,2,5,2,6,2,7,2,8,2,9,2,10,2,11,2,12, +2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,22,2, +23,2,24,2,25,2,26,2,27,2,28,2,29,16,26,11,2,30,2,31,2, +32,11,66,35,37,99,111,110,100,11,2,33,2,34,2,33,11,11,2,31,2, +31,2,34,2,31,2,34,2,34,2,30,2,31,2,34,2,31,2,34,11,2, +33,11,16,26,2,2,2,5,2,6,2,7,2,8,2,9,2,10,2,11,2, +12,2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,22, +2,23,2,24,2,25,2,26,2,27,2,28,2,29,36,8,26,98,16,5,93, +2,15,87,94,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38, +46,20,15,159,38,36,47,21,94,2,35,2,36,248,22,58,198,248,22,84,198, +80,159,34,52,35,89,162,34,35,55,9,223,0,27,249,22,152,3,20,15,159, +37,34,47,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39, +36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,38, +27,248,80,158,43,36,196,28,248,80,158,43,39,193,248,22,9,89,162,34,35, +46,9,224,9,1,27,249,22,2,89,162,34,35,51,9,224,4,5,249,80,158, +37,40,28,248,80,158,38,34,197,249,80,158,39,38,27,248,80,158,41,36,200, +28,248,80,158,41,39,193,248,22,65,248,80,158,42,41,194,11,27,248,80,158, +41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195, +248,80,158,43,42,248,80,158,44,37,196,11,11,194,248,80,158,39,41,196,28, +248,22,63,193,21,94,9,9,248,80,158,37,43,193,11,27,248,80,158,43,37, +196,28,248,80,158,43,34,193,249,80,158,44,35,248,80,158,45,36,195,27,248, +80,158,46,37,196,28,248,80,158,46,39,193,248,80,158,46,41,193,11,11,11, +11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22, +96,197,27,248,22,95,198,249,80,158,43,44,202,27,251,22,67,199,201,202,200, +250,80,158,47,45,89,162,34,34,50,9,224,13,3,252,80,158,40,46,20,15, +159,40,35,47,21,95,2,37,2,38,2,39,250,22,2,80,159,43,52,35,248, +22,93,201,248,22,84,201,248,22,94,198,248,22,58,198,21,98,2,40,94,94, +94,2,41,2,42,2,43,2,42,9,2,44,2,45,2,42,20,15,159,47,37, +47,250,22,178,8,11,2,46,196,34,20,100,159,35,16,13,2,111,2,112,2, +113,2,114,2,115,2,116,2,117,2,118,2,119,2,120,2,121,2,122,2,123, +16,4,33,128,2,33,130,2,33,131,2,33,132,2,11,16,5,93,2,27,87, +94,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,46,20,15, +159,38,36,47,21,94,2,55,2,56,248,22,58,198,248,22,84,198,80,159,34, +52,35,89,162,34,35,55,9,223,0,27,249,22,152,3,20,15,159,37,34,47, +196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36,196,27, +248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,38,27,248,80, +158,43,36,196,28,248,80,158,43,39,193,248,22,9,89,162,34,35,46,9,224, +9,1,27,249,22,2,89,162,34,35,51,9,224,4,5,249,80,158,37,40,28, +248,80,158,38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248,80,158, +41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195, +248,80,158,43,41,248,80,158,44,37,196,11,11,194,248,80,158,39,42,196,28, +248,22,63,193,21,94,9,9,248,80,158,37,43,193,11,27,248,80,158,43,37, +196,28,248,80,158,43,34,193,249,80,158,44,35,248,80,158,45,36,195,27,248, +80,158,46,37,196,28,248,80,158,46,39,193,248,80,158,46,42,193,11,11,11, +11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22, +96,197,27,248,22,95,198,249,80,158,43,44,202,27,251,22,67,199,201,202,200, +250,80,158,47,45,89,162,34,34,50,9,224,13,3,252,80,158,40,46,20,15, +159,40,35,47,21,95,2,57,2,58,2,59,250,22,2,80,159,43,52,35,248, +22,93,201,248,22,84,201,248,22,94,198,248,22,58,198,21,98,2,40,94,94, +93,2,41,2,43,2,42,9,2,44,2,45,2,42,20,15,159,47,37,47,250, +22,178,8,11,2,46,196,34,20,100,159,35,16,13,2,111,2,112,2,113,2, +114,2,115,2,116,2,117,2,119,2,118,2,120,2,121,2,122,2,123,16,4, +33,134,2,33,136,2,33,137,2,33,138,2,11,16,5,93,2,10,87,96,83, +158,34,16,2,89,162,35,35,48,9,223,0,251,80,158,38,49,20,15,159,38, +39,51,21,94,2,62,2,63,248,22,58,198,249,22,2,80,159,40,8,28,35, +248,22,84,200,80,159,34,8,29,35,83,158,34,16,2,89,162,35,35,45,9, +223,0,250,80,158,37,49,20,15,159,37,40,51,21,93,2,64,248,22,58,197, +80,159,34,8,28,35,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80, +158,38,49,20,15,159,38,38,51,21,94,2,65,2,66,248,22,58,198,248,22, +84,198,80,159,34,8,27,35,89,162,34,35,58,9,223,0,27,249,22,152,3, +20,15,159,37,34,51,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248, 80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80, 158,41,38,27,248,80,158,43,36,196,28,248,80,158,43,39,193,248,22,9,89, 162,34,35,46,9,224,9,1,27,249,22,2,89,162,34,35,51,9,224,4,5, @@ -2131,2470 +2197,2517 @@ 158,43,37,196,28,248,80,158,43,34,193,249,80,158,44,35,248,80,158,45,36, 195,27,248,80,158,46,37,196,28,248,80,158,46,39,193,248,80,158,46,41,193, 11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196, -27,248,22,96,197,27,248,22,95,198,249,80,158,43,44,202,27,251,22,67,200, -202,201,199,250,80,158,47,45,89,162,34,34,50,9,224,13,3,252,80,158,40, -46,20,15,159,40,35,47,21,95,2,37,2,38,2,39,250,22,2,80,159,43, -52,35,248,22,84,201,248,22,93,201,248,22,58,198,248,22,94,198,21,98,2, -40,94,94,94,2,41,2,42,2,43,2,42,9,2,44,2,45,2,42,20,15, -159,47,37,47,250,22,177,8,11,2,46,196,34,20,100,159,35,16,13,2,110, -2,111,2,112,2,113,2,114,2,115,2,116,2,117,2,118,2,119,2,120,2, -121,2,122,16,4,33,127,33,129,2,33,130,2,33,131,2,11,16,5,93,2, -6,87,94,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,46, -20,15,159,38,36,47,21,94,2,54,2,55,248,22,58,198,248,22,84,198,80, -159,34,52,35,89,162,34,35,55,9,223,0,27,249,22,152,3,20,15,159,37, -34,47,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36, -196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,38,27, -248,80,158,43,36,196,28,248,80,158,43,39,193,248,22,9,89,162,34,35,46, -9,224,9,1,27,249,22,2,89,162,34,35,51,9,224,4,5,249,80,158,37, -40,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248, -80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43, -36,195,248,80,158,43,41,248,80,158,44,37,196,11,11,194,248,80,158,39,42, -196,28,248,22,63,193,21,94,9,9,248,80,158,37,43,193,11,27,248,80,158, -43,37,196,28,248,80,158,43,34,193,249,80,158,44,35,248,80,158,45,36,195, -27,248,80,158,46,37,196,28,248,80,158,46,39,193,248,80,158,46,42,193,11, -11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27, -248,22,96,197,27,248,22,95,198,249,80,158,43,44,202,27,251,22,67,200,202, -201,199,250,80,158,47,45,89,162,34,34,50,9,224,13,3,252,80,158,40,46, -20,15,159,40,35,47,21,95,2,56,2,57,2,58,250,22,2,80,159,43,52, -35,248,22,84,201,248,22,93,201,248,22,58,198,248,22,94,198,21,98,2,40, -94,94,93,2,41,2,43,2,42,9,2,44,2,45,2,42,20,15,159,47,37, -47,250,22,177,8,11,2,46,196,34,20,100,159,35,16,13,2,110,2,111,2, -112,2,113,2,114,2,115,2,116,2,118,2,117,2,119,2,120,2,121,2,122, -16,4,33,133,2,33,135,2,33,136,2,33,137,2,11,16,5,93,2,21,87, -96,83,158,34,16,2,89,162,35,35,48,9,223,0,251,80,158,38,49,20,15, -159,38,39,51,21,94,2,61,2,62,248,22,58,198,249,22,2,80,159,40,8, -28,35,248,22,84,200,80,159,34,8,29,35,83,158,34,16,2,89,162,35,35, -45,9,223,0,250,80,158,37,49,20,15,159,37,40,51,21,93,2,63,248,22, -58,197,80,159,34,8,28,35,83,158,34,16,2,89,162,35,35,46,9,223,0, -251,80,158,38,49,20,15,159,38,38,51,21,94,2,64,2,65,248,22,58,198, -248,22,84,198,80,159,34,8,27,35,89,162,34,35,58,9,223,0,27,249,22, -152,3,20,15,159,37,34,51,196,27,28,248,80,158,37,34,194,249,80,158,38, -35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193, -249,80,158,41,38,27,248,80,158,43,36,196,28,248,80,158,43,39,193,248,22, -9,89,162,34,35,46,9,224,9,1,27,249,22,2,89,162,34,35,51,9,224, -4,5,249,80,158,37,40,28,248,80,158,38,34,197,249,80,158,39,38,27,248, -80,158,41,36,200,28,248,80,158,41,39,193,248,22,65,248,80,158,42,41,194, -11,27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248, -80,158,43,36,195,248,80,158,43,42,248,80,158,44,37,196,11,11,194,248,80, -158,39,41,196,28,248,22,63,193,21,94,9,9,248,80,158,37,43,193,11,27, -248,80,158,43,37,196,28,248,80,158,43,34,193,249,80,158,44,35,248,80,158, -45,36,195,27,248,80,158,46,37,196,28,248,80,158,46,39,193,248,80,158,46, -41,193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22, -93,196,27,248,22,96,197,27,248,22,95,198,27,249,22,152,3,20,15,159,44, -35,51,249,22,2,80,158,46,44,248,22,159,3,249,80,158,49,45,20,15,159, -49,36,51,203,27,28,248,80,158,44,39,194,248,22,9,89,162,34,35,46,9, -224,10,2,27,249,22,2,89,162,34,35,46,9,224,4,5,249,80,158,37,40, -28,248,80,158,38,39,197,248,22,65,248,80,158,39,41,198,11,194,248,80,158, -39,41,196,28,248,22,63,193,9,248,80,158,37,46,193,11,28,192,249,80,158, -45,47,204,27,252,22,67,204,203,202,205,200,250,80,158,49,48,89,162,34,34, -51,9,224,15,3,253,80,158,41,49,20,15,159,41,37,51,21,96,2,66,2, -67,2,68,2,69,250,22,2,80,159,44,8,27,35,248,22,95,202,248,22,58, -202,250,22,2,80,159,44,8,29,35,248,22,96,202,248,22,95,202,248,22,84, -199,248,22,93,199,21,96,2,40,94,94,94,2,70,2,42,2,43,2,42,9, -98,2,40,94,94,94,2,41,2,42,95,2,71,94,2,72,94,2,73,2,70, -2,42,2,42,9,2,44,2,45,2,42,20,15,159,49,41,51,248,80,158,44, -50,20,15,159,44,42,51,250,22,177,8,11,2,46,196,34,20,100,159,37,16, -17,2,110,2,111,2,112,2,113,2,114,2,115,2,116,2,117,2,118,2,119, -30,2,30,2,5,0,2,138,2,2,139,2,2,120,2,121,2,122,2,140,2, -16,9,33,142,2,33,146,2,33,147,2,33,149,2,33,150,2,33,151,2,33, -152,2,33,153,2,33,155,2,11,16,5,93,2,11,87,94,83,158,34,16,2, -89,162,35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,36,47,21,94, -2,78,2,79,248,22,58,198,248,22,84,198,80,159,34,52,35,89,162,34,35, -55,9,223,0,27,249,22,152,3,20,15,159,37,34,47,196,27,28,248,80,158, -37,34,194,249,80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197, -28,248,80,158,40,34,193,249,80,158,41,38,27,248,80,158,43,36,196,28,248, -80,158,43,39,193,248,22,9,89,162,34,35,46,9,224,9,1,27,249,22,2, -89,162,34,35,51,9,224,4,5,249,80,158,37,40,28,248,80,158,38,34,197, -249,80,158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200,28,248,80, -158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158,43,41,248, -80,158,44,37,196,11,11,194,248,80,158,39,42,196,28,248,22,63,193,21,94, -9,9,248,80,158,37,43,193,11,27,248,80,158,43,37,196,28,248,80,158,43, -34,193,249,80,158,44,35,248,80,158,45,36,195,27,248,80,158,46,37,196,28, -248,80,158,46,39,193,248,80,158,46,42,193,11,11,11,11,28,192,27,248,22, -58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,248,22,95, -198,249,80,158,43,44,202,27,251,22,67,200,202,201,199,250,80,158,47,45,89, -162,34,34,50,9,224,13,3,252,80,158,40,46,20,15,159,40,35,47,21,95, -2,80,2,81,2,82,250,22,2,80,159,43,52,35,248,22,84,201,248,22,93, -201,248,22,58,198,248,22,94,198,21,97,2,21,94,94,93,2,41,2,43,2, -42,2,44,2,45,2,42,20,15,159,47,37,47,250,22,177,8,11,2,46,196, -34,20,100,159,35,16,13,2,110,2,111,2,112,2,113,2,114,2,115,2,116, -2,118,2,117,2,119,2,120,2,121,2,122,16,4,33,157,2,33,159,2,33, -160,2,33,161,2,11,16,5,93,2,28,87,94,83,158,34,16,2,89,162,35, -35,47,9,223,0,252,80,158,39,48,20,15,159,39,38,50,21,95,2,85,2, -86,2,87,248,22,58,199,248,22,84,199,248,22,93,199,80,159,34,58,35,89, -162,34,35,57,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248, -80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80, -158,40,38,27,248,80,158,42,36,196,28,248,80,158,42,39,193,248,22,65,248, -80,158,43,40,194,11,27,248,80,158,42,37,196,28,248,80,158,42,39,193,248, -22,9,89,162,34,35,46,9,224,8,1,27,249,22,2,89,162,34,35,54,9, -224,4,5,249,80,158,37,41,28,248,80,158,38,34,197,249,80,158,39,38,27, -248,80,158,41,36,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158, -43,36,195,27,248,80,158,44,37,196,248,22,65,250,22,152,3,199,196,199,11, -27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80, -158,43,36,195,248,80,158,43,42,248,80,158,44,37,196,11,11,194,248,80,158, -39,40,196,28,248,22,63,193,21,94,9,9,248,80,158,37,43,193,11,11,11, -28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,96, -197,27,248,22,95,198,28,249,22,4,80,158,42,44,248,22,159,3,249,80,158, -45,45,20,15,159,45,34,50,200,27,249,22,152,3,20,15,159,43,35,50,249, -22,2,89,162,8,36,35,46,9,224,11,12,87,94,28,248,80,158,36,44,195, -12,251,22,177,8,11,6,59,59,112,97,116,116,101,114,110,32,109,117,115,116, -32,115,116,97,114,116,32,119,105,116,104,32,97,110,32,105,100,101,110,116,105, -102,105,101,114,44,32,102,111,117,110,100,32,115,111,109,101,116,104,105,110,103, -32,101,108,115,101,196,198,248,22,49,248,22,50,248,22,153,3,197,248,22,159, -3,249,80,158,48,45,20,15,159,48,36,50,202,27,28,248,80,158,43,39,194, -248,80,158,43,40,194,11,28,192,249,80,158,44,46,203,27,252,22,67,203,205, -202,200,206,250,80,158,48,47,89,162,34,34,51,9,224,14,3,252,80,158,40, -48,20,15,159,40,37,50,21,95,2,88,2,89,2,90,248,22,95,198,248,22, -84,198,251,22,2,80,159,44,58,35,248,22,96,202,248,22,58,202,248,22,93, -202,21,95,2,91,93,2,92,100,2,93,2,51,10,2,92,94,2,94,2,42, -2,95,94,158,2,96,2,97,95,2,26,2,92,2,98,2,42,20,15,159,48, -39,50,248,80,158,43,49,20,15,159,43,40,50,250,22,177,8,11,2,46,202, -250,22,177,8,11,2,46,197,34,20,100,159,35,16,16,2,110,2,111,2,112, -2,113,2,114,2,115,2,117,2,116,2,118,2,139,2,2,162,2,2,138,2, -2,120,2,121,2,122,2,140,2,16,7,33,167,2,33,168,2,33,169,2,33, -171,2,33,172,2,33,173,2,33,175,2,11,16,5,93,2,17,87,94,83,158, -34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,48,20,15,159,38,36, -49,21,94,2,101,2,102,248,22,58,198,248,22,84,198,80,159,34,54,35,89, -162,34,35,53,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248, -80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80, -158,40,38,27,248,80,158,42,36,196,28,248,80,158,42,39,193,248,22,65,248, -80,158,43,40,194,11,27,248,80,158,42,37,196,28,248,80,158,42,39,193,248, -22,9,89,162,34,35,46,9,224,8,1,27,249,22,2,89,162,34,35,51,9, -224,4,5,249,80,158,37,41,28,248,80,158,38,34,197,249,80,158,39,35,248, -80,158,40,36,199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80, -158,42,35,248,80,158,43,36,195,248,80,158,43,42,248,80,158,44,37,196,11, -11,194,248,80,158,39,40,196,28,248,22,63,193,21,93,9,248,80,158,37,43, -193,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196, -27,248,22,94,197,28,249,22,4,80,158,41,44,248,22,159,3,249,80,158,44, -45,20,15,159,44,34,49,199,249,80,158,41,46,200,27,251,22,67,201,199,200, -202,250,80,158,45,47,89,162,34,34,50,9,224,11,3,252,80,158,40,48,20, -15,159,40,35,49,21,95,2,103,2,104,2,105,248,22,94,198,248,22,58,198, -250,22,2,80,159,43,54,35,248,22,93,201,248,22,84,201,21,94,2,106,95, -2,91,93,2,92,100,2,93,2,51,10,2,92,94,2,94,2,42,2,95,94, -2,97,95,2,26,2,92,2,98,2,42,20,15,159,45,37,49,250,22,177,8, -11,2,46,201,250,22,177,8,11,2,46,197,34,20,100,159,35,16,15,2,110, -2,111,2,112,2,113,2,114,2,115,2,117,2,116,2,118,2,139,2,2,162, -2,2,138,2,2,120,2,121,2,122,16,4,33,177,2,33,178,2,33,179,2, -33,180,2,11,93,83,158,34,16,2,89,162,34,35,42,2,2,223,0,248,22, -9,89,162,8,36,35,45,9,224,1,2,27,247,22,116,87,94,249,22,3,89, -162,8,36,35,50,9,226,4,3,5,2,87,94,28,248,80,158,38,35,197,12, -250,22,178,8,2,2,6,19,19,108,105,115,116,32,111,102,32,105,100,101,110, -116,105,102,105,101,114,115,197,27,250,22,122,196,248,22,153,3,201,9,87,94, -28,249,22,5,89,162,8,36,35,43,9,223,7,249,22,164,3,195,194,194,248, -195,198,12,250,22,121,196,248,22,153,3,201,249,22,57,202,197,195,11,80,159, -34,34,35,98,2,109,2,48,2,3,2,33,2,30,2,34,98,2,109,2,48, -2,3,2,33,2,30,2,34,0}; - EVAL_ONE_SIZED_STR((char *)expr, 6896); - } - { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,72,0,0,0,1,0,0,3,0,23,0,29,0, -47,0,59,0,68,0,84,0,89,0,93,0,100,0,107,0,114,0,121,0,127, -0,130,0,143,0,148,0,165,0,174,0,179,0,189,0,193,0,203,0,213,0, -223,0,232,0,242,0,246,0,0,1,2,1,12,1,22,1,32,1,41,1,64, -1,70,1,87,1,124,1,136,1,173,1,189,1,212,1,227,1,233,1,239,1, -245,1,251,1,12,2,27,2,49,2,70,2,76,2,82,2,180,2,186,2,218, -2,224,2,230,2,236,2,84,3,90,3,96,3,102,3,142,3,158,3,174,3, -188,3,1,4,17,4,31,4,119,4,0,0,2,13,0,0,29,11,11,79,99, -104,101,99,107,45,115,112,108,105,99,105,110,103,45,108,105,115,116,65,35,37, -115,116,120,77,117,110,115,121,110,116,97,120,45,115,112,108,105,99,105,110,103, -71,113,117,97,115,105,115,121,110,116,97,120,68,117,110,115,121,110,116,97,120, -75,113,117,97,115,105,115,121,110,116,97,120,47,108,111,99,64,108,111,111,112, -63,99,116,120,3,1,4,103,53,57,55,3,1,4,103,53,57,54,3,1,4, -103,53,57,57,3,1,4,103,53,57,56,65,112,108,111,111,112,62,113,113,6, -10,10,98,97,100,32,115,121,110,116,97,120,64,104,101,114,101,76,35,37,115, -116,120,99,97,115,101,45,115,99,104,101,109,101,68,111,114,105,103,45,115,116, -120,64,98,111,100,121,3,1,7,101,110,118,51,51,51,49,63,115,116,120,3, -1,7,101,110,118,51,51,51,52,3,1,7,101,110,118,51,51,53,54,3,1, -7,101,110,118,51,51,53,55,68,98,105,110,100,105,110,103,115,3,1,7,101, -110,118,51,51,54,51,63,46,46,46,3,1,7,101,110,118,51,52,51,53,61, -95,3,1,7,101,110,118,51,52,51,54,3,1,7,101,110,118,51,52,52,56, -3,1,7,101,110,118,51,52,52,57,68,35,37,107,101,114,110,101,108,16,8, -11,11,2,19,2,20,68,109,107,45,102,105,110,97,108,2,21,2,21,2,21, -95,8,193,11,16,0,97,10,35,11,94,159,2,3,9,11,159,2,18,9,11, -16,0,97,10,34,11,94,159,2,3,9,11,159,2,18,9,11,16,10,2,7, -2,1,2,5,2,1,2,6,2,1,2,2,2,1,2,4,2,1,18,97,2, -17,8,38,8,37,8,36,8,35,16,10,11,11,2,22,65,100,101,112,116,104, -66,115,97,109,101,45,107,69,99,111,110,118,101,114,116,45,107,2,23,2,23, -2,23,2,23,16,4,11,11,2,8,3,1,7,101,110,118,51,51,51,51,16, -4,11,11,68,104,101,114,101,45,115,116,120,3,1,7,101,110,118,51,51,51, -50,99,8,38,8,37,8,36,8,35,8,42,8,41,8,40,18,158,2,17,8, -43,18,158,2,6,8,43,18,158,2,6,8,43,18,158,2,4,8,43,16,6, -11,11,66,114,101,115,116,45,118,2,26,2,27,2,27,16,6,11,11,61,120, -64,114,101,115,116,2,25,2,25,16,6,11,11,3,1,4,103,53,56,55,3, -1,4,103,53,56,56,2,24,2,24,102,8,38,8,37,8,36,8,35,8,42, -8,41,8,40,8,50,8,49,8,48,18,158,2,17,8,51,18,158,2,17,8, -51,106,8,38,8,37,8,36,8,35,8,42,8,41,8,40,8,50,8,49,8, -48,16,4,11,11,3,1,4,103,53,57,51,3,1,7,101,110,118,51,51,55, -50,16,4,11,11,64,116,101,109,112,3,1,7,101,110,118,51,51,55,51,16, -4,11,11,3,1,4,103,53,57,53,3,1,7,101,110,118,51,51,56,52,16, -4,11,11,2,9,3,1,7,101,110,118,51,51,56,53,18,158,2,28,8,54, -18,158,95,10,94,2,10,2,11,95,2,2,2,12,94,72,113,117,111,116,101, -45,115,121,110,116,97,120,2,13,8,54,18,158,2,28,8,54,18,158,2,4, -8,43,18,158,2,5,8,43,104,8,38,8,37,8,36,8,35,8,42,8,41, -8,40,16,4,11,11,3,1,4,103,53,56,53,3,1,7,101,110,118,51,52, -49,48,16,4,11,11,65,95,101,108,115,101,3,1,7,101,110,118,51,52,49, -49,16,4,11,11,2,14,3,1,7,101,110,118,51,52,49,53,16,4,11,11, -61,108,3,1,7,101,110,118,51,52,49,54,16,4,11,11,61,97,3,1,7, -101,110,118,51,52,49,55,18,158,2,6,8,60,18,158,2,5,8,60,18,158, -2,4,8,60,18,99,71,119,105,116,104,45,115,121,110,116,97,120,8,38,8, -37,8,36,8,35,8,42,16,4,11,11,2,26,3,1,7,101,110,118,51,52, -50,57,16,4,11,11,2,19,3,1,7,101,110,118,51,52,51,48,16,4,11, -11,2,15,3,1,7,101,110,118,51,51,51,48,18,98,2,17,8,38,8,37, -8,36,8,66,8,65,18,101,66,115,121,110,116,97,120,8,38,8,37,8,36, -8,66,8,65,16,6,11,11,3,1,4,103,54,48,48,3,1,4,103,54,48, -49,2,29,2,29,16,6,11,11,2,30,2,22,2,31,2,31,16,4,11,11, -2,20,3,1,7,101,110,118,51,52,52,49,16,4,11,11,2,19,3,1,7, -101,110,118,51,52,52,50,18,98,2,17,8,38,8,37,8,36,8,66,8,69, -18,101,70,115,121,110,116,97,120,47,108,111,99,8,38,8,37,8,36,8,66, -8,69,16,8,11,11,3,1,4,103,54,48,50,3,1,4,103,54,48,51,3, -1,4,103,54,48,52,2,32,2,32,2,32,16,8,11,11,2,30,63,108,111, -99,2,22,2,33,2,33,2,33,16,4,11,11,2,20,3,1,7,101,110,118, -51,52,53,54,159,34,20,100,159,34,16,1,20,24,65,98,101,103,105,110,16, -0,83,158,40,20,97,114,67,35,37,113,113,115,116,120,2,1,10,10,10,34, -80,158,34,34,20,100,159,34,16,2,30,2,1,2,2,193,30,2,3,69,115, -116,120,45,108,105,115,116,63,8,16,0,11,11,16,1,2,2,35,11,16,4, -2,4,2,5,2,6,2,7,16,4,11,11,11,11,16,4,2,4,2,5,2, -6,2,7,34,38,94,16,5,94,2,6,2,4,27,32,0,89,162,34,35,43, -61,102,222,250,22,177,8,11,6,30,30,105,108,108,101,103,97,108,32,111,117, -116,115,105,100,101,32,111,102,32,113,117,97,115,105,115,121,110,116,97,120,195, -249,22,7,194,194,37,20,100,159,34,16,0,16,0,11,16,5,94,2,5,2, -7,87,96,83,158,34,16,2,89,162,8,36,35,43,9,223,0,249,22,65,20, -15,159,36,51,43,195,80,159,34,8,32,35,83,158,34,16,2,89,162,34,40, -8,29,2,8,223,0,27,249,22,152,3,20,15,159,37,35,43,198,27,28,248, -80,158,37,34,194,28,27,248,80,158,38,35,195,28,248,80,158,38,36,193,28, -249,22,166,3,194,20,15,159,39,36,43,9,11,11,27,248,80,158,38,37,195, -28,248,80,158,38,34,193,249,80,158,39,38,248,80,158,40,35,195,248,80,158, -40,39,248,80,158,41,37,196,11,11,11,28,192,28,248,22,129,3,199,27,248, -22,58,248,80,158,39,40,21,93,62,117,113,249,203,194,248,22,65,249,22,65, -197,198,253,80,159,42,8,30,35,201,202,198,248,22,178,2,205,205,89,162,34, -36,53,9,226,8,9,14,11,249,195,250,22,152,3,199,249,22,65,248,80,158, -45,35,200,203,197,199,27,28,248,80,158,38,36,195,28,249,22,166,3,196,20, -15,159,39,37,43,9,11,11,28,192,251,22,177,8,11,6,25,25,109,105,115, -117,115,101,32,119,105,116,104,105,110,32,113,117,97,115,105,115,121,110,116,97, -120,201,202,27,28,248,80,158,39,34,196,249,80,158,40,38,27,248,80,158,42, -35,199,28,248,80,158,42,34,193,28,27,248,80,158,43,35,194,28,248,80,158, -43,36,193,28,249,22,166,3,194,20,15,159,44,38,43,9,11,11,27,248,80, -158,43,37,194,28,248,80,158,43,34,193,249,80,158,44,41,248,80,158,45,35, -195,248,80,158,45,39,248,80,158,46,37,196,11,11,11,27,248,80,158,42,37, -199,250,22,152,3,201,195,201,11,28,192,27,248,22,58,194,27,248,22,59,195, -28,248,22,129,3,203,27,89,162,34,36,59,71,114,101,115,116,45,100,111,110, -101,45,107,226,7,13,10,2,27,249,22,152,3,20,15,159,40,39,43,248,22, -58,248,80,158,42,40,21,93,63,117,113,115,27,249,22,152,3,20,15,159,41, -40,43,250,22,152,3,199,2,9,199,249,198,250,22,152,3,200,250,22,67,201, -20,15,159,47,41,43,206,200,249,22,57,27,250,22,67,200,201,202,253,80,158, -50,42,20,15,159,50,42,43,21,96,2,10,2,11,2,12,2,13,248,22,84, -199,20,15,159,50,43,43,248,22,86,199,248,22,58,199,203,253,80,159,47,8, -30,35,206,23,15,199,23,17,89,162,34,34,43,9,224,7,6,249,194,195,9, -198,253,80,159,46,8,30,35,205,206,199,248,22,178,2,23,17,89,162,34,34, -55,9,230,12,14,13,18,17,16,15,6,253,80,159,47,8,30,35,203,204,198, -200,201,27,248,80,158,49,35,201,89,162,34,36,51,9,225,11,8,0,249,196, -250,22,152,3,198,249,22,57,199,202,198,249,22,71,9,200,89,162,34,36,57, -9,229,12,14,13,18,16,15,6,27,27,250,22,152,3,248,80,158,46,35,199, -249,22,65,248,80,158,48,35,248,80,158,49,35,202,206,248,80,158,46,35,199, -89,162,34,36,52,9,226,5,3,10,0,249,197,250,22,152,3,199,249,22,57, -199,203,199,249,22,71,197,201,253,80,159,47,8,30,35,203,204,199,201,89,162, -34,34,43,9,224,7,6,249,194,195,9,198,27,28,248,80,158,40,36,197,28, -249,22,166,3,198,20,15,159,41,44,43,9,11,11,28,192,251,22,177,8,11, -6,25,25,109,105,115,117,115,101,32,119,105,116,104,105,110,32,113,117,97,115, -105,115,121,110,116,97,120,203,204,27,28,248,80,158,41,34,198,28,27,248,80, -158,42,35,199,28,248,80,158,42,36,193,28,249,22,166,3,194,20,15,159,43, -45,43,9,11,11,27,248,80,158,42,37,199,28,248,80,158,42,34,193,249,80, -158,43,38,248,80,158,44,35,195,248,80,158,44,39,248,80,158,45,37,196,11, -11,11,28,192,253,80,159,46,8,30,35,205,206,198,248,22,177,2,23,17,23, -17,89,162,34,36,52,9,225,12,18,15,249,195,250,22,152,3,197,249,22,65, -248,80,158,44,35,200,202,197,198,28,248,22,56,248,22,153,3,203,253,80,159, -46,8,31,35,23,16,205,206,248,22,153,3,23,16,23,17,89,162,34,36,48, -9,224,18,15,249,195,250,22,152,3,197,199,197,197,28,248,22,166,7,248,22, -153,3,203,253,80,159,46,8,30,35,205,206,250,22,152,3,23,18,248,22,173, -7,248,22,153,3,23,20,23,18,23,16,23,17,89,162,34,36,50,9,224,18, -15,249,195,250,22,152,3,197,248,22,174,7,248,22,159,3,201,197,197,247,203, -80,159,34,8,30,35,83,158,34,16,2,89,162,8,64,40,55,2,14,223,0, -28,248,22,56,197,28,27,248,22,58,198,27,28,248,80,158,37,36,194,27,249, -22,166,3,196,20,15,159,39,46,43,28,192,192,249,22,166,3,196,20,15,159, -39,47,43,11,28,192,192,28,248,80,158,37,34,194,27,248,80,158,38,35,195, -28,248,80,158,38,36,193,249,22,166,3,194,20,15,159,39,48,43,11,11,253, -80,159,40,8,30,35,200,201,250,22,152,3,11,205,11,199,203,204,253,80,159, -40,8,31,35,199,200,201,248,22,59,203,89,162,34,34,53,9,229,6,9,8, -7,12,11,10,253,80,159,46,8,30,35,202,203,248,22,58,199,201,199,89,162, -34,36,51,9,224,8,6,249,195,249,22,57,250,22,152,3,248,22,58,200,201, -248,22,58,200,248,22,59,197,197,89,162,34,36,54,9,228,6,9,8,7,12, -10,253,80,159,45,8,30,35,201,202,248,22,58,199,200,89,162,34,34,48,9, -226,7,6,13,12,249,197,249,22,57,248,22,58,199,196,195,89,162,34,36,53, -9,226,7,6,13,12,249,197,249,22,57,250,22,152,3,248,22,58,202,203,248, -22,58,202,196,249,22,71,201,197,28,248,22,63,197,247,197,253,80,159,40,8, -30,35,200,201,202,199,203,204,80,159,34,8,31,35,27,89,162,34,37,51,2, -15,223,1,27,20,15,159,35,34,43,253,80,159,41,8,30,35,198,200,201,34, -89,162,8,36,34,47,9,226,10,9,8,6,250,22,152,3,195,248,199,198,196, -89,162,8,36,36,52,9,226,7,10,8,6,250,22,152,3,195,250,22,65,20, -15,159,43,49,43,203,248,201,203,196,249,22,7,89,162,34,35,51,9,224,3, -2,27,249,22,152,3,20,15,159,38,50,43,197,27,28,248,80,158,38,34,194, -249,80,158,39,41,248,80,158,40,35,196,27,248,80,158,41,37,197,28,248,80, -158,41,34,193,249,80,158,42,38,248,80,158,43,35,195,248,80,158,43,39,248, -80,158,44,37,196,11,11,28,192,27,248,22,58,194,27,248,22,59,195,250,199, -201,195,80,159,42,8,32,35,250,22,177,8,11,2,16,196,89,162,34,35,54, -9,224,3,2,27,249,22,152,3,20,15,159,38,52,43,197,27,28,248,80,158, -38,34,194,249,80,158,39,41,248,80,158,40,35,196,27,248,80,158,41,37,197, -28,248,80,158,41,34,193,249,80,158,42,41,248,80,158,43,35,195,27,248,80, -158,44,37,196,28,248,80,158,44,34,193,249,80,158,45,38,248,80,158,46,35, -195,248,80,158,46,39,248,80,158,47,37,196,11,11,11,28,192,27,248,22,58, -194,27,248,22,84,195,27,248,22,86,196,250,200,202,195,89,162,8,36,35,45, -9,224,9,4,250,22,65,20,15,159,38,53,43,195,197,250,22,177,8,11,2, -16,196,37,20,100,159,37,16,9,30,2,3,69,115,116,120,45,112,97,105,114, -63,11,30,2,3,67,115,116,120,45,99,97,114,5,30,2,3,71,105,100,101, -110,116,105,102,105,101,114,63,2,30,2,3,67,115,116,120,45,99,100,114,6, -30,2,3,69,97,112,112,101,110,100,47,35,102,0,30,2,3,71,115,116,120, -45,110,117,108,108,47,35,102,9,30,70,35,37,119,105,116,104,45,115,116,120, -1,20,103,101,110,101,114,97,116,101,45,116,101,109,112,111,114,97,114,105,101, -115,0,30,2,3,67,99,111,110,115,47,35,102,1,30,69,35,37,115,116,120, -99,97,115,101,1,24,97,112,112,108,121,45,112,97,116,116,101,114,110,45,115, -117,98,115,116,105,116,117,116,101,0,16,20,33,39,33,44,33,45,33,46,33, -47,33,52,33,53,33,55,33,56,33,57,33,58,33,59,33,61,33,62,33,63, -33,64,33,67,33,68,33,70,33,71,11,93,83,158,34,16,2,89,162,8,36, -36,45,2,2,223,0,87,94,28,248,80,158,35,35,194,12,250,22,178,8,2, -4,6,18,18,112,114,111,112,101,114,32,115,121,110,116,97,120,32,108,105,115, -116,196,250,22,152,3,197,196,197,80,159,34,34,35,95,2,34,2,18,2,3, -95,2,34,2,18,2,3,0}; - EVAL_ONE_SIZED_STR((char *)expr, 3493); - } - { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,160,0,0,0,1,0,0,6,0,9,0,23,0, -40,0,47,0,65,0,74,0,87,0,94,0,101,0,108,0,122,0,129,0,136, -0,149,0,156,0,163,0,170,0,177,0,184,0,187,0,194,0,201,0,208,0, -214,0,224,0,252,0,22,1,39,1,44,1,52,1,56,1,66,1,68,1,78, -1,88,1,93,1,103,1,106,1,110,1,120,1,127,1,137,1,142,1,152,1, -167,1,170,1,179,1,188,1,198,1,208,1,218,1,228,1,238,1,248,1,253, -1,7,2,21,2,37,2,63,2,70,2,77,2,90,2,97,2,104,2,111,2, -118,2,125,2,132,2,142,2,147,2,157,2,167,2,177,2,185,2,204,2,226, -2,228,2,238,2,248,2,1,3,15,3,27,3,39,3,51,3,65,3,79,3, -99,3,105,3,119,3,135,3,151,3,167,3,199,3,205,3,227,3,249,3,7, -4,19,4,42,4,73,4,90,4,96,4,147,4,153,4,159,4,171,4,235,4, -241,4,217,5,234,5,240,5,252,5,2,6,87,6,97,6,129,6,135,6,141, -6,147,6,160,6,221,6,23,7,29,7,42,7,65,7,71,7,77,7,83,7, -101,7,117,7,133,7,183,7,192,7,239,7,250,7,5,8,17,8,39,8,58, -8,16,9,32,9,54,9,61,9,68,9,127,9,138,9,145,9,201,9,214,9, -221,9,24,10,35,10,42,10,101,10,112,10,119,10,182,10,205,10,0,0,68, -25,0,0,65,98,101,103,105,110,29,11,11,73,100,101,102,105,110,101,45,115, -121,110,116,97,120,76,98,101,103,105,110,45,102,111,114,45,115,121,110,116,97, -120,66,100,101,102,105,110,101,77,100,101,102,105,110,101,45,102,111,114,45,115, -121,110,116,97,120,68,116,114,121,45,110,101,120,116,6,10,10,98,97,100,32, -115,121,110,116,97,120,3,1,4,103,54,53,51,3,1,4,103,54,53,49,3, -1,4,103,54,53,50,73,103,101,110,101,114,97,108,45,112,114,111,116,111,3, -1,4,103,54,52,49,3,1,4,103,54,52,48,72,115,105,109,112,108,101,45, -112,114,111,116,111,3,1,4,103,54,50,54,3,1,4,103,54,50,53,3,1, -4,103,54,50,55,3,1,4,103,54,51,50,3,1,4,103,54,51,49,62,109, -107,3,1,4,103,54,54,55,3,1,4,103,54,54,53,3,1,4,103,54,54, -54,65,35,37,115,116,120,69,35,37,115,116,120,99,97,115,101,1,26,100,97, -116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101,99,116,47,115,104, -97,112,101,1,24,97,112,112,108,121,45,112,97,116,116,101,114,110,45,115,117, -98,115,116,105,116,117,116,101,76,35,37,115,116,120,99,97,115,101,45,115,99, -104,101,109,101,64,104,101,114,101,67,35,37,113,113,115,116,120,63,115,116,120, -3,1,7,101,110,118,51,52,55,56,61,95,3,1,7,101,110,118,51,52,55, -57,3,1,7,101,110,118,51,52,56,55,64,100,101,115,116,3,1,7,101,110, -118,51,52,57,52,62,105,100,63,97,114,103,3,1,7,101,110,118,51,52,57, -53,66,108,97,109,98,100,97,3,1,7,101,110,118,51,53,50,52,64,114,101, -115,116,3,1,7,101,110,118,51,53,50,53,74,35,37,115,109,97,108,108,45, -115,99,104,101,109,101,29,11,11,68,104,101,114,101,45,115,116,120,3,1,6, -101,110,118,52,53,56,3,1,7,101,110,118,51,53,54,49,3,1,7,101,110, -118,51,53,54,50,3,1,7,101,110,118,51,52,56,54,3,1,7,101,110,118, -51,54,53,50,3,1,7,101,110,118,51,54,53,51,3,1,7,101,110,118,51, -55,48,48,64,101,120,112,114,3,1,7,101,110,118,51,55,48,49,73,100,101, -102,105,110,101,45,118,97,108,117,101,115,75,100,101,102,105,110,101,45,115,121, -110,116,97,120,101,115,1,24,100,101,102,105,110,101,45,118,97,108,117,101,115, -45,102,111,114,45,115,121,110,116,97,120,3,1,4,103,54,55,52,3,1,4, -103,54,55,51,72,109,111,100,117,108,101,45,98,101,103,105,110,3,1,4,103, -54,56,51,3,1,4,103,54,56,53,3,1,4,103,54,56,52,3,1,4,103, -54,56,54,3,1,4,103,54,56,55,3,1,4,103,54,56,56,3,1,7,101, -110,118,51,55,51,57,64,101,108,101,109,3,1,7,101,110,118,51,55,52,48, -3,1,7,101,110,118,51,55,53,50,3,1,7,101,110,118,51,55,53,51,67, -114,101,113,117,105,114,101,78,114,101,113,117,105,114,101,45,102,111,114,45,115, -121,110,116,97,120,1,20,114,101,113,117,105,114,101,45,102,111,114,45,116,101, -109,112,108,97,116,101,61,118,3,1,7,101,110,118,51,55,55,54,3,1,7, -101,110,118,51,55,55,55,68,35,37,107,101,114,110,101,108,30,2,25,69,115, -116,120,45,112,97,105,114,63,11,30,2,25,67,99,111,110,115,47,35,102,1, -30,2,25,67,115,116,120,45,99,97,114,5,30,2,25,67,115,116,120,45,99, -100,114,6,30,2,25,69,115,116,120,45,108,105,115,116,63,8,30,2,25,69, -115,116,120,45,62,108,105,115,116,4,30,68,35,37,115,116,120,108,111,99,68, -114,101,108,111,99,97,116,101,0,30,2,26,2,28,0,30,2,25,69,97,112, -112,101,110,100,47,35,102,0,30,2,25,71,105,100,101,110,116,105,102,105,101, -114,63,2,30,2,25,71,115,116,120,45,110,117,108,108,47,35,102,9,16,4, -11,11,2,32,3,1,7,101,110,118,51,52,54,51,16,4,11,11,77,100,101, -102,105,110,101,45,118,97,108,117,101,115,45,115,116,120,3,1,7,101,110,118, -51,52,54,50,95,8,193,11,16,0,97,10,35,11,95,159,2,31,9,11,159, -2,25,9,11,159,2,29,9,11,16,0,96,10,34,11,16,8,2,3,2,2, -2,4,2,2,2,5,2,2,2,6,2,2,18,98,2,30,8,97,8,96,8, -95,8,94,8,93,16,6,11,11,2,15,2,12,2,36,2,36,16,8,11,11, -2,34,65,112,114,111,116,111,64,98,111,100,121,2,35,2,35,2,35,16,8, -11,11,3,1,4,103,54,48,53,3,1,4,103,54,48,54,3,1,4,103,54, -48,55,2,33,2,33,2,33,100,8,97,8,96,8,95,8,94,8,93,8,101, -8,100,8,99,18,158,2,30,8,102,102,8,97,8,96,8,95,8,94,8,93, -8,101,8,100,8,99,16,6,11,11,3,1,4,103,54,50,48,3,1,4,103, -54,50,49,2,38,2,38,16,6,11,11,2,39,2,40,2,41,2,41,18,158, -2,37,8,104,18,158,2,30,8,104,18,158,160,10,2,42,2,16,2,17,8, -104,102,8,97,8,96,8,95,8,94,8,93,8,101,8,100,8,99,16,8,11, -11,3,1,4,103,54,49,55,3,1,4,103,54,49,56,3,1,4,103,54,49, -57,2,43,2,43,2,43,16,8,11,11,2,39,2,40,2,44,2,45,2,45, -2,45,18,158,2,37,8,108,102,97,10,34,11,95,159,68,35,37,112,97,114, -97,109,122,9,11,159,2,46,9,11,159,2,25,9,11,16,14,75,115,117,98, -115,116,105,116,117,116,101,45,115,116,111,112,2,47,66,115,121,110,116,97,120, -2,47,78,112,97,116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101, -2,47,73,115,121,110,116,97,120,45,99,97,115,101,42,42,2,47,2,27,2, -47,2,28,2,47,1,20,99,97,116,99,104,45,101,108,108,105,112,115,105,115, -45,101,114,114,111,114,2,47,97,10,35,11,95,159,64,35,37,115,99,9,11, -159,2,46,9,11,159,2,25,9,11,16,0,95,8,193,11,16,0,16,4,11, -11,61,120,3,1,6,101,110,118,52,53,54,16,4,11,11,2,48,2,49,16, -4,11,11,2,48,2,49,16,4,11,11,2,48,3,1,6,101,110,118,52,54, -48,13,16,4,35,2,47,2,26,11,93,8,140,47,16,4,11,11,61,114,3, -1,7,101,110,118,51,53,51,50,18,16,2,158,94,10,2,18,8,110,95,9, -8,140,47,2,26,18,158,2,30,8,108,18,158,160,10,2,42,2,19,2,20, -8,108,18,158,2,30,8,102,102,8,97,8,96,8,95,8,94,8,93,8,101, -8,100,16,6,11,11,2,15,2,12,2,36,2,36,16,8,11,11,3,1,4, -103,54,51,53,3,1,4,103,54,51,54,3,1,4,103,54,51,55,2,50,2, -50,2,50,16,8,11,11,69,115,111,109,101,116,104,105,110,103,64,109,111,114, -101,2,44,2,51,2,51,2,51,18,158,159,10,2,13,2,14,8,115,100,8, -97,8,96,8,95,8,94,8,93,8,101,8,100,16,6,11,11,2,39,66,109, -107,45,114,104,115,2,52,2,52,18,158,2,30,8,117,18,158,2,30,8,117, -18,158,2,30,8,117,18,158,96,10,2,9,93,2,10,2,11,8,117,18,100, -2,30,8,97,8,96,8,95,8,94,8,93,16,8,11,11,3,1,4,103,54, -49,49,3,1,4,103,54,49,50,3,1,4,103,54,49,51,2,53,2,53,2, -53,16,8,11,11,2,34,2,39,2,44,2,54,2,54,2,54,99,8,97,8, -96,8,95,8,94,8,93,16,8,11,11,3,1,4,103,54,49,52,3,1,4, -103,54,49,53,3,1,4,103,54,49,54,2,55,2,55,2,55,16,8,11,11, -2,34,2,39,2,56,2,57,2,57,2,57,18,158,2,30,8,123,18,158,96, -10,2,22,93,2,23,2,24,8,123,96,8,97,8,96,8,95,16,4,11,11, -2,21,3,1,7,101,110,118,51,52,54,49,18,158,2,58,8,126,18,158,2, -59,8,126,18,158,2,60,8,126,16,4,11,11,63,99,116,120,3,1,7,101, -110,118,51,55,50,52,16,4,11,11,2,32,3,1,7,101,110,118,51,55,50, -51,18,98,2,30,8,97,8,96,8,95,8,131,2,8,130,2,99,8,97,8, -96,8,95,8,131,2,8,130,2,16,4,11,11,3,1,4,103,54,55,50,3, -1,7,101,110,118,51,55,50,57,16,4,11,11,2,34,3,1,7,101,110,118, -51,55,51,48,18,158,94,10,2,1,8,133,2,99,8,97,8,96,8,95,8, -131,2,8,130,2,16,6,11,11,3,1,4,103,54,54,56,3,1,4,103,54, -54,57,2,70,2,70,16,6,11,11,2,34,2,71,2,72,2,72,18,158,159, -10,2,1,2,61,8,135,2,18,158,95,10,2,4,2,62,8,135,2,16,6, -11,11,2,34,2,71,2,74,2,74,16,6,11,11,3,1,4,103,54,55,48, -3,1,4,103,54,55,49,2,73,2,73,99,8,97,8,96,8,95,8,131,2, -8,130,2,8,139,2,8,138,2,18,158,117,10,2,1,2,58,2,59,2,60, -64,115,101,116,33,70,108,101,116,45,118,97,108,117,101,115,71,108,101,116,42, -45,118,97,108,117,101,115,73,108,101,116,114,101,99,45,118,97,108,117,101,115, -2,42,71,99,97,115,101,45,108,97,109,98,100,97,62,105,102,65,113,117,111, -116,101,1,22,108,101,116,114,101,99,45,115,121,110,116,97,120,101,115,43,118, -97,108,117,101,115,76,102,108,117,105,100,45,108,101,116,45,115,121,110,116,97, -120,1,22,119,105,116,104,45,99,111,110,116,105,110,117,97,116,105,111,110,45, -109,97,114,107,72,35,37,101,120,112,114,101,115,115,105,111,110,1,20,35,37, -118,97,114,105,97,98,108,101,45,114,101,102,101,114,101,110,99,101,65,35,37, -97,112,112,65,35,37,116,111,112,67,35,37,100,97,116,117,109,67,112,114,111, -118,105,100,101,2,75,2,76,2,77,8,140,2,16,4,11,11,61,101,3,1, -7,101,110,118,51,55,53,56,100,8,97,8,96,8,95,8,131,2,8,130,2, -8,139,2,8,138,2,8,142,2,18,158,2,30,8,143,2,18,158,2,1,8, -143,2,102,8,97,8,96,8,95,8,131,2,8,130,2,8,139,2,8,138,2, -8,142,2,16,4,11,11,3,1,4,103,54,56,50,3,1,7,101,110,118,51, -55,54,52,16,4,11,11,2,78,3,1,7,101,110,118,51,55,54,53,18,158, -159,10,2,4,2,64,8,146,2,18,158,2,58,8,143,2,102,8,97,8,96, -8,95,8,131,2,8,130,2,8,139,2,8,138,2,8,142,2,16,6,11,11, -3,1,4,103,54,56,48,3,1,4,103,54,56,49,2,79,2,79,16,6,11, -11,2,39,2,56,2,80,2,80,18,158,96,10,2,60,2,65,2,66,8,149, -2,18,158,2,75,8,143,2,102,8,97,8,96,8,95,8,131,2,8,130,2, -8,139,2,8,138,2,8,142,2,16,4,11,11,3,1,4,103,54,55,57,3, -1,7,101,110,118,51,55,56,56,16,4,11,11,2,78,3,1,7,101,110,118, -51,55,56,57,18,158,159,10,2,76,2,67,8,152,2,18,158,2,77,8,143, -2,102,8,97,8,96,8,95,8,131,2,8,130,2,8,139,2,8,138,2,8, -142,2,16,4,11,11,3,1,4,103,54,55,56,3,1,7,101,110,118,51,55, -57,56,16,4,11,11,2,78,3,1,7,101,110,118,51,55,57,57,18,158,159, -10,2,75,2,68,8,155,2,18,158,2,59,8,143,2,102,8,97,8,96,8, -95,8,131,2,8,130,2,8,139,2,8,138,2,8,142,2,16,4,11,11,3, -1,4,103,54,55,53,3,1,7,101,110,118,51,56,49,55,16,4,11,11,65, -111,116,104,101,114,3,1,7,101,110,118,51,56,49,56,18,158,96,10,2,60, -9,95,2,1,2,69,93,66,118,97,108,117,101,115,8,158,2,159,34,20,100, -159,34,16,1,20,24,2,1,16,0,83,158,40,20,97,114,68,35,37,100,101, -102,105,110,101,2,2,10,10,10,34,80,158,34,34,20,100,159,34,16,0,16, -0,11,11,16,0,34,11,16,4,2,3,2,4,2,5,2,6,16,4,11,11, -11,11,16,4,2,3,2,4,2,5,2,6,34,38,94,16,5,95,2,5,2, -3,2,6,87,99,83,158,34,16,2,89,162,34,37,8,30,2,7,223,0,27, -28,248,80,158,36,34,195,249,80,158,37,35,248,80,158,38,36,197,27,248,80, -158,39,37,198,28,248,80,158,39,34,193,27,28,248,22,149,3,194,193,198,249, -80,158,41,35,248,80,158,42,36,196,27,248,80,158,43,37,197,250,22,152,3, -198,195,198,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86, -196,28,248,80,158,39,45,194,250,22,177,8,11,27,249,22,152,3,20,15,159, -44,49,49,204,27,28,248,80,158,44,34,194,249,80,158,45,35,248,80,158,46, -36,196,27,248,80,158,47,37,197,28,248,80,158,47,34,193,249,80,158,48,44, -248,80,158,49,36,195,248,80,158,49,48,248,80,158,50,37,196,11,11,28,192, -27,248,22,58,194,27,248,22,59,195,6,46,46,98,97,100,32,115,121,110,116, -97,120,32,40,122,101,114,111,32,101,120,112,114,101,115,115,105,111,110,115,32, -97,102,116,101,114,32,105,100,101,110,116,105,102,105,101,114,41,27,28,248,80, -158,45,34,195,249,80,158,46,35,248,80,158,47,36,197,27,248,80,158,48,37, -198,28,248,80,158,48,34,193,249,80,158,49,35,248,80,158,50,36,195,27,248, -80,158,51,37,196,28,248,80,158,51,38,193,248,80,158,51,39,193,11,11,11, -28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,6,50,50,98, -97,100,32,115,121,110,116,97,120,32,40,109,117,108,116,105,112,108,101,32,101, -120,112,114,101,115,115,105,111,110,115,32,97,102,116,101,114,32,105,100,101,110, -116,105,102,105,101,114,41,27,28,248,80,158,46,34,196,249,80,158,47,35,248, -80,158,48,36,198,27,248,80,158,49,37,199,28,248,80,158,49,34,193,27,28, -248,22,149,3,194,193,199,249,80,158,51,35,248,80,158,52,36,196,27,248,80, -158,53,37,197,250,22,152,3,198,195,198,11,11,28,192,27,248,22,58,194,27, -248,22,84,195,27,248,22,86,196,6,31,31,98,97,100,32,115,121,110,116,97, -120,32,40,105,108,108,101,103,97,108,32,117,115,101,32,111,102,32,96,46,39, -41,250,22,177,8,11,2,8,198,201,250,80,159,41,8,41,35,200,201,202,250, -80,159,38,8,41,35,197,198,199,80,159,34,8,42,35,83,158,34,16,2,89, -162,34,37,54,2,7,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35, -248,80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,27, -28,248,22,149,3,194,193,198,249,80,158,41,35,248,80,158,42,36,196,27,248, -80,158,43,37,197,250,22,152,3,198,195,198,11,11,28,192,27,248,22,58,194, -27,248,22,84,195,27,248,22,86,196,28,248,80,158,39,34,194,250,80,159,41, -8,40,35,200,201,202,251,22,177,8,11,6,10,10,98,97,100,32,115,121,110, -116,97,120,202,197,250,80,159,38,8,40,35,197,198,199,80,159,34,8,41,35, -83,158,34,16,2,89,162,34,37,8,27,2,7,223,0,27,28,248,80,158,36, -34,195,249,80,158,37,35,248,80,158,38,36,197,27,248,80,158,39,37,198,28, -248,80,158,39,34,193,27,28,248,22,149,3,194,193,198,249,80,158,41,35,248, -80,158,42,36,196,27,248,80,158,43,37,197,250,22,152,3,198,195,198,11,11, -28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,91,159,36,11, -90,161,36,34,11,249,80,159,42,8,38,35,202,197,87,95,28,248,80,158,41, -38,195,12,250,22,177,8,11,6,50,50,98,97,100,32,115,121,110,116,97,120, -32,40,105,108,108,101,103,97,108,32,117,115,101,32,111,102,32,96,46,39,32, -102,111,114,32,112,114,111,99,101,100,117,114,101,32,98,111,100,121,41,203,28, -248,80,158,41,47,195,250,22,177,8,11,6,46,46,98,97,100,32,115,121,110, -116,97,120,32,40,110,111,32,101,120,112,114,101,115,115,105,111,110,115,32,102, -111,114,32,112,114,111,99,101,100,117,114,101,32,98,111,100,121,41,203,12,27, -249,22,152,3,20,15,159,43,45,49,204,27,249,22,152,3,20,15,159,44,46, -49,196,27,249,22,152,3,20,15,159,45,47,49,248,199,200,249,80,158,45,41, -205,27,250,22,67,199,200,198,252,80,158,51,42,20,15,159,51,48,49,21,95, -2,9,2,10,2,11,248,22,84,198,248,22,58,198,248,22,86,198,250,22,177, -8,11,2,8,197,80,159,34,8,40,35,83,158,34,16,2,89,162,34,36,50, -2,12,223,0,27,249,22,152,3,20,15,159,37,43,49,197,27,28,248,80,158, -37,34,194,249,80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197, -250,22,152,3,199,195,199,11,28,192,27,248,22,58,194,27,248,22,59,195,28, -248,80,158,39,45,194,249,22,7,195,249,80,159,42,8,37,35,201,202,250,80, -159,41,8,39,35,198,201,200,250,80,159,39,8,39,35,196,199,198,80,159,34, -8,38,35,83,158,34,16,2,89,162,34,37,57,2,7,223,0,27,28,248,80, -158,36,34,195,249,80,158,37,44,27,248,80,158,39,36,198,28,248,80,158,39, -34,193,249,80,158,40,35,248,80,158,41,36,195,27,248,80,158,42,37,196,248, -22,65,250,22,152,3,199,196,199,11,27,248,80,158,39,37,198,250,22,152,3, -200,195,200,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196, -91,159,36,11,90,161,36,34,11,249,80,159,42,8,38,35,203,27,249,22,67, -200,201,251,80,158,47,42,20,15,159,47,44,49,21,94,2,13,2,14,248,22, -59,197,248,22,58,197,27,249,80,159,43,8,37,35,204,203,249,22,7,195,89, -162,34,35,45,9,224,4,2,248,194,248,22,65,248,195,197,27,28,248,80,158, -37,34,196,249,80,158,38,35,248,80,158,39,36,198,27,248,80,158,40,37,199, -250,22,152,3,201,195,201,11,28,192,27,248,22,58,194,27,248,22,59,195,251, -22,177,8,11,6,82,82,98,97,100,32,115,121,110,116,97,120,32,40,110,111, -116,32,97,110,32,105,100,101,110,116,105,102,105,101,114,32,102,111,114,32,112, -114,111,99,101,100,117,114,101,32,110,97,109,101,44,32,97,110,100,32,110,111, -116,32,97,32,110,101,115,116,101,100,32,112,114,111,99,101,100,117,114,101,32, -102,111,114,109,41,203,197,250,22,177,8,11,2,8,198,80,159,34,8,39,35, -83,158,34,16,2,89,162,8,100,36,8,28,2,15,223,0,91,159,36,11,90, -161,36,34,11,27,249,22,152,3,20,15,159,39,35,49,199,27,28,248,80,158, -39,34,194,249,80,158,40,35,248,80,158,41,36,196,27,248,80,158,42,37,197, -28,248,80,158,42,38,193,248,80,158,42,39,193,11,11,28,192,27,248,22,58, -194,27,248,22,59,195,249,22,7,248,22,159,3,249,80,158,45,40,20,15,159, -45,36,49,197,89,162,34,35,52,9,225,8,9,2,27,249,22,152,3,20,15, -159,39,37,49,198,249,80,158,39,41,196,27,249,22,67,197,198,251,80,158,44, -42,20,15,159,44,38,49,21,94,2,16,2,17,248,22,59,197,248,22,58,197, -27,28,248,80,158,40,34,195,249,80,158,41,35,248,80,158,42,36,197,27,248, -80,158,43,37,198,91,159,37,11,90,161,37,34,11,250,80,158,48,43,198,35, -11,28,194,27,28,248,22,149,3,197,196,201,249,80,158,48,44,28,248,80,158, -49,38,196,248,22,65,248,80,158,50,39,197,11,250,22,152,3,197,199,197,11, -11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,249,22,7, -248,22,159,3,27,249,22,67,198,199,249,80,158,48,40,20,15,159,48,39,49, -249,22,71,248,22,59,197,250,80,158,53,42,20,15,159,53,40,49,21,93,2, -18,248,22,58,200,89,162,34,35,55,9,226,10,11,2,3,27,249,22,152,3, -20,15,159,40,41,49,199,249,80,158,40,41,197,27,250,22,67,200,199,198,251, -80,158,45,42,20,15,159,45,42,49,21,94,2,19,2,20,249,22,71,248,22, -84,199,248,22,58,199,248,22,86,197,250,22,177,8,11,2,8,197,87,95,249, -22,3,89,162,34,35,46,9,224,4,5,28,248,80,158,36,45,195,12,251,22, -177,8,11,6,40,40,110,111,116,32,97,110,32,105,100,101,110,116,105,102,105, -101,114,32,102,111,114,32,112,114,111,99,101,100,117,114,101,32,97,114,103,117, -109,101,110,116,196,198,194,27,248,80,158,38,46,194,28,192,251,22,177,8,11, -6,29,29,100,117,112,108,105,99,97,116,101,32,97,114,103,117,109,101,110,116, -32,105,100,101,110,116,105,102,105,101,114,200,196,12,193,80,159,34,8,37,35, -27,89,162,8,36,35,41,2,21,223,1,89,162,34,35,57,9,224,0,1,87, -94,28,249,22,77,247,22,174,13,21,93,70,101,120,112,114,101,115,115,105,111, -110,250,22,177,8,11,6,36,36,110,111,116,32,97,108,108,111,119,101,100,32, -105,110,32,97,110,32,101,120,112,114,101,115,115,105,111,110,32,99,111,110,116, -101,120,116,197,12,27,249,22,152,3,20,15,159,38,34,49,197,27,28,248,80, -158,38,34,194,249,80,158,39,35,248,80,158,40,36,196,27,248,80,158,41,37, -197,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,27,248, -80,158,44,37,196,28,248,80,158,44,34,193,249,80,158,45,44,248,80,158,46, -36,195,248,80,158,46,48,248,80,158,47,37,196,11,11,11,28,192,27,248,22, -58,194,27,248,22,84,195,27,248,22,86,196,28,248,80,158,41,45,194,27,249, -22,152,3,20,15,159,43,50,49,200,249,80,158,43,41,202,27,250,22,67,198, -199,200,252,80,158,49,42,20,15,159,49,51,49,21,95,2,22,2,23,2,24, -248,22,58,198,248,22,86,198,248,22,84,198,250,80,159,43,8,42,35,199,202, -200,250,80,159,40,8,42,35,196,199,197,250,22,7,248,196,20,15,159,39,52, -49,248,196,20,15,159,39,53,49,248,196,20,15,159,39,54,49,39,20,100,159, -40,16,15,2,82,2,83,2,84,2,85,2,86,2,87,30,2,26,2,27,2, -2,88,2,89,30,2,25,74,115,112,108,105,116,45,115,116,120,45,108,105,115, -116,3,2,90,2,91,30,2,29,1,26,99,104,101,99,107,45,100,117,112,108, -105,99,97,116,101,45,105,100,101,110,116,105,102,105,101,114,0,30,2,25,69, -115,116,120,45,110,117,108,108,63,10,2,92,16,21,33,98,33,103,33,105,33, -106,33,107,33,109,33,111,33,112,33,113,33,114,33,116,33,118,33,119,33,120, -33,121,33,122,33,124,33,125,33,127,33,128,2,33,129,2,11,16,5,93,2, -4,87,95,83,158,34,16,2,89,162,34,36,52,2,7,223,0,27,28,248,80, -158,36,34,195,249,80,158,37,39,248,80,158,38,36,197,27,248,80,158,39,38, -198,28,248,80,158,39,40,193,248,80,158,39,41,193,11,11,28,192,27,248,22, -58,194,27,248,22,59,195,249,80,158,39,42,199,250,80,158,42,43,20,15,159, -42,36,45,21,93,2,61,249,22,2,80,159,44,8,28,35,199,250,22,177,8, -11,2,8,197,80,159,34,8,29,35,83,158,34,16,2,89,162,35,35,45,9, -223,0,250,80,158,37,43,20,15,159,37,37,45,21,93,2,62,248,22,58,197, -80,159,34,8,28,35,89,162,34,35,8,28,9,223,0,27,247,22,174,13,87, -94,28,249,22,77,194,21,95,66,109,111,100,117,108,101,2,63,69,116,111,112, -45,108,101,118,101,108,12,250,22,177,8,11,6,51,51,97,108,108,111,119,101, -100,32,111,110,108,121,32,97,116,32,116,104,101,32,116,111,112,45,108,101,118, -101,108,32,111,114,32,97,32,109,111,100,117,108,101,32,116,111,112,45,108,101, -118,101,108,197,27,249,22,152,3,20,15,159,38,34,45,197,27,28,248,80,158, -38,34,194,249,80,158,39,35,248,80,158,40,36,196,248,80,158,40,37,248,80, -158,41,38,197,11,28,192,20,15,159,37,35,45,27,28,248,80,158,39,34,195, -249,80,158,40,39,248,80,158,41,36,197,27,248,80,158,42,38,198,28,248,80, -158,42,34,193,249,80,158,43,35,248,80,158,44,36,195,248,80,158,44,37,248, -80,158,45,38,196,11,11,28,192,27,248,22,58,194,27,248,22,59,195,28,249, -22,148,8,199,2,63,249,80,159,42,8,29,35,198,201,27,250,22,163,8,196, -201,248,22,159,3,20,15,159,45,38,45,27,249,22,152,3,20,15,159,44,39, -45,195,27,28,248,80,158,44,34,194,28,27,248,80,158,45,36,195,28,248,80, -158,45,44,193,28,249,22,167,3,194,20,15,159,46,40,45,9,11,11,27,248, -80,158,45,38,195,28,248,80,158,45,40,193,248,80,158,45,41,193,11,11,11, -28,192,250,80,158,46,43,20,15,159,46,41,45,21,93,2,64,195,27,28,248, -80,158,45,34,195,28,27,248,80,158,46,36,196,28,248,80,158,46,44,193,28, -249,22,167,3,194,20,15,159,47,42,45,9,11,11,27,248,80,158,46,38,196, -28,248,80,158,46,34,193,249,80,158,47,35,27,248,80,158,49,36,196,28,248, -80,158,49,40,193,248,22,65,248,80,158,50,41,194,11,27,248,80,158,49,38, -196,28,248,80,158,49,34,193,249,80,158,50,35,248,80,158,51,36,195,248,80, -158,51,37,248,80,158,52,38,196,11,11,11,11,28,192,27,248,22,58,194,27, -248,22,59,195,27,249,22,67,196,195,251,80,158,51,43,20,15,159,51,43,45, -21,94,2,65,2,66,248,22,58,197,248,22,59,197,27,28,248,80,158,46,34, -196,28,27,248,80,158,47,36,197,28,248,80,158,47,44,193,28,249,22,167,3, -194,20,15,159,48,44,45,9,11,11,27,248,80,158,47,38,197,28,248,80,158, -47,40,193,248,80,158,47,41,193,11,11,11,28,192,250,80,158,48,43,20,15, -159,48,45,45,21,93,2,67,195,27,28,248,80,158,47,34,197,28,27,248,80, -158,48,36,198,28,248,80,158,48,44,193,28,249,22,167,3,194,20,15,159,49, -46,45,9,11,11,27,248,80,158,48,38,198,28,248,80,158,48,40,193,248,80, -158,48,41,193,11,11,11,28,192,250,80,158,49,43,20,15,159,49,47,45,21, -93,2,68,195,27,28,248,80,158,48,34,198,28,27,248,80,158,49,36,199,28, -248,80,158,49,44,193,28,249,22,167,3,194,20,15,159,50,48,45,9,11,11, -27,248,80,158,49,38,199,28,248,80,158,49,34,193,249,80,158,50,35,27,248, -80,158,52,36,196,28,248,80,158,52,40,193,248,22,65,248,80,158,53,41,194, -11,27,248,80,158,52,38,196,28,248,80,158,52,34,193,249,80,158,53,35,248, -80,158,54,36,195,248,80,158,54,37,248,80,158,55,38,196,11,11,11,11,28, -192,27,248,22,58,194,27,248,22,59,195,250,22,177,8,11,6,54,54,115,121, -110,116,97,120,32,100,101,102,105,110,105,116,105,111,110,115,32,110,111,116,32, -97,108,108,111,119,101,100,32,119,105,116,104,105,110,32,98,101,103,105,110,45, -102,111,114,45,115,121,110,116,97,120,204,250,80,158,50,43,20,15,159,50,49, -45,21,93,2,69,200,249,80,159,40,8,29,35,196,199,34,20,100,159,36,16, -11,2,82,2,90,2,84,2,92,2,85,2,83,2,86,2,87,2,88,2,89, -2,91,16,16,33,132,2,33,134,2,33,136,2,33,137,2,33,141,2,33,144, -2,33,145,2,33,147,2,33,148,2,33,150,2,33,151,2,33,153,2,33,154, -2,33,156,2,33,157,2,33,159,2,11,9,93,2,81,96,2,81,2,29,2, -25,2,31,0}; - EVAL_ONE_SIZED_STR((char *)expr, 6807); - } - { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,182,1,0,0,1,0,0,6,0,9,0,24,0, -37,0,46,0,56,0,71,0,77,0,103,0,112,0,137,0,159,0,187,0,207, -0,225,0,239,0,0,1,18,1,49,1,78,1,103,1,132,1,166,1,198,1, -216,1,250,1,10,2,36,2,65,2,83,2,115,2,134,2,163,2,186,2,196, -2,208,2,227,2,232,2,238,2,245,2,250,2,253,2,11,3,24,3,35,3, -50,3,60,3,67,3,74,3,81,3,88,3,95,3,102,3,115,3,121,3,131, -3,157,3,162,3,171,3,186,3,210,3,218,3,226,3,243,3,245,3,255,3, -1,4,3,4,13,4,19,4,29,4,39,4,46,4,53,4,60,4,67,4,74, -4,81,4,88,4,95,4,98,4,100,4,104,4,107,4,110,4,117,4,124,4, -131,4,138,4,145,4,152,4,156,4,159,4,162,4,184,4,194,4,204,4,214, -4,224,4,234,4,244,4,246,4,0,5,10,5,17,5,24,5,31,5,38,5, -45,5,52,5,59,5,66,5,73,5,77,5,82,5,86,5,89,5,91,5,96, -5,103,5,110,5,117,5,124,5,131,5,138,5,166,5,177,5,187,5,197,5, -199,5,209,5,214,5,217,5,226,5,235,5,245,5,255,5,9,6,15,6,22, -6,32,6,42,6,49,6,56,6,63,6,70,6,77,6,84,6,108,6,137,6, -141,6,147,6,152,6,156,6,166,6,176,6,186,6,190,6,200,6,207,6,214, -6,221,6,231,6,241,6,248,6,255,6,6,7,13,7,20,7,27,7,34,7, -41,7,48,7,55,7,62,7,69,7,76,7,86,7,91,7,104,7,112,7,116, -7,147,7,149,7,177,7,182,7,187,7,193,7,203,7,213,7,223,7,233,7, -244,7,255,7,9,8,16,8,23,8,30,8,41,8,46,8,51,8,54,8,61, -8,68,8,75,8,82,8,89,8,99,8,109,8,116,8,123,8,130,8,140,8, -150,8,160,8,170,8,177,8,184,8,191,8,201,8,207,8,212,8,222,8,229, -8,236,8,243,8,250,8,8,9,13,9,19,9,29,9,39,9,46,9,53,9, -60,9,67,9,74,9,81,9,88,9,95,9,102,9,109,9,113,9,118,9,123, -9,136,9,146,9,156,9,166,9,176,9,183,9,190,9,200,9,210,9,214,9, -219,9,222,9,240,9,242,9,247,9,0,10,14,10,26,10,38,10,50,10,64, -10,80,10,86,10,100,10,114,10,130,10,136,10,158,10,88,11,104,11,160,11, -178,11,197,11,253,11,16,12,32,12,52,12,58,12,74,12,87,12,94,12,141, -12,158,12,168,12,241,12,0,13,86,13,109,13,142,13,254,13,39,14,72,14, -90,14,105,14,111,14,132,14,153,14,169,14,208,14,26,15,45,15,52,15,89, -15,97,15,105,15,126,15,148,15,155,15,163,15,189,15,200,15,216,15,226,15, -236,15,251,15,1,16,26,16,131,16,197,16,223,16,29,17,59,17,70,17,136, -17,162,17,230,17,250,17,10,18,26,18,79,18,96,18,106,18,113,18,120,18, -127,18,134,18,141,18,158,18,174,18,242,18,2,19,38,19,92,19,111,19,118, -19,126,19,134,19,191,19,226,19,3,20,71,20,92,20,109,20,125,20,216,20, -15,21,22,21,29,21,36,21,43,21,50,21,76,21,93,21,122,21,141,21,212, -21,228,21,5,22,59,22,81,22,88,22,96,22,103,22,111,22,209,22,216,22, -223,22,230,22,93,23,106,23,119,23,135,23,168,23,227,23,248,23,51,24,72, -24,89,24,105,24,157,24,179,24,235,24,243,24,250,24,2,25,96,25,117,25, -133,25,166,25,234,25,255,25,67,26,83,26,100,26,116,26,199,26,228,26,245, -26,5,27,105,27,131,27,164,27,181,27,197,27,9,28,25,28,58,28,112,28, -131,28,138,28,146,28,203,28,252,28,9,29,46,29,79,29,147,29,168,29,185, -29,201,29,13,30,141,30,0,0,179,67,0,0,65,98,101,103,105,110,29,11, -11,74,115,116,114,117,99,116,58,112,114,111,109,105,115,101,72,109,97,107,101, -45,112,114,111,109,105,115,101,68,112,114,111,109,105,115,101,63,69,112,114,111, -109,105,115,101,45,112,74,115,101,116,45,112,114,111,109,105,115,101,45,112,33, -65,102,111,114,99,101,1,24,99,117,114,114,101,110,116,45,112,97,114,97,109, -101,116,101,114,105,122,97,116,105,111,110,68,35,37,112,97,114,97,109,122,1, -23,101,120,116,101,110,100,45,112,97,114,97,109,101,116,101,114,105,122,97,116, -105,111,110,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110, -45,107,101,121,1,26,99,97,108,108,45,119,105,116,104,45,112,97,114,97,109, -101,116,101,114,105,122,97,116,105,111,110,79,115,116,114,117,99,116,58,98,114, -101,97,107,45,112,97,114,97,109,122,77,109,97,107,101,45,98,114,101,97,107, -45,112,97,114,97,109,122,73,98,114,101,97,107,45,112,97,114,97,109,122,63, -76,98,114,101,97,107,45,112,97,114,97,109,122,45,114,101,102,77,98,114,101, -97,107,45,112,97,114,97,109,122,45,115,101,116,33,1,29,115,116,114,117,99, -116,58,98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122,97,116, -105,111,110,1,27,109,97,107,101,45,98,114,101,97,107,45,112,97,114,97,109, -101,116,101,114,105,122,97,116,105,111,110,1,23,98,114,101,97,107,45,112,97, -114,97,109,101,116,101,114,105,122,97,116,105,111,110,63,1,27,98,114,101,97, -107,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45,99,101, -108,108,1,32,115,101,116,45,98,114,101,97,107,45,112,97,114,97,109,101,116, -101,114,105,122,97,116,105,111,110,45,99,101,108,108,33,1,30,99,117,114,114, -101,110,116,45,98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122, -97,116,105,111,110,77,98,114,101,97,107,45,101,110,97,98,108,101,100,45,107, -101,121,1,32,99,97,108,108,45,119,105,116,104,45,98,114,101,97,107,45,112, -97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,75,99,104,101,99,107, -45,102,111,114,45,98,114,101,97,107,1,24,115,101,108,101,99,116,45,104,97, -110,100,108,101,114,47,110,111,45,98,114,101,97,107,115,1,27,115,101,108,101, -99,116,45,104,97,110,100,108,101,114,47,98,114,101,97,107,115,45,97,115,45, -105,115,77,102,97,108,115,101,45,116,104,114,101,97,100,45,99,101,108,108,1, -30,99,104,101,99,107,45,119,105,116,104,45,104,97,110,100,108,101,114,115,45, -105,110,45,99,111,110,116,101,120,116,78,104,97,110,100,108,101,114,45,112,114, -111,109,112,116,45,107,101,121,1,27,99,97,108,108,45,119,105,116,104,45,101, -120,99,101,112,116,105,111,110,45,104,97,110,100,108,101,114,1,21,101,120,99, -101,112,116,105,111,110,45,104,97,110,100,108,101,114,45,107,101,121,69,102,108, -117,105,100,45,108,101,116,71,115,101,116,33,45,118,97,108,117,101,115,78,112, -97,114,97,109,101,116,101,114,105,122,101,45,98,114,101,97,107,64,99,97,115, -101,65,100,101,108,97,121,66,108,101,116,47,99,99,64,116,105,109,101,62,100, -111,73,119,105,116,104,45,104,97,110,100,108,101,114,115,72,112,97,114,97,109, -101,116,101,114,105,122,101,70,108,101,116,45,115,116,114,117,99,116,74,119,105, -116,104,45,104,97,110,100,108,101,114,115,42,69,99,97,115,101,45,116,101,115, -116,3,1,4,103,54,57,54,3,1,4,103,54,57,53,3,1,4,103,54,57, -56,3,1,4,103,54,57,55,3,1,4,103,55,48,48,3,1,4,103,54,57, -57,6,10,10,98,97,100,32,115,121,110,116,97,120,65,35,37,115,116,120,69, -35,37,115,116,120,99,97,115,101,1,24,97,112,112,108,121,45,112,97,116,116, -101,114,110,45,115,117,98,115,116,105,116,117,116,101,64,104,101,114,101,68,35, -37,100,101,102,105,110,101,74,35,37,115,109,97,108,108,45,115,99,104,101,109, -101,1,22,98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122,97, -116,105,111,110,67,112,114,111,109,105,115,101,67,35,37,113,113,115,116,120,76, -35,37,115,116,120,99,97,115,101,45,115,99,104,101,109,101,61,120,3,1,7, -101,110,118,51,56,51,49,61,95,61,107,3,1,7,101,110,118,51,56,51,50, -65,113,117,111,116,101,3,1,7,101,110,118,51,56,52,54,3,1,7,101,110, -118,51,56,52,55,3,1,4,103,55,51,49,3,1,4,103,55,51,52,3,1, -4,103,55,51,51,3,1,4,103,55,51,50,3,1,4,103,55,51,54,3,1, -4,103,55,51,53,3,1,4,103,55,51,56,3,1,4,103,55,51,55,62,105, -102,61,118,63,46,46,46,62,101,49,62,101,50,3,1,4,103,55,51,57,3, -1,4,103,55,52,48,3,1,4,103,55,52,50,3,1,4,103,55,52,49,3, -1,4,103,55,52,52,3,1,4,103,55,52,51,63,108,101,116,62,99,49,62, -99,50,1,20,99,97,116,99,104,45,101,108,108,105,112,115,105,115,45,101,114, -114,111,114,3,1,7,101,110,118,51,56,54,50,3,1,7,101,110,118,51,56, -54,51,3,1,7,101,110,118,51,56,55,56,3,1,7,101,110,118,51,56,55, -57,3,1,7,101,110,118,51,56,57,56,3,1,7,101,110,118,51,56,57,57, -61,114,3,1,7,101,110,118,51,57,50,51,3,1,7,101,110,118,51,57,50, -52,3,1,4,103,55,54,54,3,1,4,103,55,54,53,3,1,4,103,55,54, -48,3,1,4,103,55,53,57,3,1,4,103,55,54,52,3,1,4,103,55,54, -49,3,1,4,103,55,54,51,3,1,4,103,55,54,50,66,100,111,108,111,111, -112,63,118,97,114,64,105,110,105,116,63,110,111,116,62,101,48,61,99,64,115, -116,101,112,3,1,4,103,55,55,50,3,1,4,103,55,55,49,3,1,4,103, -55,54,56,3,1,4,103,55,54,55,3,1,4,103,55,55,48,3,1,4,103, -55,54,57,1,26,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98, -106,101,99,116,47,115,104,97,112,101,70,35,37,119,105,116,104,45,115,116,120, -3,1,7,101,110,118,52,48,49,53,3,1,7,101,110,118,52,48,49,54,61, -115,3,1,7,101,110,118,52,48,51,51,64,100,101,115,116,29,11,11,68,104, -101,114,101,45,115,116,120,3,1,6,101,110,118,52,53,56,3,1,7,101,110, -118,52,48,54,54,3,1,7,101,110,118,52,48,55,51,3,1,7,101,110,118, -52,48,56,48,65,95,101,108,115,101,3,1,4,103,55,55,53,3,1,7,101, -110,118,52,48,57,53,3,1,7,101,110,118,52,48,57,54,66,108,97,109,98, -100,97,3,1,4,103,55,56,54,3,1,4,103,55,56,53,3,1,4,103,55, -57,48,3,1,4,103,55,57,50,3,1,4,103,55,57,49,1,22,119,105,116, -104,45,99,111,110,116,105,110,117,97,116,105,111,110,45,109,97,114,107,1,27, -99,111,110,116,105,110,117,97,116,105,111,110,45,109,97,114,107,45,115,101,116, -45,102,105,114,115,116,63,112,47,118,65,101,120,112,114,49,64,101,120,112,114, -63,115,116,120,3,1,7,101,110,118,52,49,49,51,3,1,7,101,110,118,52, -49,49,52,3,1,7,101,110,118,52,49,51,51,63,118,97,108,3,1,7,101, -110,118,52,49,51,52,3,1,4,103,55,57,55,3,1,4,103,55,57,57,3, -1,4,103,55,57,56,3,1,7,101,110,118,52,49,55,50,3,1,7,101,110, -118,52,49,55,51,3,1,4,103,56,50,53,3,1,4,103,56,50,52,3,1, -4,103,56,50,49,3,1,4,103,56,50,48,3,1,4,103,56,50,51,3,1, -4,103,56,50,50,3,1,4,103,56,49,48,3,1,4,103,56,48,57,3,1, -4,103,56,51,48,3,1,4,103,56,50,55,3,1,4,103,56,50,54,3,1, -4,103,56,50,57,3,1,4,103,56,50,56,69,112,114,101,100,45,110,97,109, -101,64,112,114,101,100,72,104,97,110,100,108,101,114,45,110,97,109,101,67,104, -97,110,100,108,101,114,63,98,112,122,1,29,99,97,108,108,45,119,105,116,104, -45,99,111,110,116,105,110,117,97,116,105,111,110,45,112,114,111,109,112,116,61, -101,1,26,97,98,111,114,116,45,99,117,114,114,101,110,116,45,99,111,110,116, -105,110,117,97,116,105,111,110,64,108,105,115,116,64,99,111,110,115,65,116,104, -117,110,107,3,1,7,101,110,118,52,49,57,54,3,1,7,101,110,118,52,49, -57,55,3,1,7,101,110,118,52,50,49,54,3,1,7,101,110,118,52,50,49, -55,3,1,8,119,115,116,109,112,56,49,49,3,1,8,119,115,116,109,112,56, -49,50,3,1,7,101,110,118,52,50,50,57,3,1,4,103,56,52,52,3,1, -4,103,56,52,51,3,1,4,103,56,52,55,70,108,101,116,45,118,97,108,117, -101,115,64,116,101,109,112,64,115,101,116,33,62,105,100,3,1,4,103,56,52, -54,3,1,4,103,56,52,53,3,1,4,103,56,51,57,3,1,4,103,56,52, -57,3,1,4,103,56,52,56,3,1,7,101,110,118,52,50,56,56,3,1,7, -101,110,118,52,50,56,57,3,1,4,103,56,51,49,3,1,4,103,56,51,50, -3,1,4,103,56,51,51,3,1,7,101,110,118,52,51,48,53,3,1,7,101, -110,118,52,51,48,54,3,1,7,101,110,118,52,51,52,49,3,1,7,101,110, -118,52,51,52,50,3,1,4,103,56,53,52,3,1,4,103,56,53,54,3,1, -4,103,56,53,53,3,1,7,101,110,118,52,51,53,56,65,98,111,100,121,49, -64,98,111,100,121,3,1,7,101,110,118,52,51,53,57,3,1,4,103,56,54, -51,3,1,4,103,56,54,50,3,1,4,103,56,54,53,3,1,4,103,56,54, -52,73,100,101,102,105,110,101,45,115,116,114,117,99,116,64,98,97,115,101,65, -102,105,101,108,100,3,1,7,101,110,118,52,51,56,48,3,1,7,101,110,118, -52,51,56,49,3,1,4,103,56,56,49,3,1,4,103,56,56,50,3,1,4, -103,56,56,48,3,1,4,103,56,55,57,3,1,4,103,56,55,53,3,1,4, -103,56,55,52,3,1,4,103,56,56,56,3,1,4,103,56,56,53,3,1,4, -103,56,56,55,3,1,4,103,56,56,54,63,116,109,112,64,115,119,97,112,64, -110,97,109,101,72,100,121,110,97,109,105,99,45,119,105,110,100,3,1,7,101, -110,118,52,52,48,51,3,1,7,101,110,118,52,52,48,52,3,1,7,101,110, -118,52,52,50,51,3,1,7,101,110,118,52,52,50,52,3,1,4,103,56,57, -51,3,1,4,103,56,57,50,3,1,7,101,110,118,52,52,54,52,3,1,7, -101,110,118,52,52,54,53,63,99,112,117,64,117,115,101,114,62,103,99,6,15, -15,105,110,115,112,101,99,116,111,114,32,111,114,32,35,102,61,112,64,99,101, -108,108,68,35,37,107,101,114,110,101,108,30,2,55,69,115,116,120,45,112,97, -105,114,63,11,30,2,55,67,99,111,110,115,47,35,102,1,30,2,55,67,115, -116,120,45,99,97,114,5,30,2,55,67,115,116,120,45,99,100,114,6,30,2, -55,69,97,112,112,101,110,100,47,35,102,0,30,2,55,71,115,116,120,45,110, -117,108,108,47,35,102,9,30,2,56,2,57,0,30,2,55,69,115,116,120,45, -108,105,115,116,63,8,30,2,55,69,115,116,120,45,62,108,105,115,116,4,16, -4,11,11,2,65,3,1,7,101,110,118,51,56,50,52,95,8,193,11,16,0, -97,10,35,11,95,159,2,63,9,11,159,2,64,9,11,159,2,55,9,11,16, -0,97,10,34,11,95,159,2,10,9,11,159,2,59,9,11,159,2,60,9,11, -16,82,2,35,2,2,2,36,2,2,2,29,2,2,2,15,2,2,2,13,2, -2,2,38,2,2,2,16,2,2,2,61,2,2,2,21,2,2,2,26,2,2, -2,23,2,2,2,3,2,2,2,17,2,2,2,18,2,2,2,33,2,2,2, -19,2,2,2,6,2,2,2,24,2,2,2,28,2,2,2,46,2,2,2,5, -2,2,2,7,2,2,2,42,2,2,2,20,2,2,2,30,2,2,2,40,2, -2,2,37,2,2,2,45,2,2,2,47,2,2,2,22,2,2,2,32,2,2, -2,4,2,2,2,14,2,2,2,39,2,2,2,62,2,2,2,41,2,2,2, -43,2,2,2,44,2,2,2,8,2,2,2,31,2,2,2,9,2,2,18,97, -2,58,8,146,4,8,145,4,8,144,4,8,143,4,98,8,146,4,8,145,4, -8,144,4,8,143,4,16,8,11,11,3,1,4,103,54,57,50,3,1,4,103, -54,57,51,3,1,4,103,54,57,52,2,66,2,66,2,66,16,6,11,11,2, -67,2,68,2,69,2,69,18,158,96,10,63,101,113,63,2,48,94,2,70,2, -49,8,148,4,18,158,96,10,64,101,113,118,63,2,50,94,2,70,2,51,8, -148,4,98,8,146,4,8,145,4,8,144,4,8,143,4,16,8,11,11,3,1, -4,103,54,56,57,3,1,4,103,54,57,48,3,1,4,103,54,57,49,2,71, -2,71,2,71,16,6,11,11,2,67,2,68,2,72,2,72,18,158,96,10,64, -109,101,109,118,2,52,94,2,70,2,53,8,151,4,30,2,55,71,105,100,101, -110,116,105,102,105,101,114,63,2,30,68,35,37,115,116,120,108,111,99,68,114, -101,108,111,99,97,116,101,0,30,2,56,2,95,1,16,4,11,11,2,65,3, -1,7,101,110,118,51,56,53,55,96,8,146,4,8,145,4,8,144,4,8,156, -4,18,158,2,58,8,157,4,98,8,146,4,8,145,4,8,144,4,8,156,4, -16,6,11,11,3,1,4,103,55,50,57,3,1,4,103,55,51,48,2,96,2, -96,16,6,11,11,2,67,2,82,2,97,2,97,18,158,96,10,2,1,2,73, -93,64,99,111,110,100,8,159,4,18,158,64,101,108,115,101,8,157,4,98,8, -146,4,8,145,4,8,144,4,8,156,4,16,10,11,11,3,1,4,103,55,50, -53,3,1,4,103,55,50,54,3,1,4,103,55,50,55,3,1,4,103,55,50, -56,2,98,2,98,2,98,2,98,16,10,11,11,2,67,2,82,2,84,2,85, -2,99,2,99,2,99,2,99,18,158,161,10,2,1,2,74,2,75,2,76,8, -162,4,98,8,146,4,8,145,4,8,144,4,8,156,4,16,12,11,11,3,1, -4,103,55,50,48,3,1,4,103,55,50,49,3,1,4,103,55,50,50,3,1, -4,103,55,50,51,3,1,4,103,55,50,52,2,100,2,100,2,100,2,100,2, -100,16,12,11,11,2,67,2,82,2,68,2,84,2,85,2,101,2,101,2,101, -2,101,2,101,18,158,96,10,2,81,95,2,47,2,77,2,78,159,2,1,2, -79,2,80,8,164,4,18,16,2,95,2,83,93,8,156,51,16,4,11,11,2, -102,3,1,7,101,110,118,51,57,49,49,95,9,8,156,51,2,56,98,8,146, -4,8,145,4,8,144,4,8,156,4,16,16,11,11,3,1,4,103,55,49,51, -3,1,4,103,55,49,52,3,1,4,103,55,49,53,3,1,4,103,55,49,54, -3,1,4,103,55,49,55,3,1,4,103,55,49,56,3,1,4,103,55,49,57, -2,103,2,103,2,103,2,103,2,103,2,103,2,103,16,16,11,11,2,67,2, -82,2,68,2,84,2,85,2,93,2,94,2,104,2,104,2,104,2,104,2,104, -2,104,2,104,18,158,96,10,2,92,93,94,2,65,2,86,96,2,81,95,2, -47,2,65,2,87,159,2,1,2,88,2,89,160,2,38,2,65,2,90,2,91, -8,167,4,18,16,2,95,2,83,93,8,161,51,16,4,11,11,2,102,3,1, -7,101,110,118,51,57,52,48,95,9,8,161,51,2,56,30,2,55,73,115,116, -120,45,99,104,101,99,107,47,101,115,99,7,30,2,55,70,115,116,120,45,114, -111,116,97,116,101,12,30,2,56,2,126,2,30,2,127,76,119,105,116,104,45, -115,121,110,116,97,120,45,102,97,105,108,3,16,4,11,11,66,111,114,105,103, -45,120,3,1,7,101,110,118,51,57,57,56,18,97,2,58,8,146,4,8,145, -4,8,144,4,8,174,4,16,16,11,11,2,67,2,114,2,115,2,119,2,117, -2,84,2,118,2,129,2,2,129,2,2,129,2,2,129,2,2,129,2,2,129, -2,2,129,2,16,16,11,11,3,1,4,103,55,52,53,3,1,4,103,55,52, -54,3,1,4,103,55,52,55,3,1,4,103,55,52,56,3,1,4,103,55,52, -57,3,1,4,103,55,53,48,3,1,4,103,55,53,49,2,128,2,2,128,2, -2,128,2,2,128,2,2,128,2,2,128,2,2,128,2,98,8,146,4,8,145, -4,8,144,4,8,174,4,8,177,4,8,176,4,18,158,2,58,8,178,4,18, -100,2,58,8,146,4,8,145,4,8,144,4,8,174,4,8,177,4,8,176,4, -16,6,11,11,2,82,2,130,2,2,131,2,2,131,2,18,158,2,132,2,8, -178,4,18,158,2,132,2,8,178,4,16,4,11,11,3,1,4,103,55,53,54, -3,1,7,101,110,118,52,48,53,53,99,8,146,4,8,145,4,8,144,4,8, -174,4,8,177,4,8,176,4,8,183,4,18,158,2,58,8,184,4,18,158,2, -132,2,8,184,4,18,158,97,10,2,92,2,113,2,109,95,2,81,94,2,116, -2,110,158,2,1,2,111,8,184,4,18,158,95,10,2,107,2,108,8,184,4, -16,4,11,11,2,134,2,3,1,6,101,110,118,52,54,48,16,4,11,11,2, -134,2,2,135,2,16,4,11,11,2,134,2,2,135,2,16,4,11,11,2,65, -3,1,6,101,110,118,52,53,54,95,8,193,11,16,0,97,10,35,11,95,159, -64,35,37,115,99,9,11,159,2,60,9,11,159,2,55,9,11,16,0,97,10, -34,11,95,159,2,10,9,11,159,2,60,9,11,159,2,55,9,11,16,14,75, -115,117,98,115,116,105,116,117,116,101,45,115,116,111,112,2,133,2,66,115,121, -110,116,97,120,2,133,2,78,112,97,116,116,101,114,110,45,115,117,98,115,116, -105,116,117,116,101,2,133,2,73,115,121,110,116,97,120,45,99,97,115,101,42, -42,2,133,2,2,126,2,133,2,2,57,2,133,2,2,95,2,133,2,18,16, -2,103,93,158,159,10,2,113,2,112,8,184,4,8,131,5,8,130,5,8,129, -5,8,128,5,8,191,4,8,190,4,8,189,4,13,16,4,35,2,133,2,2, -56,11,93,8,159,52,16,4,11,11,2,102,2,136,2,95,9,8,159,52,2, -56,18,16,2,95,2,83,93,8,159,52,16,4,11,11,2,102,2,136,2,95, -9,8,159,52,2,56,101,8,146,4,8,145,4,8,144,4,8,174,4,8,177, -4,8,176,4,8,183,4,16,6,11,11,3,1,4,103,55,53,55,3,1,4, -103,55,53,56,2,137,2,2,137,2,16,4,11,11,2,85,3,1,7,101,110, -118,52,48,55,52,18,158,97,10,2,92,2,113,2,120,96,2,81,2,121,159, -2,1,2,122,2,123,158,2,1,2,124,8,134,5,18,158,95,10,2,105,2, -106,8,134,5,18,16,2,103,93,158,159,10,2,113,2,125,8,134,5,8,131, -5,8,130,5,8,129,5,8,128,5,8,191,4,8,190,4,8,189,4,13,16, -4,35,2,133,2,2,56,11,93,8,166,52,16,4,11,11,2,102,2,138,2, -95,9,8,166,52,2,56,18,16,2,95,2,83,93,8,166,52,16,4,11,11, -2,102,2,138,2,95,9,8,166,52,2,56,96,93,8,134,52,16,4,11,11, -3,1,8,119,115,116,109,112,55,53,50,3,1,7,101,110,118,52,48,51,50, -16,4,11,11,3,1,4,103,55,53,53,3,1,7,101,110,118,52,48,56,53, -16,4,11,11,2,139,2,3,1,7,101,110,118,52,48,56,54,18,16,2,158, -95,10,2,119,2,83,8,139,5,95,9,8,134,52,2,127,16,4,11,11,2, -65,3,1,7,101,110,118,52,48,57,48,18,97,2,58,8,146,4,8,145,4, -8,144,4,8,141,5,98,8,146,4,8,145,4,8,144,4,8,141,5,16,6, -11,11,3,1,4,103,55,55,51,3,1,4,103,55,55,52,2,141,2,2,141, -2,16,6,11,11,2,39,63,101,120,112,2,142,2,2,142,2,18,158,95,10, -2,4,95,2,143,2,9,2,140,2,8,143,5,95,8,146,4,8,145,4,8, -144,4,18,158,2,3,8,145,5,18,158,2,4,8,145,5,18,158,2,5,8, -145,5,18,158,2,6,8,145,5,18,158,2,7,8,145,5,16,4,11,11,2, -154,2,3,1,7,101,110,118,52,49,48,54,18,97,2,58,8,146,4,8,145, -4,8,144,4,8,151,5,98,8,146,4,8,145,4,8,144,4,8,151,5,16, -8,11,11,3,1,4,103,55,56,50,3,1,4,103,55,56,51,3,1,4,103, -55,56,52,2,155,2,2,155,2,2,155,2,16,8,11,11,2,67,2,152,2, -2,153,2,2,156,2,2,156,2,2,156,2,18,158,161,10,2,92,9,2,144, -2,2,145,2,8,153,5,16,12,11,11,2,67,65,112,97,114,97,109,2,158, -2,2,152,2,2,153,2,2,159,2,2,159,2,2,159,2,2,159,2,2,159, -2,16,12,11,11,3,1,4,103,55,55,55,3,1,4,103,55,55,56,3,1, -4,103,55,55,57,3,1,4,103,55,56,48,3,1,4,103,55,56,49,2,157, -2,2,157,2,2,157,2,2,157,2,2,157,2,98,8,146,4,8,145,4,8, -144,4,8,151,5,8,156,5,8,155,5,18,158,2,58,8,157,5,18,158,2, -132,2,8,157,5,18,158,2,132,2,8,157,5,100,8,146,4,8,145,4,8, -144,4,8,151,5,8,156,5,8,155,5,16,4,11,11,3,1,4,103,55,56, -57,3,1,7,101,110,118,52,49,53,50,16,4,11,11,2,151,2,3,1,7, -101,110,118,52,49,53,51,18,158,97,10,2,149,2,2,12,159,2,11,95,2, -150,2,11,2,12,2,146,2,160,2,92,9,2,147,2,2,148,2,8,161,5, -18,16,2,95,2,83,93,8,168,53,16,4,11,11,2,102,3,1,7,101,110, -118,52,49,53,55,95,9,8,168,53,2,56,96,93,8,159,53,16,4,11,11, -3,1,8,119,115,116,109,112,55,56,55,3,1,7,101,110,118,52,49,52,54, -16,4,11,11,3,1,4,103,55,56,56,3,1,7,101,110,118,52,49,54,48, -16,4,11,11,2,139,2,3,1,7,101,110,118,52,49,54,49,18,16,2,158, -95,10,2,151,2,2,83,8,164,5,95,9,8,159,53,2,127,16,4,11,11, -2,154,2,3,1,7,101,110,118,52,49,54,53,18,97,2,58,8,146,4,8, -145,4,8,144,4,8,166,5,98,8,146,4,8,145,4,8,144,4,8,166,5, -16,10,11,11,3,1,4,103,55,57,51,3,1,4,103,55,57,52,3,1,4, -103,55,57,53,3,1,4,103,55,57,54,2,163,2,2,163,2,2,163,2,2, -163,2,16,10,11,11,2,67,69,98,111,111,108,45,101,120,112,114,2,152,2, -2,153,2,2,164,2,2,164,2,2,164,2,2,164,2,18,158,97,10,2,149, -2,2,25,94,76,109,97,107,101,45,116,104,114,101,97,100,45,99,101,108,108, -95,63,97,110,100,2,160,2,10,95,2,1,93,2,27,160,2,92,9,2,161, -2,2,162,2,8,168,5,18,158,2,19,8,145,5,18,158,2,20,8,145,5, -18,158,2,21,8,145,5,18,158,2,22,8,145,5,18,158,2,23,8,145,5, -30,2,127,1,20,103,101,110,101,114,97,116,101,45,116,101,109,112,111,114,97, -114,105,101,115,0,16,4,11,11,2,154,2,3,1,7,101,110,118,52,49,56, -57,16,4,11,11,74,100,105,115,97,98,108,101,45,98,114,101,97,107,63,3, -1,7,101,110,118,52,49,56,56,18,98,2,58,8,146,4,8,145,4,8,144, -4,8,177,5,8,176,5,99,8,146,4,8,145,4,8,144,4,8,177,5,8, -176,5,16,8,11,11,3,1,4,103,56,48,54,3,1,4,103,56,48,55,3, -1,4,103,56,48,56,2,189,2,2,189,2,2,189,2,16,8,11,11,2,67, -2,152,2,2,153,2,2,190,2,2,190,2,2,190,2,18,158,161,10,2,92, -9,2,171,2,2,172,2,8,179,5,16,12,11,11,2,67,2,179,2,2,181, -2,2,152,2,2,153,2,2,128,3,2,128,3,2,128,3,2,128,3,2,128, -3,16,12,11,11,3,1,4,103,56,48,49,3,1,4,103,56,48,50,3,1, -4,103,56,48,51,3,1,4,103,56,48,52,3,1,4,103,56,48,53,2,191, -2,2,191,2,2,191,2,2,191,2,2,191,2,99,8,146,4,8,145,4,8, -144,4,8,177,5,8,176,5,8,182,5,8,181,5,18,158,2,58,8,183,5, -18,158,2,132,2,8,183,5,18,158,2,58,8,183,5,18,158,2,132,2,8, -183,5,103,8,146,4,8,145,4,8,144,4,8,177,5,8,176,5,8,182,5, -8,181,5,16,4,11,11,3,1,4,103,56,49,52,3,1,7,101,110,118,52, -50,51,55,16,4,11,11,2,178,2,3,1,7,101,110,118,52,50,51,56,16, -4,11,11,3,1,4,103,56,49,54,3,1,7,101,110,118,52,50,52,53,16, -4,11,11,2,180,2,3,1,7,101,110,118,52,50,52,54,18,158,2,58,8, -188,5,18,158,2,28,8,188,5,18,158,2,29,8,188,5,18,158,96,10,2, -92,2,173,2,95,2,92,93,94,2,182,2,95,2,150,2,11,2,25,96,2, -149,2,2,25,2,30,96,2,183,2,95,2,143,2,9,96,2,149,2,2,25, -2,182,2,96,2,149,2,2,34,95,2,143,2,93,2,184,2,95,2,185,2, -2,32,95,2,143,2,9,96,2,174,2,2,184,2,2,182,2,158,2,186,2, -2,175,2,160,2,92,9,2,176,2,2,177,2,2,32,95,2,143,2,93,2, -188,2,93,2,188,2,8,188,5,18,158,95,10,2,169,2,2,170,2,8,188, -5,18,158,95,10,2,167,2,2,168,2,8,188,5,18,158,96,10,2,187,2, -2,165,2,2,166,2,8,188,5,18,16,2,95,2,83,93,8,130,55,16,4, -11,11,2,102,3,1,7,101,110,118,52,50,54,51,95,9,8,130,55,2,56, -96,93,8,169,54,16,6,11,11,2,129,3,2,130,3,2,131,3,2,131,3, -16,4,11,11,3,1,4,103,56,49,53,3,1,7,101,110,118,52,50,55,50, -16,4,11,11,2,139,2,3,1,7,101,110,118,52,50,55,51,18,16,2,158, -95,10,2,180,2,2,83,8,133,6,95,9,8,169,54,2,127,96,93,8,169, -54,16,6,11,11,2,129,3,2,130,3,2,131,3,2,131,3,16,4,11,11, -3,1,4,103,56,49,51,3,1,7,101,110,118,52,50,55,55,16,4,11,11, -2,139,2,3,1,7,101,110,118,52,50,55,56,18,16,2,158,95,10,2,178, -2,2,83,8,135,6,95,9,8,169,54,2,127,16,4,11,11,2,154,2,3, -1,7,101,110,118,52,50,56,50,18,97,2,58,8,146,4,8,145,4,8,144, -4,8,137,6,98,8,146,4,8,145,4,8,144,4,8,137,6,16,6,11,11, -3,1,4,103,56,51,55,3,1,4,103,56,51,56,2,144,3,2,144,3,16, -6,11,11,2,67,2,153,2,2,145,3,2,145,3,18,158,96,10,2,135,3, -93,94,9,2,141,3,93,64,118,111,105,100,8,139,6,98,8,146,4,8,145, -4,8,144,4,8,137,6,16,8,11,11,2,146,3,2,147,3,2,148,3,2, -149,3,2,149,3,2,149,3,16,8,11,11,2,67,2,138,3,2,153,2,2, -150,3,2,150,3,2,150,3,18,158,2,132,2,8,141,6,18,158,2,58,8, -141,6,18,158,2,132,2,8,141,6,100,8,146,4,8,145,4,8,144,4,8, -137,6,16,8,11,11,2,146,3,2,147,3,2,148,3,2,149,3,2,149,3, -2,149,3,16,8,11,11,2,67,2,138,3,2,153,2,2,150,3,2,150,3, -2,150,3,16,4,11,11,3,1,4,103,56,52,50,3,1,7,101,110,118,52, -51,50,50,16,4,11,11,2,136,3,3,1,7,101,110,118,52,51,50,51,18, -158,160,10,2,135,3,93,94,2,132,3,2,133,3,2,134,3,8,145,6,18, -158,96,10,2,137,3,2,139,3,2,140,3,8,145,6,18,16,2,95,2,83, -93,8,183,55,16,4,11,11,2,102,3,1,7,101,110,118,52,51,50,55,95, -9,8,183,55,2,56,96,93,8,175,55,16,4,11,11,3,1,8,119,115,116, -109,112,56,52,48,3,1,7,101,110,118,52,51,49,55,16,4,11,11,3,1, -4,103,56,52,49,3,1,7,101,110,118,52,51,51,50,16,4,11,11,2,139, -2,3,1,7,101,110,118,52,51,51,51,18,16,2,158,95,10,2,136,3,2, -83,8,149,6,95,9,8,175,55,2,127,98,8,146,4,8,145,4,8,144,4, -8,137,6,16,8,11,11,3,1,4,103,56,51,52,3,1,4,103,56,51,53, -3,1,4,103,56,51,54,2,151,3,2,151,3,2,151,3,16,8,11,11,2, -67,2,138,3,2,153,2,2,152,3,2,152,3,2,152,3,18,158,96,10,2, -137,3,2,142,3,2,143,3,8,151,6,16,4,11,11,2,154,2,3,1,7, -101,110,118,52,51,53,49,18,97,2,58,8,146,4,8,145,4,8,144,4,8, -153,6,98,8,146,4,8,145,4,8,144,4,8,153,6,16,10,11,11,3,1, -4,103,56,53,48,3,1,4,103,56,53,49,3,1,4,103,56,53,50,3,1, -4,103,56,53,51,2,156,3,2,156,3,2,156,3,2,156,3,16,10,11,11, -2,67,2,114,2,157,3,2,158,3,2,159,3,2,159,3,2,159,3,2,159, -3,18,158,95,10,67,99,97,108,108,47,99,99,160,2,143,2,93,2,153,3, -2,154,3,2,155,3,8,155,6,16,4,11,11,2,154,2,3,1,7,101,110, -118,52,51,55,49,18,97,2,58,8,146,4,8,145,4,8,144,4,8,157,6, -98,8,146,4,8,145,4,8,144,4,8,157,6,16,12,11,11,3,1,4,103, -56,53,55,3,1,4,103,56,53,56,3,1,4,103,56,53,57,3,1,4,103, -56,54,48,3,1,4,103,56,54,49,2,167,3,2,167,3,2,167,3,2,167, -3,2,167,3,16,12,11,11,2,67,2,165,3,2,166,3,2,157,3,2,158, -3,2,168,3,2,168,3,2,168,3,2,168,3,2,168,3,18,158,162,10,2, -92,9,95,2,164,3,2,160,3,2,161,3,2,162,3,2,163,3,8,159,6, -18,16,2,95,2,83,93,8,158,56,16,4,11,11,2,102,3,1,7,101,110, -118,52,51,57,51,95,9,8,158,56,2,56,16,4,11,11,2,154,2,3,1, -7,101,110,118,52,51,57,54,18,97,2,58,8,146,4,8,145,4,8,144,4, -8,162,6,98,8,146,4,8,145,4,8,144,4,8,162,6,16,8,11,11,3, -1,4,103,56,55,49,3,1,4,103,56,55,50,3,1,4,103,56,55,51,2, -183,3,2,183,3,2,183,3,16,8,11,11,2,67,2,157,3,2,158,3,2, -184,3,2,184,3,2,184,3,18,158,161,10,2,92,9,2,173,3,2,174,3, -8,164,6,16,12,11,11,2,67,2,181,3,2,158,2,2,157,3,2,158,3, -2,186,3,2,186,3,2,186,3,2,186,3,2,186,3,16,12,11,11,3,1, -4,103,56,54,54,3,1,4,103,56,54,55,3,1,4,103,56,54,56,3,1, -4,103,56,54,57,3,1,4,103,56,55,48,2,185,3,2,185,3,2,185,3, -2,185,3,2,185,3,98,8,146,4,8,145,4,8,144,4,8,162,6,8,167, -6,8,166,6,18,158,2,58,8,168,6,18,158,2,132,2,8,168,6,100,8, -146,4,8,145,4,8,144,4,8,162,6,8,167,6,8,166,6,16,4,11,11, -3,1,4,103,56,55,56,3,1,7,101,110,118,52,52,52,49,16,4,11,11, -2,179,3,3,1,7,101,110,118,52,52,52,50,18,158,96,10,2,92,2,175, -3,95,2,92,93,94,2,180,3,159,2,143,2,9,2,176,3,96,2,182,3, -2,180,3,160,2,143,2,9,2,177,3,2,178,3,2,180,3,8,171,6,18, -158,95,10,2,171,3,2,172,3,8,171,6,18,158,97,10,2,92,93,94,2, -130,2,2,169,3,95,2,137,3,2,169,3,2,170,3,95,2,137,3,2,170, -3,2,130,2,8,171,6,18,16,2,95,2,83,93,8,130,57,16,4,11,11, -2,102,3,1,7,101,110,118,52,52,52,54,95,9,8,130,57,2,56,96,93, -8,186,56,16,4,11,11,3,1,8,119,115,116,109,112,56,55,54,3,1,7, -101,110,118,52,52,51,54,16,4,11,11,3,1,4,103,56,55,55,3,1,7, -101,110,118,52,52,53,51,16,4,11,11,2,139,2,3,1,7,101,110,118,52, -52,53,52,18,16,2,158,95,10,2,179,3,2,83,8,176,6,95,9,8,186, -56,2,127,16,4,11,11,2,154,2,3,1,7,101,110,118,52,52,53,56,18, -97,2,58,8,146,4,8,145,4,8,144,4,8,178,6,98,8,146,4,8,145, -4,8,144,4,8,178,6,16,8,11,11,3,1,4,103,56,56,57,3,1,4, -103,56,57,48,3,1,4,103,56,57,49,2,189,3,2,189,3,2,189,3,16, -8,11,11,2,67,2,152,2,2,153,2,2,190,3,2,190,3,2,190,3,18, -158,97,10,2,135,3,93,94,96,2,82,2,191,3,2,128,4,2,129,4,95, -70,116,105,109,101,45,97,112,112,108,121,160,2,143,2,9,2,187,3,2,188, -3,64,110,117,108,108,97,66,112,114,105,110,116,102,6,40,40,99,112,117,32, -116,105,109,101,58,32,126,115,32,114,101,97,108,32,116,105,109,101,58,32,126, -115,32,103,99,32,116,105,109,101,58,32,126,115,126,110,2,191,3,2,128,4, -2,129,4,95,65,97,112,112,108,121,66,118,97,108,117,101,115,2,82,8,180, -6,159,34,20,100,159,34,16,1,20,24,2,1,16,0,83,158,40,20,97,114, -73,35,37,109,111,114,101,45,115,99,104,101,109,101,2,2,10,10,10,48,80, -158,34,34,20,100,159,34,16,31,30,2,2,2,3,193,30,2,2,2,4,193, -30,2,2,2,5,193,30,2,2,2,6,193,30,2,2,2,7,193,30,2,2, -2,8,193,30,2,2,2,9,193,30,2,10,2,11,3,30,2,10,2,12,4, -30,2,2,2,13,193,30,2,2,2,14,193,30,2,2,2,15,193,30,2,2, -2,16,193,30,2,2,2,17,193,30,2,2,2,18,193,30,2,2,2,19,193, -30,2,2,2,20,193,30,2,2,2,21,193,30,2,2,2,22,193,30,2,2, -2,23,193,30,2,2,2,24,193,30,2,10,2,25,0,30,2,2,2,26,193, -30,2,10,2,27,1,30,2,2,2,28,193,30,2,2,2,29,193,30,2,2, -2,30,193,30,2,2,2,31,193,30,2,2,2,32,193,30,2,2,2,33,193, -30,2,10,2,34,2,16,0,11,11,16,19,2,22,2,21,2,17,2,18,2, -16,2,31,2,30,2,32,2,20,2,15,2,4,2,6,2,29,2,28,2,23, -2,7,2,19,2,14,2,3,53,11,16,19,2,26,2,33,2,13,2,24,2, -9,2,8,2,5,2,35,2,36,2,37,2,38,2,39,2,40,2,41,2,42, -2,43,2,44,2,45,2,46,16,19,11,11,11,11,11,11,11,11,11,11,11, -11,11,11,11,11,11,11,11,16,19,2,26,2,33,2,13,2,24,2,9,2, -8,2,5,2,35,2,36,2,37,2,38,2,39,2,40,2,41,2,42,2,43, -2,44,2,45,2,46,41,53,106,16,5,93,2,47,89,162,34,35,56,9,223, -0,27,249,22,152,3,20,15,159,37,34,43,196,27,28,248,80,158,37,34,194, -249,80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80, -158,40,34,193,249,80,158,41,35,248,80,158,42,36,195,27,248,80,158,43,37, -196,28,248,80,158,43,34,193,249,80,158,44,38,27,248,80,158,46,36,196,28, -248,80,158,46,34,193,249,80,158,47,38,248,80,158,48,36,195,248,80,158,48, -39,248,80,158,49,37,196,11,248,80,158,45,39,248,80,158,46,37,196,11,11, -11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,28,248,22, -47,248,22,153,3,194,27,249,22,67,195,196,251,80,158,44,40,20,15,159,44, -35,43,21,94,2,48,2,49,248,22,59,197,248,22,58,197,27,249,22,67,195, -196,251,80,158,44,40,20,15,159,44,36,43,21,94,2,50,2,51,248,22,59, -197,248,22,58,197,27,28,248,80,158,38,34,195,249,80,158,39,35,248,80,158, -40,36,197,27,248,80,158,41,37,198,28,248,80,158,41,34,193,249,80,158,42, -35,248,80,158,43,36,195,27,248,80,158,44,37,196,28,248,80,158,44,34,193, -249,80,158,45,38,27,248,80,158,47,36,196,28,248,80,158,47,41,193,248,80, -158,47,42,193,11,248,80,158,46,39,248,80,158,47,37,196,11,11,11,28,192, -27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,27,249,22,67,195,196, -251,80,158,45,40,20,15,159,45,37,43,21,94,2,52,2,53,248,22,59,197, -248,22,58,197,250,22,177,8,11,2,54,197,34,20,100,159,34,16,9,2,134, -4,2,135,4,2,136,4,2,137,4,2,138,4,2,139,4,2,140,4,2,141, -4,2,142,4,16,4,33,147,4,33,149,4,33,150,4,33,152,4,11,16,5, -93,2,38,89,162,34,35,8,32,9,223,0,27,249,22,152,3,20,15,159,37, -34,46,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36, -196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,38,248, -80,158,42,36,195,248,80,158,42,39,248,80,158,43,37,196,11,11,28,192,27, -248,22,58,194,27,248,22,59,195,250,80,158,41,40,20,15,159,41,35,46,21, -93,2,73,195,27,28,248,80,158,38,34,195,249,80,158,39,35,248,80,158,40, -36,197,27,248,80,158,41,37,198,28,248,80,158,41,34,193,249,80,158,42,35, -248,80,158,43,36,195,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249, -80,158,45,38,27,248,80,158,47,36,196,28,248,80,158,47,34,193,28,27,248, -80,158,48,36,194,28,248,80,158,48,41,193,28,249,22,166,3,194,20,15,159, -49,36,46,9,11,11,27,248,80,158,48,37,194,28,248,80,158,48,34,193,249, -80,158,49,35,248,80,158,50,36,195,27,248,80,158,51,37,196,28,248,80,158, -51,42,193,248,80,158,51,43,193,11,11,11,11,248,80,158,46,39,248,80,158, -47,37,196,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22, -93,196,27,248,22,94,197,249,80,158,43,44,202,27,250,22,67,198,199,200,252, -80,158,49,40,20,15,159,49,37,46,21,95,2,74,2,75,2,76,248,22,86, -198,248,22,84,198,248,22,58,198,27,28,248,80,158,39,34,196,249,80,158,40, -35,248,80,158,41,36,198,27,248,80,158,42,37,199,28,248,80,158,42,34,193, -249,80,158,43,35,248,80,158,44,36,195,27,248,80,158,45,37,196,28,248,80, -158,45,34,193,249,80,158,46,38,27,248,80,158,48,36,196,28,248,80,158,48, -34,193,249,80,158,49,38,27,248,80,158,51,36,196,28,248,80,158,51,42,193, -248,22,65,248,80,158,52,43,194,11,27,248,80,158,51,37,196,28,248,80,158, -51,34,193,249,80,158,52,35,248,80,158,53,36,195,27,248,80,158,54,37,196, -28,248,80,158,54,42,193,248,80,158,54,43,193,11,11,11,248,80,158,47,39, -248,80,158,48,37,196,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195, -27,248,22,93,196,27,248,22,96,197,27,248,22,95,198,249,80,158,45,44,204, -27,251,22,67,199,200,201,202,250,80,158,49,45,89,162,34,34,48,9,224,15, -3,253,80,158,41,40,20,15,159,41,38,46,21,96,2,77,2,78,2,79,2, -80,248,22,94,199,248,22,93,199,248,22,84,199,248,22,58,199,21,95,2,81, -95,2,47,2,82,94,2,68,2,83,96,2,1,2,84,2,85,2,83,20,15, -159,49,39,46,27,28,248,80,158,40,34,197,249,80,158,41,35,248,80,158,42, -36,199,27,248,80,158,43,37,200,28,248,80,158,43,34,193,249,80,158,44,35, -248,80,158,45,36,195,27,248,80,158,46,37,196,28,248,80,158,46,34,193,249, -80,158,47,38,27,248,80,158,49,36,196,28,248,80,158,49,34,193,249,80,158, -50,38,27,248,80,158,52,36,196,28,248,80,158,52,42,193,248,22,65,248,80, -158,53,43,194,11,27,248,80,158,52,37,196,28,248,80,158,52,34,193,249,80, -158,53,35,248,80,158,54,36,195,27,248,80,158,55,37,196,28,248,80,158,55, -42,193,248,22,65,248,80,158,56,43,194,11,11,11,27,248,80,158,49,37,196, -28,248,80,158,49,34,193,249,80,158,50,35,248,80,158,51,36,195,27,248,80, -158,52,37,196,28,248,80,158,52,42,193,248,80,158,52,43,193,11,11,11,11, -11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22, -96,197,27,249,22,76,199,38,27,249,22,76,200,39,27,249,22,75,201,40,249, -80,158,48,44,23,15,27,253,22,67,203,205,202,201,206,204,250,80,158,52,45, -89,162,34,34,51,9,224,18,3,26,8,80,158,43,40,20,15,159,43,40,46, -21,98,2,86,2,87,2,88,2,89,2,90,2,91,249,22,76,202,38,248,22, -84,201,249,22,75,202,39,248,22,58,201,248,22,93,201,248,22,96,201,21,95, -2,92,93,94,2,65,2,82,96,2,81,95,2,47,2,65,94,2,68,2,83, -96,2,1,2,84,2,85,2,83,97,2,38,2,65,2,93,2,94,2,83,20, -15,159,52,41,46,27,28,248,80,158,41,34,198,249,80,158,42,35,248,80,158, -43,36,200,27,248,80,158,44,37,201,28,248,80,158,44,34,193,27,28,248,22, -149,3,194,193,201,249,80,158,46,35,248,80,158,47,36,196,27,248,80,158,48, -37,197,28,248,80,158,48,34,193,27,28,248,22,149,3,194,193,196,249,80,158, -50,38,27,248,80,158,52,36,197,28,248,80,158,52,34,193,249,80,158,53,35, -248,80,158,54,36,195,27,248,80,158,55,37,196,28,248,80,158,55,34,193,249, -80,158,56,35,248,80,158,57,36,195,27,248,80,158,58,37,196,28,248,80,158, -58,42,193,248,22,65,248,80,158,59,43,194,11,11,11,27,248,80,158,52,37, -197,250,22,152,3,198,195,198,11,11,11,28,192,27,248,22,58,194,27,248,22, -84,195,27,248,22,93,196,27,248,22,96,197,27,249,22,76,199,38,27,249,22, -75,200,39,251,22,177,8,11,6,33,33,98,97,100,32,115,121,110,116,97,120, -32,40,110,111,116,32,97,32,100,97,116,117,109,32,115,101,113,117,101,110,99, -101,41,23,17,199,27,28,248,80,158,42,34,199,249,80,158,43,35,248,80,158, -44,36,201,27,248,80,158,45,37,202,28,248,80,158,45,34,193,27,28,248,22, -149,3,194,193,202,249,80,158,47,35,248,80,158,48,36,196,27,248,80,158,49, -37,197,28,248,80,158,49,34,193,27,28,248,22,149,3,194,193,196,249,80,158, -51,35,248,80,158,52,36,196,27,248,80,158,53,37,197,250,22,152,3,198,195, -198,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196, -27,248,22,94,197,251,22,177,8,11,6,52,52,98,97,100,32,115,121,110,116, -97,120,32,40,109,105,115,115,105,110,103,32,101,120,112,114,101,115,115,105,111, -110,32,97,102,116,101,114,32,100,97,116,117,109,32,115,101,113,117,101,110,99, -101,41,23,16,197,27,28,248,80,158,43,34,200,249,80,158,44,35,248,80,158, -45,36,202,27,248,80,158,46,37,203,250,22,152,3,205,195,205,11,28,192,27, -248,22,58,194,27,248,22,59,195,28,248,22,63,248,22,153,3,194,250,22,177, -8,11,2,54,204,250,22,177,8,11,6,31,31,98,97,100,32,115,121,110,116, -97,120,32,40,105,108,108,101,103,97,108,32,117,115,101,32,111,102,32,96,46, -39,41,206,250,22,177,8,11,2,54,202,34,20,100,159,34,16,12,2,134,4, -2,135,4,2,136,4,2,137,4,2,138,4,2,139,4,2,140,4,2,153,4, -2,141,4,2,142,4,2,154,4,2,155,4,16,8,33,158,4,33,160,4,33, -161,4,33,163,4,33,165,4,33,166,4,33,168,4,33,169,4,11,16,5,93, -2,42,87,95,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38, -47,20,15,159,38,46,49,21,94,2,105,2,106,248,22,58,198,248,22,84,198, -80,159,34,8,33,35,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80, -158,38,47,20,15,159,38,42,49,21,94,2,107,2,108,248,22,58,198,248,22, -84,198,80,159,34,8,32,35,89,162,34,35,8,33,9,223,0,27,249,22,152, -3,20,15,159,37,34,49,196,27,28,248,80,158,37,34,194,249,80,158,38,35, -248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249, -80,158,41,38,27,248,80,158,43,36,196,28,248,80,158,43,39,193,248,22,9, -89,162,34,35,46,9,224,9,1,27,249,22,2,89,162,34,35,55,9,224,4, -5,249,80,158,37,40,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158, -40,36,199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,27,28,248,22, -149,3,194,193,200,249,80,158,43,35,248,80,158,44,36,196,27,248,80,158,45, -37,197,248,22,65,250,22,152,3,199,196,199,11,11,194,248,80,158,39,41,196, -28,248,22,63,193,21,95,9,9,9,248,80,158,37,42,193,11,27,248,80,158, -43,37,196,28,248,80,158,43,34,193,249,80,158,44,38,27,248,80,158,46,36, -196,28,248,80,158,46,34,193,249,80,158,47,35,248,80,158,48,36,195,27,248, -80,158,49,37,196,28,248,80,158,49,39,193,248,22,65,248,80,158,50,41,194, -11,11,27,248,80,158,46,37,196,28,248,80,158,46,39,193,248,80,158,46,41, -193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93, -196,27,248,22,96,197,27,249,22,76,199,38,27,249,22,76,200,39,27,249,22, -75,201,40,27,249,22,152,3,20,15,159,46,35,49,250,22,2,89,162,34,36, -50,9,224,15,16,27,249,22,152,3,20,15,159,38,36,49,198,27,248,80,158, -38,43,194,28,192,196,27,28,248,80,158,39,34,195,249,80,158,40,38,248,80, -158,41,36,197,248,80,158,41,43,248,80,158,42,37,198,11,28,192,192,250,22, -177,8,11,6,19,19,98,97,100,32,118,97,114,105,97,98,108,101,32,115,121, -110,116,97,120,198,248,22,159,3,249,80,158,52,44,20,15,159,52,37,49,206, -248,22,159,3,249,80,158,52,44,20,15,159,52,38,49,204,27,28,248,80,158, -46,39,194,248,80,158,46,41,194,11,28,192,27,249,22,152,3,20,15,159,48, -39,49,249,80,158,50,44,20,15,159,50,40,49,200,27,248,80,158,48,43,194, -28,192,249,80,158,49,45,23,16,27,252,22,67,204,202,206,23,16,23,17,250, -80,158,53,46,89,162,34,34,52,9,224,19,3,252,80,158,40,47,20,15,159, -40,41,49,21,95,2,109,2,110,2,111,250,22,2,80,159,43,8,32,35,248, -22,95,201,248,22,96,201,248,22,93,198,249,22,71,248,22,58,200,250,80,158, -45,47,20,15,159,45,43,49,21,93,2,112,248,22,84,203,21,96,2,92,2, -113,94,94,2,114,2,115,2,83,95,2,81,94,2,116,2,117,96,2,1,2, -118,2,83,95,2,113,2,119,2,83,20,15,159,53,44,49,27,28,248,80,158, -49,34,195,249,80,158,50,35,248,80,158,51,36,197,27,248,80,158,52,37,198, -28,248,80,158,52,39,193,248,80,158,52,41,193,11,11,28,192,27,248,22,58, -194,27,248,22,59,195,249,80,158,52,45,23,19,27,254,22,67,23,17,202,203, -23,15,23,19,23,21,23,22,250,80,158,56,46,89,162,34,34,54,9,224,22, -3,254,80,158,42,47,20,15,159,42,45,49,21,97,2,120,2,121,2,122,2, -123,2,124,250,22,2,80,159,45,8,33,35,249,22,75,204,40,249,22,76,204, -39,249,22,76,201,38,248,22,93,200,248,22,84,200,249,22,71,248,22,58,202, -250,80,158,47,47,20,15,159,47,47,49,21,93,2,125,248,22,96,205,21,96, -2,92,2,113,94,94,2,114,2,115,2,83,96,2,81,2,117,96,2,1,2, -84,2,85,2,83,96,2,1,2,118,2,83,95,2,113,2,119,2,83,20,15, -159,56,48,49,250,22,177,8,11,2,54,197,248,80,158,46,48,20,15,159,46, -49,49,250,22,177,8,11,2,54,196,34,20,100,159,36,16,15,2,134,4,2, -135,4,2,136,4,2,137,4,2,138,4,2,141,4,2,170,4,2,142,4,2, -171,4,2,139,4,2,172,4,2,154,4,2,155,4,2,140,4,2,173,4,16, -16,33,175,4,33,179,4,33,180,4,33,181,4,33,182,4,33,185,4,33,186, -4,33,187,4,33,188,4,33,132,5,33,133,5,33,135,5,33,136,5,33,137, -5,33,138,5,33,140,5,11,16,5,93,2,39,89,162,34,35,50,9,223,0, -27,249,22,152,3,20,15,159,37,34,42,196,27,28,248,80,158,37,34,194,249, -80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158, -40,34,193,249,80,158,41,38,248,80,158,42,36,195,248,80,158,42,39,248,80, -158,43,37,196,11,11,28,192,27,248,22,58,194,27,248,22,59,195,249,80,158, -40,40,199,250,80,158,43,41,20,15,159,43,35,42,21,93,2,140,2,197,250, -22,177,8,11,2,54,196,34,20,100,159,34,16,8,2,134,4,2,135,4,2, -136,4,2,137,4,2,138,4,2,139,4,2,154,4,2,140,4,16,2,33,142, -5,33,144,5,11,16,5,93,2,62,27,248,22,179,13,10,253,22,66,248,199, -20,15,159,42,34,34,248,199,20,15,159,42,35,34,248,199,20,15,159,42,36, -34,248,22,66,248,200,20,15,159,43,37,34,248,22,66,248,200,20,15,159,43, -38,34,10,43,20,100,159,34,16,0,16,5,33,146,5,33,147,5,33,148,5, -33,149,5,33,150,5,11,16,5,93,2,44,89,162,34,35,8,26,9,223,0, -27,249,22,152,3,20,15,159,37,34,49,196,27,28,248,80,158,37,34,194,249, -80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158, -40,34,193,28,248,80,158,40,38,248,80,158,41,36,194,27,248,80,158,41,37, -194,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,27,248, -80,158,44,37,196,28,248,80,158,44,39,193,248,80,158,44,40,193,11,11,11, -11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,27,249, -22,67,195,196,251,80,158,44,41,20,15,159,44,35,49,21,94,2,144,2,2, -145,2,248,22,59,197,248,22,58,197,27,28,248,80,158,38,34,195,249,80,158, -39,35,248,80,158,40,36,197,27,248,80,158,41,37,198,28,248,80,158,41,34, -193,249,80,158,42,42,27,248,80,158,44,36,196,28,248,80,158,44,39,193,248, -22,9,89,162,34,35,46,9,224,10,1,27,249,22,2,89,162,34,35,51,9, -224,4,5,249,80,158,37,43,28,248,80,158,38,34,197,249,80,158,39,35,248, -80,158,40,36,199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80, -158,42,35,248,80,158,43,36,195,248,80,158,43,38,248,80,158,44,37,196,11, -11,194,248,80,158,39,40,196,28,248,22,63,193,21,94,9,9,248,80,158,37, -44,193,11,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249,80,158,45, -35,248,80,158,46,36,195,27,248,80,158,47,37,196,28,248,80,158,47,39,193, -248,80,158,47,40,193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84, -195,27,248,22,93,196,27,248,22,96,197,27,248,22,95,198,27,249,22,152,3, -20,15,159,45,36,49,249,22,1,22,71,250,22,2,22,65,248,22,159,3,249, -80,158,53,45,20,15,159,53,37,49,206,248,22,159,3,249,80,158,53,45,20, -15,159,53,38,49,205,27,28,248,80,158,45,39,194,248,80,158,45,40,194,11, -28,192,249,80,158,46,46,205,27,250,22,67,198,200,201,250,80,158,50,47,89, -162,34,34,47,9,224,16,3,252,80,158,40,41,20,15,159,40,39,49,21,95, -2,146,2,2,147,2,2,148,2,248,22,58,198,248,22,86,198,248,22,84,198, -21,96,2,149,2,2,12,96,2,11,95,2,150,2,11,2,12,2,151,2,2, -83,97,2,92,9,2,152,2,2,153,2,2,83,20,15,159,50,40,49,248,80, -158,45,48,20,15,159,45,41,49,250,22,177,8,11,2,54,197,34,20,100,159, -34,16,15,2,134,4,2,135,4,2,136,4,2,137,4,2,139,4,2,141,4, -2,142,4,2,140,4,2,138,4,2,170,4,2,171,4,2,172,4,2,154,4, -2,155,4,2,173,4,16,8,33,152,5,33,154,5,33,158,5,33,159,5,33, -160,5,33,162,5,33,163,5,33,165,5,11,16,5,93,2,37,89,162,34,35, -56,9,223,0,27,249,22,152,3,20,15,159,37,34,42,196,27,28,248,80,158, -37,34,194,249,80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197, -28,248,80,158,40,34,193,249,80,158,41,35,248,80,158,42,36,195,27,248,80, -158,43,37,196,28,248,80,158,43,34,193,249,80,158,44,35,248,80,158,45,36, -195,27,248,80,158,46,37,196,28,248,80,158,46,38,193,248,80,158,46,39,193, -11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196, -27,248,22,94,197,249,80,158,42,40,201,27,250,22,67,198,199,200,252,80,158, -48,41,20,15,159,48,35,42,21,95,2,160,2,2,161,2,2,162,2,248,22, -86,198,248,22,84,198,248,22,58,198,250,22,177,8,11,2,54,196,34,20,100, -159,34,16,8,2,134,4,2,135,4,2,136,4,2,137,4,2,141,4,2,142, -4,2,154,4,2,140,4,16,2,33,167,5,33,169,5,11,16,5,93,2,61, -27,248,22,179,13,10,253,22,66,248,199,20,15,159,42,34,34,248,199,20,15, -159,42,35,34,248,199,20,15,159,42,36,34,248,22,66,248,200,20,15,159,43, -37,34,248,22,66,248,200,20,15,159,43,38,34,10,43,20,100,159,34,16,0, -16,5,33,170,5,33,171,5,33,172,5,33,173,5,33,174,5,11,16,5,94, -2,43,2,46,87,96,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80, -158,38,42,20,15,159,38,46,50,21,94,2,165,2,2,166,2,248,22,58,198, -248,22,84,198,80,159,34,8,35,35,83,158,34,16,2,89,162,35,35,46,9, -223,0,251,80,158,38,42,20,15,159,38,45,50,21,94,2,167,2,2,168,2, -248,22,58,198,248,22,84,198,80,159,34,8,34,35,83,158,34,16,2,89,162, -35,35,46,9,223,0,251,80,158,38,42,20,15,159,38,44,50,21,94,2,169, -2,2,170,2,248,22,58,198,248,22,84,198,80,159,34,8,33,35,27,89,162, -8,36,35,41,62,119,104,223,1,89,162,34,35,8,31,9,224,0,1,27,249, -22,152,3,20,15,159,38,34,50,197,27,28,248,80,158,38,34,194,249,80,158, -39,35,248,80,158,40,36,196,27,248,80,158,41,37,197,28,248,80,158,41,34, -193,28,248,80,158,41,38,248,80,158,42,36,194,27,248,80,158,42,37,194,28, -248,80,158,42,34,193,249,80,158,43,35,248,80,158,44,36,195,27,248,80,158, -45,37,196,28,248,80,158,45,39,193,248,80,158,45,40,193,11,11,11,11,11, -28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,249,80,158,42, -41,201,27,249,22,67,197,198,251,80,158,47,42,20,15,159,47,35,50,21,94, -2,171,2,2,172,2,248,22,59,197,248,22,58,197,27,28,248,80,158,39,34, -195,249,80,158,40,35,248,80,158,41,36,197,27,248,80,158,42,37,198,28,248, -80,158,42,34,193,249,80,158,43,43,27,248,80,158,45,36,196,28,248,80,158, -45,39,193,248,22,9,89,162,34,35,46,9,224,11,1,27,249,22,2,89,162, -34,35,51,9,224,4,5,249,80,158,37,44,28,248,80,158,38,34,197,249,80, +27,248,22,96,197,27,248,22,95,198,27,249,22,152,3,20,15,159,44,35,51, +249,22,2,80,158,46,44,248,22,159,3,249,80,158,49,45,20,15,159,49,36, +51,203,27,28,248,80,158,44,39,194,248,22,9,89,162,34,35,46,9,224,10, +2,27,249,22,2,89,162,34,35,46,9,224,4,5,249,80,158,37,40,28,248, +80,158,38,39,197,248,22,65,248,80,158,39,41,198,11,194,248,80,158,39,41, +196,28,248,22,63,193,9,248,80,158,37,46,193,11,28,192,249,80,158,45,47, +204,27,252,22,67,203,205,200,204,202,250,80,158,49,48,89,162,34,34,51,9, +224,15,3,253,80,158,41,49,20,15,159,41,37,51,21,96,2,67,2,68,2, +69,2,70,250,22,2,80,159,44,8,27,35,248,22,93,202,248,22,96,202,250, +22,2,80,159,44,8,29,35,248,22,84,202,248,22,93,202,248,22,58,199,248, +22,95,199,21,96,2,40,94,94,94,2,71,2,42,2,43,2,42,9,98,2, +40,94,94,94,2,41,2,42,95,2,72,94,2,73,94,2,74,2,71,2,42, +2,42,9,2,44,2,45,2,42,20,15,159,49,41,51,248,80,158,44,50,20, +15,159,44,42,51,250,22,178,8,11,2,46,196,34,20,100,159,37,16,17,2, +111,2,112,2,113,2,114,2,115,2,116,2,117,2,118,2,119,2,120,30,2, +30,2,5,0,2,139,2,2,140,2,2,121,2,122,2,123,2,141,2,16,9, +33,143,2,33,147,2,33,148,2,33,150,2,33,151,2,33,152,2,33,153,2, +33,154,2,33,156,2,11,16,5,93,2,29,87,94,83,158,34,16,2,89,162, +35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,36,47,21,94,2,79, +2,80,248,22,58,198,248,22,84,198,80,159,34,52,35,89,162,34,35,55,9, +223,0,27,249,22,152,3,20,15,159,37,34,47,196,27,28,248,80,158,37,34, +194,249,80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248, +80,158,40,34,193,249,80,158,41,38,27,248,80,158,43,36,196,28,248,80,158, +43,39,193,248,22,9,89,162,34,35,46,9,224,9,1,27,249,22,2,89,162, +34,35,51,9,224,4,5,249,80,158,37,40,28,248,80,158,38,34,197,249,80, 158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200,28,248,80,158,41, -34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158,43,38,248,80,158, -44,37,196,11,11,194,248,80,158,39,40,196,28,248,22,63,193,21,94,9,9, -248,80,158,37,45,193,11,27,248,80,158,45,37,196,28,248,80,158,45,34,193, -249,80,158,46,35,248,80,158,47,36,195,27,248,80,158,48,37,196,28,248,80, -158,48,39,193,248,80,158,48,40,193,11,11,11,11,28,192,27,248,22,58,194, -27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,248,22,95,198,27, -249,22,152,3,20,15,159,46,36,50,248,80,158,47,46,249,22,2,32,0,89, -162,8,44,35,40,9,222,1,23,119,105,116,104,45,104,97,110,100,108,101,114, -115,45,112,114,101,100,105,99,97,116,101,248,22,159,3,249,80,158,52,47,20, -15,159,52,37,50,204,27,249,22,152,3,20,15,159,47,38,50,248,80,158,48, -46,249,22,2,32,0,89,162,8,44,35,40,9,222,1,21,119,105,116,104,45, -104,97,110,100,108,101,114,115,45,104,97,110,100,108,101,114,248,22,159,3,249, -80,158,53,47,20,15,159,53,39,50,204,27,28,248,80,158,47,39,195,248,80, -158,47,40,195,11,28,192,27,28,248,80,158,48,39,195,248,80,158,48,40,195, -11,28,192,27,249,22,152,3,20,15,159,50,40,50,28,23,15,20,15,159,50, -41,50,20,15,159,50,42,50,249,80,158,50,41,23,17,27,254,22,67,23,17, -204,203,23,15,202,23,18,23,16,250,80,158,54,48,89,162,34,34,55,9,224, -20,3,254,80,158,42,42,20,15,159,42,43,50,21,97,2,173,2,2,174,2, -2,175,2,2,176,2,2,177,2,249,22,71,250,22,2,80,159,47,8,33,35, -248,22,84,205,249,22,76,206,39,250,22,2,80,159,47,8,34,35,248,22,93, -205,248,22,58,205,249,22,76,201,38,250,22,2,80,159,45,8,35,35,248,22, -84,203,248,22,93,203,249,22,75,201,40,248,22,96,200,21,95,2,92,96,94, -2,178,2,2,179,2,2,83,94,2,180,2,2,181,2,2,83,95,2,92,93, -94,2,182,2,95,2,150,2,11,2,25,96,2,149,2,2,25,2,30,96,2, -183,2,95,2,143,2,9,96,2,149,2,2,25,2,182,2,96,2,149,2,2, -34,95,2,143,2,93,2,184,2,95,2,185,2,2,32,95,2,143,2,9,96, -63,117,113,49,2,184,2,2,182,2,95,2,186,2,95,2,187,2,2,178,2, -2,180,2,2,83,97,2,92,9,2,152,2,2,153,2,2,83,2,32,95,2, -143,2,93,2,188,2,93,2,188,2,20,15,159,54,47,50,248,80,158,48,49, -20,15,159,48,48,50,248,80,158,47,49,20,15,159,47,49,50,250,22,177,8, -11,2,54,197,249,22,7,248,195,10,248,195,11,38,20,100,159,37,16,16,2, -134,4,2,135,4,2,136,4,2,137,4,2,139,4,2,141,4,2,142,4,2, -154,4,2,140,4,2,138,4,2,170,4,2,171,4,2,175,5,2,172,4,2, -155,4,2,173,4,16,16,33,178,5,33,180,5,33,184,5,33,185,5,33,186, -5,33,187,5,33,189,5,33,190,5,33,191,5,33,128,6,33,129,6,33,130, -6,33,131,6,33,132,6,33,134,6,33,136,6,11,16,5,93,2,36,87,95, -83,158,34,16,2,89,162,34,36,54,68,116,114,121,45,110,101,120,116,223,0, -27,28,248,80,158,36,34,195,249,80,158,37,35,248,80,158,38,36,197,27,248, -80,158,39,37,198,28,248,80,158,39,34,193,249,80,158,40,39,27,248,80,158, -42,36,196,28,248,80,158,42,41,193,248,22,65,248,80,158,43,42,194,11,27, -248,80,158,42,37,196,28,248,80,158,42,34,193,249,80,158,43,39,248,80,158, -44,36,195,248,80,158,44,38,248,80,158,45,37,196,11,11,11,28,192,27,248, -22,58,194,27,248,22,84,195,27,248,22,86,196,28,27,248,80,158,40,42,249, -80,158,42,43,20,15,159,42,36,50,197,87,94,249,22,3,89,162,34,35,46, -9,224,7,9,28,248,80,158,36,44,195,12,251,22,177,8,11,6,17,17,110, -111,116,32,97,110,32,105,100,101,110,116,105,102,105,101,114,196,198,194,27,248, -80,158,41,45,194,28,192,251,22,177,8,11,6,20,20,100,117,112,108,105,99, -97,116,101,32,105,100,101,110,116,105,102,105,101,114,204,196,12,27,249,22,152, -3,20,15,159,41,37,50,248,80,158,42,46,249,80,158,44,43,20,15,159,44, -38,50,199,27,28,248,80,158,41,41,194,248,80,158,41,42,194,11,28,192,249, -80,158,42,47,202,27,250,22,67,198,200,201,250,80,158,46,48,89,162,34,34, -50,9,224,12,3,252,80,158,40,40,20,15,159,40,39,50,21,95,2,132,3, -2,133,3,2,134,3,248,22,58,198,248,22,84,198,250,22,2,80,159,43,8, -27,35,248,22,86,201,248,22,58,201,21,96,2,135,3,93,94,94,2,136,3, -2,83,2,153,2,95,2,137,3,2,138,3,2,136,3,2,83,20,15,159,46, -41,50,248,80,158,41,49,20,15,159,41,42,50,250,22,177,8,11,2,54,200, -250,22,177,8,11,2,54,197,80,159,34,8,28,35,83,158,34,16,2,89,162, -35,35,46,9,223,0,251,80,158,38,40,20,15,159,38,40,50,21,94,2,139, -3,2,140,3,248,22,58,198,248,22,84,198,80,159,34,8,27,35,89,162,34, -35,54,9,223,0,27,249,22,152,3,20,15,159,37,34,50,196,27,28,248,80, -158,37,34,194,249,80,158,38,35,248,80,158,39,36,196,27,248,80,158,40,37, -197,28,248,80,158,40,34,193,28,248,80,158,40,38,248,80,158,41,36,194,27, -248,80,158,41,37,194,28,248,80,158,41,34,193,249,80,158,42,39,248,80,158, -43,36,195,248,80,158,43,38,248,80,158,44,37,196,11,11,11,11,28,192,27, -248,22,58,194,27,248,22,59,195,250,80,158,41,40,20,15,159,41,35,50,21, -93,2,141,3,195,27,28,248,80,158,38,34,195,249,80,158,39,35,248,80,158, -40,36,197,27,248,80,158,41,37,198,28,248,80,158,41,34,193,249,80,158,42, -39,27,248,80,158,44,36,196,28,248,80,158,44,34,193,249,80,158,45,35,248, -80,158,46,36,195,248,80,158,46,38,248,80,158,47,37,196,11,27,248,80,158, -44,37,196,28,248,80,158,44,34,193,249,80,158,45,39,248,80,158,46,36,195, -248,80,158,46,38,248,80,158,47,37,196,11,11,11,28,192,27,248,22,58,194, -27,248,22,84,195,27,248,22,86,196,28,248,80,158,41,44,194,27,249,22,67, -195,196,251,80,158,45,40,20,15,159,45,43,50,21,94,2,142,3,2,143,3, -248,22,59,197,248,22,58,197,249,80,159,42,8,28,35,199,201,249,80,159,39, -8,28,35,196,198,34,20,100,159,36,16,16,2,134,4,2,135,4,2,136,4, -2,137,4,2,139,4,2,138,4,2,140,4,2,141,4,2,142,4,2,172,4, -2,153,4,30,2,64,1,26,99,104,101,99,107,45,100,117,112,108,105,99,97, -116,101,45,105,100,101,110,116,105,102,105,101,114,0,2,175,5,2,154,4,2, -155,4,2,173,4,16,10,33,138,6,33,140,6,33,142,6,33,143,6,33,144, -6,33,146,6,33,147,6,33,148,6,33,150,6,33,152,6,11,16,5,93,2, -40,89,162,34,35,56,9,223,0,27,249,22,152,3,20,15,159,37,34,42,196, -27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36,196,27,248, -80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,35,248,80,158,42, -36,195,27,248,80,158,43,37,196,28,248,80,158,43,34,193,249,80,158,44,35, -248,80,158,45,36,195,27,248,80,158,46,37,196,28,248,80,158,46,38,193,248, -80,158,46,39,193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195, -27,248,22,93,196,27,248,22,94,197,249,80,158,42,40,201,27,250,22,67,199, -198,200,252,80,158,48,41,20,15,159,48,35,42,21,95,2,153,3,2,154,3, -2,155,3,248,22,86,198,248,22,58,198,248,22,84,198,250,22,177,8,11,2, -54,196,34,20,100,159,34,16,8,2,134,4,2,135,4,2,136,4,2,137,4, -2,141,4,2,142,4,2,154,4,2,140,4,16,2,33,154,6,33,156,6,11, -16,5,93,2,45,89,162,34,35,56,9,223,0,27,249,22,152,3,20,15,159, -37,34,44,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39, -36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,35, -248,80,158,42,36,195,27,248,80,158,43,37,196,28,248,80,158,43,34,193,249, -80,158,44,38,27,248,80,158,46,36,196,28,248,80,158,46,39,193,248,22,65, -248,80,158,47,40,194,11,27,248,80,158,46,37,196,28,248,80,158,46,34,193, -249,80,158,47,35,248,80,158,48,36,195,27,248,80,158,49,37,196,28,248,80, -158,49,39,193,248,80,158,49,40,193,11,11,11,11,11,28,192,27,248,22,58, -194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,248,22,95,198, -249,80,158,43,41,202,27,251,22,67,200,202,201,199,250,80,158,47,42,89,162, -34,34,48,9,224,13,3,253,80,158,41,43,20,15,159,41,35,44,21,96,2, -160,3,2,161,3,2,162,3,2,163,3,248,22,84,199,248,22,93,199,248,22, -58,199,248,22,94,199,21,98,2,92,9,95,2,164,3,2,165,3,94,2,166, -3,2,83,2,157,3,2,158,3,2,83,20,15,159,47,36,44,250,22,177,8, -11,2,54,196,34,20,100,159,34,16,10,2,134,4,2,135,4,2,136,4,2, -137,4,2,138,4,2,141,4,2,142,4,2,154,4,2,155,4,2,140,4,16, -3,33,158,6,33,160,6,33,161,6,11,16,5,93,2,35,87,95,83,158,34, -16,2,89,162,35,35,46,9,223,0,251,80,158,38,42,20,15,159,38,40,50, -21,94,2,169,3,2,170,3,248,22,58,198,248,22,93,198,80,159,34,8,27, -35,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,42,20,15, -159,38,39,50,21,94,2,171,3,2,172,3,248,22,58,198,248,22,84,198,80, -159,34,8,26,35,89,162,34,35,59,9,223,0,27,249,22,152,3,20,15,159, -37,34,50,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39, -36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,28,248,80,158,40, -38,248,80,158,41,36,194,27,248,80,158,41,37,194,28,248,80,158,41,34,193, -249,80,158,42,35,248,80,158,43,36,195,27,248,80,158,44,37,196,28,248,80, -158,44,39,193,248,80,158,44,40,193,11,11,11,11,11,28,192,27,248,22,58, -194,27,248,22,84,195,27,248,22,86,196,249,80,158,41,41,200,27,249,22,67, -198,197,251,80,158,46,42,20,15,159,46,35,50,21,94,2,173,3,2,174,3, +34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158,43,41,248,80,158, +44,37,196,11,11,194,248,80,158,39,42,196,28,248,22,63,193,21,94,9,9, +248,80,158,37,43,193,11,27,248,80,158,43,37,196,28,248,80,158,43,34,193, +249,80,158,44,35,248,80,158,45,36,195,27,248,80,158,46,37,196,28,248,80, +158,46,39,193,248,80,158,46,42,193,11,11,11,11,28,192,27,248,22,58,194, +27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,248,22,95,198,249, +80,158,43,44,202,27,251,22,67,200,202,199,201,250,80,158,47,45,89,162,34, +34,50,9,224,13,3,252,80,158,40,46,20,15,159,40,35,47,21,95,2,81, +2,82,2,83,250,22,2,80,159,43,52,35,248,22,84,201,248,22,94,201,248, +22,58,198,248,22,93,198,21,97,2,10,94,94,93,2,41,2,43,2,42,2, +44,2,45,2,42,20,15,159,47,37,47,250,22,178,8,11,2,46,196,34,20, +100,159,35,16,13,2,111,2,112,2,113,2,114,2,115,2,116,2,117,2,119, +2,118,2,120,2,121,2,122,2,123,16,4,33,158,2,33,160,2,33,161,2, +33,162,2,11,16,5,93,2,14,87,94,83,158,34,16,2,89,162,35,35,47, +9,223,0,252,80,158,39,48,20,15,159,39,38,50,21,95,2,86,2,87,2, +88,248,22,58,199,248,22,84,199,248,22,93,199,80,159,34,58,35,89,162,34, +35,57,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248,80,158, +38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80,158,40, +38,27,248,80,158,42,36,196,28,248,80,158,42,39,193,248,22,65,248,80,158, +43,40,194,11,27,248,80,158,42,37,196,28,248,80,158,42,39,193,248,22,9, +89,162,34,35,46,9,224,8,1,27,249,22,2,89,162,34,35,54,9,224,4, +5,249,80,158,37,41,28,248,80,158,38,34,197,249,80,158,39,38,27,248,80, +158,41,36,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36, +195,27,248,80,158,44,37,196,248,22,65,250,22,152,3,199,196,199,11,27,248, +80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43, +36,195,248,80,158,43,42,248,80,158,44,37,196,11,11,194,248,80,158,39,40, +196,28,248,22,63,193,21,94,9,9,248,80,158,37,43,193,11,11,11,28,192, +27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27, +248,22,95,198,28,249,22,4,80,158,42,44,248,22,159,3,249,80,158,45,45, +20,15,159,45,34,50,200,27,249,22,152,3,20,15,159,43,35,50,249,22,2, +89,162,8,36,35,46,9,224,11,12,87,94,28,248,80,158,36,44,195,12,251, +22,178,8,11,6,59,59,112,97,116,116,101,114,110,32,109,117,115,116,32,115, +116,97,114,116,32,119,105,116,104,32,97,110,32,105,100,101,110,116,105,102,105, +101,114,44,32,102,111,117,110,100,32,115,111,109,101,116,104,105,110,103,32,101, +108,115,101,196,198,248,22,49,248,22,50,248,22,153,3,197,248,22,159,3,249, +80,158,48,45,20,15,159,48,36,50,202,27,28,248,80,158,43,39,194,248,80, +158,43,40,194,11,28,192,249,80,158,44,46,203,27,252,22,67,203,202,205,200, +206,250,80,158,48,47,89,162,34,34,51,9,224,14,3,252,80,158,40,48,20, +15,159,40,37,50,21,95,2,89,2,90,2,91,248,22,95,198,248,22,93,198, +251,22,2,80,159,44,58,35,248,22,96,202,248,22,58,202,248,22,84,202,21, +95,2,92,93,2,93,100,2,94,2,52,10,2,93,94,2,95,2,42,2,96, +94,158,2,97,2,98,95,2,13,2,93,2,99,2,42,20,15,159,48,39,50, +248,80,158,43,49,20,15,159,43,40,50,250,22,178,8,11,2,46,202,250,22, +178,8,11,2,46,197,34,20,100,159,35,16,16,2,111,2,112,2,113,2,114, +2,115,2,116,2,118,2,117,2,119,2,140,2,2,163,2,2,139,2,2,121, +2,122,2,123,2,141,2,16,7,33,168,2,33,169,2,33,170,2,33,172,2, +33,173,2,33,174,2,33,176,2,11,16,5,93,2,8,87,94,83,158,34,16, +2,89,162,35,35,46,9,223,0,251,80,158,38,48,20,15,159,38,36,49,21, +94,2,102,2,103,248,22,58,198,248,22,84,198,80,159,34,54,35,89,162,34, +35,53,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248,80,158, +38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80,158,40, +38,27,248,80,158,42,36,196,28,248,80,158,42,39,193,248,22,65,248,80,158, +43,40,194,11,27,248,80,158,42,37,196,28,248,80,158,42,39,193,248,22,9, +89,162,34,35,46,9,224,8,1,27,249,22,2,89,162,34,35,51,9,224,4, +5,249,80,158,37,41,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158, +40,36,199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42, +35,248,80,158,43,36,195,248,80,158,43,42,248,80,158,44,37,196,11,11,194, +248,80,158,39,40,196,28,248,22,63,193,21,93,9,248,80,158,37,43,193,11, +11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248, +22,94,197,28,249,22,4,80,158,41,44,248,22,159,3,249,80,158,44,45,20, +15,159,44,34,49,199,249,80,158,41,46,200,27,251,22,67,200,199,201,202,250, +80,158,45,47,89,162,34,34,50,9,224,11,3,252,80,158,40,48,20,15,159, +40,35,49,21,95,2,104,2,105,2,106,248,22,94,198,248,22,93,198,250,22, +2,80,159,43,54,35,248,22,58,201,248,22,84,201,21,94,2,107,95,2,92, +93,2,93,100,2,94,2,52,10,2,93,94,2,95,2,42,2,96,94,2,98, +95,2,13,2,93,2,99,2,42,20,15,159,45,37,49,250,22,178,8,11,2, +46,201,250,22,178,8,11,2,46,197,34,20,100,159,35,16,15,2,111,2,112, +2,113,2,114,2,115,2,116,2,118,2,117,2,119,2,140,2,2,163,2,2, +139,2,2,121,2,122,2,123,16,4,33,178,2,33,179,2,33,180,2,33,181, +2,11,93,83,158,34,16,2,89,162,34,35,42,2,2,223,0,248,22,9,89, +162,8,36,35,45,9,224,1,2,27,247,22,116,87,94,249,22,3,89,162,8, +36,35,50,9,226,4,3,5,2,87,94,28,248,80,158,38,35,197,12,250,22, +179,8,2,2,6,19,19,108,105,115,116,32,111,102,32,105,100,101,110,116,105, +102,105,101,114,115,197,27,250,22,122,196,248,22,153,3,201,9,87,94,28,249, +22,5,89,162,8,36,35,43,9,223,7,249,22,164,3,195,194,194,248,195,198, +12,250,22,121,196,248,22,153,3,201,249,22,57,202,197,195,11,80,159,34,34, +35,98,2,110,2,49,2,3,2,32,2,30,2,33,98,2,110,2,49,2,3, +2,32,2,30,2,33,0}; + EVAL_ONE_SIZED_STR((char *)expr, 6915); + } + { + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,73,0,0,0,1,0,0,3,0,23,0,29, +0,38,0,50,0,66,0,84,0,89,0,93,0,100,0,107,0,114,0,121,0, +127,0,130,0,143,0,148,0,151,0,168,0,177,0,182,0,191,0,195,0,204, +0,213,0,222,0,231,0,240,0,244,0,253,0,255,0,8,1,17,1,26,1, +35,1,58,1,64,1,81,1,118,1,139,1,176,1,191,1,213,1,237,1,243, +1,249,1,255,1,5,2,22,2,37,2,59,2,89,2,95,2,101,2,204,2, +210,2,242,2,248,2,254,2,4,3,112,3,118,3,124,3,130,3,178,3,193, +3,208,3,231,3,52,4,67,4,90,4,187,4,0,0,70,13,0,0,29,11, +11,79,99,104,101,99,107,45,115,112,108,105,99,105,110,103,45,108,105,115,116, +65,35,37,115,116,120,68,117,110,115,121,110,116,97,120,71,113,117,97,115,105, +115,121,110,116,97,120,75,113,117,97,115,105,115,121,110,116,97,120,47,108,111, +99,77,117,110,115,121,110,116,97,120,45,115,112,108,105,99,105,110,103,64,108, +111,111,112,63,99,116,120,3,1,4,103,49,50,48,3,1,4,103,49,49,57, +3,1,4,103,49,50,50,3,1,4,103,49,50,49,65,112,108,111,111,112,62, +113,113,6,10,10,98,97,100,32,115,121,110,116,97,120,64,104,101,114,101,29, +11,11,76,35,37,115,116,120,99,97,115,101,45,115,99,104,101,109,101,68,111, +114,105,103,45,115,116,120,64,98,111,100,121,3,1,6,101,110,118,56,55,55, +63,115,116,120,3,1,6,101,110,118,56,56,48,3,1,6,101,110,118,57,48, +50,3,1,6,101,110,118,57,48,51,68,98,105,110,100,105,110,103,115,3,1, +6,101,110,118,57,48,57,63,46,46,46,3,1,6,101,110,118,57,56,49,61, +95,3,1,6,101,110,118,57,56,50,3,1,6,101,110,118,57,57,52,3,1, +6,101,110,118,57,57,53,68,35,37,107,101,114,110,101,108,16,8,11,11,2, +20,2,21,68,109,107,45,102,105,110,97,108,2,22,2,22,2,22,95,8,193, +11,16,0,97,10,35,11,94,159,2,3,9,11,159,2,19,9,11,16,0,97, +10,34,11,94,159,2,3,9,11,159,2,19,9,11,16,10,2,5,2,1,2, +6,2,1,2,4,2,1,2,2,2,1,2,7,2,1,18,98,2,17,13,16, +4,34,2,18,2,1,11,8,39,8,38,8,37,8,36,16,10,11,11,2,23, +65,100,101,112,116,104,66,115,97,109,101,45,107,69,99,111,110,118,101,114,116, +45,107,2,24,2,24,2,24,2,24,16,4,11,11,2,8,3,1,6,101,110, +118,56,55,57,16,4,11,11,68,104,101,114,101,45,115,116,120,3,1,6,101, +110,118,56,55,56,100,13,16,4,34,2,18,2,1,11,8,39,8,38,8,37, +8,36,8,43,8,42,8,41,18,158,2,17,8,44,18,158,2,4,8,44,18, +158,2,4,8,44,18,158,2,7,8,44,16,6,11,11,66,114,101,115,116,45, +118,2,27,2,28,2,28,16,6,11,11,61,120,64,114,101,115,116,2,26,2, +26,16,6,11,11,3,1,4,103,49,49,48,3,1,4,103,49,49,49,2,25, +2,25,103,13,16,4,34,2,18,2,1,11,8,39,8,38,8,37,8,36,8, +43,8,42,8,41,8,51,8,50,8,49,18,158,2,17,8,52,18,158,2,17, +8,52,107,13,16,4,34,2,18,2,1,11,8,39,8,38,8,37,8,36,8, +43,8,42,8,41,8,51,8,50,8,49,16,4,11,11,3,1,4,103,49,49, +54,3,1,6,101,110,118,57,49,56,16,4,11,11,64,116,101,109,112,3,1, +6,101,110,118,57,49,57,16,4,11,11,3,1,4,103,49,49,56,3,1,6, +101,110,118,57,51,48,16,4,11,11,2,9,3,1,6,101,110,118,57,51,49, +18,158,2,29,8,55,18,158,95,10,94,2,10,2,11,95,2,2,2,12,94, +72,113,117,111,116,101,45,115,121,110,116,97,120,2,13,8,55,18,158,2,29, +8,55,18,158,2,7,8,44,18,158,2,5,8,44,105,13,16,4,34,2,18, +2,1,11,8,39,8,38,8,37,8,36,8,43,8,42,8,41,16,4,11,11, +3,1,4,103,49,48,56,3,1,6,101,110,118,57,53,54,16,4,11,11,65, +95,101,108,115,101,3,1,6,101,110,118,57,53,55,16,4,11,11,2,14,3, +1,6,101,110,118,57,54,49,16,4,11,11,61,108,3,1,6,101,110,118,57, +54,50,16,4,11,11,61,97,3,1,6,101,110,118,57,54,51,18,158,2,4, +8,61,18,158,2,5,8,61,18,158,2,7,8,61,18,100,71,119,105,116,104, +45,115,121,110,116,97,120,13,16,4,34,2,18,2,1,11,8,39,8,38,8, +37,8,36,8,43,16,4,11,11,2,27,3,1,6,101,110,118,57,55,53,16, +4,11,11,2,20,3,1,6,101,110,118,57,55,54,16,4,11,11,2,15,3, +1,6,101,110,118,56,55,54,18,99,2,17,13,16,4,34,2,18,2,1,11, +8,39,8,38,8,37,8,67,8,66,18,102,66,115,121,110,116,97,120,13,16, +4,34,2,18,2,1,11,8,39,8,38,8,37,8,67,8,66,16,6,11,11, +3,1,4,103,49,50,51,3,1,4,103,49,50,52,2,30,2,30,16,6,11, +11,2,31,2,23,2,32,2,32,16,4,11,11,2,21,3,1,6,101,110,118, +57,56,55,16,4,11,11,2,20,3,1,6,101,110,118,57,56,56,18,99,2, +17,13,16,4,34,2,18,2,1,11,8,39,8,38,8,37,8,67,8,70,18, +102,70,115,121,110,116,97,120,47,108,111,99,13,16,4,34,2,18,2,1,11, +8,39,8,38,8,37,8,67,8,70,16,8,11,11,3,1,4,103,49,50,53, +3,1,4,103,49,50,54,3,1,4,103,49,50,55,2,33,2,33,2,33,16, +8,11,11,2,31,63,108,111,99,2,23,2,34,2,34,2,34,16,4,11,11, +2,21,3,1,7,101,110,118,49,48,48,50,159,34,20,100,159,34,16,1,20, +24,65,98,101,103,105,110,16,0,83,158,40,20,97,114,67,35,37,113,113,115, +116,120,2,1,10,10,10,34,80,158,34,34,20,100,159,34,16,2,30,2,1, +2,2,193,30,2,3,69,115,116,120,45,108,105,115,116,63,8,16,0,11,11, +16,1,2,2,35,11,16,4,2,4,2,5,2,6,2,7,16,4,11,11,11, +11,16,4,2,4,2,5,2,6,2,7,34,38,94,16,5,94,2,4,2,7, +27,32,0,89,162,34,35,43,61,102,222,250,22,178,8,11,6,30,30,105,108, +108,101,103,97,108,32,111,117,116,115,105,100,101,32,111,102,32,113,117,97,115, +105,115,121,110,116,97,120,195,249,22,7,194,194,37,20,100,159,34,16,0,16, +0,11,16,5,94,2,5,2,6,87,96,83,158,34,16,2,89,162,8,36,35, +43,9,223,0,249,22,65,20,15,159,36,51,43,195,80,159,34,8,32,35,83, +158,34,16,2,89,162,34,40,8,29,2,8,223,0,27,249,22,152,3,20,15, +159,37,35,43,198,27,28,248,80,158,37,34,194,28,27,248,80,158,38,35,195, +28,248,80,158,38,36,193,28,249,22,166,3,194,20,15,159,39,36,43,9,11, +11,27,248,80,158,38,37,195,28,248,80,158,38,34,193,249,80,158,39,38,248, +80,158,40,35,195,248,80,158,40,39,248,80,158,41,37,196,11,11,11,28,192, +28,248,22,129,3,199,27,248,22,58,248,80,158,39,40,21,93,62,117,113,249, +203,194,248,22,65,249,22,65,197,198,253,80,159,42,8,30,35,201,202,198,248, +22,178,2,205,205,89,162,34,36,53,9,226,8,9,14,11,249,195,250,22,152, +3,199,249,22,65,248,80,158,45,35,200,203,197,199,27,28,248,80,158,38,36, +195,28,249,22,166,3,196,20,15,159,39,37,43,9,11,11,28,192,251,22,178, +8,11,6,25,25,109,105,115,117,115,101,32,119,105,116,104,105,110,32,113,117, +97,115,105,115,121,110,116,97,120,201,202,27,28,248,80,158,39,34,196,249,80, +158,40,38,27,248,80,158,42,35,199,28,248,80,158,42,34,193,28,27,248,80, +158,43,35,194,28,248,80,158,43,36,193,28,249,22,166,3,194,20,15,159,44, +38,43,9,11,11,27,248,80,158,43,37,194,28,248,80,158,43,34,193,249,80, +158,44,41,248,80,158,45,35,195,248,80,158,45,39,248,80,158,46,37,196,11, +11,11,27,248,80,158,42,37,199,250,22,152,3,201,195,201,11,28,192,27,248, +22,58,194,27,248,22,59,195,28,248,22,129,3,203,27,89,162,34,36,59,71, +114,101,115,116,45,100,111,110,101,45,107,226,7,13,10,2,27,249,22,152,3, +20,15,159,40,39,43,248,22,58,248,80,158,42,40,21,93,63,117,113,115,27, +249,22,152,3,20,15,159,41,40,43,250,22,152,3,199,2,9,199,249,198,250, +22,152,3,200,250,22,67,201,20,15,159,47,41,43,206,200,249,22,57,27,250, +22,67,201,202,200,253,80,158,50,42,20,15,159,50,42,43,21,96,2,10,2, +11,2,12,2,13,248,22,58,199,20,15,159,50,43,43,248,22,84,199,248,22, +86,199,203,253,80,159,47,8,30,35,206,23,15,199,23,17,89,162,34,34,43, +9,224,7,6,249,194,195,9,198,253,80,159,46,8,30,35,205,206,199,248,22, +178,2,23,17,89,162,34,34,55,9,230,12,14,13,18,17,16,15,6,253,80, +159,47,8,30,35,203,204,198,200,201,27,248,80,158,49,35,201,89,162,34,36, +51,9,225,11,8,0,249,196,250,22,152,3,198,249,22,57,199,202,198,249,22, +71,9,200,89,162,34,36,57,9,229,12,14,13,18,16,15,6,27,27,250,22, +152,3,248,80,158,46,35,199,249,22,65,248,80,158,48,35,248,80,158,49,35, +202,206,248,80,158,46,35,199,89,162,34,36,52,9,226,5,3,10,0,249,197, +250,22,152,3,199,249,22,57,199,203,199,249,22,71,197,201,253,80,159,47,8, +30,35,203,204,199,201,89,162,34,34,43,9,224,7,6,249,194,195,9,198,27, +28,248,80,158,40,36,197,28,249,22,166,3,198,20,15,159,41,44,43,9,11, +11,28,192,251,22,178,8,11,6,25,25,109,105,115,117,115,101,32,119,105,116, +104,105,110,32,113,117,97,115,105,115,121,110,116,97,120,203,204,27,28,248,80, +158,41,34,198,28,27,248,80,158,42,35,199,28,248,80,158,42,36,193,28,249, +22,166,3,194,20,15,159,43,45,43,9,11,11,27,248,80,158,42,37,199,28, +248,80,158,42,34,193,249,80,158,43,38,248,80,158,44,35,195,248,80,158,44, +39,248,80,158,45,37,196,11,11,11,28,192,253,80,159,46,8,30,35,205,206, +198,248,22,177,2,23,17,23,17,89,162,34,36,52,9,225,12,18,15,249,195, +250,22,152,3,197,249,22,65,248,80,158,44,35,200,202,197,198,28,248,22,56, +248,22,153,3,203,253,80,159,46,8,31,35,23,16,205,206,248,22,153,3,23, +16,23,17,89,162,34,36,48,9,224,18,15,249,195,250,22,152,3,197,199,197, +197,28,248,22,167,7,248,22,153,3,203,253,80,159,46,8,30,35,205,206,250, +22,152,3,23,18,248,22,174,7,248,22,153,3,23,20,23,18,23,16,23,17, +89,162,34,36,50,9,224,18,15,249,195,250,22,152,3,197,248,22,175,7,248, +22,159,3,201,197,197,247,203,80,159,34,8,30,35,83,158,34,16,2,89,162, +8,64,40,55,2,14,223,0,28,248,22,56,197,28,27,248,22,58,198,27,28, +248,80,158,37,36,194,27,249,22,166,3,196,20,15,159,39,46,43,28,192,192, +249,22,166,3,196,20,15,159,39,47,43,11,28,192,192,28,248,80,158,37,34, +194,27,248,80,158,38,35,195,28,248,80,158,38,36,193,249,22,166,3,194,20, +15,159,39,48,43,11,11,253,80,159,40,8,30,35,200,201,250,22,152,3,11, +205,11,199,203,204,253,80,159,40,8,31,35,199,200,201,248,22,59,203,89,162, +34,34,53,9,229,6,9,8,7,12,11,10,253,80,159,46,8,30,35,202,203, +248,22,58,199,201,199,89,162,34,36,51,9,224,8,6,249,195,249,22,57,250, +22,152,3,248,22,58,200,201,248,22,58,200,248,22,59,197,197,89,162,34,36, +54,9,228,6,9,8,7,12,10,253,80,159,45,8,30,35,201,202,248,22,58, +199,200,89,162,34,34,48,9,226,7,6,13,12,249,197,249,22,57,248,22,58, +199,196,195,89,162,34,36,53,9,226,7,6,13,12,249,197,249,22,57,250,22, +152,3,248,22,58,202,203,248,22,58,202,196,249,22,71,201,197,28,248,22,63, +197,247,197,253,80,159,40,8,30,35,200,201,202,199,203,204,80,159,34,8,31, +35,27,89,162,34,37,51,2,15,223,1,27,20,15,159,35,34,43,253,80,159, +41,8,30,35,198,200,201,34,89,162,8,36,34,47,9,226,10,9,8,6,250, +22,152,3,195,248,199,198,196,89,162,8,36,36,52,9,226,7,10,8,6,250, +22,152,3,195,250,22,65,20,15,159,43,49,43,203,248,201,203,196,249,22,7, +89,162,34,35,51,9,224,3,2,27,249,22,152,3,20,15,159,38,50,43,197, +27,28,248,80,158,38,34,194,249,80,158,39,41,248,80,158,40,35,196,27,248, +80,158,41,37,197,28,248,80,158,41,34,193,249,80,158,42,38,248,80,158,43, +35,195,248,80,158,43,39,248,80,158,44,37,196,11,11,28,192,27,248,22,58, +194,27,248,22,59,195,250,199,201,195,80,159,42,8,32,35,250,22,178,8,11, +2,16,196,89,162,34,35,54,9,224,3,2,27,249,22,152,3,20,15,159,38, +52,43,197,27,28,248,80,158,38,34,194,249,80,158,39,41,248,80,158,40,35, +196,27,248,80,158,41,37,197,28,248,80,158,41,34,193,249,80,158,42,41,248, +80,158,43,35,195,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249,80, +158,45,38,248,80,158,46,35,195,248,80,158,46,39,248,80,158,47,37,196,11, +11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,250,200, +202,195,89,162,8,36,35,45,9,224,9,4,250,22,65,20,15,159,38,53,43, +195,197,250,22,178,8,11,2,16,196,37,20,100,159,37,16,9,30,2,3,69, +115,116,120,45,112,97,105,114,63,11,30,2,3,67,115,116,120,45,99,97,114, +5,30,2,3,71,105,100,101,110,116,105,102,105,101,114,63,2,30,2,3,67, +115,116,120,45,99,100,114,6,30,2,3,69,97,112,112,101,110,100,47,35,102, +0,30,2,3,71,115,116,120,45,110,117,108,108,47,35,102,9,30,70,35,37, +119,105,116,104,45,115,116,120,1,20,103,101,110,101,114,97,116,101,45,116,101, +109,112,111,114,97,114,105,101,115,0,30,2,3,67,99,111,110,115,47,35,102, +1,30,69,35,37,115,116,120,99,97,115,101,1,24,97,112,112,108,121,45,112, +97,116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101,0,16,20,33, +40,33,45,33,46,33,47,33,48,33,53,33,54,33,56,33,57,33,58,33,59, +33,60,33,62,33,63,33,64,33,65,33,68,33,69,33,71,33,72,11,93,83, +158,34,16,2,89,162,8,36,36,45,2,2,223,0,87,94,28,248,80,158,35, +35,194,12,250,22,179,8,2,7,6,18,18,112,114,111,112,101,114,32,115,121, +110,116,97,120,32,108,105,115,116,196,250,22,152,3,197,196,197,80,159,34,34, +35,95,2,35,2,19,2,3,95,2,35,2,19,2,3,0}; + EVAL_ONE_SIZED_STR((char *)expr, 3564); + } + { + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,162,0,0,0,1,0,0,6,0,9,0,23, +0,30,0,47,0,65,0,74,0,87,0,94,0,101,0,108,0,122,0,129,0, +136,0,149,0,156,0,163,0,170,0,177,0,184,0,187,0,194,0,201,0,208, +0,214,0,224,0,252,0,22,1,39,1,44,1,47,1,55,1,59,1,69,1, +71,1,81,1,91,1,96,1,106,1,109,1,113,1,123,1,130,1,140,1,145, +1,155,1,158,1,173,1,182,1,192,1,202,1,212,1,222,1,232,1,242,1, +252,1,1,2,11,2,25,2,41,2,67,2,74,2,81,2,94,2,101,2,108, +2,115,2,122,2,129,2,136,2,146,2,151,2,161,2,171,2,181,2,189,2, +208,2,230,2,232,2,242,2,252,2,5,3,19,3,31,3,43,3,55,3,69, +3,83,3,103,3,109,3,123,3,139,3,155,3,171,3,203,3,209,3,231,3, +253,3,20,4,32,4,55,4,86,4,112,4,118,4,130,4,190,4,196,4,202, +4,214,4,31,5,37,5,25,6,42,6,48,6,60,6,66,6,150,6,160,6, +201,6,207,6,213,6,219,6,232,6,46,7,113,7,119,7,132,7,164,7,171, +7,178,7,185,7,203,7,219,7,244,7,47,8,56,8,112,8,123,8,134,8, +146,8,168,8,196,8,154,9,170,9,201,9,208,9,215,9,27,10,38,10,45, +10,110,10,123,10,130,10,198,10,209,10,216,10,28,11,39,11,46,11,118,11, +141,11,0,0,5,26,0,0,65,98,101,103,105,110,29,11,11,73,100,101,102, +105,110,101,45,115,121,110,116,97,120,66,100,101,102,105,110,101,76,98,101,103, +105,110,45,102,111,114,45,115,121,110,116,97,120,77,100,101,102,105,110,101,45, +102,111,114,45,115,121,110,116,97,120,68,116,114,121,45,110,101,120,116,6,10, +10,98,97,100,32,115,121,110,116,97,120,3,1,4,103,49,55,54,3,1,4, +103,49,55,52,3,1,4,103,49,55,53,73,103,101,110,101,114,97,108,45,112, +114,111,116,111,3,1,4,103,49,54,52,3,1,4,103,49,54,51,72,115,105, +109,112,108,101,45,112,114,111,116,111,3,1,4,103,49,52,57,3,1,4,103, +49,52,56,3,1,4,103,49,53,48,3,1,4,103,49,53,53,3,1,4,103, +49,53,52,62,109,107,3,1,4,103,49,57,48,3,1,4,103,49,56,56,3, +1,4,103,49,56,57,65,35,37,115,116,120,69,35,37,115,116,120,99,97,115, +101,1,26,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101, +99,116,47,115,104,97,112,101,1,24,97,112,112,108,121,45,112,97,116,116,101, +114,110,45,115,117,98,115,116,105,116,117,116,101,76,35,37,115,116,120,99,97, +115,101,45,115,99,104,101,109,101,64,104,101,114,101,29,11,11,67,35,37,113, +113,115,116,120,63,115,116,120,3,1,7,101,110,118,49,48,50,52,61,95,3, +1,7,101,110,118,49,48,50,53,3,1,7,101,110,118,49,48,51,51,64,100, +101,115,116,3,1,7,101,110,118,49,48,52,48,62,105,100,63,97,114,103,3, +1,7,101,110,118,49,48,52,49,66,108,97,109,98,100,97,3,1,7,101,110, +118,49,48,55,48,64,114,101,115,116,3,1,7,101,110,118,49,48,55,49,29, +11,11,74,35,37,115,109,97,108,108,45,115,99,104,101,109,101,68,104,101,114, +101,45,115,116,120,3,1,7,101,110,118,50,57,55,53,3,1,7,101,110,118, +49,49,48,55,3,1,7,101,110,118,49,49,48,56,3,1,7,101,110,118,49, +48,51,50,3,1,7,101,110,118,49,49,57,56,3,1,7,101,110,118,49,49, +57,57,3,1,7,101,110,118,49,50,52,54,64,101,120,112,114,3,1,7,101, +110,118,49,50,52,55,73,100,101,102,105,110,101,45,118,97,108,117,101,115,75, +100,101,102,105,110,101,45,115,121,110,116,97,120,101,115,1,24,100,101,102,105, +110,101,45,118,97,108,117,101,115,45,102,111,114,45,115,121,110,116,97,120,3, +1,4,103,49,57,55,3,1,4,103,49,57,54,72,109,111,100,117,108,101,45, +98,101,103,105,110,3,1,4,103,50,48,54,3,1,4,103,50,48,56,3,1, +4,103,50,48,55,3,1,4,103,50,48,57,3,1,4,103,50,49,48,3,1, +4,103,50,49,49,3,1,7,101,110,118,49,50,56,53,64,101,108,101,109,3, +1,7,101,110,118,49,50,56,54,3,1,7,101,110,118,49,50,57,56,3,1, +7,101,110,118,49,50,57,57,67,114,101,113,117,105,114,101,78,114,101,113,117, +105,114,101,45,102,111,114,45,115,121,110,116,97,120,1,20,114,101,113,117,105, +114,101,45,102,111,114,45,116,101,109,112,108,97,116,101,61,118,3,1,7,101, +110,118,49,51,50,50,3,1,7,101,110,118,49,51,50,51,68,35,37,107,101, +114,110,101,108,30,2,25,69,115,116,120,45,112,97,105,114,63,11,30,2,25, +67,99,111,110,115,47,35,102,1,30,2,25,67,115,116,120,45,99,97,114,5, +30,2,25,67,115,116,120,45,99,100,114,6,30,2,25,69,115,116,120,45,108, +105,115,116,63,8,30,2,25,69,115,116,120,45,62,108,105,115,116,4,30,68, +35,37,115,116,120,108,111,99,68,114,101,108,111,99,97,116,101,0,30,2,26, +2,28,0,30,2,25,69,97,112,112,101,110,100,47,35,102,0,30,2,25,71, +105,100,101,110,116,105,102,105,101,114,63,2,30,2,25,71,115,116,120,45,110, +117,108,108,47,35,102,9,16,4,11,11,2,33,3,1,7,101,110,118,49,48, +48,57,16,4,11,11,77,100,101,102,105,110,101,45,118,97,108,117,101,115,45, +115,116,120,3,1,7,101,110,118,49,48,48,56,95,8,193,11,16,0,97,10, +35,11,95,159,2,32,9,11,159,2,25,9,11,159,2,29,9,11,16,0,96, +10,34,11,16,8,2,3,2,2,2,4,2,2,2,5,2,2,2,6,2,2, +18,99,2,30,13,16,4,34,2,31,2,2,11,8,98,8,97,8,96,8,95, +8,94,16,6,11,11,2,15,2,12,2,37,2,37,16,8,11,11,2,35,65, +112,114,111,116,111,64,98,111,100,121,2,36,2,36,2,36,16,8,11,11,3, +1,4,103,49,50,56,3,1,4,103,49,50,57,3,1,4,103,49,51,48,2, +34,2,34,2,34,101,13,16,4,34,2,31,2,2,11,8,98,8,97,8,96, +8,95,8,94,8,102,8,101,8,100,18,158,2,30,8,103,16,6,11,11,2, +15,2,12,2,37,2,37,103,13,16,4,34,2,31,2,2,11,8,98,8,97, +8,96,8,95,8,94,8,102,8,101,8,105,16,6,11,11,3,1,4,103,49, +52,51,3,1,4,103,49,52,52,2,39,2,39,16,6,11,11,2,40,2,41, +2,42,2,42,18,158,2,38,8,106,18,158,2,30,8,106,18,158,160,10,2, +43,2,16,2,17,8,106,103,13,16,4,34,2,31,2,2,11,8,98,8,97, +8,96,8,95,8,94,8,102,8,101,8,105,16,8,11,11,3,1,4,103,49, +52,48,3,1,4,103,49,52,49,3,1,4,103,49,52,50,2,44,2,44,2, +44,16,8,11,11,2,40,2,41,2,45,2,46,2,46,2,46,18,158,2,38, +8,110,103,13,16,4,34,29,11,11,2,47,11,97,10,34,11,95,159,68,35, +37,112,97,114,97,109,122,9,11,159,2,48,9,11,159,2,25,9,11,16,14, +2,27,2,47,66,115,121,110,116,97,120,2,47,73,115,121,110,116,97,120,45, +99,97,115,101,42,42,2,47,1,20,99,97,116,99,104,45,101,108,108,105,112, +115,105,115,45,101,114,114,111,114,2,47,78,112,97,116,116,101,114,110,45,115, +117,98,115,116,105,116,117,116,101,2,47,2,28,2,47,75,115,117,98,115,116, +105,116,117,116,101,45,115,116,111,112,2,47,97,10,35,11,95,159,64,35,37, +115,99,9,11,159,2,48,9,11,159,2,25,9,11,16,0,95,8,193,11,16, +0,16,4,11,11,61,120,3,1,7,101,110,118,50,57,55,51,16,4,11,11, +2,49,2,50,16,4,11,11,2,49,2,50,16,4,11,11,2,49,3,1,7, +101,110,118,50,57,55,55,13,16,4,35,2,47,2,26,11,93,8,177,15,16, +4,11,11,61,114,3,1,7,101,110,118,49,48,55,56,18,16,2,158,94,10, +2,18,8,112,95,9,8,177,15,2,26,18,158,2,30,8,110,18,158,160,10, +2,43,2,19,2,20,8,110,18,158,2,30,8,103,103,13,16,4,34,2,31, +2,2,11,8,98,8,97,8,96,8,95,8,94,8,102,8,101,8,100,16,8, +11,11,3,1,4,103,49,53,56,3,1,4,103,49,53,57,3,1,4,103,49, +54,48,2,51,2,51,2,51,16,8,11,11,69,115,111,109,101,116,104,105,110, +103,64,109,111,114,101,2,45,2,52,2,52,2,52,18,158,159,10,2,13,2, +14,8,117,101,13,16,4,34,2,31,2,2,11,8,98,8,97,8,96,8,95, +8,94,8,102,8,101,16,6,11,11,2,40,66,109,107,45,114,104,115,2,53, +2,53,18,158,2,30,8,119,18,158,2,30,8,119,18,158,2,30,8,119,18, +158,96,10,2,9,93,2,10,2,11,8,119,18,101,2,30,13,16,4,34,2, +31,2,2,11,8,98,8,97,8,96,8,95,8,94,16,8,11,11,3,1,4, +103,49,51,52,3,1,4,103,49,51,53,3,1,4,103,49,51,54,2,54,2, +54,2,54,16,8,11,11,2,35,2,40,2,45,2,55,2,55,2,55,100,13, +16,4,34,2,31,2,2,11,8,98,8,97,8,96,8,95,8,94,16,8,11, +11,3,1,4,103,49,51,55,3,1,4,103,49,51,56,3,1,4,103,49,51, +57,2,56,2,56,2,56,16,8,11,11,2,35,2,40,2,57,2,58,2,58, +2,58,18,158,2,30,8,125,18,158,96,10,2,22,93,2,23,2,24,8,125, +97,13,16,4,34,2,31,2,2,11,8,98,8,97,8,96,16,4,11,11,2, +21,3,1,7,101,110,118,49,48,48,55,18,158,2,59,8,128,2,18,158,2, +60,8,128,2,18,158,2,61,8,128,2,16,4,11,11,63,99,116,120,3,1, +7,101,110,118,49,50,55,48,16,4,11,11,2,33,3,1,7,101,110,118,49, +50,54,57,18,99,2,30,13,16,4,34,2,31,2,2,11,8,98,8,97,8, +96,8,133,2,8,132,2,100,13,16,4,34,2,31,2,2,11,8,98,8,97, +8,96,8,133,2,8,132,2,16,4,11,11,3,1,4,103,49,57,53,3,1, +7,101,110,118,49,50,55,53,16,4,11,11,2,35,3,1,7,101,110,118,49, +50,55,54,18,158,94,10,2,1,8,135,2,100,13,16,4,34,2,31,2,2, +11,8,98,8,97,8,96,8,133,2,8,132,2,16,6,11,11,3,1,4,103, +49,57,49,3,1,4,103,49,57,50,2,71,2,71,16,6,11,11,2,35,2, +72,2,73,2,73,18,158,159,10,2,1,2,62,8,137,2,18,158,95,10,2, +5,2,63,8,137,2,16,6,11,11,2,35,2,72,2,75,2,75,16,6,11, +11,3,1,4,103,49,57,51,3,1,4,103,49,57,52,2,74,2,74,100,13, +16,4,34,2,31,2,2,11,8,98,8,97,8,96,8,133,2,8,132,2,8, +141,2,8,140,2,18,158,117,10,2,1,2,59,2,60,2,61,64,115,101,116, +33,70,108,101,116,45,118,97,108,117,101,115,71,108,101,116,42,45,118,97,108, +117,101,115,73,108,101,116,114,101,99,45,118,97,108,117,101,115,2,43,71,99, +97,115,101,45,108,97,109,98,100,97,62,105,102,65,113,117,111,116,101,1,22, +108,101,116,114,101,99,45,115,121,110,116,97,120,101,115,43,118,97,108,117,101, +115,76,102,108,117,105,100,45,108,101,116,45,115,121,110,116,97,120,1,22,119, +105,116,104,45,99,111,110,116,105,110,117,97,116,105,111,110,45,109,97,114,107, +72,35,37,101,120,112,114,101,115,115,105,111,110,1,20,35,37,118,97,114,105, +97,98,108,101,45,114,101,102,101,114,101,110,99,101,65,35,37,97,112,112,65, +35,37,116,111,112,67,35,37,100,97,116,117,109,67,112,114,111,118,105,100,101, +2,76,2,77,2,78,8,142,2,16,4,11,11,61,101,3,1,7,101,110,118, +49,51,48,52,101,13,16,4,34,2,31,2,2,11,8,98,8,97,8,96,8, +133,2,8,132,2,8,141,2,8,140,2,8,144,2,18,158,2,30,8,145,2, +18,158,2,1,8,145,2,103,13,16,4,34,2,31,2,2,11,8,98,8,97, +8,96,8,133,2,8,132,2,8,141,2,8,140,2,8,144,2,16,4,11,11, +3,1,4,103,50,48,53,3,1,7,101,110,118,49,51,49,48,16,4,11,11, +2,79,3,1,7,101,110,118,49,51,49,49,18,158,159,10,2,5,2,65,8, +148,2,18,158,2,59,8,145,2,103,13,16,4,34,2,31,2,2,11,8,98, +8,97,8,96,8,133,2,8,132,2,8,141,2,8,140,2,8,144,2,16,6, +11,11,3,1,4,103,50,48,51,3,1,4,103,50,48,52,2,80,2,80,16, +6,11,11,2,40,2,57,2,81,2,81,18,158,96,10,2,61,2,66,2,67, +8,151,2,18,158,2,76,8,145,2,103,13,16,4,34,2,31,2,2,11,8, +98,8,97,8,96,8,133,2,8,132,2,8,141,2,8,140,2,8,144,2,16, +4,11,11,3,1,4,103,50,48,50,3,1,7,101,110,118,49,51,51,52,16, +4,11,11,2,79,3,1,7,101,110,118,49,51,51,53,18,158,159,10,2,77, +2,68,8,154,2,18,158,2,78,8,145,2,103,13,16,4,34,2,31,2,2, +11,8,98,8,97,8,96,8,133,2,8,132,2,8,141,2,8,140,2,8,144, +2,16,4,11,11,3,1,4,103,50,48,49,3,1,7,101,110,118,49,51,52, +52,16,4,11,11,2,79,3,1,7,101,110,118,49,51,52,53,18,158,159,10, +2,76,2,69,8,157,2,18,158,2,60,8,145,2,103,13,16,4,34,2,31, +2,2,11,8,98,8,97,8,96,8,133,2,8,132,2,8,141,2,8,140,2, +8,144,2,16,4,11,11,3,1,4,103,49,57,56,3,1,7,101,110,118,49, +51,54,51,16,4,11,11,65,111,116,104,101,114,3,1,7,101,110,118,49,51, +54,52,18,158,96,10,2,61,9,95,2,1,2,70,93,66,118,97,108,117,101, +115,8,160,2,159,34,20,100,159,34,16,1,20,24,2,1,16,0,83,158,40, +20,97,114,68,35,37,100,101,102,105,110,101,2,2,10,10,10,34,80,158,34, +34,20,100,159,34,16,0,16,0,11,11,16,0,34,11,16,4,2,3,2,4, +2,5,2,6,16,4,11,11,11,11,16,4,2,3,2,4,2,5,2,6,34, +38,94,16,5,95,2,4,2,3,2,6,87,99,83,158,34,16,2,89,162,34, +37,8,30,2,7,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248, +80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,27,28, +248,22,149,3,194,193,198,249,80,158,41,35,248,80,158,42,36,196,27,248,80, +158,43,37,197,250,22,152,3,198,195,198,11,11,28,192,27,248,22,58,194,27, +248,22,84,195,27,248,22,86,196,28,248,80,158,39,45,194,250,22,178,8,11, +27,249,22,152,3,20,15,159,44,49,49,204,27,28,248,80,158,44,34,194,249, +80,158,45,35,248,80,158,46,36,196,27,248,80,158,47,37,197,28,248,80,158, +47,34,193,249,80,158,48,44,248,80,158,49,36,195,248,80,158,49,48,248,80, +158,50,37,196,11,11,28,192,27,248,22,58,194,27,248,22,59,195,6,46,46, +98,97,100,32,115,121,110,116,97,120,32,40,122,101,114,111,32,101,120,112,114, +101,115,115,105,111,110,115,32,97,102,116,101,114,32,105,100,101,110,116,105,102, +105,101,114,41,27,28,248,80,158,45,34,195,249,80,158,46,35,248,80,158,47, +36,197,27,248,80,158,48,37,198,28,248,80,158,48,34,193,249,80,158,49,35, +248,80,158,50,36,195,27,248,80,158,51,37,196,28,248,80,158,51,38,193,248, +80,158,51,39,193,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27, +248,22,86,196,6,50,50,98,97,100,32,115,121,110,116,97,120,32,40,109,117, +108,116,105,112,108,101,32,101,120,112,114,101,115,115,105,111,110,115,32,97,102, +116,101,114,32,105,100,101,110,116,105,102,105,101,114,41,27,28,248,80,158,46, +34,196,249,80,158,47,35,248,80,158,48,36,198,27,248,80,158,49,37,199,28, +248,80,158,49,34,193,27,28,248,22,149,3,194,193,199,249,80,158,51,35,248, +80,158,52,36,196,27,248,80,158,53,37,197,250,22,152,3,198,195,198,11,11, +28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,6,31,31,98, +97,100,32,115,121,110,116,97,120,32,40,105,108,108,101,103,97,108,32,117,115, +101,32,111,102,32,96,46,39,41,250,22,178,8,11,2,8,198,201,250,80,159, +41,8,41,35,200,201,202,250,80,159,38,8,41,35,197,198,199,80,159,34,8, +42,35,83,158,34,16,2,89,162,34,37,54,2,7,223,0,27,28,248,80,158, +36,34,195,249,80,158,37,35,248,80,158,38,36,197,27,248,80,158,39,37,198, +28,248,80,158,39,34,193,27,28,248,22,149,3,194,193,198,249,80,158,41,35, +248,80,158,42,36,196,27,248,80,158,43,37,197,250,22,152,3,198,195,198,11, +11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,28,248,80, +158,39,34,194,250,80,159,41,8,40,35,200,201,202,251,22,178,8,11,6,10, +10,98,97,100,32,115,121,110,116,97,120,202,197,250,80,159,38,8,40,35,197, +198,199,80,159,34,8,41,35,83,158,34,16,2,89,162,34,37,8,27,2,7, +223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248,80,158,38,36,197, +27,248,80,158,39,37,198,28,248,80,158,39,34,193,27,28,248,22,149,3,194, +193,198,249,80,158,41,35,248,80,158,42,36,196,27,248,80,158,43,37,197,250, +22,152,3,198,195,198,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27, +248,22,86,196,91,159,36,11,90,161,36,34,11,249,80,159,42,8,38,35,202, +197,87,95,28,248,80,158,41,38,195,12,250,22,178,8,11,6,50,50,98,97, +100,32,115,121,110,116,97,120,32,40,105,108,108,101,103,97,108,32,117,115,101, +32,111,102,32,96,46,39,32,102,111,114,32,112,114,111,99,101,100,117,114,101, +32,98,111,100,121,41,203,28,248,80,158,41,47,195,250,22,178,8,11,6,46, +46,98,97,100,32,115,121,110,116,97,120,32,40,110,111,32,101,120,112,114,101, +115,115,105,111,110,115,32,102,111,114,32,112,114,111,99,101,100,117,114,101,32, +98,111,100,121,41,203,12,27,249,22,152,3,20,15,159,43,45,49,204,27,249, +22,152,3,20,15,159,44,46,49,196,27,249,22,152,3,20,15,159,45,47,49, +248,199,200,249,80,158,45,41,205,27,250,22,67,198,200,199,252,80,158,51,42, +20,15,159,51,48,49,21,95,2,9,2,10,2,11,248,22,84,198,248,22,86, +198,248,22,58,198,250,22,178,8,11,2,8,197,80,159,34,8,40,35,83,158, +34,16,2,89,162,34,36,50,2,12,223,0,27,249,22,152,3,20,15,159,37, +43,49,197,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36, +196,27,248,80,158,40,37,197,250,22,152,3,199,195,199,11,28,192,27,248,22, +58,194,27,248,22,59,195,28,248,80,158,39,45,194,249,22,7,195,249,80,159, +42,8,37,35,201,202,250,80,159,41,8,39,35,198,201,200,250,80,159,39,8, +39,35,196,199,198,80,159,34,8,38,35,83,158,34,16,2,89,162,34,37,57, +2,7,223,0,27,28,248,80,158,36,34,195,249,80,158,37,44,27,248,80,158, +39,36,198,28,248,80,158,39,34,193,249,80,158,40,35,248,80,158,41,36,195, +27,248,80,158,42,37,196,248,22,65,250,22,152,3,199,196,199,11,27,248,80, +158,39,37,198,250,22,152,3,200,195,200,11,28,192,27,248,22,58,194,27,248, +22,84,195,27,248,22,86,196,91,159,36,11,90,161,36,34,11,249,80,159,42, +8,38,35,203,27,249,22,67,201,200,251,80,158,47,42,20,15,159,47,44,49, +21,94,2,13,2,14,248,22,58,197,248,22,59,197,27,249,80,159,43,8,37, +35,204,203,249,22,7,195,89,162,34,35,45,9,224,4,2,248,194,248,22,65, +248,195,197,27,28,248,80,158,37,34,196,249,80,158,38,35,248,80,158,39,36, +198,27,248,80,158,40,37,199,250,22,152,3,201,195,201,11,28,192,27,248,22, +58,194,27,248,22,59,195,251,22,178,8,11,6,82,82,98,97,100,32,115,121, +110,116,97,120,32,40,110,111,116,32,97,110,32,105,100,101,110,116,105,102,105, +101,114,32,102,111,114,32,112,114,111,99,101,100,117,114,101,32,110,97,109,101, +44,32,97,110,100,32,110,111,116,32,97,32,110,101,115,116,101,100,32,112,114, +111,99,101,100,117,114,101,32,102,111,114,109,41,203,197,250,22,178,8,11,2, +8,198,80,159,34,8,39,35,83,158,34,16,2,89,162,8,100,36,8,28,2, +15,223,0,91,159,36,11,90,161,36,34,11,27,249,22,152,3,20,15,159,39, +35,49,199,27,28,248,80,158,39,34,194,249,80,158,40,35,248,80,158,41,36, +196,27,248,80,158,42,37,197,28,248,80,158,42,38,193,248,80,158,42,39,193, +11,11,28,192,27,248,22,58,194,27,248,22,59,195,249,22,7,248,22,159,3, +249,80,158,45,40,20,15,159,45,36,49,197,89,162,34,35,52,9,225,8,9, +2,27,249,22,152,3,20,15,159,39,37,49,198,249,80,158,39,41,196,27,249, +22,67,198,197,251,80,158,44,42,20,15,159,44,38,49,21,94,2,16,2,17, +248,22,58,197,248,22,59,197,27,28,248,80,158,40,34,195,249,80,158,41,35, +248,80,158,42,36,197,27,248,80,158,43,37,198,91,159,37,11,90,161,37,34, +11,250,80,158,48,43,198,35,11,28,194,27,28,248,22,149,3,197,196,201,249, +80,158,48,44,28,248,80,158,49,38,196,248,22,65,248,80,158,50,39,197,11, +250,22,152,3,197,199,197,11,11,28,192,27,248,22,58,194,27,248,22,84,195, +27,248,22,86,196,249,22,7,248,22,159,3,27,249,22,67,198,199,249,80,158, +48,40,20,15,159,48,39,49,249,22,71,248,22,59,197,250,80,158,53,42,20, +15,159,53,40,49,21,93,2,18,248,22,58,200,89,162,34,35,55,9,226,10, +11,2,3,27,249,22,152,3,20,15,159,40,41,49,199,249,80,158,40,41,197, +27,250,22,67,199,200,198,251,80,158,45,42,20,15,159,45,42,49,21,94,2, +19,2,20,249,22,71,248,22,58,199,248,22,84,199,248,22,86,197,250,22,178, +8,11,2,8,197,87,95,249,22,3,89,162,34,35,46,9,224,4,5,28,248, +80,158,36,45,195,12,251,22,178,8,11,6,40,40,110,111,116,32,97,110,32, +105,100,101,110,116,105,102,105,101,114,32,102,111,114,32,112,114,111,99,101,100, +117,114,101,32,97,114,103,117,109,101,110,116,196,198,194,27,248,80,158,38,46, +194,28,192,251,22,178,8,11,6,29,29,100,117,112,108,105,99,97,116,101,32, +97,114,103,117,109,101,110,116,32,105,100,101,110,116,105,102,105,101,114,200,196, +12,193,80,159,34,8,37,35,27,89,162,8,36,35,41,2,21,223,1,89,162, +34,35,57,9,224,0,1,87,94,28,249,22,77,247,22,175,13,21,93,70,101, +120,112,114,101,115,115,105,111,110,250,22,178,8,11,6,36,36,110,111,116,32, +97,108,108,111,119,101,100,32,105,110,32,97,110,32,101,120,112,114,101,115,115, +105,111,110,32,99,111,110,116,101,120,116,197,12,27,249,22,152,3,20,15,159, +38,34,49,197,27,28,248,80,158,38,34,194,249,80,158,39,35,248,80,158,40, +36,196,27,248,80,158,41,37,197,28,248,80,158,41,34,193,249,80,158,42,35, +248,80,158,43,36,195,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249, +80,158,45,44,248,80,158,46,36,195,248,80,158,46,48,248,80,158,47,37,196, +11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,28, +248,80,158,41,45,194,27,249,22,152,3,20,15,159,43,50,49,200,249,80,158, +43,41,202,27,250,22,67,199,200,198,252,80,158,49,42,20,15,159,49,51,49, +21,95,2,22,2,23,2,24,248,22,86,198,248,22,84,198,248,22,58,198,250, +80,159,43,8,42,35,199,202,200,250,80,159,40,8,42,35,196,199,197,250,22, +7,248,196,20,15,159,39,52,49,248,196,20,15,159,39,53,49,248,196,20,15, +159,39,54,49,39,20,100,159,40,16,15,2,83,2,84,2,85,2,86,2,87, +2,88,30,2,26,2,27,2,2,89,2,90,30,2,25,74,115,112,108,105,116, +45,115,116,120,45,108,105,115,116,3,2,91,2,92,30,2,29,1,26,99,104, +101,99,107,45,100,117,112,108,105,99,97,116,101,45,105,100,101,110,116,105,102, +105,101,114,0,30,2,25,69,115,116,120,45,110,117,108,108,63,10,2,93,16, +21,33,99,33,104,33,107,33,108,33,109,33,111,33,113,33,114,33,115,33,116, +33,118,33,120,33,121,33,122,33,123,33,124,33,126,33,127,33,129,2,33,130, +2,33,131,2,11,16,5,93,2,5,87,95,83,158,34,16,2,89,162,34,36, +52,2,7,223,0,27,28,248,80,158,36,34,195,249,80,158,37,39,248,80,158, +38,36,197,27,248,80,158,39,38,198,28,248,80,158,39,40,193,248,80,158,39, +41,193,11,11,28,192,27,248,22,58,194,27,248,22,59,195,249,80,158,39,42, +199,250,80,158,42,43,20,15,159,42,36,45,21,93,2,62,249,22,2,80,159, +44,8,28,35,199,250,22,178,8,11,2,8,197,80,159,34,8,29,35,83,158, +34,16,2,89,162,35,35,45,9,223,0,250,80,158,37,43,20,15,159,37,37, +45,21,93,2,63,248,22,58,197,80,159,34,8,28,35,89,162,34,35,8,28, +9,223,0,27,247,22,175,13,87,94,28,249,22,77,194,21,95,66,109,111,100, +117,108,101,2,64,69,116,111,112,45,108,101,118,101,108,12,250,22,178,8,11, +6,51,51,97,108,108,111,119,101,100,32,111,110,108,121,32,97,116,32,116,104, +101,32,116,111,112,45,108,101,118,101,108,32,111,114,32,97,32,109,111,100,117, +108,101,32,116,111,112,45,108,101,118,101,108,197,27,249,22,152,3,20,15,159, +38,34,45,197,27,28,248,80,158,38,34,194,249,80,158,39,35,248,80,158,40, +36,196,248,80,158,40,37,248,80,158,41,38,197,11,28,192,20,15,159,37,35, +45,27,28,248,80,158,39,34,195,249,80,158,40,39,248,80,158,41,36,197,27, +248,80,158,42,38,198,28,248,80,158,42,34,193,249,80,158,43,35,248,80,158, +44,36,195,248,80,158,44,37,248,80,158,45,38,196,11,11,28,192,27,248,22, +58,194,27,248,22,59,195,28,249,22,149,8,199,2,64,249,80,159,42,8,29, +35,198,201,27,250,22,164,8,196,201,248,22,159,3,20,15,159,45,38,45,27, +249,22,152,3,20,15,159,44,39,45,195,27,28,248,80,158,44,34,194,28,27, +248,80,158,45,36,195,28,248,80,158,45,44,193,28,249,22,167,3,194,20,15, +159,46,40,45,9,11,11,27,248,80,158,45,38,195,28,248,80,158,45,40,193, +248,80,158,45,41,193,11,11,11,28,192,250,80,158,46,43,20,15,159,46,41, +45,21,93,2,65,195,27,28,248,80,158,45,34,195,28,27,248,80,158,46,36, +196,28,248,80,158,46,44,193,28,249,22,167,3,194,20,15,159,47,42,45,9, +11,11,27,248,80,158,46,38,196,28,248,80,158,46,34,193,249,80,158,47,35, +27,248,80,158,49,36,196,28,248,80,158,49,40,193,248,22,65,248,80,158,50, +41,194,11,27,248,80,158,49,38,196,28,248,80,158,49,34,193,249,80,158,50, +35,248,80,158,51,36,195,248,80,158,51,37,248,80,158,52,38,196,11,11,11, +11,28,192,27,248,22,58,194,27,248,22,59,195,27,249,22,67,196,195,251,80, +158,51,43,20,15,159,51,43,45,21,94,2,66,2,67,248,22,58,197,248,22, +59,197,27,28,248,80,158,46,34,196,28,27,248,80,158,47,36,197,28,248,80, +158,47,44,193,28,249,22,167,3,194,20,15,159,48,44,45,9,11,11,27,248, +80,158,47,38,197,28,248,80,158,47,40,193,248,80,158,47,41,193,11,11,11, +28,192,250,80,158,48,43,20,15,159,48,45,45,21,93,2,68,195,27,28,248, +80,158,47,34,197,28,27,248,80,158,48,36,198,28,248,80,158,48,44,193,28, +249,22,167,3,194,20,15,159,49,46,45,9,11,11,27,248,80,158,48,38,198, +28,248,80,158,48,40,193,248,80,158,48,41,193,11,11,11,28,192,250,80,158, +49,43,20,15,159,49,47,45,21,93,2,69,195,27,28,248,80,158,48,34,198, +28,27,248,80,158,49,36,199,28,248,80,158,49,44,193,28,249,22,167,3,194, +20,15,159,50,48,45,9,11,11,27,248,80,158,49,38,199,28,248,80,158,49, +34,193,249,80,158,50,35,27,248,80,158,52,36,196,28,248,80,158,52,40,193, +248,22,65,248,80,158,53,41,194,11,27,248,80,158,52,38,196,28,248,80,158, +52,34,193,249,80,158,53,35,248,80,158,54,36,195,248,80,158,54,37,248,80, +158,55,38,196,11,11,11,11,28,192,27,248,22,58,194,27,248,22,59,195,250, +22,178,8,11,6,54,54,115,121,110,116,97,120,32,100,101,102,105,110,105,116, +105,111,110,115,32,110,111,116,32,97,108,108,111,119,101,100,32,119,105,116,104, +105,110,32,98,101,103,105,110,45,102,111,114,45,115,121,110,116,97,120,204,250, +80,158,50,43,20,15,159,50,49,45,21,93,2,70,200,249,80,159,40,8,29, +35,196,199,34,20,100,159,36,16,11,2,83,2,91,2,85,2,93,2,86,2, +84,2,87,2,88,2,89,2,90,2,92,16,16,33,134,2,33,136,2,33,138, +2,33,139,2,33,143,2,33,146,2,33,147,2,33,149,2,33,150,2,33,152, +2,33,153,2,33,155,2,33,156,2,33,158,2,33,159,2,33,161,2,11,9, +93,2,82,96,2,82,2,29,2,25,2,32,0}; + EVAL_ONE_SIZED_STR((char *)expr, 7005); + } + { + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,208,1,0,0,1,0,0,6,0,9,0,24, +0,37,0,46,0,56,0,71,0,77,0,103,0,112,0,137,0,159,0,187,0, +207,0,225,0,239,0,0,1,18,1,49,1,78,1,103,1,132,1,166,1,198, +1,216,1,250,1,10,2,36,2,65,2,83,2,115,2,134,2,163,2,186,2, +198,2,212,2,222,2,235,2,242,2,245,2,4,3,23,3,29,3,34,3,45, +3,59,3,64,3,74,3,81,3,88,3,95,3,102,3,109,3,116,3,129,3, +135,3,145,3,171,3,176,3,179,3,188,3,203,3,211,3,235,3,243,3,4, +4,6,4,16,4,18,4,20,4,30,4,36,4,46,4,56,4,63,4,70,4, +77,4,84,4,91,4,98,4,105,4,112,4,115,4,117,4,121,4,124,4,127, +4,134,4,141,4,148,4,155,4,162,4,169,4,173,4,176,4,179,4,201,4, +211,4,221,4,231,4,241,4,251,4,5,5,7,5,17,5,27,5,34,5,41, +5,48,5,55,5,62,5,69,5,76,5,83,5,90,5,94,5,99,5,103,5, +106,5,108,5,113,5,120,5,127,5,134,5,141,5,148,5,155,5,183,5,194, +5,204,5,214,5,216,5,226,5,231,5,234,5,237,5,246,5,0,6,10,6, +20,6,30,6,36,6,43,6,53,6,63,6,70,6,77,6,84,6,91,6,98, +6,105,6,129,6,158,6,162,6,168,6,173,6,177,6,187,6,197,6,207,6, +211,6,221,6,228,6,235,6,242,6,249,6,0,7,7,7,14,7,21,7,28, +7,33,7,38,7,42,7,46,7,52,7,57,7,67,7,77,7,87,7,97,7, +104,7,111,7,118,7,128,7,138,7,145,7,152,7,159,7,166,7,173,7,180, +7,187,7,194,7,201,7,208,7,215,7,222,7,229,7,239,7,244,7,1,8, +9,8,13,8,44,8,46,8,74,8,79,8,84,8,90,8,100,8,110,8,120, +8,130,8,141,8,152,8,162,8,169,8,176,8,183,8,194,8,199,8,204,8, +207,8,214,8,221,8,228,8,235,8,242,8,252,8,6,9,13,9,20,9,27, +9,37,9,47,9,57,9,67,9,74,9,81,9,88,9,98,9,108,9,115,9, +122,9,129,9,136,9,150,9,155,9,161,9,171,9,181,9,188,9,195,9,202, +9,209,9,216,9,223,9,230,9,237,9,244,9,251,9,255,9,4,10,9,10, +22,10,32,10,42,10,52,10,62,10,69,10,76,10,86,10,96,10,100,10,105, +10,108,10,126,10,128,10,133,10,142,10,156,10,168,10,180,10,192,10,206,10, +222,10,228,10,242,10,0,11,16,11,22,11,44,11,234,11,3,12,68,12,86, +12,105,12,170,12,189,12,205,12,225,12,231,12,247,12,13,13,20,13,76,13, +93,13,103,13,185,13,200,13,39,14,62,14,95,14,216,14,1,15,34,15,52, +15,67,15,74,15,96,15,117,15,142,15,181,15,255,15,27,16,34,16,80,16, +88,16,96,16,117,16,148,16,155,16,163,16,189,16,200,16,217,16,227,16,237, +16,253,16,3,17,28,17,134,17,211,17,237,17,52,18,82,18,93,18,170,18, +196,18,8,19,29,19,45,19,70,19,132,19,149,19,168,19,175,19,182,19,189, +19,196,19,203,19,220,19,245,19,66,20,82,20,118,20,172,20,200,20,207,20, +215,20,223,20,33,21,68,21,101,21,169,21,191,21,250,21,10,22,133,22,162, +22,175,22,208,22,225,22,250,22,94,23,149,23,156,23,163,23,170,23,177,23, +184,23,211,23,228,23,1,24,29,24,109,24,125,24,158,24,212,24,243,24,250, +24,2,25,9,25,17,25,124,25,131,25,138,25,145,25,8,26,21,26,34,26, +50,26,83,26,142,26,164,26,223,26,245,26,6,27,31,27,92,27,114,27,179, +27,187,27,194,27,202,27,49,28,70,28,86,28,119,28,187,28,209,28,30,29, +46,29,63,29,88,29,180,29,209,29,226,29,251,29,104,30,130,30,163,30,180, +30,205,30,26,31,42,31,75,31,129,31,157,31,164,31,172,31,238,31,31,32, +44,32,81,32,114,32,182,32,204,32,221,32,246,32,67,33,195,33,0,0,214, +73,0,0,65,98,101,103,105,110,29,11,11,74,115,116,114,117,99,116,58,112, +114,111,109,105,115,101,72,109,97,107,101,45,112,114,111,109,105,115,101,68,112, +114,111,109,105,115,101,63,69,112,114,111,109,105,115,101,45,112,74,115,101,116, +45,112,114,111,109,105,115,101,45,112,33,65,102,111,114,99,101,1,24,99,117, +114,114,101,110,116,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111, +110,68,35,37,112,97,114,97,109,122,1,23,101,120,116,101,110,100,45,112,97, +114,97,109,101,116,101,114,105,122,97,116,105,111,110,1,20,112,97,114,97,109, +101,116,101,114,105,122,97,116,105,111,110,45,107,101,121,1,26,99,97,108,108, +45,119,105,116,104,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111, +110,79,115,116,114,117,99,116,58,98,114,101,97,107,45,112,97,114,97,109,122, +77,109,97,107,101,45,98,114,101,97,107,45,112,97,114,97,109,122,73,98,114, +101,97,107,45,112,97,114,97,109,122,63,76,98,114,101,97,107,45,112,97,114, +97,109,122,45,114,101,102,77,98,114,101,97,107,45,112,97,114,97,109,122,45, +115,101,116,33,1,29,115,116,114,117,99,116,58,98,114,101,97,107,45,112,97, +114,97,109,101,116,101,114,105,122,97,116,105,111,110,1,27,109,97,107,101,45, +98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111, +110,1,23,98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122,97, +116,105,111,110,63,1,27,98,114,101,97,107,45,112,97,114,97,109,101,116,101, +114,105,122,97,116,105,111,110,45,99,101,108,108,1,32,115,101,116,45,98,114, +101,97,107,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,45, +99,101,108,108,33,1,30,99,117,114,114,101,110,116,45,98,114,101,97,107,45, +112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,77,98,114,101,97, +107,45,101,110,97,98,108,101,100,45,107,101,121,1,32,99,97,108,108,45,119, +105,116,104,45,98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122, +97,116,105,111,110,75,99,104,101,99,107,45,102,111,114,45,98,114,101,97,107, +1,24,115,101,108,101,99,116,45,104,97,110,100,108,101,114,47,110,111,45,98, +114,101,97,107,115,1,27,115,101,108,101,99,116,45,104,97,110,100,108,101,114, +47,98,114,101,97,107,115,45,97,115,45,105,115,77,102,97,108,115,101,45,116, +104,114,101,97,100,45,99,101,108,108,1,30,99,104,101,99,107,45,119,105,116, +104,45,104,97,110,100,108,101,114,115,45,105,110,45,99,111,110,116,101,120,116, +78,104,97,110,100,108,101,114,45,112,114,111,109,112,116,45,107,101,121,1,27, +99,97,108,108,45,119,105,116,104,45,101,120,99,101,112,116,105,111,110,45,104, +97,110,100,108,101,114,1,21,101,120,99,101,112,116,105,111,110,45,104,97,110, +100,108,101,114,45,107,101,121,71,115,101,116,33,45,118,97,108,117,101,115,73, +119,105,116,104,45,104,97,110,100,108,101,114,115,69,102,108,117,105,100,45,108, +101,116,72,112,97,114,97,109,101,116,101,114,105,122,101,66,108,101,116,47,99, +99,62,100,111,74,119,105,116,104,45,104,97,110,100,108,101,114,115,42,78,112, +97,114,97,109,101,116,101,114,105,122,101,45,98,114,101,97,107,65,100,101,108, +97,121,64,116,105,109,101,70,108,101,116,45,115,116,114,117,99,116,73,112,97, +114,97,109,101,116,101,114,105,122,101,42,64,99,97,115,101,69,99,97,115,101, +45,116,101,115,116,3,1,4,103,50,49,57,3,1,4,103,50,49,56,3,1, +4,103,50,50,49,3,1,4,103,50,50,48,3,1,4,103,50,50,51,3,1, +4,103,50,50,50,6,10,10,98,97,100,32,115,121,110,116,97,120,65,35,37, +115,116,120,69,35,37,115,116,120,99,97,115,101,1,24,97,112,112,108,121,45, +112,97,116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101,64,104,101, +114,101,29,11,11,68,35,37,100,101,102,105,110,101,74,35,37,115,109,97,108, +108,45,115,99,104,101,109,101,67,112,114,111,109,105,115,101,1,22,98,114,101, +97,107,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,67,35, +37,113,113,115,116,120,76,35,37,115,116,120,99,97,115,101,45,115,99,104,101, +109,101,61,120,3,1,7,101,110,118,49,51,55,55,61,95,61,107,3,1,7, +101,110,118,49,51,55,56,65,113,117,111,116,101,3,1,7,101,110,118,49,51, +57,50,3,1,7,101,110,118,49,51,57,51,3,1,4,103,50,53,52,3,1, +4,103,50,53,55,3,1,4,103,50,53,54,3,1,4,103,50,53,53,3,1, +4,103,50,53,57,3,1,4,103,50,53,56,3,1,4,103,50,54,49,3,1, +4,103,50,54,48,62,105,102,61,118,63,46,46,46,62,101,49,62,101,50,3, +1,4,103,50,54,50,3,1,4,103,50,54,51,3,1,4,103,50,54,53,3, +1,4,103,50,54,52,3,1,4,103,50,54,55,3,1,4,103,50,54,54,63, +108,101,116,62,99,49,62,99,50,1,20,99,97,116,99,104,45,101,108,108,105, +112,115,105,115,45,101,114,114,111,114,3,1,7,101,110,118,49,52,48,56,3, +1,7,101,110,118,49,52,48,57,3,1,7,101,110,118,49,52,50,52,3,1, +7,101,110,118,49,52,50,53,3,1,7,101,110,118,49,52,52,52,3,1,7, +101,110,118,49,52,52,53,61,114,3,1,7,101,110,118,49,52,54,57,3,1, +7,101,110,118,49,52,55,48,3,1,4,103,50,56,57,3,1,4,103,50,56, +56,3,1,4,103,50,56,51,3,1,4,103,50,56,50,3,1,4,103,50,56, +55,3,1,4,103,50,56,52,3,1,4,103,50,56,54,3,1,4,103,50,56, +53,66,100,111,108,111,111,112,63,118,97,114,64,105,110,105,116,63,110,111,116, +62,101,48,61,99,64,115,116,101,112,3,1,4,103,50,57,53,3,1,4,103, +50,57,52,3,1,4,103,50,57,49,3,1,4,103,50,57,48,3,1,4,103, +50,57,51,3,1,4,103,50,57,50,1,26,100,97,116,117,109,45,62,115,121, +110,116,97,120,45,111,98,106,101,99,116,47,115,104,97,112,101,70,35,37,119, +105,116,104,45,115,116,120,3,1,7,101,110,118,49,53,54,49,3,1,7,101, +110,118,49,53,54,50,61,115,3,1,7,101,110,118,49,53,55,57,64,100,101, +115,116,29,11,11,29,11,11,68,104,101,114,101,45,115,116,120,3,1,7,101, +110,118,50,57,55,53,3,1,7,101,110,118,49,54,49,50,3,1,7,101,110, +118,49,54,49,57,3,1,7,101,110,118,49,54,50,54,65,95,101,108,115,101, +3,1,4,103,50,57,56,3,1,7,101,110,118,49,54,52,49,3,1,7,101, +110,118,49,54,52,50,66,108,97,109,98,100,97,3,1,4,103,51,48,57,3, +1,4,103,51,48,56,3,1,4,103,51,49,51,3,1,4,103,51,49,53,3, +1,4,103,51,49,52,1,22,119,105,116,104,45,99,111,110,116,105,110,117,97, +116,105,111,110,45,109,97,114,107,1,27,99,111,110,116,105,110,117,97,116,105, +111,110,45,109,97,114,107,45,115,101,116,45,102,105,114,115,116,63,112,47,118, +65,101,120,112,114,49,64,101,120,112,114,63,115,116,120,3,1,7,101,110,118, +49,54,53,57,3,1,7,101,110,118,49,54,54,48,3,1,7,101,110,118,49, +54,55,57,63,118,97,108,3,1,7,101,110,118,49,54,56,48,3,1,4,103, +51,51,49,3,1,4,103,51,51,48,3,1,4,103,51,50,55,3,1,4,103, +51,50,54,3,1,4,103,51,50,57,3,1,4,103,51,50,56,3,1,4,103, +51,51,52,3,1,4,103,51,51,51,3,1,4,103,51,51,50,64,108,104,115, +49,64,114,104,115,49,63,108,104,115,63,114,104,115,65,98,111,100,121,49,64, +98,111,100,121,3,1,7,101,110,118,49,55,49,56,3,1,7,101,110,118,49, +55,49,57,3,1,7,101,110,118,49,55,52,49,3,1,7,101,110,118,49,55, +52,50,3,1,4,103,51,51,57,3,1,4,103,51,52,49,3,1,4,103,51, +52,48,3,1,7,101,110,118,49,55,55,48,3,1,7,101,110,118,49,55,55, +49,3,1,4,103,51,54,55,3,1,4,103,51,54,54,3,1,4,103,51,54, +51,3,1,4,103,51,54,50,3,1,4,103,51,54,53,3,1,4,103,51,54, +52,3,1,4,103,51,53,50,3,1,4,103,51,53,49,3,1,4,103,51,55, +50,3,1,4,103,51,54,57,3,1,4,103,51,54,56,3,1,4,103,51,55, +49,3,1,4,103,51,55,48,69,112,114,101,100,45,110,97,109,101,64,112,114, +101,100,72,104,97,110,100,108,101,114,45,110,97,109,101,67,104,97,110,100,108, +101,114,63,98,112,122,1,29,99,97,108,108,45,119,105,116,104,45,99,111,110, +116,105,110,117,97,116,105,111,110,45,112,114,111,109,112,116,61,101,1,26,97, +98,111,114,116,45,99,117,114,114,101,110,116,45,99,111,110,116,105,110,117,97, +116,105,111,110,64,108,105,115,116,64,99,111,110,115,65,116,104,117,110,107,3, +1,7,101,110,118,49,55,57,52,3,1,7,101,110,118,49,55,57,53,3,1, +7,101,110,118,49,56,49,52,3,1,7,101,110,118,49,56,49,53,3,1,8, +119,115,116,109,112,51,53,51,3,1,8,119,115,116,109,112,51,53,52,3,1, +7,101,110,118,49,56,50,55,3,1,4,103,51,56,54,3,1,4,103,51,56, +53,3,1,4,103,51,56,57,70,108,101,116,45,118,97,108,117,101,115,64,116, +101,109,112,64,115,101,116,33,62,105,100,3,1,4,103,51,56,56,3,1,4, +103,51,56,55,3,1,4,103,51,56,49,3,1,4,103,51,57,49,3,1,4, +103,51,57,48,3,1,7,101,110,118,49,56,56,54,3,1,7,101,110,118,49, +56,56,55,3,1,4,103,51,55,51,3,1,4,103,51,55,52,3,1,4,103, +51,55,53,3,1,7,101,110,118,49,57,48,51,3,1,7,101,110,118,49,57, +48,52,3,1,7,101,110,118,49,57,51,57,3,1,7,101,110,118,49,57,52, +48,3,1,4,103,51,57,54,3,1,4,103,51,57,56,3,1,4,103,51,57, +55,3,1,7,101,110,118,49,57,53,54,3,1,7,101,110,118,49,57,53,55, +3,1,4,103,52,48,53,3,1,4,103,52,48,52,3,1,4,103,52,48,55, +3,1,4,103,52,48,54,73,100,101,102,105,110,101,45,115,116,114,117,99,116, +64,98,97,115,101,65,102,105,101,108,100,3,1,7,101,110,118,49,57,55,56, +3,1,7,101,110,118,49,57,55,57,3,1,4,103,52,50,51,3,1,4,103, +52,50,52,3,1,4,103,52,50,50,3,1,4,103,52,50,49,3,1,4,103, +52,49,55,3,1,4,103,52,49,54,3,1,4,103,52,51,48,3,1,4,103, +52,50,55,3,1,4,103,52,50,57,3,1,4,103,52,50,56,63,116,109,112, +64,115,119,97,112,64,110,97,109,101,72,100,121,110,97,109,105,99,45,119,105, +110,100,3,1,7,101,110,118,50,48,48,49,3,1,7,101,110,118,50,48,48, +50,3,1,7,101,110,118,50,48,50,49,3,1,7,101,110,118,50,48,50,50, +3,1,4,103,52,51,53,3,1,4,103,52,51,52,3,1,7,101,110,118,50, +48,54,50,3,1,7,101,110,118,50,48,54,51,63,99,112,117,64,117,115,101, +114,62,103,99,6,15,15,105,110,115,112,101,99,116,111,114,32,111,114,32,35, +102,61,112,64,99,101,108,108,68,35,37,107,101,114,110,101,108,30,2,56,69, +115,116,120,45,112,97,105,114,63,11,30,2,56,67,99,111,110,115,47,35,102, +1,30,2,56,67,115,116,120,45,99,97,114,5,30,2,56,67,115,116,120,45, +99,100,114,6,30,2,56,69,97,112,112,101,110,100,47,35,102,0,30,2,56, +71,115,116,120,45,110,117,108,108,47,35,102,9,30,2,57,2,58,0,30,2, +56,69,115,116,120,45,108,105,115,116,63,8,30,2,56,69,115,116,120,45,62, +108,105,115,116,4,16,4,11,11,2,67,3,1,7,101,110,118,49,51,55,48, +95,8,193,11,16,0,97,10,35,11,95,159,2,65,9,11,159,2,66,9,11, +159,2,56,9,11,16,0,97,10,34,11,95,159,2,10,9,11,159,2,61,9, +11,159,2,62,9,11,16,84,2,45,2,2,2,6,2,2,2,28,2,2,2, +20,2,2,2,15,2,2,2,7,2,2,2,29,2,2,2,37,2,2,2,16, +2,2,2,17,2,2,2,36,2,2,2,9,2,2,2,32,2,2,2,31,2, +2,2,18,2,2,2,19,2,2,2,22,2,2,2,63,2,2,2,46,2,2, +2,13,2,2,2,14,2,2,2,21,2,2,2,8,2,2,2,35,2,2,2, +3,2,2,2,30,2,2,2,38,2,2,2,39,2,2,2,24,2,2,2,33, +2,2,2,40,2,2,2,41,2,2,2,42,2,2,2,23,2,2,2,4,2, +2,2,43,2,2,2,44,2,2,2,5,2,2,2,26,2,2,2,48,2,2, +2,64,2,2,2,47,2,2,18,98,2,59,13,16,4,34,2,60,2,2,11, +8,166,4,8,165,4,8,164,4,8,163,4,99,13,16,4,34,2,60,2,2, +11,8,166,4,8,165,4,8,164,4,8,163,4,16,8,11,11,3,1,4,103, +50,49,53,3,1,4,103,50,49,54,3,1,4,103,50,49,55,2,68,2,68, +2,68,16,6,11,11,2,69,2,70,2,71,2,71,18,158,96,10,63,101,113, +63,2,49,94,2,72,2,50,8,168,4,18,158,96,10,64,101,113,118,63,2, +51,94,2,72,2,52,8,168,4,99,13,16,4,34,2,60,2,2,11,8,166, +4,8,165,4,8,164,4,8,163,4,16,8,11,11,3,1,4,103,50,49,50, +3,1,4,103,50,49,51,3,1,4,103,50,49,52,2,73,2,73,2,73,16, +6,11,11,2,69,2,70,2,74,2,74,18,158,96,10,64,109,101,109,118,2, +53,94,2,72,2,54,8,171,4,30,2,56,71,105,100,101,110,116,105,102,105, +101,114,63,2,30,68,35,37,115,116,120,108,111,99,68,114,101,108,111,99,97, +116,101,0,30,2,57,2,97,1,16,4,11,11,2,67,3,1,7,101,110,118, +49,52,48,51,97,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8, +164,4,8,176,4,18,158,2,59,8,177,4,99,13,16,4,34,2,60,2,2, +11,8,166,4,8,165,4,8,164,4,8,176,4,16,6,11,11,3,1,4,103, +50,53,50,3,1,4,103,50,53,51,2,98,2,98,16,6,11,11,2,69,2, +84,2,99,2,99,18,158,96,10,2,1,2,75,93,64,99,111,110,100,8,179, +4,18,158,64,101,108,115,101,8,177,4,99,13,16,4,34,2,60,2,2,11, +8,166,4,8,165,4,8,164,4,8,176,4,16,10,11,11,3,1,4,103,50, +52,56,3,1,4,103,50,52,57,3,1,4,103,50,53,48,3,1,4,103,50, +53,49,2,100,2,100,2,100,2,100,16,10,11,11,2,69,2,84,2,86,2, +87,2,101,2,101,2,101,2,101,18,158,161,10,2,1,2,76,2,77,2,78, +8,182,4,99,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164, +4,8,176,4,16,12,11,11,3,1,4,103,50,52,51,3,1,4,103,50,52, +52,3,1,4,103,50,52,53,3,1,4,103,50,52,54,3,1,4,103,50,52, +55,2,102,2,102,2,102,2,102,2,102,16,12,11,11,2,69,2,84,2,70, +2,86,2,87,2,103,2,103,2,103,2,103,2,103,18,158,96,10,2,83,95, +2,48,2,79,2,80,159,2,1,2,81,2,82,8,184,4,18,16,2,95,2, +85,93,8,129,20,16,4,11,11,2,104,3,1,7,101,110,118,49,52,53,55, +95,9,8,129,20,2,57,99,13,16,4,34,2,60,2,2,11,8,166,4,8, +165,4,8,164,4,8,176,4,16,16,11,11,3,1,4,103,50,51,54,3,1, +4,103,50,51,55,3,1,4,103,50,51,56,3,1,4,103,50,51,57,3,1, +4,103,50,52,48,3,1,4,103,50,52,49,3,1,4,103,50,52,50,2,105, +2,105,2,105,2,105,2,105,2,105,2,105,16,16,11,11,2,69,2,84,2, +70,2,86,2,87,2,95,2,96,2,106,2,106,2,106,2,106,2,106,2,106, +2,106,18,158,96,10,2,94,93,94,2,67,2,88,96,2,83,95,2,48,2, +67,2,89,159,2,1,2,90,2,91,160,2,47,2,67,2,92,2,93,8,187, +4,18,16,2,95,2,85,93,8,134,20,16,4,11,11,2,104,3,1,7,101, +110,118,49,52,56,54,95,9,8,134,20,2,57,30,2,56,73,115,116,120,45, +99,104,101,99,107,47,101,115,99,7,30,2,56,70,115,116,120,45,114,111,116, +97,116,101,12,30,2,57,2,128,2,2,30,2,129,2,76,119,105,116,104,45, +115,121,110,116,97,120,45,102,97,105,108,3,16,4,11,11,66,111,114,105,103, +45,120,3,1,7,101,110,118,49,53,52,52,18,98,2,59,13,16,4,34,2, +60,2,2,11,8,166,4,8,165,4,8,164,4,8,130,5,16,16,11,11,2, +69,2,116,2,117,2,121,2,119,2,86,2,120,2,131,2,2,131,2,2,131, +2,2,131,2,2,131,2,2,131,2,2,131,2,16,16,11,11,3,1,4,103, +50,54,56,3,1,4,103,50,54,57,3,1,4,103,50,55,48,3,1,4,103, +50,55,49,3,1,4,103,50,55,50,3,1,4,103,50,55,51,3,1,4,103, +50,55,52,2,130,2,2,130,2,2,130,2,2,130,2,2,130,2,2,130,2, +2,130,2,99,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164, +4,8,130,5,8,133,5,8,132,5,18,158,2,59,8,134,5,18,101,2,59, +13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,130,5, +8,133,5,8,132,5,16,6,11,11,2,84,2,132,2,2,133,2,2,133,2, +18,158,2,134,2,8,134,5,18,158,2,134,2,8,134,5,16,4,11,11,3, +1,4,103,50,55,57,3,1,7,101,110,118,49,54,48,49,100,13,16,4,34, +2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,130,5,8,133,5,8, +132,5,8,139,5,18,158,2,59,8,140,5,18,158,2,134,2,8,140,5,18, +158,97,10,2,94,2,115,2,111,95,2,83,94,2,118,2,112,158,2,1,2, +113,8,140,5,18,158,95,10,2,109,2,110,8,140,5,16,4,11,11,2,137, +2,3,1,7,101,110,118,50,57,55,55,16,4,11,11,2,137,2,2,138,2, +16,4,11,11,2,137,2,2,138,2,16,4,11,11,2,67,3,1,7,101,110, +118,50,57,55,51,95,8,193,11,16,0,97,10,35,11,95,159,64,35,37,115, +99,9,11,159,2,62,9,11,159,2,56,9,11,16,0,97,10,34,11,95,159, +2,10,9,11,159,2,62,9,11,159,2,56,9,11,16,14,2,128,2,2,136, +2,66,115,121,110,116,97,120,2,136,2,73,115,121,110,116,97,120,45,99,97, +115,101,42,42,2,136,2,2,97,2,136,2,78,112,97,116,116,101,114,110,45, +115,117,98,115,116,105,116,117,116,101,2,136,2,2,58,2,136,2,75,115,117, +98,115,116,105,116,117,116,101,45,115,116,111,112,2,136,2,18,16,2,104,93, +158,159,10,2,115,2,114,8,140,5,13,16,4,34,2,135,2,2,136,2,11, +8,151,5,8,150,5,8,149,5,8,148,5,8,147,5,8,146,5,8,145,5, +13,16,4,35,2,136,2,2,57,11,93,8,132,21,16,4,11,11,2,104,2, +139,2,95,9,8,132,21,2,57,18,16,2,95,2,85,93,8,132,21,16,4, +11,11,2,104,2,139,2,95,9,8,132,21,2,57,102,13,16,4,34,2,60, +2,2,11,8,166,4,8,165,4,8,164,4,8,130,5,8,133,5,8,132,5, +8,139,5,16,6,11,11,3,1,4,103,50,56,48,3,1,4,103,50,56,49, +2,140,2,2,140,2,16,4,11,11,2,87,3,1,7,101,110,118,49,54,50, +48,18,158,97,10,2,94,2,115,2,122,96,2,83,2,123,159,2,1,2,124, +2,125,158,2,1,2,126,8,154,5,18,158,95,10,2,107,2,108,8,154,5, +18,16,2,104,93,158,159,10,2,115,2,127,8,154,5,13,16,4,34,2,135, +2,2,136,2,11,8,151,5,8,150,5,8,149,5,8,148,5,8,147,5,8, +146,5,8,145,5,13,16,4,35,2,136,2,2,57,11,93,8,139,21,16,4, +11,11,2,104,2,141,2,95,9,8,139,21,2,57,18,16,2,95,2,85,93, +8,139,21,16,4,11,11,2,104,2,141,2,95,9,8,139,21,2,57,96,93, +8,171,20,16,4,11,11,3,1,8,119,115,116,109,112,50,55,53,3,1,7, +101,110,118,49,53,55,56,16,4,11,11,3,1,4,103,50,55,56,3,1,7, +101,110,118,49,54,51,49,16,4,11,11,2,142,2,3,1,7,101,110,118,49, +54,51,50,18,16,2,158,95,10,2,121,2,85,8,159,5,95,9,8,171,20, +2,129,2,16,4,11,11,2,67,3,1,7,101,110,118,49,54,51,54,18,98, +2,59,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8, +161,5,99,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4, +8,161,5,16,6,11,11,3,1,4,103,50,57,54,3,1,4,103,50,57,55, +2,144,2,2,144,2,16,6,11,11,2,43,63,101,120,112,2,145,2,2,145, +2,18,158,95,10,2,4,95,2,146,2,9,2,143,2,8,163,5,96,13,16, +4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,18,158,2,3,8, +165,5,18,158,2,4,8,165,5,18,158,2,5,8,165,5,18,158,2,6,8, +165,5,18,158,2,7,8,165,5,16,4,11,11,2,157,2,3,1,7,101,110, +118,49,54,53,50,18,98,2,59,13,16,4,34,2,60,2,2,11,8,166,4, +8,165,4,8,164,4,8,171,5,99,13,16,4,34,2,60,2,2,11,8,166, +4,8,165,4,8,164,4,8,171,5,16,8,11,11,3,1,4,103,51,48,53, +3,1,4,103,51,48,54,3,1,4,103,51,48,55,2,158,2,2,158,2,2, +158,2,16,8,11,11,2,69,2,155,2,2,156,2,2,159,2,2,159,2,2, +159,2,18,158,161,10,2,94,9,2,147,2,2,148,2,8,173,5,16,12,11, +11,2,69,65,112,97,114,97,109,2,161,2,2,155,2,2,156,2,2,162,2, +2,162,2,2,162,2,2,162,2,2,162,2,16,12,11,11,3,1,4,103,51, +48,48,3,1,4,103,51,48,49,3,1,4,103,51,48,50,3,1,4,103,51, +48,51,3,1,4,103,51,48,52,2,160,2,2,160,2,2,160,2,2,160,2, +2,160,2,99,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164, +4,8,171,5,8,176,5,8,175,5,18,158,2,59,8,177,5,18,158,2,134, +2,8,177,5,18,158,2,134,2,8,177,5,101,13,16,4,34,2,60,2,2, +11,8,166,4,8,165,4,8,164,4,8,171,5,8,176,5,8,175,5,16,4, +11,11,3,1,4,103,51,49,50,3,1,7,101,110,118,49,54,57,56,16,4, +11,11,2,154,2,3,1,7,101,110,118,49,54,57,57,18,158,97,10,2,152, +2,2,12,159,2,11,95,2,153,2,11,2,12,2,149,2,160,2,94,9,2, +150,2,2,151,2,8,181,5,18,16,2,95,2,85,93,8,141,22,16,4,11, +11,2,104,3,1,7,101,110,118,49,55,48,51,95,9,8,141,22,2,57,96, +93,8,132,22,16,4,11,11,3,1,8,119,115,116,109,112,51,49,48,3,1, +7,101,110,118,49,54,57,50,16,4,11,11,3,1,4,103,51,49,49,3,1, +7,101,110,118,49,55,48,54,16,4,11,11,2,142,2,3,1,7,101,110,118, +49,55,48,55,18,16,2,158,95,10,2,154,2,2,85,8,184,5,95,9,8, +132,22,2,129,2,98,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4, +8,164,4,16,6,11,11,3,1,4,103,51,50,52,3,1,4,103,51,50,53, +2,178,2,2,178,2,16,6,11,11,2,176,2,2,177,2,2,179,2,2,179, +2,18,158,161,10,2,94,9,2,165,2,2,166,2,8,186,5,98,13,16,4, +34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,16,14,11,11,3,1, +4,103,51,49,55,3,1,4,103,51,49,56,3,1,4,103,51,49,57,3,1, +4,103,51,50,48,3,1,4,103,51,50,49,3,1,4,103,51,50,50,2,180, +2,2,180,2,2,180,2,2,180,2,2,180,2,2,180,2,16,14,11,11,2, +172,2,2,173,2,2,174,2,2,175,2,2,176,2,2,177,2,2,181,2,2, +181,2,2,181,2,2,181,2,2,181,2,2,181,2,18,158,96,10,2,38,93, +94,2,167,2,2,168,2,160,2,46,2,169,2,2,170,2,2,171,2,8,188, +5,18,158,95,10,2,163,2,2,164,2,8,188,5,18,16,2,95,2,85,93, +8,172,22,16,4,11,11,2,104,3,1,7,101,110,118,49,55,53,56,95,9, +8,172,22,2,57,16,4,11,11,2,157,2,3,1,7,101,110,118,49,55,54, +51,18,98,2,59,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8, +164,4,8,128,6,99,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4, +8,164,4,8,128,6,16,10,11,11,3,1,4,103,51,51,53,3,1,4,103, +51,51,54,3,1,4,103,51,51,55,3,1,4,103,51,51,56,2,185,2,2, +185,2,2,185,2,2,185,2,16,10,11,11,2,69,69,98,111,111,108,45,101, +120,112,114,2,155,2,2,156,2,2,186,2,2,186,2,2,186,2,2,186,2, +18,158,97,10,2,152,2,2,25,94,76,109,97,107,101,45,116,104,114,101,97, +100,45,99,101,108,108,95,63,97,110,100,2,182,2,10,95,2,1,93,2,27, +160,2,94,9,2,183,2,2,184,2,8,130,6,18,158,2,19,8,165,5,18, +158,2,20,8,165,5,18,158,2,21,8,165,5,18,158,2,22,8,165,5,18, +158,2,23,8,165,5,30,2,129,2,1,20,103,101,110,101,114,97,116,101,45, +116,101,109,112,111,114,97,114,105,101,115,0,16,4,11,11,2,157,2,3,1, +7,101,110,118,49,55,56,55,16,4,11,11,74,100,105,115,97,98,108,101,45, +98,114,101,97,107,63,3,1,7,101,110,118,49,55,56,54,18,99,2,59,13, +16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,139,6,8, +138,6,100,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4, +8,139,6,8,138,6,16,8,11,11,3,1,4,103,51,52,56,3,1,4,103, +51,52,57,3,1,4,103,51,53,48,2,147,3,2,147,3,2,147,3,16,8, +11,11,2,69,2,155,2,2,156,2,2,148,3,2,148,3,2,148,3,18,158, +161,10,2,94,9,2,129,3,2,130,3,8,141,6,16,12,11,11,2,69,2, +137,3,2,139,3,2,155,2,2,156,2,2,150,3,2,150,3,2,150,3,2, +150,3,2,150,3,16,12,11,11,3,1,4,103,51,52,51,3,1,4,103,51, +52,52,3,1,4,103,51,52,53,3,1,4,103,51,52,54,3,1,4,103,51, +52,55,2,149,3,2,149,3,2,149,3,2,149,3,2,149,3,100,13,16,4, +34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,139,6,8,138,6, +8,144,6,8,143,6,18,158,2,59,8,145,6,18,158,2,134,2,8,145,6, +18,158,2,59,8,145,6,18,158,2,134,2,8,145,6,104,13,16,4,34,2, +60,2,2,11,8,166,4,8,165,4,8,164,4,8,139,6,8,138,6,8,144, +6,8,143,6,16,4,11,11,3,1,4,103,51,53,54,3,1,7,101,110,118, +49,56,51,53,16,4,11,11,2,136,3,3,1,7,101,110,118,49,56,51,54, +16,4,11,11,3,1,4,103,51,53,56,3,1,7,101,110,118,49,56,52,51, +16,4,11,11,2,138,3,3,1,7,101,110,118,49,56,52,52,18,158,2,59, +8,150,6,18,158,2,28,8,150,6,18,158,2,29,8,150,6,18,158,96,10, +2,94,2,131,3,95,2,94,93,94,2,140,3,95,2,153,2,11,2,25,96, +2,152,2,2,25,2,30,96,2,141,3,95,2,146,2,9,96,2,152,2,2, +25,2,140,3,96,2,152,2,2,34,95,2,146,2,93,2,142,3,95,2,143, +3,2,32,95,2,146,2,9,96,2,132,3,2,142,3,2,140,3,158,2,144, +3,2,133,3,160,2,94,9,2,134,3,2,135,3,2,32,95,2,146,2,93, +2,146,3,93,2,146,3,8,150,6,18,158,95,10,2,191,2,2,128,3,8, +150,6,18,158,95,10,2,189,2,2,190,2,8,150,6,18,158,96,10,2,145, +3,2,187,2,2,188,2,8,150,6,18,16,2,95,2,85,93,8,133,24,16, +4,11,11,2,104,3,1,7,101,110,118,49,56,54,49,95,9,8,133,24,2, +57,96,93,8,172,23,16,6,11,11,2,151,3,2,152,3,2,153,3,2,153, +3,16,4,11,11,3,1,4,103,51,53,55,3,1,7,101,110,118,49,56,55, +48,16,4,11,11,2,142,2,3,1,7,101,110,118,49,56,55,49,18,16,2, +158,95,10,2,138,3,2,85,8,159,6,95,9,8,172,23,2,129,2,96,93, +8,172,23,16,6,11,11,2,151,3,2,152,3,2,153,3,2,153,3,16,4, +11,11,3,1,4,103,51,53,53,3,1,7,101,110,118,49,56,55,53,16,4, +11,11,2,142,2,3,1,7,101,110,118,49,56,55,54,18,16,2,158,95,10, +2,136,3,2,85,8,161,6,95,9,8,172,23,2,129,2,16,4,11,11,2, +157,2,3,1,7,101,110,118,49,56,56,48,18,98,2,59,13,16,4,34,2, +60,2,2,11,8,166,4,8,165,4,8,164,4,8,163,6,99,13,16,4,34, +2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,163,6,16,6,11,11, +3,1,4,103,51,55,57,3,1,4,103,51,56,48,2,166,3,2,166,3,16, +6,11,11,2,69,2,156,2,2,167,3,2,167,3,18,158,96,10,2,157,3, +93,94,9,2,163,3,93,64,118,111,105,100,8,165,6,99,13,16,4,34,2, +60,2,2,11,8,166,4,8,165,4,8,164,4,8,163,6,16,8,11,11,2, +168,3,2,169,3,2,170,3,2,171,3,2,171,3,2,171,3,16,8,11,11, +2,69,2,160,3,2,156,2,2,172,3,2,172,3,2,172,3,18,158,2,134, +2,8,167,6,18,158,2,59,8,167,6,18,158,2,134,2,8,167,6,101,13, +16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,163,6,16, +8,11,11,2,168,3,2,169,3,2,170,3,2,171,3,2,171,3,2,171,3, +16,8,11,11,2,69,2,160,3,2,156,2,2,172,3,2,172,3,2,172,3, +16,4,11,11,3,1,4,103,51,56,52,3,1,7,101,110,118,49,57,50,48, +16,4,11,11,2,158,3,3,1,7,101,110,118,49,57,50,49,18,158,160,10, +2,157,3,93,94,2,154,3,2,155,3,2,156,3,8,171,6,18,158,96,10, +2,159,3,2,161,3,2,162,3,8,171,6,18,16,2,95,2,85,93,8,186, +24,16,4,11,11,2,104,3,1,7,101,110,118,49,57,50,53,95,9,8,186, +24,2,57,96,93,8,178,24,16,4,11,11,3,1,8,119,115,116,109,112,51, +56,50,3,1,7,101,110,118,49,57,49,53,16,4,11,11,3,1,4,103,51, +56,51,3,1,7,101,110,118,49,57,51,48,16,4,11,11,2,142,2,3,1, +7,101,110,118,49,57,51,49,18,16,2,158,95,10,2,158,3,2,85,8,175, +6,95,9,8,178,24,2,129,2,99,13,16,4,34,2,60,2,2,11,8,166, +4,8,165,4,8,164,4,8,163,6,16,8,11,11,3,1,4,103,51,55,54, +3,1,4,103,51,55,55,3,1,4,103,51,55,56,2,173,3,2,173,3,2, +173,3,16,8,11,11,2,69,2,160,3,2,156,2,2,174,3,2,174,3,2, +174,3,18,158,96,10,2,159,3,2,164,3,2,165,3,8,177,6,16,4,11, +11,2,157,2,3,1,7,101,110,118,49,57,52,57,18,98,2,59,13,16,4, +34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,179,6,99,13,16, +4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,179,6,16,10, +11,11,3,1,4,103,51,57,50,3,1,4,103,51,57,51,3,1,4,103,51, +57,52,3,1,4,103,51,57,53,2,178,3,2,178,3,2,178,3,2,178,3, +16,10,11,11,2,69,2,116,2,176,2,2,177,2,2,179,3,2,179,3,2, +179,3,2,179,3,18,158,95,10,67,99,97,108,108,47,99,99,160,2,146,2, +93,2,175,3,2,176,3,2,177,3,8,181,6,16,4,11,11,2,157,2,3, +1,7,101,110,118,49,57,54,57,18,98,2,59,13,16,4,34,2,60,2,2, +11,8,166,4,8,165,4,8,164,4,8,183,6,99,13,16,4,34,2,60,2, +2,11,8,166,4,8,165,4,8,164,4,8,183,6,16,12,11,11,3,1,4, +103,51,57,57,3,1,4,103,52,48,48,3,1,4,103,52,48,49,3,1,4, +103,52,48,50,3,1,4,103,52,48,51,2,187,3,2,187,3,2,187,3,2, +187,3,2,187,3,16,12,11,11,2,69,2,185,3,2,186,3,2,176,2,2, +177,2,2,188,3,2,188,3,2,188,3,2,188,3,2,188,3,18,158,162,10, +2,94,9,95,2,184,3,2,180,3,2,181,3,2,182,3,2,183,3,8,185, +6,18,16,2,95,2,85,93,8,161,25,16,4,11,11,2,104,3,1,7,101, +110,118,49,57,57,49,95,9,8,161,25,2,57,16,4,11,11,2,157,2,3, +1,7,101,110,118,49,57,57,52,18,98,2,59,13,16,4,34,2,60,2,2, +11,8,166,4,8,165,4,8,164,4,8,188,6,99,13,16,4,34,2,60,2, +2,11,8,166,4,8,165,4,8,164,4,8,188,6,16,8,11,11,3,1,4, +103,52,49,51,3,1,4,103,52,49,52,3,1,4,103,52,49,53,2,139,4, +2,139,4,2,139,4,16,8,11,11,2,69,2,176,2,2,177,2,2,140,4, +2,140,4,2,140,4,18,158,161,10,2,94,9,2,129,4,2,130,4,8,190, +6,16,12,11,11,2,69,2,137,4,2,161,2,2,176,2,2,177,2,2,142, +4,2,142,4,2,142,4,2,142,4,2,142,4,16,12,11,11,3,1,4,103, +52,48,56,3,1,4,103,52,48,57,3,1,4,103,52,49,48,3,1,4,103, +52,49,49,3,1,4,103,52,49,50,2,141,4,2,141,4,2,141,4,2,141, +4,2,141,4,99,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8, +164,4,8,188,6,8,129,7,8,128,7,18,158,2,59,8,130,7,18,158,2, +134,2,8,130,7,101,13,16,4,34,2,60,2,2,11,8,166,4,8,165,4, +8,164,4,8,188,6,8,129,7,8,128,7,16,4,11,11,3,1,4,103,52, +50,48,3,1,7,101,110,118,50,48,51,57,16,4,11,11,2,135,4,3,1, +7,101,110,118,50,48,52,48,18,158,96,10,2,94,2,131,4,95,2,94,93, +94,2,136,4,159,2,146,2,9,2,132,4,96,2,138,4,2,136,4,160,2, +146,2,9,2,133,4,2,134,4,2,136,4,8,133,7,18,158,95,10,2,191, +3,2,128,4,8,133,7,18,158,97,10,2,94,93,94,2,132,2,2,189,3, +95,2,159,3,2,189,3,2,190,3,95,2,159,3,2,190,3,2,132,2,8, +133,7,18,16,2,95,2,85,93,8,133,26,16,4,11,11,2,104,3,1,7, +101,110,118,50,48,52,52,95,9,8,133,26,2,57,96,93,8,189,25,16,4, +11,11,3,1,8,119,115,116,109,112,52,49,56,3,1,7,101,110,118,50,48, +51,52,16,4,11,11,3,1,4,103,52,49,57,3,1,7,101,110,118,50,48, +53,49,16,4,11,11,2,142,2,3,1,7,101,110,118,50,48,53,50,18,16, +2,158,95,10,2,135,4,2,85,8,138,7,95,9,8,189,25,2,129,2,16, +4,11,11,2,157,2,3,1,7,101,110,118,50,48,53,54,18,98,2,59,13, +16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,140,7,99, +13,16,4,34,2,60,2,2,11,8,166,4,8,165,4,8,164,4,8,140,7, +16,8,11,11,3,1,4,103,52,51,49,3,1,4,103,52,51,50,3,1,4, +103,52,51,51,2,145,4,2,145,4,2,145,4,16,8,11,11,2,69,2,155, +2,2,156,2,2,146,4,2,146,4,2,146,4,18,158,97,10,2,157,3,93, +94,96,2,84,2,147,4,2,148,4,2,149,4,95,70,116,105,109,101,45,97, +112,112,108,121,160,2,146,2,9,2,143,4,2,144,4,64,110,117,108,108,97, +66,112,114,105,110,116,102,6,40,40,99,112,117,32,116,105,109,101,58,32,126, +115,32,114,101,97,108,32,116,105,109,101,58,32,126,115,32,103,99,32,116,105, +109,101,58,32,126,115,126,110,2,147,4,2,148,4,2,149,4,95,65,97,112, +112,108,121,66,118,97,108,117,101,115,2,84,8,142,7,159,34,20,100,159,34, +16,1,20,24,2,1,16,0,83,158,40,20,97,114,73,35,37,109,111,114,101, +45,115,99,104,101,109,101,2,2,10,10,10,48,80,158,34,34,20,100,159,34, +16,31,30,2,2,2,3,193,30,2,2,2,4,193,30,2,2,2,5,193,30, +2,2,2,6,193,30,2,2,2,7,193,30,2,2,2,8,193,30,2,2,2, +9,193,30,2,10,2,11,3,30,2,10,2,12,4,30,2,2,2,13,193,30, +2,2,2,14,193,30,2,2,2,15,193,30,2,2,2,16,193,30,2,2,2, +17,193,30,2,2,2,18,193,30,2,2,2,19,193,30,2,2,2,20,193,30, +2,2,2,21,193,30,2,2,2,22,193,30,2,2,2,23,193,30,2,2,2, +24,193,30,2,10,2,25,0,30,2,2,2,26,193,30,2,10,2,27,1,30, +2,2,2,28,193,30,2,2,2,29,193,30,2,2,2,30,193,30,2,2,2, +31,193,30,2,2,2,32,193,30,2,2,2,33,193,30,2,10,2,34,2,16, +0,11,11,16,19,2,22,2,21,2,17,2,18,2,16,2,31,2,30,2,32, +2,20,2,15,2,4,2,6,2,29,2,28,2,23,2,7,2,19,2,14,2, +3,53,11,16,20,2,26,2,33,2,13,2,24,2,9,2,8,2,5,2,35, +2,36,2,37,2,38,2,39,2,40,2,41,2,42,2,43,2,44,2,45,2, +46,2,47,16,20,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11, +11,11,11,11,16,20,2,26,2,33,2,13,2,24,2,9,2,8,2,5,2, +35,2,36,2,37,2,38,2,39,2,40,2,41,2,42,2,43,2,44,2,45, +2,46,2,47,41,54,107,16,5,93,2,48,89,162,34,35,56,9,223,0,27, +249,22,152,3,20,15,159,37,34,43,196,27,28,248,80,158,37,34,194,249,80, +158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40, +34,193,249,80,158,41,35,248,80,158,42,36,195,27,248,80,158,43,37,196,28, +248,80,158,43,34,193,249,80,158,44,38,27,248,80,158,46,36,196,28,248,80, +158,46,34,193,249,80,158,47,38,248,80,158,48,36,195,248,80,158,48,39,248, +80,158,49,37,196,11,248,80,158,45,39,248,80,158,46,37,196,11,11,11,28, +192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,28,248,22,47,248, +22,153,3,194,27,249,22,67,195,196,251,80,158,44,40,20,15,159,44,35,43, +21,94,2,49,2,50,248,22,59,197,248,22,58,197,27,249,22,67,195,196,251, +80,158,44,40,20,15,159,44,36,43,21,94,2,51,2,52,248,22,59,197,248, +22,58,197,27,28,248,80,158,38,34,195,249,80,158,39,35,248,80,158,40,36, +197,27,248,80,158,41,37,198,28,248,80,158,41,34,193,249,80,158,42,35,248, +80,158,43,36,195,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249,80, +158,45,38,27,248,80,158,47,36,196,28,248,80,158,47,41,193,248,80,158,47, +42,193,11,248,80,158,46,39,248,80,158,47,37,196,11,11,11,28,192,27,248, +22,58,194,27,248,22,84,195,27,248,22,86,196,27,249,22,67,195,196,251,80, +158,45,40,20,15,159,45,37,43,21,94,2,53,2,54,248,22,59,197,248,22, +58,197,250,22,178,8,11,2,55,197,34,20,100,159,34,16,9,2,154,4,2, +155,4,2,156,4,2,157,4,2,158,4,2,159,4,2,160,4,2,161,4,2, +162,4,16,4,33,167,4,33,169,4,33,170,4,33,172,4,11,16,5,93,2, +47,89,162,34,35,8,32,9,223,0,27,249,22,152,3,20,15,159,37,34,46, +196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36,196,27, +248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,38,248,80,158, +42,36,195,248,80,158,42,39,248,80,158,43,37,196,11,11,28,192,27,248,22, +58,194,27,248,22,59,195,250,80,158,41,40,20,15,159,41,35,46,21,93,2, +75,195,27,28,248,80,158,38,34,195,249,80,158,39,35,248,80,158,40,36,197, +27,248,80,158,41,37,198,28,248,80,158,41,34,193,249,80,158,42,35,248,80, +158,43,36,195,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249,80,158, +45,38,27,248,80,158,47,36,196,28,248,80,158,47,34,193,28,27,248,80,158, +48,36,194,28,248,80,158,48,41,193,28,249,22,166,3,194,20,15,159,49,36, +46,9,11,11,27,248,80,158,48,37,194,28,248,80,158,48,34,193,249,80,158, +49,35,248,80,158,50,36,195,27,248,80,158,51,37,196,28,248,80,158,51,42, +193,248,80,158,51,43,193,11,11,11,11,248,80,158,46,39,248,80,158,47,37, +196,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196, +27,248,22,94,197,249,80,158,43,44,202,27,250,22,67,198,199,200,252,80,158, +49,40,20,15,159,49,37,46,21,95,2,76,2,77,2,78,248,22,86,198,248, +22,84,198,248,22,58,198,27,28,248,80,158,39,34,196,249,80,158,40,35,248, +80,158,41,36,198,27,248,80,158,42,37,199,28,248,80,158,42,34,193,249,80, +158,43,35,248,80,158,44,36,195,27,248,80,158,45,37,196,28,248,80,158,45, +34,193,249,80,158,46,38,27,248,80,158,48,36,196,28,248,80,158,48,34,193, +249,80,158,49,38,27,248,80,158,51,36,196,28,248,80,158,51,42,193,248,22, +65,248,80,158,52,43,194,11,27,248,80,158,51,37,196,28,248,80,158,51,34, +193,249,80,158,52,35,248,80,158,53,36,195,27,248,80,158,54,37,196,28,248, +80,158,54,42,193,248,80,158,54,43,193,11,11,11,248,80,158,47,39,248,80, +158,48,37,196,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248, +22,93,196,27,248,22,96,197,27,248,22,95,198,249,80,158,45,44,204,27,251, +22,67,199,200,201,202,250,80,158,49,45,89,162,34,34,48,9,224,15,3,253, +80,158,41,40,20,15,159,41,38,46,21,96,2,79,2,80,2,81,2,82,248, +22,94,199,248,22,93,199,248,22,84,199,248,22,58,199,21,95,2,83,95,2, +48,2,84,94,2,70,2,85,96,2,1,2,86,2,87,2,85,20,15,159,49, +39,46,27,28,248,80,158,40,34,197,249,80,158,41,35,248,80,158,42,36,199, +27,248,80,158,43,37,200,28,248,80,158,43,34,193,249,80,158,44,35,248,80, +158,45,36,195,27,248,80,158,46,37,196,28,248,80,158,46,34,193,249,80,158, +47,38,27,248,80,158,49,36,196,28,248,80,158,49,34,193,249,80,158,50,38, +27,248,80,158,52,36,196,28,248,80,158,52,42,193,248,22,65,248,80,158,53, +43,194,11,27,248,80,158,52,37,196,28,248,80,158,52,34,193,249,80,158,53, +35,248,80,158,54,36,195,27,248,80,158,55,37,196,28,248,80,158,55,42,193, +248,22,65,248,80,158,56,43,194,11,11,11,27,248,80,158,49,37,196,28,248, +80,158,49,34,193,249,80,158,50,35,248,80,158,51,36,195,27,248,80,158,52, +37,196,28,248,80,158,52,42,193,248,80,158,52,43,193,11,11,11,11,11,28, +192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197, +27,249,22,76,199,38,27,249,22,76,200,39,27,249,22,75,201,40,249,80,158, +48,44,23,15,27,253,22,67,201,204,202,205,203,206,250,80,158,52,45,89,162, +34,34,51,9,224,18,3,26,8,80,158,43,40,20,15,159,43,40,46,21,98, +2,88,2,89,2,90,2,91,2,92,2,93,249,22,75,202,39,248,22,96,201, +248,22,84,201,249,22,76,202,38,248,22,93,201,248,22,58,201,21,95,2,94, +93,94,2,67,2,84,96,2,83,95,2,48,2,67,94,2,70,2,85,96,2, +1,2,86,2,87,2,85,97,2,47,2,67,2,95,2,96,2,85,20,15,159, +52,41,46,27,28,248,80,158,41,34,198,249,80,158,42,35,248,80,158,43,36, +200,27,248,80,158,44,37,201,28,248,80,158,44,34,193,27,28,248,22,149,3, +194,193,201,249,80,158,46,35,248,80,158,47,36,196,27,248,80,158,48,37,197, +28,248,80,158,48,34,193,27,28,248,22,149,3,194,193,196,249,80,158,50,38, +27,248,80,158,52,36,197,28,248,80,158,52,34,193,249,80,158,53,35,248,80, +158,54,36,195,27,248,80,158,55,37,196,28,248,80,158,55,34,193,249,80,158, +56,35,248,80,158,57,36,195,27,248,80,158,58,37,196,28,248,80,158,58,42, +193,248,22,65,248,80,158,59,43,194,11,11,11,27,248,80,158,52,37,197,250, +22,152,3,198,195,198,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195, +27,248,22,93,196,27,248,22,96,197,27,249,22,76,199,38,27,249,22,75,200, +39,251,22,178,8,11,6,33,33,98,97,100,32,115,121,110,116,97,120,32,40, +110,111,116,32,97,32,100,97,116,117,109,32,115,101,113,117,101,110,99,101,41, +23,17,199,27,28,248,80,158,42,34,199,249,80,158,43,35,248,80,158,44,36, +201,27,248,80,158,45,37,202,28,248,80,158,45,34,193,27,28,248,22,149,3, +194,193,202,249,80,158,47,35,248,80,158,48,36,196,27,248,80,158,49,37,197, +28,248,80,158,49,34,193,27,28,248,22,149,3,194,193,196,249,80,158,51,35, +248,80,158,52,36,196,27,248,80,158,53,37,197,250,22,152,3,198,195,198,11, +11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248, +22,94,197,251,22,178,8,11,6,52,52,98,97,100,32,115,121,110,116,97,120, +32,40,109,105,115,115,105,110,103,32,101,120,112,114,101,115,115,105,111,110,32, +97,102,116,101,114,32,100,97,116,117,109,32,115,101,113,117,101,110,99,101,41, +23,16,197,27,28,248,80,158,43,34,200,249,80,158,44,35,248,80,158,45,36, +202,27,248,80,158,46,37,203,250,22,152,3,205,195,205,11,28,192,27,248,22, +58,194,27,248,22,59,195,28,248,22,63,248,22,153,3,194,250,22,178,8,11, +2,55,204,250,22,178,8,11,6,31,31,98,97,100,32,115,121,110,116,97,120, +32,40,105,108,108,101,103,97,108,32,117,115,101,32,111,102,32,96,46,39,41, +206,250,22,178,8,11,2,55,202,34,20,100,159,34,16,12,2,154,4,2,155, +4,2,156,4,2,157,4,2,158,4,2,159,4,2,160,4,2,173,4,2,161, +4,2,162,4,2,174,4,2,175,4,16,8,33,178,4,33,180,4,33,181,4, +33,183,4,33,185,4,33,186,4,33,188,4,33,189,4,11,16,5,93,2,40, +87,95,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,47,20, +15,159,38,46,49,21,94,2,107,2,108,248,22,58,198,248,22,84,198,80,159, +34,8,33,35,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38, +47,20,15,159,38,42,49,21,94,2,109,2,110,248,22,58,198,248,22,84,198, +80,159,34,8,32,35,89,162,34,35,8,33,9,223,0,27,249,22,152,3,20, +15,159,37,34,49,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80, +158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158, +41,38,27,248,80,158,43,36,196,28,248,80,158,43,39,193,248,22,9,89,162, +34,35,46,9,224,9,1,27,249,22,2,89,162,34,35,55,9,224,4,5,249, +80,158,37,40,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158,40,36, +199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,27,28,248,22,149,3, +194,193,200,249,80,158,43,35,248,80,158,44,36,196,27,248,80,158,45,37,197, +248,22,65,250,22,152,3,199,196,199,11,11,194,248,80,158,39,41,196,28,248, +22,63,193,21,95,9,9,9,248,80,158,37,42,193,11,27,248,80,158,43,37, +196,28,248,80,158,43,34,193,249,80,158,44,38,27,248,80,158,46,36,196,28, +248,80,158,46,34,193,249,80,158,47,35,248,80,158,48,36,195,27,248,80,158, +49,37,196,28,248,80,158,49,39,193,248,22,65,248,80,158,50,41,194,11,11, +27,248,80,158,46,37,196,28,248,80,158,46,39,193,248,80,158,46,41,193,11, +11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27, +248,22,96,197,27,249,22,76,199,38,27,249,22,76,200,39,27,249,22,75,201, +40,27,249,22,152,3,20,15,159,46,35,49,250,22,2,89,162,34,36,50,9, +224,15,16,27,249,22,152,3,20,15,159,38,36,49,198,27,248,80,158,38,43, +194,28,192,196,27,28,248,80,158,39,34,195,249,80,158,40,38,248,80,158,41, +36,197,248,80,158,41,43,248,80,158,42,37,198,11,28,192,192,250,22,178,8, +11,6,19,19,98,97,100,32,118,97,114,105,97,98,108,101,32,115,121,110,116, +97,120,198,248,22,159,3,249,80,158,52,44,20,15,159,52,37,49,206,248,22, +159,3,249,80,158,52,44,20,15,159,52,38,49,204,27,28,248,80,158,46,39, +194,248,80,158,46,41,194,11,28,192,27,249,22,152,3,20,15,159,48,39,49, +249,80,158,50,44,20,15,159,50,40,49,200,27,248,80,158,48,43,194,28,192, +249,80,158,49,45,23,16,27,252,22,67,23,16,204,23,17,206,202,250,80,158, +53,46,89,162,34,34,52,9,224,19,3,252,80,158,40,47,20,15,159,40,41, +49,21,95,2,111,2,112,2,113,250,22,2,80,159,43,8,32,35,248,22,93, +201,248,22,58,201,248,22,96,198,249,22,71,248,22,84,200,250,80,158,45,47, +20,15,159,45,43,49,21,93,2,114,248,22,95,203,21,96,2,94,2,115,94, +94,2,116,2,117,2,85,95,2,83,94,2,118,2,119,96,2,1,2,120,2, +85,95,2,115,2,121,2,85,20,15,159,53,44,49,27,28,248,80,158,49,34, +195,249,80,158,50,35,248,80,158,51,36,197,27,248,80,158,52,37,198,28,248, +80,158,52,39,193,248,80,158,52,41,193,11,11,28,192,27,248,22,58,194,27, +248,22,59,195,249,80,158,52,45,23,19,27,254,22,67,23,21,203,23,19,23, +17,23,22,202,23,15,250,80,158,56,46,89,162,34,34,55,9,224,22,3,254, +80,158,42,47,20,15,159,42,45,49,21,97,2,122,2,123,2,124,2,125,2, +126,250,22,2,80,159,45,8,33,35,249,22,76,204,38,248,22,58,203,248,22, +93,200,248,22,84,200,249,22,76,201,39,249,22,71,248,22,96,202,250,80,158, +47,47,20,15,159,47,47,49,21,93,2,127,249,22,75,206,40,21,96,2,94, +2,115,94,94,2,116,2,117,2,85,96,2,83,2,119,96,2,1,2,86,2, +87,2,85,96,2,1,2,120,2,85,95,2,115,2,121,2,85,20,15,159,56, +48,49,250,22,178,8,11,2,55,197,248,80,158,46,48,20,15,159,46,49,49, +250,22,178,8,11,2,55,196,34,20,100,159,36,16,15,2,154,4,2,155,4, +2,156,4,2,157,4,2,158,4,2,161,4,2,190,4,2,162,4,2,191,4, +2,159,4,2,128,5,2,174,4,2,175,4,2,160,4,2,129,5,16,16,33, +131,5,33,135,5,33,136,5,33,137,5,33,138,5,33,141,5,33,142,5,33, +143,5,33,144,5,33,152,5,33,153,5,33,155,5,33,156,5,33,157,5,33, +158,5,33,160,5,11,16,5,93,2,43,89,162,34,35,50,9,223,0,27,249, +22,152,3,20,15,159,37,34,42,196,27,28,248,80,158,37,34,194,249,80,158, +38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34, +193,249,80,158,41,38,248,80,158,42,36,195,248,80,158,42,39,248,80,158,43, +37,196,11,11,28,192,27,248,22,58,194,27,248,22,59,195,249,80,158,40,40, +199,250,80,158,43,41,20,15,159,43,35,42,21,93,2,143,2,197,250,22,178, +8,11,2,55,196,34,20,100,159,34,16,8,2,154,4,2,155,4,2,156,4, +2,157,4,2,158,4,2,159,4,2,174,4,2,160,4,16,2,33,162,5,33, +164,5,11,16,5,93,2,63,27,248,22,180,13,10,253,22,66,248,199,20,15, +159,42,34,34,248,199,20,15,159,42,35,34,248,199,20,15,159,42,36,34,248, +22,66,248,200,20,15,159,43,37,34,248,22,66,248,200,20,15,159,43,38,34, +10,43,20,100,159,34,16,0,16,5,33,166,5,33,167,5,33,168,5,33,169, +5,33,170,5,11,16,5,93,2,38,89,162,34,35,8,26,9,223,0,27,249, +22,152,3,20,15,159,37,34,49,196,27,28,248,80,158,37,34,194,249,80,158, +38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34, +193,28,248,80,158,40,38,248,80,158,41,36,194,27,248,80,158,41,37,194,28, +248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,27,248,80,158, +44,37,196,28,248,80,158,44,39,193,248,80,158,44,40,193,11,11,11,11,11, +28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,27,249,22,67, +196,195,251,80,158,44,41,20,15,159,44,35,49,21,94,2,147,2,2,148,2, 248,22,58,197,248,22,59,197,27,28,248,80,158,38,34,195,249,80,158,39,35, 248,80,158,40,36,197,27,248,80,158,41,37,198,28,248,80,158,41,34,193,249, -80,158,42,43,27,248,80,158,44,36,196,28,248,80,158,44,39,193,248,22,9, +80,158,42,42,27,248,80,158,44,36,196,28,248,80,158,44,39,193,248,22,9, 89,162,34,35,46,9,224,10,1,27,249,22,2,89,162,34,35,51,9,224,4, -5,249,80,158,37,44,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158, +5,249,80,158,37,43,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158, 40,36,199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42, 35,248,80,158,43,36,195,248,80,158,43,38,248,80,158,44,37,196,11,11,194, -248,80,158,39,40,196,28,248,22,63,193,21,94,9,9,248,80,158,37,45,193, +248,80,158,39,40,196,28,248,22,63,193,21,94,9,9,248,80,158,37,44,193, 11,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249,80,158,45,35,248, 80,158,46,36,195,27,248,80,158,47,37,196,28,248,80,158,47,39,193,248,80, 158,47,40,193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27, 248,22,93,196,27,248,22,96,197,27,248,22,95,198,27,249,22,152,3,20,15, -159,45,36,50,248,80,158,46,46,249,80,158,48,47,20,15,159,48,37,50,201, -27,28,248,80,158,45,39,194,248,80,158,45,40,194,11,28,192,249,80,158,46, -41,205,27,252,22,67,205,202,203,204,200,250,80,158,50,48,89,162,34,34,53, -9,224,16,3,253,80,158,41,42,20,15,159,41,38,50,21,96,2,175,3,2, -176,3,2,177,3,2,178,3,250,22,2,80,159,44,8,26,35,248,22,95,202, -248,22,96,202,252,22,2,80,159,46,8,27,35,248,22,95,204,248,22,95,204, -248,22,58,204,248,22,58,204,248,22,93,199,248,22,84,199,21,95,2,92,94, -94,2,179,3,2,158,2,2,83,95,2,92,93,94,2,180,3,96,2,143,2, -9,96,2,92,93,94,2,130,2,2,179,3,95,2,137,3,2,179,3,2,181, -3,95,2,137,3,2,181,3,2,130,2,2,83,96,2,182,3,2,180,3,97, -2,143,2,9,2,157,3,2,158,3,2,83,2,180,3,20,15,159,50,41,50, -248,80,158,45,49,20,15,159,45,42,50,250,22,177,8,11,2,54,197,34,20, -100,159,36,16,16,2,134,4,2,135,4,2,136,4,2,137,4,2,139,4,2, -141,4,2,142,4,2,154,4,2,140,4,2,138,4,2,170,4,2,171,4,2, -175,5,2,172,4,2,155,4,2,173,4,16,9,33,163,6,33,165,6,33,169, -6,33,170,6,33,172,6,33,173,6,33,174,6,33,175,6,33,177,6,11,16, -5,93,2,41,89,162,34,35,54,9,223,0,27,249,22,152,3,20,15,159,37, -34,42,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36, -196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,35,248, -80,158,42,36,195,27,248,80,158,43,37,196,28,248,80,158,43,38,193,248,80, -158,43,39,193,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248, -22,86,196,249,80,158,41,40,200,27,249,22,67,197,198,251,80,158,46,41,20, -15,159,46,35,42,21,94,2,187,3,2,188,3,248,22,59,197,248,22,58,197, -250,22,177,8,11,2,54,196,34,20,100,159,34,16,8,2,134,4,2,135,4, -2,136,4,2,137,4,2,141,4,2,142,4,2,154,4,2,140,4,16,2,33, -179,6,33,181,6,11,106,83,158,34,16,6,27,247,22,128,10,87,94,28,192, -28,248,22,191,9,193,12,250,22,178,8,2,164,3,2,130,4,195,12,91,159, -39,11,90,161,39,34,11,254,22,168,9,2,62,11,35,34,11,9,204,252,22, -7,197,198,199,250,22,170,9,203,34,2,131,4,250,22,171,9,204,34,2,131, -4,80,159,34,34,35,80,159,34,35,35,80,159,34,36,35,80,159,34,37,35, -80,159,34,38,35,83,158,34,16,2,89,162,34,35,46,2,8,223,0,87,94, -28,248,80,158,35,36,194,12,250,22,178,8,2,8,6,7,7,112,114,111,109, -105,115,101,196,27,248,80,158,36,37,195,28,248,22,0,193,27,249,22,6,195, -22,65,87,94,28,248,22,0,248,80,158,38,37,197,249,80,158,38,38,197,194, -12,249,22,1,22,7,248,80,158,39,37,198,249,22,1,22,7,194,80,159,34, -39,35,83,158,34,16,2,89,162,34,34,43,2,9,223,0,248,80,158,35,41, -249,22,25,11,80,158,37,42,80,159,34,40,35,83,158,34,16,2,89,162,34, -36,47,2,13,223,0,87,95,28,248,22,172,11,194,12,252,22,178,8,2,13, -6,16,16,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,34,198, -199,28,28,248,22,0,195,249,22,40,196,34,11,12,252,22,178,8,2,13,6, -19,19,112,114,111,99,101,100,117,114,101,32,40,97,114,105,116,121,32,48,41, -35,198,199,20,14,159,80,158,34,42,193,247,194,80,159,34,43,35,83,158,34, -16,6,252,22,168,9,2,61,11,35,34,11,80,159,34,44,35,80,159,34,45, -35,80,159,34,46,35,80,159,34,47,35,80,159,34,48,35,83,158,34,16,6, -27,247,22,128,10,87,94,28,192,28,248,22,191,9,193,12,250,22,178,8,2, -164,3,2,130,4,195,12,91,159,39,11,90,161,39,34,11,254,22,168,9,2, -61,11,35,34,11,9,204,252,22,7,197,198,199,250,22,170,9,203,34,2,132, -4,250,22,171,9,204,34,2,132,4,80,159,34,49,35,80,159,34,50,35,80, -159,34,51,35,80,159,34,52,35,80,159,34,53,35,83,158,34,16,2,89,162, -34,34,43,2,24,223,0,248,80,158,35,45,249,22,25,11,80,158,37,55,80, -159,34,54,35,83,158,34,16,2,89,162,38,36,47,2,26,223,0,87,95,28, -248,80,158,35,46,194,12,252,22,178,8,2,26,6,22,22,98,114,101,97,107, -32,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,34,198,199,28, -28,248,22,0,195,249,22,40,196,34,11,12,252,22,178,8,2,13,6,19,19, -112,114,111,99,101,100,117,114,101,32,40,97,114,105,116,121,32,48,41,35,198, -199,83,158,38,20,95,94,20,14,159,80,158,34,55,249,80,158,36,47,195,34, -87,94,247,80,158,34,57,247,194,247,80,158,34,57,80,159,34,56,35,83,158, -34,16,2,89,162,34,37,47,2,28,223,0,28,248,22,63,196,248,22,136,11, -194,28,248,248,22,83,197,194,83,158,38,20,95,94,248,248,22,85,197,194,20, -14,159,80,158,34,55,194,247,80,158,34,57,250,80,158,37,58,196,197,248,22, -59,199,80,159,34,58,35,83,158,34,16,2,89,162,34,37,47,2,29,223,0, -28,248,22,63,196,248,22,136,11,194,28,248,248,22,83,197,194,20,14,159,80, -158,34,55,194,87,94,247,80,158,34,57,248,248,22,85,197,194,250,80,158,37, -59,196,197,248,22,59,199,80,159,34,59,35,83,158,34,16,2,248,22,174,11, -11,80,159,34,8,26,35,83,158,34,16,2,32,0,89,162,34,35,42,2,31, -222,28,248,22,16,193,12,249,22,175,8,2,43,6,37,37,101,120,99,101,112, -116,105,111,110,32,104,97,110,100,108,101,114,32,117,115,101,100,32,111,117,116, -32,111,102,32,99,111,110,116,101,120,116,80,159,34,8,27,35,83,158,34,16, -2,247,22,17,80,159,34,8,28,35,83,158,34,16,2,89,162,34,36,42,2, -33,223,0,20,14,159,80,158,34,8,30,193,247,194,80,159,34,8,29,35,96, -2,133,4,2,60,2,59,2,10,96,2,133,4,2,55,2,64,2,63,0}; - EVAL_ONE_SIZED_STR((char *)expr, 18226); - } - { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,113,0,0,0,1,0,0,3,0,16,0,27,0, -47,0,52,0,69,0,81,0,103,0,111,0,117,0,131,0,156,0,185,0,207, -0,222,0,240,0,250,0,5,1,16,1,43,1,52,1,68,1,86,1,94,1, -103,1,118,1,144,1,156,1,174,1,194,1,206,1,222,1,2,2,33,2,39, -2,52,2,63,2,70,2,80,2,91,2,101,2,113,2,129,2,141,2,166,2, -193,2,201,2,218,2,238,2,245,2,252,2,3,3,10,3,17,3,23,3,28, -3,37,3,48,3,63,3,77,3,94,3,104,3,114,3,118,3,123,3,133,3, -161,3,193,3,202,3,210,3,217,3,245,3,247,3,0,4,6,4,51,4,56, -4,61,4,92,4,96,4,99,4,103,4,106,4,114,4,121,4,130,4,139,4, -155,4,161,4,178,4,137,5,149,5,171,5,202,5,215,5,221,5,227,5,233, -5,117,6,40,7,50,7,70,7,213,7,36,8,190,8,28,9,135,9,241,9, -4,10,51,10,185,10,35,11,0,0,104,48,0,0,29,11,11,72,112,97,116, -104,45,115,116,114,105,110,103,63,70,45,114,101,58,115,117,102,102,105,120,79, -112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,102,102,105,120,64,98, -115,98,115,76,110,111,114,109,97,108,45,99,97,115,101,45,112,97,116,104,71, -114,97,116,105,111,110,97,108,105,122,101,1,20,114,101,97,100,45,101,118,97, -108,45,112,114,105,110,116,45,108,111,111,112,67,108,111,97,100,47,99,100,65, -45,108,111,97,100,73,108,111,97,100,45,114,101,108,97,116,105,118,101,1,23, -108,111,97,100,45,114,101,108,97,116,105,118,101,45,101,120,116,101,110,115,105, -111,110,1,27,112,97,116,104,45,108,105,115,116,45,115,116,114,105,110,103,45, -62,112,97,116,104,45,108,105,115,116,1,20,102,105,110,100,45,101,120,101,99, -117,116,97,98,108,101,45,112,97,116,104,74,45,99,104,101,99,107,45,114,101, -108,112,97,116,104,77,45,99,104,101,99,107,45,99,111,108,108,101,99,116,105, -111,110,69,45,102,105,110,100,45,99,111,108,70,100,108,108,45,115,117,102,102, -105,120,70,95,108,111,97,100,101,114,46,115,111,1,25,99,117,114,114,101,110, -116,45,108,111,97,100,47,117,115,101,45,99,111,109,112,105,108,101,100,68,35, -37,112,97,114,97,109,122,75,99,111,108,108,101,99,116,105,111,110,45,112,97, -116,104,77,108,111,97,100,47,117,115,101,45,99,111,109,112,105,108,101,100,67, -45,114,101,58,100,105,114,68,45,114,101,58,97,117,116,111,74,45,114,101,58, -111,107,45,114,101,108,112,97,116,104,1,24,45,109,111,100,117,108,101,45,104, -97,115,104,45,116,97,98,108,101,45,116,97,98,108,101,71,45,112,97,116,104, -45,99,97,99,104,101,77,45,108,111,97,100,105,110,103,45,102,105,108,101,110, -97,109,101,79,45,108,111,97,100,105,110,103,45,112,114,111,109,112,116,45,116, -97,103,71,45,112,114,101,118,45,114,101,108,116,111,75,45,112,114,101,118,45, -114,101,108,116,111,45,100,105,114,1,34,109,97,107,101,45,115,116,97,110,100, -97,114,100,45,109,111,100,117,108,101,45,110,97,109,101,45,114,101,115,111,108, -118,101,114,1,29,102,105,110,100,45,108,105,98,114,97,114,121,45,99,111,108, -108,101,99,116,105,111,110,45,112,97,116,104,115,65,112,111,114,116,63,72,115, -116,114,117,99,116,58,103,117,97,114,100,70,109,97,107,101,45,103,117,97,114, -100,66,103,117,97,114,100,63,69,103,117,97,114,100,45,114,101,102,70,103,117, -97,114,100,45,115,101,116,33,69,103,117,97,114,100,45,101,118,116,71,99,104, -97,110,110,101,108,45,103,101,116,75,99,104,97,110,110,101,108,45,116,114,121, -45,103,101,116,71,99,104,97,110,110,101,108,45,112,117,116,1,23,105,110,116, -101,114,97,99,116,105,111,110,45,101,110,118,105,114,111,110,109,101,110,116,1, -25,115,99,104,101,109,101,45,114,101,112,111,114,116,45,101,110,118,105,114,111, -110,109,101,110,116,67,109,107,45,114,53,114,115,76,110,117,108,108,45,101,110, -118,105,114,111,110,109,101,110,116,79,109,101,109,111,114,121,45,116,114,97,99, -101,45,108,97,109,98,100,97,3,1,4,103,57,48,54,3,1,4,103,57,49, -50,3,1,4,103,57,49,49,3,1,4,103,57,48,56,3,1,4,103,57,48, -57,65,35,37,115,116,120,64,104,101,114,101,68,35,37,100,101,102,105,110,101, -70,35,37,109,101,109,116,114,97,99,101,74,35,37,115,109,97,108,108,45,115, -99,104,101,109,101,73,35,37,109,111,114,101,45,115,99,104,101,109,101,76,35, -37,115,116,120,99,97,115,101,45,115,99,104,101,109,101,3,1,7,101,110,118, -52,53,49,52,3,1,7,101,110,118,52,53,49,53,63,108,101,116,64,108,111, -111,112,69,101,120,101,99,45,102,105,108,101,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,6,29, -29,126,97,58,32,105,110,118,97,108,105,100,32,114,101,108,97,116,105,118,101, -32,112,97,116,104,58,32,126,115,6,6,6,110,97,116,105,118,101,67,119,105, -110,100,111,119,115,6,4,4,114,101,97,108,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,5,0, -68,114,101,108,97,116,105,118,101,65,99,108,111,111,112,6,42,42,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,64,115,97, -109,101,64,119,101,97,107,1,29,115,116,97,110,100,97,114,100,45,109,111,100, -117,108,101,45,110,97,109,101,45,114,101,115,111,108,118,101,114,63,108,105,98, -5,1,46,5,2,46,46,62,117,112,67,105,103,110,111,114,101,100,66,35,37, -114,53,114,115,68,109,122,115,99,104,101,109,101,68,35,37,107,101,114,110,101, -108,16,4,11,11,61,120,3,1,7,101,110,118,52,53,48,56,95,8,193,11, -16,0,97,10,35,11,94,159,2,61,9,11,159,2,55,9,11,16,0,97,10, -34,11,96,159,2,57,9,11,159,2,58,9,11,159,2,59,9,11,159,2,60, -9,11,16,94,2,38,2,1,2,37,2,1,2,45,2,1,2,39,2,1,2, -9,2,1,2,27,2,1,2,40,2,1,2,28,2,1,2,24,2,1,2,41, -2,1,2,11,2,1,2,42,2,1,2,12,2,1,2,43,2,1,2,5,2, -1,2,34,2,1,2,25,2,1,2,33,2,1,2,26,2,1,2,30,2,1, -2,10,2,1,2,35,2,1,2,44,2,1,2,49,2,1,2,31,2,1,2, -13,2,1,2,23,2,1,2,32,2,1,2,20,2,1,2,15,2,1,2,47, -2,1,2,46,2,1,2,22,2,1,2,29,2,1,2,4,2,1,2,17,2, -1,2,48,2,1,2,14,2,1,2,2,2,1,2,8,2,1,2,18,2,1, -2,6,2,1,2,3,2,1,2,16,2,1,2,19,2,1,2,36,2,1,2, -7,2,1,18,97,2,56,8,91,8,90,8,89,8,88,16,8,11,11,61,95, -64,97,114,103,115,64,98,111,100,121,2,63,2,63,2,63,16,8,11,11,3, -1,4,103,56,57,52,3,1,4,103,56,57,53,3,1,4,103,56,57,54,2, -62,2,62,2,62,98,8,91,8,90,8,89,8,88,8,94,8,93,18,158,2, -56,8,95,18,158,2,56,8,95,18,158,2,56,8,95,104,8,91,8,90,8, -89,8,88,8,94,8,93,16,4,11,11,3,1,4,103,57,48,49,3,1,7, -101,110,118,52,53,51,49,16,4,11,11,68,99,111,110,116,109,97,114,107,3, -1,7,101,110,118,52,53,51,50,16,4,11,11,3,1,4,103,57,48,51,3, -1,7,101,110,118,52,53,52,51,16,4,11,11,64,102,117,110,99,3,1,7, -101,110,118,52,53,52,52,16,4,11,11,3,1,4,103,57,48,53,3,1,7, -101,110,118,52,53,53,53,16,4,11,11,67,110,101,119,109,97,114,107,3,1, -7,101,110,118,52,53,53,54,18,158,96,10,2,64,93,94,2,50,11,96,2, -64,93,94,2,51,95,66,108,97,109,98,100,97,2,52,95,2,64,93,94,2, -53,94,1,31,117,110,105,111,110,101,100,45,109,101,109,116,114,97,99,101,45, -116,114,97,99,107,105,110,103,45,118,97,108,117,101,2,50,160,1,22,119,105, -116,104,45,99,111,110,116,105,110,117,97,116,105,111,110,45,109,97,114,107,1, -30,109,101,109,111,114,121,45,116,114,97,99,101,45,99,111,110,116,105,110,117, -97,116,105,111,110,45,109,97,114,107,2,53,2,54,95,64,115,101,116,33,2, -50,94,1,30,110,101,119,45,109,101,109,116,114,97,99,101,45,116,114,97,99, -107,105,110,103,45,102,117,110,99,116,105,111,110,2,51,2,51,8,99,0,8, -35,114,120,35,34,94,44,34,0,18,35,114,120,35,34,40,91,46,93,91,94, -46,93,42,124,41,36,34,32,103,89,162,8,64,34,42,69,114,101,112,108,45, -108,111,111,112,222,250,22,13,32,0,89,162,34,34,41,9,222,27,247,247,22, -46,28,248,22,142,5,193,12,87,94,83,159,44,32,0,89,162,35,35,42,9, -222,249,22,3,247,22,45,194,248,22,13,89,162,34,34,46,9,223,1,27,249, -22,57,77,35,37,116,111,112,45,105,110,116,101,114,97,99,116,105,111,110,195, -248,247,22,170,8,28,248,22,149,3,195,248,22,168,8,250,22,152,3,11,197, -198,193,248,22,15,247,22,18,247,22,18,32,0,89,162,8,37,34,39,9,222, -247,2,103,32,104,89,162,8,64,37,49,2,65,222,27,249,22,152,13,196,197, -28,192,27,248,22,84,194,27,250,2,104,198,199,248,22,93,198,28,249,22,138, -7,195,2,73,249,22,71,197,194,249,22,57,248,22,176,12,196,194,28,249,22, -138,7,197,2,73,249,22,71,195,9,249,22,57,248,22,176,12,198,9,32,105, -89,162,8,100,37,53,70,102,111,117,110,100,45,101,120,101,99,222,28,192,91, -159,37,11,90,161,37,34,11,248,22,188,12,198,27,28,197,27,248,22,129,13, -200,28,249,22,150,8,194,201,11,28,248,22,189,12,193,250,2,105,200,201,249, -22,185,12,199,197,250,2,105,200,201,195,11,28,192,192,27,28,248,22,167,12, -195,27,249,22,185,12,197,200,28,28,248,22,180,12,193,10,248,22,179,12,193, -192,11,11,28,192,192,28,198,11,27,248,22,129,13,201,28,249,22,150,8,194, -202,11,28,248,22,189,12,193,250,2,105,201,202,249,22,185,12,200,197,250,2, -105,201,202,195,194,32,106,89,162,8,100,38,53,2,65,222,28,248,22,63,196, -11,27,248,22,128,13,248,22,58,198,27,249,22,185,12,195,196,28,248,22,179, -12,193,250,2,105,198,199,195,27,248,22,59,199,28,248,22,63,193,11,27,248, -22,128,13,248,22,58,195,27,249,22,185,12,195,199,28,248,22,179,12,193,250, -2,105,201,202,195,251,2,106,201,202,203,248,22,59,199,32,107,89,162,8,64, -39,55,2,75,222,28,248,22,63,197,248,22,136,11,249,22,175,10,248,22,173, -6,251,22,128,7,2,76,201,28,248,22,63,204,202,250,22,1,22,185,12,205, -206,200,247,22,21,27,249,22,185,12,248,22,58,200,197,28,248,22,180,12,193, -27,250,22,1,22,185,12,196,200,28,248,22,180,12,193,192,252,2,107,199,200, -201,202,248,22,59,204,252,2,107,198,199,200,201,248,22,59,203,32,108,89,162, -8,64,38,54,2,75,222,28,248,22,63,196,248,22,136,11,249,22,175,10,248, -22,173,6,251,22,128,7,2,76,2,22,28,248,22,63,203,201,250,22,1,22, -185,12,204,205,200,247,22,21,27,249,22,185,12,248,22,58,199,196,28,248,22, -180,12,193,27,250,22,1,22,185,12,196,199,28,248,22,180,12,193,192,251,2, -108,198,199,200,248,22,59,202,251,2,108,197,198,199,248,22,59,201,0,17,35, -114,120,35,34,40,46,43,63,41,47,43,40,46,42,41,34,0,45,35,114,120, -35,34,94,91,45,97,45,122,65,45,90,48,45,57,95,46,32,93,43,40,47, -43,91,45,97,45,122,65,45,90,48,45,57,95,46,32,93,43,41,42,36,34, -32,111,89,162,8,64,36,52,2,65,222,27,249,22,152,13,2,109,196,28,192, -27,249,22,185,12,196,27,248,22,84,197,28,249,22,138,7,194,2,81,2,77, -28,249,22,138,7,194,2,82,2,83,248,22,176,12,193,27,248,22,93,195,27, -249,22,152,13,2,109,195,28,192,249,2,111,249,22,185,12,198,27,248,22,84, -198,28,249,22,138,7,194,2,81,2,77,28,249,22,138,7,194,2,82,2,83, -248,22,176,12,193,248,22,93,195,249,22,185,12,196,248,22,176,12,196,249,22, -185,12,195,248,22,176,12,197,32,112,89,162,8,64,38,54,2,75,222,28,248, -22,63,196,248,22,136,11,249,22,175,10,248,22,173,6,251,22,128,7,2,76, -2,79,28,248,22,63,203,201,250,22,1,22,185,12,204,205,200,247,22,21,27, -249,22,185,12,248,22,58,199,196,28,248,22,180,12,193,27,250,22,1,22,185, -12,196,199,28,248,22,180,12,193,192,251,2,112,198,199,200,248,22,59,202,251, -2,112,197,198,199,248,22,59,201,159,34,20,100,159,34,16,1,20,24,65,98, -101,103,105,110,16,0,83,158,40,20,97,114,66,35,37,109,105,115,99,2,1, -10,10,10,46,80,158,34,34,20,100,159,40,16,48,30,2,1,2,2,193,30, -2,1,2,3,193,30,2,1,2,4,193,30,2,1,2,5,193,30,2,1,2, -6,193,30,2,1,2,7,193,30,2,1,2,8,193,30,2,1,2,9,193,30, -2,1,2,10,193,30,2,1,2,11,193,30,2,1,2,12,193,30,2,1,2, -13,193,30,2,1,2,14,193,30,2,1,2,15,193,30,2,1,2,16,193,30, -2,1,2,17,193,30,2,1,2,18,193,30,2,1,2,19,193,30,2,1,2, -20,193,30,2,21,1,20,112,97,114,97,109,101,116,101,114,105,122,97,116,105, -111,110,45,107,101,121,4,30,2,21,1,23,101,120,116,101,110,100,45,112,97, -114,97,109,101,116,101,114,105,122,97,116,105,111,110,3,30,2,1,2,22,193, -30,2,1,2,23,193,30,2,1,2,24,193,30,2,1,2,25,193,30,2,1, -2,26,193,30,2,1,2,27,193,30,2,1,2,28,193,30,2,1,2,29,193, -30,2,1,2,30,193,30,2,1,2,31,193,30,2,1,2,32,193,30,2,1, -2,33,193,30,2,1,2,34,193,30,2,1,2,35,193,30,2,1,2,36,193, -30,2,1,2,37,193,30,2,1,2,38,193,30,2,1,2,39,193,30,2,1, -2,40,193,30,2,1,2,41,193,30,2,1,2,42,193,30,2,1,2,43,193, -30,2,1,2,44,193,30,2,1,2,45,193,30,2,1,2,46,193,30,2,1, -2,47,193,30,2,1,2,48,193,16,0,11,11,16,23,2,16,2,15,2,17, -2,10,2,29,2,30,2,27,2,28,2,31,2,32,2,25,2,24,2,26,2, -3,2,19,2,5,2,18,2,39,2,40,2,38,2,37,2,47,2,36,57,11, -16,24,2,42,2,44,2,43,2,22,2,20,2,14,2,34,2,41,2,45,2, -11,2,12,2,9,2,23,2,33,2,6,2,48,2,13,2,4,2,2,2,35, -2,7,2,8,2,46,2,49,16,24,11,11,11,11,11,11,11,11,11,11,11, -11,11,11,11,11,11,11,11,11,11,11,11,11,16,24,2,42,2,44,2,43, -2,22,2,20,2,14,2,34,2,41,2,45,2,11,2,12,2,9,2,23,2, -33,2,6,2,48,2,13,2,4,2,2,2,35,2,7,2,8,2,46,2,49, -57,58,93,16,5,93,2,49,89,162,34,35,58,9,223,0,27,249,22,152,3, -20,15,159,37,34,41,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248, +159,45,36,49,249,22,1,22,71,250,22,2,22,65,248,22,159,3,249,80,158, +53,45,20,15,159,53,37,49,206,248,22,159,3,249,80,158,53,45,20,15,159, +53,38,49,205,27,28,248,80,158,45,39,194,248,80,158,45,40,194,11,28,192, +249,80,158,46,46,205,27,250,22,67,201,198,200,250,80,158,50,47,89,162,34, +34,47,9,224,16,3,252,80,158,40,41,20,15,159,40,39,49,21,95,2,149, +2,2,150,2,2,151,2,248,22,84,198,248,22,58,198,248,22,86,198,21,96, +2,152,2,2,12,96,2,11,95,2,153,2,11,2,12,2,154,2,2,85,97, +2,94,9,2,155,2,2,156,2,2,85,20,15,159,50,40,49,248,80,158,45, +48,20,15,159,45,41,49,250,22,178,8,11,2,55,197,34,20,100,159,34,16, +15,2,154,4,2,155,4,2,156,4,2,157,4,2,159,4,2,161,4,2,162, +4,2,160,4,2,158,4,2,190,4,2,191,4,2,128,5,2,174,4,2,175, +4,2,129,5,16,8,33,172,5,33,174,5,33,178,5,33,179,5,33,180,5, +33,182,5,33,183,5,33,185,5,11,16,5,93,2,46,87,94,83,158,34,16, +2,89,162,35,35,46,9,223,0,251,80,158,38,42,20,15,159,38,36,47,21, +94,2,163,2,2,164,2,248,22,58,198,248,22,84,198,80,159,34,52,35,89, +162,34,35,59,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248, +80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,28,248, +80,158,39,38,248,80,158,40,36,194,27,248,80,158,40,37,194,28,248,80,158, +40,34,193,249,80,158,41,35,248,80,158,42,36,195,27,248,80,158,43,37,196, +28,248,80,158,43,39,193,248,80,158,43,40,193,11,11,11,11,11,28,192,27, +248,22,58,194,27,248,22,84,195,27,248,22,86,196,249,80,158,40,41,199,27, +249,22,67,197,198,251,80,158,45,42,20,15,159,45,34,47,21,94,2,165,2, +2,166,2,248,22,59,197,248,22,58,197,27,28,248,80,158,37,34,196,249,80, +158,38,35,248,80,158,39,36,198,27,248,80,158,40,37,199,28,248,80,158,40, +34,193,249,80,158,41,43,27,248,80,158,43,36,196,28,248,80,158,43,34,193, +249,80,158,44,43,27,248,80,158,46,36,196,28,248,80,158,46,34,193,249,80, +158,47,35,248,80,158,48,36,195,27,248,80,158,49,37,196,28,248,80,158,49, +34,193,249,80,158,50,35,248,80,158,51,36,195,248,80,158,51,38,248,80,158, +52,37,196,11,11,27,248,80,158,46,37,196,28,248,80,158,46,39,193,248,22, +9,89,162,34,35,46,9,224,12,1,27,249,22,2,89,162,34,35,51,9,224, +4,5,249,80,158,37,44,28,248,80,158,38,34,197,249,80,158,39,35,248,80, +158,40,36,199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80,158, +42,35,248,80,158,43,36,195,248,80,158,43,38,248,80,158,44,37,196,11,11, +194,248,80,158,39,40,196,28,248,22,63,193,21,94,9,9,248,80,158,37,45, +193,11,11,27,248,80,158,43,37,196,28,248,80,158,43,34,193,249,80,158,44, +35,248,80,158,45,36,195,27,248,80,158,46,37,196,28,248,80,158,46,39,193, +248,80,158,46,40,193,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84, +195,27,248,22,93,196,27,248,22,96,197,27,249,22,76,199,38,27,249,22,76, +200,39,27,249,22,75,201,40,249,80,158,45,41,204,27,253,22,67,201,203,206, +205,202,204,250,80,158,49,46,89,162,34,34,53,9,224,15,3,254,80,158,42, +42,20,15,159,42,35,47,21,97,2,167,2,2,168,2,2,169,2,2,170,2, +2,171,2,248,22,93,200,248,22,96,200,250,22,2,80,159,45,52,35,249,22, +75,204,39,248,22,84,203,249,22,76,201,38,248,22,58,200,21,95,2,38,93, +94,2,172,2,2,173,2,97,2,46,94,94,2,174,2,2,175,2,2,85,2, +176,2,2,177,2,2,85,20,15,159,49,37,47,250,22,178,8,11,2,55,198, +34,20,100,159,35,16,13,2,154,4,2,155,4,2,156,4,2,157,4,2,159, +4,2,161,4,2,162,4,2,174,4,2,160,4,2,158,4,2,190,4,2,191, +4,2,175,4,16,4,33,187,5,33,189,5,33,190,5,33,191,5,11,16,5, +93,2,42,89,162,34,35,56,9,223,0,27,249,22,152,3,20,15,159,37,34, +42,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36,196, +27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80,158,41,35,248,80, +158,42,36,195,27,248,80,158,43,37,196,28,248,80,158,43,34,193,249,80,158, +44,35,248,80,158,45,36,195,27,248,80,158,46,37,196,28,248,80,158,46,38, +193,248,80,158,46,39,193,11,11,11,11,28,192,27,248,22,58,194,27,248,22, +84,195,27,248,22,93,196,27,248,22,94,197,249,80,158,42,40,201,27,250,22, +67,198,200,199,252,80,158,48,41,20,15,159,48,35,42,21,95,2,182,2,2, +183,2,2,184,2,248,22,84,198,248,22,86,198,248,22,58,198,250,22,178,8, +11,2,55,196,34,20,100,159,34,16,8,2,154,4,2,155,4,2,156,4,2, +157,4,2,161,4,2,162,4,2,174,4,2,160,4,16,2,33,129,6,33,131, +6,11,16,5,93,2,64,27,248,22,180,13,10,253,22,66,248,199,20,15,159, +42,34,34,248,199,20,15,159,42,35,34,248,199,20,15,159,42,36,34,248,22, +66,248,200,20,15,159,43,37,34,248,22,66,248,200,20,15,159,43,38,34,10, +43,20,100,159,34,16,0,16,5,33,132,6,33,133,6,33,134,6,33,135,6, +33,136,6,11,16,5,94,2,36,2,41,87,96,83,158,34,16,2,89,162,35, +35,46,9,223,0,251,80,158,38,42,20,15,159,38,46,50,21,94,2,187,2, +2,188,2,248,22,58,198,248,22,84,198,80,159,34,8,35,35,83,158,34,16, +2,89,162,35,35,46,9,223,0,251,80,158,38,42,20,15,159,38,45,50,21, +94,2,189,2,2,190,2,248,22,58,198,248,22,84,198,80,159,34,8,34,35, +83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,42,20,15,159, +38,44,50,21,94,2,191,2,2,128,3,248,22,58,198,248,22,84,198,80,159, +34,8,33,35,27,89,162,8,36,35,41,62,119,104,223,1,89,162,34,35,8, +31,9,224,0,1,27,249,22,152,3,20,15,159,38,34,50,197,27,28,248,80, +158,38,34,194,249,80,158,39,35,248,80,158,40,36,196,27,248,80,158,41,37, +197,28,248,80,158,41,34,193,28,248,80,158,41,38,248,80,158,42,36,194,27, +248,80,158,42,37,194,28,248,80,158,42,34,193,249,80,158,43,35,248,80,158, +44,36,195,27,248,80,158,45,37,196,28,248,80,158,45,39,193,248,80,158,45, +40,193,11,11,11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248, +22,86,196,249,80,158,42,41,201,27,249,22,67,198,197,251,80,158,47,42,20, +15,159,47,35,50,21,94,2,129,3,2,130,3,248,22,58,197,248,22,59,197, +27,28,248,80,158,39,34,195,249,80,158,40,35,248,80,158,41,36,197,27,248, +80,158,42,37,198,28,248,80,158,42,34,193,249,80,158,43,43,27,248,80,158, +45,36,196,28,248,80,158,45,39,193,248,22,9,89,162,34,35,46,9,224,11, +1,27,249,22,2,89,162,34,35,51,9,224,4,5,249,80,158,37,44,28,248, +80,158,38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248,80,158,41, +37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,248, +80,158,43,38,248,80,158,44,37,196,11,11,194,248,80,158,39,40,196,28,248, +22,63,193,21,94,9,9,248,80,158,37,45,193,11,27,248,80,158,45,37,196, +28,248,80,158,45,34,193,249,80,158,46,35,248,80,158,47,36,195,27,248,80, +158,48,37,196,28,248,80,158,48,39,193,248,80,158,48,40,193,11,11,11,11, +28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,96, +197,27,248,22,95,198,27,249,22,152,3,20,15,159,46,36,50,248,80,158,47, +46,249,22,2,32,0,89,162,8,44,35,40,9,222,1,23,119,105,116,104,45, +104,97,110,100,108,101,114,115,45,112,114,101,100,105,99,97,116,101,248,22,159, +3,249,80,158,52,47,20,15,159,52,37,50,204,27,249,22,152,3,20,15,159, +47,38,50,248,80,158,48,46,249,22,2,32,0,89,162,8,44,35,40,9,222, +1,21,119,105,116,104,45,104,97,110,100,108,101,114,115,45,104,97,110,100,108, +101,114,248,22,159,3,249,80,158,53,47,20,15,159,53,39,50,204,27,28,248, +80,158,47,39,195,248,80,158,47,40,195,11,28,192,27,28,248,80,158,48,39, +195,248,80,158,48,40,195,11,28,192,27,249,22,152,3,20,15,159,50,40,50, +28,23,15,20,15,159,50,41,50,20,15,159,50,42,50,249,80,158,50,41,23, +17,27,254,22,67,204,203,202,23,15,23,18,23,16,23,17,250,80,158,54,48, +89,162,34,34,55,9,224,20,3,254,80,158,42,42,20,15,159,42,43,50,21, +97,2,131,3,2,132,3,2,133,3,2,134,3,2,135,3,249,22,71,250,22, +2,80,159,47,8,33,35,248,22,58,205,249,22,76,206,38,250,22,2,80,159, +47,8,34,35,248,22,84,205,249,22,75,206,40,248,22,93,200,250,22,2,80, +159,45,8,35,35,248,22,58,203,248,22,84,203,249,22,76,201,39,248,22,96, +200,21,95,2,94,96,94,2,136,3,2,137,3,2,85,94,2,138,3,2,139, +3,2,85,95,2,94,93,94,2,140,3,95,2,153,2,11,2,25,96,2,152, +2,2,25,2,30,96,2,141,3,95,2,146,2,9,96,2,152,2,2,25,2, +140,3,96,2,152,2,2,34,95,2,146,2,93,2,142,3,95,2,143,3,2, +32,95,2,146,2,9,96,63,117,113,49,2,142,3,2,140,3,95,2,144,3, +95,2,145,3,2,136,3,2,138,3,2,85,97,2,94,9,2,155,2,2,156, +2,2,85,2,32,95,2,146,2,93,2,146,3,93,2,146,3,20,15,159,54, +47,50,248,80,158,48,49,20,15,159,48,48,50,248,80,158,47,49,20,15,159, +47,49,50,250,22,178,8,11,2,55,197,249,22,7,248,195,10,248,195,11,38, +20,100,159,37,16,16,2,154,4,2,155,4,2,156,4,2,157,4,2,159,4, +2,161,4,2,162,4,2,174,4,2,160,4,2,158,4,2,190,4,2,191,4, +2,137,6,2,128,5,2,175,4,2,129,5,16,16,33,140,6,33,142,6,33, +146,6,33,147,6,33,148,6,33,149,6,33,151,6,33,152,6,33,153,6,33, +154,6,33,155,6,33,156,6,33,157,6,33,158,6,33,160,6,33,162,6,11, +16,5,93,2,35,87,95,83,158,34,16,2,89,162,34,36,54,68,116,114,121, +45,110,101,120,116,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248, +80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80, +158,40,39,27,248,80,158,42,36,196,28,248,80,158,42,41,193,248,22,65,248, +80,158,43,42,194,11,27,248,80,158,42,37,196,28,248,80,158,42,34,193,249, +80,158,43,39,248,80,158,44,36,195,248,80,158,44,38,248,80,158,45,37,196, +11,11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,28, +27,248,80,158,40,42,249,80,158,42,43,20,15,159,42,36,50,197,87,94,249, +22,3,89,162,34,35,46,9,224,7,9,28,248,80,158,36,44,195,12,251,22, +178,8,11,6,17,17,110,111,116,32,97,110,32,105,100,101,110,116,105,102,105, +101,114,196,198,194,27,248,80,158,41,45,194,28,192,251,22,178,8,11,6,20, +20,100,117,112,108,105,99,97,116,101,32,105,100,101,110,116,105,102,105,101,114, +204,196,12,27,249,22,152,3,20,15,159,41,37,50,248,80,158,42,46,249,80, +158,44,43,20,15,159,44,38,50,199,27,28,248,80,158,41,41,194,248,80,158, +41,42,194,11,28,192,249,80,158,42,47,202,27,250,22,67,198,201,200,250,80, +158,46,48,89,162,34,34,50,9,224,12,3,252,80,158,40,40,20,15,159,40, +39,50,21,95,2,154,3,2,155,3,2,156,3,248,22,58,198,248,22,86,198, +250,22,2,80,159,43,8,27,35,248,22,84,201,248,22,58,201,21,96,2,157, +3,93,94,94,2,158,3,2,85,2,156,2,95,2,159,3,2,160,3,2,158, +3,2,85,20,15,159,46,41,50,248,80,158,41,49,20,15,159,41,42,50,250, +22,178,8,11,2,55,200,250,22,178,8,11,2,55,197,80,159,34,8,28,35, +83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,40,20,15,159, +38,40,50,21,94,2,161,3,2,162,3,248,22,58,198,248,22,84,198,80,159, +34,8,27,35,89,162,34,35,54,9,223,0,27,249,22,152,3,20,15,159,37, +34,50,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36, +196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,28,248,80,158,40,38, +248,80,158,41,36,194,27,248,80,158,41,37,194,28,248,80,158,41,34,193,249, +80,158,42,39,248,80,158,43,36,195,248,80,158,43,38,248,80,158,44,37,196, +11,11,11,11,28,192,27,248,22,58,194,27,248,22,59,195,250,80,158,41,40, +20,15,159,41,35,50,21,93,2,163,3,195,27,28,248,80,158,38,34,195,249, +80,158,39,35,248,80,158,40,36,197,27,248,80,158,41,37,198,28,248,80,158, +41,34,193,249,80,158,42,39,27,248,80,158,44,36,196,28,248,80,158,44,34, +193,249,80,158,45,35,248,80,158,46,36,195,248,80,158,46,38,248,80,158,47, +37,196,11,27,248,80,158,44,37,196,28,248,80,158,44,34,193,249,80,158,45, +39,248,80,158,46,36,195,248,80,158,46,38,248,80,158,47,37,196,11,11,11, +28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,28,248,80,158, +41,44,194,27,249,22,67,196,195,251,80,158,45,40,20,15,159,45,43,50,21, +94,2,164,3,2,165,3,248,22,58,197,248,22,59,197,249,80,159,42,8,28, +35,199,201,249,80,159,39,8,28,35,196,198,34,20,100,159,36,16,16,2,154, +4,2,155,4,2,156,4,2,157,4,2,159,4,2,158,4,2,160,4,2,161, +4,2,162,4,2,128,5,2,173,4,30,2,66,1,26,99,104,101,99,107,45, +100,117,112,108,105,99,97,116,101,45,105,100,101,110,116,105,102,105,101,114,0, +2,137,6,2,174,4,2,175,4,2,129,5,16,10,33,164,6,33,166,6,33, +168,6,33,169,6,33,170,6,33,172,6,33,173,6,33,174,6,33,176,6,33, +178,6,11,16,5,93,2,39,89,162,34,35,56,9,223,0,27,249,22,152,3, +20,15,159,37,34,42,196,27,28,248,80,158,37,34,194,249,80,158,38,35,248, 80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34,193,249,80, 158,41,35,248,80,158,42,36,195,27,248,80,158,43,37,196,28,248,80,158,43, -38,193,248,80,158,43,39,193,11,11,11,28,192,27,248,22,58,194,27,248,22, -84,195,27,248,22,86,196,27,249,22,152,3,20,15,159,42,35,41,249,22,152, -3,203,247,22,54,27,249,22,152,3,20,15,159,43,36,41,249,22,152,3,204, -247,22,54,27,249,22,152,3,20,15,159,44,37,41,249,22,152,3,205,247,22, -54,27,252,22,67,198,199,202,200,201,254,80,158,50,40,20,15,159,50,38,41, -21,97,2,50,2,51,2,52,2,53,2,54,248,22,96,200,248,22,84,200,248, -22,93,200,248,22,58,200,248,22,95,200,250,22,177,8,11,6,10,10,98,97, -100,32,115,121,110,116,97,120,196,34,20,100,159,34,16,7,30,2,55,69,115, -116,120,45,112,97,105,114,63,11,30,2,55,67,99,111,110,115,47,35,102,1, -30,2,55,67,115,116,120,45,99,97,114,5,30,2,55,67,115,116,120,45,99, -100,114,6,30,2,55,69,115,116,120,45,108,105,115,116,63,8,30,2,55,69, -115,116,120,45,62,108,105,115,116,4,30,69,35,37,115,116,120,99,97,115,101, -1,24,97,112,112,108,121,45,112,97,116,116,101,114,110,45,115,117,98,115,116, -105,116,117,116,101,0,16,5,33,92,33,96,33,97,33,98,33,100,11,141,83, -158,34,16,2,89,162,8,64,35,49,2,65,223,0,28,248,22,63,194,9,27, -248,22,58,195,27,28,248,22,191,12,194,193,28,248,22,190,12,194,249,22,128, -13,195,250,80,158,41,46,248,22,141,13,2,66,11,10,250,80,158,39,46,248, -22,141,13,2,66,196,10,28,192,249,22,57,248,22,130,13,249,22,128,13,197, -247,22,142,13,248,80,159,39,8,53,35,248,22,59,199,248,80,159,37,8,53, -35,248,22,59,197,80,159,34,8,53,35,83,158,34,16,2,89,162,34,35,43, -9,223,0,249,22,13,195,80,158,36,8,29,80,159,34,8,52,35,83,158,34, -16,2,89,162,34,35,52,67,103,101,116,45,100,105,114,223,0,27,28,194,28, -249,22,148,8,196,80,158,37,8,30,80,158,35,8,31,27,248,22,157,7,248, -22,50,197,28,249,22,154,13,2,101,194,91,159,37,11,90,161,37,34,11,248, -22,188,12,248,22,176,12,250,22,141,7,200,35,248,22,135,7,201,87,95,83, -160,36,11,80,158,39,8,30,198,83,160,36,11,80,158,39,8,31,192,192,11, -11,28,192,192,27,247,22,162,5,28,192,192,247,22,142,13,80,159,34,8,51, -35,83,158,34,16,2,89,162,34,35,48,9,223,0,87,94,28,27,248,22,167, -12,195,28,192,192,28,248,22,144,6,195,27,248,22,189,12,196,28,192,192,248, -22,190,12,196,11,12,250,22,178,8,2,22,2,67,196,28,248,22,189,12,194, -12,248,22,136,11,249,22,145,10,248,22,173,6,250,22,128,7,2,68,2,22, -200,247,22,21,80,159,34,8,50,35,83,158,34,16,2,89,162,34,36,47,68, -119,105,116,104,45,100,105,114,223,0,20,14,159,80,158,34,53,250,80,158,37, -54,249,22,25,11,80,158,39,53,22,162,5,28,248,22,167,12,197,196,247,22, -142,13,247,194,80,159,34,8,49,35,83,158,34,16,2,89,162,8,36,37,43, -66,103,101,116,45,115,111,223,0,89,162,34,35,51,9,226,0,1,3,2,252, -22,185,12,199,201,2,69,247,22,164,7,28,198,249,80,159,44,36,35,199,80, -158,44,50,197,80,159,34,8,48,35,83,158,34,16,2,32,0,89,162,34,35, -43,2,2,222,27,248,22,167,12,194,28,192,192,28,248,22,144,6,194,27,248, -22,189,12,195,28,192,192,248,22,190,12,195,11,80,159,34,34,35,83,158,34, -16,2,2,102,80,159,34,35,35,83,158,34,16,2,89,162,34,36,53,2,4, -223,0,87,95,28,28,248,22,168,12,194,10,27,248,22,167,12,195,28,192,192, -28,248,22,144,6,195,27,248,22,189,12,196,28,192,192,248,22,190,12,196,11, -12,252,22,178,8,2,4,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,34,198,199,28,28,248,22,144,6,195,10, -248,22,132,7,195,12,252,22,178,8,2,4,6,21,21,115,116,114,105,110,103, -32,111,114,32,98,121,116,101,32,115,116,114,105,110,103,35,198,199,91,159,37, -11,90,161,37,34,11,248,22,188,12,197,87,94,28,192,12,250,22,179,8,2, -4,6,36,36,99,97,110,110,111,116,32,97,100,100,32,97,32,115,117,102,102, -105,120,32,116,111,32,97,32,114,111,111,116,32,112,97,116,104,58,32,199,27, -249,22,177,12,250,22,159,13,2,102,248,22,173,12,200,28,248,22,144,6,204, -249,22,156,7,205,8,63,203,28,248,22,168,12,200,248,22,169,12,200,247,22, -170,12,28,248,22,167,12,194,249,22,185,12,195,194,192,80,159,34,36,35,83, -158,34,16,2,249,22,146,6,7,92,7,92,80,159,34,37,35,83,158,34,16, -2,89,162,34,35,52,2,6,223,0,87,94,28,28,248,22,168,12,194,10,27, -248,22,167,12,195,28,192,192,28,248,22,144,6,195,27,248,22,189,12,196,28, -192,192,248,22,190,12,196,11,12,250,22,178,8,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,196,28,28,248,22,168,12,194,249, -22,148,8,248,22,169,12,196,2,70,249,22,148,8,247,22,163,7,2,70,27, -28,248,22,144,6,195,194,248,22,153,7,248,22,172,12,196,28,249,22,154,13, -0,21,35,114,120,34,94,91,92,92,93,91,92,92,93,91,63,93,91,92,92, -93,34,194,28,248,22,144,6,195,248,22,175,12,195,194,27,248,22,183,6,194, -249,22,176,12,248,22,156,7,250,22,160,13,0,6,35,114,120,34,47,34,28, -249,22,154,13,0,22,35,114,120,34,91,47,92,92,93,91,46,32,93,43,91, -47,92,92,93,42,36,34,200,198,250,22,160,13,0,19,35,114,120,34,91,32, -46,93,43,40,91,47,92,92,93,42,41,36,34,201,6,2,2,92,49,80,158, -42,37,2,70,28,248,22,144,6,194,248,22,175,12,194,193,80,159,34,38,35, -83,158,34,16,2,91,159,36,11,90,161,35,35,11,32,0,89,162,8,64,35, -43,65,99,104,101,99,107,222,28,248,22,136,2,193,12,250,22,178,8,2,7, -2,71,195,20,12,95,35,89,162,8,36,36,58,2,7,223,0,87,95,28,248, -22,136,2,194,12,250,22,178,8,2,7,2,71,196,28,248,22,136,2,195,12, -250,22,178,8,2,7,2,71,197,27,248,22,183,2,196,27,249,22,180,2,197, -195,27,249,22,179,2,198,196,28,249,22,188,2,198,198,28,250,22,191,2,196, -34,195,28,248,22,139,2,197,34,0,3,48,46,48,28,248,22,131,3,194,248, -22,180,2,27,248,22,180,2,195,27,248,22,180,2,197,28,248,22,138,2,194, -193,27,248,22,151,2,195,27,248,22,151,2,195,28,249,22,189,2,195,194,248, -22,177,2,194,249,22,179,2,195,248,22,182,2,249,205,248,22,182,2,249,22, -180,2,202,201,248,22,182,2,249,22,180,2,203,201,28,248,22,138,2,194,193, -27,248,22,151,2,195,27,248,22,151,2,195,28,249,22,189,2,195,194,248,22, -177,2,194,249,22,179,2,195,248,22,182,2,249,202,248,22,182,2,249,22,180, -2,202,201,248,22,182,2,249,22,180,2,203,201,0,6,43,110,97,110,46,48, -89,162,8,36,36,59,72,102,105,110,100,45,98,101,116,119,101,101,110,223,0, -28,248,22,138,2,194,193,27,248,22,151,2,195,27,248,22,151,2,197,28,249, -22,189,2,195,194,248,22,177,2,194,249,22,179,2,195,248,22,182,2,27,248, -22,182,2,249,22,180,2,203,200,27,248,22,182,2,249,22,180,2,203,201,28, -248,22,138,2,194,193,27,248,22,151,2,195,27,248,22,151,2,195,28,249,22, -189,2,195,194,248,22,177,2,194,249,22,179,2,195,248,22,182,2,249,206,248, -22,182,2,249,22,180,2,202,201,248,22,182,2,249,22,180,2,203,201,80,159, -34,39,35,83,158,34,16,2,32,0,89,162,34,34,40,2,8,222,247,2,103, -80,159,34,40,35,83,158,34,16,2,32,0,89,162,34,35,50,2,9,222,87, -94,28,27,248,22,167,12,194,28,192,192,28,248,22,144,6,194,27,248,22,189, -12,195,28,192,192,248,22,190,12,195,11,12,250,22,178,8,2,9,6,25,25, +34,193,249,80,158,44,35,248,80,158,45,36,195,27,248,80,158,46,37,196,28, +248,80,158,46,38,193,248,80,158,46,39,193,11,11,11,11,28,192,27,248,22, +58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,94,197,249,80,158,42, +40,201,27,250,22,67,198,200,199,252,80,158,48,41,20,15,159,48,35,42,21, +95,2,175,3,2,176,3,2,177,3,248,22,84,198,248,22,86,198,248,22,58, +198,250,22,178,8,11,2,55,196,34,20,100,159,34,16,8,2,154,4,2,155, +4,2,156,4,2,157,4,2,161,4,2,162,4,2,174,4,2,160,4,16,2, +33,180,6,33,182,6,11,16,5,93,2,45,89,162,34,35,56,9,223,0,27, +249,22,152,3,20,15,159,37,34,44,196,27,28,248,80,158,37,34,194,249,80, +158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40, +34,193,249,80,158,41,35,248,80,158,42,36,195,27,248,80,158,43,37,196,28, +248,80,158,43,34,193,249,80,158,44,38,27,248,80,158,46,36,196,28,248,80, +158,46,39,193,248,22,65,248,80,158,47,40,194,11,27,248,80,158,46,37,196, +28,248,80,158,46,34,193,249,80,158,47,35,248,80,158,48,36,195,27,248,80, +158,49,37,196,28,248,80,158,49,39,193,248,80,158,49,40,193,11,11,11,11, +11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22, +96,197,27,248,22,95,198,249,80,158,43,41,202,27,251,22,67,199,202,201,200, +250,80,158,47,42,89,162,34,34,48,9,224,13,3,253,80,158,41,43,20,15, +159,41,35,44,21,96,2,180,3,2,181,3,2,182,3,2,183,3,248,22,84, +199,248,22,93,199,248,22,94,199,248,22,58,199,21,98,2,94,9,95,2,184, +3,2,185,3,94,2,186,3,2,85,2,176,2,2,177,2,2,85,20,15,159, +47,36,44,250,22,178,8,11,2,55,196,34,20,100,159,34,16,10,2,154,4, +2,155,4,2,156,4,2,157,4,2,158,4,2,161,4,2,162,4,2,174,4, +2,175,4,2,160,4,16,3,33,184,6,33,186,6,33,187,6,11,16,5,93, +2,37,87,95,83,158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38, +42,20,15,159,38,40,50,21,94,2,189,3,2,190,3,248,22,58,198,248,22, +93,198,80,159,34,8,27,35,83,158,34,16,2,89,162,35,35,46,9,223,0, +251,80,158,38,42,20,15,159,38,39,50,21,94,2,191,3,2,128,4,248,22, +58,198,248,22,84,198,80,159,34,8,26,35,89,162,34,35,59,9,223,0,27, +249,22,152,3,20,15,159,37,34,50,196,27,28,248,80,158,37,34,194,249,80, +158,38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40, +34,193,28,248,80,158,40,38,248,80,158,41,36,194,27,248,80,158,41,37,194, +28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,27,248,80, +158,44,37,196,28,248,80,158,44,39,193,248,80,158,44,40,193,11,11,11,11, +11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,249,80,158, +41,41,200,27,249,22,67,197,198,251,80,158,46,42,20,15,159,46,35,50,21, +94,2,129,4,2,130,4,248,22,59,197,248,22,58,197,27,28,248,80,158,38, +34,195,249,80,158,39,35,248,80,158,40,36,197,27,248,80,158,41,37,198,28, +248,80,158,41,34,193,249,80,158,42,43,27,248,80,158,44,36,196,28,248,80, +158,44,39,193,248,22,9,89,162,34,35,46,9,224,10,1,27,249,22,2,89, +162,34,35,51,9,224,4,5,249,80,158,37,44,28,248,80,158,38,34,197,249, +80,158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200,28,248,80,158, +41,34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158,43,38,248,80, +158,44,37,196,11,11,194,248,80,158,39,40,196,28,248,22,63,193,21,94,9, +9,248,80,158,37,45,193,11,27,248,80,158,44,37,196,28,248,80,158,44,34, +193,249,80,158,45,35,248,80,158,46,36,195,27,248,80,158,47,37,196,28,248, +80,158,47,39,193,248,80,158,47,40,193,11,11,11,11,28,192,27,248,22,58, +194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,248,22,95,198, +27,249,22,152,3,20,15,159,45,36,50,248,80,158,46,46,249,80,158,48,47, +20,15,159,48,37,50,201,27,28,248,80,158,45,39,194,248,80,158,45,40,194, +11,28,192,249,80,158,46,41,205,27,252,22,67,203,202,205,200,204,250,80,158, +50,48,89,162,34,34,53,9,224,16,3,253,80,158,41,42,20,15,159,41,38, +50,21,96,2,131,4,2,132,4,2,133,4,2,134,4,250,22,2,80,159,44, +8,26,35,248,22,96,202,248,22,95,202,252,22,2,80,159,46,8,27,35,248, +22,96,204,248,22,96,204,248,22,93,204,248,22,93,204,248,22,58,199,248,22, +84,199,21,95,2,94,94,94,2,135,4,2,161,2,2,85,95,2,94,93,94, +2,136,4,96,2,146,2,9,96,2,94,93,94,2,132,2,2,135,4,95,2, +159,3,2,135,4,2,137,4,95,2,159,3,2,137,4,2,132,2,2,85,96, +2,138,4,2,136,4,97,2,146,2,9,2,176,2,2,177,2,2,85,2,136, +4,20,15,159,50,41,50,248,80,158,45,49,20,15,159,45,42,50,250,22,178, +8,11,2,55,197,34,20,100,159,36,16,16,2,154,4,2,155,4,2,156,4, +2,157,4,2,159,4,2,161,4,2,162,4,2,174,4,2,160,4,2,158,4, +2,190,4,2,191,4,2,137,6,2,128,5,2,175,4,2,129,5,16,9,33, +189,6,33,191,6,33,131,7,33,132,7,33,134,7,33,135,7,33,136,7,33, +137,7,33,139,7,11,16,5,93,2,44,89,162,34,35,54,9,223,0,27,249, +22,152,3,20,15,159,37,34,42,196,27,28,248,80,158,37,34,194,249,80,158, +38,35,248,80,158,39,36,196,27,248,80,158,40,37,197,28,248,80,158,40,34, +193,249,80,158,41,35,248,80,158,42,36,195,27,248,80,158,43,37,196,28,248, +80,158,43,38,193,248,80,158,43,39,193,11,11,11,28,192,27,248,22,58,194, +27,248,22,84,195,27,248,22,86,196,249,80,158,41,40,200,27,249,22,67,197, +198,251,80,158,46,41,20,15,159,46,35,42,21,94,2,143,4,2,144,4,248, +22,59,197,248,22,58,197,250,22,178,8,11,2,55,196,34,20,100,159,34,16, +8,2,154,4,2,155,4,2,156,4,2,157,4,2,161,4,2,162,4,2,174, +4,2,160,4,16,2,33,141,7,33,143,7,11,106,83,158,34,16,6,27,247, +22,129,10,87,94,28,192,28,248,22,128,10,193,12,250,22,179,8,2,184,3, +2,150,4,195,12,91,159,39,11,90,161,39,34,11,254,22,169,9,2,63,11, +35,34,11,9,204,252,22,7,197,198,199,250,22,171,9,203,34,2,151,4,250, +22,172,9,204,34,2,151,4,80,159,34,34,35,80,159,34,35,35,80,159,34, +36,35,80,159,34,37,35,80,159,34,38,35,83,158,34,16,2,89,162,34,35, +46,2,8,223,0,87,94,28,248,80,158,35,36,194,12,250,22,179,8,2,8, +6,7,7,112,114,111,109,105,115,101,196,27,248,80,158,36,37,195,28,248,22, +0,193,27,249,22,6,195,22,65,87,94,28,248,22,0,248,80,158,38,37,197, +249,80,158,38,38,197,194,12,249,22,1,22,7,248,80,158,39,37,198,249,22, +1,22,7,194,80,159,34,39,35,83,158,34,16,2,89,162,34,34,43,2,9, +223,0,248,80,158,35,41,249,22,25,11,80,158,37,42,80,159,34,40,35,83, +158,34,16,2,89,162,34,36,47,2,13,223,0,87,95,28,248,22,173,11,194, +12,252,22,179,8,2,13,6,16,16,112,97,114,97,109,101,116,101,114,105,122, +97,116,105,111,110,34,198,199,28,28,248,22,0,195,249,22,40,196,34,11,12, +252,22,179,8,2,13,6,19,19,112,114,111,99,101,100,117,114,101,32,40,97, +114,105,116,121,32,48,41,35,198,199,20,14,159,80,158,34,42,193,247,194,80, +159,34,43,35,83,158,34,16,6,252,22,169,9,2,64,11,35,34,11,80,159, +34,44,35,80,159,34,45,35,80,159,34,46,35,80,159,34,47,35,80,159,34, +48,35,83,158,34,16,6,27,247,22,129,10,87,94,28,192,28,248,22,128,10, +193,12,250,22,179,8,2,184,3,2,150,4,195,12,91,159,39,11,90,161,39, +34,11,254,22,169,9,2,64,11,35,34,11,9,204,252,22,7,197,198,199,250, +22,171,9,203,34,2,152,4,250,22,172,9,204,34,2,152,4,80,159,34,49, +35,80,159,34,50,35,80,159,34,51,35,80,159,34,52,35,80,159,34,53,35, +83,158,34,16,2,89,162,34,34,43,2,24,223,0,248,80,158,35,45,249,22, +25,11,80,158,37,55,80,159,34,54,35,83,158,34,16,2,89,162,38,36,47, +2,26,223,0,87,95,28,248,80,158,35,46,194,12,252,22,179,8,2,26,6, +22,22,98,114,101,97,107,32,112,97,114,97,109,101,116,101,114,105,122,97,116, +105,111,110,34,198,199,28,28,248,22,0,195,249,22,40,196,34,11,12,252,22, +179,8,2,13,6,19,19,112,114,111,99,101,100,117,114,101,32,40,97,114,105, +116,121,32,48,41,35,198,199,83,158,38,20,95,94,20,14,159,80,158,34,55, +249,80,158,36,47,195,34,87,94,247,80,158,34,57,247,194,247,80,158,34,57, +80,159,34,56,35,83,158,34,16,2,89,162,34,37,47,2,28,223,0,28,248, +22,63,196,248,22,137,11,194,28,248,248,22,83,197,194,83,158,38,20,95,94, +248,248,22,85,197,194,20,14,159,80,158,34,55,194,247,80,158,34,57,250,80, +158,37,58,196,197,248,22,59,199,80,159,34,58,35,83,158,34,16,2,89,162, +34,37,47,2,29,223,0,28,248,22,63,196,248,22,137,11,194,28,248,248,22, +83,197,194,20,14,159,80,158,34,55,194,87,94,247,80,158,34,57,248,248,22, +85,197,194,250,80,158,37,59,196,197,248,22,59,199,80,159,34,59,35,83,158, +34,16,2,248,22,175,11,11,80,159,34,8,26,35,83,158,34,16,2,32,0, +89,162,34,35,42,2,31,222,28,248,22,16,193,12,249,22,176,8,2,36,6, +37,37,101,120,99,101,112,116,105,111,110,32,104,97,110,100,108,101,114,32,117, +115,101,100,32,111,117,116,32,111,102,32,99,111,110,116,101,120,116,80,159,34, +8,27,35,83,158,34,16,2,247,22,17,80,159,34,8,28,35,83,158,34,16, +2,89,162,34,36,42,2,33,223,0,20,14,159,80,158,34,8,30,193,247,194, +80,159,34,8,29,35,96,2,153,4,2,62,2,61,2,10,96,2,153,4,2, +56,2,66,2,65,0}; + EVAL_ONE_SIZED_STR((char *)expr, 19850); + } + { + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,114,0,0,0,1,0,0,3,0,16,0,27, +0,47,0,52,0,69,0,81,0,103,0,111,0,117,0,131,0,156,0,185,0, +207,0,222,0,240,0,250,0,5,1,16,1,43,1,52,1,68,1,86,1,94, +1,103,1,118,1,144,1,156,1,174,1,194,1,206,1,222,1,2,2,33,2, +39,2,52,2,63,2,70,2,80,2,91,2,101,2,113,2,129,2,141,2,166, +2,193,2,201,2,218,2,238,2,245,2,252,2,3,3,10,3,17,3,23,3, +28,3,31,3,40,3,51,3,66,3,80,3,97,3,107,3,117,3,121,3,126, +3,136,3,164,3,196,3,205,3,213,3,220,3,248,3,250,3,3,4,9,4, +54,4,59,4,64,4,95,4,99,4,102,4,106,4,109,4,117,4,124,4,133, +4,142,4,158,4,164,4,181,4,140,5,161,5,183,5,214,5,236,5,242,5, +248,5,254,5,147,6,70,7,80,7,100,7,243,7,66,8,220,8,58,9,165, +9,15,10,34,10,81,10,215,10,65,11,0,0,135,48,0,0,29,11,11,72, +112,97,116,104,45,115,116,114,105,110,103,63,70,45,114,101,58,115,117,102,102, +105,120,79,112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,102,102,105, +120,64,98,115,98,115,76,110,111,114,109,97,108,45,99,97,115,101,45,112,97, +116,104,71,114,97,116,105,111,110,97,108,105,122,101,1,20,114,101,97,100,45, +101,118,97,108,45,112,114,105,110,116,45,108,111,111,112,67,108,111,97,100,47, +99,100,65,45,108,111,97,100,73,108,111,97,100,45,114,101,108,97,116,105,118, +101,1,23,108,111,97,100,45,114,101,108,97,116,105,118,101,45,101,120,116,101, +110,115,105,111,110,1,27,112,97,116,104,45,108,105,115,116,45,115,116,114,105, +110,103,45,62,112,97,116,104,45,108,105,115,116,1,20,102,105,110,100,45,101, +120,101,99,117,116,97,98,108,101,45,112,97,116,104,74,45,99,104,101,99,107, +45,114,101,108,112,97,116,104,77,45,99,104,101,99,107,45,99,111,108,108,101, +99,116,105,111,110,69,45,102,105,110,100,45,99,111,108,70,100,108,108,45,115, +117,102,102,105,120,70,95,108,111,97,100,101,114,46,115,111,1,25,99,117,114, +114,101,110,116,45,108,111,97,100,47,117,115,101,45,99,111,109,112,105,108,101, +100,68,35,37,112,97,114,97,109,122,75,99,111,108,108,101,99,116,105,111,110, +45,112,97,116,104,77,108,111,97,100,47,117,115,101,45,99,111,109,112,105,108, +101,100,67,45,114,101,58,100,105,114,68,45,114,101,58,97,117,116,111,74,45, +114,101,58,111,107,45,114,101,108,112,97,116,104,1,24,45,109,111,100,117,108, +101,45,104,97,115,104,45,116,97,98,108,101,45,116,97,98,108,101,71,45,112, +97,116,104,45,99,97,99,104,101,77,45,108,111,97,100,105,110,103,45,102,105, +108,101,110,97,109,101,79,45,108,111,97,100,105,110,103,45,112,114,111,109,112, +116,45,116,97,103,71,45,112,114,101,118,45,114,101,108,116,111,75,45,112,114, +101,118,45,114,101,108,116,111,45,100,105,114,1,34,109,97,107,101,45,115,116, +97,110,100,97,114,100,45,109,111,100,117,108,101,45,110,97,109,101,45,114,101, +115,111,108,118,101,114,1,29,102,105,110,100,45,108,105,98,114,97,114,121,45, +99,111,108,108,101,99,116,105,111,110,45,112,97,116,104,115,65,112,111,114,116, +63,72,115,116,114,117,99,116,58,103,117,97,114,100,70,109,97,107,101,45,103, +117,97,114,100,66,103,117,97,114,100,63,69,103,117,97,114,100,45,114,101,102, +70,103,117,97,114,100,45,115,101,116,33,69,103,117,97,114,100,45,101,118,116, +71,99,104,97,110,110,101,108,45,103,101,116,75,99,104,97,110,110,101,108,45, +116,114,121,45,103,101,116,71,99,104,97,110,110,101,108,45,112,117,116,1,23, +105,110,116,101,114,97,99,116,105,111,110,45,101,110,118,105,114,111,110,109,101, +110,116,1,25,115,99,104,101,109,101,45,114,101,112,111,114,116,45,101,110,118, +105,114,111,110,109,101,110,116,67,109,107,45,114,53,114,115,76,110,117,108,108, +45,101,110,118,105,114,111,110,109,101,110,116,79,109,101,109,111,114,121,45,116, +114,97,99,101,45,108,97,109,98,100,97,3,1,4,103,52,52,56,3,1,4, +103,52,53,52,3,1,4,103,52,53,51,3,1,4,103,52,53,48,3,1,4, +103,52,53,49,65,35,37,115,116,120,64,104,101,114,101,29,11,11,68,35,37, +100,101,102,105,110,101,70,35,37,109,101,109,116,114,97,99,101,74,35,37,115, +109,97,108,108,45,115,99,104,101,109,101,73,35,37,109,111,114,101,45,115,99, +104,101,109,101,76,35,37,115,116,120,99,97,115,101,45,115,99,104,101,109,101, +3,1,7,101,110,118,50,49,49,50,3,1,7,101,110,118,50,49,49,51,63, +108,101,116,64,108,111,111,112,69,101,120,101,99,45,102,105,108,101,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,6,29,29,126,97,58,32,105,110,118,97,108,105,100,32,114,101, +108,97,116,105,118,101,32,112,97,116,104,58,32,126,115,6,6,6,110,97,116, +105,118,101,67,119,105,110,100,111,119,115,6,4,4,114,101,97,108,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,195,91,159,37,11,90,161,37,34,11,248,22,188,12,196,28,194, -248,22,136,11,249,22,175,10,248,22,173,6,249,22,128,7,6,36,36,108,111, -97,100,47,99,100,58,32,99,97,110,110,111,116,32,111,112,101,110,32,97,32, -100,105,114,101,99,116,111,114,121,58,32,126,115,201,247,22,21,28,248,22,167, -12,193,87,94,28,248,22,180,12,193,12,248,22,136,11,249,22,175,10,248,22, -173,6,250,22,128,7,6,65,65,108,111,97,100,47,99,100,58,32,100,105,114, -101,99,116,111,114,121,32,111,102,32,126,115,32,100,111,101,115,32,110,111,116, -32,101,120,105,115,116,32,40,99,117,114,114,101,110,116,32,100,105,114,101,99, -116,111,114,121,32,105,115,32,126,115,41,202,247,22,142,13,247,22,21,27,247, -22,142,13,250,22,37,89,162,34,34,41,9,223,4,248,22,142,13,193,89,162, -34,34,41,9,223,5,248,22,160,5,193,89,162,34,34,41,9,223,3,248,22, -142,13,193,248,22,160,5,196,80,159,34,41,35,83,158,34,16,2,32,0,89, -162,34,37,46,2,10,222,87,94,28,27,248,22,167,12,196,28,192,192,28,248, -22,144,6,196,27,248,22,189,12,197,28,192,192,248,22,190,12,197,11,12,250, -22,178,8,196,2,72,197,28,248,22,191,12,195,248,193,195,27,247,22,162,5, -248,194,28,193,249,22,128,13,198,195,196,80,159,34,42,35,83,158,34,16,2, -89,162,34,35,45,2,11,223,0,87,94,28,27,248,22,167,12,195,28,192,192, -28,248,22,144,6,195,27,248,22,189,12,196,28,192,192,248,22,190,12,196,11, -12,250,22,178,8,2,11,2,72,196,28,248,22,191,12,194,248,22,160,5,194, -27,247,22,162,5,248,22,160,5,28,193,249,22,128,13,197,195,195,80,159,34, -43,35,83,158,34,16,2,89,162,34,35,45,2,12,223,0,87,94,28,27,248, -22,167,12,195,28,192,192,28,248,22,144,6,195,27,248,22,189,12,196,28,192, -192,248,22,190,12,196,11,12,250,22,178,8,2,12,2,72,196,28,248,22,191, -12,194,248,22,146,13,194,27,247,22,162,5,248,22,146,13,28,193,249,22,128, -13,197,195,195,80,159,34,44,35,83,158,34,16,2,27,248,22,148,13,248,22, -155,7,27,27,247,22,163,7,28,249,22,78,194,21,96,64,117,110,105,120,64, -98,101,111,115,65,111,115,107,105,116,66,109,97,99,111,115,120,6,1,1,58, -28,249,22,78,194,21,94,2,70,65,109,97,99,111,115,6,1,1,59,12,250, -22,128,7,6,14,14,40,91,94,126,97,93,42,41,126,97,40,46,42,41,195, -195,89,162,8,36,36,47,2,13,223,0,87,95,28,28,248,22,132,7,194,10, -248,22,144,6,194,12,250,22,178,8,2,13,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,64, -195,249,22,4,22,167,12,196,11,12,250,22,178,8,2,13,6,13,13,108,105, -115,116,32,111,102,32,112,97,116,104,115,197,250,2,104,197,195,28,248,22,144, -6,197,248,22,155,7,197,196,80,159,34,45,35,83,158,34,16,2,83,158,37, -20,94,96,2,14,89,162,8,36,37,54,9,223,0,87,95,28,27,248,22,167, -12,195,28,192,192,28,248,22,144,6,195,27,248,22,189,12,196,28,192,192,248, -22,190,12,196,11,12,250,22,178,8,2,14,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,196,28, -28,194,28,27,248,22,167,12,196,28,192,192,28,248,22,144,6,196,27,248,22, -189,12,197,28,192,192,248,22,190,12,197,11,248,22,189,12,195,11,10,12,250, -22,178,8,2,14,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,197,28,28,248,22, -189,12,194,91,159,37,11,90,161,37,34,11,248,22,188,12,197,249,22,148,8, -194,2,74,11,27,248,22,161,7,6,4,4,80,65,84,72,27,28,193,27,249, -80,158,39,45,196,9,28,249,22,148,8,247,22,163,7,2,70,249,22,57,248, -22,176,12,5,1,46,194,192,9,28,248,22,63,193,11,27,248,22,128,13,248, -22,58,195,27,249,22,185,12,195,199,28,248,22,179,12,193,250,2,105,201,202, -195,251,2,106,201,202,203,248,22,59,199,27,248,22,128,13,195,28,248,22,179, -12,193,250,2,105,198,199,195,11,89,162,34,36,45,9,223,0,250,80,158,37, -46,196,197,11,89,162,34,35,44,9,223,0,250,80,158,37,46,196,11,11,80, -159,34,46,35,83,158,34,16,2,32,0,89,162,34,36,48,2,15,222,87,94, -28,27,248,22,167,12,195,28,192,192,28,248,22,144,6,195,27,248,22,189,12, -196,28,192,192,248,22,190,12,196,11,12,250,22,178,8,195,2,67,196,28,248, -22,189,12,194,12,248,22,136,11,249,22,145,10,248,22,173,6,250,22,128,7, -2,68,199,200,247,22,21,80,159,34,47,35,83,158,34,16,2,89,162,34,37, -50,2,16,223,0,87,94,87,94,28,27,248,22,167,12,196,28,192,192,28,248, -22,144,6,196,27,248,22,189,12,197,28,192,192,248,22,190,12,197,11,12,250, -22,178,8,196,2,67,197,28,248,22,189,12,195,12,248,22,136,11,249,22,145, -10,248,22,173,6,250,22,128,7,2,68,200,201,247,22,21,249,22,3,89,162, -34,35,49,9,224,2,3,87,94,28,27,248,22,167,12,196,28,192,192,28,248, -22,144,6,196,27,248,22,189,12,197,28,192,192,248,22,190,12,197,11,12,250, -22,178,8,195,2,67,197,28,248,22,189,12,195,12,248,22,136,11,249,22,145, -10,248,22,173,6,250,22,128,7,2,68,199,201,247,22,21,197,80,159,34,48, -35,83,158,34,16,2,32,0,89,162,34,37,49,2,17,222,27,247,22,143,13, -252,2,107,197,198,199,200,197,80,159,34,49,35,83,158,34,16,2,248,22,163, -7,69,115,111,45,115,117,102,102,105,120,80,159,34,50,35,83,158,34,16,2, -249,80,159,36,36,35,248,22,176,12,5,10,95,108,111,97,100,101,114,46,115, -115,80,158,36,50,80,159,34,51,35,83,158,34,16,2,249,22,170,11,27,89, -162,34,36,8,33,1,25,100,101,102,97,117,108,116,45,108,111,97,100,47,117, -115,101,45,99,111,109,112,105,108,101,100,223,3,87,94,28,27,248,22,167,12, -195,28,192,192,28,248,22,144,6,195,27,248,22,189,12,196,28,192,192,248,22, -190,12,196,11,12,250,22,178,8,2,23,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,196,91,159, -40,11,90,161,35,34,11,28,248,22,191,12,200,199,27,247,22,162,5,28,192, -249,22,128,13,202,194,200,90,161,37,35,11,248,22,188,12,193,90,161,35,38, -11,28,249,22,148,8,195,2,74,2,77,193,90,161,35,39,11,247,22,144,13, -27,89,162,34,35,48,62,122,111,225,7,5,3,250,22,185,12,196,198,249,80, -159,41,36,35,197,5,3,46,122,111,27,89,162,34,35,50,9,225,8,6,4, -252,22,185,12,198,200,2,69,247,22,164,7,249,80,159,43,36,35,199,80,158, -43,50,27,27,80,158,44,51,89,162,34,35,48,9,225,10,8,0,252,22,185, -12,198,200,2,69,247,22,164,7,197,27,249,22,5,89,162,34,35,46,9,223, -6,27,193,27,250,22,137,13,196,11,32,0,89,162,8,44,34,39,9,222,11, -28,192,249,22,57,195,194,11,203,27,27,28,195,27,249,22,5,89,162,34,35, -46,9,223,6,27,248,194,195,27,250,22,137,13,196,11,32,0,89,162,8,44, +110,117,108,41,5,0,68,114,101,108,97,116,105,118,101,65,99,108,111,111,112, +6,42,42,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,64,115,97,109,101,64,119,101,97,107,1,29,115,116,97,110,100,97, +114,100,45,109,111,100,117,108,101,45,110,97,109,101,45,114,101,115,111,108,118, +101,114,63,108,105,98,5,1,46,5,2,46,46,62,117,112,67,105,103,110,111, +114,101,100,66,35,37,114,53,114,115,68,109,122,115,99,104,101,109,101,68,35, +37,107,101,114,110,101,108,16,4,11,11,61,120,3,1,7,101,110,118,50,49, +48,54,95,8,193,11,16,0,97,10,35,11,94,159,2,62,9,11,159,2,55, +9,11,16,0,97,10,34,11,96,159,2,58,9,11,159,2,59,9,11,159,2, +60,9,11,159,2,61,9,11,16,94,2,44,2,1,2,2,2,1,2,19,2, +1,2,3,2,1,2,7,2,1,2,5,2,1,2,11,2,1,2,10,2,1, +2,15,2,1,2,24,2,1,2,9,2,1,2,35,2,1,2,6,2,1,2, +18,2,1,2,28,2,1,2,47,2,1,2,8,2,1,2,22,2,1,2,12, +2,1,2,38,2,1,2,25,2,1,2,13,2,1,2,14,2,1,2,26,2, +1,2,33,2,1,2,16,2,1,2,31,2,1,2,30,2,1,2,23,2,1, +2,27,2,1,2,32,2,1,2,29,2,1,2,39,2,1,2,36,2,1,2, +37,2,1,2,34,2,1,2,48,2,1,2,45,2,1,2,20,2,1,2,40, +2,1,2,4,2,1,2,46,2,1,2,41,2,1,2,42,2,1,2,17,2, +1,2,49,2,1,2,43,2,1,18,98,2,56,13,16,4,34,2,57,2,1, +11,8,92,8,91,8,90,8,89,16,8,11,11,61,95,64,97,114,103,115,64, +98,111,100,121,2,64,2,64,2,64,16,8,11,11,3,1,4,103,52,51,54, +3,1,4,103,52,51,55,3,1,4,103,52,51,56,2,63,2,63,2,63,99, +13,16,4,34,2,57,2,1,11,8,92,8,91,8,90,8,89,8,95,8,94, +18,158,2,56,8,96,18,158,2,56,8,96,18,158,2,56,8,96,105,13,16, +4,34,2,57,2,1,11,8,92,8,91,8,90,8,89,8,95,8,94,16,4, +11,11,3,1,4,103,52,52,51,3,1,7,101,110,118,50,49,50,57,16,4, +11,11,68,99,111,110,116,109,97,114,107,3,1,7,101,110,118,50,49,51,48, +16,4,11,11,3,1,4,103,52,52,53,3,1,7,101,110,118,50,49,52,49, +16,4,11,11,64,102,117,110,99,3,1,7,101,110,118,50,49,52,50,16,4, +11,11,3,1,4,103,52,52,55,3,1,7,101,110,118,50,49,53,51,16,4, +11,11,67,110,101,119,109,97,114,107,3,1,7,101,110,118,50,49,53,52,18, +158,96,10,2,65,93,94,2,50,11,96,2,65,93,94,2,51,95,66,108,97, +109,98,100,97,2,52,95,2,65,93,94,2,53,94,1,31,117,110,105,111,110, +101,100,45,109,101,109,116,114,97,99,101,45,116,114,97,99,107,105,110,103,45, +118,97,108,117,101,2,50,160,1,22,119,105,116,104,45,99,111,110,116,105,110, +117,97,116,105,111,110,45,109,97,114,107,1,30,109,101,109,111,114,121,45,116, +114,97,99,101,45,99,111,110,116,105,110,117,97,116,105,111,110,45,109,97,114, +107,2,53,2,54,95,64,115,101,116,33,2,50,94,1,30,110,101,119,45,109, +101,109,116,114,97,99,101,45,116,114,97,99,107,105,110,103,45,102,117,110,99, +116,105,111,110,2,51,2,51,8,100,0,8,35,114,120,35,34,94,44,34,0, +18,35,114,120,35,34,40,91,46,93,91,94,46,93,42,124,41,36,34,32,104, +89,162,8,64,34,42,69,114,101,112,108,45,108,111,111,112,222,250,22,13,32, +0,89,162,34,34,41,9,222,27,247,247,22,46,28,248,22,143,5,193,12,87, +94,83,159,44,32,0,89,162,35,35,42,9,222,249,22,3,247,22,45,194,248, +22,13,89,162,34,34,46,9,223,1,27,249,22,57,77,35,37,116,111,112,45, +105,110,116,101,114,97,99,116,105,111,110,195,248,247,22,171,8,28,248,22,149, +3,195,248,22,169,8,250,22,152,3,11,197,198,193,248,22,15,247,22,18,247, +22,18,32,0,89,162,8,37,34,39,9,222,247,2,104,32,105,89,162,8,64, +37,49,2,66,222,27,249,22,153,13,196,197,28,192,27,248,22,84,194,27,250, +2,105,198,199,248,22,93,198,28,249,22,139,7,195,2,74,249,22,71,197,194, +249,22,57,248,22,177,12,196,194,28,249,22,139,7,197,2,74,249,22,71,195, +9,249,22,57,248,22,177,12,198,9,32,106,89,162,8,100,37,53,70,102,111, +117,110,100,45,101,120,101,99,222,28,192,91,159,37,11,90,161,37,34,11,248, +22,189,12,198,27,28,197,27,248,22,130,13,200,28,249,22,151,8,194,201,11, +28,248,22,190,12,193,250,2,106,200,201,249,22,186,12,199,197,250,2,106,200, +201,195,11,28,192,192,27,28,248,22,168,12,195,27,249,22,186,12,197,200,28, +28,248,22,181,12,193,10,248,22,180,12,193,192,11,11,28,192,192,28,198,11, +27,248,22,130,13,201,28,249,22,151,8,194,202,11,28,248,22,190,12,193,250, +2,106,201,202,249,22,186,12,200,197,250,2,106,201,202,195,194,32,107,89,162, +8,100,38,53,2,66,222,28,248,22,63,196,11,27,248,22,129,13,248,22,58, +198,27,249,22,186,12,195,196,28,248,22,180,12,193,250,2,106,198,199,195,27, +248,22,59,199,28,248,22,63,193,11,27,248,22,129,13,248,22,58,195,27,249, +22,186,12,195,199,28,248,22,180,12,193,250,2,106,201,202,195,251,2,107,201, +202,203,248,22,59,199,32,108,89,162,8,64,39,55,2,76,222,28,248,22,63, +197,248,22,137,11,249,22,176,10,248,22,174,6,251,22,129,7,2,77,201,28, +248,22,63,204,202,250,22,1,22,186,12,205,206,200,247,22,21,27,249,22,186, +12,248,22,58,200,197,28,248,22,181,12,193,27,250,22,1,22,186,12,196,200, +28,248,22,181,12,193,192,252,2,108,199,200,201,202,248,22,59,204,252,2,108, +198,199,200,201,248,22,59,203,32,109,89,162,8,64,38,54,2,76,222,28,248, +22,63,196,248,22,137,11,249,22,176,10,248,22,174,6,251,22,129,7,2,77, +2,22,28,248,22,63,203,201,250,22,1,22,186,12,204,205,200,247,22,21,27, +249,22,186,12,248,22,58,199,196,28,248,22,181,12,193,27,250,22,1,22,186, +12,196,199,28,248,22,181,12,193,192,251,2,109,198,199,200,248,22,59,202,251, +2,109,197,198,199,248,22,59,201,0,17,35,114,120,35,34,40,46,43,63,41, +47,43,40,46,42,41,34,0,45,35,114,120,35,34,94,91,45,97,45,122,65, +45,90,48,45,57,95,46,32,93,43,40,47,43,91,45,97,45,122,65,45,90, +48,45,57,95,46,32,93,43,41,42,36,34,32,112,89,162,8,64,36,52,2, +66,222,27,249,22,153,13,2,110,196,28,192,27,249,22,186,12,196,27,248,22, +84,197,28,249,22,139,7,194,2,82,2,78,28,249,22,139,7,194,2,83,2, +84,248,22,177,12,193,27,248,22,93,195,27,249,22,153,13,2,110,195,28,192, +249,2,112,249,22,186,12,198,27,248,22,84,198,28,249,22,139,7,194,2,82, +2,78,28,249,22,139,7,194,2,83,2,84,248,22,177,12,193,248,22,93,195, +249,22,186,12,196,248,22,177,12,196,249,22,186,12,195,248,22,177,12,197,32, +113,89,162,8,64,38,54,2,76,222,28,248,22,63,196,248,22,137,11,249,22, +176,10,248,22,174,6,251,22,129,7,2,77,2,80,28,248,22,63,203,201,250, +22,1,22,186,12,204,205,200,247,22,21,27,249,22,186,12,248,22,58,199,196, +28,248,22,181,12,193,27,250,22,1,22,186,12,196,199,28,248,22,181,12,193, +192,251,2,113,198,199,200,248,22,59,202,251,2,113,197,198,199,248,22,59,201, +159,34,20,100,159,34,16,1,20,24,65,98,101,103,105,110,16,0,83,158,40, +20,97,114,66,35,37,109,105,115,99,2,1,10,10,10,46,80,158,34,34,20, +100,159,40,16,48,30,2,1,2,2,193,30,2,1,2,3,193,30,2,1,2, +4,193,30,2,1,2,5,193,30,2,1,2,6,193,30,2,1,2,7,193,30, +2,1,2,8,193,30,2,1,2,9,193,30,2,1,2,10,193,30,2,1,2, +11,193,30,2,1,2,12,193,30,2,1,2,13,193,30,2,1,2,14,193,30, +2,1,2,15,193,30,2,1,2,16,193,30,2,1,2,17,193,30,2,1,2, +18,193,30,2,1,2,19,193,30,2,1,2,20,193,30,2,21,1,20,112,97, +114,97,109,101,116,101,114,105,122,97,116,105,111,110,45,107,101,121,4,30,2, +21,1,23,101,120,116,101,110,100,45,112,97,114,97,109,101,116,101,114,105,122, +97,116,105,111,110,3,30,2,1,2,22,193,30,2,1,2,23,193,30,2,1, +2,24,193,30,2,1,2,25,193,30,2,1,2,26,193,30,2,1,2,27,193, +30,2,1,2,28,193,30,2,1,2,29,193,30,2,1,2,30,193,30,2,1, +2,31,193,30,2,1,2,32,193,30,2,1,2,33,193,30,2,1,2,34,193, +30,2,1,2,35,193,30,2,1,2,36,193,30,2,1,2,37,193,30,2,1, +2,38,193,30,2,1,2,39,193,30,2,1,2,40,193,30,2,1,2,41,193, +30,2,1,2,42,193,30,2,1,2,43,193,30,2,1,2,44,193,30,2,1, +2,45,193,30,2,1,2,46,193,30,2,1,2,47,193,30,2,1,2,48,193, +16,0,11,11,16,23,2,16,2,15,2,17,2,10,2,29,2,30,2,27,2, +28,2,31,2,32,2,25,2,24,2,26,2,3,2,19,2,5,2,18,2,39, +2,40,2,38,2,37,2,47,2,36,57,11,16,24,2,42,2,44,2,43,2, +22,2,20,2,14,2,34,2,41,2,45,2,11,2,12,2,9,2,23,2,33, +2,6,2,48,2,13,2,4,2,2,2,35,2,7,2,8,2,46,2,49,16, +24,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11, +11,11,11,11,16,24,2,42,2,44,2,43,2,22,2,20,2,14,2,34,2, +41,2,45,2,11,2,12,2,9,2,23,2,33,2,6,2,48,2,13,2,4, +2,2,2,35,2,7,2,8,2,46,2,49,57,58,93,16,5,93,2,49,89, +162,34,35,58,9,223,0,27,249,22,152,3,20,15,159,37,34,41,196,27,28, +248,80,158,37,34,194,249,80,158,38,35,248,80,158,39,36,196,27,248,80,158, +40,37,197,28,248,80,158,40,34,193,249,80,158,41,35,248,80,158,42,36,195, +27,248,80,158,43,37,196,28,248,80,158,43,38,193,248,80,158,43,39,193,11, +11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,86,196,27,249, +22,152,3,20,15,159,42,35,41,249,22,152,3,203,247,22,54,27,249,22,152, +3,20,15,159,43,36,41,249,22,152,3,204,247,22,54,27,249,22,152,3,20, +15,159,44,37,41,249,22,152,3,205,247,22,54,27,252,22,67,201,198,199,202, +200,254,80,158,50,40,20,15,159,50,38,41,21,97,2,50,2,51,2,52,2, +53,2,54,248,22,95,200,248,22,93,200,248,22,96,200,248,22,84,200,248,22, +58,200,250,22,178,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,196, +34,20,100,159,34,16,7,30,2,55,69,115,116,120,45,112,97,105,114,63,11, +30,2,55,67,99,111,110,115,47,35,102,1,30,2,55,67,115,116,120,45,99, +97,114,5,30,2,55,67,115,116,120,45,99,100,114,6,30,2,55,69,115,116, +120,45,108,105,115,116,63,8,30,2,55,69,115,116,120,45,62,108,105,115,116, +4,30,69,35,37,115,116,120,99,97,115,101,1,24,97,112,112,108,121,45,112, +97,116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101,0,16,5,33, +93,33,97,33,98,33,99,33,101,11,141,83,158,34,16,2,89,162,8,64,35, +49,2,66,223,0,28,248,22,63,194,9,27,248,22,58,195,27,28,248,22,128, +13,194,193,28,248,22,191,12,194,249,22,129,13,195,250,80,158,41,46,248,22, +142,13,2,67,11,10,250,80,158,39,46,248,22,142,13,2,67,196,10,28,192, +249,22,57,248,22,131,13,249,22,129,13,197,247,22,143,13,248,80,159,39,8, +53,35,248,22,59,199,248,80,159,37,8,53,35,248,22,59,197,80,159,34,8, +53,35,83,158,34,16,2,89,162,34,35,43,9,223,0,249,22,13,195,80,158, +36,8,29,80,159,34,8,52,35,83,158,34,16,2,89,162,34,35,52,67,103, +101,116,45,100,105,114,223,0,27,28,194,28,249,22,149,8,196,80,158,37,8, +30,80,158,35,8,31,27,248,22,158,7,248,22,50,197,28,249,22,155,13,2, +102,194,91,159,37,11,90,161,37,34,11,248,22,189,12,248,22,177,12,250,22, +142,7,200,35,248,22,136,7,201,87,95,83,160,36,11,80,158,39,8,30,198, +83,160,36,11,80,158,39,8,31,192,192,11,11,28,192,192,27,247,22,163,5, +28,192,192,247,22,143,13,80,159,34,8,51,35,83,158,34,16,2,89,162,34, +35,48,9,223,0,87,94,28,27,248,22,168,12,195,28,192,192,28,248,22,145, +6,195,27,248,22,190,12,196,28,192,192,248,22,191,12,196,11,12,250,22,179, +8,2,22,2,68,196,28,248,22,190,12,194,12,248,22,137,11,249,22,146,10, +248,22,174,6,250,22,129,7,2,69,2,22,200,247,22,21,80,159,34,8,50, +35,83,158,34,16,2,89,162,34,36,47,68,119,105,116,104,45,100,105,114,223, +0,20,14,159,80,158,34,53,250,80,158,37,54,249,22,25,11,80,158,39,53, +22,163,5,28,248,22,168,12,197,196,247,22,143,13,247,194,80,159,34,8,49, +35,83,158,34,16,2,89,162,8,36,37,43,66,103,101,116,45,115,111,223,0, +89,162,34,35,51,9,226,0,1,3,2,252,22,186,12,199,201,2,70,247,22, +165,7,28,198,249,80,159,44,36,35,199,80,158,44,50,197,80,159,34,8,48, +35,83,158,34,16,2,32,0,89,162,34,35,43,2,2,222,27,248,22,168,12, +194,28,192,192,28,248,22,145,6,194,27,248,22,190,12,195,28,192,192,248,22, +191,12,195,11,80,159,34,34,35,83,158,34,16,2,2,103,80,159,34,35,35, +83,158,34,16,2,89,162,34,36,53,2,4,223,0,87,95,28,28,248,22,169, +12,194,10,27,248,22,168,12,195,28,192,192,28,248,22,145,6,195,27,248,22, +190,12,196,28,192,192,248,22,191,12,196,11,12,252,22,179,8,2,4,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,34,198,199,28,28,248,22,145,6,195,10,248,22,133,7,195,12,252,22,179, +8,2,4,6,21,21,115,116,114,105,110,103,32,111,114,32,98,121,116,101,32, +115,116,114,105,110,103,35,198,199,91,159,37,11,90,161,37,34,11,248,22,189, +12,197,87,94,28,192,12,250,22,180,8,2,4,6,36,36,99,97,110,110,111, +116,32,97,100,100,32,97,32,115,117,102,102,105,120,32,116,111,32,97,32,114, +111,111,116,32,112,97,116,104,58,32,199,27,249,22,178,12,250,22,160,13,2, +103,248,22,174,12,200,28,248,22,145,6,204,249,22,157,7,205,8,63,203,28, +248,22,169,12,200,248,22,170,12,200,247,22,171,12,28,248,22,168,12,194,249, +22,186,12,195,194,192,80,159,34,36,35,83,158,34,16,2,249,22,147,6,7, +92,7,92,80,159,34,37,35,83,158,34,16,2,89,162,34,35,52,2,6,223, +0,87,94,28,28,248,22,169,12,194,10,27,248,22,168,12,195,28,192,192,28, +248,22,145,6,195,27,248,22,190,12,196,28,192,192,248,22,191,12,196,11,12, +250,22,179,8,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,196,28,28,248,22,169,12,194,249,22,149,8,248,22,170,12,196,2, +71,249,22,149,8,247,22,164,7,2,71,27,28,248,22,145,6,195,194,248,22, +154,7,248,22,173,12,196,28,249,22,155,13,0,21,35,114,120,34,94,91,92, +92,93,91,92,92,93,91,63,93,91,92,92,93,34,194,28,248,22,145,6,195, +248,22,176,12,195,194,27,248,22,184,6,194,249,22,177,12,248,22,157,7,250, +22,161,13,0,6,35,114,120,34,47,34,28,249,22,155,13,0,22,35,114,120, +34,91,47,92,92,93,91,46,32,93,43,91,47,92,92,93,42,36,34,200,198, +250,22,161,13,0,19,35,114,120,34,91,32,46,93,43,40,91,47,92,92,93, +42,41,36,34,201,6,2,2,92,49,80,158,42,37,2,71,28,248,22,145,6, +194,248,22,176,12,194,193,80,159,34,38,35,83,158,34,16,2,91,159,36,11, +90,161,35,35,11,32,0,89,162,8,64,35,43,65,99,104,101,99,107,222,28, +248,22,136,2,193,12,250,22,179,8,2,7,2,72,195,20,12,95,35,89,162, +8,36,36,58,2,7,223,0,87,95,28,248,22,136,2,194,12,250,22,179,8, +2,7,2,72,196,28,248,22,136,2,195,12,250,22,179,8,2,7,2,72,197, +27,248,22,183,2,196,27,249,22,180,2,197,195,27,249,22,179,2,198,196,28, +249,22,188,2,198,198,28,250,22,191,2,196,34,195,28,248,22,139,2,197,34, +0,3,48,46,48,28,248,22,131,3,194,248,22,180,2,27,248,22,180,2,195, +27,248,22,180,2,197,28,248,22,138,2,194,193,27,248,22,151,2,195,27,248, +22,151,2,195,28,249,22,189,2,195,194,248,22,177,2,194,249,22,179,2,195, +248,22,182,2,249,205,248,22,182,2,249,22,180,2,202,201,248,22,182,2,249, +22,180,2,203,201,28,248,22,138,2,194,193,27,248,22,151,2,195,27,248,22, +151,2,195,28,249,22,189,2,195,194,248,22,177,2,194,249,22,179,2,195,248, +22,182,2,249,202,248,22,182,2,249,22,180,2,202,201,248,22,182,2,249,22, +180,2,203,201,0,6,43,110,97,110,46,48,89,162,8,36,36,59,72,102,105, +110,100,45,98,101,116,119,101,101,110,223,0,28,248,22,138,2,194,193,27,248, +22,151,2,195,27,248,22,151,2,197,28,249,22,189,2,195,194,248,22,177,2, +194,249,22,179,2,195,248,22,182,2,27,248,22,182,2,249,22,180,2,203,200, +27,248,22,182,2,249,22,180,2,203,201,28,248,22,138,2,194,193,27,248,22, +151,2,195,27,248,22,151,2,195,28,249,22,189,2,195,194,248,22,177,2,194, +249,22,179,2,195,248,22,182,2,249,206,248,22,182,2,249,22,180,2,202,201, +248,22,182,2,249,22,180,2,203,201,80,159,34,39,35,83,158,34,16,2,32, +0,89,162,34,34,40,2,8,222,247,2,104,80,159,34,40,35,83,158,34,16, +2,32,0,89,162,34,35,50,2,9,222,87,94,28,27,248,22,168,12,194,28, +192,192,28,248,22,145,6,194,27,248,22,190,12,195,28,192,192,248,22,191,12, +195,11,12,250,22,179,8,2,9,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,195,91,159,37,11, +90,161,37,34,11,248,22,189,12,196,28,194,248,22,137,11,249,22,176,10,248, +22,174,6,249,22,129,7,6,36,36,108,111,97,100,47,99,100,58,32,99,97, +110,110,111,116,32,111,112,101,110,32,97,32,100,105,114,101,99,116,111,114,121, +58,32,126,115,201,247,22,21,28,248,22,168,12,193,87,94,28,248,22,181,12, +193,12,248,22,137,11,249,22,176,10,248,22,174,6,250,22,129,7,6,65,65, +108,111,97,100,47,99,100,58,32,100,105,114,101,99,116,111,114,121,32,111,102, +32,126,115,32,100,111,101,115,32,110,111,116,32,101,120,105,115,116,32,40,99, +117,114,114,101,110,116,32,100,105,114,101,99,116,111,114,121,32,105,115,32,126, +115,41,202,247,22,143,13,247,22,21,27,247,22,143,13,250,22,37,89,162,34, +34,41,9,223,4,248,22,143,13,193,89,162,34,34,41,9,223,5,248,22,161, +5,193,89,162,34,34,41,9,223,3,248,22,143,13,193,248,22,161,5,196,80, +159,34,41,35,83,158,34,16,2,32,0,89,162,34,37,46,2,10,222,87,94, +28,27,248,22,168,12,196,28,192,192,28,248,22,145,6,196,27,248,22,190,12, +197,28,192,192,248,22,191,12,197,11,12,250,22,179,8,196,2,73,197,28,248, +22,128,13,195,248,193,195,27,247,22,163,5,248,194,28,193,249,22,129,13,198, +195,196,80,159,34,42,35,83,158,34,16,2,89,162,34,35,45,2,11,223,0, +87,94,28,27,248,22,168,12,195,28,192,192,28,248,22,145,6,195,27,248,22, +190,12,196,28,192,192,248,22,191,12,196,11,12,250,22,179,8,2,11,2,73, +196,28,248,22,128,13,194,248,22,161,5,194,27,247,22,163,5,248,22,161,5, +28,193,249,22,129,13,197,195,195,80,159,34,43,35,83,158,34,16,2,89,162, +34,35,45,2,12,223,0,87,94,28,27,248,22,168,12,195,28,192,192,28,248, +22,145,6,195,27,248,22,190,12,196,28,192,192,248,22,191,12,196,11,12,250, +22,179,8,2,12,2,73,196,28,248,22,128,13,194,248,22,147,13,194,27,247, +22,163,5,248,22,147,13,28,193,249,22,129,13,197,195,195,80,159,34,44,35, +83,158,34,16,2,27,248,22,149,13,248,22,156,7,27,27,247,22,164,7,28, +249,22,78,194,21,96,64,117,110,105,120,64,98,101,111,115,65,111,115,107,105, +116,66,109,97,99,111,115,120,6,1,1,58,28,249,22,78,194,21,94,2,71, +65,109,97,99,111,115,6,1,1,59,12,250,22,129,7,6,14,14,40,91,94, +126,97,93,42,41,126,97,40,46,42,41,195,195,89,162,8,36,36,47,2,13, +223,0,87,95,28,28,248,22,133,7,194,10,248,22,145,6,194,12,250,22,179, +8,2,13,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,64,195,249,22,4,22,168,12,196,11, +12,250,22,179,8,2,13,6,13,13,108,105,115,116,32,111,102,32,112,97,116, +104,115,197,250,2,105,197,195,28,248,22,145,6,197,248,22,156,7,197,196,80, +159,34,45,35,83,158,34,16,2,83,158,37,20,94,96,2,14,89,162,8,36, +37,54,9,223,0,87,95,28,27,248,22,168,12,195,28,192,192,28,248,22,145, +6,195,27,248,22,190,12,196,28,192,192,248,22,191,12,196,11,12,250,22,179, +8,2,14,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,196,28,28,194,28,27,248,22,168,12,196, +28,192,192,28,248,22,145,6,196,27,248,22,190,12,197,28,192,192,248,22,191, +12,197,11,248,22,190,12,195,11,10,12,250,22,179,8,2,14,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,197,28,28,248,22,190,12,194,91,159,37,11,90,161, +37,34,11,248,22,189,12,197,249,22,149,8,194,2,75,11,27,248,22,162,7, +6,4,4,80,65,84,72,27,28,193,27,249,80,158,39,45,196,9,28,249,22, +149,8,247,22,164,7,2,71,249,22,57,248,22,177,12,5,1,46,194,192,9, +28,248,22,63,193,11,27,248,22,129,13,248,22,58,195,27,249,22,186,12,195, +199,28,248,22,180,12,193,250,2,106,201,202,195,251,2,107,201,202,203,248,22, +59,199,27,248,22,129,13,195,28,248,22,180,12,193,250,2,106,198,199,195,11, +89,162,34,36,45,9,223,0,250,80,158,37,46,196,197,11,89,162,34,35,44, +9,223,0,250,80,158,37,46,196,11,11,80,159,34,46,35,83,158,34,16,2, +32,0,89,162,34,36,48,2,15,222,87,94,28,27,248,22,168,12,195,28,192, +192,28,248,22,145,6,195,27,248,22,190,12,196,28,192,192,248,22,191,12,196, +11,12,250,22,179,8,195,2,68,196,28,248,22,190,12,194,12,248,22,137,11, +249,22,146,10,248,22,174,6,250,22,129,7,2,69,199,200,247,22,21,80,159, +34,47,35,83,158,34,16,2,89,162,34,37,50,2,16,223,0,87,94,87,94, +28,27,248,22,168,12,196,28,192,192,28,248,22,145,6,196,27,248,22,190,12, +197,28,192,192,248,22,191,12,197,11,12,250,22,179,8,196,2,68,197,28,248, +22,190,12,195,12,248,22,137,11,249,22,146,10,248,22,174,6,250,22,129,7, +2,69,200,201,247,22,21,249,22,3,89,162,34,35,49,9,224,2,3,87,94, +28,27,248,22,168,12,196,28,192,192,28,248,22,145,6,196,27,248,22,190,12, +197,28,192,192,248,22,191,12,197,11,12,250,22,179,8,195,2,68,197,28,248, +22,190,12,195,12,248,22,137,11,249,22,146,10,248,22,174,6,250,22,129,7, +2,69,199,201,247,22,21,197,80,159,34,48,35,83,158,34,16,2,32,0,89, +162,34,37,49,2,17,222,27,247,22,144,13,252,2,108,197,198,199,200,197,80, +159,34,49,35,83,158,34,16,2,248,22,164,7,69,115,111,45,115,117,102,102, +105,120,80,159,34,50,35,83,158,34,16,2,249,80,159,36,36,35,248,22,177, +12,5,10,95,108,111,97,100,101,114,46,115,115,80,158,36,50,80,159,34,51, +35,83,158,34,16,2,249,22,171,11,27,89,162,34,36,8,33,1,25,100,101, +102,97,117,108,116,45,108,111,97,100,47,117,115,101,45,99,111,109,112,105,108, +101,100,223,3,87,94,28,27,248,22,168,12,195,28,192,192,28,248,22,145,6, +195,27,248,22,190,12,196,28,192,192,248,22,191,12,196,11,12,250,22,179,8, +2,23,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,196,91,159,40,11,90,161,35,34,11,28,248, +22,128,13,200,199,27,247,22,163,5,28,192,249,22,129,13,202,194,200,90,161, +37,35,11,248,22,189,12,193,90,161,35,38,11,28,249,22,149,8,195,2,75, +2,78,193,90,161,35,39,11,247,22,145,13,27,89,162,34,35,48,62,122,111, +225,7,5,3,250,22,186,12,196,198,249,80,159,41,36,35,197,5,3,46,122, +111,27,89,162,34,35,50,9,225,8,6,4,252,22,186,12,198,200,2,70,247, +22,165,7,249,80,159,43,36,35,199,80,158,43,50,27,27,80,158,44,51,89, +162,34,35,48,9,225,10,8,0,252,22,186,12,198,200,2,70,247,22,165,7, +197,27,249,22,5,89,162,34,35,46,9,223,6,27,193,27,250,22,138,13,196, +11,32,0,89,162,8,44,34,39,9,222,11,28,192,249,22,57,195,194,11,203, +27,27,28,195,27,249,22,5,89,162,34,35,46,9,223,6,27,248,194,195,27, +250,22,138,13,196,11,32,0,89,162,8,44,34,39,9,222,11,28,192,249,22, +57,195,194,11,206,27,28,196,11,193,28,192,192,28,193,28,196,28,249,22,128, +3,248,22,59,196,248,22,59,199,193,11,11,11,11,28,192,27,248,22,147,13, +248,22,58,195,91,159,36,11,90,161,36,34,11,248,195,248,22,48,248,22,155, +7,248,22,173,12,249,80,159,55,36,35,23,17,5,0,28,192,87,94,28,23, +17,28,249,22,149,8,195,23,19,12,248,22,137,11,249,22,143,10,248,22,174, +6,251,22,129,7,6,81,81,108,111,97,100,45,101,120,116,101,110,115,105,111, +110,58,32,101,120,112,101,99,116,101,100,32,109,111,100,117,108,101,32,100,101, +99,108,97,114,97,116,105,111,110,32,102,111,114,32,96,126,97,39,44,32,102, +111,117,110,100,32,126,97,32,116,104,114,111,117,103,104,32,108,111,97,100,101, +114,58,32,126,101,23,25,28,201,249,22,129,7,6,27,27,109,111,100,117,108, +101,32,100,101,99,108,97,114,97,116,105,111,110,32,102,111,114,32,96,126,97, +39,203,6,4,4,110,111,110,101,248,22,58,204,247,22,21,12,192,11,11,28, +192,249,80,159,47,8,49,35,203,194,27,28,196,27,249,22,5,89,162,34,35, +46,9,223,7,27,248,194,195,27,250,22,138,13,196,11,32,0,89,162,8,44, 34,39,9,222,11,28,192,249,22,57,195,194,11,206,27,28,196,11,193,28,192, 192,28,193,28,196,28,249,22,128,3,248,22,59,196,248,22,59,199,193,11,11, -11,11,28,192,27,248,22,146,13,248,22,58,195,91,159,36,11,90,161,36,34, -11,248,195,248,22,48,248,22,154,7,248,22,172,12,249,80,159,55,36,35,23, -17,5,0,28,192,87,94,28,23,17,28,249,22,148,8,195,23,19,12,248,22, -136,11,249,22,142,10,248,22,173,6,251,22,128,7,6,81,81,108,111,97,100, -45,101,120,116,101,110,115,105,111,110,58,32,101,120,112,101,99,116,101,100,32, -109,111,100,117,108,101,32,100,101,99,108,97,114,97,116,105,111,110,32,102,111, -114,32,96,126,97,39,44,32,102,111,117,110,100,32,126,97,32,116,104,114,111, -117,103,104,32,108,111,97,100,101,114,58,32,126,101,23,25,28,201,249,22,128, -7,6,27,27,109,111,100,117,108,101,32,100,101,99,108,97,114,97,116,105,111, -110,32,102,111,114,32,96,126,97,39,203,6,4,4,110,111,110,101,248,22,58, -204,247,22,21,12,192,11,11,28,192,249,80,159,47,8,49,35,203,194,27,28, -196,27,249,22,5,89,162,34,35,46,9,223,7,27,248,194,195,27,250,22,137, -13,196,11,32,0,89,162,8,44,34,39,9,222,11,28,192,249,22,57,195,194, -11,206,27,28,196,11,193,28,192,192,28,193,28,196,28,249,22,128,3,248,22, -59,196,248,22,59,199,193,11,11,11,11,28,192,249,80,159,48,8,49,35,204, -89,162,34,34,44,9,224,16,2,249,247,22,147,13,248,22,58,195,195,27,28, -198,27,249,22,5,89,162,34,35,46,9,223,9,27,248,194,195,27,250,22,137, -13,196,11,32,0,89,162,8,44,34,39,9,222,11,28,192,249,22,57,195,194, -11,23,15,27,28,197,11,193,28,192,192,28,193,28,197,28,249,22,128,3,248, -22,59,196,248,22,59,200,193,11,11,11,11,28,192,249,80,159,49,8,49,35, -205,89,162,34,34,44,9,224,17,2,249,247,22,161,5,248,22,58,195,195,249, -80,159,49,8,49,35,205,89,162,34,34,43,9,224,17,9,249,247,22,161,5, -194,195,192,32,0,89,162,8,36,35,43,9,222,87,94,28,28,248,22,0,193, -249,22,40,194,36,11,12,250,22,178,8,2,20,6,19,19,112,114,111,99,101, -100,117,114,101,32,40,97,114,105,116,121,32,50,41,195,192,80,159,34,52,35, -83,158,34,16,2,89,162,8,37,36,49,2,22,223,0,87,94,87,94,87,94, -28,27,248,22,167,12,195,28,192,192,28,248,22,144,6,195,27,248,22,189,12, -196,28,192,192,248,22,190,12,196,11,12,250,22,178,8,2,22,2,67,196,28, -248,22,189,12,194,12,248,22,136,11,249,22,145,10,248,22,173,6,250,22,128, -7,2,68,2,22,200,247,22,21,249,22,3,80,159,36,8,50,35,196,27,247, -22,143,13,251,2,108,196,198,199,196,80,159,34,55,35,83,158,34,16,2,89, -162,34,35,43,2,23,223,0,249,247,80,158,36,52,195,11,80,159,34,56,35, -248,22,145,12,32,0,89,162,8,36,35,40,1,20,100,101,102,97,117,108,116, -45,114,101,97,100,101,114,45,103,117,97,114,100,222,192,83,158,34,16,2,2, -109,80,159,34,57,35,83,158,34,16,2,2,101,80,159,34,58,35,83,158,34, -16,2,2,110,80,159,34,59,35,83,158,34,16,2,248,22,116,2,78,80,159, -34,8,26,35,83,158,34,16,2,249,22,116,2,78,65,101,113,117,97,108,80, -159,34,8,27,35,83,158,34,16,2,247,22,54,80,159,34,8,28,35,83,158, -34,16,2,248,22,17,74,109,111,100,117,108,101,45,108,111,97,100,105,110,103, -80,159,34,8,29,35,83,158,34,16,2,11,80,158,34,8,30,83,158,34,16, -2,11,80,158,34,8,31,83,158,34,16,2,89,162,8,36,35,43,2,33,223, -0,91,159,36,10,90,161,35,34,10,11,90,161,35,35,10,83,158,37,20,94, -96,2,79,89,162,8,36,35,49,9,224,2,0,87,94,28,207,248,208,195,12, -27,27,250,22,122,80,158,40,8,26,248,22,170,13,247,22,161,11,11,28,192, -192,27,247,22,116,87,94,250,22,121,80,158,41,8,26,248,22,170,13,247,22, -161,11,195,192,250,22,121,195,198,66,97,116,116,97,99,104,89,162,34,37,47, -9,223,1,251,211,197,198,199,10,89,162,34,38,8,33,9,225,2,3,0,28, -28,248,22,56,196,249,22,148,8,248,22,58,198,66,112,108,97,110,101,116,11, -87,94,28,207,12,20,14,159,80,158,36,53,250,80,158,39,54,249,22,25,11, -80,158,41,53,22,161,11,196,90,161,35,34,10,249,22,178,3,21,95,2,80, -6,11,11,114,101,115,111,108,118,101,114,46,115,115,6,6,6,112,108,97,110, -101,116,1,27,112,108,97,110,101,116,45,109,111,100,117,108,101,45,110,97,109, -101,45,114,101,115,111,108,118,101,114,12,251,211,199,200,201,202,27,28,248,22, -144,6,197,27,248,80,159,39,8,51,35,199,27,250,22,122,80,158,42,8,27, -249,22,57,203,198,11,28,192,192,27,248,22,155,7,200,28,249,22,154,13,2, -110,194,27,249,22,152,13,2,109,195,28,192,249,2,111,249,22,185,12,199,27, -248,22,84,198,28,249,22,138,7,194,2,81,2,77,28,249,22,138,7,194,2, -82,2,83,248,22,176,12,193,248,22,93,195,249,22,185,12,197,248,22,176,12, -196,248,22,65,249,22,167,6,6,72,72,32,40,114,101,108,97,116,105,118,101, -32,115,116,114,105,110,103,32,102,111,114,109,32,109,117,115,116,32,99,111,110, -116,97,105,110,32,111,110,108,121,32,97,45,122,44,32,65,45,90,44,32,48, -45,57,44,32,45,44,32,95,44,32,46,44,32,47,44,32,97,110,100,32,6, -37,37,115,112,97,99,101,44,32,119,105,116,104,32,110,111,32,108,101,97,100, -105,110,103,32,111,114,32,116,114,97,105,108,105,110,103,32,47,41,28,248,22, -167,12,197,28,248,22,190,12,197,196,248,22,65,6,25,25,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, -28,248,22,56,197,248,22,146,8,248,22,64,198,10,11,28,249,22,148,8,248, -22,58,199,2,80,27,250,22,122,80,158,41,8,27,249,22,57,202,247,22,143, -13,11,28,192,192,27,27,248,22,70,200,28,249,22,188,2,194,36,248,22,65, -6,5,5,109,122,108,105,98,28,249,22,190,2,194,36,248,22,86,200,11,28, -192,28,249,22,4,32,0,89,162,34,35,41,9,222,28,248,22,144,6,193,248, -22,189,12,193,11,194,28,248,22,144,6,248,22,84,200,28,248,22,189,12,248, -22,84,200,27,27,248,22,58,195,27,248,22,59,196,27,247,22,143,13,251,2, -112,196,198,197,196,249,22,185,12,194,248,22,84,202,11,11,11,11,28,249,22, -148,8,248,22,58,199,64,102,105,108,101,28,249,22,188,2,248,22,70,199,36, -27,248,22,84,198,28,248,22,144,6,193,28,27,248,22,167,12,194,28,192,192, -28,248,22,144,6,194,27,248,22,189,12,195,28,192,192,248,22,190,12,195,11, -249,22,128,13,194,248,80,159,41,8,51,35,201,11,11,11,11,87,94,28,28, -248,22,167,12,193,10,248,22,166,7,193,12,28,198,250,22,177,8,67,114,101, -113,117,105,114,101,249,22,128,7,6,17,17,98,97,100,32,109,111,100,117,108, -101,32,112,97,116,104,126,97,28,197,248,22,58,198,6,0,0,201,250,22,178, -8,2,79,249,22,128,7,6,13,13,109,111,100,117,108,101,32,112,97,116,104, -126,97,28,197,248,22,58,198,6,0,0,199,27,28,248,22,166,7,194,249,22, -171,7,195,34,248,22,130,13,248,22,131,13,195,27,28,248,22,166,7,195,249, -22,171,7,196,35,248,80,159,40,38,35,194,91,159,37,11,90,161,37,34,11, -28,248,22,166,7,198,250,22,7,2,84,249,22,171,7,202,36,2,84,248,22, -188,12,197,27,28,248,22,166,7,199,249,22,171,7,200,37,249,80,159,45,36, -35,196,5,0,27,28,248,22,166,7,200,249,22,171,7,201,38,249,22,128,7, -6,3,3,44,126,97,248,22,154,7,248,22,172,12,248,80,159,49,38,35,199, -27,28,248,22,166,7,201,249,22,171,7,202,39,248,22,48,249,22,167,6,196, -248,22,154,7,248,22,172,12,199,27,28,248,22,166,7,202,249,22,171,7,203, -40,27,249,22,152,13,2,102,248,22,172,12,201,28,192,248,22,58,193,10,27, -27,250,22,122,80,158,51,8,26,248,22,170,13,247,22,161,11,11,28,192,192, -27,247,22,116,87,94,250,22,121,80,158,52,8,26,248,22,170,13,247,22,161, -11,195,192,87,95,28,23,17,27,250,22,122,196,198,11,87,94,28,192,28,28, -248,22,47,193,10,249,22,150,8,196,194,12,252,22,175,8,2,79,6,71,71, -109,111,100,117,108,101,32,112,114,101,118,105,111,117,115,108,121,32,108,111,97, -100,101,100,32,119,105,116,104,32,115,117,102,102,105,120,32,126,115,44,32,99, -97,110,110,111,116,32,108,111,97,100,32,119,105,116,104,32,115,117,102,102,105, -120,32,126,115,58,32,126,101,28,249,22,148,8,10,199,6,0,0,197,28,249, -22,148,8,10,201,6,0,0,199,23,15,12,28,192,12,87,94,27,27,28,248, -22,16,80,158,51,8,29,80,158,50,8,29,247,22,18,250,22,23,248,22,21, -196,80,158,53,8,28,195,27,247,22,161,11,249,22,3,89,162,34,35,53,9, -226,13,14,2,3,28,249,22,150,8,248,22,59,199,197,28,249,22,148,8,248, -22,58,199,195,251,22,175,8,2,79,6,26,26,99,121,99,108,101,32,105,110, -32,108,111,97,100,105,110,103,32,97,116,32,126,101,58,32,126,101,198,249,22, -2,22,59,248,22,73,249,22,57,205,201,12,12,195,27,248,22,48,198,87,94, -248,28,248,22,16,80,158,51,8,29,32,0,89,162,34,35,40,9,222,247,192, -80,159,50,8,52,35,89,162,34,34,49,9,227,16,11,12,7,1,20,14,159, -80,158,38,8,28,249,22,57,247,22,161,11,197,20,14,159,80,158,38,53,250, -80,158,41,54,249,22,25,11,80,158,43,53,22,177,3,195,249,247,80,158,40, -52,196,248,22,48,248,22,154,7,248,22,172,12,198,250,22,121,197,199,198,12, -28,28,248,22,166,7,203,11,27,248,22,144,6,23,16,28,192,192,28,248,22, -56,23,16,249,22,148,8,248,22,58,23,18,2,80,11,250,22,121,80,158,50, -8,27,28,248,22,144,6,23,18,249,22,57,23,19,248,80,159,53,8,51,35, -23,21,249,22,57,23,19,247,22,143,13,254,22,168,7,23,19,23,18,23,16, -206,205,204,203,12,194,208,80,159,34,8,32,35,83,158,34,16,2,83,158,37, -20,94,95,2,34,89,162,34,34,41,9,223,0,248,80,158,35,8,33,9,89, -162,34,35,52,9,223,0,27,247,22,145,13,249,80,158,37,45,28,194,27,248, -22,161,7,6,11,11,80,76,84,67,79,76,76,69,67,84,83,28,192,192,6, -0,0,6,0,0,27,28,195,250,22,185,12,248,22,141,13,69,97,100,100,111, -110,45,100,105,114,247,22,159,7,6,8,8,99,111,108,108,101,99,116,115,11, -27,248,80,159,40,8,53,35,249,22,71,201,248,22,65,248,22,141,13,72,99, -111,108,108,101,99,116,115,45,100,105,114,28,193,249,22,57,195,194,192,80,159, -34,8,33,35,83,158,34,16,2,32,0,89,162,8,36,35,42,2,35,222,27, -248,22,139,4,194,28,192,192,248,22,140,4,194,80,159,34,8,34,35,83,158, -34,16,6,26,9,22,168,9,63,101,118,116,11,35,34,11,248,22,65,249,22, -57,22,164,9,34,247,22,128,10,11,21,93,34,80,159,34,8,35,35,80,159, -34,8,36,35,80,159,34,8,37,35,80,159,34,8,38,35,80,159,34,8,39, -35,83,158,34,16,2,89,162,34,35,44,2,41,223,0,87,94,28,28,248,22, -0,194,249,22,40,195,34,11,12,250,22,178,8,2,41,6,19,19,112,114,111, -99,101,100,117,114,101,32,40,97,114,105,116,121,32,48,41,196,248,80,158,35, -8,36,89,162,34,35,41,9,223,2,247,192,80,159,34,8,40,35,83,158,34, -16,2,32,0,89,162,34,35,43,2,42,222,87,94,28,248,22,139,12,193,12, -250,22,178,8,2,42,6,7,7,99,104,97,110,110,101,108,195,248,22,188,11, -193,80,159,34,8,41,35,83,158,34,16,2,32,0,89,162,34,35,43,2,43, -222,87,94,28,248,22,139,12,193,12,250,22,178,8,2,43,6,7,7,99,104, -97,110,110,101,108,195,249,22,189,11,34,194,80,159,34,8,42,35,83,158,34, -16,2,32,0,89,162,34,36,44,2,44,222,87,94,28,248,22,139,12,193,12, -250,22,178,8,2,44,6,7,7,99,104,97,110,110,101,108,195,28,248,22,188, -11,249,22,138,12,195,196,12,11,80,159,34,8,43,35,83,158,34,16,2,32, -0,89,162,34,34,39,2,45,222,247,22,161,11,80,159,34,8,44,35,83,158, -34,16,2,89,162,34,35,44,2,46,223,0,87,94,28,249,22,188,2,195,39, -12,250,22,178,8,2,46,6,1,1,53,196,248,80,158,35,8,46,11,80,159, -34,8,45,35,83,158,34,16,2,89,162,34,35,44,2,48,223,0,87,94,28, -249,22,188,2,195,39,12,250,22,178,8,2,48,6,1,1,53,196,248,80,158, -35,8,46,10,80,159,34,8,47,35,83,158,34,16,2,89,162,8,36,35,48, -2,47,223,0,27,248,22,139,11,65,101,109,112,116,121,27,247,22,139,11,87, -94,20,14,159,80,158,36,53,250,80,158,39,54,249,22,25,11,80,158,41,53, -22,161,11,196,87,96,249,22,182,3,194,2,85,248,22,180,3,2,85,248,22, -181,3,21,95,64,111,110,108,121,2,86,72,115,121,110,116,97,120,45,114,117, -108,101,115,28,195,12,249,22,3,32,0,89,162,34,35,44,9,222,249,22,167, -13,194,249,22,178,3,2,86,196,21,15,139,3,63,99,97,114,63,99,100,114, -64,99,97,97,114,64,99,97,100,114,64,99,100,97,114,64,99,100,100,114,65, -99,97,97,97,114,65,99,97,97,100,114,65,99,97,100,97,114,65,99,97,100, -100,114,65,99,100,97,97,114,65,99,100,97,100,114,65,99,100,100,97,114,65, -99,100,100,100,114,66,99,97,97,97,97,114,66,99,97,97,97,100,114,66,99, -97,97,100,97,114,66,99,97,97,100,100,114,66,99,97,100,97,97,114,66,99, -97,100,97,100,114,66,99,97,100,100,97,114,66,99,97,100,100,100,114,66,99, -100,97,97,97,114,66,99,100,97,97,100,114,66,99,100,97,100,97,114,66,99, -100,97,100,100,114,66,99,100,100,97,97,114,66,99,100,100,97,100,114,66,99, -100,100,100,97,114,66,99,100,100,100,100,114,63,109,97,112,61,61,61,60,61, -62,62,60,61,62,62,61,63,109,97,120,63,109,105,110,61,43,61,45,61,42, -61,47,63,97,98,115,63,103,99,100,63,108,99,109,63,101,120,112,63,108,111, -103,63,115,105,110,63,99,111,115,63,116,97,110,63,110,111,116,63,101,113,63, -1,30,99,97,108,108,45,119,105,116,104,45,99,117,114,114,101,110,116,45,99, -111,110,116,105,110,117,97,116,105,111,110,71,109,97,107,101,45,115,116,114,105, -110,103,74,115,121,109,98,111,108,45,62,115,116,114,105,110,103,74,115,116,114, -105,110,103,45,62,115,121,109,98,111,108,76,109,97,107,101,45,114,101,99,116, -97,110,103,117,108,97,114,74,101,120,97,99,116,45,62,105,110,101,120,97,99, -116,74,105,110,101,120,97,99,116,45,62,101,120,97,99,116,74,110,117,109,98, -101,114,45,62,115,116,114,105,110,103,74,115,116,114,105,110,103,45,62,110,117, -109,98,101,114,2,7,72,111,117,116,112,117,116,45,112,111,114,116,63,78,99, -117,114,114,101,110,116,45,105,110,112,117,116,45,112,111,114,116,79,99,117,114, -114,101,110,116,45,111,117,116,112,117,116,45,112,111,114,116,78,99,117,114,114, -101,110,116,45,101,114,114,111,114,45,112,111,114,116,75,111,112,101,110,45,105, -110,112,117,116,45,102,105,108,101,76,111,112,101,110,45,111,117,116,112,117,116, -45,102,105,108,101,76,99,108,111,115,101,45,105,110,112,117,116,45,112,111,114, -116,77,99,108,111,115,101,45,111,117,116,112,117,116,45,112,111,114,116,79,119, -105,116,104,45,111,117,116,112,117,116,45,116,111,45,102,105,108,101,73,116,114, -97,110,115,99,114,105,112,116,45,111,110,74,116,114,97,110,115,99,114,105,112, -116,45,111,102,102,72,102,108,117,115,104,45,111,117,116,112,117,116,73,115,116, -114,105,110,103,45,108,101,110,103,116,104,72,115,116,114,105,110,103,45,99,105, -60,61,63,72,115,116,114,105,110,103,45,99,105,62,61,63,73,115,116,114,105, -110,103,45,97,112,112,101,110,100,72,115,116,114,105,110,103,45,62,108,105,115, -116,72,108,105,115,116,45,62,115,116,114,105,110,103,72,115,116,114,105,110,103, -45,102,105,108,108,33,73,118,101,99,116,111,114,45,108,101,110,103,116,104,72, -118,101,99,116,111,114,45,62,108,105,115,116,72,108,105,115,116,45,62,118,101, -99,116,111,114,72,118,101,99,116,111,114,45,102,105,108,108,33,76,99,104,97, -114,45,97,108,112,104,97,98,101,116,105,99,63,73,99,104,97,114,45,110,117, -109,101,114,105,99,63,76,99,104,97,114,45,119,104,105,116,101,115,112,97,99, -101,63,76,99,104,97,114,45,117,112,112,101,114,45,99,97,115,101,63,76,99, -104,97,114,45,108,111,119,101,114,45,99,97,115,101,63,73,99,104,97,114,45, -62,105,110,116,101,103,101,114,73,105,110,116,101,103,101,114,45,62,99,104,97, -114,73,99,104,97,114,45,100,111,119,110,99,97,115,101,1,21,99,97,108,108, -45,119,105,116,104,45,111,117,116,112,117,116,45,102,105,108,101,1,20,99,97, -108,108,45,119,105,116,104,45,105,110,112,117,116,45,102,105,108,101,1,20,119, -105,116,104,45,105,110,112,117,116,45,102,114,111,109,45,102,105,108,101,65,97, -112,112,108,121,68,102,111,114,45,101,97,99,104,67,115,121,109,98,111,108,63, -65,112,97,105,114,63,64,99,111,110,115,68,115,101,116,45,99,97,114,33,68, -115,101,116,45,99,100,114,33,65,110,117,108,108,63,65,108,105,115,116,63,64, -108,105,115,116,66,108,101,110,103,116,104,66,97,112,112,101,110,100,67,114,101, -118,101,114,115,101,69,108,105,115,116,45,116,97,105,108,68,108,105,115,116,45, -114,101,102,64,109,101,109,113,64,109,101,109,118,66,109,101,109,98,101,114,64, -97,115,115,113,64,97,115,115,118,65,97,115,115,111,99,70,112,114,111,99,101, -100,117,114,101,63,67,110,117,109,98,101,114,63,68,99,111,109,112,108,101,120, -63,65,114,101,97,108,63,69,114,97,116,105,111,110,97,108,63,68,105,110,116, -101,103,101,114,63,66,101,120,97,99,116,63,68,105,110,101,120,97,99,116,63, -65,122,101,114,111,63,69,112,111,115,105,116,105,118,101,63,69,110,101,103,97, -116,105,118,101,63,64,111,100,100,63,65,101,118,101,110,63,68,113,117,111,116, -105,101,110,116,69,114,101,109,97,105,110,100,101,114,66,109,111,100,117,108,111, -65,102,108,111,111,114,67,99,101,105,108,105,110,103,68,116,114,117,110,99,97, -116,101,65,114,111,117,110,100,69,110,117,109,101,114,97,116,111,114,71,100,101, -110,111,109,105,110,97,116,111,114,64,97,115,105,110,64,97,99,111,115,64,97, -116,97,110,64,115,113,114,116,64,101,120,112,116,70,109,97,107,101,45,112,111, -108,97,114,69,114,101,97,108,45,112,97,114,116,69,105,109,97,103,45,112,97, -114,116,65,97,110,103,108,101,69,109,97,103,110,105,116,117,100,101,71,105,110, -112,117,116,45,112,111,114,116,63,64,114,101,97,100,69,114,101,97,100,45,99, -104,97,114,69,112,101,101,107,45,99,104,97,114,71,101,111,102,45,111,98,106, -101,99,116,63,71,99,104,97,114,45,114,101,97,100,121,63,65,119,114,105,116, -101,67,100,105,115,112,108,97,121,67,110,101,119,108,105,110,101,70,119,114,105, -116,101,45,99,104,97,114,64,108,111,97,100,67,115,116,114,105,110,103,63,66, -115,116,114,105,110,103,70,115,116,114,105,110,103,45,114,101,102,71,115,116,114, -105,110,103,45,115,101,116,33,68,115,116,114,105,110,103,61,63,69,115,117,98, -115,116,114,105,110,103,71,115,116,114,105,110,103,45,99,111,112,121,71,115,116, -114,105,110,103,45,99,105,61,63,68,115,116,114,105,110,103,60,63,68,115,116, -114,105,110,103,62,63,69,115,116,114,105,110,103,60,61,63,69,115,116,114,105, -110,103,62,61,63,71,115,116,114,105,110,103,45,99,105,60,63,71,115,116,114, -105,110,103,45,99,105,62,63,67,118,101,99,116,111,114,63,71,109,97,107,101, -45,118,101,99,116,111,114,66,118,101,99,116,111,114,70,118,101,99,116,111,114, -45,114,101,102,71,118,101,99,116,111,114,45,115,101,116,33,65,99,104,97,114, -63,66,99,104,97,114,61,63,66,99,104,97,114,60,63,66,99,104,97,114,62, -63,67,99,104,97,114,60,61,63,67,99,104,97,114,62,61,63,69,99,104,97, -114,45,99,105,61,63,69,99,104,97,114,45,99,105,60,63,69,99,104,97,114, -45,99,105,62,63,70,99,104,97,114,45,99,105,60,61,63,70,99,104,97,114, -45,99,105,62,61,63,71,99,104,97,114,45,117,112,99,97,115,101,68,98,111, -111,108,101,97,110,63,64,101,113,118,63,66,101,113,117,97,108,63,65,102,111, -114,99,101,76,99,97,108,108,45,119,105,116,104,45,118,97,108,117,101,115,66, -118,97,108,117,101,115,64,101,118,97,108,2,35,2,46,2,48,2,45,72,100, -121,110,97,109,105,99,45,119,105,110,100,9,193,80,159,34,8,46,35,97,2, -87,2,60,2,59,2,58,2,57,95,2,87,2,55,2,61,0}; - EVAL_ONE_SIZED_STR((char *)expr, 12637); +11,11,28,192,249,80,159,48,8,49,35,204,89,162,34,34,44,9,224,16,2, +249,247,22,148,13,248,22,58,195,195,27,28,198,27,249,22,5,89,162,34,35, +46,9,223,9,27,248,194,195,27,250,22,138,13,196,11,32,0,89,162,8,44, +34,39,9,222,11,28,192,249,22,57,195,194,11,23,15,27,28,197,11,193,28, +192,192,28,193,28,197,28,249,22,128,3,248,22,59,196,248,22,59,200,193,11, +11,11,11,28,192,249,80,159,49,8,49,35,205,89,162,34,34,44,9,224,17, +2,249,247,22,162,5,248,22,58,195,195,249,80,159,49,8,49,35,205,89,162, +34,34,43,9,224,17,9,249,247,22,162,5,194,195,192,32,0,89,162,8,36, +35,43,9,222,87,94,28,28,248,22,0,193,249,22,40,194,36,11,12,250,22, +179,8,2,20,6,19,19,112,114,111,99,101,100,117,114,101,32,40,97,114,105, +116,121,32,50,41,195,192,80,159,34,52,35,83,158,34,16,2,89,162,8,37, +36,49,2,22,223,0,87,94,87,94,87,94,28,27,248,22,168,12,195,28,192, +192,28,248,22,145,6,195,27,248,22,190,12,196,28,192,192,248,22,191,12,196, +11,12,250,22,179,8,2,22,2,68,196,28,248,22,190,12,194,12,248,22,137, +11,249,22,146,10,248,22,174,6,250,22,129,7,2,69,2,22,200,247,22,21, +249,22,3,80,159,36,8,50,35,196,27,247,22,144,13,251,2,109,196,198,199, +196,80,159,34,55,35,83,158,34,16,2,89,162,34,35,43,2,23,223,0,249, +247,80,158,36,52,195,11,80,159,34,56,35,248,22,146,12,32,0,89,162,8, +36,35,40,1,20,100,101,102,97,117,108,116,45,114,101,97,100,101,114,45,103, +117,97,114,100,222,192,83,158,34,16,2,2,110,80,159,34,57,35,83,158,34, +16,2,2,102,80,159,34,58,35,83,158,34,16,2,2,111,80,159,34,59,35, +83,158,34,16,2,248,22,116,2,79,80,159,34,8,26,35,83,158,34,16,2, +249,22,116,2,79,65,101,113,117,97,108,80,159,34,8,27,35,83,158,34,16, +2,247,22,54,80,159,34,8,28,35,83,158,34,16,2,248,22,17,74,109,111, +100,117,108,101,45,108,111,97,100,105,110,103,80,159,34,8,29,35,83,158,34, +16,2,11,80,158,34,8,30,83,158,34,16,2,11,80,158,34,8,31,83,158, +34,16,2,89,162,8,36,35,43,2,33,223,0,91,159,36,10,90,161,35,34, +10,11,90,161,35,35,10,83,158,37,20,94,96,2,80,89,162,8,36,35,49, +9,224,2,0,87,94,28,207,248,208,195,12,27,27,250,22,122,80,158,40,8, +26,248,22,171,13,247,22,162,11,11,28,192,192,27,247,22,116,87,94,250,22, +121,80,158,41,8,26,248,22,171,13,247,22,162,11,195,192,250,22,121,195,198, +66,97,116,116,97,99,104,89,162,34,37,47,9,223,1,251,211,197,198,199,10, +89,162,34,38,8,33,9,225,2,3,0,28,28,248,22,56,196,249,22,149,8, +248,22,58,198,66,112,108,97,110,101,116,11,87,94,28,207,12,20,14,159,80, +158,36,53,250,80,158,39,54,249,22,25,11,80,158,41,53,22,162,11,196,90, +161,35,34,10,249,22,178,3,21,95,2,81,6,11,11,114,101,115,111,108,118, +101,114,46,115,115,6,6,6,112,108,97,110,101,116,1,27,112,108,97,110,101, +116,45,109,111,100,117,108,101,45,110,97,109,101,45,114,101,115,111,108,118,101, +114,12,251,211,199,200,201,202,27,28,248,22,145,6,197,27,248,80,159,39,8, +51,35,199,27,250,22,122,80,158,42,8,27,249,22,57,203,198,11,28,192,192, +27,248,22,156,7,200,28,249,22,155,13,2,111,194,27,249,22,153,13,2,110, +195,28,192,249,2,112,249,22,186,12,199,27,248,22,84,198,28,249,22,139,7, +194,2,82,2,78,28,249,22,139,7,194,2,83,2,84,248,22,177,12,193,248, +22,93,195,249,22,186,12,197,248,22,177,12,196,248,22,65,249,22,168,6,6, +72,72,32,40,114,101,108,97,116,105,118,101,32,115,116,114,105,110,103,32,102, +111,114,109,32,109,117,115,116,32,99,111,110,116,97,105,110,32,111,110,108,121, +32,97,45,122,44,32,65,45,90,44,32,48,45,57,44,32,45,44,32,95,44, +32,46,44,32,47,44,32,97,110,100,32,6,37,37,115,112,97,99,101,44,32, +119,105,116,104,32,110,111,32,108,101,97,100,105,110,103,32,111,114,32,116,114, +97,105,108,105,110,103,32,47,41,28,248,22,168,12,197,28,248,22,191,12,197, +196,248,22,65,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,28,248,22,56,197,248,22,147, +8,248,22,64,198,10,11,28,249,22,149,8,248,22,58,199,2,81,27,250,22, +122,80,158,41,8,27,249,22,57,202,247,22,144,13,11,28,192,192,27,27,248, +22,70,200,28,249,22,188,2,194,36,248,22,65,6,5,5,109,122,108,105,98, +28,249,22,190,2,194,36,248,22,86,200,11,28,192,28,249,22,4,32,0,89, +162,34,35,41,9,222,28,248,22,145,6,193,248,22,190,12,193,11,194,28,248, +22,145,6,248,22,84,200,28,248,22,190,12,248,22,84,200,27,27,248,22,58, +195,27,248,22,59,196,27,247,22,144,13,251,2,113,196,198,197,196,249,22,186, +12,194,248,22,84,202,11,11,11,11,28,249,22,149,8,248,22,58,199,64,102, +105,108,101,28,249,22,188,2,248,22,70,199,36,27,248,22,84,198,28,248,22, +145,6,193,28,27,248,22,168,12,194,28,192,192,28,248,22,145,6,194,27,248, +22,190,12,195,28,192,192,248,22,191,12,195,11,249,22,129,13,194,248,80,159, +41,8,51,35,201,11,11,11,11,87,94,28,28,248,22,168,12,193,10,248,22, +167,7,193,12,28,198,250,22,178,8,67,114,101,113,117,105,114,101,249,22,129, +7,6,17,17,98,97,100,32,109,111,100,117,108,101,32,112,97,116,104,126,97, +28,197,248,22,58,198,6,0,0,201,250,22,179,8,2,80,249,22,129,7,6, +13,13,109,111,100,117,108,101,32,112,97,116,104,126,97,28,197,248,22,58,198, +6,0,0,199,27,28,248,22,167,7,194,249,22,172,7,195,34,248,22,131,13, +248,22,132,13,195,27,28,248,22,167,7,195,249,22,172,7,196,35,248,80,159, +40,38,35,194,91,159,37,11,90,161,37,34,11,28,248,22,167,7,198,250,22, +7,2,85,249,22,172,7,202,36,2,85,248,22,189,12,197,27,28,248,22,167, +7,199,249,22,172,7,200,37,249,80,159,45,36,35,196,5,0,27,28,248,22, +167,7,200,249,22,172,7,201,38,249,22,129,7,6,3,3,44,126,97,248,22, +155,7,248,22,173,12,248,80,159,49,38,35,199,27,28,248,22,167,7,201,249, +22,172,7,202,39,248,22,48,249,22,168,6,196,248,22,155,7,248,22,173,12, +199,27,28,248,22,167,7,202,249,22,172,7,203,40,27,249,22,153,13,2,103, +248,22,173,12,201,28,192,248,22,58,193,10,27,27,250,22,122,80,158,51,8, +26,248,22,171,13,247,22,162,11,11,28,192,192,27,247,22,116,87,94,250,22, +121,80,158,52,8,26,248,22,171,13,247,22,162,11,195,192,87,95,28,23,17, +27,250,22,122,196,198,11,87,94,28,192,28,28,248,22,47,193,10,249,22,151, +8,196,194,12,252,22,176,8,2,80,6,71,71,109,111,100,117,108,101,32,112, +114,101,118,105,111,117,115,108,121,32,108,111,97,100,101,100,32,119,105,116,104, +32,115,117,102,102,105,120,32,126,115,44,32,99,97,110,110,111,116,32,108,111, +97,100,32,119,105,116,104,32,115,117,102,102,105,120,32,126,115,58,32,126,101, +28,249,22,149,8,10,199,6,0,0,197,28,249,22,149,8,10,201,6,0,0, +199,23,15,12,28,192,12,87,94,27,27,28,248,22,16,80,158,51,8,29,80, +158,50,8,29,247,22,18,250,22,23,248,22,21,196,80,158,53,8,28,195,27, +247,22,162,11,249,22,3,89,162,34,35,53,9,226,13,14,2,3,28,249,22, +151,8,248,22,59,199,197,28,249,22,149,8,248,22,58,199,195,251,22,176,8, +2,80,6,26,26,99,121,99,108,101,32,105,110,32,108,111,97,100,105,110,103, +32,97,116,32,126,101,58,32,126,101,198,249,22,2,22,59,248,22,73,249,22, +57,205,201,12,12,195,27,248,22,48,198,87,94,248,28,248,22,16,80,158,51, +8,29,32,0,89,162,34,35,40,9,222,247,192,80,159,50,8,52,35,89,162, +34,34,49,9,227,16,11,12,7,1,20,14,159,80,158,38,8,28,249,22,57, +247,22,162,11,197,20,14,159,80,158,38,53,250,80,158,41,54,249,22,25,11, +80,158,43,53,22,177,3,195,249,247,80,158,40,52,196,248,22,48,248,22,155, +7,248,22,173,12,198,250,22,121,197,199,198,12,28,28,248,22,167,7,203,11, +27,248,22,145,6,23,16,28,192,192,28,248,22,56,23,16,249,22,149,8,248, +22,58,23,18,2,81,11,250,22,121,80,158,50,8,27,28,248,22,145,6,23, +18,249,22,57,23,19,248,80,159,53,8,51,35,23,21,249,22,57,23,19,247, +22,144,13,254,22,169,7,23,19,23,18,23,16,206,205,204,203,12,194,208,80, +159,34,8,32,35,83,158,34,16,2,83,158,37,20,94,95,2,34,89,162,34, +34,41,9,223,0,248,80,158,35,8,33,9,89,162,34,35,52,9,223,0,27, +247,22,146,13,249,80,158,37,45,28,194,27,248,22,162,7,6,11,11,80,76, +84,67,79,76,76,69,67,84,83,28,192,192,6,0,0,6,0,0,27,28,195, +250,22,186,12,248,22,142,13,69,97,100,100,111,110,45,100,105,114,247,22,160, +7,6,8,8,99,111,108,108,101,99,116,115,11,27,248,80,159,40,8,53,35, +249,22,71,201,248,22,65,248,22,142,13,72,99,111,108,108,101,99,116,115,45, +100,105,114,28,193,249,22,57,195,194,192,80,159,34,8,33,35,83,158,34,16, +2,32,0,89,162,8,36,35,42,2,35,222,27,248,22,140,4,194,28,192,192, +248,22,141,4,194,80,159,34,8,34,35,83,158,34,16,6,26,9,22,169,9, +63,101,118,116,11,35,34,11,248,22,65,249,22,57,22,165,9,34,247,22,129, +10,11,21,93,34,80,159,34,8,35,35,80,159,34,8,36,35,80,159,34,8, +37,35,80,159,34,8,38,35,80,159,34,8,39,35,83,158,34,16,2,89,162, +34,35,44,2,41,223,0,87,94,28,28,248,22,0,194,249,22,40,195,34,11, +12,250,22,179,8,2,41,6,19,19,112,114,111,99,101,100,117,114,101,32,40, +97,114,105,116,121,32,48,41,196,248,80,158,35,8,36,89,162,34,35,41,9, +223,2,247,192,80,159,34,8,40,35,83,158,34,16,2,32,0,89,162,34,35, +43,2,42,222,87,94,28,248,22,140,12,193,12,250,22,179,8,2,42,6,7, +7,99,104,97,110,110,101,108,195,248,22,189,11,193,80,159,34,8,41,35,83, +158,34,16,2,32,0,89,162,34,35,43,2,43,222,87,94,28,248,22,140,12, +193,12,250,22,179,8,2,43,6,7,7,99,104,97,110,110,101,108,195,249,22, +190,11,34,194,80,159,34,8,42,35,83,158,34,16,2,32,0,89,162,34,36, +44,2,44,222,87,94,28,248,22,140,12,193,12,250,22,179,8,2,44,6,7, +7,99,104,97,110,110,101,108,195,28,248,22,189,11,249,22,139,12,195,196,12, +11,80,159,34,8,43,35,83,158,34,16,2,32,0,89,162,34,34,39,2,45, +222,247,22,162,11,80,159,34,8,44,35,83,158,34,16,2,89,162,34,35,44, +2,46,223,0,87,94,28,249,22,188,2,195,39,12,250,22,179,8,2,46,6, +1,1,53,196,248,80,158,35,8,46,11,80,159,34,8,45,35,83,158,34,16, +2,89,162,34,35,44,2,48,223,0,87,94,28,249,22,188,2,195,39,12,250, +22,179,8,2,48,6,1,1,53,196,248,80,158,35,8,46,10,80,159,34,8, +47,35,83,158,34,16,2,89,162,8,36,35,48,2,47,223,0,27,248,22,140, +11,65,101,109,112,116,121,27,247,22,140,11,87,94,20,14,159,80,158,36,53, +250,80,158,39,54,249,22,25,11,80,158,41,53,22,162,11,196,87,96,249,22, +182,3,194,2,86,248,22,180,3,2,86,248,22,181,3,21,95,64,111,110,108, +121,2,87,72,115,121,110,116,97,120,45,114,117,108,101,115,28,195,12,249,22, +3,32,0,89,162,34,35,44,9,222,249,22,168,13,194,249,22,178,3,2,87, +196,21,15,139,3,63,99,97,114,63,99,100,114,64,99,97,97,114,64,99,97, +100,114,64,99,100,97,114,64,99,100,100,114,65,99,97,97,97,114,65,99,97, +97,100,114,65,99,97,100,97,114,65,99,97,100,100,114,65,99,100,97,97,114, +65,99,100,97,100,114,65,99,100,100,97,114,65,99,100,100,100,114,66,99,97, +97,97,97,114,66,99,97,97,97,100,114,66,99,97,97,100,97,114,66,99,97, +97,100,100,114,66,99,97,100,97,97,114,66,99,97,100,97,100,114,66,99,97, +100,100,97,114,66,99,97,100,100,100,114,66,99,100,97,97,97,114,66,99,100, +97,97,100,114,66,99,100,97,100,97,114,66,99,100,97,100,100,114,66,99,100, +100,97,97,114,66,99,100,100,97,100,114,66,99,100,100,100,97,114,66,99,100, +100,100,100,114,63,109,97,112,61,61,61,60,61,62,62,60,61,62,62,61,63, +109,97,120,63,109,105,110,61,43,61,45,61,42,61,47,63,97,98,115,63,103, +99,100,63,108,99,109,63,101,120,112,63,108,111,103,63,115,105,110,63,99,111, +115,63,116,97,110,63,110,111,116,63,101,113,63,1,30,99,97,108,108,45,119, +105,116,104,45,99,117,114,114,101,110,116,45,99,111,110,116,105,110,117,97,116, +105,111,110,71,109,97,107,101,45,115,116,114,105,110,103,74,115,121,109,98,111, +108,45,62,115,116,114,105,110,103,74,115,116,114,105,110,103,45,62,115,121,109, +98,111,108,76,109,97,107,101,45,114,101,99,116,97,110,103,117,108,97,114,74, +101,120,97,99,116,45,62,105,110,101,120,97,99,116,74,105,110,101,120,97,99, +116,45,62,101,120,97,99,116,74,110,117,109,98,101,114,45,62,115,116,114,105, +110,103,74,115,116,114,105,110,103,45,62,110,117,109,98,101,114,2,7,72,111, +117,116,112,117,116,45,112,111,114,116,63,78,99,117,114,114,101,110,116,45,105, +110,112,117,116,45,112,111,114,116,79,99,117,114,114,101,110,116,45,111,117,116, +112,117,116,45,112,111,114,116,78,99,117,114,114,101,110,116,45,101,114,114,111, +114,45,112,111,114,116,75,111,112,101,110,45,105,110,112,117,116,45,102,105,108, +101,76,111,112,101,110,45,111,117,116,112,117,116,45,102,105,108,101,76,99,108, +111,115,101,45,105,110,112,117,116,45,112,111,114,116,77,99,108,111,115,101,45, +111,117,116,112,117,116,45,112,111,114,116,79,119,105,116,104,45,111,117,116,112, +117,116,45,116,111,45,102,105,108,101,73,116,114,97,110,115,99,114,105,112,116, +45,111,110,74,116,114,97,110,115,99,114,105,112,116,45,111,102,102,72,102,108, +117,115,104,45,111,117,116,112,117,116,73,115,116,114,105,110,103,45,108,101,110, +103,116,104,72,115,116,114,105,110,103,45,99,105,60,61,63,72,115,116,114,105, +110,103,45,99,105,62,61,63,73,115,116,114,105,110,103,45,97,112,112,101,110, +100,72,115,116,114,105,110,103,45,62,108,105,115,116,72,108,105,115,116,45,62, +115,116,114,105,110,103,72,115,116,114,105,110,103,45,102,105,108,108,33,73,118, +101,99,116,111,114,45,108,101,110,103,116,104,72,118,101,99,116,111,114,45,62, +108,105,115,116,72,108,105,115,116,45,62,118,101,99,116,111,114,72,118,101,99, +116,111,114,45,102,105,108,108,33,76,99,104,97,114,45,97,108,112,104,97,98, +101,116,105,99,63,73,99,104,97,114,45,110,117,109,101,114,105,99,63,76,99, +104,97,114,45,119,104,105,116,101,115,112,97,99,101,63,76,99,104,97,114,45, +117,112,112,101,114,45,99,97,115,101,63,76,99,104,97,114,45,108,111,119,101, +114,45,99,97,115,101,63,73,99,104,97,114,45,62,105,110,116,101,103,101,114, +73,105,110,116,101,103,101,114,45,62,99,104,97,114,73,99,104,97,114,45,100, +111,119,110,99,97,115,101,1,21,99,97,108,108,45,119,105,116,104,45,111,117, +116,112,117,116,45,102,105,108,101,1,20,99,97,108,108,45,119,105,116,104,45, +105,110,112,117,116,45,102,105,108,101,1,20,119,105,116,104,45,105,110,112,117, +116,45,102,114,111,109,45,102,105,108,101,65,97,112,112,108,121,68,102,111,114, +45,101,97,99,104,67,115,121,109,98,111,108,63,65,112,97,105,114,63,64,99, +111,110,115,68,115,101,116,45,99,97,114,33,68,115,101,116,45,99,100,114,33, +65,110,117,108,108,63,65,108,105,115,116,63,64,108,105,115,116,66,108,101,110, +103,116,104,66,97,112,112,101,110,100,67,114,101,118,101,114,115,101,69,108,105, +115,116,45,116,97,105,108,68,108,105,115,116,45,114,101,102,64,109,101,109,113, +64,109,101,109,118,66,109,101,109,98,101,114,64,97,115,115,113,64,97,115,115, +118,65,97,115,115,111,99,70,112,114,111,99,101,100,117,114,101,63,67,110,117, +109,98,101,114,63,68,99,111,109,112,108,101,120,63,65,114,101,97,108,63,69, +114,97,116,105,111,110,97,108,63,68,105,110,116,101,103,101,114,63,66,101,120, +97,99,116,63,68,105,110,101,120,97,99,116,63,65,122,101,114,111,63,69,112, +111,115,105,116,105,118,101,63,69,110,101,103,97,116,105,118,101,63,64,111,100, +100,63,65,101,118,101,110,63,68,113,117,111,116,105,101,110,116,69,114,101,109, +97,105,110,100,101,114,66,109,111,100,117,108,111,65,102,108,111,111,114,67,99, +101,105,108,105,110,103,68,116,114,117,110,99,97,116,101,65,114,111,117,110,100, +69,110,117,109,101,114,97,116,111,114,71,100,101,110,111,109,105,110,97,116,111, +114,64,97,115,105,110,64,97,99,111,115,64,97,116,97,110,64,115,113,114,116, +64,101,120,112,116,70,109,97,107,101,45,112,111,108,97,114,69,114,101,97,108, +45,112,97,114,116,69,105,109,97,103,45,112,97,114,116,65,97,110,103,108,101, +69,109,97,103,110,105,116,117,100,101,71,105,110,112,117,116,45,112,111,114,116, +63,64,114,101,97,100,69,114,101,97,100,45,99,104,97,114,69,112,101,101,107, +45,99,104,97,114,71,101,111,102,45,111,98,106,101,99,116,63,71,99,104,97, +114,45,114,101,97,100,121,63,65,119,114,105,116,101,67,100,105,115,112,108,97, +121,67,110,101,119,108,105,110,101,70,119,114,105,116,101,45,99,104,97,114,64, +108,111,97,100,67,115,116,114,105,110,103,63,66,115,116,114,105,110,103,70,115, +116,114,105,110,103,45,114,101,102,71,115,116,114,105,110,103,45,115,101,116,33, +68,115,116,114,105,110,103,61,63,69,115,117,98,115,116,114,105,110,103,71,115, +116,114,105,110,103,45,99,111,112,121,71,115,116,114,105,110,103,45,99,105,61, +63,68,115,116,114,105,110,103,60,63,68,115,116,114,105,110,103,62,63,69,115, +116,114,105,110,103,60,61,63,69,115,116,114,105,110,103,62,61,63,71,115,116, +114,105,110,103,45,99,105,60,63,71,115,116,114,105,110,103,45,99,105,62,63, +67,118,101,99,116,111,114,63,71,109,97,107,101,45,118,101,99,116,111,114,66, +118,101,99,116,111,114,70,118,101,99,116,111,114,45,114,101,102,71,118,101,99, +116,111,114,45,115,101,116,33,65,99,104,97,114,63,66,99,104,97,114,61,63, +66,99,104,97,114,60,63,66,99,104,97,114,62,63,67,99,104,97,114,60,61, +63,67,99,104,97,114,62,61,63,69,99,104,97,114,45,99,105,61,63,69,99, +104,97,114,45,99,105,60,63,69,99,104,97,114,45,99,105,62,63,70,99,104, +97,114,45,99,105,60,61,63,70,99,104,97,114,45,99,105,62,61,63,71,99, +104,97,114,45,117,112,99,97,115,101,68,98,111,111,108,101,97,110,63,64,101, +113,118,63,66,101,113,117,97,108,63,65,102,111,114,99,101,76,99,97,108,108, +45,119,105,116,104,45,118,97,108,117,101,115,66,118,97,108,117,101,115,64,101, +118,97,108,2,35,2,46,2,48,2,45,72,100,121,110,97,109,105,99,45,119, +105,110,100,9,193,80,159,34,8,46,35,97,2,88,2,61,2,60,2,59,2, +58,95,2,88,2,55,2,62,0}; + EVAL_ONE_SIZED_STR((char *)expr, 12671); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,15,0,0,0,1,0,0,3,0,12,0,29,0, -59,0,77,0,99,0,108,0,114,0,159,0,171,0,209,0,217,0,222,0,244, -0,0,0,36,2,0,0,29,11,11,68,35,37,100,101,102,105,110,101,76,35, -37,115,116,120,99,97,115,101,45,115,99,104,101,109,101,1,28,109,122,115,99, -104,101,109,101,45,105,110,45,115,116,120,45,109,111,100,117,108,101,45,98,101, -103,105,110,77,35,37,116,111,112,45,105,110,116,101,114,97,99,116,105,111,110, -1,20,35,37,112,108,97,105,110,45,109,111,100,117,108,101,45,98,101,103,105, -110,68,35,37,107,101,114,110,101,108,65,35,37,115,116,120,97,10,34,11,94, -159,2,2,9,11,159,2,3,9,11,16,6,2,4,2,1,2,5,2,1,2, -6,158,2,7,74,35,37,109,111,100,117,108,101,45,98,101,103,105,110,30,2, -8,67,115,116,120,45,99,100,114,6,96,43,97,10,35,11,93,159,2,8,9, -11,16,0,95,8,193,11,16,0,16,4,11,11,63,115,116,120,3,1,7,101, -110,118,52,56,49,51,18,158,64,104,101,114,101,45,18,158,2,6,45,18,158, -78,114,101,113,117,105,114,101,45,102,111,114,45,115,121,110,116,97,120,45,159, -34,20,100,159,34,16,1,20,24,65,98,101,103,105,110,16,0,83,158,40,20, -97,114,72,35,37,115,116,120,109,122,45,98,111,100,121,2,1,18,94,11,43, -10,10,34,80,158,34,34,20,100,159,34,16,0,16,0,11,11,16,0,34,11, -16,2,2,5,2,4,16,2,11,11,16,2,2,5,2,4,34,36,94,16,5, -93,2,4,89,162,34,35,51,9,223,0,28,248,80,158,35,34,194,250,22,152, -3,20,15,159,37,34,36,250,22,67,20,15,159,40,35,36,249,22,152,3,201, -249,22,65,20,15,159,44,36,36,68,109,122,115,99,104,101,109,101,248,80,158, -41,35,200,196,250,22,177,8,11,6,10,10,98,97,100,32,115,121,110,116,97, -120,196,34,20,100,159,34,16,2,30,2,8,69,115,116,120,45,112,97,105,114, -63,11,2,10,16,3,33,12,33,13,33,14,11,16,5,93,2,5,89,162,8, -36,35,46,9,223,0,87,94,28,249,22,148,8,69,116,111,112,45,108,101,118, -101,108,247,22,174,13,62,111,107,250,22,177,8,11,6,16,16,110,111,116,32, -97,116,32,116,111,112,32,108,101,118,101,108,196,251,22,152,3,197,248,80,158, -39,34,198,197,197,34,20,100,159,34,16,1,2,10,16,0,11,9,95,2,7, -2,3,2,2,94,2,7,2,8,0}; - EVAL_ONE_SIZED_STR((char *)expr, 597); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,15,0,0,0,1,0,0,3,0,12,0,29, +0,59,0,77,0,99,0,108,0,114,0,159,0,171,0,219,0,227,0,232,0, +254,0,0,0,46,2,0,0,29,11,11,68,35,37,100,101,102,105,110,101,76, +35,37,115,116,120,99,97,115,101,45,115,99,104,101,109,101,1,28,109,122,115, +99,104,101,109,101,45,105,110,45,115,116,120,45,109,111,100,117,108,101,45,98, +101,103,105,110,77,35,37,116,111,112,45,105,110,116,101,114,97,99,116,105,111, +110,1,20,35,37,112,108,97,105,110,45,109,111,100,117,108,101,45,98,101,103, +105,110,68,35,37,107,101,114,110,101,108,65,35,37,115,116,120,97,10,34,11, +94,159,2,2,9,11,159,2,3,9,11,16,6,2,4,2,1,2,5,2,1, +2,6,158,2,7,74,35,37,109,111,100,117,108,101,45,98,101,103,105,110,30, +2,8,67,115,116,120,45,99,100,114,6,97,13,16,4,34,29,11,11,2,1, +11,43,97,10,35,11,93,159,2,8,9,11,16,0,95,8,193,11,16,0,16, +4,11,11,63,115,116,120,3,1,7,101,110,118,50,52,49,49,18,158,64,104, +101,114,101,45,18,158,2,6,45,18,158,78,114,101,113,117,105,114,101,45,102, +111,114,45,115,121,110,116,97,120,45,159,34,20,100,159,34,16,1,20,24,65, +98,101,103,105,110,16,0,83,158,40,20,97,114,72,35,37,115,116,120,109,122, +45,98,111,100,121,2,1,18,94,11,43,10,10,34,80,158,34,34,20,100,159, +34,16,0,16,0,11,11,16,0,34,11,16,2,2,4,2,5,16,2,11,11, +16,2,2,4,2,5,34,36,94,16,5,93,2,4,89,162,34,35,51,9,223, +0,28,248,80,158,35,34,194,250,22,152,3,20,15,159,37,34,36,250,22,67, +20,15,159,40,35,36,249,22,152,3,201,249,22,65,20,15,159,44,36,36,68, +109,122,115,99,104,101,109,101,248,80,158,41,35,200,196,250,22,178,8,11,6, +10,10,98,97,100,32,115,121,110,116,97,120,196,34,20,100,159,34,16,2,30, +2,8,69,115,116,120,45,112,97,105,114,63,11,2,10,16,3,33,12,33,13, +33,14,11,16,5,93,2,5,89,162,8,36,35,46,9,223,0,87,94,28,249, +22,149,8,69,116,111,112,45,108,101,118,101,108,247,22,175,13,62,111,107,250, +22,178,8,11,6,16,16,110,111,116,32,97,116,32,116,111,112,32,108,101,118, +101,108,196,251,22,152,3,197,248,80,158,39,34,198,197,197,34,20,100,159,34, +16,1,2,10,16,0,11,9,95,2,7,2,3,2,2,94,2,7,2,8,0}; + EVAL_ONE_SIZED_STR((char *)expr, 608); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,91,0,0,0,1,0,0,9,0,18,0,26,0, -39,0,45,0,62,0,69,0,83,0,98,0,132,0,161,0,189,0,201,0,213, -0,229,0,1,1,17,1,49,1,76,1,102,1,124,1,155,1,161,1,183,1, -193,1,205,1,230,1,244,1,13,2,21,2,39,2,56,2,73,2,102,2,122, -2,135,2,141,2,150,2,162,2,184,2,211,2,231,2,249,2,253,2,16,3, -28,3,31,3,38,3,43,3,50,3,64,3,77,3,82,3,85,3,97,3,103, -3,110,3,115,3,133,3,140,3,155,3,167,3,174,3,183,3,199,3,213,3, -229,3,240,3,245,3,2,4,14,4,25,4,35,4,46,4,59,4,76,4,92, -4,106,4,110,4,121,4,139,4,152,4,166,4,173,4,178,4,189,4,201,4, -216,4,225,4,234,4,0,0,145,7,0,0,68,35,37,101,120,112,111,98,115, -68,35,37,100,101,102,105,110,101,67,35,37,113,113,115,116,120,72,35,37,115, -116,120,109,122,45,98,111,100,121,65,35,37,115,116,120,76,35,37,115,116,120, -99,97,115,101,45,115,99,104,101,109,101,66,35,37,109,105,115,99,73,35,37, -109,111,114,101,45,115,99,104,101,109,101,74,35,37,109,111,100,117,108,101,45, -98,101,103,105,110,1,32,99,97,108,108,45,119,105,116,104,45,98,114,101,97, -107,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,1,27,99, -97,108,108,45,119,105,116,104,45,101,120,99,101,112,116,105,111,110,45,104,97, -110,100,108,101,114,1,26,99,97,108,108,45,119,105,116,104,45,112,97,114,97, -109,101,116,101,114,105,122,97,116,105,111,110,71,99,104,97,110,110,101,108,45, -103,101,116,71,99,104,97,110,110,101,108,45,112,117,116,75,99,104,97,110,110, -101,108,45,116,114,121,45,103,101,116,1,26,99,104,101,99,107,45,100,117,112, -108,105,99,97,116,101,45,105,100,101,110,116,105,102,105,101,114,75,99,111,108, -108,101,99,116,105,111,110,45,112,97,116,104,1,30,99,117,114,114,101,110,116, -45,98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105, -111,110,1,25,99,117,114,114,101,110,116,45,108,111,97,100,47,117,115,101,45, -99,111,109,112,105,108,101,100,1,24,99,117,114,114,101,110,116,45,112,97,114, -97,109,101,116,101,114,105,122,97,116,105,111,110,1,20,102,105,110,100,45,101, -120,101,99,117,116,97,98,108,101,45,112,97,116,104,1,29,102,105,110,100,45, -108,105,98,114,97,114,121,45,99,111,108,108,101,99,116,105,111,110,45,112,97, -116,104,115,65,102,111,114,99,101,1,20,103,101,110,101,114,97,116,101,45,116, -101,109,112,111,114,97,114,105,101,115,69,103,117,97,114,100,45,101,118,116,71, -105,100,101,110,116,105,102,105,101,114,63,1,23,105,110,116,101,114,97,99,116, -105,111,110,45,101,110,118,105,114,111,110,109,101,110,116,73,108,111,97,100,45, -114,101,108,97,116,105,118,101,1,23,108,111,97,100,45,114,101,108,97,116,105, -118,101,45,101,120,116,101,110,115,105,111,110,67,108,111,97,100,47,99,100,77, -108,111,97,100,47,117,115,101,45,99,111,109,112,105,108,101,100,76,110,111,114, -109,97,108,45,99,97,115,101,45,112,97,116,104,76,110,117,108,108,45,101,110, -118,105,114,111,110,109,101,110,116,1,27,112,97,116,104,45,108,105,115,116,45, -115,116,114,105,110,103,45,62,112,97,116,104,45,108,105,115,116,79,112,97,116, -104,45,114,101,112,108,97,99,101,45,115,117,102,102,105,120,72,112,97,116,104, -45,115,116,114,105,110,103,63,65,112,111,114,116,63,68,112,114,111,109,105,115, -101,63,71,114,97,116,105,111,110,97,108,105,122,101,1,20,114,101,97,100,45, -101,118,97,108,45,112,114,105,110,116,45,108,111,111,112,1,25,115,99,104,101, -109,101,45,114,101,112,111,114,116,45,101,110,118,105,114,111,110,109,101,110,116, -79,109,101,109,111,114,121,45,116,114,97,99,101,45,108,97,109,98,100,97,77, -35,37,116,111,112,45,105,110,116,101,114,97,99,116,105,111,110,63,108,101,116, -78,112,97,114,97,109,101,116,101,114,105,122,101,45,98,114,101,97,107,71,113, -117,97,115,105,115,121,110,116,97,120,62,111,114,66,100,101,102,105,110,101,64, -119,104,101,110,66,108,101,116,47,101,99,73,100,101,102,105,110,101,45,115,116, -114,117,99,116,72,112,97,114,97,109,101,116,101,114,105,122,101,64,99,97,115, -101,62,100,111,71,115,101,116,33,45,118,97,108,117,101,115,65,100,101,108,97, -121,66,108,101,116,47,99,99,64,116,105,109,101,77,117,110,115,121,110,116,97, -120,45,115,112,108,105,99,105,110,103,66,115,121,110,116,97,120,74,119,105,116, -104,45,104,97,110,100,108,101,114,115,42,71,119,105,116,104,45,115,121,110,116, -97,120,66,117,110,108,101,115,115,68,117,110,115,121,110,116,97,120,75,113,117, -97,115,105,115,121,110,116,97,120,47,108,111,99,73,119,105,116,104,45,104,97, -110,100,108,101,114,115,75,115,121,110,116,97,120,45,105,100,45,114,117,108,101, -115,70,108,101,116,45,115,116,114,117,99,116,64,108,101,116,42,72,115,121,110, -116,97,120,45,99,97,115,101,42,71,115,121,110,116,97,120,45,99,97,115,101, -70,115,121,110,116,97,120,47,108,111,99,69,102,108,117,105,100,45,108,101,116, -70,113,117,97,115,105,113,117,111,116,101,72,108,101,116,45,115,121,110,116,97, -120,101,115,76,98,101,103,105,110,45,102,111,114,45,115,121,110,116,97,120,75, -108,101,116,114,101,99,45,115,121,110,116,97,120,101,115,73,108,101,116,114,101, -99,45,115,121,110,116,97,120,63,97,110,100,70,108,101,116,45,115,121,110,116, -97,120,77,100,101,102,105,110,101,45,102,111,114,45,115,121,110,116,97,120,72, -115,121,110,116,97,120,45,114,117,108,101,115,73,100,101,102,105,110,101,45,115, -121,110,116,97,120,66,108,101,116,114,101,99,64,99,111,110,100,70,35,37,119, -105,116,104,45,115,116,120,71,35,37,113,113,45,97,110,100,45,111,114,74,35, -37,100,101,102,105,110,101,45,101,116,45,97,108,68,35,37,115,116,120,108,111, -99,68,35,37,107,101,114,110,101,108,159,34,20,100,159,34,16,1,20,24,65, -98,101,103,105,110,16,0,83,158,40,20,97,114,68,109,122,115,99,104,101,109, -101,29,11,11,18,94,11,97,10,34,11,100,159,2,1,9,11,159,2,2,9, -11,159,2,3,9,11,159,2,4,9,11,159,2,5,9,11,159,2,6,9,11, -159,2,7,9,11,159,2,8,9,11,16,0,10,10,34,80,158,34,34,20,100, -159,34,16,0,16,0,2,9,10,16,0,34,11,16,78,2,10,2,11,2,12, + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,92,0,0,0,1,0,0,9,0,18,0,26, +0,39,0,45,0,62,0,69,0,83,0,98,0,132,0,161,0,189,0,201,0, +213,0,229,0,1,1,17,1,49,1,76,1,102,1,124,1,155,1,161,1,183, +1,193,1,205,1,230,1,244,1,13,2,21,2,39,2,56,2,73,2,102,2, +122,2,135,2,141,2,150,2,162,2,184,2,211,2,229,2,236,2,239,2,246, +2,249,2,253,2,1,3,14,3,26,3,38,3,49,3,65,3,77,3,91,3, +102,3,116,3,128,3,142,3,158,3,171,3,189,3,202,3,209,3,225,3,230, +3,241,3,251,3,8,4,23,4,37,4,42,4,56,4,63,4,68,4,79,4, +88,4,95,4,102,4,108,4,113,4,130,4,148,4,167,4,172,4,192,4,203, +4,212,4,227,4,239,4,248,4,0,0,165,7,0,0,68,35,37,101,120,112, +111,98,115,68,35,37,100,101,102,105,110,101,67,35,37,113,113,115,116,120,72, +35,37,115,116,120,109,122,45,98,111,100,121,65,35,37,115,116,120,76,35,37, +115,116,120,99,97,115,101,45,115,99,104,101,109,101,66,35,37,109,105,115,99, +73,35,37,109,111,114,101,45,115,99,104,101,109,101,74,35,37,109,111,100,117, +108,101,45,98,101,103,105,110,1,32,99,97,108,108,45,119,105,116,104,45,98, +114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110, +1,27,99,97,108,108,45,119,105,116,104,45,101,120,99,101,112,116,105,111,110, +45,104,97,110,100,108,101,114,1,26,99,97,108,108,45,119,105,116,104,45,112, +97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,71,99,104,97,110,110, +101,108,45,103,101,116,71,99,104,97,110,110,101,108,45,112,117,116,75,99,104, +97,110,110,101,108,45,116,114,121,45,103,101,116,1,26,99,104,101,99,107,45, +100,117,112,108,105,99,97,116,101,45,105,100,101,110,116,105,102,105,101,114,75, +99,111,108,108,101,99,116,105,111,110,45,112,97,116,104,1,30,99,117,114,114, +101,110,116,45,98,114,101,97,107,45,112,97,114,97,109,101,116,101,114,105,122, +97,116,105,111,110,1,25,99,117,114,114,101,110,116,45,108,111,97,100,47,117, +115,101,45,99,111,109,112,105,108,101,100,1,24,99,117,114,114,101,110,116,45, +112,97,114,97,109,101,116,101,114,105,122,97,116,105,111,110,1,20,102,105,110, +100,45,101,120,101,99,117,116,97,98,108,101,45,112,97,116,104,1,29,102,105, +110,100,45,108,105,98,114,97,114,121,45,99,111,108,108,101,99,116,105,111,110, +45,112,97,116,104,115,65,102,111,114,99,101,1,20,103,101,110,101,114,97,116, +101,45,116,101,109,112,111,114,97,114,105,101,115,69,103,117,97,114,100,45,101, +118,116,71,105,100,101,110,116,105,102,105,101,114,63,1,23,105,110,116,101,114, +97,99,116,105,111,110,45,101,110,118,105,114,111,110,109,101,110,116,73,108,111, +97,100,45,114,101,108,97,116,105,118,101,1,23,108,111,97,100,45,114,101,108, +97,116,105,118,101,45,101,120,116,101,110,115,105,111,110,67,108,111,97,100,47, +99,100,77,108,111,97,100,47,117,115,101,45,99,111,109,112,105,108,101,100,76, +110,111,114,109,97,108,45,99,97,115,101,45,112,97,116,104,76,110,117,108,108, +45,101,110,118,105,114,111,110,109,101,110,116,1,27,112,97,116,104,45,108,105, +115,116,45,115,116,114,105,110,103,45,62,112,97,116,104,45,108,105,115,116,79, +112,97,116,104,45,114,101,112,108,97,99,101,45,115,117,102,102,105,120,72,112, +97,116,104,45,115,116,114,105,110,103,63,65,112,111,114,116,63,68,112,114,111, +109,105,115,101,63,71,114,97,116,105,111,110,97,108,105,122,101,1,20,114,101, +97,100,45,101,118,97,108,45,112,114,105,110,116,45,108,111,111,112,1,25,115, +99,104,101,109,101,45,114,101,112,111,114,116,45,101,110,118,105,114,111,110,109, +101,110,116,77,35,37,116,111,112,45,105,110,116,101,114,97,99,116,105,111,110, +66,115,121,110,116,97,120,62,100,111,66,117,110,108,101,115,115,62,111,114,63, +97,110,100,63,108,101,116,72,115,121,110,116,97,120,45,99,97,115,101,42,71, +119,105,116,104,45,115,121,110,116,97,120,71,115,121,110,116,97,120,45,99,97, +115,101,70,108,101,116,45,115,121,110,116,97,120,75,113,117,97,115,105,115,121, +110,116,97,120,47,108,111,99,71,113,117,97,115,105,115,121,110,116,97,120,73, +100,101,102,105,110,101,45,115,121,110,116,97,120,70,115,121,110,116,97,120,47, +108,111,99,73,112,97,114,97,109,101,116,101,114,105,122,101,42,71,115,101,116, +33,45,118,97,108,117,101,115,73,108,101,116,114,101,99,45,115,121,110,116,97, +120,75,115,121,110,116,97,120,45,105,100,45,114,117,108,101,115,72,108,101,116, +45,115,121,110,116,97,120,101,115,77,117,110,115,121,110,116,97,120,45,115,112, +108,105,99,105,110,103,72,115,121,110,116,97,120,45,114,117,108,101,115,66,108, +101,116,47,101,99,75,108,101,116,114,101,99,45,115,121,110,116,97,120,101,115, +64,119,104,101,110,70,108,101,116,45,115,116,114,117,99,116,69,102,108,117,105, +100,45,108,101,116,72,112,97,114,97,109,101,116,101,114,105,122,101,74,119,105, +116,104,45,104,97,110,100,108,101,114,115,42,73,119,105,116,104,45,104,97,110, +100,108,101,114,115,64,116,105,109,101,73,100,101,102,105,110,101,45,115,116,114, +117,99,116,66,108,101,116,47,99,99,64,108,101,116,42,70,113,117,97,115,105, +113,117,111,116,101,68,117,110,115,121,110,116,97,120,66,100,101,102,105,110,101, +66,108,101,116,114,101,99,65,100,101,108,97,121,64,99,97,115,101,76,98,101, +103,105,110,45,102,111,114,45,115,121,110,116,97,120,77,100,101,102,105,110,101, +45,102,111,114,45,115,121,110,116,97,120,78,112,97,114,97,109,101,116,101,114, +105,122,101,45,98,114,101,97,107,64,99,111,110,100,79,109,101,109,111,114,121, +45,116,114,97,99,101,45,108,97,109,98,100,97,70,35,37,119,105,116,104,45, +115,116,120,68,35,37,107,101,114,110,101,108,74,35,37,100,101,102,105,110,101, +45,101,116,45,97,108,71,35,37,113,113,45,97,110,100,45,111,114,68,35,37, +115,116,120,108,111,99,159,34,20,100,159,34,16,1,20,24,65,98,101,103,105, +110,16,0,83,158,40,20,97,114,68,109,122,115,99,104,101,109,101,29,11,11, +18,94,11,97,10,34,11,100,159,2,1,9,11,159,2,2,9,11,159,2,3, +9,11,159,2,4,9,11,159,2,5,9,11,159,2,6,9,11,159,2,7,9, +11,159,2,8,9,11,16,0,10,10,34,80,158,34,34,20,100,159,34,16,0, +16,0,2,9,10,16,0,34,11,16,79,2,10,2,11,2,12,2,13,2,14, +2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,22,2,23,2,24,2, +25,2,26,2,27,2,28,2,29,2,30,2,31,2,32,2,33,2,34,2,35, +2,36,2,37,2,38,2,39,2,40,2,41,2,42,2,43,2,44,2,9,2, +45,2,46,2,47,2,48,2,49,2,50,2,51,2,52,2,53,2,54,2,55, +2,56,2,57,2,58,2,59,2,60,2,61,2,62,2,63,1,28,109,122,115, +99,104,101,109,101,45,105,110,45,115,116,120,45,109,111,100,117,108,101,45,98, +101,103,105,110,2,64,2,65,2,66,2,67,2,68,2,69,2,70,2,71,2, +72,2,73,2,74,2,75,2,76,2,77,2,78,2,79,2,80,2,81,2,82, +2,83,2,84,2,85,2,86,16,79,2,8,2,8,2,8,2,7,2,7,2, +7,2,6,2,7,2,8,2,7,2,8,2,7,2,7,2,8,2,87,2,7, +2,5,2,7,2,7,2,7,2,7,2,7,2,7,2,7,2,7,2,7,2, +7,2,7,2,8,2,7,2,7,2,7,2,4,69,35,37,115,116,120,99,97, +115,101,2,8,2,88,2,89,2,90,2,90,2,90,2,91,2,87,2,91,2, +6,2,3,2,3,2,2,2,91,2,8,2,8,2,6,2,6,2,6,2,3, +2,6,2,4,2,89,2,6,2,89,2,8,2,8,2,8,2,8,2,8,2, +8,2,89,2,8,2,90,2,90,2,3,2,2,2,90,2,8,2,8,2,2, +2,2,2,8,66,35,37,99,111,110,100,2,7,16,79,2,10,2,11,2,12, 2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,22,2, 23,2,24,2,25,2,26,2,27,2,28,2,29,2,30,2,31,2,32,2,33, 2,34,2,35,2,36,2,37,2,38,2,39,2,40,2,41,2,42,2,43,2, -44,2,45,2,46,2,47,2,48,2,49,2,50,2,51,1,28,109,122,115,99, -104,101,109,101,45,105,110,45,115,116,120,45,109,111,100,117,108,101,45,98,101, -103,105,110,2,52,2,53,2,54,2,55,2,56,2,57,2,58,2,59,2,60, -2,61,2,62,2,63,2,64,2,65,2,66,2,67,2,68,2,69,2,70,2, -71,2,72,2,73,2,74,2,75,2,76,2,9,2,77,2,78,2,79,2,80, -2,81,2,82,2,83,2,84,2,85,16,78,2,8,2,8,2,8,2,7,2, -7,2,7,2,6,2,7,2,8,2,7,2,8,2,7,2,7,2,8,2,86, -2,7,2,5,2,7,2,7,2,7,2,7,2,7,2,7,2,7,2,7,2, -7,2,7,2,7,2,8,2,7,2,7,2,7,2,7,2,4,2,87,2,8, -2,3,2,87,2,2,2,88,2,88,2,88,2,4,2,8,2,8,2,8,2, -8,2,8,2,8,2,8,2,3,69,35,37,115,116,120,99,97,115,101,2,8, -2,86,2,88,2,3,2,3,2,8,2,6,2,8,2,87,2,89,2,89,2, -89,2,8,2,87,2,6,2,2,2,90,2,6,2,6,2,87,2,6,2,2, -2,6,2,2,2,87,66,35,37,99,111,110,100,16,78,2,10,2,11,2,12, -2,13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,22,2, -23,2,24,2,25,2,26,2,27,2,28,2,29,2,30,2,31,2,32,2,33, -2,34,2,35,2,36,2,37,2,38,2,39,2,40,2,41,2,42,2,43,2, -44,2,45,2,46,2,47,2,48,2,49,2,50,2,51,2,9,2,52,2,53, -2,54,2,55,2,56,2,57,2,58,2,59,2,60,2,61,2,62,2,63,2, -64,2,65,2,66,2,67,2,68,2,69,2,70,2,71,2,72,2,73,2,74, -2,75,2,76,1,20,35,37,112,108,97,105,110,45,109,111,100,117,108,101,45, -98,101,103,105,110,2,77,2,78,2,79,2,80,2,81,2,82,2,83,2,84, -2,85,8,32,8,78,9,9,102,2,90,2,8,2,7,2,6,2,5,2,4, -2,3,2,2,2,1,69,35,37,102,111,114,101,105,103,110,9,0}; - EVAL_ONE_SIZED_STR((char *)expr, 2138); +44,1,20,35,37,112,108,97,105,110,45,109,111,100,117,108,101,45,98,101,103, +105,110,2,45,2,46,2,47,2,48,2,49,2,50,2,51,2,52,2,53,2, +54,2,55,2,56,2,57,2,58,2,59,2,60,2,61,2,62,2,63,2,9, +2,64,2,65,2,66,2,67,2,68,2,69,2,70,2,71,2,72,2,73,2, +74,2,75,2,76,2,77,2,78,2,79,2,80,2,81,2,82,2,83,2,84, +2,85,2,86,8,32,8,79,9,9,102,2,88,2,8,2,7,2,6,2,5, +2,4,2,3,2,2,2,1,69,35,37,102,111,114,101,105,103,110,9,0}; + EVAL_ONE_SIZED_STR((char *)expr, 2161); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,99,0,0,0,1,0,0,6,0,9,0,19,0, -33,0,37,0,45,0,52,0,57,0,71,0,76,0,87,0,98,0,104,0,110, -0,113,0,131,0,134,0,139,0,147,0,152,0,164,0,167,0,174,0,180,0, -197,0,203,0,207,0,224,0,236,0,245,0,254,0,12,1,19,1,26,1,33, -1,40,1,47,1,54,1,61,1,68,1,75,1,82,1,89,1,96,1,118,1, -123,1,127,1,133,1,138,1,145,1,152,1,159,1,166,1,172,1,179,1,186, -1,193,1,200,1,222,1,224,1,232,1,237,1,243,1,253,1,19,2,45,2, -54,2,64,2,74,2,76,2,86,2,96,2,111,2,114,2,116,2,125,2,134, -2,144,2,154,2,164,2,170,2,182,2,202,2,0,3,17,3,27,3,60,3, -127,3,144,3,154,3,164,3,176,3,171,4,196,4,33,5,54,5,64,5,97, -5,0,0,91,13,0,0,65,98,101,103,105,110,29,11,11,69,117,110,100,101, -102,105,110,101,100,73,108,101,116,114,101,99,45,115,121,110,116,97,120,63,97, -110,100,67,35,37,100,97,116,117,109,66,108,97,109,98,100,97,64,115,101,116, -33,73,100,101,102,105,110,101,45,115,121,110,116,97,120,64,99,97,115,101,70, -108,101,116,45,115,121,110,116,97,120,70,113,117,97,115,105,113,117,111,116,101, -65,35,37,116,111,112,65,113,117,111,116,101,62,100,111,77,35,37,116,111,112, -45,105,110,116,101,114,97,99,116,105,111,110,62,111,114,64,99,111,110,100,67, -117,110,113,117,111,116,101,64,108,101,116,42,71,114,53,114,115,58,108,101,116, -114,101,99,62,105,102,66,100,101,102,105,110,101,65,100,101,108,97,121,76,117, -110,113,117,111,116,101,45,115,112,108,105,99,105,110,103,65,35,37,97,112,112, -63,108,101,116,76,35,37,115,116,120,99,97,115,101,45,115,99,104,101,109,101, -71,35,37,113,113,45,97,110,100,45,111,114,68,35,37,107,101,114,110,101,108, -68,35,37,100,101,102,105,110,101,73,35,37,109,111,114,101,45,115,99,104,101, -109,101,3,1,4,103,57,53,50,3,1,4,103,57,53,49,3,1,4,103,57, -52,54,3,1,4,103,57,52,53,3,1,4,103,57,52,51,3,1,4,103,57, -52,50,3,1,4,103,57,52,49,3,1,4,103,57,51,55,3,1,4,103,57, -51,54,3,1,4,103,57,52,48,3,1,4,103,57,51,57,3,1,4,103,57, -51,56,6,19,19,103,101,110,101,114,97,116,101,95,116,101,109,112,95,110,97, -109,101,115,64,118,97,114,49,63,46,46,46,65,105,110,105,116,49,64,98,111, -100,121,3,1,4,103,57,52,57,3,1,4,103,57,52,56,3,1,4,103,57, -52,55,3,1,4,103,57,52,52,65,116,101,109,112,49,3,1,4,103,57,53, -53,3,1,4,103,57,53,48,3,1,4,103,57,53,52,3,1,4,103,57,53, -51,6,19,19,103,101,110,101,114,97,116,101,95,116,101,109,112,95,110,97,109, -101,115,61,121,67,110,101,119,116,101,109,112,64,116,101,109,112,65,35,37,115, -116,120,69,35,37,115,116,120,99,97,115,101,1,20,99,97,116,99,104,45,101, -108,108,105,112,115,105,115,45,101,114,114,111,114,1,24,97,112,112,108,121,45, -112,97,116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101,68,109,122, -115,99,104,101,109,101,3,1,7,101,110,118,52,56,50,56,3,1,7,101,110, -118,52,56,50,57,61,114,3,1,7,101,110,118,52,56,53,55,3,1,7,101, -110,118,52,56,53,56,74,35,37,115,109,97,108,108,45,115,99,104,101,109,101, -29,11,11,61,120,68,104,101,114,101,45,115,116,120,3,1,6,101,110,118,52, -53,56,3,1,7,101,110,118,52,56,55,48,3,1,7,101,110,118,52,56,57, -52,3,1,7,101,110,118,52,56,57,53,95,8,193,11,16,0,97,10,35,11, -93,159,2,67,9,11,16,0,97,10,34,11,93,159,2,67,9,11,16,4,2, -3,2,2,2,21,2,2,97,8,83,8,82,8,81,16,8,11,11,3,1,4, -103,57,51,51,3,1,4,103,57,51,52,3,1,4,103,57,51,53,2,68,2, -68,2,68,16,8,11,11,2,46,2,48,2,49,2,69,2,69,2,69,18,158, -163,10,2,21,2,45,2,42,9,2,43,2,44,8,84,18,158,95,10,2,40, -2,41,8,84,18,16,2,95,2,47,93,8,163,63,16,4,11,11,2,70,3, -1,7,101,110,118,52,56,51,57,95,9,8,163,63,2,64,97,8,83,8,82, -8,81,16,10,11,11,3,1,4,103,57,50,56,3,1,4,103,57,50,57,3, -1,4,103,57,51,48,3,1,4,103,57,51,49,2,71,2,71,2,71,2,71, -16,10,11,11,2,54,2,46,2,48,2,49,2,72,2,72,2,72,2,72,18, -158,96,10,2,27,2,50,159,2,27,2,51,2,52,8,88,18,158,95,10,2, -39,2,3,8,88,18,158,95,10,2,37,2,38,8,88,18,158,96,10,2,8, -2,35,2,36,8,88,18,16,2,103,93,158,160,10,2,27,9,2,53,8,88, -97,10,34,11,95,159,68,35,37,112,97,114,97,109,122,9,11,159,2,73,9, -11,159,2,63,9,11,16,14,75,115,117,98,115,116,105,116,117,116,101,45,115, -116,111,112,2,74,66,115,121,110,116,97,120,2,74,78,112,97,116,116,101,114, -110,45,115,117,98,115,116,105,116,117,116,101,2,74,73,115,121,110,116,97,120, -45,99,97,115,101,42,42,2,74,1,26,100,97,116,117,109,45,62,115,121,110, -116,97,120,45,111,98,106,101,99,116,47,115,104,97,112,101,2,74,2,66,2, -74,2,65,2,74,97,10,35,11,95,159,64,35,37,115,99,9,11,159,2,73, -9,11,159,2,63,9,11,16,0,95,8,193,11,16,0,16,4,11,11,2,75, -3,1,6,101,110,118,52,53,54,16,4,11,11,2,76,2,77,16,4,11,11, -2,76,2,77,16,4,11,11,2,76,3,1,6,101,110,118,52,54,48,13,16, -4,35,2,74,2,64,11,93,8,171,63,16,4,11,11,2,70,2,78,95,9, -8,171,63,2,64,18,16,2,95,2,47,93,8,171,63,16,4,11,11,2,70, -2,78,95,9,8,171,63,2,64,97,8,83,8,82,8,81,16,14,11,11,3, -1,4,103,57,50,49,3,1,4,103,57,50,50,3,1,4,103,57,50,51,3, -1,4,103,57,50,52,3,1,4,103,57,50,53,3,1,4,103,57,50,54,2, -79,2,79,2,79,2,79,2,79,2,79,16,14,11,11,2,75,2,60,2,62, -2,46,2,48,2,49,2,80,2,80,2,80,2,80,2,80,2,80,18,158,163, -10,2,21,2,59,2,55,158,2,61,2,56,2,57,2,58,8,95,18,158,95, -10,2,33,2,34,8,95,18,16,2,95,2,47,93,8,183,63,16,4,11,11, -2,70,3,1,7,101,110,118,52,57,49,49,95,9,8,183,63,2,64,159,34, -20,100,159,34,16,1,20,24,2,1,16,0,83,158,40,20,97,114,66,35,37, -114,53,114,115,2,2,10,10,10,35,80,158,34,34,20,100,159,34,16,1,30, -2,2,2,3,193,16,0,11,11,16,1,2,3,35,11,16,25,2,4,2,5, -2,6,2,7,2,8,2,9,2,10,2,1,2,11,2,12,2,13,2,14,2, -15,2,16,2,17,2,18,2,19,2,20,2,21,2,22,2,23,2,24,2,25, -2,26,2,27,16,25,2,28,2,29,2,30,2,30,2,30,2,31,2,32,2, -30,2,28,2,29,2,30,2,30,2,32,72,35,37,115,116,120,109,122,45,98, -111,100,121,2,29,66,35,37,99,111,110,100,2,30,2,29,11,2,30,2,31, -2,32,2,30,2,30,2,29,16,25,2,4,2,5,2,6,2,7,2,8,2, -9,2,10,2,1,2,11,2,12,2,13,2,14,2,15,2,16,2,17,2,18, -2,19,2,20,66,108,101,116,114,101,99,2,22,2,23,2,24,2,25,2,26, -2,27,34,59,93,16,5,93,2,21,87,98,83,158,34,16,2,89,162,35,35, -46,9,223,0,251,80,158,38,46,20,15,159,38,44,47,21,94,2,33,2,34, -248,22,58,198,248,22,84,198,80,159,34,8,30,35,83,158,34,16,2,89,162, -35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,40,47,21,94,2,35, -2,36,248,22,58,198,248,22,84,198,80,159,34,8,29,35,83,158,34,16,2, -89,162,35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,39,47,21,94, -2,37,2,38,248,22,58,198,248,22,84,198,80,159,34,8,28,35,83,158,34, -16,2,89,162,35,35,45,9,223,0,250,80,158,37,46,20,15,159,37,38,47, -21,93,2,39,248,22,58,197,80,159,34,8,27,35,83,158,34,16,2,89,162, -35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,35,47,21,94,2,40, -2,41,248,22,58,198,248,22,84,198,80,159,34,8,26,35,89,162,34,35,59, -9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248,80,158,38,36, -197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80,158,40,38,27, -248,80,158,42,36,196,28,248,80,158,42,39,193,248,22,9,89,162,34,35,46, -9,224,8,1,27,249,22,2,89,162,34,35,51,9,224,4,5,249,80,158,37, -40,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248, -80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43, -36,195,248,80,158,43,41,248,80,158,44,37,196,11,11,194,248,80,158,39,42, -196,28,248,22,63,193,21,94,9,9,248,80,158,37,43,193,11,27,248,80,158, -42,37,196,28,248,80,158,42,39,193,248,80,158,42,42,193,11,11,11,28,192, -27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,94,197,249, -80,158,41,44,200,27,250,22,67,199,198,200,250,80,158,45,45,89,162,34,34, -50,9,224,11,3,252,80,158,40,46,20,15,159,40,34,47,21,95,2,42,2, -43,2,44,248,22,86,198,250,22,2,80,159,43,8,26,35,248,22,86,201,248, -22,58,201,248,22,84,198,21,99,2,21,2,45,94,2,46,2,47,9,94,94, -2,46,2,48,2,47,2,49,2,47,20,15,159,45,36,47,27,28,248,80,158, -37,34,196,249,80,158,38,35,248,80,158,39,36,198,27,248,80,158,40,37,199, -28,248,80,158,40,34,193,28,27,248,80,158,41,36,194,28,249,22,150,8,6, -19,19,103,101,110,101,114,97,116,101,95,116,101,109,112,95,110,97,109,101,115, -248,22,153,3,195,9,11,27,248,80,158,41,37,194,28,248,80,158,41,34,193, -28,248,80,158,41,41,248,80,158,42,36,194,27,248,80,158,42,37,194,28,248, -80,158,42,34,193,249,80,158,43,38,27,248,80,158,45,36,196,28,248,80,158, -45,39,193,248,22,65,248,80,158,46,42,194,11,27,248,80,158,45,37,196,28, -248,80,158,45,34,193,249,80,158,46,38,27,248,80,158,48,36,196,28,248,80, -158,48,39,193,248,22,9,89,162,34,35,46,9,224,14,1,27,249,22,2,89, -162,34,35,51,9,224,4,5,249,80,158,37,40,28,248,80,158,38,34,197,249, -80,158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200,28,248,80,158, -41,34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158,43,41,248,80, -158,44,37,196,11,11,194,248,80,158,39,42,196,28,248,22,63,193,21,94,9, -9,248,80,158,37,43,193,11,27,248,80,158,48,37,196,28,248,80,158,48,39, -193,248,80,158,48,42,193,11,11,11,11,11,11,11,11,28,192,27,248,22,58, -194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,248,22,95,198, -249,80,158,43,44,202,27,251,22,67,200,199,202,201,250,80,158,47,45,89,162, -34,34,52,9,224,13,3,252,80,158,40,46,20,15,159,40,37,47,21,95,2, -50,2,51,2,52,249,22,2,80,159,42,8,27,35,248,22,94,200,250,22,2, -80,159,43,8,28,35,248,22,93,201,248,22,58,201,249,22,71,250,22,2,80, -159,45,8,29,35,248,22,94,203,248,22,93,203,250,80,158,45,46,20,15,159, -45,41,47,21,93,2,53,248,22,84,203,21,95,2,27,94,94,2,46,2,3, -2,47,97,2,27,94,94,2,54,2,48,2,47,95,2,8,2,46,2,54,2, -47,96,2,27,9,2,49,2,47,20,15,159,47,42,47,27,28,248,80,158,38, -34,197,249,80,158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200,28, -248,80,158,41,34,193,28,27,248,80,158,42,36,194,28,249,22,150,8,6,19, -19,103,101,110,101,114,97,116,101,95,116,101,109,112,95,110,97,109,101,115,248, -22,153,3,195,9,11,27,248,80,158,42,37,194,28,248,80,158,42,34,193,249, -80,158,43,38,27,248,80,158,45,36,196,28,248,80,158,45,34,193,249,80,158, -46,35,248,80,158,47,36,195,27,248,80,158,48,37,196,28,248,80,158,48,39, -193,248,22,65,248,80,158,49,42,194,11,11,27,248,80,158,45,37,196,28,248, -80,158,45,34,193,249,80,158,46,38,27,248,80,158,48,36,196,28,248,80,158, -48,39,193,248,22,65,248,80,158,49,42,194,11,27,248,80,158,48,37,196,28, -248,80,158,48,34,193,249,80,158,49,38,27,248,80,158,51,36,196,28,248,80, -158,51,39,193,248,22,9,89,162,34,35,46,9,224,17,1,27,249,22,2,89, -162,34,35,51,9,224,4,5,249,80,158,37,40,28,248,80,158,38,34,197,249, -80,158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200,28,248,80,158, -41,34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158,43,41,248,80, -158,44,37,196,11,11,194,248,80,158,39,42,196,28,248,22,63,193,21,94,9, -9,248,80,158,37,43,193,11,27,248,80,158,51,37,196,28,248,80,158,51,39, -193,248,80,158,51,42,193,11,11,11,11,11,11,11,28,192,27,248,22,58,194, -27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,249,22,76,199,38, -27,249,22,76,200,39,27,249,22,75,201,40,249,80,158,46,44,205,27,252,22, -67,203,201,204,200,202,250,80,158,50,45,89,162,34,34,51,9,224,16,3,253, -80,158,41,46,20,15,159,41,43,47,21,96,2,55,2,56,2,57,2,58,248, -22,93,199,248,22,58,199,250,22,2,80,159,44,8,30,35,248,22,95,202,248, -22,84,202,248,22,96,199,21,99,2,21,2,59,94,2,60,2,47,95,2,61, -2,62,2,47,94,94,2,46,2,48,2,47,2,49,2,47,20,15,159,50,45, -47,250,22,177,8,11,6,10,10,98,97,100,32,115,121,110,116,97,120,199,34, -20,100,159,39,16,13,30,2,63,69,115,116,120,45,112,97,105,114,63,11,30, -2,63,67,99,111,110,115,47,35,102,1,30,2,63,67,115,116,120,45,99,97, -114,5,30,2,63,67,115,116,120,45,99,100,114,6,30,2,63,69,97,112,112, -101,110,100,47,35,102,0,30,2,63,69,115,116,120,45,108,105,115,116,63,8, -30,2,63,73,115,116,120,45,99,104,101,99,107,47,101,115,99,7,30,2,63, -71,115,116,120,45,110,117,108,108,47,35,102,9,30,2,63,69,115,116,120,45, -62,108,105,115,116,4,30,2,63,70,115,116,120,45,114,111,116,97,116,101,12, -30,68,35,37,115,116,120,108,111,99,68,114,101,108,111,99,97,116,101,0,30, -2,64,2,65,1,30,2,64,2,66,0,16,12,33,85,33,86,33,87,33,89, -33,90,33,91,33,92,33,93,33,94,33,96,33,97,33,98,11,93,83,158,34, -16,2,91,159,35,10,90,161,35,34,10,207,207,80,159,34,34,35,93,2,67, -93,2,67,0}; - EVAL_ONE_SIZED_STR((char *)expr, 3636); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,100,0,0,0,1,0,0,6,0,9,0,19, +0,27,0,32,0,39,0,44,0,50,0,68,0,79,0,93,0,99,0,106,0, +109,0,114,0,117,0,121,0,133,0,141,0,158,0,161,0,175,0,179,0,185, +0,196,0,202,0,207,0,216,0,228,0,237,0,251,0,12,1,19,1,26,1, +33,1,40,1,47,1,54,1,61,1,68,1,75,1,82,1,89,1,96,1,118, +1,123,1,127,1,133,1,138,1,145,1,152,1,159,1,166,1,172,1,179,1, +186,1,193,1,200,1,222,1,224,1,232,1,237,1,243,1,253,1,19,2,45, +2,48,2,57,2,67,2,77,2,79,2,89,2,99,2,102,2,117,2,119,2, +128,2,138,2,148,2,158,2,168,2,174,2,186,2,206,2,13,3,30,3,40, +3,73,3,149,3,166,3,176,3,186,3,198,3,205,4,230,4,76,5,97,5, +107,5,140,5,0,0,134,13,0,0,65,98,101,103,105,110,29,11,11,69,117, +110,100,101,102,105,110,101,100,67,35,37,100,97,116,117,109,64,99,111,110,100, +66,108,97,109,98,100,97,64,115,101,116,33,65,35,37,116,111,112,77,35,37, +116,111,112,45,105,110,116,101,114,97,99,116,105,111,110,70,113,117,97,115,105, +113,117,111,116,101,73,100,101,102,105,110,101,45,115,121,110,116,97,120,65,113, +117,111,116,101,66,100,101,102,105,110,101,62,105,102,64,108,101,116,42,62,111, +114,63,97,110,100,71,114,53,114,115,58,108,101,116,114,101,99,67,117,110,113, +117,111,116,101,76,117,110,113,117,111,116,101,45,115,112,108,105,99,105,110,103, +62,100,111,73,108,101,116,114,101,99,45,115,121,110,116,97,120,63,108,101,116, +65,100,101,108,97,121,70,108,101,116,45,115,121,110,116,97,120,65,35,37,97, +112,112,64,99,97,115,101,68,35,37,107,101,114,110,101,108,71,35,37,113,113, +45,97,110,100,45,111,114,68,35,37,100,101,102,105,110,101,73,35,37,109,111, +114,101,45,115,99,104,101,109,101,76,35,37,115,116,120,99,97,115,101,45,115, +99,104,101,109,101,3,1,4,103,52,57,52,3,1,4,103,52,57,51,3,1, +4,103,52,56,56,3,1,4,103,52,56,55,3,1,4,103,52,56,53,3,1, +4,103,52,56,52,3,1,4,103,52,56,51,3,1,4,103,52,55,57,3,1, +4,103,52,55,56,3,1,4,103,52,56,50,3,1,4,103,52,56,49,3,1, +4,103,52,56,48,6,19,19,103,101,110,101,114,97,116,101,95,116,101,109,112, +95,110,97,109,101,115,64,118,97,114,49,63,46,46,46,65,105,110,105,116,49, +64,98,111,100,121,3,1,4,103,52,57,49,3,1,4,103,52,57,48,3,1, +4,103,52,56,57,3,1,4,103,52,56,54,65,116,101,109,112,49,3,1,4, +103,52,57,55,3,1,4,103,52,57,50,3,1,4,103,52,57,54,3,1,4, +103,52,57,53,6,19,19,103,101,110,101,114,97,116,101,95,116,101,109,112,95, +110,97,109,101,115,61,121,67,110,101,119,116,101,109,112,64,116,101,109,112,65, +35,37,115,116,120,69,35,37,115,116,120,99,97,115,101,1,20,99,97,116,99, +104,45,101,108,108,105,112,115,105,115,45,101,114,114,111,114,1,24,97,112,112, +108,121,45,112,97,116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101, +29,11,11,68,109,122,115,99,104,101,109,101,3,1,7,101,110,118,50,52,50, +54,3,1,7,101,110,118,50,52,50,55,61,114,3,1,7,101,110,118,50,52, +53,53,3,1,7,101,110,118,50,52,53,54,29,11,11,74,35,37,115,109,97, +108,108,45,115,99,104,101,109,101,61,120,68,104,101,114,101,45,115,116,120,3, +1,7,101,110,118,50,57,55,53,3,1,7,101,110,118,50,52,54,56,3,1, +7,101,110,118,50,52,57,50,3,1,7,101,110,118,50,52,57,51,95,8,193, +11,16,0,97,10,35,11,93,159,2,68,9,11,16,0,97,10,34,11,93,159, +2,68,9,11,16,4,2,18,2,2,2,3,2,2,98,13,16,4,34,2,67, +2,2,11,8,84,8,83,8,82,16,8,11,11,3,1,4,103,52,55,53,3, +1,4,103,52,55,54,3,1,4,103,52,55,55,2,69,2,69,2,69,16,8, +11,11,2,46,2,48,2,49,2,70,2,70,2,70,18,158,163,10,2,18,2, +45,2,42,9,2,43,2,44,8,85,18,158,95,10,2,40,2,41,8,85,18, +16,2,95,2,47,93,8,166,32,16,4,11,11,2,71,3,1,7,101,110,118, +50,52,51,55,95,9,8,166,32,2,64,98,13,16,4,34,2,67,2,2,11, +8,84,8,83,8,82,16,10,11,11,3,1,4,103,52,55,48,3,1,4,103, +52,55,49,3,1,4,103,52,55,50,3,1,4,103,52,55,51,2,72,2,72, +2,72,2,72,16,10,11,11,2,54,2,46,2,48,2,49,2,73,2,73,2, +73,2,73,18,158,96,10,2,23,2,50,159,2,23,2,51,2,52,8,89,18, +158,95,10,2,39,2,3,8,89,18,158,95,10,2,37,2,38,8,89,18,158, +96,10,2,7,2,35,2,36,8,89,18,16,2,104,93,158,160,10,2,23,9, +2,53,8,89,13,16,4,34,29,11,11,2,74,11,97,10,34,11,95,159,68, +35,37,112,97,114,97,109,122,9,11,159,2,75,9,11,159,2,63,9,11,16, +14,1,26,100,97,116,117,109,45,62,115,121,110,116,97,120,45,111,98,106,101, +99,116,47,115,104,97,112,101,2,74,66,115,121,110,116,97,120,2,74,73,115, +121,110,116,97,120,45,99,97,115,101,42,42,2,74,2,65,2,74,78,112,97, +116,116,101,114,110,45,115,117,98,115,116,105,116,117,116,101,2,74,2,66,2, +74,75,115,117,98,115,116,105,116,117,116,101,45,115,116,111,112,2,74,97,10, +35,11,95,159,64,35,37,115,99,9,11,159,2,75,9,11,159,2,63,9,11, +16,0,95,8,193,11,16,0,16,4,11,11,2,76,3,1,7,101,110,118,50, +57,55,51,16,4,11,11,2,77,2,78,16,4,11,11,2,77,2,78,16,4, +11,11,2,77,3,1,7,101,110,118,50,57,55,55,13,16,4,35,2,74,2, +64,11,93,8,174,32,16,4,11,11,2,71,2,79,95,9,8,174,32,2,64, +18,16,2,95,2,47,93,8,174,32,16,4,11,11,2,71,2,79,95,9,8, +174,32,2,64,98,13,16,4,34,2,67,2,2,11,8,84,8,83,8,82,16, +14,11,11,3,1,4,103,52,54,51,3,1,4,103,52,54,52,3,1,4,103, +52,54,53,3,1,4,103,52,54,54,3,1,4,103,52,54,55,3,1,4,103, +52,54,56,2,80,2,80,2,80,2,80,2,80,2,80,16,14,11,11,2,76, +2,60,2,62,2,46,2,48,2,49,2,81,2,81,2,81,2,81,2,81,2, +81,18,158,163,10,2,18,2,59,2,55,158,2,61,2,56,2,57,2,58,8, +96,18,158,95,10,2,33,2,34,8,96,18,16,2,95,2,47,93,8,186,32, +16,4,11,11,2,71,3,1,7,101,110,118,50,53,48,57,95,9,8,186,32, +2,64,159,34,20,100,159,34,16,1,20,24,2,1,16,0,83,158,40,20,97, +114,66,35,37,114,53,114,115,2,2,10,10,10,35,80,158,34,34,20,100,159, +34,16,1,30,2,2,2,3,193,16,0,11,11,16,1,2,3,35,11,16,25, +2,4,2,5,2,6,2,7,2,8,2,1,2,9,2,10,2,11,2,12,2, +13,2,14,2,15,2,16,2,17,2,18,2,19,2,20,2,21,2,22,2,23, +2,24,2,25,2,26,2,27,16,25,2,28,66,35,37,99,111,110,100,2,28, +2,28,2,28,2,28,72,35,37,115,116,120,109,122,45,98,111,100,121,2,29, +2,30,2,28,2,30,2,28,2,29,2,29,2,29,11,2,28,2,28,2,31, +2,32,2,29,2,31,2,32,2,28,2,31,16,25,2,4,2,5,2,6,2, +7,2,8,2,1,2,9,2,10,2,11,2,12,2,13,2,14,2,15,2,16, +2,17,66,108,101,116,114,101,99,2,19,2,20,2,21,2,22,2,23,2,24, +2,25,2,26,2,27,34,59,93,16,5,93,2,18,87,98,83,158,34,16,2, +89,162,35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,44,47,21,94, +2,33,2,34,248,22,58,198,248,22,84,198,80,159,34,8,30,35,83,158,34, +16,2,89,162,35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,40,47, +21,94,2,35,2,36,248,22,58,198,248,22,84,198,80,159,34,8,29,35,83, +158,34,16,2,89,162,35,35,46,9,223,0,251,80,158,38,46,20,15,159,38, +39,47,21,94,2,37,2,38,248,22,58,198,248,22,84,198,80,159,34,8,28, +35,83,158,34,16,2,89,162,35,35,45,9,223,0,250,80,158,37,46,20,15, +159,37,38,47,21,93,2,39,248,22,58,197,80,159,34,8,27,35,83,158,34, +16,2,89,162,35,35,46,9,223,0,251,80,158,38,46,20,15,159,38,35,47, +21,94,2,40,2,41,248,22,58,198,248,22,84,198,80,159,34,8,26,35,89, +162,34,35,59,9,223,0,27,28,248,80,158,36,34,195,249,80,158,37,35,248, +80,158,38,36,197,27,248,80,158,39,37,198,28,248,80,158,39,34,193,249,80, +158,40,38,27,248,80,158,42,36,196,28,248,80,158,42,39,193,248,22,9,89, +162,34,35,46,9,224,8,1,27,249,22,2,89,162,34,35,51,9,224,4,5, +249,80,158,37,40,28,248,80,158,38,34,197,249,80,158,39,35,248,80,158,40, +36,199,27,248,80,158,41,37,200,28,248,80,158,41,34,193,249,80,158,42,35, +248,80,158,43,36,195,248,80,158,43,41,248,80,158,44,37,196,11,11,194,248, +80,158,39,42,196,28,248,22,63,193,21,94,9,9,248,80,158,37,43,193,11, +27,248,80,158,42,37,196,28,248,80,158,42,39,193,248,80,158,42,42,193,11, +11,11,28,192,27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248, +22,94,197,249,80,158,41,44,200,27,250,22,67,198,199,200,250,80,158,45,45, +89,162,34,34,50,9,224,11,3,252,80,158,40,46,20,15,159,40,34,47,21, +95,2,42,2,43,2,44,248,22,86,198,250,22,2,80,159,43,8,26,35,248, +22,86,201,248,22,84,201,248,22,58,198,21,99,2,18,2,45,94,2,46,2, +47,9,94,94,2,46,2,48,2,47,2,49,2,47,20,15,159,45,36,47,27, +28,248,80,158,37,34,196,249,80,158,38,35,248,80,158,39,36,198,27,248,80, +158,40,37,199,28,248,80,158,40,34,193,28,27,248,80,158,41,36,194,28,249, +22,151,8,6,19,19,103,101,110,101,114,97,116,101,95,116,101,109,112,95,110, +97,109,101,115,248,22,153,3,195,9,11,27,248,80,158,41,37,194,28,248,80, +158,41,34,193,28,248,80,158,41,41,248,80,158,42,36,194,27,248,80,158,42, +37,194,28,248,80,158,42,34,193,249,80,158,43,38,27,248,80,158,45,36,196, +28,248,80,158,45,39,193,248,22,65,248,80,158,46,42,194,11,27,248,80,158, +45,37,196,28,248,80,158,45,34,193,249,80,158,46,38,27,248,80,158,48,36, +196,28,248,80,158,48,39,193,248,22,9,89,162,34,35,46,9,224,14,1,27, +249,22,2,89,162,34,35,51,9,224,4,5,249,80,158,37,40,28,248,80,158, +38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200, +28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158, +43,41,248,80,158,44,37,196,11,11,194,248,80,158,39,42,196,28,248,22,63, +193,21,94,9,9,248,80,158,37,43,193,11,27,248,80,158,48,37,196,28,248, +80,158,48,39,193,248,80,158,48,42,193,11,11,11,11,11,11,11,11,28,192, +27,248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27, +248,22,95,198,249,80,158,43,44,202,27,251,22,67,199,200,202,201,250,80,158, +47,45,89,162,34,34,52,9,224,13,3,252,80,158,40,46,20,15,159,40,37, +47,21,95,2,50,2,51,2,52,249,22,2,80,159,42,8,27,35,248,22,94, +200,250,22,2,80,159,43,8,28,35,248,22,93,201,248,22,84,201,249,22,71, +250,22,2,80,159,45,8,29,35,248,22,94,203,248,22,93,203,250,80,158,45, +46,20,15,159,45,41,47,21,93,2,53,248,22,58,203,21,95,2,23,94,94, +2,46,2,3,2,47,97,2,23,94,94,2,54,2,48,2,47,95,2,7,2, +46,2,54,2,47,96,2,23,9,2,49,2,47,20,15,159,47,42,47,27,28, +248,80,158,38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248,80,158, +41,37,200,28,248,80,158,41,34,193,28,27,248,80,158,42,36,194,28,249,22, +151,8,6,19,19,103,101,110,101,114,97,116,101,95,116,101,109,112,95,110,97, +109,101,115,248,22,153,3,195,9,11,27,248,80,158,42,37,194,28,248,80,158, +42,34,193,249,80,158,43,38,27,248,80,158,45,36,196,28,248,80,158,45,34, +193,249,80,158,46,35,248,80,158,47,36,195,27,248,80,158,48,37,196,28,248, +80,158,48,39,193,248,22,65,248,80,158,49,42,194,11,11,27,248,80,158,45, +37,196,28,248,80,158,45,34,193,249,80,158,46,38,27,248,80,158,48,36,196, +28,248,80,158,48,39,193,248,22,65,248,80,158,49,42,194,11,27,248,80,158, +48,37,196,28,248,80,158,48,34,193,249,80,158,49,38,27,248,80,158,51,36, +196,28,248,80,158,51,39,193,248,22,9,89,162,34,35,46,9,224,17,1,27, +249,22,2,89,162,34,35,51,9,224,4,5,249,80,158,37,40,28,248,80,158, +38,34,197,249,80,158,39,35,248,80,158,40,36,199,27,248,80,158,41,37,200, +28,248,80,158,41,34,193,249,80,158,42,35,248,80,158,43,36,195,248,80,158, +43,41,248,80,158,44,37,196,11,11,194,248,80,158,39,42,196,28,248,22,63, +193,21,94,9,9,248,80,158,37,43,193,11,27,248,80,158,51,37,196,28,248, +80,158,51,39,193,248,80,158,51,42,193,11,11,11,11,11,11,11,28,192,27, +248,22,58,194,27,248,22,84,195,27,248,22,93,196,27,248,22,96,197,27,249, +22,76,199,38,27,249,22,76,200,39,27,249,22,75,201,40,249,80,158,46,44, +205,27,252,22,67,201,202,200,204,203,250,80,158,50,45,89,162,34,34,51,9, +224,16,3,253,80,158,41,46,20,15,159,41,43,47,21,96,2,55,2,56,2, +57,2,58,248,22,96,199,248,22,95,199,250,22,2,80,159,44,8,30,35,248, +22,84,202,248,22,58,202,248,22,93,199,21,99,2,18,2,59,94,2,60,2, +47,95,2,61,2,62,2,47,94,94,2,46,2,48,2,47,2,49,2,47,20, +15,159,50,45,47,250,22,178,8,11,6,10,10,98,97,100,32,115,121,110,116, +97,120,199,34,20,100,159,39,16,13,30,2,63,69,115,116,120,45,112,97,105, +114,63,11,30,2,63,67,99,111,110,115,47,35,102,1,30,2,63,67,115,116, +120,45,99,97,114,5,30,2,63,67,115,116,120,45,99,100,114,6,30,2,63, +69,97,112,112,101,110,100,47,35,102,0,30,2,63,69,115,116,120,45,108,105, +115,116,63,8,30,2,63,73,115,116,120,45,99,104,101,99,107,47,101,115,99, +7,30,2,63,71,115,116,120,45,110,117,108,108,47,35,102,9,30,2,63,69, +115,116,120,45,62,108,105,115,116,4,30,2,63,70,115,116,120,45,114,111,116, +97,116,101,12,30,68,35,37,115,116,120,108,111,99,68,114,101,108,111,99,97, +116,101,0,30,2,64,2,65,1,30,2,64,2,66,0,16,12,33,86,33,87, +33,88,33,90,33,91,33,92,33,93,33,94,33,95,33,97,33,98,33,99,11, +93,83,158,34,16,2,91,159,35,10,90,161,35,34,10,207,207,80,159,34,34, +35,93,2,68,93,2,68,0}; + EVAL_ONE_SIZED_STR((char *)expr, 3682); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,2,0,0,0,1,0,0,3,0,0,0,81,0, -0,0,94,10,11,159,34,20,100,159,34,16,1,20,24,65,98,101,103,105,110, -16,0,83,160,41,80,158,34,34,34,18,158,95,10,67,114,101,113,117,105,114, -101,95,64,111,110,108,121,68,109,122,115,99,104,101,109,101,1,22,110,97,109, -101,115,112,97,99,101,45,114,101,113,117,105,114,101,47,99,111,112,121,35,0}; - EVAL_ONE_SIZED_STR((char *)expr, 104); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,2,0,0,0,1,0,0,3,0,0,0,81, +0,0,0,94,10,11,159,34,20,100,159,34,16,1,20,24,65,98,101,103,105, +110,16,0,83,160,41,80,158,34,34,34,18,158,95,10,67,114,101,113,117,105, +114,101,95,64,111,110,108,121,68,109,122,115,99,104,101,109,101,1,22,110,97, +109,101,115,112,97,99,101,45,114,101,113,117,105,114,101,47,99,111,112,121,35, +0}; + EVAL_ONE_SIZED_STR((char *)expr, 105); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,3,0,0,0,1,0,0,9,0,12,0,0,0, -75,0,0,0,68,109,122,115,99,104,101,109,101,94,10,11,159,35,20,100,159, -34,16,1,20,24,65,98,101,103,105,110,16,0,83,158,45,87,94,248,22,184, -3,2,1,83,160,41,80,158,34,34,35,18,158,95,10,78,114,101,113,117,105, -114,101,45,102,111,114,45,115,121,110,116,97,120,2,1,36,0}; - EVAL_ONE_SIZED_STR((char *)expr, 100); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,3,0,0,0,1,0,0,9,0,12,0,0, +0,75,0,0,0,68,109,122,115,99,104,101,109,101,94,10,11,159,35,20,100, +159,34,16,1,20,24,65,98,101,103,105,110,16,0,83,158,45,87,94,248,22, +184,3,2,1,83,160,41,80,158,34,34,35,18,158,95,10,78,114,101,113,117, +105,114,101,45,102,111,114,45,115,121,110,116,97,120,2,1,36,0}; + EVAL_ONE_SIZED_STR((char *)expr, 101); } { - static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,5,51,54,57,46,57,1,0,0,0,1,0,0,0,0,66,0,0,0, -159,38,20,100,159,34,16,0,16,0,248,22,176,3,248,249,22,178,3,66,35, -37,109,105,115,99,1,34,109,97,107,101,45,115,116,97,110,100,97,114,100,45, -109,111,100,117,108,101,45,110,97,109,101,45,114,101,115,111,108,118,101,114,247, -22,161,11,0}; - EVAL_ONE_SIZED_STR((char *)expr, 87); + static MZCOMPILED_STRING_FAR unsigned char expr[] = {35,126,6,51,54,57,46,49,48,1,0,0,0,1,0,0,0,0,66,0,0, +0,159,38,20,100,159,34,16,0,16,0,248,22,176,3,248,249,22,178,3,66, +35,37,109,105,115,99,1,34,109,97,107,101,45,115,116,97,110,100,97,114,100, +45,109,111,100,117,108,101,45,110,97,109,101,45,114,101,115,111,108,118,101,114, +247,22,162,11,0}; + EVAL_ONE_SIZED_STR((char *)expr, 88); } diff --git a/src/mzscheme/src/module.c b/src/mzscheme/src/module.c index 492745d729..986349bf1a 100644 --- a/src/mzscheme/src/module.c +++ b/src/mzscheme/src/module.c @@ -50,6 +50,7 @@ static Scheme_Object *module_compiled_exports(int argc, Scheme_Object *argv[]); static Scheme_Object *module_to_namespace(int argc, Scheme_Object *argv[]); static Scheme_Object *module_path_index_p(int argc, Scheme_Object *argv[]); +static Scheme_Object *module_path_index_resolve(int argc, Scheme_Object *argv[]); static Scheme_Object *module_path_index_split(int argc, Scheme_Object *argv[]); static Scheme_Object *module_path_index_join(int argc, Scheme_Object *argv[]); @@ -348,6 +349,11 @@ void scheme_init_module(Scheme_Env *env) "module-path-index?", 1, 1, 1), env); + scheme_add_global_constant("module-path-index-resolve", + scheme_make_prim_w_arity(module_path_index_resolve, + "module-path-index-resolve", + 1, 1), + env); scheme_add_global_constant("module-path-index-split", scheme_make_prim_w_arity2(module_path_index_split, "module-path-index-split", @@ -1681,6 +1687,14 @@ static Scheme_Object *module_path_index_p(int argc, Scheme_Object *argv[]) : scheme_false); } +static Scheme_Object *module_path_index_resolve(int argc, Scheme_Object *argv[]) +{ + if (!SAME_TYPE(SCHEME_TYPE(argv[0]), scheme_module_index_type)) + scheme_wrong_type("module-path-index-resolve", "module-path-index", 0, argc, argv); + + return scheme_module_resolve(argv[0], 0); +} + static Scheme_Object *module_path_index_split(int argc, Scheme_Object *argv[]) { Scheme_Modidx *modidx; diff --git a/src/mzscheme/src/schminc.h b/src/mzscheme/src/schminc.h index 75ec506e73..07a6c63afd 100644 --- a/src/mzscheme/src/schminc.h +++ b/src/mzscheme/src/schminc.h @@ -13,7 +13,7 @@ #define USE_COMPILED_STARTUP 1 -#define EXPECTED_PRIM_COUNT 892 +#define EXPECTED_PRIM_COUNT 893 #ifdef MZSCHEME_SOMETHING_OMITTED # undef USE_COMPILED_STARTUP diff --git a/src/mzscheme/src/schvers.h b/src/mzscheme/src/schvers.h index fe412d6a0f..0c73342fc2 100644 --- a/src/mzscheme/src/schvers.h +++ b/src/mzscheme/src/schvers.h @@ -9,6 +9,6 @@ #define MZSCHEME_VERSION_MAJOR 369 -#define MZSCHEME_VERSION_MINOR 9 +#define MZSCHEME_VERSION_MINOR 10 -#define MZSCHEME_VERSION "369.9" _MZ_SPECIAL_TAG +#define MZSCHEME_VERSION "369.10" _MZ_SPECIAL_TAG diff --git a/src/mzscheme/src/startup.inc b/src/mzscheme/src/startup.inc index d3a9ef704d..1e51afd7aa 100644 --- a/src/mzscheme/src/startup.inc +++ b/src/mzscheme/src/startup.inc @@ -2668,6 +2668,14 @@ "(let()" " expr1" " expr ...))))))))" +"(define-syntax parameterize*" +"(syntax-rules()" +"((_() body1 body ...)" +"(let() body1 body ...))" +"((_((lhs1 rhs1)(lhs rhs) ...) body1 body ...)" +"(parameterize((lhs1 rhs1))" +"(parameterize*((lhs rhs) ...)" +" body1 body ...)))))" "(define(current-parameterization)" "(extend-parameterization(continuation-mark-set-first #f parameterization-key)))" "(define(call-with-parameterization paramz thunk)" @@ -2855,7 +2863,7 @@ " (printf \"cpu time: ~s real time: ~s gc time: ~s~n\" cpu user gc)" "(apply values v)))))))" "(provide case do delay force promise?" -" parameterize current-parameterization call-with-parameterization" +" parameterize parameterize* current-parameterization call-with-parameterization" " parameterize-break current-break-parameterization call-with-break-parameterization" " with-handlers with-handlers* call-with-exception-handler" " set!-values" @@ -3294,7 +3302,7 @@ "((path? s) " "(if(absolute-path? s)" " s" -" (list \"(a path must be absolute)\")))" +" (list \" (a path must be absolute)\")))" "((or(not(pair? s))" "(not(list? s)))" " #f)" diff --git a/src/mzscheme/src/startup.ss b/src/mzscheme/src/startup.ss index 01a40524f4..364e8a29d0 100644 --- a/src/mzscheme/src/startup.ss +++ b/src/mzscheme/src/startup.ss @@ -3069,6 +3069,15 @@ expr1 expr ...))))]))) + (define-syntax parameterize* + (syntax-rules () + [(_ () body1 body ...) + (let () body1 body ...)] + [(_ ([lhs1 rhs1] [lhs rhs] ...) body1 body ...) + (parameterize ([lhs1 rhs1]) + (parameterize* ([lhs rhs] ...) + body1 body ...))])) + (define (current-parameterization) (extend-parameterization (continuation-mark-set-first #f parameterization-key))) @@ -3288,7 +3297,7 @@ (apply values v)))]))) (provide case do delay force promise? - parameterize current-parameterization call-with-parameterization + parameterize parameterize* current-parameterization call-with-parameterization parameterize-break current-break-parameterization call-with-break-parameterization with-handlers with-handlers* call-with-exception-handler set!-values @@ -3770,7 +3779,7 @@ [(path? s) (if (absolute-path? s) s - (list "(a path must be absolute)"))] + (list " (a path must be absolute)"))] [(or (not (pair? s)) (not (list? s))) #f] diff --git a/src/mzscheme/src/stxobj.c b/src/mzscheme/src/stxobj.c index 8931ef4b56..20dc4d4f06 100644 --- a/src/mzscheme/src/stxobj.c +++ b/src/mzscheme/src/stxobj.c @@ -3371,15 +3371,19 @@ Scheme_Object *scheme_stx_source_module(Scheme_Object *stx, int resolve) src = SCHEME_VEC_ELS(vec)[1]; dest = SCHEME_VEC_ELS(vec)[2]; - if (!chain_from) { - srcmod = dest; - } else if (!SAME_OBJ(chain_from, dest)) { - srcmod = scheme_modidx_shift(dest, - chain_from, - srcmod); + /* If src is #f, shift is just for phase; no redirection */ + if (!SCHEME_FALSEP(src)) { + + if (!chain_from) { + srcmod = dest; + } else if (!SAME_OBJ(chain_from, dest)) { + srcmod = scheme_modidx_shift(dest, + chain_from, + srcmod); + } + + chain_from = src; } - - chain_from = src; } WRAP_POS_INC(w); @@ -4185,31 +4189,24 @@ static Scheme_Object *wraps_to_datum(Scheme_Object *w_in, /* chain-specific cache; drop it */ } else { /* box, a phase shift */ - /* Any more rename tables? */ - WRAP_POS l; - WRAP_POS_COPY(l, w); - while (!WRAP_POS_END_P(l)) { - if (SCHEME_RENAMESP(WRAP_POS_FIRST(l))) - break; - WRAP_POS_INC(l); - } - /* If l is the end, don't need the phase shift */ - if (!WRAP_POS_END_P(l)) { - /* Need the phase shift, but drop the export table, if any: */ - Scheme_Object *aa; - aa = SCHEME_BOX_VAL(a); - if (SCHEME_TRUEP(SCHEME_VEC_ELS(aa)[3])) { - a = scheme_make_vector(4, NULL); - SCHEME_VEC_ELS(a)[0] = SCHEME_VEC_ELS(aa)[0]; - SCHEME_VEC_ELS(a)[1] = SCHEME_VEC_ELS(aa)[1]; - SCHEME_VEC_ELS(a)[2] = SCHEME_VEC_ELS(aa)[2]; - SCHEME_VEC_ELS(a)[3] = scheme_false; - a = scheme_box(a); - } - - stack = CONS(a, stack); - stack_size++; + /* We used to drop a phase shift if there are no following + rename tables. However, the phase shift also identifies + the source module, which can be relevant. So, keep the + phase shift. */ + /* Need the phase shift, but drop the export table, if any: */ + Scheme_Object *aa; + aa = SCHEME_BOX_VAL(a); + if (SCHEME_TRUEP(SCHEME_VEC_ELS(aa)[3])) { + a = scheme_make_vector(4, NULL); + SCHEME_VEC_ELS(a)[0] = SCHEME_VEC_ELS(aa)[0]; + SCHEME_VEC_ELS(a)[1] = SCHEME_VEC_ELS(aa)[1]; + SCHEME_VEC_ELS(a)[2] = SCHEME_VEC_ELS(aa)[2]; + SCHEME_VEC_ELS(a)[3] = scheme_false; + a = scheme_box(a); } + + stack = CONS(a, stack); + stack_size++; } }