unix now has an autoconf based make system. currently the new make system only makes parser related files, back end stuff to be added soon. mac and windows makesystems will be checked in next. parser.cpp has been factored into token.*, lexer.*, and parser.* utilities.cpp has been factored into formatter.*, exception.*, mem.*, strings.*,ds.h, stlcfg.h, and algo.h git-svn-id: svn://10.0.0.236/trunk@86568 18797224-902f-48f8-a5cc-f745e15eee43
1467 lines
76 KiB
C++
1467 lines
76 KiB
C++
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
|
*
|
|
* The contents of this file are subject to the Netscape Public
|
|
* License Version 1.1 (the "License"); you may not use this file
|
|
* except in compliance with the License. You may obtain a copy of
|
|
* the License at http://www.mozilla.org/NPL/
|
|
*
|
|
* Software distributed under the License is distributed on an "AS
|
|
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express oqr
|
|
* implied. See the License for the specific language governing
|
|
* rights and limitations under the License.
|
|
*
|
|
* The Original Code is the JavaScript 2 Prototype.
|
|
*
|
|
* The Initial Developer of the Original Code is Netscape
|
|
* Communications Corporation. Portions created by Netscape are
|
|
* Copyright (C) 1998 Netscape Communications Corporation. All
|
|
* Rights Reserved.
|
|
*
|
|
* Contributor(s):
|
|
*
|
|
* Alternatively, the contents of this file may be used under the
|
|
* terms of the GNU Public License (the "GPL"), in which case the
|
|
* provisions of the GPL are applicable instead of those above.
|
|
* If you wish to allow use of your version of this file only
|
|
* under the terms of the GPL and not to allow others to use your
|
|
* version of this file under the NPL, indicate your decision by
|
|
* deleting the provisions above and replace them with the notice
|
|
* and other provisions required by the GPL. If you do not delete
|
|
* the provisions above, a recipient may use your version of this
|
|
* file under either the NPL or the GPL.
|
|
*/
|
|
|
|
#include <algorithm>
|
|
|
|
#include "strings.h"
|
|
|
|
namespace JavaScript
|
|
{
|
|
|
|
//
|
|
// Unicode UTF-16 characters and strings
|
|
//
|
|
|
|
#ifdef _WIN32 // Microsoft VC6 bug: String constructor and append limited to
|
|
// char16 iterators
|
|
// Return a String containing the characters of the null-terminated C string cstr
|
|
// (without the trailing null).
|
|
String
|
|
widenCString(const char *cstr)
|
|
{
|
|
size_t len = strlen(cstr);
|
|
String s(len, uni::null);
|
|
std::transform(cstr, cstr+len, s.begin(), widen);
|
|
return s;
|
|
}
|
|
|
|
|
|
// Widen and append length characters starting at chars to the end of str.
|
|
void
|
|
appendChars(String &str, const char *chars, size_t length)
|
|
{
|
|
String::size_type strLen = str.size();
|
|
str.append(length, uni::null);
|
|
std::transform(chars, chars+length, str.begin()+strLen, widen);
|
|
}
|
|
|
|
|
|
// Widen and insert length characters starting at chars into the given position
|
|
// of str.
|
|
void
|
|
insertChars(String &str, String::size_type pos, const char *chars,
|
|
size_t length)
|
|
{
|
|
str.insert(pos, length, uni::null);
|
|
std::transform(chars, chars+length, str.begin()+pos, widen);
|
|
}
|
|
#endif
|
|
|
|
|
|
// Widen and insert the null-terminated string cstr into the given position of
|
|
// str.
|
|
void
|
|
insertChars(String &str, String::size_type pos, const char *cstr)
|
|
{
|
|
insertChars(str, pos, cstr, strlen(cstr));
|
|
}
|
|
|
|
|
|
// Widen and append the null-terminated string cstr to the end of str.
|
|
// Return str.
|
|
String &
|
|
operator+=(String &str, const char *cstr)
|
|
{
|
|
appendChars(str, cstr, strlen(cstr));
|
|
return str;
|
|
}
|
|
|
|
|
|
// Return the concatenation of str and the null-terminated string cstr.
|
|
String
|
|
operator+(const String &str, const char *cstr)
|
|
{
|
|
return str + widenCString(cstr);
|
|
}
|
|
|
|
|
|
// Return the concatenation of the null-terminated string cstr and str.
|
|
String
|
|
operator+(const char *cstr, const String &str)
|
|
{
|
|
String s = widenCString(cstr);
|
|
s += str;
|
|
return s;
|
|
}
|
|
|
|
|
|
// From java.lang.Character:
|
|
//
|
|
// The character properties are currently encoded into 32 bits in the
|
|
// following manner:
|
|
//
|
|
// 10 bits signed offset used for converting case
|
|
// 1 bit if 1, adding the signed offset converts the character to
|
|
// lowercase
|
|
// 1 bit if 1, subtracting the signed offset converts the character to
|
|
// uppercase
|
|
// 1 bit if 1, character has a titlecase equivalent (possibly itself)
|
|
// 3 bits 0 May not be part of an identifier
|
|
// 1 Format control
|
|
// 2 May start or continue a JS identifier (includes $ and _)
|
|
// 3 May continue a JS identifier
|
|
// 4 Behaves like a white space character (but not line break)
|
|
// 5 Behaves like a line break character
|
|
// 2 bits 0 this character has no numeric property
|
|
// 1 adding the digit offset to the character code and then
|
|
// masking with 0x1F will produce the desired numeric value
|
|
// 2 this character has a "strange" numeric value
|
|
// 3 a JS supradecimal digit: adding the digit offset to the
|
|
// character code, then masking with 0x1F, then adding 10
|
|
// will produce the desired numeric value
|
|
// 5 bits digit offset
|
|
// 4 bits reserved for future use
|
|
// 5 bits character type
|
|
|
|
|
|
// The X table has 1024 entries for a total of 1024 bytes.
|
|
const uint8 CharInfo::x[] = {
|
|
0, 1, 2, 3, 4, 5, 6, 7, // 0x0000
|
|
8, 9, 10, 11, 12, 13, 14, 15, // 0x0200
|
|
16, 17, 18, 19, 20, 21, 22, 23, // 0x0400
|
|
24, 25, 26, 27, 28, 28, 28, 28, // 0x0600
|
|
28, 28, 28, 28, 29, 30, 31, 32, // 0x0800
|
|
33, 34, 35, 36, 37, 38, 39, 40, // 0x0A00
|
|
41, 42, 43, 44, 45, 46, 28, 28, // 0x0C00
|
|
47, 48, 49, 50, 51, 52, 53, 28, // 0x0E00
|
|
28, 28, 54, 55, 56, 57, 58, 59, // 0x1000
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x1200
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x1400
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x1600
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x1800
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x1A00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x1C00
|
|
60, 60, 61, 62, 63, 64, 65, 66, // 0x1E00
|
|
67, 68, 69, 70, 71, 72, 73, 74, // 0x2000
|
|
75, 75, 75, 76, 77, 78, 28, 28, // 0x2200
|
|
79, 80, 81, 82, 83, 83, 84, 85, // 0x2400
|
|
86, 85, 28, 28, 87, 88, 89, 28, // 0x2600
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x2800
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x2A00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x2C00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x2E00
|
|
90, 91, 92, 93, 94, 56, 95, 28, // 0x3000
|
|
96, 97, 98, 99, 83, 100, 83, 101, // 0x3200
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x3400
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x3600
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x3800
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x3A00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x3C00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x3E00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x4000
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x4200
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x4400
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x4600
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x4800
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x4A00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0x4C00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x4E00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5400
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5600
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5800
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5A00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5C00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x5E00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6400
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6600
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6800
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6A00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6C00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x6E00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7400
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7600
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7800
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7A00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7C00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x7E00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8400
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8600
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8800
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8A00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8C00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x8E00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x9000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x9200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x9400
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x9600
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x9800
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x9A00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0x9C00
|
|
56, 56, 56, 56, 56, 56, 102, 28, // 0x9E00
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0xA000
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0xA200
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0xA400
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0xA600
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0xA800
|
|
28, 28, 28, 28, 28, 28, 28, 28, // 0xAA00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xAC00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xAE00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xB000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xB200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xB400
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xB600
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xB800
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xBA00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xBC00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xBE00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xC000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xC200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xC400
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xC600
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xC800
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xCA00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xCC00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xCE00
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xD000
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xD200
|
|
56, 56, 56, 56, 56, 56, 56, 56, // 0xD400
|
|
56, 56, 56, 56, 56, 56, 103, 28, // 0xD600
|
|
104, 104, 104, 104, 104, 104, 104, 104, // 0xD800
|
|
104, 104, 104, 104, 104, 104, 104, 104, // 0xDA00
|
|
104, 104, 104, 104, 104, 104, 104, 104, // 0xDC00
|
|
104, 104, 104, 104, 104, 104, 104, 104, // 0xDE00
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xE000
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xE200
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xE400
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xE600
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xE800
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xEA00
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xEC00
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xEE00
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xF000
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xF200
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xF400
|
|
105, 105, 105, 105, 105, 105, 105, 105, // 0xF600
|
|
105, 105, 105, 105, 56, 56, 56, 56, // 0xF800
|
|
106, 28, 28, 28, 107, 108, 109, 110, // 0xFA00
|
|
56, 56, 56, 56, 111, 112, 113, 114, // 0xFC00
|
|
115, 116, 56, 117, 118, 119, 120, 121 // 0xFE00
|
|
};
|
|
|
|
|
|
// The Y table has 7808 entries for a total of 7808 bytes.
|
|
const uint8 CharInfo::y[] = {
|
|
0, 0, 0, 0, 0, 0, 0, 0, // 0
|
|
0, 1, 14, 1, 1, 14, 0, 0, // 0
|
|
0, 0, 0, 0, 0, 0, 0, 0, // 0
|
|
0, 0, 0, 0, 0, 0, 0, 0, // 0
|
|
2, 3, 3, 3, 4, 3, 3, 3, // 0
|
|
5, 6, 3, 7, 3, 8, 3, 3, // 0
|
|
9, 9, 9, 9, 9, 9, 9, 9, // 0
|
|
9, 9, 3, 3, 7, 7, 7, 3, // 0
|
|
3, 10, 10, 10, 10, 10, 10, 10, // 1
|
|
10, 10, 10, 10, 10, 10, 10, 10, // 1
|
|
10, 10, 10, 10, 10, 10, 10, 10, // 1
|
|
10, 10, 10, 5, 3, 6, 11, 12, // 1
|
|
11, 13, 13, 13, 13, 13, 13, 13, // 1
|
|
13, 13, 13, 13, 13, 13, 13, 13, // 1
|
|
13, 13, 13, 13, 13, 13, 13, 13, // 1
|
|
13, 13, 13, 5, 7, 6, 7, 0, // 1
|
|
0, 0, 0, 0, 0, 0, 0, 0, // 2
|
|
0, 0, 0, 0, 0, 0, 0, 0, // 2
|
|
0, 0, 0, 0, 0, 0, 0, 0, // 2
|
|
0, 0, 0, 0, 0, 0, 0, 0, // 2
|
|
2, 3, 4, 4, 4, 4, 15, 15, // 2
|
|
11, 15, 16, 5, 7, 8, 15, 11, // 2
|
|
15, 7, 17, 17, 11, 16, 15, 3, // 2
|
|
11, 18, 16, 6, 19, 19, 19, 3, // 2
|
|
20, 20, 20, 20, 20, 20, 20, 20, // 3
|
|
20, 20, 20, 20, 20, 20, 20, 20, // 3
|
|
20, 20, 20, 20, 20, 20, 20, 7, // 3
|
|
20, 20, 20, 20, 20, 20, 20, 16, // 3
|
|
21, 21, 21, 21, 21, 21, 21, 21, // 3
|
|
21, 21, 21, 21, 21, 21, 21, 21, // 3
|
|
21, 21, 21, 21, 21, 21, 21, 7, // 3
|
|
21, 21, 21, 21, 21, 21, 21, 22, // 3
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 4
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 4
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 4
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 4
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 4
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 4
|
|
25, 26, 23, 24, 23, 24, 23, 24, // 4
|
|
16, 23, 24, 23, 24, 23, 24, 23, // 4
|
|
24, 23, 24, 23, 24, 23, 24, 23, // 5
|
|
24, 16, 23, 24, 23, 24, 23, 24, // 5
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 5
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 5
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 5
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 5
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 5
|
|
27, 23, 24, 23, 24, 23, 24, 28, // 5
|
|
16, 29, 23, 24, 23, 24, 30, 23, // 6
|
|
24, 31, 31, 23, 24, 16, 32, 32, // 6
|
|
33, 23, 24, 31, 34, 16, 35, 36, // 6
|
|
23, 24, 16, 16, 35, 37, 16, 38, // 6
|
|
23, 24, 23, 24, 23, 24, 38, 23, // 6
|
|
24, 39, 40, 16, 23, 24, 39, 23, // 6
|
|
24, 41, 41, 23, 24, 23, 24, 42, // 6
|
|
23, 24, 16, 40, 23, 24, 40, 40, // 6
|
|
40, 40, 40, 40, 43, 44, 45, 43, // 7
|
|
44, 45, 43, 44, 45, 23, 24, 23, // 7
|
|
24, 23, 24, 23, 24, 23, 24, 23, // 7
|
|
24, 23, 24, 23, 24, 16, 23, 24, // 7
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 7
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 7
|
|
16, 43, 44, 45, 23, 24, 46, 46, // 7
|
|
46, 46, 23, 24, 23, 24, 23, 24, // 7
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 8
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 8
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 8
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 8
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 8
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 8
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 8
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 8
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 9
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 9
|
|
16, 16, 16, 47, 48, 16, 49, 49, // 9
|
|
50, 50, 16, 51, 16, 16, 16, 16, // 9
|
|
49, 16, 16, 52, 16, 16, 16, 16, // 9
|
|
53, 54, 16, 16, 16, 16, 16, 54, // 9
|
|
16, 16, 55, 16, 16, 16, 16, 16, // 9
|
|
16, 16, 16, 16, 16, 16, 16, 16, // 9
|
|
16, 16, 16, 56, 16, 16, 16, 16, // 10
|
|
56, 16, 57, 57, 16, 16, 16, 16, // 10
|
|
16, 16, 58, 16, 16, 16, 16, 16, // 10
|
|
16, 16, 16, 16, 16, 16, 16, 16, // 10
|
|
16, 16, 16, 16, 16, 16, 16, 16, // 10
|
|
16, 46, 46, 46, 46, 46, 46, 46, // 10
|
|
59, 59, 59, 59, 59, 59, 59, 59, // 10
|
|
59, 11, 11, 59, 59, 59, 59, 59, // 10
|
|
59, 59, 11, 11, 11, 11, 11, 11, // 11
|
|
11, 11, 11, 11, 11, 11, 11, 11, // 11
|
|
59, 59, 11, 11, 11, 11, 11, 11, // 11
|
|
11, 11, 11, 11, 11, 11, 11, 46, // 11
|
|
59, 59, 59, 59, 59, 11, 11, 11, // 11
|
|
11, 11, 46, 46, 46, 46, 46, 46, // 11
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 11
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 11
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 12
|
|
60, 60, 60, 60, 60, 60, 46, 46, // 13
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 13
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 13
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 13
|
|
60, 60, 46, 46, 46, 46, 46, 46, // 13
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 13
|
|
46, 46, 46, 46, 3, 3, 46, 46, // 13
|
|
46, 46, 59, 46, 46, 46, 3, 46, // 13
|
|
46, 46, 46, 46, 11, 11, 61, 3, // 14
|
|
62, 62, 62, 46, 63, 46, 64, 64, // 14
|
|
16, 20, 20, 20, 20, 20, 20, 20, // 14
|
|
20, 20, 20, 20, 20, 20, 20, 20, // 14
|
|
20, 20, 46, 20, 20, 20, 20, 20, // 14
|
|
20, 20, 20, 20, 65, 66, 66, 66, // 14
|
|
16, 21, 21, 21, 21, 21, 21, 21, // 14
|
|
21, 21, 21, 21, 21, 21, 21, 21, // 14
|
|
21, 21, 16, 21, 21, 21, 21, 21, // 15
|
|
21, 21, 21, 21, 67, 68, 68, 46, // 15
|
|
69, 70, 38, 38, 38, 71, 72, 46, // 15
|
|
46, 46, 38, 46, 38, 46, 38, 46, // 15
|
|
38, 46, 23, 24, 23, 24, 23, 24, // 15
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 15
|
|
73, 74, 16, 40, 46, 46, 46, 46, // 15
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 15
|
|
46, 75, 75, 75, 75, 75, 75, 75, // 16
|
|
75, 75, 75, 75, 75, 46, 75, 75, // 16
|
|
20, 20, 20, 20, 20, 20, 20, 20, // 16
|
|
20, 20, 20, 20, 20, 20, 20, 20, // 16
|
|
20, 20, 20, 20, 20, 20, 20, 20, // 16
|
|
20, 20, 20, 20, 20, 20, 20, 20, // 16
|
|
21, 21, 21, 21, 21, 21, 21, 21, // 16
|
|
21, 21, 21, 21, 21, 21, 21, 21, // 16
|
|
21, 21, 21, 21, 21, 21, 21, 21, // 17
|
|
21, 21, 21, 21, 21, 21, 21, 21, // 17
|
|
46, 74, 74, 74, 74, 74, 74, 74, // 17
|
|
74, 74, 74, 74, 74, 46, 74, 74, // 17
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 17
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 17
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 17
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 17
|
|
23, 24, 15, 60, 60, 60, 60, 46, // 18
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 18
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 18
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 18
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 18
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 18
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 18
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 18
|
|
40, 23, 24, 23, 24, 46, 46, 23, // 19
|
|
24, 46, 46, 23, 24, 46, 46, 46, // 19
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 19
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 19
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 19
|
|
23, 24, 23, 24, 46, 46, 23, 24, // 19
|
|
23, 24, 23, 24, 23, 24, 46, 46, // 19
|
|
23, 24, 46, 46, 46, 46, 46, 46, // 19
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 20
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 20
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 20
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 20
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 20
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 20
|
|
46, 76, 76, 76, 76, 76, 76, 76, // 20
|
|
76, 76, 76, 76, 76, 76, 76, 76, // 20
|
|
76, 76, 76, 76, 76, 76, 76, 76, // 21
|
|
76, 76, 76, 76, 76, 76, 76, 76, // 21
|
|
76, 76, 76, 76, 76, 76, 76, 46, // 21
|
|
46, 59, 3, 3, 3, 3, 3, 3, // 21
|
|
46, 77, 77, 77, 77, 77, 77, 77, // 21
|
|
77, 77, 77, 77, 77, 77, 77, 77, // 21
|
|
77, 77, 77, 77, 77, 77, 77, 77, // 21
|
|
77, 77, 77, 77, 77, 77, 77, 77, // 21
|
|
77, 77, 77, 77, 77, 77, 77, 16, // 22
|
|
46, 3, 46, 46, 46, 46, 46, 46, // 22
|
|
46, 60, 60, 60, 60, 60, 60, 60, // 22
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 22
|
|
60, 60, 46, 60, 60, 60, 60, 60, // 22
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 22
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 22
|
|
60, 60, 46, 60, 60, 60, 3, 60, // 22
|
|
3, 60, 60, 3, 60, 46, 46, 46, // 23
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 23
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 23
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 23
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 23
|
|
40, 40, 40, 46, 46, 46, 46, 46, // 23
|
|
40, 40, 40, 3, 3, 46, 46, 46, // 23
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 23
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 24
|
|
46, 46, 46, 46, 3, 46, 46, 46, // 24
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 24
|
|
46, 46, 46, 3, 46, 46, 46, 3, // 24
|
|
46, 40, 40, 40, 40, 40, 40, 40, // 24
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 24
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 24
|
|
40, 40, 40, 46, 46, 46, 46, 46, // 24
|
|
59, 40, 40, 40, 40, 40, 40, 40, // 25
|
|
40, 40, 40, 60, 60, 60, 60, 60, // 25
|
|
60, 60, 60, 46, 46, 46, 46, 46, // 25
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 25
|
|
78, 78, 78, 78, 78, 78, 78, 78, // 25
|
|
78, 78, 3, 3, 3, 3, 46, 46, // 25
|
|
60, 40, 40, 40, 40, 40, 40, 40, // 25
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 25
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 26
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 26
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 26
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 26
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 26
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 26
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 26
|
|
46, 46, 40, 40, 40, 40, 40, 46, // 26
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 27
|
|
40, 40, 40, 40, 40, 40, 40, 46, // 27
|
|
40, 40, 40, 40, 3, 40, 60, 60, // 27
|
|
60, 60, 60, 60, 60, 79, 79, 60, // 27
|
|
60, 60, 60, 60, 60, 59, 59, 60, // 27
|
|
60, 15, 60, 60, 60, 60, 46, 46, // 27
|
|
9, 9, 9, 9, 9, 9, 9, 9, // 27
|
|
9, 9, 46, 46, 46, 46, 46, 46, // 27
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 28
|
|
46, 60, 60, 80, 46, 40, 40, 40, // 29
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 29
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 29
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 29
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 29
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 29
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 29
|
|
40, 40, 46, 46, 60, 40, 80, 80, // 29
|
|
80, 60, 60, 60, 60, 60, 60, 60, // 30
|
|
60, 80, 80, 80, 80, 60, 46, 46, // 30
|
|
15, 60, 60, 60, 60, 46, 46, 46, // 30
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 30
|
|
40, 40, 60, 60, 3, 3, 81, 81, // 30
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 30
|
|
3, 46, 46, 46, 46, 46, 46, 46, // 30
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 30
|
|
46, 60, 80, 80, 46, 40, 40, 40, // 31
|
|
40, 40, 40, 40, 40, 46, 46, 40, // 31
|
|
40, 46, 46, 40, 40, 40, 40, 40, // 31
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 31
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 31
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 31
|
|
40, 46, 40, 46, 46, 46, 40, 40, // 31
|
|
40, 40, 46, 46, 60, 46, 80, 80, // 31
|
|
80, 60, 60, 60, 60, 46, 46, 80, // 32
|
|
80, 46, 46, 80, 80, 60, 46, 46, // 32
|
|
46, 46, 46, 46, 46, 46, 46, 80, // 32
|
|
46, 46, 46, 46, 40, 40, 46, 40, // 32
|
|
40, 40, 60, 60, 46, 46, 81, 81, // 32
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 32
|
|
40, 40, 4, 4, 82, 82, 82, 82, // 32
|
|
19, 83, 15, 46, 46, 46, 46, 46, // 32
|
|
46, 46, 60, 46, 46, 40, 40, 40, // 33
|
|
40, 40, 40, 46, 46, 46, 46, 40, // 33
|
|
40, 46, 46, 40, 40, 40, 40, 40, // 33
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 33
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 33
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 33
|
|
40, 46, 40, 40, 46, 40, 40, 46, // 33
|
|
40, 40, 46, 46, 60, 46, 80, 80, // 33
|
|
80, 60, 60, 46, 46, 46, 46, 60, // 34
|
|
60, 46, 46, 60, 60, 60, 46, 46, // 34
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 34
|
|
46, 40, 40, 40, 40, 46, 40, 46, // 34
|
|
46, 46, 46, 46, 46, 46, 81, 81, // 34
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 34
|
|
60, 60, 40, 40, 40, 46, 46, 46, // 34
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 34
|
|
46, 60, 60, 80, 46, 40, 40, 40, // 35
|
|
40, 40, 40, 40, 46, 40, 46, 40, // 35
|
|
40, 40, 46, 40, 40, 40, 40, 40, // 35
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 35
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 35
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 35
|
|
40, 46, 40, 40, 46, 40, 40, 40, // 35
|
|
40, 40, 46, 46, 60, 40, 80, 80, // 35
|
|
80, 60, 60, 60, 60, 60, 46, 60, // 36
|
|
60, 80, 46, 80, 80, 60, 46, 46, // 36
|
|
15, 46, 46, 46, 46, 46, 46, 46, // 36
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 36
|
|
40, 46, 46, 46, 46, 46, 81, 81, // 36
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 36
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 36
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 36
|
|
46, 60, 80, 80, 46, 40, 40, 40, // 37
|
|
40, 40, 40, 40, 40, 46, 46, 40, // 37
|
|
40, 46, 46, 40, 40, 40, 40, 40, // 37
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 37
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 37
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 37
|
|
40, 46, 40, 40, 46, 46, 40, 40, // 37
|
|
40, 40, 46, 46, 60, 40, 80, 60, // 37
|
|
80, 60, 60, 60, 46, 46, 46, 80, // 38
|
|
80, 46, 46, 80, 80, 60, 46, 46, // 38
|
|
46, 46, 46, 46, 46, 46, 60, 80, // 38
|
|
46, 46, 46, 46, 40, 40, 46, 40, // 38
|
|
40, 40, 46, 46, 46, 46, 81, 81, // 38
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 38
|
|
15, 46, 46, 46, 46, 46, 46, 46, // 38
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 38
|
|
46, 46, 60, 80, 46, 40, 40, 40, // 39
|
|
40, 40, 40, 46, 46, 46, 40, 40, // 39
|
|
40, 46, 40, 40, 40, 40, 46, 46, // 39
|
|
46, 40, 40, 46, 40, 46, 40, 40, // 39
|
|
46, 46, 46, 40, 40, 46, 46, 46, // 39
|
|
40, 40, 40, 46, 46, 46, 40, 40, // 39
|
|
40, 40, 40, 40, 40, 40, 46, 40, // 39
|
|
40, 40, 46, 46, 46, 46, 80, 80, // 39
|
|
60, 80, 80, 46, 46, 46, 80, 80, // 40
|
|
80, 46, 80, 80, 80, 60, 46, 46, // 40
|
|
46, 46, 46, 46, 46, 46, 46, 80, // 40
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 40
|
|
46, 46, 46, 46, 46, 46, 46, 81, // 40
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 40
|
|
84, 19, 19, 46, 46, 46, 46, 46, // 40
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 40
|
|
46, 80, 80, 80, 46, 40, 40, 40, // 41
|
|
40, 40, 40, 40, 40, 46, 40, 40, // 41
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 41
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 41
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 41
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 41
|
|
40, 40, 40, 40, 46, 40, 40, 40, // 41
|
|
40, 40, 46, 46, 46, 46, 60, 60, // 41
|
|
60, 80, 80, 80, 80, 46, 60, 60, // 42
|
|
60, 46, 60, 60, 60, 60, 46, 46, // 42
|
|
46, 46, 46, 46, 46, 60, 60, 46, // 42
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 42
|
|
40, 40, 46, 46, 46, 46, 81, 81, // 42
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 42
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 42
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 42
|
|
46, 46, 80, 80, 46, 40, 40, 40, // 43
|
|
40, 40, 40, 40, 40, 46, 40, 40, // 43
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 43
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 43
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 43
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 43
|
|
40, 40, 40, 40, 46, 40, 40, 40, // 43
|
|
40, 40, 46, 46, 46, 46, 80, 60, // 43
|
|
80, 80, 80, 80, 80, 46, 60, 80, // 44
|
|
80, 46, 80, 80, 60, 60, 46, 46, // 44
|
|
46, 46, 46, 46, 46, 80, 80, 46, // 44
|
|
46, 46, 46, 46, 46, 46, 40, 46, // 44
|
|
40, 40, 46, 46, 46, 46, 81, 81, // 44
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 44
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 44
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 44
|
|
46, 46, 80, 80, 46, 40, 40, 40, // 45
|
|
40, 40, 40, 40, 40, 46, 40, 40, // 45
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 45
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 45
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 45
|
|
40, 46, 40, 40, 40, 40, 40, 40, // 45
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 45
|
|
40, 40, 46, 46, 46, 46, 80, 80, // 45
|
|
80, 60, 60, 60, 46, 46, 80, 80, // 46
|
|
80, 46, 80, 80, 80, 60, 46, 46, // 46
|
|
46, 46, 46, 46, 46, 46, 46, 80, // 46
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 46
|
|
40, 40, 46, 46, 46, 46, 81, 81, // 46
|
|
81, 81, 81, 81, 81, 81, 81, 81, // 46
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 46
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 46
|
|
46, 40, 40, 40, 40, 40, 40, 40, // 47
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 47
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 47
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 47
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 47
|
|
40, 40, 40, 40, 40, 40, 40, 3, // 47
|
|
40, 60, 40, 40, 60, 60, 60, 60, // 47
|
|
60, 60, 60, 46, 46, 46, 46, 4, // 47
|
|
40, 40, 40, 40, 40, 40, 59, 60, // 48
|
|
60, 60, 60, 60, 60, 60, 60, 15, // 48
|
|
9, 9, 9, 9, 9, 9, 9, 9, // 48
|
|
9, 9, 3, 3, 46, 46, 46, 46, // 48
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 48
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 48
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 48
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 48
|
|
46, 40, 40, 46, 40, 46, 46, 40, // 49
|
|
40, 46, 40, 46, 46, 40, 46, 46, // 49
|
|
46, 46, 46, 46, 40, 40, 40, 40, // 49
|
|
46, 40, 40, 40, 40, 40, 40, 40, // 49
|
|
46, 40, 40, 40, 46, 40, 46, 40, // 49
|
|
46, 46, 40, 40, 46, 40, 40, 3, // 49
|
|
40, 60, 40, 40, 60, 60, 60, 60, // 49
|
|
60, 60, 46, 60, 60, 40, 46, 46, // 49
|
|
40, 40, 40, 40, 40, 46, 59, 46, // 50
|
|
60, 60, 60, 60, 60, 60, 46, 46, // 50
|
|
9, 9, 9, 9, 9, 9, 9, 9, // 50
|
|
9, 9, 46, 46, 40, 40, 46, 46, // 50
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 50
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 50
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 50
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 50
|
|
15, 15, 15, 15, 3, 3, 3, 3, // 51
|
|
3, 3, 3, 3, 3, 3, 3, 3, // 51
|
|
3, 3, 3, 15, 15, 15, 15, 15, // 51
|
|
60, 60, 15, 15, 15, 15, 15, 15, // 51
|
|
78, 78, 78, 78, 78, 78, 78, 78, // 51
|
|
78, 78, 85, 85, 85, 85, 85, 85, // 51
|
|
85, 85, 85, 85, 15, 60, 15, 60, // 51
|
|
15, 60, 5, 6, 5, 6, 80, 80, // 51
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 52
|
|
46, 40, 40, 40, 40, 40, 40, 40, // 52
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 52
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 52
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 52
|
|
40, 40, 46, 46, 46, 46, 46, 46, // 52
|
|
46, 60, 60, 60, 60, 60, 60, 60, // 52
|
|
60, 60, 60, 60, 60, 60, 60, 80, // 52
|
|
60, 60, 60, 60, 60, 3, 60, 60, // 53
|
|
60, 60, 60, 60, 46, 46, 46, 46, // 53
|
|
60, 60, 60, 60, 60, 60, 46, 60, // 53
|
|
46, 60, 60, 60, 60, 60, 60, 60, // 53
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 53
|
|
60, 60, 60, 60, 60, 60, 46, 46, // 53
|
|
46, 60, 60, 60, 60, 60, 60, 60, // 53
|
|
46, 60, 46, 46, 46, 46, 46, 46, // 53
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 54
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 54
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 54
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 54
|
|
76, 76, 76, 76, 76, 76, 76, 76, // 54
|
|
76, 76, 76, 76, 76, 76, 76, 76, // 54
|
|
76, 76, 76, 76, 76, 76, 76, 76, // 54
|
|
76, 76, 76, 76, 76, 76, 76, 76, // 54
|
|
76, 76, 76, 76, 76, 76, 46, 46, // 55
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 55
|
|
16, 16, 16, 16, 16, 16, 16, 16, // 55
|
|
16, 16, 16, 16, 16, 16, 16, 16, // 55
|
|
16, 16, 16, 16, 16, 16, 16, 16, // 55
|
|
16, 16, 16, 16, 16, 16, 16, 16, // 55
|
|
16, 16, 16, 16, 16, 16, 16, 46, // 55
|
|
46, 46, 46, 3, 46, 46, 46, 46, // 55
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 56
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 57
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 57
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 57
|
|
40, 40, 46, 46, 46, 46, 46, 40, // 57
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 57
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 57
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 57
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 57
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 58
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 58
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 58
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 58
|
|
40, 40, 40, 46, 46, 46, 46, 46, // 58
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 58
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 58
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 58
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 59
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 59
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 59
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 59
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 59
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 59
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 59
|
|
40, 40, 46, 46, 46, 46, 46, 46, // 59
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 60
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 61
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 61
|
|
23, 24, 23, 24, 23, 24, 16, 16, // 61
|
|
16, 16, 16, 16, 46, 46, 46, 46, // 61
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 61
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 61
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 61
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 61
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 62
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 62
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 62
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 62
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 62
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 62
|
|
23, 24, 23, 24, 23, 24, 23, 24, // 62
|
|
23, 24, 46, 46, 46, 46, 46, 46, // 62
|
|
86, 86, 86, 86, 86, 86, 86, 86, // 63
|
|
87, 87, 87, 87, 87, 87, 87, 87, // 63
|
|
86, 86, 86, 86, 86, 86, 46, 46, // 63
|
|
87, 87, 87, 87, 87, 87, 46, 46, // 63
|
|
86, 86, 86, 86, 86, 86, 86, 86, // 63
|
|
87, 87, 87, 87, 87, 87, 87, 87, // 63
|
|
86, 86, 86, 86, 86, 86, 86, 86, // 63
|
|
87, 87, 87, 87, 87, 87, 87, 87, // 63
|
|
86, 86, 86, 86, 86, 86, 46, 46, // 64
|
|
87, 87, 87, 87, 87, 87, 46, 46, // 64
|
|
16, 86, 16, 86, 16, 86, 16, 86, // 64
|
|
46, 87, 46, 87, 46, 87, 46, 87, // 64
|
|
86, 86, 86, 86, 86, 86, 86, 86, // 64
|
|
87, 87, 87, 87, 87, 87, 87, 87, // 64
|
|
88, 88, 89, 89, 89, 89, 90, 90, // 64
|
|
91, 91, 92, 92, 93, 93, 46, 46, // 64
|
|
86, 86, 86, 86, 86, 86, 86, 86, // 65
|
|
87, 87, 87, 87, 87, 87, 87, 87, // 65
|
|
86, 86, 86, 86, 86, 86, 86, 86, // 65
|
|
87, 87, 87, 87, 87, 87, 87, 87, // 65
|
|
86, 86, 86, 86, 86, 86, 86, 86, // 65
|
|
87, 87, 87, 87, 87, 87, 87, 87, // 65
|
|
86, 86, 16, 94, 16, 46, 16, 16, // 65
|
|
87, 87, 95, 95, 96, 11, 38, 11, // 65
|
|
11, 11, 16, 94, 16, 46, 16, 16, // 66
|
|
97, 97, 97, 97, 96, 11, 11, 11, // 66
|
|
86, 86, 16, 16, 46, 46, 16, 16, // 66
|
|
87, 87, 98, 98, 46, 11, 11, 11, // 66
|
|
86, 86, 16, 16, 16, 99, 16, 16, // 66
|
|
87, 87, 100, 100, 101, 11, 11, 11, // 66
|
|
46, 46, 16, 94, 16, 46, 16, 16, // 66
|
|
102, 102, 103, 103, 96, 11, 11, 46, // 66
|
|
2, 2, 2, 2, 2, 2, 2, 2, // 67
|
|
2, 2, 2, 2, 104, 104, 104, 104, // 67
|
|
8, 8, 8, 8, 8, 8, 3, 3, // 67
|
|
5, 6, 5, 5, 5, 6, 5, 5, // 67
|
|
3, 3, 3, 3, 3, 3, 3, 3, // 67
|
|
105, 106, 104, 104, 104, 104, 104, 46, // 67
|
|
3, 3, 3, 3, 3, 3, 3, 3, // 67
|
|
3, 5, 6, 3, 3, 3, 3, 12, // 67
|
|
12, 3, 3, 3, 7, 5, 6, 46, // 68
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 68
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 68
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 68
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 68
|
|
46, 46, 104, 104, 104, 104, 104, 104, // 68
|
|
17, 46, 46, 46, 17, 17, 17, 17, // 68
|
|
17, 17, 7, 7, 7, 5, 6, 16, // 68
|
|
107, 107, 107, 107, 107, 107, 107, 107, // 69
|
|
107, 107, 7, 7, 7, 5, 6, 46, // 69
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 69
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 69
|
|
4, 4, 4, 4, 4, 4, 4, 4, // 69
|
|
4, 4, 4, 4, 46, 46, 46, 46, // 69
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 69
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 69
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 70
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 70
|
|
60, 60, 60, 60, 60, 60, 60, 60, // 70
|
|
60, 60, 60, 60, 60, 79, 79, 79, // 70
|
|
79, 60, 46, 46, 46, 46, 46, 46, // 70
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 70
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 70
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 70
|
|
15, 15, 38, 15, 15, 15, 15, 38, // 71
|
|
15, 15, 16, 38, 38, 38, 16, 16, // 71
|
|
38, 38, 38, 16, 15, 38, 15, 15, // 71
|
|
38, 38, 38, 38, 38, 38, 15, 15, // 71
|
|
15, 15, 15, 15, 38, 15, 38, 15, // 71
|
|
38, 15, 38, 38, 38, 38, 16, 16, // 71
|
|
38, 38, 15, 38, 16, 40, 40, 40, // 71
|
|
40, 46, 46, 46, 46, 46, 46, 46, // 71
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 72
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 72
|
|
46, 46, 46, 19, 19, 19, 19, 19, // 72
|
|
19, 19, 19, 19, 19, 19, 19, 108, // 72
|
|
109, 109, 109, 109, 109, 109, 109, 109, // 72
|
|
109, 109, 109, 109, 110, 110, 110, 110, // 72
|
|
111, 111, 111, 111, 111, 111, 111, 111, // 72
|
|
111, 111, 111, 111, 112, 112, 112, 112, // 72
|
|
113, 113, 113, 46, 46, 46, 46, 46, // 73
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 73
|
|
7, 7, 7, 7, 7, 15, 15, 15, // 73
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 73
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 73
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 73
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 73
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 73
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 74
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 74
|
|
15, 15, 7, 15, 7, 15, 15, 15, // 74
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 74
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 74
|
|
15, 15, 15, 46, 46, 46, 46, 46, // 74
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 74
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 74
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 75
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 76
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 76
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 76
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 76
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 76
|
|
7, 7, 7, 7, 7, 7, 7, 7, // 76
|
|
7, 7, 46, 46, 46, 46, 46, 46, // 76
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 76
|
|
15, 46, 15, 15, 15, 15, 15, 15, // 77
|
|
7, 7, 7, 7, 15, 15, 15, 15, // 77
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 77
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 77
|
|
7, 7, 15, 15, 15, 15, 15, 15, // 77
|
|
15, 5, 6, 15, 15, 15, 15, 15, // 77
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 77
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 77
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 78
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 78
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 78
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 78
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 78
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 78
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 78
|
|
15, 15, 15, 46, 46, 46, 46, 46, // 78
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 79
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 79
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 79
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 79
|
|
15, 15, 15, 15, 15, 46, 46, 46, // 79
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 79
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 79
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 79
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 80
|
|
15, 15, 15, 46, 46, 46, 46, 46, // 80
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 80
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 80
|
|
114, 114, 114, 114, 114, 114, 114, 114, // 80
|
|
114, 114, 114, 114, 114, 114, 114, 114, // 80
|
|
114, 114, 114, 114, 82, 82, 82, 82, // 80
|
|
82, 82, 82, 82, 82, 82, 82, 82, // 80
|
|
82, 82, 82, 82, 82, 82, 82, 82, // 81
|
|
115, 115, 115, 115, 115, 115, 115, 115, // 81
|
|
115, 115, 115, 115, 115, 115, 115, 115, // 81
|
|
115, 115, 115, 115, 15, 15, 15, 15, // 81
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 81
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 81
|
|
15, 15, 15, 15, 15, 15, 116, 116, // 81
|
|
116, 116, 116, 116, 116, 116, 116, 116, // 81
|
|
116, 116, 116, 116, 116, 116, 116, 116, // 82
|
|
116, 116, 116, 116, 116, 116, 116, 116, // 82
|
|
117, 117, 117, 117, 117, 117, 117, 117, // 82
|
|
117, 117, 117, 117, 117, 117, 117, 117, // 82
|
|
117, 117, 117, 117, 117, 117, 117, 117, // 82
|
|
117, 117, 118, 46, 46, 46, 46, 46, // 82
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 82
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 82
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 83
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 84
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 84
|
|
15, 15, 15, 15, 15, 15, 46, 46, // 84
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 84
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 84
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 84
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 84
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 84
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 85
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 85
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 85
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 85
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 85
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 85
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 85
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 85
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 86
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 86
|
|
15, 15, 15, 15, 46, 46, 46, 46, // 86
|
|
46, 46, 15, 15, 15, 15, 15, 15, // 86
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 86
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 86
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 86
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 86
|
|
46, 15, 15, 15, 15, 46, 15, 15, // 87
|
|
15, 15, 46, 46, 15, 15, 15, 15, // 87
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 87
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 87
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 87
|
|
46, 15, 15, 15, 15, 15, 15, 15, // 87
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 87
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 87
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 88
|
|
15, 15, 15, 15, 46, 15, 46, 15, // 88
|
|
15, 15, 15, 46, 46, 46, 15, 46, // 88
|
|
15, 15, 15, 15, 15, 15, 15, 46, // 88
|
|
46, 15, 15, 15, 15, 15, 15, 15, // 88
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 88
|
|
46, 46, 46, 46, 46, 46, 119, 119, // 88
|
|
119, 119, 119, 119, 119, 119, 119, 119, // 88
|
|
114, 114, 114, 114, 114, 114, 114, 114, // 89
|
|
114, 114, 83, 83, 83, 83, 83, 83, // 89
|
|
83, 83, 83, 83, 15, 46, 46, 46, // 89
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 89
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 89
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 89
|
|
46, 15, 15, 15, 15, 15, 15, 15, // 89
|
|
15, 15, 15, 15, 15, 15, 15, 46, // 89
|
|
2, 3, 3, 3, 15, 59, 3, 120, // 90
|
|
5, 6, 5, 6, 5, 6, 5, 6, // 90
|
|
5, 6, 15, 15, 5, 6, 5, 6, // 90
|
|
5, 6, 5, 6, 8, 5, 6, 5, // 90
|
|
15, 121, 121, 121, 121, 121, 121, 121, // 90
|
|
121, 121, 60, 60, 60, 60, 60, 60, // 90
|
|
8, 59, 59, 59, 59, 59, 15, 15, // 90
|
|
46, 46, 46, 46, 46, 46, 46, 15, // 90
|
|
46, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 91
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 92
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 92
|
|
40, 40, 40, 40, 40, 46, 46, 46, // 92
|
|
46, 60, 60, 59, 59, 59, 59, 46, // 92
|
|
46, 40, 40, 40, 40, 40, 40, 40, // 92
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 92
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 92
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 92
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 93
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 93
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 93
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 93
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 93
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 93
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 93
|
|
40, 40, 40, 3, 59, 59, 59, 46, // 93
|
|
46, 46, 46, 46, 46, 40, 40, 40, // 94
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 94
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 94
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 94
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 94
|
|
40, 40, 40, 40, 40, 46, 46, 46, // 94
|
|
46, 40, 40, 40, 40, 40, 40, 40, // 94
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 94
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 95
|
|
40, 40, 40, 40, 40, 40, 40, 46, // 95
|
|
15, 15, 85, 85, 85, 85, 15, 15, // 95
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 95
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 95
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 95
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 95
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 95
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 96
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 96
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 96
|
|
15, 15, 15, 15, 15, 46, 46, 46, // 96
|
|
85, 85, 85, 85, 85, 85, 85, 85, // 96
|
|
85, 85, 15, 15, 15, 15, 15, 15, // 96
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 96
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 96
|
|
15, 15, 15, 15, 46, 46, 46, 46, // 97
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 97
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 97
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 97
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 97
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 97
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 97
|
|
15, 15, 15, 15, 46, 46, 46, 15, // 97
|
|
114, 114, 114, 114, 114, 114, 114, 114, // 98
|
|
114, 114, 15, 15, 15, 15, 15, 15, // 98
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 98
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 98
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 98
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 98
|
|
15, 46, 46, 46, 46, 46, 46, 46, // 98
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 98
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 99
|
|
15, 15, 15, 15, 46, 46, 46, 46, // 99
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 99
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 99
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 99
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 99
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 99
|
|
15, 15, 15, 15, 15, 15, 15, 46, // 99
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 100
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 100
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 100
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 100
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 100
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 100
|
|
15, 15, 15, 15, 15, 15, 15, 46, // 100
|
|
46, 46, 46, 15, 15, 15, 15, 15, // 100
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 101
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 101
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 101
|
|
15, 15, 15, 15, 15, 15, 46, 46, // 101
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 101
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 101
|
|
15, 15, 15, 15, 15, 15, 15, 15, // 101
|
|
15, 15, 15, 15, 15, 15, 15, 46, // 101
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 102
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 102
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 102
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 102
|
|
40, 40, 40, 40, 40, 40, 46, 46, // 102
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 102
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 102
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 102
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 103
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 103
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 103
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 103
|
|
40, 40, 40, 40, 46, 46, 46, 46, // 103
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 103
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 103
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 103
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
122, 122, 122, 122, 122, 122, 122, 122, // 104
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
123, 123, 123, 123, 123, 123, 123, 123, // 105
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 106
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 106
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 106
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 106
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 106
|
|
40, 40, 40, 40, 40, 40, 46, 46, // 106
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 106
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 106
|
|
16, 16, 16, 16, 16, 16, 16, 46, // 107
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 107
|
|
46, 46, 46, 16, 16, 16, 16, 16, // 107
|
|
46, 46, 46, 46, 46, 46, 60, 40, // 107
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 107
|
|
40, 7, 40, 40, 40, 40, 40, 40, // 107
|
|
40, 40, 40, 40, 40, 40, 40, 46, // 107
|
|
40, 40, 40, 40, 40, 46, 40, 46, // 107
|
|
40, 40, 46, 40, 40, 46, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 108
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 109
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 109
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 109
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 109
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 109
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 109
|
|
40, 40, 46, 46, 46, 46, 46, 46, // 109
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 109
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 110
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 110
|
|
46, 46, 46, 40, 40, 40, 40, 40, // 110
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 110
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 110
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 110
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 110
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 110
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 111
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 111
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 111
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 111
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 111
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 111
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 111
|
|
40, 40, 40, 40, 40, 40, 5, 6, // 111
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 112
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 112
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 112
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 112
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 112
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 112
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 112
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 112
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 113
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 113
|
|
46, 46, 40, 40, 40, 40, 40, 40, // 113
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 113
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 113
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 113
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 113
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 113
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 114
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 114
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 114
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 114
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 114
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 114
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 114
|
|
40, 40, 40, 40, 46, 46, 46, 46, // 114
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 115
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 115
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 115
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 115
|
|
60, 60, 60, 60, 46, 46, 46, 46, // 115
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 115
|
|
3, 8, 8, 12, 12, 5, 6, 5, // 115
|
|
6, 5, 6, 5, 6, 5, 6, 5, // 115
|
|
6, 5, 6, 5, 6, 46, 46, 46, // 116
|
|
46, 3, 3, 3, 3, 12, 12, 12, // 116
|
|
3, 3, 3, 46, 3, 3, 3, 3, // 116
|
|
8, 5, 6, 5, 6, 5, 6, 3, // 116
|
|
3, 3, 7, 8, 7, 7, 7, 46, // 116
|
|
3, 4, 3, 3, 46, 46, 46, 46, // 116
|
|
40, 40, 40, 46, 40, 46, 40, 40, // 116
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 116
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 117
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 117
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 117
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 117
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 117
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 117
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 117
|
|
40, 40, 40, 40, 40, 46, 46, 104, // 117
|
|
46, 3, 3, 3, 4, 3, 3, 3, // 118
|
|
5, 6, 3, 7, 3, 8, 3, 3, // 118
|
|
9, 9, 9, 9, 9, 9, 9, 9, // 118
|
|
9, 9, 3, 3, 7, 7, 7, 3, // 118
|
|
3, 10, 10, 10, 10, 10, 10, 10, // 118
|
|
10, 10, 10, 10, 10, 10, 10, 10, // 118
|
|
10, 10, 10, 10, 10, 10, 10, 10, // 118
|
|
10, 10, 10, 5, 3, 6, 11, 12, // 118
|
|
11, 13, 13, 13, 13, 13, 13, 13, // 119
|
|
13, 13, 13, 13, 13, 13, 13, 13, // 119
|
|
13, 13, 13, 13, 13, 13, 13, 13, // 119
|
|
13, 13, 13, 5, 7, 6, 7, 46, // 119
|
|
46, 3, 5, 6, 3, 3, 40, 40, // 119
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 119
|
|
59, 40, 40, 40, 40, 40, 40, 40, // 119
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 119
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 120
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 120
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 120
|
|
40, 40, 40, 40, 40, 40, 59, 59, // 120
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 120
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 120
|
|
40, 40, 40, 40, 40, 40, 40, 40, // 120
|
|
40, 40, 40, 40, 40, 40, 40, 46, // 120
|
|
46, 46, 40, 40, 40, 40, 40, 40, // 121
|
|
46, 46, 40, 40, 40, 40, 40, 40, // 121
|
|
46, 46, 40, 40, 40, 40, 40, 40, // 121
|
|
46, 46, 40, 40, 40, 46, 46, 46, // 121
|
|
4, 4, 7, 11, 15, 4, 4, 46, // 121
|
|
7, 7, 7, 7, 7, 15, 15, 46, // 121
|
|
46, 46, 46, 46, 46, 46, 46, 46, // 121
|
|
46, 46, 46, 46, 46, 15, 46, 46 // 121
|
|
};
|
|
|
|
|
|
// The A table has 124 entries for a total of 496 bytes.
|
|
const uint32 CharInfo::a[] = {
|
|
0x0000000F, // 0 Cc
|
|
0x0004000F, // 1 Cc, whitespace
|
|
0x0004000C, // 2 Zs, whitespace
|
|
0x00000018, // 3 Po
|
|
0x0002001A, // 4 Sc, currency
|
|
0x00000015, // 5 Ps
|
|
0x00000016, // 6 Pe
|
|
0x00000019, // 7 Sm
|
|
0x00000014, // 8 Pd
|
|
0x00036009, // 9 Nd, identifier part, decimal 16
|
|
0x0822FE01, // 10 Lu, hasLower (add 32), identifier start, supradecimal 31
|
|
0x0000001B, // 11 Sk
|
|
0x00020017, // 12 Pc, underscore
|
|
0x0812FE02, // 13 Ll, hasUpper (subtract 32), identifier start, supradecimal 31
|
|
0x0005000F, // 14 Cc, break
|
|
0x0000001C, // 15 So
|
|
0x00020002, // 16 Ll, identifier start
|
|
0x0000600B, // 17 No, decimal 16
|
|
0x0000500B, // 18 No, decimal 8
|
|
0x0000800B, // 19 No, strange
|
|
0x08220001, // 20 Lu, hasLower (add 32), identifier start
|
|
0x08120002, // 21 Ll, hasUpper (subtract 32), identifier start
|
|
0xE1D20002, // 22 Ll, hasUpper (subtract -121), identifier start
|
|
0x00620001, // 23 Lu, hasLower (add 1), identifier start
|
|
0x00520002, // 24 Ll, hasUpper (subtract 1), identifier start
|
|
0xCE620001, // 25 Lu, hasLower (add -199), identifier start
|
|
0x3A120002, // 26 Ll, hasUpper (subtract 232), identifier start
|
|
0xE1E20001, // 27 Lu, hasLower (add -121), identifier start
|
|
0x4B120002, // 28 Ll, hasUpper (subtract 300), identifier start
|
|
0x34A20001, // 29 Lu, hasLower (add 210), identifier start
|
|
0x33A20001, // 30 Lu, hasLower (add 206), identifier start
|
|
0x33620001, // 31 Lu, hasLower (add 205), identifier start
|
|
0x32A20001, // 32 Lu, hasLower (add 202), identifier start
|
|
0x32E20001, // 33 Lu, hasLower (add 203), identifier start
|
|
0x33E20001, // 34 Lu, hasLower (add 207), identifier start
|
|
0x34E20001, // 35 Lu, hasLower (add 211), identifier start
|
|
0x34620001, // 36 Lu, hasLower (add 209), identifier start
|
|
0x35620001, // 37 Lu, hasLower (add 213), identifier start
|
|
0x00020001, // 38 Lu, identifier start
|
|
0x36A20001, // 39 Lu, hasLower (add 218), identifier start
|
|
0x00020005, // 40 Lo, identifier start
|
|
0x36620001, // 41 Lu, hasLower (add 217), identifier start
|
|
0x36E20001, // 42 Lu, hasLower (add 219), identifier start
|
|
0x00AA0001, // 43 Lu, hasLower (add 2), hasTitle, identifier start
|
|
0x007A0003, // 44 Lt, hasUpper (subtract 1), hasLower (add 1), hasTitle, identifier start
|
|
0x009A0002, // 45 Ll, hasUpper (subtract 2), hasTitle, identifier start
|
|
0x00000000, // 46 unassigned
|
|
0x34920002, // 47 Ll, hasUpper (subtract 210), identifier start
|
|
0x33920002, // 48 Ll, hasUpper (subtract 206), identifier start
|
|
0x33520002, // 49 Ll, hasUpper (subtract 205), identifier start
|
|
0x32920002, // 50 Ll, hasUpper (subtract 202), identifier start
|
|
0x32D20002, // 51 Ll, hasUpper (subtract 203), identifier start
|
|
0x33D20002, // 52 Ll, hasUpper (subtract 207), identifier start
|
|
0x34520002, // 53 Ll, hasUpper (subtract 209), identifier start
|
|
0x34D20002, // 54 Ll, hasUpper (subtract 211), identifier start
|
|
0x35520002, // 55 Ll, hasUpper (subtract 213), identifier start
|
|
0x36920002, // 56 Ll, hasUpper (subtract 218), identifier start
|
|
0x36520002, // 57 Ll, hasUpper (subtract 217), identifier start
|
|
0x36D20002, // 58 Ll, hasUpper (subtract 219), identifier start
|
|
0x00020004, // 59 Lm, identifier start
|
|
0x00030006, // 60 Mn, identifier part
|
|
0x09A20001, // 61 Lu, hasLower (add 38), identifier start
|
|
0x09620001, // 62 Lu, hasLower (add 37), identifier start
|
|
0x10220001, // 63 Lu, hasLower (add 64), identifier start
|
|
0x0FE20001, // 64 Lu, hasLower (add 63), identifier start
|
|
0x09920002, // 65 Ll, hasUpper (subtract 38), identifier start
|
|
0x09520002, // 66 Ll, hasUpper (subtract 37), identifier start
|
|
0x10120002, // 67 Ll, hasUpper (subtract 64), identifier start
|
|
0x0FD20002, // 68 Ll, hasUpper (subtract 63), identifier start
|
|
0x0F920002, // 69 Ll, hasUpper (subtract 62), identifier start
|
|
0x0E520002, // 70 Ll, hasUpper (subtract 57), identifier start
|
|
0x0BD20002, // 71 Ll, hasUpper (subtract 47), identifier start
|
|
0x0D920002, // 72 Ll, hasUpper (subtract 54), identifier start
|
|
0x15920002, // 73 Ll, hasUpper (subtract 86), identifier start
|
|
0x14120002, // 74 Ll, hasUpper (subtract 80), identifier start
|
|
0x14220001, // 75 Lu, hasLower (add 80), identifier start
|
|
0x0C220001, // 76 Lu, hasLower (add 48), identifier start
|
|
0x0C120002, // 77 Ll, hasUpper (subtract 48), identifier start
|
|
0x00034009, // 78 Nd, identifier part, decimal 0
|
|
0x00000007, // 79 Me
|
|
0x00030008, // 80 Mc, identifier part
|
|
0x00037409, // 81 Nd, identifier part, decimal 26
|
|
0x00005A0B, // 82 No, decimal 13
|
|
0x00006E0B, // 83 No, decimal 23
|
|
0x0000740B, // 84 No, decimal 26
|
|
0x0000000B, // 85 No
|
|
0xFE120002, // 86 Ll, hasUpper (subtract -8), identifier start
|
|
0xFE220001, // 87 Lu, hasLower (add -8), identifier start
|
|
0xED920002, // 88 Ll, hasUpper (subtract -74), identifier start
|
|
0xEA920002, // 89 Ll, hasUpper (subtract -86), identifier start
|
|
0xE7120002, // 90 Ll, hasUpper (subtract -100), identifier start
|
|
0xE0120002, // 91 Ll, hasUpper (subtract -128), identifier start
|
|
0xE4120002, // 92 Ll, hasUpper (subtract -112), identifier start
|
|
0xE0920002, // 93 Ll, hasUpper (subtract -126), identifier start
|
|
0xFDD20002, // 94 Ll, hasUpper (subtract -9), identifier start
|
|
0xEDA20001, // 95 Lu, hasLower (add -74), identifier start
|
|
0xFDE20001, // 96 Lu, hasLower (add -9), identifier start
|
|
0xEAA20001, // 97 Lu, hasLower (add -86), identifier start
|
|
0xE7220001, // 98 Lu, hasLower (add -100), identifier start
|
|
0xFE520002, // 99 Ll, hasUpper (subtract -7), identifier start
|
|
0xE4220001, // 100 Lu, hasLower (add -112), identifier start
|
|
0xFE620001, // 101 Lu, hasLower (add -7), identifier start
|
|
0xE0220001, // 102 Lu, hasLower (add -128), identifier start
|
|
0xE0A20001, // 103 Lu, hasLower (add -126), identifier start
|
|
0x00010010, // 104 Cf, ignorable
|
|
0x0005000D, // 105 Zl, break
|
|
0x0005000E, // 106 Zp, break
|
|
0x0000400B, // 107 No, decimal 0
|
|
0x0000440B, // 108 No, decimal 2
|
|
0x0422420A, // 109 Nl, hasLower (add 16), identifier start, decimal 1
|
|
0x0422800A, // 110 Nl, hasLower (add 16), identifier start, strange
|
|
0x0412620A, // 111 Nl, hasUpper (subtract 16), identifier start, decimal 17
|
|
0x0412800A, // 112 Nl, hasUpper (subtract 16), identifier start, strange
|
|
0x0002800A, // 113 Nl, identifier start, strange
|
|
0x0000420B, // 114 No, decimal 1
|
|
0x0000720B, // 115 No, decimal 25
|
|
0x06A0001C, // 116 So, hasLower (add 26)
|
|
0x0690001C, // 117 So, hasUpper (subtract 26)
|
|
0x00006C0B, // 118 No, decimal 22
|
|
0x0000560B, // 119 No, decimal 11
|
|
0x0002720A, // 120 Nl, identifier start, decimal 25
|
|
0x0002400A, // 121 Nl, identifier start, decimal 0
|
|
0x00000013, // 122 Cs
|
|
0x00000012 // 123 Co
|
|
};
|
|
|
|
|
|
// Return c converted to upper case. If c cannot be converted to upper case,
|
|
// return c unchanged.
|
|
char16
|
|
toUpper(char16 c)
|
|
{
|
|
CharInfo ci(c);
|
|
if (ci.info & 0x00100000)
|
|
c = static_cast<char16>(static_cast<int32>(c) -
|
|
(static_cast<int32>(ci.info) >> 22));
|
|
return c;
|
|
}
|
|
|
|
|
|
// Return c converted to lower case. If c cannot be converted to lower case,
|
|
// return c unchanged.
|
|
char16
|
|
toLower(char16 c)
|
|
{
|
|
CharInfo ci(c);
|
|
if (ci.info & 0x00200000)
|
|
c = static_cast<char16>(static_cast<int32>(c) +
|
|
(static_cast<int32>(ci.info) >> 22));
|
|
return c;
|
|
}
|
|
|
|
|
|
// Return true if c is an ASCII hexadecimal digit, in which case store the
|
|
// digit's numeric value in d.
|
|
bool
|
|
isASCIIHexDigit(char16 c, uint &digit)
|
|
{
|
|
uint cv = c;
|
|
|
|
if (cv < '0')
|
|
return false;
|
|
if (cv <= '9') {
|
|
digit = cv - '0';
|
|
return true;
|
|
}
|
|
cv |= 0x20;
|
|
if (cv >= 'a' && cv <= 'f') {
|
|
digit = cv - 'a' + 10;
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
|
|
// Return str advanced past white space characters, but no further than strEnd.
|
|
const char16 *
|
|
skipWhiteSpace(const char16 *str, const char16 *strEnd)
|
|
{
|
|
while (str != strEnd && isSpace(*str))
|
|
str++;
|
|
return str;
|
|
}
|
|
|
|
// Allocate a String in the Arena and register that String so that it is
|
|
// deallocated at the same time as the Arena.
|
|
// DO NOT CALL DELETE ON THE RESULT!
|
|
String &
|
|
newArenaString(Arena &arena)
|
|
{
|
|
String *s = new(arena) String();
|
|
arena.registerDestructor(s);
|
|
return *s;
|
|
}
|
|
|
|
String &
|
|
newArenaString(Arena &arena, const String &str)
|
|
{
|
|
String *s = new(arena) String(str);
|
|
arena.registerDestructor(s);
|
|
return *s;
|
|
}
|
|
|
|
}
|