Documentation
¶
Index ¶
- Constants
- Variables
- type BIG5DistributionAnalysis
- type BIG5Prober
- type CP949Prober
- type CharSetGroupProber
- type CharSetProber
- type CharacterCategory
- type EUCJPContextAnalysis
- type EUCJPDistributionAnalysis
- type EUCJPProber
- type EUCKRDistributionAnalysis
- type EUCKRProber
- type EUCTWDistributionAnalysis
- type EUCTWProber
- type EscCharSetProber
- type GB2312DistributionAnalysis
- type GB2312Prober
- type HebrewProber
- type JapaneseContextAnalysis
- type LanguageFilter
- type Latin1Prober
- type MBCSGroupProber
- type MachineState
- type Model
- type MultiByteCharSetProber
- type Prober
- type ProbingState
- type Result
- type SBCSGroupProber
- type SJISContextAnalysis
- type SJISDistributionAnalysis
- type SJISProber
- type SequenceLikelihood
- type SingleByteCharSetModel
- type SingleByteCharSetProber
- type UTF8Prober
- type UniversalDetector
- type UniversalDetectorState
Constants ¶
const ( // UDF is undefined UDF lat1Class = 0 // OTH is other OTH lat1Class = 1 // ASC is ascii capital letter ASC lat1Class = 2 // ASS is ascii small letter ASS lat1Class = 3 // ACV is accent capital vowel ACV lat1Class = 4 // ACO is accent capital other ACO lat1Class = 5 // ASV is accent small vowel ASV lat1Class = 6 // ASO is accent small other ASO lat1Class = 7 // ClassNum is total classes ClassNum lat1Class = 8 )
const SLNumCategories = 4
SLNumCategories the number of categories in SequenceLikelihood
Variables ¶
var BIG5CharLenTable = []int{0, 1, 1, 2, 0}
BIG5CharLenTable Previously BIG5_CHAR_LEN_TABLE
var BIG5CharToFreqOrder = []int{}/* 5376 elements not displayed */
BIG5CharToFreqOrder prev BIG5_CHAR_TO_FREQ_ORDER
var BIG5Cls = []int{}/* 256 elements not displayed */
BIG5Cls previously BIG5_CLS
var BIG5SmModel = Model{ // contains filtered or unexported fields }
BIG5SmModel previously BIG5_SM_MODEL
var BIG5States = []MachineState{ MSError, MSStart, MSStart, 3, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, }
BIG5States states, previously BIG5_ST
var BIG5TableSize int = 5376
BIG5TableSize prev BIG5_TABLE_SIZE Char to FreqOrder table
var BIG5TypicalDistributionRatio = 0.75
BIG5TypicalDistributionRatio prev BIG5_TYPICAL_DISTRIBUTION_RATIO
var BulgarianLangModel = map[CharacterCategory][]int{
1: {
-1,
1,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
2: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
3: {
-1,
2,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
4: {
-1,
2,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
5: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
2,
2,
1,
3,
3,
3,
3,
2,
2,
2,
1,
1,
2,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
6: {
-1,
3,
3,
3,
3,
3,
3,
2,
3,
2,
2,
3,
3,
1,
1,
2,
3,
3,
2,
3,
3,
3,
3,
2,
1,
2,
0,
2,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
7: {
-1,
3,
3,
3,
3,
3,
3,
1,
3,
3,
3,
3,
3,
2,
3,
2,
3,
3,
3,
3,
3,
2,
3,
3,
1,
3,
0,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
8: {
-1,
3,
3,
3,
3,
3,
3,
3,
1,
3,
3,
2,
3,
3,
3,
1,
3,
3,
2,
3,
2,
2,
2,
0,
0,
2,
0,
2,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
9: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
3,
3,
2,
2,
3,
3,
3,
1,
2,
2,
3,
2,
1,
1,
2,
0,
2,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
10: {
-1,
3,
3,
3,
3,
3,
3,
2,
3,
3,
1,
2,
3,
2,
2,
2,
3,
3,
3,
3,
3,
2,
2,
3,
1,
2,
0,
2,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
1,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
11: {
-1,
3,
3,
3,
3,
1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
3,
3,
2,
3,
2,
2,
2,
3,
1,
2,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
12: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
1,
1,
2,
2,
1,
3,
1,
3,
2,
2,
3,
0,
0,
1,
0,
1,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
13: {
-1,
3,
3,
3,
3,
2,
2,
3,
2,
2,
3,
1,
2,
1,
1,
1,
2,
3,
1,
3,
1,
2,
2,
0,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
14: {
-1,
3,
3,
3,
3,
1,
3,
2,
2,
3,
3,
1,
2,
3,
1,
1,
3,
3,
3,
3,
1,
2,
2,
1,
1,
1,
0,
2,
0,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
15: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
2,
2,
3,
3,
3,
2,
2,
1,
1,
2,
0,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
16: {
-1,
0,
1,
2,
1,
3,
3,
2,
3,
3,
3,
3,
3,
2,
3,
2,
1,
0,
3,
1,
2,
1,
2,
1,
2,
3,
2,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
17: {
-1,
1,
1,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
0,
3,
1,
3,
3,
2,
3,
3,
2,
2,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
18: {
-1,
3,
3,
3,
3,
0,
3,
3,
3,
3,
3,
2,
1,
1,
2,
1,
3,
3,
0,
3,
1,
1,
1,
1,
3,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
19: {
-1,
3,
2,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
1,
3,
1,
3,
3,
2,
3,
2,
2,
2,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
20: {
-1,
3,
3,
3,
3,
2,
3,
3,
2,
2,
3,
2,
1,
1,
1,
1,
1,
3,
1,
3,
1,
1,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
21: {
-1,
3,
3,
3,
3,
2,
3,
2,
0,
3,
2,
0,
3,
0,
2,
0,
0,
2,
1,
3,
1,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
22: {
-1,
3,
3,
3,
2,
1,
1,
1,
1,
2,
1,
1,
2,
1,
1,
1,
2,
2,
1,
2,
1,
1,
1,
0,
1,
1,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
23: {
-1,
3,
3,
3,
2,
1,
3,
1,
1,
2,
1,
3,
2,
1,
1,
0,
1,
2,
3,
2,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
24: {
-1,
3,
3,
3,
3,
2,
2,
1,
0,
1,
0,
0,
1,
0,
0,
0,
2,
1,
0,
3,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
25: {
-1,
3,
3,
2,
3,
2,
3,
3,
1,
3,
2,
1,
1,
1,
2,
1,
1,
2,
1,
3,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
26: {
-1,
1,
1,
2,
2,
3,
3,
2,
3,
2,
2,
2,
3,
1,
2,
2,
1,
1,
2,
1,
1,
2,
2,
0,
1,
1,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
27: {
-1,
3,
3,
3,
2,
1,
3,
1,
0,
2,
2,
1,
3,
2,
1,
0,
0,
2,
0,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
28: {
-1,
3,
3,
3,
3,
3,
1,
2,
0,
2,
3,
1,
2,
3,
2,
0,
1,
3,
1,
2,
1,
1,
1,
0,
0,
1,
0,
0,
2,
2,
2,
3,
2,
2,
2,
2,
1,
2,
1,
1,
2,
2,
1,
1,
2,
0,
1,
1,
1,
0,
0,
1,
1,
0,
0,
1,
1,
0,
0,
0,
1,
1,
0,
1,
},
29: {
-1,
3,
3,
3,
3,
2,
1,
2,
2,
1,
2,
0,
2,
0,
1,
0,
1,
2,
1,
2,
1,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
30: {
-1,
3,
2,
3,
3,
1,
1,
3,
1,
0,
3,
2,
1,
0,
0,
0,
1,
2,
0,
2,
0,
1,
0,
0,
0,
1,
0,
1,
2,
1,
2,
2,
1,
1,
1,
1,
1,
1,
1,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
0,
1,
2,
1,
1,
1,
0,
0,
0,
0,
0,
1,
1,
0,
0,
},
31: {
-1,
1,
0,
1,
0,
2,
3,
2,
2,
2,
3,
2,
2,
2,
2,
2,
1,
0,
2,
1,
2,
1,
1,
1,
0,
1,
2,
1,
2,
2,
2,
1,
1,
1,
2,
2,
2,
2,
1,
2,
1,
1,
0,
1,
2,
1,
2,
2,
2,
1,
1,
1,
0,
1,
1,
1,
1,
2,
0,
1,
0,
0,
0,
0,
},
32: {
-1,
3,
2,
3,
3,
0,
0,
2,
1,
0,
2,
1,
0,
0,
0,
0,
2,
3,
0,
2,
0,
0,
0,
0,
0,
1,
0,
0,
2,
0,
1,
2,
2,
1,
2,
1,
2,
2,
1,
1,
1,
2,
1,
1,
1,
0,
1,
2,
2,
1,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
1,
2,
0,
0,
},
33: {
-1,
3,
2,
2,
3,
0,
2,
3,
1,
1,
2,
0,
0,
0,
1,
0,
0,
2,
0,
2,
0,
0,
0,
1,
0,
1,
0,
1,
2,
0,
2,
2,
1,
1,
1,
1,
2,
1,
0,
1,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
},
34: {
-1,
3,
2,
3,
3,
0,
0,
3,
0,
1,
1,
0,
1,
0,
0,
0,
2,
2,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
1,
2,
2,
2,
1,
1,
1,
1,
1,
2,
2,
2,
1,
0,
2,
0,
1,
0,
1,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
},
35: {
-1,
3,
3,
3,
2,
2,
2,
2,
2,
0,
2,
1,
1,
1,
1,
2,
1,
2,
1,
1,
0,
2,
0,
1,
0,
1,
0,
0,
2,
0,
1,
2,
1,
1,
1,
1,
1,
1,
1,
2,
2,
1,
1,
0,
2,
0,
1,
0,
2,
0,
0,
1,
1,
1,
0,
0,
2,
0,
0,
0,
1,
1,
0,
0,
},
36: {
-1,
3,
3,
3,
3,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
1,
2,
0,
1,
2,
2,
2,
2,
1,
1,
2,
1,
1,
2,
2,
2,
1,
2,
0,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
},
37: {
-1,
3,
3,
3,
3,
0,
2,
2,
0,
2,
1,
0,
0,
0,
1,
1,
1,
2,
0,
2,
0,
0,
0,
3,
0,
0,
0,
0,
2,
0,
2,
2,
1,
1,
1,
2,
1,
2,
1,
1,
2,
2,
2,
1,
2,
0,
1,
1,
1,
0,
1,
1,
1,
1,
0,
2,
1,
0,
0,
0,
1,
1,
0,
0,
},
38: {
-1,
3,
3,
3,
3,
0,
2,
1,
0,
0,
2,
0,
0,
0,
0,
0,
1,
2,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
1,
2,
1,
1,
1,
2,
1,
1,
1,
1,
2,
2,
2,
0,
1,
0,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
},
39: {
-1,
3,
2,
2,
3,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
2,
2,
1,
1,
1,
1,
1,
2,
1,
1,
2,
2,
1,
2,
2,
1,
0,
1,
1,
1,
1,
1,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
},
40: {
-1,
1,
0,
1,
0,
2,
2,
2,
2,
3,
2,
1,
1,
1,
2,
3,
0,
0,
1,
0,
2,
1,
1,
0,
1,
1,
1,
1,
2,
1,
1,
1,
1,
2,
2,
1,
2,
1,
2,
2,
1,
1,
0,
1,
2,
1,
2,
2,
1,
1,
1,
0,
0,
1,
1,
1,
2,
1,
0,
1,
0,
0,
0,
0,
},
41: {
-1,
1,
0,
1,
0,
3,
1,
2,
2,
2,
2,
1,
2,
2,
1,
1,
1,
0,
2,
1,
2,
2,
1,
1,
2,
1,
1,
0,
2,
1,
1,
1,
1,
2,
2,
2,
2,
2,
2,
2,
1,
2,
0,
1,
1,
0,
2,
1,
1,
1,
1,
1,
0,
0,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
},
42: {
-1,
1,
1,
1,
1,
2,
2,
2,
2,
1,
2,
2,
2,
1,
2,
2,
1,
1,
2,
1,
2,
3,
2,
2,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
43: {
-1,
2,
2,
3,
2,
0,
1,
2,
0,
1,
2,
1,
1,
0,
1,
0,
1,
2,
1,
2,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
2,
1,
1,
0,
0,
1,
1,
0,
1,
1,
1,
1,
0,
2,
0,
1,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
},
44: {
-1,
0,
0,
0,
0,
1,
2,
2,
2,
2,
2,
2,
2,
1,
2,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
2,
1,
1,
1,
1,
2,
2,
2,
2,
1,
1,
2,
1,
2,
1,
1,
1,
0,
2,
1,
2,
1,
1,
1,
0,
2,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
},
45: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
1,
1,
0,
1,
0,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
46: {
-1,
2,
2,
3,
2,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
2,
1,
1,
1,
1,
1,
1,
0,
0,
2,
2,
2,
2,
2,
0,
1,
1,
0,
1,
1,
1,
1,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
1,
},
47: {
-1,
3,
1,
2,
1,
0,
1,
1,
0,
2,
2,
2,
0,
0,
1,
0,
0,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
2,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
1,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
},
48: {
-1,
2,
2,
2,
2,
0,
0,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
2,
2,
1,
1,
1,
1,
1,
0,
0,
1,
2,
1,
1,
0,
1,
0,
1,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
49: {
-1,
2,
2,
2,
2,
0,
0,
2,
0,
1,
1,
0,
0,
0,
1,
0,
0,
2,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
50: {
-1,
2,
2,
3,
2,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
2,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
2,
1,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
1,
0,
1,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
51: {
-1,
1,
2,
2,
2,
1,
2,
1,
2,
2,
1,
1,
2,
1,
1,
1,
0,
1,
1,
1,
1,
2,
0,
1,
0,
1,
1,
1,
1,
0,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
0,
0,
1,
2,
1,
1,
1,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
52: {
-1,
0,
0,
1,
3,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
53: {
-1,
2,
2,
2,
1,
0,
0,
1,
0,
2,
0,
0,
0,
0,
0,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
0,
2,
0,
1,
0,
0,
1,
1,
2,
0,
1,
0,
1,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
54: {
-1,
2,
2,
2,
2,
0,
1,
1,
0,
2,
1,
0,
1,
1,
1,
0,
0,
1,
0,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
55: {
-1,
2,
2,
2,
2,
0,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
1,
1,
1,
0,
0,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
56: {
-1,
0,
1,
0,
0,
1,
2,
1,
1,
1,
1,
1,
1,
2,
2,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
1,
1,
1,
1,
0,
0,
0,
1,
1,
2,
1,
1,
1,
1,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
57: {
-1,
2,
1,
2,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
58: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
59: {
-1,
0,
0,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
1,
0,
1,
1,
1,
0,
0,
1,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
60: {
-1,
0,
1,
0,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
0,
2,
0,
0,
2,
0,
1,
0,
0,
1,
0,
0,
1,
1,
1,
0,
0,
1,
1,
0,
1,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
61: {
-1,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
1,
1,
1,
1,
1,
1,
1,
2,
0,
0,
0,
0,
0,
0,
2,
1,
0,
1,
1,
0,
0,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
},
62: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
63: {
-1,
0,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
0,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
}
BulgarianLangModel model
var CDAEnoughDataThreshold = 1024
CDAEnoughDataThreshold threshold
var CDAMinimumDataThreshold = 3
CDAMinimumDataThreshold threshold
var CDASureNo = 0.01
CDASureNo threshold
var CDASureYes = 0.99
CDASureYes threshold
var CP949CharLenTable = []int{0, 1, 2, 0, 1, 1, 2, 2, 0, 2}
CP949CharLenTable prev CP949_CHAR_LEN_TABLE
var CP949Cls = []int{}/* 256 elements not displayed */
CP949Cls prev CP949_CLS
var CP949SmModel = Model{ // contains filtered or unexported fields }
CP949SmModel previously CP949_SM_MODEL
var CP949States = []MachineState{ MSError, MSStart, 3, MSError, MSStart, MSStart, 4, 5, MSError, 6, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSStart, MSStart, MSError, MSError, MSError, MSStart, MSStart, MSStart, MSError, MSError, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSError, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSError, MSStart, MSStart, MSStart, MSStart, MSError, MSError, MSStart, MSStart, MSStart, }
CP949States prev CP949_ST
var CPShortcutThreshold = 0.95
CPShortcutThreshold is the threshold after which certainty is absolute
var EUCJPCharLenTable = []int{2, 2, 2, 3, 1, 0}
EUCJPCharLenTable prev EUCJP_CHAR_LEN_TABLE
var EUCJPCls = []int{}/* 256 elements not displayed */
EUCJPCls Prev EUCJP_CLS
var EUCJPSmModel = Model{ // contains filtered or unexported fields }
EUCJPSmModel prev EUCJP_SM_MODEL
var EUCJPStates = []MachineState{ 3, 4, 3, 5, MSStart, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSStart, MSError, MSStart, MSError, MSError, MSError, MSError, MSError, MSStart, MSError, MSError, MSError, 3, MSError, 3, MSError, MSError, MSError, MSStart, MSStart, MSStart, MSStart, }
EUCJPStates prev EUCJP_ST
var EUCKRCharLenTable = []int{0, 1, 2, 0}
EUCKRCharLenTable table lengths
var EUCKRCharToFreqOrder = []int{}/* 2352 elements not displayed */
EUCKRCharToFreqOrder prev EUCKR_CHAR_TO_FREQ_ORDER Char to FreqOrder table ,
var EUCKRCls = []int{}/* 256 elements not displayed */
EUCKRCls EUCKR Classes
var EUCKRSmModel = Model{ // contains filtered or unexported fields }
EUCKRSmModel State Machine model
var EUCKRStates = []MachineState{ MSError, MSStart, 3, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSStart, MSStart, }
EUCKRStates EUCKR States
var EUCKRTableSize = 2352
EUCKRTableSize prev EUCKR_TABLE_SIZE
var EUCKRTypicalDistributionRatio = 6.0
EUCKRTypicalDistributionRatio prev EUCKR_TYPICAL_DISTRIBUTION_RATIO
var EUCTWCharLenTable = []int{0, 0, 1, 2, 2, 2, 3}
EUCTWCharLenTable charLenTable
var EUCTWCharToFreqOrder = []int{}/* 5376 elements not displayed */
EUCTWCharToFreqOrder prev EUCTW_CHAR_TO_FREQ_ORDER
var EUCTWCls = []int{}/* 256 elements not displayed */
EUCTWCls classes
var EUCTWSmModel = Model{ // contains filtered or unexported fields }
EUCTWSmModel model
var EUCTWStates = []MachineState{ MSError, MSError, MSStart, 3, 3, 3, 4, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSStart, MSError, MSStart, MSStart, MSStart, MSError, MSError, MSError, MSError, MSError, 5, MSError, MSError, MSError, MSStart, MSError, MSStart, MSStart, MSStart, MSError, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, }
EUCTWStates states
var EUCTWTableSize = 5376
EUCTWTableSize prev EUCTW_TABLE_SIZE Char to FreqOrder table ,
var EUCTWTypicalDistributionRatio = 0.75
EUCTWTypicalDistributionRatio prev EUCTW_TYPICAL_DISTRIBUTION_RATIO
var GB2312CharLenTable = []int{0, 1, 1, 1, 1, 1, 2}
GB2312CharLenTable charLenTable To be accurate, the length of class 6 can be either 2 or 4. But it is not necessary to discriminate between the two since it is used for frequency analysis only, and we are validating each code range there as well. So it is safe to set it to be 2 here.
var GB2312CharToFreqOrder = []int{}/* 3760 elements not displayed */
GB2312CharToFreqOrder prev GB2312_CHAR_TO_FREQ_ORDER
var GB2312Cls = []int{}/* 256 elements not displayed */
GB2312Cls classes
var GB2312SmModel = Model{ // contains filtered or unexported fields }
GB2312SmModel model
var GB2312States = []MachineState{ MSError, MSStart, MSStart, MSStart, MSStart, MSStart, 3, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSStart, 4, MSError, MSStart, MSStart, MSError, MSError, MSError, MSError, MSError, MSError, 5, MSError, MSError, MSError, MSItsMe, MSError, MSError, MSError, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, }
GB2312States states
var GB2312TableSize = 3760
GB2312TableSize prev GB2312_TABLE_SIZE
var GB2312TypicalDistributionRatio = 0.9
GB2312TypicalDistributionRatio GB2312_TYPICAL_DISTRIBUTION_RATIO
var GreekLangModel = map[CharacterCategory][]int{
1: {
-1,
0,
3,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
1,
3,
3,
3,
0,
2,
2,
3,
3,
0,
3,
0,
3,
2,
0,
3,
3,
3,
0,
3,
0,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
2: {
-1,
3,
3,
3,
3,
3,
0,
3,
3,
0,
3,
2,
3,
3,
0,
3,
2,
3,
3,
3,
0,
0,
3,
0,
3,
0,
3,
3,
2,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
},
3: {
-1,
2,
3,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
3,
3,
3,
0,
2,
3,
3,
0,
3,
3,
3,
3,
2,
3,
3,
3,
0,
2,
0,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
4: {
-1,
2,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
2,
1,
3,
3,
3,
3,
2,
3,
3,
2,
3,
3,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
5: {
-1,
3,
3,
3,
3,
0,
3,
3,
3,
3,
3,
3,
0,
3,
3,
0,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
2,
3,
3,
0,
2,
0,
1,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
},
6: {
-1,
3,
3,
3,
3,
3,
2,
3,
0,
0,
0,
0,
3,
3,
0,
3,
1,
3,
3,
3,
0,
3,
3,
0,
3,
3,
3,
3,
0,
0,
0,
0,
2,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
7: {
-1,
3,
3,
3,
3,
3,
0,
3,
0,
3,
3,
3,
3,
3,
0,
3,
2,
2,
2,
3,
0,
2,
3,
3,
3,
3,
3,
2,
3,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
8: {
-1,
3,
3,
3,
3,
3,
3,
2,
2,
2,
3,
3,
3,
3,
0,
3,
1,
3,
3,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
9: {
-1,
3,
3,
3,
3,
3,
2,
0,
3,
0,
0,
0,
3,
3,
2,
3,
3,
3,
3,
3,
0,
0,
3,
2,
3,
0,
2,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
10: {
-1,
3,
0,
3,
3,
3,
3,
0,
0,
3,
3,
0,
2,
3,
0,
3,
0,
3,
3,
3,
0,
0,
3,
0,
3,
0,
2,
2,
3,
3,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
11: {
-1,
3,
3,
3,
3,
3,
2,
0,
3,
2,
3,
3,
3,
3,
0,
3,
3,
3,
3,
3,
0,
3,
3,
2,
3,
2,
3,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
12: {
-1,
3,
3,
2,
3,
2,
3,
3,
3,
3,
3,
3,
0,
2,
3,
2,
3,
2,
2,
2,
3,
2,
3,
3,
2,
3,
0,
2,
2,
2,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
13: {
-1,
0,
3,
0,
0,
0,
3,
3,
3,
2,
3,
3,
0,
0,
3,
0,
3,
0,
0,
0,
3,
2,
0,
3,
0,
3,
0,
0,
2,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
14: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
15: {
-1,
3,
3,
3,
3,
0,
3,
3,
3,
3,
3,
3,
0,
3,
3,
0,
3,
0,
0,
0,
3,
3,
0,
3,
3,
3,
0,
0,
1,
2,
3,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
16: {
-1,
3,
3,
3,
3,
3,
2,
0,
0,
3,
2,
2,
3,
3,
0,
3,
3,
3,
3,
3,
2,
1,
3,
0,
3,
2,
3,
3,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
17: {
-1,
0,
3,
3,
0,
2,
3,
3,
3,
3,
3,
3,
0,
0,
3,
0,
3,
0,
0,
0,
3,
3,
0,
3,
2,
3,
0,
0,
3,
3,
3,
0,
3,
0,
0,
0,
2,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
18: {
-1,
3,
3,
3,
3,
0,
3,
3,
3,
3,
3,
3,
0,
0,
3,
0,
3,
0,
0,
0,
3,
2,
0,
3,
2,
3,
0,
0,
3,
2,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
19: {
-1,
0,
3,
1,
2,
2,
3,
3,
3,
3,
3,
3,
0,
2,
3,
0,
3,
0,
0,
0,
3,
3,
0,
3,
0,
2,
0,
0,
2,
3,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
20: {
-1,
3,
0,
3,
3,
3,
3,
0,
3,
0,
3,
3,
2,
3,
0,
3,
3,
3,
3,
3,
3,
0,
3,
3,
3,
0,
2,
3,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
21: {
-1,
3,
0,
3,
3,
3,
0,
0,
3,
0,
0,
0,
3,
3,
0,
3,
0,
2,
3,
3,
0,
0,
3,
0,
3,
0,
3,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
22: {
-1,
0,
3,
0,
0,
0,
3,
3,
3,
3,
3,
3,
0,
0,
3,
0,
2,
0,
0,
0,
3,
3,
0,
3,
0,
3,
0,
0,
2,
0,
2,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
23: {
-1,
3,
3,
3,
3,
3,
3,
0,
3,
0,
2,
0,
3,
2,
0,
3,
2,
3,
2,
3,
0,
0,
3,
2,
3,
2,
3,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
24: {
-1,
0,
3,
0,
0,
2,
3,
3,
3,
3,
3,
0,
0,
0,
3,
0,
2,
1,
0,
0,
3,
2,
2,
2,
0,
3,
0,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
25: {
-1,
3,
0,
3,
3,
3,
2,
0,
3,
0,
3,
0,
3,
3,
0,
2,
1,
2,
3,
3,
0,
0,
3,
0,
3,
0,
3,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
26: {
-1,
2,
3,
3,
3,
0,
3,
3,
3,
3,
3,
3,
0,
2,
3,
0,
3,
0,
0,
0,
2,
1,
0,
2,
2,
3,
0,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
27: {
-1,
0,
3,
0,
0,
2,
3,
3,
3,
2,
3,
0,
0,
1,
3,
0,
2,
0,
0,
0,
0,
3,
0,
1,
0,
2,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
28: {
-1,
3,
3,
3,
3,
3,
1,
0,
3,
0,
0,
0,
3,
2,
0,
3,
2,
3,
3,
3,
0,
0,
3,
0,
3,
2,
2,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
29: {
-1,
3,
0,
3,
3,
3,
0,
0,
3,
0,
0,
0,
0,
2,
0,
2,
3,
3,
2,
2,
2,
2,
3,
0,
2,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
30: {
-1,
3,
3,
3,
3,
2,
0,
0,
0,
0,
0,
0,
2,
3,
0,
2,
0,
2,
3,
2,
0,
0,
3,
0,
3,
0,
3,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
31: {
-1,
0,
0,
0,
0,
0,
3,
2,
3,
3,
2,
2,
3,
0,
2,
0,
3,
0,
0,
0,
2,
0,
0,
0,
0,
1,
2,
0,
2,
0,
2,
0,
0,
2,
0,
2,
0,
2,
2,
0,
0,
1,
0,
2,
2,
2,
0,
2,
2,
2,
0,
2,
2,
2,
0,
0,
2,
0,
0,
1,
0,
0,
},
32: {
-1,
2,
0,
3,
3,
2,
0,
0,
0,
0,
0,
0,
1,
3,
0,
2,
0,
2,
2,
2,
0,
0,
2,
0,
3,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
33: {
-1,
3,
0,
2,
3,
2,
0,
2,
2,
0,
2,
0,
2,
2,
0,
2,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
2,
3,
0,
0,
0,
2,
0,
1,
2,
0,
0,
0,
0,
2,
2,
0,
0,
0,
2,
1,
0,
2,
2,
0,
0,
0,
0,
0,
0,
1,
0,
2,
0,
0,
0,
0,
},
34: {
-1,
0,
2,
1,
0,
2,
3,
2,
2,
3,
2,
3,
2,
0,
0,
3,
3,
3,
0,
0,
3,
2,
0,
0,
0,
1,
1,
0,
2,
0,
2,
2,
0,
2,
0,
2,
0,
2,
2,
0,
0,
2,
0,
2,
2,
2,
0,
2,
2,
2,
2,
0,
0,
2,
0,
0,
0,
2,
0,
1,
0,
0,
},
35: {
-1,
3,
0,
3,
3,
2,
2,
0,
3,
0,
0,
0,
2,
2,
0,
2,
2,
2,
1,
2,
0,
0,
1,
2,
2,
0,
0,
3,
0,
0,
0,
2,
0,
1,
2,
0,
0,
0,
1,
2,
0,
0,
0,
0,
0,
0,
0,
2,
2,
0,
1,
0,
0,
2,
0,
0,
0,
2,
0,
0,
0,
0,
},
36: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
37: {
-1,
2,
3,
3,
2,
2,
0,
0,
0,
2,
0,
2,
3,
3,
0,
2,
0,
0,
0,
0,
0,
0,
2,
2,
2,
0,
2,
2,
0,
2,
0,
2,
0,
2,
2,
0,
0,
2,
2,
2,
2,
1,
0,
0,
2,
2,
0,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
},
38: {
-1,
2,
0,
3,
2,
3,
0,
0,
0,
3,
0,
0,
2,
2,
0,
2,
0,
2,
2,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
2,
2,
0,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
39: {
-1,
0,
2,
0,
0,
3,
2,
0,
2,
2,
2,
2,
2,
0,
0,
0,
2,
0,
0,
0,
0,
2,
0,
1,
0,
0,
2,
0,
1,
0,
0,
0,
0,
2,
2,
2,
0,
2,
2,
0,
1,
2,
0,
2,
2,
2,
0,
2,
2,
2,
2,
1,
2,
2,
0,
0,
2,
0,
0,
0,
0,
0,
},
40: {
-1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
2,
0,
2,
2,
0,
0,
0,
0,
1,
2,
1,
0,
0,
2,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
41: {
-1,
0,
0,
3,
2,
3,
0,
0,
2,
0,
0,
0,
2,
2,
0,
2,
0,
0,
0,
1,
0,
0,
2,
0,
2,
0,
2,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
},
42: {
-1,
2,
2,
3,
2,
2,
0,
0,
0,
0,
0,
0,
1,
3,
0,
2,
0,
2,
2,
0,
0,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
43: {
-1,
2,
0,
2,
0,
3,
2,
0,
2,
0,
0,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
1,
1,
0,
0,
2,
1,
2,
0,
2,
2,
0,
1,
0,
0,
1,
0,
0,
0,
2,
0,
0,
0,
0,
},
44: {
-1,
3,
0,
2,
2,
2,
0,
0,
2,
0,
0,
0,
2,
0,
0,
0,
2,
3,
0,
2,
0,
0,
0,
0,
0,
0,
2,
2,
0,
0,
0,
2,
0,
1,
2,
0,
0,
0,
1,
2,
2,
1,
0,
0,
0,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
},
45: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
1,
2,
0,
2,
2,
0,
2,
0,
0,
2,
0,
0,
0,
0,
1,
2,
1,
0,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
46: {
-1,
0,
2,
0,
0,
0,
3,
1,
2,
2,
0,
2,
0,
0,
0,
0,
2,
0,
0,
0,
2,
0,
0,
3,
0,
0,
0,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
47: {
-1,
2,
1,
0,
2,
0,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
2,
0,
2,
2,
0,
0,
2,
2,
2,
2,
2,
0,
1,
2,
0,
0,
0,
2,
2,
0,
1,
0,
2,
0,
0,
2,
2,
0,
0,
0,
0,
},
48: {
-1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
2,
0,
0,
0,
0,
2,
0,
1,
2,
0,
0,
0,
0,
2,
2,
1,
0,
1,
0,
1,
0,
2,
2,
2,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
},
49: {
-1,
2,
0,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
2,
2,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
2,
0,
2,
2,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
2,
0,
},
50: {
-1,
2,
2,
2,
2,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
1,
2,
0,
0,
0,
0,
0,
0,
2,
2,
1,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
},
51: {
-1,
2,
0,
2,
2,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
2,
2,
2,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
52: {
-1,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
2,
0,
0,
2,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
53: {
-1,
2,
0,
2,
2,
1,
0,
0,
0,
0,
0,
0,
2,
0,
0,
2,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
2,
0,
0,
2,
0,
0,
2,
0,
2,
2,
0,
0,
0,
0,
2,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
2,
0,
0,
0,
0,
},
54: {
-1,
0,
3,
0,
0,
0,
2,
2,
0,
2,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
55: {
-1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
2,
0,
0,
0,
},
56: {
-1,
2,
2,
2,
2,
2,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
57: {
-1,
0,
0,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
2,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2,
2,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
58: {
-1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
2,
0,
},
59: {
-1,
2,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
60: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
2,
0,
2,
0,
},
61: {
-1,
0,
0,
0,
0,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
}
GreekLangModel model
var HPFinalChars = []byte{HPFinalKaf, HPFinalMem, HPFinalNun, HPFinalPe, HPFinalTsadi}
HPFinalChars Final code points
var HPFinalKaf byte = 0xea
HPFinalKaf codepoint
var HPFinalMem byte = 0xed
HPFinalMem codepoint
var HPFinalNun byte = 0xef
HPFinalNun codepoint
var HPFinalPe byte = 0xf3
HPFinalPe codepoint
var HPFinalTsadi byte = 0xf5
HPFinalTsadi codepoint
var HPLogicalHebrewName string = "windows-1255"
HPLogicalHebrewName logical hebrew charSet Name
var HPMinFinalCharDistance int = 5
HPMinFinalCharDistance Minimum Visual vs Logical final letter score difference. If the difference is below this, don't rely solely on the final letter score distance.
var HPMinModelDistance float64 = 0.01
HPMinModelDistance Minimum Visual vs Logical model score difference. If the difference is below this, don't rely at all on the model score distance.
var HPNormalChars = []byte{HPNormalKaf, HPNormalMem, HPNormalNun, HPNormalNun, HPNormalPe}
HPNormalChars are Non final code points The normal Tsadi is not a good Non-Final letter due to words like 'lechotet' (to chat) containing an apostrophe after the tsadi. This apostrophe is converted to a space in FilterWithoutEnglishLetters causing the Non-Final tsadi to appear at an end of a word even though this is not the case in the original text. The letters Pe and Kaf rarely display a related behavior of not being a good Non-Final letter. Words like 'Pop', 'Winamp' and 'Mubarak' for example legally end with a Non-Final Pe or Kaf. However, the benefit of these letters as Non-Final letters outweighs the damage since these words are quite rare.
var HPNormalKaf byte = 0xeb
HPNormalKaf codepoint
var HPNormalMem byte = 0xee
HPNormalMem codepoint
var HPNormalNun byte = 0xf0
HPNormalNun codepoint
var HPNormalPe byte = 0xf4
HPNormalPe codepoint
var HPNormalTsadi byte = 0xf6
HPNormalTsadi codepoint
var HPVisualHebrewName string = "ISO-8859-8"
HPVisualHebrewName visual hebrew charSet Name
var HZCharLenTable = []int{0, 0, 0, 0, 0, 0}
HZCharLenTable HZ
var HZCls = []int{}/* 256 elements not displayed */
HZCls class
var HZSmModel = Model{ // contains filtered or unexported fields }
HZSmModel HZ Model
var HZStates = []MachineState{ MSStart, MSError, 3, MSStart, MSStart, MSStart, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSStart, MSStart, 4, MSError, 5, MSError, 6, MSError, 5, 5, 4, MSError, 4, MSError, 4, 4, 4, MSError, 4, MSError, 4, MSItsMe, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, }
HZStates states
var HebrewLangModel = map[CharacterCategory][]int{
1: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
1,
2,
1,
2,
1,
2,
0,
0,
2,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
2: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
1,
2,
1,
3,
1,
1,
0,
0,
2,
0,
0,
0,
1,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
3: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
0,
1,
2,
2,
1,
3,
1,
2,
1,
1,
2,
2,
0,
0,
2,
2,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
},
4: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
2,
2,
2,
2,
3,
2,
1,
2,
1,
2,
2,
2,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
5: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
2,
3,
2,
2,
3,
2,
2,
2,
1,
2,
2,
2,
2,
1,
2,
1,
1,
2,
2,
0,
1,
2,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
6: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
0,
2,
2,
2,
2,
2,
0,
2,
0,
2,
2,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
7: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
0,
2,
2,
2,
0,
2,
1,
2,
2,
2,
0,
0,
2,
1,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
1,
0,
},
8: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
1,
2,
3,
2,
2,
2,
1,
2,
1,
2,
2,
2,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
1,
0,
},
9: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
0,
2,
0,
2,
0,
2,
1,
2,
2,
2,
0,
0,
1,
2,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
2,
0,
0,
1,
0,
},
10: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
2,
3,
2,
2,
3,
2,
1,
2,
1,
1,
1,
0,
1,
1,
1,
1,
1,
3,
0,
1,
0,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
11: {
-1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
1,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
12: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
0,
2,
0,
1,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
13: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
1,
2,
3,
3,
2,
3,
3,
3,
3,
2,
3,
2,
1,
2,
0,
2,
1,
2,
0,
2,
0,
2,
2,
2,
0,
0,
1,
2,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
},
14: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
1,
2,
2,
3,
3,
2,
3,
2,
3,
2,
2,
3,
1,
2,
2,
0,
2,
2,
2,
0,
2,
1,
2,
2,
2,
0,
0,
1,
2,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
1,
0,
0,
1,
0,
},
15: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
3,
3,
2,
2,
2,
3,
3,
3,
3,
1,
3,
2,
2,
2,
0,
2,
0,
1,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
16: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
3,
3,
3,
2,
3,
2,
2,
2,
1,
2,
2,
0,
2,
2,
2,
2,
0,
2,
0,
2,
2,
2,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
17: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
1,
3,
2,
3,
3,
2,
3,
3,
2,
2,
1,
2,
2,
2,
2,
2,
2,
0,
2,
1,
2,
1,
2,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
18: {
-1,
3,
3,
3,
3,
3,
2,
3,
2,
3,
3,
2,
3,
3,
3,
3,
2,
3,
2,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
1,
0,
2,
0,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
19: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
2,
1,
2,
3,
3,
3,
3,
3,
3,
3,
2,
3,
2,
3,
2,
1,
2,
3,
0,
2,
1,
2,
2,
0,
2,
1,
1,
2,
1,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
2,
0,
},
20: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
2,
1,
3,
1,
2,
2,
2,
1,
2,
3,
3,
1,
2,
1,
2,
2,
2,
2,
0,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
},
21: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
2,
3,
3,
3,
1,
3,
3,
3,
1,
2,
2,
2,
2,
1,
1,
2,
2,
2,
2,
2,
2,
0,
2,
0,
1,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
22: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
2,
3,
3,
3,
2,
1,
2,
3,
2,
3,
2,
2,
2,
2,
1,
2,
1,
1,
1,
2,
2,
0,
2,
1,
1,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
23: {
-1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
24: {
-1,
3,
3,
3,
3,
2,
3,
3,
2,
3,
1,
2,
2,
2,
2,
3,
2,
3,
1,
1,
2,
2,
1,
2,
2,
1,
1,
0,
2,
2,
2,
2,
0,
1,
0,
1,
2,
2,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
25: {
-1,
0,
0,
1,
1,
0,
1,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
26: {
-1,
0,
1,
0,
1,
0,
1,
1,
0,
1,
1,
0,
0,
0,
1,
1,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
27: {
-1,
0,
0,
0,
1,
1,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
28: {
-1,
2,
2,
1,
2,
2,
2,
2,
2,
2,
2,
1,
2,
2,
1,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
0,
3,
3,
3,
0,
3,
0,
2,
2,
2,
2,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
29: {
-1,
2,
2,
3,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
2,
2,
1,
2,
2,
2,
1,
1,
1,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
30: {
-1,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
31: {
-1,
3,
1,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
2,
1,
0,
2,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
32: {
-1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
1,
1,
1,
0,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
33: {
-1,
3,
1,
1,
2,
2,
2,
2,
2,
1,
2,
2,
2,
1,
1,
2,
2,
2,
2,
2,
2,
2,
1,
2,
2,
1,
0,
1,
1,
1,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
34: {
-1,
2,
1,
1,
1,
1,
2,
1,
1,
2,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
},
35: {
-1,
1,
1,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
2,
2,
2,
2,
2,
1,
2,
1,
2,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
36: {
-1,
2,
1,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
1,
2,
1,
2,
1,
1,
2,
1,
1,
1,
2,
1,
2,
1,
2,
0,
1,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
37: {
-1,
3,
1,
2,
2,
2,
1,
2,
2,
2,
2,
2,
2,
2,
2,
1,
2,
1,
1,
1,
1,
1,
1,
2,
1,
2,
1,
1,
0,
1,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
38: {
-1,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
2,
2,
0,
2,
0,
1,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
39: {
-1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
40: {
-1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
1,
1,
1,
0,
1,
0,
0,
0,
1,
1,
0,
1,
1,
0,
0,
0,
0,
0,
1,
1,
0,
0,
},
41: {
-1,
1,
1,
1,
2,
1,
2,
2,
2,
0,
2,
0,
2,
0,
1,
1,
2,
1,
1,
1,
1,
2,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
42: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
1,
0,
1,
2,
2,
0,
1,
0,
0,
1,
1,
2,
2,
1,
2,
0,
2,
0,
0,
0,
1,
2,
0,
1,
},
43: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
2,
1,
2,
0,
2,
0,
0,
1,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
1,
0,
0,
1,
},
44: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
2,
1,
1,
0,
1,
0,
0,
1,
1,
1,
2,
2,
0,
0,
1,
0,
0,
0,
1,
0,
0,
1,
},
45: {
-1,
1,
2,
1,
0,
1,
1,
1,
0,
1,
0,
1,
1,
1,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
2,
1,
0,
2,
0,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
46: {
-1,
1,
0,
0,
1,
0,
1,
1,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
47: {
-1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
0,
0,
0,
0,
1,
1,
1,
0,
1,
1,
0,
1,
0,
0,
0,
1,
1,
0,
1,
},
48: {
-1,
0,
1,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
49: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
1,
1,
2,
1,
1,
2,
0,
1,
0,
0,
0,
1,
1,
0,
1,
},
50: {
-1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
2,
0,
1,
0,
0,
0,
0,
2,
1,
1,
2,
0,
2,
0,
0,
0,
1,
1,
0,
1,
},
51: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
2,
1,
1,
0,
1,
0,
0,
2,
2,
1,
2,
1,
1,
0,
1,
0,
0,
0,
1,
1,
0,
1,
},
52: {
-1,
0,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
2,
0,
0,
0,
0,
0,
1,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
1,
},
53: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
2,
0,
0,
0,
0,
2,
1,
1,
1,
0,
2,
1,
1,
0,
0,
0,
2,
1,
0,
1,
},
54: {
-1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
2,
0,
1,
0,
0,
1,
1,
0,
2,
1,
1,
0,
1,
0,
0,
0,
1,
1,
0,
1,
},
55: {
-1,
2,
1,
1,
1,
0,
1,
1,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
56: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
2,
1,
1,
0,
1,
0,
0,
1,
1,
0,
1,
2,
1,
0,
2,
0,
0,
0,
1,
1,
0,
1,
},
57: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
58: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
},
59: {
-1,
1,
0,
0,
2,
0,
2,
1,
1,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
60: {
-1,
0,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
2,
0,
1,
0,
0,
1,
1,
1,
0,
1,
0,
0,
1,
0,
0,
0,
1,
0,
0,
1,
},
61: {
-1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
0,
1,
0,
0,
2,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
1,
0,
1,
},
62: {
-1,
1,
1,
1,
2,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
63: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
1,
0,
0,
0,
0,
0,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
1,
1,
0,
0,
},
}
HebrewLangModel prev HEBREW_LANG_MODEL
var HungarianLangModel = map[CharacterCategory][]int{
1: {
-1,
2,
2,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
3,
3,
1,
2,
3,
3,
3,
3,
2,
3,
3,
1,
1,
3,
3,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
},
2: {
-1,
2,
1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
3,
1,
1,
2,
3,
3,
3,
3,
3,
3,
3,
1,
1,
3,
2,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
3: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
1,
2,
3,
3,
3,
1,
3,
3,
3,
3,
3,
1,
3,
3,
2,
2,
0,
3,
2,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
},
4: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
3,
3,
2,
3,
3,
3,
3,
3,
2,
3,
3,
2,
2,
3,
2,
3,
2,
0,
3,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
},
5: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
3,
2,
3,
3,
3,
1,
2,
3,
2,
2,
3,
1,
2,
3,
3,
2,
2,
0,
3,
3,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
6: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
2,
3,
3,
3,
3,
0,
2,
3,
2,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
7: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
1,
1,
3,
3,
2,
1,
3,
2,
2,
3,
2,
1,
3,
2,
2,
1,
0,
3,
3,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
8: {
-1,
2,
2,
3,
3,
3,
3,
3,
1,
2,
3,
3,
3,
3,
1,
2,
1,
3,
3,
3,
3,
2,
2,
3,
1,
1,
3,
2,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
9: {
-1,
3,
3,
3,
3,
3,
3,
3,
2,
2,
3,
3,
3,
3,
3,
2,
1,
3,
3,
3,
3,
3,
2,
2,
1,
3,
3,
3,
0,
1,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
},
10: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
3,
3,
2,
3,
3,
3,
2,
0,
3,
2,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
1,
0,
},
11: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
3,
2,
3,
3,
3,
1,
3,
2,
2,
2,
3,
1,
1,
3,
3,
1,
1,
0,
3,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
12: {
-1,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
3,
2,
3,
3,
3,
2,
3,
3,
3,
3,
3,
1,
2,
3,
2,
2,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
13: {
-1,
3,
3,
2,
2,
2,
3,
1,
3,
3,
2,
2,
1,
3,
3,
3,
1,
1,
3,
1,
2,
3,
2,
3,
2,
2,
2,
1,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
},
14: {
-1,
1,
1,
3,
3,
3,
3,
3,
1,
2,
3,
3,
3,
3,
1,
2,
1,
3,
3,
3,
2,
2,
3,
2,
1,
0,
3,
2,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
15: {
-1,
1,
1,
3,
3,
3,
3,
3,
1,
2,
3,
3,
3,
3,
1,
1,
0,
3,
3,
3,
3,
0,
2,
3,
0,
0,
2,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
16: {
-1,
3,
3,
3,
3,
3,
2,
2,
3,
3,
2,
2,
2,
2,
3,
3,
0,
1,
2,
3,
2,
3,
2,
2,
3,
2,
1,
2,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
},
17: {
-1,
3,
3,
3,
3,
3,
1,
2,
3,
3,
3,
2,
1,
2,
3,
3,
2,
2,
2,
3,
2,
3,
3,
1,
3,
3,
1,
1,
0,
2,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
18: {
-1,
3,
3,
1,
2,
2,
2,
2,
3,
3,
3,
1,
1,
1,
3,
3,
1,
1,
3,
1,
1,
3,
2,
1,
2,
3,
1,
1,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
19: {
-1,
3,
3,
2,
1,
2,
1,
1,
3,
3,
1,
1,
1,
1,
3,
3,
1,
1,
2,
2,
1,
2,
1,
1,
2,
2,
1,
1,
0,
2,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
20: {
-1,
3,
3,
1,
1,
2,
1,
1,
3,
3,
1,
0,
1,
1,
3,
3,
2,
0,
1,
1,
2,
3,
1,
0,
2,
2,
1,
0,
0,
1,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
21: {
-1,
2,
1,
3,
3,
3,
3,
3,
1,
2,
3,
2,
3,
3,
2,
1,
1,
3,
2,
3,
2,
1,
2,
2,
0,
1,
2,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
22: {
-1,
3,
3,
3,
2,
2,
2,
2,
3,
1,
2,
2,
1,
1,
3,
3,
0,
3,
2,
1,
2,
3,
2,
1,
3,
3,
1,
1,
0,
2,
1,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
23: {
-1,
3,
3,
2,
2,
2,
3,
2,
3,
3,
3,
2,
1,
1,
3,
3,
1,
1,
1,
2,
2,
3,
2,
3,
2,
2,
2,
1,
0,
2,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
24: {
-1,
0,
0,
3,
3,
3,
3,
3,
0,
0,
3,
3,
2,
3,
0,
0,
0,
2,
3,
3,
1,
0,
1,
2,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
25: {
-1,
1,
2,
3,
3,
3,
3,
3,
1,
2,
3,
3,
2,
2,
1,
1,
0,
3,
3,
2,
2,
1,
2,
2,
1,
0,
2,
2,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
26: {
-1,
3,
2,
2,
1,
3,
1,
2,
3,
3,
2,
2,
1,
1,
2,
2,
1,
1,
1,
1,
3,
2,
1,
1,
1,
1,
2,
1,
0,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
27: {
-1,
3,
3,
1,
1,
1,
1,
1,
3,
3,
3,
0,
1,
1,
3,
3,
1,
1,
1,
1,
1,
2,
2,
0,
3,
1,
1,
2,
0,
2,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
28: {
-1,
1,
0,
1,
2,
1,
2,
2,
0,
1,
2,
3,
1,
2,
0,
0,
0,
2,
1,
1,
1,
1,
1,
2,
0,
0,
1,
1,
0,
0,
0,
0,
1,
2,
1,
2,
2,
2,
1,
2,
1,
2,
0,
2,
0,
2,
2,
1,
1,
2,
1,
1,
2,
1,
1,
1,
0,
1,
0,
0,
0,
1,
1,
0,
},
29: {
-1,
1,
1,
2,
3,
2,
3,
3,
0,
1,
2,
2,
3,
1,
0,
1,
0,
2,
1,
2,
2,
0,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
30: {
-1,
0,
0,
3,
3,
2,
2,
1,
0,
0,
3,
2,
3,
2,
0,
0,
0,
1,
1,
3,
0,
0,
1,
1,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
31: {
-1,
1,
1,
2,
2,
3,
3,
1,
0,
1,
3,
2,
3,
1,
1,
1,
0,
1,
1,
1,
1,
1,
3,
1,
0,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
32: {
-1,
1,
1,
1,
2,
2,
2,
1,
0,
1,
2,
3,
3,
2,
0,
0,
0,
2,
1,
1,
1,
2,
1,
1,
1,
0,
1,
1,
1,
0,
0,
0,
1,
2,
2,
2,
2,
2,
1,
1,
1,
2,
0,
2,
1,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
1,
1,
},
33: {
-1,
2,
2,
1,
0,
0,
1,
1,
2,
2,
0,
3,
0,
1,
2,
1,
1,
0,
0,
1,
1,
1,
0,
1,
1,
1,
1,
0,
2,
1,
1,
1,
2,
2,
1,
1,
1,
2,
1,
2,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
1,
2,
3,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
},
34: {
-1,
3,
3,
0,
1,
0,
0,
0,
3,
3,
1,
0,
0,
1,
2,
2,
1,
0,
0,
0,
0,
2,
0,
0,
1,
1,
1,
0,
2,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
2,
1,
1,
0,
1,
1,
0,
1,
1,
1,
0,
1,
2,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
0,
1,
},
35: {
-1,
3,
3,
0,
1,
0,
0,
0,
2,
2,
0,
0,
0,
0,
1,
2,
2,
0,
0,
0,
0,
1,
0,
0,
1,
1,
0,
0,
2,
0,
1,
0,
2,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
0,
1,
1,
1,
1,
1,
0,
1,
},
36: {
-1,
2,
2,
0,
1,
0,
1,
0,
2,
3,
2,
0,
0,
1,
2,
2,
1,
0,
0,
1,
1,
1,
0,
0,
2,
1,
0,
1,
2,
2,
1,
1,
2,
1,
1,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
0,
2,
1,
0,
1,
1,
0,
1,
1,
1,
0,
1,
1,
2,
1,
1,
0,
1,
},
37: {
-1,
2,
2,
0,
0,
1,
0,
0,
2,
2,
1,
1,
0,
0,
2,
1,
1,
0,
0,
0,
1,
2,
0,
0,
2,
1,
0,
0,
2,
1,
1,
1,
2,
1,
1,
1,
1,
2,
1,
2,
1,
1,
1,
2,
2,
1,
1,
2,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
},
38: {
-1,
2,
3,
0,
0,
0,
1,
0,
3,
2,
1,
0,
0,
1,
2,
1,
1,
0,
0,
0,
0,
2,
1,
0,
1,
1,
0,
0,
2,
1,
2,
1,
1,
1,
0,
0,
0,
1,
0,
1,
1,
1,
1,
1,
2,
0,
0,
1,
0,
0,
0,
2,
0,
0,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
},
39: {
-1,
0,
0,
2,
1,
2,
2,
1,
0,
0,
2,
1,
2,
2,
0,
0,
0,
2,
1,
1,
1,
0,
1,
1,
0,
0,
1,
1,
2,
0,
0,
0,
1,
2,
1,
2,
2,
1,
1,
2,
1,
2,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
0,
0,
1,
1,
1,
1,
0,
0,
1,
},
40: {
-1,
3,
2,
0,
0,
0,
1,
0,
2,
2,
2,
0,
0,
0,
2,
2,
1,
0,
0,
0,
0,
3,
1,
1,
1,
1,
0,
0,
2,
1,
1,
1,
2,
1,
0,
1,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
0,
2,
1,
0,
0,
1,
0,
1,
1,
0,
1,
1,
1,
1,
1,
1,
0,
1,
},
41: {
-1,
3,
2,
0,
0,
0,
1,
0,
2,
2,
0,
0,
0,
0,
2,
1,
1,
0,
0,
0,
0,
2,
1,
0,
1,
1,
0,
0,
2,
1,
1,
0,
2,
1,
1,
1,
1,
2,
1,
2,
1,
2,
0,
1,
1,
1,
0,
2,
1,
1,
1,
2,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
0,
1,
},
42: {
-1,
1,
1,
2,
2,
2,
3,
2,
1,
1,
2,
2,
1,
1,
0,
1,
0,
2,
2,
1,
1,
1,
1,
1,
0,
0,
1,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
43: {
-1,
2,
2,
0,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
2,
2,
1,
0,
0,
0,
1,
1,
0,
0,
1,
2,
0,
0,
2,
1,
1,
1,
2,
2,
1,
1,
1,
2,
1,
2,
1,
1,
0,
1,
1,
1,
1,
2,
1,
1,
1,
2,
1,
1,
1,
1,
0,
1,
2,
1,
1,
1,
0,
1,
},
44: {
-1,
0,
0,
1,
2,
3,
2,
1,
0,
0,
2,
0,
1,
1,
0,
0,
0,
1,
1,
1,
1,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
1,
2,
1,
2,
1,
2,
1,
1,
1,
2,
0,
2,
1,
1,
1,
0,
1,
2,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
45: {
-1,
3,
2,
0,
0,
0,
0,
0,
1,
1,
2,
1,
0,
0,
1,
1,
1,
0,
0,
0,
0,
2,
0,
0,
1,
1,
0,
0,
2,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
2,
1,
0,
1,
1,
1,
1,
0,
2,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
1,
1,
1,
0,
1,
},
46: {
-1,
2,
2,
0,
1,
1,
1,
0,
2,
2,
2,
0,
0,
0,
3,
2,
1,
0,
0,
0,
1,
1,
0,
0,
1,
1,
0,
1,
1,
1,
0,
0,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
1,
0,
0,
1,
1,
1,
0,
1,
0,
1,
},
47: {
-1,
1,
0,
2,
1,
1,
2,
2,
1,
1,
2,
1,
1,
1,
0,
0,
0,
1,
1,
0,
1,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
0,
1,
2,
2,
2,
2,
2,
1,
1,
1,
2,
0,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
0,
0,
1,
0,
},
48: {
-1,
2,
3,
0,
0,
0,
1,
0,
2,
2,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
2,
0,
1,
0,
2,
1,
1,
1,
1,
1,
0,
2,
0,
0,
0,
1,
2,
1,
1,
1,
1,
0,
1,
2,
0,
1,
0,
1,
0,
1,
1,
1,
0,
1,
0,
1,
},
49: {
-1,
2,
2,
0,
0,
0,
1,
0,
2,
1,
2,
0,
0,
0,
1,
1,
2,
0,
0,
0,
0,
1,
0,
0,
1,
1,
0,
0,
2,
1,
0,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
0,
1,
1,
1,
1,
1,
0,
1,
},
50: {
-1,
2,
2,
0,
0,
0,
1,
0,
2,
2,
2,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
1,
1,
0,
2,
0,
0,
1,
1,
1,
0,
1,
1,
0,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
0,
0,
1,
0,
0,
1,
1,
0,
1,
0,
1,
1,
1,
1,
1,
0,
0,
0,
1,
},
51: {
-1,
0,
0,
1,
0,
1,
2,
1,
0,
0,
1,
1,
1,
2,
0,
0,
0,
1,
1,
0,
1,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
2,
1,
2,
1,
1,
1,
1,
1,
2,
0,
2,
0,
1,
1,
0,
1,
2,
1,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
},
52: {
-1,
1,
1,
0,
1,
2,
0,
0,
1,
1,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
2,
1,
0,
1,
2,
2,
1,
1,
1,
1,
1,
2,
1,
1,
0,
1,
1,
1,
1,
2,
1,
1,
1,
2,
1,
1,
0,
1,
0,
1,
1,
1,
1,
1,
0,
1,
},
53: {
-1,
2,
2,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
2,
0,
0,
2,
2,
0,
0,
2,
0,
0,
1,
2,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
1,
1,
0,
1,
0,
0,
0,
1,
1,
1,
1,
0,
0,
1,
1,
1,
1,
0,
0,
1,
},
54: {
-1,
1,
2,
0,
0,
3,
1,
0,
2,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
1,
0,
1,
0,
1,
2,
1,
0,
1,
1,
1,
2,
1,
1,
0,
1,
1,
1,
1,
1,
0,
0,
0,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
1,
0,
0,
},
55: {
-1,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
2,
0,
0,
0,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
0,
0,
1,
1,
1,
1,
1,
0,
1,
},
56: {
-1,
1,
1,
1,
2,
1,
1,
1,
0,
1,
1,
2,
1,
0,
0,
0,
0,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
57: {
-1,
1,
0,
1,
1,
1,
1,
1,
0,
0,
1,
1,
2,
1,
0,
0,
0,
1,
1,
0,
0,
0,
1,
1,
0,
0,
1,
0,
1,
0,
0,
0,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
},
58: {
-1,
0,
0,
0,
1,
1,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
1,
1,
1,
2,
0,
0,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
1,
1,
1,
1,
1,
1,
1,
1,
2,
0,
1,
1,
1,
1,
0,
1,
1,
1,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
59: {
-1,
0,
0,
1,
1,
1,
1,
1,
0,
0,
2,
1,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
1,
0,
1,
1,
0,
1,
1,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
60: {
-1,
0,
0,
1,
1,
1,
0,
0,
0,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
1,
1,
0,
0,
1,
1,
0,
1,
0,
1,
0,
0,
1,
1,
1,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
61: {
-1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
0,
1,
0,
0,
1,
1,
0,
1,
0,
1,
1,
0,
1,
1,
1,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
62: {
-1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
1,
0,
0,
1,
0,
1,
0,
1,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
63: {
-1,
0,
0,
1,
1,
1,
1,
0,
0,
0,
1,
1,
1,
0,
0,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
1,
0,
1,
0,
0,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
}
HungarianLangModel hungarian
var IBM855RussianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
IBM855RussianCharToOrder IBM855_RUSSIAN_CharToOrder
var IBM855RussianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
IBM855RussianCharToOrderList IBM855_RUSSIAN_CharToOrder
var IBM855RussianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
IBM855RussianModel prev IBM855_RUSSIAN_MODEL
var IBM866RussianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
IBM866RussianCharToOrder prev IBM866_RUSSIAN_CharToOrder Character Mapping Table(s):
var IBM866RussianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
IBM866RussianCharToOrderList prev IBM866_RUSSIAN_CharToOrder
var IBM866RussianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
IBM866RussianModel IBM866_RUSSIAN_MODEL
var ISO2022CNCharLenTable = []int{0, 0, 0, 0, 0, 0, 0, 0, 0}
ISO2022CNCharLenTable ISO2022 CN
var ISO2022CNCls = []int{}/* 256 elements not displayed */
ISO2022CNCls classes
var ISO2022CNSmModel = Model{ // contains filtered or unexported fields }
ISO2022CNSmModel model
var ISO2022CNStates = []MachineState{ MSStart, 3, MSError, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSError, 4, MSError, MSError, MSError, MSError, MSItsMe, MSError, MSError, MSError, MSError, 5, 6, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSError, MSStart, }
ISO2022CNStates states
var ISO2022JPCharLenTable = []int{0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
ISO2022JPCharLenTable JP
var ISO2022JPCls = []int{}/* 256 elements not displayed */
ISO2022JPCls classes
var ISO2022JPSmModel = Model{ // contains filtered or unexported fields }
ISO2022JPSmModel JP model
var ISO2022JPStates = []MachineState{ MSStart, 3, MSError, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSStart, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSError, 5, MSError, MSError, MSError, 4, MSError, MSError, MSError, MSError, MSError, 6, MSItsMe, MSError, MSItsMe, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSError, MSError, MSError, MSItsMe, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSError, MSStart, MSStart, }
ISO2022JPStates states
var ISO2022KRCharLenTable = []int{0, 0, 0, 0, 0, 0}
ISO2022KRCharLenTable KR
var ISO2022KRCls = []int{}/* 256 elements not displayed */
ISO2022KRCls class
var ISO2022KRSmModel = Model{ // contains filtered or unexported fields }
ISO2022KRSmModel KR Model
var ISO2022KRStates = []MachineState{ MSStart, 3, MSError, MSStart, MSStart, MSStart, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSError, 4, MSError, MSError, MSError, MSError, MSError, MSError, 5, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSStart, MSStart, MSStart, MSStart, }
ISO2022KRStates prev ISO2022KR_ST
var ISO8859_2HungarianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
ISO8859_2HungarianCharToOrder hungarian
var ISO8859_2HungarianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
ISO8859_2HungarianModel model
var ISO8859_5BulgarianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
ISO8859_5BulgarianCharToOrder ISO char to order Character Mapping Table(s):
var ISO8859_5BulgarianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
ISO8859_5BulgarianCharToOrderList ISO char to order
var ISO8859_5BulgarianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
ISO8859_5BulgarianModel iso model
var ISO8859_5RussianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
ISO8859_5RussianCharToOrder ISO_8859_5_RUSSIAN_CharToOrder
var ISO8859_5RussianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
ISO8859_5RussianCharToOrderList ISO_8859_5_RUSSIAN_CharToOrder
var ISO8859_5RussianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
ISO8859_5RussianModel ISO_8859_5_RUSSIAN_MODEL
var ISO8859_7GreekCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
ISO8859_7GreekCharToOrder iso char to order
var ISO8859_7GreekCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
ISO8859_7GreekCharToOrderList iso char to order
var ISO8859_7GreekModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
ISO8859_7GreekModel iso greek model
var ISO8859_9TurkishCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
ISO8859_9TurkishCharToOrder prev ISO_8859_9_TURKISH_CHAR_TO_ORDER Character Mapping Table(s):
var ISO8859_9TurkishCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
ISO8859_9TurkishCharToOrderList prev ISO_8859_9_TURKISH_CHAR_TO_ORDER
var ISO8859_9TurkishModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
ISO8859_9TurkishModel prev ISO_8859_9_TURKISH_MODEL
var JCADontKnow = -1.0
JCADontKnow nope
var JCAEnoughRelThreshold = 100
JCAEnoughRelThreshold enough
var JCAMaxRelThreshold = 100
JCAMaxRelThreshold max
var JCAMinimumDataThreshold = 4
JCAMinimumDataThreshold min
var JCANumCategories = 6
JCANumCategories Number of categories
var JISCharToFreqOrder = []int{}/* 4368 elements not displayed */
JISCharToFreqOrder prev JIS_CHAR_TO_FREQ_ORDER
var JISTableSize = 4368
JISTableSize prev JIS_TABLE_SIZE Char to FreqOrder table ,
var JISTypicalDistributionRatio = 3.0
JISTypicalDistributionRatio prev JIS_TYPICAL_DISTRIBUTION_RATIO
var KOI8RRussianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
KOI8RRussianCharToOrder KOI8_R_RUSSIAN_CharToOrder
var KOI8RRussianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
KOI8RRussianCharToOrderList KOI8_R_RUSSIAN_CharToOrder
var KOI8RRussianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
KOI8RRussianModel KOI8_R_RUSSIAN_MODEL
var MACCYRILLICRussianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
MACCYRILLICRussianCharToOrder MACCYRILLIC_RUSSIAN_CharToOrder
var MACCYRILLICRussianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
MACCYRILLICRussianCharToOrderList MACCYRILLIC_RUSSIAN_CharToOrder
var MACCYRILLICRussianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
MACCYRILLICRussianModel MACCYRILLIC_RUSSIAN_MODEL
var RussianLangModel = map[CharacterCategory][]int{
1: {
-1,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
0,
0,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
2: {
-1,
3,
3,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
0,
0,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
3: {
-1,
2,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
0,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
1,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
4: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
0,
0,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
1,
0,
0,
0,
0,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
5: {
-1,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
3,
1,
3,
3,
1,
3,
3,
3,
3,
2,
2,
3,
0,
2,
2,
2,
3,
3,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
6: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
3,
2,
2,
3,
2,
3,
3,
3,
2,
1,
2,
2,
0,
1,
2,
2,
2,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
7: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
3,
0,
2,
2,
3,
3,
2,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
8: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
1,
2,
3,
2,
2,
3,
2,
3,
3,
3,
3,
2,
2,
3,
0,
3,
2,
2,
3,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
9: {
-1,
3,
3,
3,
3,
3,
3,
3,
2,
2,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
2,
2,
2,
0,
3,
3,
3,
2,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
10: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
3,
2,
3,
3,
3,
3,
3,
3,
2,
3,
2,
2,
0,
1,
3,
2,
1,
2,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
11: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
1,
1,
3,
0,
1,
1,
1,
1,
2,
1,
1,
0,
2,
2,
2,
1,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
12: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
2,
2,
2,
2,
1,
3,
2,
3,
2,
3,
2,
1,
2,
2,
0,
1,
1,
2,
1,
2,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
13: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
3,
2,
3,
3,
3,
2,
2,
2,
2,
0,
2,
2,
2,
2,
3,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
14: {
-1,
2,
3,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
1,
3,
2,
0,
0,
3,
3,
3,
3,
2,
3,
3,
3,
3,
2,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
15: {
-1,
3,
3,
3,
3,
3,
2,
2,
3,
3,
0,
2,
1,
0,
3,
2,
3,
2,
3,
0,
0,
1,
2,
0,
0,
1,
0,
1,
2,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
16: {
-1,
0,
3,
0,
2,
3,
3,
3,
3,
2,
3,
3,
3,
3,
1,
2,
2,
0,
0,
2,
3,
2,
2,
2,
3,
2,
3,
2,
2,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
17: {
-1,
2,
3,
0,
2,
3,
2,
3,
0,
1,
2,
3,
3,
2,
0,
2,
3,
0,
0,
2,
3,
2,
2,
0,
1,
3,
1,
3,
2,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
18: {
-1,
1,
3,
0,
2,
3,
3,
3,
3,
3,
3,
3,
3,
2,
1,
3,
2,
0,
0,
2,
2,
3,
3,
3,
2,
3,
3,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
19: {
-1,
3,
3,
3,
3,
3,
2,
2,
3,
3,
2,
2,
2,
3,
3,
0,
0,
1,
1,
1,
1,
1,
2,
0,
0,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
20: {
-1,
3,
3,
3,
3,
3,
2,
2,
3,
3,
3,
3,
3,
3,
3,
0,
3,
2,
3,
3,
2,
3,
2,
0,
2,
1,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
21: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
2,
2,
2,
2,
3,
1,
3,
2,
3,
1,
1,
2,
1,
0,
2,
2,
2,
2,
1,
3,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
22: {
-1,
2,
3,
3,
3,
3,
3,
1,
2,
2,
1,
3,
1,
0,
3,
0,
0,
3,
0,
0,
0,
1,
1,
0,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
23: {
-1,
2,
2,
1,
1,
3,
3,
3,
2,
2,
1,
2,
2,
3,
1,
1,
2,
0,
0,
2,
2,
1,
3,
0,
0,
2,
1,
1,
2,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
24: {
-1,
2,
3,
3,
3,
3,
1,
2,
2,
2,
1,
2,
1,
3,
3,
1,
1,
2,
1,
2,
1,
2,
2,
0,
2,
0,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
25: {
-1,
3,
3,
3,
3,
3,
2,
1,
3,
2,
2,
3,
2,
0,
3,
2,
0,
3,
0,
1,
0,
1,
1,
0,
0,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
26: {
-1,
3,
2,
3,
3,
3,
2,
2,
2,
3,
3,
1,
2,
1,
2,
1,
0,
1,
0,
1,
1,
0,
1,
0,
0,
2,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
27: {
-1,
1,
1,
2,
1,
2,
3,
3,
2,
2,
1,
2,
2,
3,
0,
2,
1,
0,
0,
2,
2,
3,
2,
1,
2,
2,
2,
2,
2,
3,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
28: {
-1,
3,
3,
3,
3,
1,
1,
0,
1,
1,
2,
2,
1,
1,
3,
0,
0,
1,
3,
1,
1,
1,
0,
0,
0,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
29: {
-1,
1,
3,
3,
3,
2,
0,
0,
0,
2,
1,
0,
1,
0,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
30: {
-1,
0,
1,
0,
0,
2,
3,
2,
2,
2,
1,
2,
2,
2,
1,
2,
1,
0,
0,
1,
1,
1,
0,
2,
0,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
1,
2,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
31: {
-1,
3,
3,
3,
3,
0,
0,
0,
0,
1,
0,
0,
0,
0,
3,
0,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
1,
1,
0,
1,
0,
1,
2,
0,
0,
1,
1,
2,
1,
0,
1,
1,
1,
1,
0,
1,
1,
1,
1,
0,
1,
0,
0,
1,
0,
0,
1,
1,
0,
},
32: {
-1,
2,
3,
2,
2,
2,
3,
1,
2,
2,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
1,
0,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
0,
1,
1,
1,
0,
1,
1,
0,
},
33: {
-1,
3,
3,
2,
2,
2,
2,
3,
2,
2,
1,
1,
2,
2,
2,
2,
1,
1,
3,
1,
2,
1,
2,
0,
0,
1,
1,
0,
1,
0,
2,
1,
1,
1,
1,
1,
1,
2,
1,
0,
1,
1,
1,
1,
0,
1,
0,
0,
1,
1,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
},
34: {
-1,
0,
0,
1,
0,
3,
2,
2,
2,
2,
1,
2,
1,
2,
1,
2,
0,
0,
0,
2,
1,
2,
2,
1,
1,
2,
2,
0,
1,
1,
0,
2,
1,
1,
1,
1,
1,
0,
1,
1,
1,
2,
1,
1,
1,
2,
1,
0,
1,
2,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
1,
0,
0,
1,
},
35: {
-1,
3,
2,
2,
2,
1,
1,
1,
2,
3,
0,
0,
0,
0,
2,
0,
2,
2,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
1,
1,
0,
1,
1,
0,
1,
0,
1,
1,
0,
1,
1,
0,
2,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
},
36: {
-1,
3,
2,
3,
2,
1,
2,
2,
2,
2,
1,
0,
0,
0,
2,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
2,
1,
1,
1,
2,
1,
0,
2,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
1,
1,
0,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
},
37: {
-1,
0,
0,
1,
0,
2,
2,
2,
3,
2,
2,
2,
2,
2,
2,
2,
0,
0,
0,
2,
1,
2,
1,
1,
1,
2,
2,
0,
0,
0,
1,
2,
1,
1,
1,
1,
1,
0,
1,
2,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
1,
0,
0,
1,
},
38: {
-1,
3,
2,
3,
3,
2,
0,
1,
1,
1,
0,
0,
1,
0,
2,
0,
1,
1,
3,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
1,
1,
0,
1,
1,
1,
0,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
},
39: {
-1,
3,
3,
3,
3,
1,
2,
2,
2,
2,
0,
1,
1,
0,
2,
1,
1,
1,
2,
1,
0,
1,
1,
0,
0,
1,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
40: {
-1,
3,
3,
3,
2,
0,
0,
1,
1,
2,
2,
1,
0,
0,
2,
0,
1,
1,
3,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
1,
2,
1,
1,
1,
2,
0,
1,
1,
1,
0,
1,
0,
1,
1,
0,
1,
0,
1,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
},
41: {
-1,
3,
2,
3,
2,
1,
0,
0,
2,
2,
2,
0,
1,
0,
2,
0,
1,
1,
1,
0,
1,
0,
0,
0,
3,
0,
1,
1,
0,
0,
2,
1,
1,
1,
1,
0,
1,
1,
0,
0,
0,
0,
1,
1,
0,
1,
0,
0,
2,
1,
1,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
1,
1,
0,
},
42: {
-1,
1,
2,
1,
1,
2,
2,
2,
2,
2,
2,
1,
2,
2,
1,
1,
0,
0,
0,
2,
2,
2,
0,
0,
0,
1,
2,
1,
0,
1,
0,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
2,
1,
1,
1,
0,
1,
0,
1,
1,
0,
1,
1,
1,
0,
0,
1,
},
43: {
-1,
0,
0,
0,
0,
2,
0,
1,
1,
1,
1,
1,
1,
1,
0,
1,
0,
0,
0,
1,
1,
1,
0,
1,
0,
1,
1,
0,
0,
1,
0,
1,
1,
1,
0,
0,
1,
0,
0,
0,
1,
0,
1,
1,
0,
0,
1,
0,
1,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
1,
},
44: {
-1,
3,
3,
2,
2,
0,
0,
0,
2,
2,
0,
0,
0,
1,
2,
0,
1,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
1,
0,
1,
1,
0,
0,
1,
1,
0,
0,
0,
1,
1,
0,
1,
1,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
45: {
-1,
3,
2,
3,
2,
0,
0,
0,
0,
1,
1,
0,
0,
0,
2,
0,
2,
0,
2,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
1,
1,
1,
1,
2,
0,
1,
2,
1,
0,
1,
1,
2,
1,
1,
1,
1,
1,
2,
1,
1,
0,
1,
0,
0,
1,
1,
1,
1,
1,
0,
1,
1,
0,
},
46: {
-1,
3,
2,
2,
2,
1,
0,
0,
2,
2,
1,
0,
1,
2,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
1,
0,
0,
1,
1,
0,
1,
1,
0,
0,
1,
1,
0,
1,
1,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
47: {
-1,
0,
0,
1,
0,
2,
3,
1,
2,
2,
2,
2,
2,
2,
1,
1,
0,
0,
0,
1,
0,
1,
0,
2,
1,
1,
1,
0,
0,
0,
0,
1,
1,
1,
0,
1,
1,
0,
1,
1,
1,
1,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
},
48: {
-1,
0,
2,
0,
0,
1,
0,
3,
2,
1,
2,
1,
2,
2,
0,
1,
0,
0,
0,
2,
1,
0,
0,
2,
1,
1,
1,
1,
0,
2,
0,
2,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
1,
0,
1,
1,
1,
1,
0,
0,
0,
1,
1,
1,
1,
0,
1,
0,
0,
1,
},
49: {
-1,
2,
2,
2,
2,
1,
0,
0,
1,
0,
0,
0,
0,
0,
2,
0,
1,
1,
1,
1,
0,
0,
0,
0,
1,
0,
1,
2,
0,
0,
2,
0,
1,
0,
1,
1,
1,
2,
1,
0,
1,
0,
1,
1,
0,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
0,
1,
0,
0,
1,
0,
1,
1,
0,
},
50: {
-1,
1,
2,
2,
2,
0,
3,
0,
1,
1,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
1,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
},
51: {
-1,
2,
2,
3,
2,
2,
0,
0,
1,
1,
2,
0,
1,
2,
1,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
0,
1,
1,
0,
0,
1,
1,
0,
0,
1,
1,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
},
52: {
-1,
2,
1,
1,
2,
1,
2,
2,
2,
2,
2,
1,
2,
2,
0,
1,
0,
0,
0,
1,
2,
2,
2,
1,
2,
1,
1,
1,
1,
1,
2,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
1,
1,
1,
0,
1,
1,
1,
0,
0,
0,
0,
1,
1,
1,
0,
1,
1,
0,
0,
1,
},
53: {
-1,
2,
2,
2,
2,
0,
1,
0,
2,
2,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
1,
1,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
54: {
-1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
55: {
-1,
2,
2,
2,
2,
0,
0,
0,
2,
2,
2,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
1,
1,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
56: {
-1,
2,
2,
2,
2,
0,
0,
0,
0,
1,
0,
0,
1,
1,
2,
0,
0,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
2,
0,
0,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
57: {
-1,
2,
2,
2,
1,
1,
2,
0,
2,
1,
1,
1,
1,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
1,
0,
0,
1,
0,
1,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
58: {
-1,
0,
2,
1,
2,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
59: {
-1,
0,
0,
0,
0,
2,
0,
1,
2,
1,
0,
1,
1,
1,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
60: {
-1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
},
61: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
1,
0,
1,
0,
1,
0,
0,
1,
1,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
},
62: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
0,
1,
1,
0,
1,
0,
1,
0,
0,
0,
0,
1,
1,
0,
1,
1,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
1,
0,
0,
0,
},
63: {
-1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
},
}
RussianLangModel prev RUSSIAN_LANG_MODEL
var SBCPNegativeShortcutThreshold = 0.05
SBCPNegativeShortcutThreshold ???
var SBCPPositiveShortcutThreshold = 0.95
SBCPPositiveShortcutThreshold ???
var SBCPSampleSize = 64
SBCPSampleSize sample size
var SBEnoughRelThreshold = 1024
SBEnoughRelThreshold ??? -> 0.25 * SBCPSampleSize^2
var SJISCharLenTable = []int{0, 1, 1, 2, 0, 0}
SJISCharLenTable charLenTable
var SJISCls = []int{}/* 256 elements not displayed */
SJISCls classes
var SJISSmModel = Model{ // contains filtered or unexported fields }
SJISSmModel model
var SJISStates = []MachineState{ MSError, MSStart, MSStart, 3, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSError, MSError, MSStart, MSStart, MSStart, MSStart, }
SJISStates states
var TIS620ThaiCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
TIS620ThaiCharToOrder CToOrder Character Mapping Table(s):
var TIS620ThaiCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
TIS620ThaiCharToOrderList CToOrder
var TIS620ThaiModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
TIS620ThaiModel thai model
var ThaiLangModel = map[CharacterCategory][]int{
1: {
-1,
0,
3,
3,
2,
3,
0,
0,
3,
3,
0,
3,
3,
0,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
2,
3,
0,
2,
2,
2,
3,
0,
2,
3,
0,
0,
0,
0,
1,
0,
1,
2,
3,
1,
1,
3,
2,
2,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
},
2: {
-1,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
2,
2,
2,
3,
3,
2,
3,
2,
3,
3,
2,
2,
2,
3,
1,
2,
3,
0,
3,
3,
2,
2,
1,
2,
3,
3,
1,
2,
0,
1,
3,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
},
3: {
-1,
3,
2,
2,
3,
3,
3,
3,
1,
2,
3,
3,
3,
3,
3,
2,
2,
2,
2,
3,
3,
2,
2,
3,
3,
2,
2,
3,
2,
3,
2,
2,
3,
3,
1,
2,
3,
1,
2,
2,
3,
3,
1,
0,
2,
1,
0,
0,
3,
1,
2,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
1,
},
4: {
-1,
3,
3,
3,
3,
3,
2,
2,
3,
3,
3,
3,
2,
3,
2,
2,
3,
3,
2,
2,
3,
2,
2,
2,
2,
1,
1,
3,
1,
2,
1,
1,
3,
2,
1,
0,
2,
1,
0,
1,
0,
1,
1,
0,
1,
1,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
5: {
-1,
3,
3,
2,
3,
2,
3,
3,
2,
2,
3,
2,
3,
3,
2,
3,
1,
1,
2,
3,
2,
2,
2,
3,
2,
2,
2,
2,
2,
1,
2,
1,
2,
2,
1,
1,
3,
3,
2,
1,
0,
1,
2,
2,
0,
1,
3,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
2,
3,
0,
0,
2,
1,
1,
},
6: {
-1,
3,
2,
3,
3,
2,
0,
0,
3,
3,
0,
3,
3,
0,
2,
2,
3,
1,
2,
2,
1,
1,
1,
0,
2,
2,
2,
0,
2,
2,
1,
1,
0,
2,
1,
0,
2,
0,
0,
2,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
7: {
-1,
3,
2,
3,
3,
2,
0,
0,
3,
3,
0,
2,
3,
0,
2,
1,
2,
2,
2,
2,
1,
2,
0,
0,
2,
2,
2,
0,
2,
2,
1,
1,
0,
2,
1,
0,
2,
0,
0,
2,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
8: {
-1,
3,
2,
3,
2,
3,
2,
0,
2,
2,
1,
3,
2,
1,
3,
2,
1,
2,
3,
2,
2,
3,
0,
2,
3,
2,
2,
1,
2,
2,
2,
2,
1,
2,
2,
0,
0,
0,
0,
2,
0,
1,
2,
0,
1,
1,
1,
0,
1,
0,
3,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
9: {
-1,
3,
2,
3,
3,
2,
3,
2,
2,
2,
3,
2,
2,
3,
2,
2,
1,
2,
3,
2,
2,
3,
1,
3,
2,
2,
2,
3,
2,
2,
2,
3,
3,
2,
1,
3,
0,
1,
1,
1,
0,
2,
1,
1,
1,
1,
1,
0,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
},
10: {
-1,
0,
0,
3,
0,
3,
3,
3,
3,
3,
0,
0,
3,
0,
2,
2,
3,
3,
3,
3,
3,
0,
0,
0,
1,
1,
3,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
2,
3,
0,
0,
0,
3,
0,
2,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
},
11: {
-1,
0,
3,
3,
3,
3,
0,
0,
2,
3,
0,
0,
3,
0,
3,
3,
2,
3,
3,
3,
3,
3,
0,
0,
3,
3,
3,
0,
0,
0,
3,
3,
0,
0,
3,
0,
0,
0,
0,
2,
0,
0,
2,
1,
1,
3,
0,
0,
1,
0,
0,
2,
3,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
},
12: {
-1,
3,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
1,
2,
1,
3,
3,
2,
2,
1,
2,
2,
2,
3,
1,
1,
2,
0,
2,
1,
2,
1,
2,
2,
1,
0,
0,
0,
1,
1,
0,
1,
0,
1,
1,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
13: {
-1,
0,
2,
1,
2,
3,
3,
3,
0,
2,
0,
2,
2,
0,
2,
1,
3,
2,
2,
1,
2,
1,
0,
0,
2,
2,
1,
0,
2,
1,
2,
2,
0,
1,
1,
0,
0,
0,
0,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
14: {
-1,
3,
3,
3,
2,
1,
3,
3,
1,
1,
3,
0,
2,
3,
1,
1,
3,
2,
1,
1,
2,
0,
2,
2,
3,
2,
1,
1,
1,
1,
1,
2,
3,
0,
0,
1,
3,
1,
2,
1,
2,
0,
3,
0,
0,
0,
1,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
},
15: {
-1,
3,
1,
1,
3,
2,
3,
3,
3,
1,
3,
2,
1,
3,
2,
1,
3,
2,
2,
2,
2,
1,
3,
3,
1,
2,
1,
3,
1,
2,
3,
0,
2,
1,
1,
3,
2,
2,
2,
1,
2,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
},
16: {
-1,
3,
2,
3,
2,
3,
3,
2,
3,
2,
3,
2,
3,
3,
2,
1,
0,
3,
2,
2,
2,
1,
2,
2,
2,
1,
2,
2,
1,
2,
1,
1,
2,
2,
2,
3,
0,
1,
3,
1,
1,
1,
1,
0,
1,
1,
0,
2,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
17: {
-1,
3,
3,
3,
2,
3,
2,
2,
1,
1,
3,
2,
3,
2,
3,
2,
0,
3,
2,
2,
1,
2,
0,
2,
2,
2,
1,
2,
2,
2,
2,
1,
3,
2,
1,
2,
2,
1,
0,
2,
0,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
18: {
-1,
3,
3,
3,
3,
2,
3,
1,
2,
3,
3,
2,
2,
3,
0,
1,
1,
2,
0,
3,
3,
2,
2,
3,
0,
1,
1,
3,
0,
0,
0,
0,
3,
1,
0,
3,
3,
0,
2,
0,
2,
1,
0,
0,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
19: {
-1,
3,
3,
2,
3,
2,
3,
3,
0,
1,
3,
1,
1,
2,
1,
2,
1,
1,
3,
1,
1,
0,
2,
3,
1,
1,
1,
1,
1,
1,
1,
1,
3,
1,
1,
2,
2,
2,
2,
1,
1,
1,
0,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
20: {
-1,
2,
2,
1,
1,
2,
1,
3,
3,
2,
3,
2,
2,
3,
2,
2,
3,
1,
2,
2,
1,
2,
0,
3,
2,
1,
2,
2,
2,
2,
2,
1,
3,
2,
1,
2,
2,
2,
1,
1,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
21: {
-1,
3,
3,
3,
3,
3,
3,
3,
1,
3,
3,
0,
2,
1,
0,
3,
2,
0,
0,
3,
1,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
22: {
-1,
0,
2,
2,
2,
3,
0,
0,
1,
3,
0,
3,
2,
0,
3,
2,
2,
3,
3,
3,
3,
3,
1,
0,
2,
2,
2,
0,
2,
2,
1,
2,
0,
2,
3,
0,
0,
0,
0,
1,
0,
1,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
23: {
-1,
0,
2,
3,
1,
3,
3,
2,
3,
3,
0,
3,
3,
0,
3,
2,
2,
3,
2,
3,
3,
3,
0,
0,
2,
2,
3,
0,
1,
1,
1,
3,
0,
0,
3,
0,
0,
0,
2,
2,
0,
1,
3,
0,
1,
2,
2,
2,
3,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
24: {
-1,
2,
3,
3,
2,
0,
3,
3,
2,
2,
3,
1,
3,
2,
1,
3,
2,
0,
1,
2,
2,
0,
2,
3,
2,
1,
0,
3,
0,
0,
0,
0,
3,
0,
0,
2,
3,
1,
3,
0,
0,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
25: {
-1,
1,
3,
2,
2,
2,
1,
2,
0,
1,
3,
1,
1,
3,
1,
3,
0,
0,
2,
1,
1,
1,
1,
2,
1,
1,
1,
0,
2,
1,
0,
1,
1,
2,
0,
0,
0,
3,
1,
1,
0,
0,
0,
0,
1,
0,
1,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
3,
1,
0,
0,
0,
1,
0,
},
26: {
-1,
3,
3,
3,
2,
2,
2,
2,
2,
1,
3,
1,
1,
1,
2,
0,
1,
1,
2,
1,
2,
1,
3,
2,
0,
0,
3,
1,
1,
1,
1,
1,
3,
1,
0,
2,
3,
0,
0,
0,
3,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
27: {
-1,
0,
0,
2,
3,
0,
3,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
28: {
-1,
0,
2,
3,
1,
3,
0,
0,
1,
2,
0,
0,
2,
0,
3,
3,
2,
3,
3,
3,
2,
3,
0,
0,
2,
2,
2,
0,
0,
0,
2,
2,
0,
0,
1,
0,
0,
0,
0,
3,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
29: {
-1,
0,
0,
3,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
3,
1,
3,
3,
0,
0,
1,
0,
3,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
30: {
-1,
3,
1,
2,
3,
1,
2,
3,
1,
0,
3,
0,
2,
2,
1,
0,
2,
1,
1,
2,
0,
1,
0,
0,
1,
1,
1,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
1,
0,
3,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
31: {
-1,
3,
3,
3,
2,
1,
0,
1,
1,
1,
3,
1,
2,
2,
2,
2,
2,
2,
1,
1,
1,
1,
0,
3,
1,
0,
1,
3,
1,
1,
1,
1,
1,
1,
0,
2,
0,
1,
3,
1,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
1,
},
32: {
-1,
0,
2,
2,
1,
3,
3,
2,
3,
3,
0,
1,
1,
0,
2,
2,
1,
2,
1,
3,
3,
1,
0,
0,
3,
2,
0,
0,
0,
0,
2,
1,
0,
1,
0,
0,
0,
0,
1,
2,
0,
1,
1,
3,
1,
1,
2,
2,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
},
33: {
-1,
0,
3,
0,
0,
1,
0,
0,
0,
3,
0,
0,
3,
0,
3,
1,
0,
1,
1,
1,
3,
2,
0,
0,
0,
3,
0,
0,
0,
0,
2,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
34: {
-1,
3,
1,
3,
2,
1,
3,
3,
1,
2,
2,
0,
1,
2,
1,
0,
1,
2,
0,
0,
0,
0,
0,
3,
0,
0,
0,
3,
0,
0,
0,
0,
3,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
35: {
-1,
0,
1,
2,
0,
3,
3,
3,
2,
2,
0,
1,
1,
0,
1,
3,
0,
0,
0,
2,
2,
0,
0,
0,
0,
3,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
36: {
-1,
0,
2,
3,
1,
2,
0,
0,
2,
1,
0,
3,
1,
0,
1,
2,
0,
1,
1,
1,
1,
3,
0,
0,
3,
1,
1,
0,
2,
2,
1,
1,
0,
2,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
37: {
-1,
0,
0,
3,
1,
2,
0,
0,
2,
2,
0,
1,
2,
0,
1,
0,
1,
3,
1,
2,
1,
0,
0,
0,
2,
0,
3,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
38: {
-1,
0,
1,
1,
2,
2,
0,
0,
0,
2,
0,
2,
1,
0,
1,
1,
0,
1,
1,
1,
2,
1,
0,
0,
1,
1,
1,
0,
2,
1,
1,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
1,
},
39: {
-1,
0,
0,
2,
0,
1,
3,
1,
1,
1,
1,
0,
0,
0,
0,
3,
2,
0,
1,
0,
0,
0,
1,
2,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
40: {
-1,
0,
0,
0,
0,
3,
3,
3,
3,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
41: {
-1,
0,
2,
3,
2,
2,
0,
0,
0,
1,
0,
0,
0,
0,
2,
3,
2,
1,
2,
2,
3,
0,
0,
0,
2,
3,
1,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
42: {
-1,
3,
2,
2,
0,
1,
0,
0,
0,
0,
2,
0,
2,
0,
1,
0,
0,
0,
1,
1,
0,
0,
0,
2,
1,
0,
1,
0,
1,
1,
0,
0,
0,
1,
0,
2,
0,
0,
1,
0,
3,
0,
1,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
43: {
-1,
3,
1,
0,
0,
1,
0,
0,
0,
0,
0,
1,
1,
2,
0,
0,
0,
0,
1,
0,
0,
1,
3,
1,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
44: {
-1,
3,
1,
1,
1,
1,
2,
3,
0,
0,
2,
1,
1,
1,
1,
1,
0,
2,
1,
1,
0,
0,
0,
2,
1,
0,
1,
2,
1,
1,
0,
1,
2,
1,
0,
3,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
45: {
-1,
3,
1,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
46: {
-1,
3,
2,
0,
0,
0,
0,
0,
0,
1,
2,
1,
0,
1,
1,
0,
2,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
1,
3,
0,
1,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
1,
2,
0,
0,
0,
0,
0,
},
47: {
-1,
3,
0,
0,
1,
1,
2,
0,
0,
1,
2,
1,
0,
1,
1,
1,
0,
1,
1,
0,
0,
2,
1,
1,
0,
1,
0,
0,
1,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
48: {
-1,
2,
2,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
49: {
-1,
3,
0,
0,
1,
1,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
50: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
51: {
-1,
1,
0,
1,
2,
0,
1,
2,
0,
0,
1,
1,
0,
2,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
2,
0,
0,
0,
0,
1,
0,
0,
1,
0,
1,
1,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
52: {
-1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
1,
1,
0,
2,
1,
3,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
3,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
53: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
54: {
-1,
0,
1,
0,
1,
0,
0,
2,
0,
0,
2,
0,
0,
1,
1,
2,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
55: {
-1,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
56: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
1,
0,
0,
0,
},
57: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
58: {
-1,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
59: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
1,
3,
0,
0,
0,
},
60: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
},
61: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
62: {
-1,
0,
1,
1,
0,
0,
2,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
63: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
}
ThaiLangModel thai
var TurkishLangModel = map[CharacterCategory][]int{
1: {
-1,
2,
2,
3,
3,
0,
3,
3,
3,
3,
3,
3,
3,
2,
3,
1,
0,
3,
3,
1,
3,
3,
0,
3,
3,
3,
3,
3,
0,
3,
0,
3,
3,
1,
1,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
2,
2,
0,
0,
0,
1,
0,
1,
},
2: {
-1,
3,
2,
3,
3,
0,
3,
3,
3,
3,
3,
3,
3,
2,
3,
1,
1,
3,
3,
0,
3,
3,
1,
2,
3,
3,
3,
3,
0,
3,
0,
3,
3,
1,
1,
0,
0,
0,
1,
0,
0,
0,
0,
1,
1,
0,
1,
2,
1,
0,
0,
0,
1,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
1,
},
3: {
-1,
3,
3,
3,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
3,
1,
3,
3,
2,
0,
3,
2,
1,
2,
2,
1,
3,
3,
0,
0,
0,
2,
2,
2,
0,
1,
0,
0,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
1,
0,
1,
0,
0,
1,
},
4: {
-1,
3,
3,
2,
3,
3,
1,
2,
3,
3,
3,
3,
3,
3,
3,
1,
3,
2,
1,
0,
3,
2,
0,
1,
2,
3,
3,
2,
1,
0,
0,
2,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
2,
0,
0,
0,
},
5: {
-1,
0,
1,
3,
3,
1,
3,
3,
3,
3,
3,
3,
3,
1,
2,
0,
0,
2,
3,
0,
2,
3,
0,
0,
2,
2,
2,
3,
0,
3,
0,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
6: {
-1,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
3,
3,
3,
0,
3,
2,
0,
2,
3,
2,
3,
3,
1,
0,
0,
2,
3,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
0,
2,
0,
0,
1,
},
7: {
-1,
3,
3,
2,
3,
3,
2,
3,
3,
3,
3,
2,
3,
3,
3,
0,
3,
3,
0,
0,
2,
1,
0,
0,
2,
3,
2,
2,
0,
0,
0,
2,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
1,
0,
2,
0,
0,
1,
},
8: {
-1,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
0,
3,
2,
0,
1,
3,
2,
1,
1,
3,
2,
3,
2,
1,
0,
0,
2,
2,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
},
9: {
-1,
3,
3,
2,
3,
3,
3,
3,
3,
3,
3,
2,
3,
3,
3,
0,
3,
2,
2,
0,
2,
3,
0,
0,
2,
2,
2,
2,
0,
0,
0,
2,
3,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
2,
0,
1,
0,
0,
0,
},
10: {
-1,
3,
3,
3,
3,
3,
3,
2,
2,
2,
2,
3,
2,
3,
3,
0,
3,
3,
1,
1,
2,
2,
0,
0,
2,
2,
3,
2,
0,
0,
1,
3,
0,
3,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
1,
},
11: {
-1,
3,
3,
2,
3,
3,
3,
2,
1,
2,
2,
3,
2,
3,
3,
0,
3,
2,
0,
0,
1,
1,
0,
1,
1,
2,
1,
2,
0,
0,
0,
1,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
1,
0,
0,
0,
},
12: {
-1,
3,
3,
2,
3,
3,
2,
3,
2,
2,
2,
3,
3,
3,
3,
1,
3,
1,
1,
0,
3,
2,
1,
1,
3,
3,
2,
3,
1,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
2,
0,
0,
1,
},
13: {
-1,
2,
2,
3,
3,
0,
3,
3,
3,
3,
3,
3,
3,
2,
2,
1,
0,
3,
3,
1,
3,
3,
0,
1,
3,
3,
2,
3,
0,
3,
0,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
},
14: {
-1,
2,
2,
3,
3,
0,
3,
3,
3,
3,
3,
3,
3,
3,
3,
0,
0,
3,
2,
0,
3,
3,
0,
3,
2,
3,
3,
3,
0,
3,
1,
3,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
2,
0,
1,
0,
0,
0,
0,
0,
0,
0,
2,
2,
0,
0,
1,
0,
0,
1,
},
15: {
-1,
3,
3,
1,
2,
3,
3,
1,
0,
0,
1,
0,
0,
3,
3,
2,
3,
0,
0,
2,
0,
0,
2,
0,
2,
0,
0,
0,
2,
0,
2,
0,
0,
3,
1,
0,
1,
0,
0,
0,
2,
2,
1,
0,
1,
1,
2,
1,
2,
2,
2,
0,
2,
1,
1,
0,
0,
0,
2,
0,
0,
0,
0,
0,
},
16: {
-1,
2,
1,
3,
3,
0,
3,
3,
3,
3,
3,
2,
3,
0,
0,
0,
0,
2,
3,
0,
2,
3,
1,
0,
2,
3,
1,
3,
0,
3,
0,
2,
3,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
17: {
-1,
3,
3,
1,
3,
3,
2,
2,
3,
2,
2,
0,
1,
2,
3,
0,
1,
2,
1,
0,
1,
0,
0,
0,
1,
0,
2,
2,
0,
0,
0,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
0,
},
18: {
-1,
3,
3,
1,
3,
3,
1,
1,
3,
3,
1,
1,
3,
3,
1,
0,
2,
1,
2,
0,
2,
1,
0,
0,
1,
1,
2,
1,
0,
0,
0,
2,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
19: {
-1,
3,
3,
1,
0,
2,
1,
3,
0,
0,
2,
0,
0,
3,
3,
0,
3,
0,
0,
1,
0,
1,
2,
0,
0,
1,
1,
2,
2,
0,
1,
0,
0,
1,
2,
1,
1,
0,
1,
0,
1,
1,
1,
1,
1,
0,
1,
1,
1,
2,
2,
1,
2,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
},
20: {
-1,
3,
3,
2,
3,
2,
3,
3,
0,
2,
2,
2,
3,
3,
3,
0,
3,
0,
0,
0,
2,
2,
0,
1,
2,
1,
1,
1,
0,
0,
0,
1,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
},
21: {
-1,
3,
3,
3,
3,
3,
2,
1,
2,
2,
3,
3,
3,
3,
2,
0,
2,
0,
0,
0,
2,
2,
0,
0,
2,
1,
3,
3,
0,
0,
1,
1,
1,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
},
22: {
-1,
1,
2,
3,
3,
0,
3,
3,
3,
3,
3,
3,
2,
2,
0,
2,
0,
2,
3,
2,
3,
2,
2,
2,
2,
2,
2,
2,
1,
3,
2,
3,
2,
0,
2,
1,
2,
2,
2,
2,
1,
1,
2,
2,
1,
2,
2,
1,
2,
0,
0,
2,
1,
1,
0,
2,
1,
0,
0,
1,
0,
0,
0,
1,
},
23: {
-1,
3,
3,
1,
1,
1,
0,
1,
1,
1,
2,
3,
2,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
24: {
-1,
3,
3,
2,
2,
2,
3,
2,
3,
2,
2,
1,
3,
3,
3,
0,
2,
1,
2,
0,
2,
1,
0,
0,
1,
1,
1,
1,
1,
0,
0,
1,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
2,
0,
1,
0,
0,
0,
},
25: {
-1,
3,
3,
2,
3,
3,
3,
3,
3,
2,
3,
1,
2,
3,
3,
1,
2,
0,
0,
0,
0,
0,
0,
0,
3,
2,
1,
1,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
},
26: {
-1,
3,
3,
2,
2,
3,
3,
2,
1,
1,
1,
1,
1,
3,
3,
0,
3,
1,
0,
0,
1,
1,
0,
0,
3,
1,
2,
1,
0,
0,
0,
0,
0,
3,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
},
27: {
-1,
3,
3,
2,
2,
3,
2,
2,
2,
3,
2,
1,
1,
3,
3,
0,
3,
0,
0,
0,
0,
1,
0,
0,
3,
1,
1,
2,
0,
0,
0,
1,
1,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
},
28: {
-1,
1,
1,
3,
3,
0,
3,
3,
3,
3,
3,
2,
2,
2,
1,
2,
0,
2,
1,
2,
2,
1,
1,
0,
1,
2,
2,
2,
2,
2,
2,
2,
0,
0,
2,
1,
2,
1,
2,
1,
0,
1,
1,
3,
1,
2,
1,
1,
2,
0,
0,
2,
0,
1,
0,
1,
0,
1,
0,
0,
0,
1,
0,
1,
},
29: {
-1,
3,
3,
1,
3,
3,
3,
0,
1,
1,
0,
2,
2,
3,
1,
0,
3,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
30: {
-1,
3,
2,
0,
0,
2,
2,
1,
0,
0,
1,
0,
0,
3,
3,
1,
3,
0,
0,
1,
1,
0,
2,
0,
3,
0,
0,
0,
2,
0,
1,
1,
0,
1,
2,
0,
1,
2,
2,
0,
2,
2,
2,
2,
1,
0,
2,
1,
1,
0,
2,
0,
2,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
31: {
-1,
3,
3,
1,
3,
2,
3,
2,
0,
2,
2,
2,
1,
3,
2,
0,
2,
1,
2,
0,
1,
2,
0,
0,
1,
0,
2,
2,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
1,
0,
0,
0,
},
32: {
-1,
3,
3,
0,
3,
3,
1,
1,
2,
3,
1,
0,
3,
2,
3,
0,
3,
0,
0,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
1,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
33: {
-1,
0,
0,
3,
3,
0,
3,
3,
2,
3,
3,
2,
2,
0,
0,
0,
0,
1,
2,
0,
1,
3,
0,
0,
0,
3,
1,
1,
0,
3,
0,
2,
2,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
34: {
-1,
3,
3,
1,
2,
2,
1,
0,
3,
1,
1,
1,
1,
3,
3,
2,
3,
0,
0,
1,
0,
1,
2,
0,
2,
2,
0,
2,
2,
0,
2,
1,
0,
2,
2,
1,
1,
1,
1,
0,
2,
1,
1,
0,
1,
1,
1,
1,
2,
1,
2,
1,
2,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
},
35: {
-1,
3,
3,
0,
1,
1,
3,
0,
0,
1,
1,
0,
0,
2,
2,
0,
3,
0,
0,
1,
1,
0,
1,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
3,
1,
0,
1,
0,
1,
0,
2,
0,
0,
1,
0,
1,
0,
1,
1,
1,
2,
1,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
36: {
-1,
3,
3,
0,
2,
0,
2,
0,
1,
1,
1,
0,
0,
3,
3,
0,
2,
0,
0,
1,
0,
0,
2,
1,
1,
0,
1,
0,
1,
0,
1,
0,
0,
2,
0,
1,
2,
0,
2,
0,
2,
1,
1,
0,
1,
0,
2,
1,
1,
0,
2,
1,
1,
0,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
},
37: {
-1,
2,
3,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
1,
2,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
1,
1,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
2,
1,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
38: {
-1,
3,
3,
0,
0,
2,
3,
0,
0,
1,
0,
1,
0,
2,
3,
2,
3,
0,
0,
1,
3,
0,
2,
1,
0,
0,
0,
0,
2,
0,
1,
0,
0,
2,
1,
0,
0,
1,
1,
0,
2,
1,
0,
0,
1,
0,
0,
1,
1,
0,
1,
1,
2,
0,
1,
0,
0,
0,
0,
1,
0,
0,
0,
0,
},
39: {
-1,
2,
2,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
3,
1,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
2,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
40: {
-1,
0,
0,
3,
3,
0,
2,
3,
2,
2,
1,
2,
2,
1,
1,
2,
0,
1,
3,
2,
2,
2,
0,
0,
2,
2,
0,
0,
0,
1,
2,
1,
3,
0,
2,
1,
1,
0,
1,
1,
1,
0,
1,
2,
2,
2,
1,
1,
2,
0,
0,
0,
0,
1,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
},
41: {
-1,
1,
1,
2,
3,
0,
3,
3,
3,
2,
2,
2,
2,
1,
0,
1,
0,
1,
0,
1,
2,
2,
0,
0,
2,
2,
1,
3,
1,
1,
2,
1,
0,
0,
1,
1,
2,
0,
1,
1,
0,
0,
1,
2,
0,
2,
1,
1,
2,
0,
0,
1,
0,
0,
0,
1,
0,
1,
0,
1,
0,
0,
0,
0,
},
42: {
-1,
3,
2,
0,
0,
3,
1,
0,
0,
0,
0,
0,
0,
3,
2,
1,
2,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
1,
0,
0,
2,
1,
1,
0,
0,
1,
0,
1,
2,
0,
0,
1,
1,
0,
0,
2,
1,
1,
1,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
43: {
-1,
3,
2,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
3,
3,
2,
2,
0,
0,
1,
0,
0,
2,
0,
1,
0,
0,
0,
2,
0,
1,
0,
0,
0,
1,
1,
0,
0,
2,
0,
2,
1,
0,
0,
1,
1,
2,
1,
2,
0,
2,
1,
2,
1,
1,
1,
0,
0,
1,
1,
0,
0,
0,
0,
},
44: {
-1,
3,
2,
0,
0,
2,
2,
0,
0,
0,
1,
1,
0,
2,
2,
1,
3,
1,
0,
1,
0,
1,
2,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
1,
1,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
45: {
-1,
3,
3,
2,
0,
0,
0,
1,
0,
0,
1,
0,
0,
2,
3,
1,
2,
0,
0,
1,
0,
0,
2,
0,
0,
0,
1,
0,
2,
0,
2,
0,
0,
1,
1,
2,
2,
1,
2,
0,
2,
1,
1,
0,
0,
1,
1,
0,
1,
1,
1,
1,
2,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
46: {
-1,
3,
3,
0,
2,
1,
2,
1,
0,
0,
1,
1,
0,
3,
3,
1,
2,
0,
0,
1,
0,
0,
2,
0,
2,
0,
1,
1,
2,
0,
0,
0,
0,
0,
1,
1,
1,
1,
2,
0,
1,
1,
0,
1,
1,
1,
1,
0,
0,
0,
1,
1,
1,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
},
47: {
-1,
3,
3,
0,
2,
2,
3,
2,
0,
0,
1,
0,
0,
2,
3,
1,
0,
0,
0,
0,
0,
0,
2,
0,
2,
0,
0,
0,
2,
0,
0,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
1,
0,
1,
1,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
48: {
-1,
2,
3,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
2,
2,
2,
2,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
1,
0,
0,
0,
2,
1,
1,
0,
1,
0,
2,
1,
1,
0,
0,
1,
1,
2,
1,
0,
2,
0,
2,
0,
1,
0,
0,
0,
2,
0,
0,
0,
0,
0,
},
49: {
-1,
0,
0,
2,
2,
0,
2,
1,
1,
1,
1,
2,
2,
0,
0,
1,
0,
1,
0,
0,
1,
3,
0,
0,
0,
0,
1,
0,
0,
2,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
2,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
},
50: {
-1,
0,
0,
2,
3,
0,
2,
3,
1,
2,
2,
0,
2,
0,
0,
2,
0,
2,
1,
1,
1,
2,
1,
0,
0,
1,
2,
1,
1,
2,
1,
0,
1,
0,
2,
0,
1,
0,
1,
1,
0,
0,
2,
2,
1,
2,
1,
1,
2,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
51: {
-1,
3,
3,
0,
2,
1,
2,
0,
0,
0,
1,
0,
0,
3,
2,
0,
1,
0,
0,
1,
0,
0,
2,
0,
0,
0,
1,
2,
1,
0,
1,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
0,
1,
0,
1,
1,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
52: {
-1,
0,
0,
2,
2,
0,
2,
2,
1,
1,
0,
1,
1,
1,
1,
1,
0,
0,
1,
2,
1,
1,
1,
0,
1,
0,
0,
0,
1,
1,
1,
1,
0,
0,
2,
1,
0,
1,
1,
1,
0,
1,
1,
2,
1,
2,
1,
1,
2,
0,
1,
1,
2,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
},
53: {
-1,
2,
2,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
2,
2,
0,
2,
0,
0,
1,
0,
0,
2,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
2,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
54: {
-1,
0,
0,
3,
2,
0,
2,
2,
0,
1,
1,
0,
1,
0,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2,
0,
1,
0,
1,
0,
1,
1,
0,
0,
1,
2,
0,
1,
0,
1,
1,
0,
0,
1,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
},
55: {
-1,
2,
2,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
1,
2,
0,
1,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
1,
2,
0,
1,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
56: {
-1,
2,
2,
2,
1,
0,
1,
1,
1,
0,
0,
0,
0,
1,
2,
0,
0,
1,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
0,
0,
},
57: {
-1,
1,
2,
0,
1,
0,
0,
0,
1,
0,
1,
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
2,
0,
0,
0,
0,
0,
1,
},
58: {
-1,
0,
1,
2,
2,
0,
2,
1,
2,
1,
1,
2,
2,
0,
0,
0,
0,
1,
0,
0,
1,
1,
0,
0,
2,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
},
59: {
-1,
2,
2,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
2,
2,
1,
1,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
60: {
-1,
0,
0,
1,
1,
0,
0,
0,
1,
0,
0,
0,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
61: {
-1,
2,
2,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
1,
0,
0,
},
62: {
-1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
63: {
-1,
0,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2,
2,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
},
}
TurkishLangModel prev TURKISH_LANG_MODEL
var UCS2BECharLenTable = []int{2, 2, 2, 0, 2, 2}
UCS2BECharLenTable charLenTable
var UCS2BECls = []int{}/* 256 elements not displayed */
UCS2BECls classes
var UCS2BESmModel = Model{ // contains filtered or unexported fields }
UCS2BESmModel Model
var UCS2BEStates = []MachineState{ 5, 7, 7, MSError, 4, 3, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, 6, 6, 6, 6, MSError, MSError, 6, 6, 6, 6, 6, MSItsMe, 6, 6, 6, 6, 6, 6, 5, 7, 7, MSError, 5, 8, 6, 6, MSError, 6, 6, 6, 6, 6, 6, 6, MSError, MSError, MSStart, MSStart, }
UCS2BEStates states
var UCS2LECharLenTable = []int{2, 2, 2, 2, 2, 2}
UCS2LECharLenTable charLenTable
var UCS2LECls = []int{}/* 256 elements not displayed */
UCS2LECls classes
var UCS2LESmModel = Model{ // contains filtered or unexported fields }
UCS2LESmModel model
var UCS2LEStates = []MachineState{ 6, 6, 7, 6, 4, 3, MSError, MSError, MSError, MSError, MSError, MSError, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, MSItsMe, 5, 5, 5, MSError, MSItsMe, MSError, 5, 5, 5, MSError, 5, MSError, 6, 6, 7, 6, 8, 8, 5, 5, 5, MSError, 5, 5, 5, MSError, MSError, MSError, 5, 5, 5, 5, 5, MSError, 5, MSError, MSStart, MSStart, }
UCS2LEStates states
var UDEscDetector = regexp.MustCompile(`(\x1B|~{)`)
UDEscDetector ???
var UDHighByteDetector = regexp.MustCompile(`[^[:ascii:]]`)
UDHighByteDetector ???
var UDIsoWinMap = map[string]string{
"iso-8859-1": "Windows-1252",
"iso-8859-2": "Windows-1250",
"iso-8859-5": "Windows-1251",
"iso-8859-6": "Windows-1256",
"iso-8859-7": "Windows-1253",
"iso-8859-8": "Windows-1255",
"iso-8859-9": "Windows-1254",
"iso-8859-13": "Windows-1257",
}
UDIsoWinMap correspondance ISO-Win names
var UDMinimumThreshold = 0.2
UDMinimumThreshold min threshhold for ???
var UDWinByteDetector = regexp.MustCompile(`[\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F]`)
UDWinByteDetector ???
var UTF8CharLenTable = []int{0, 1, 0, 0, 0, 0, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6}
UTF8CharLenTable charLenTable
var UTF8Cls = []int{}/* 256 elements not displayed */
UTF8Cls classes
var UTF8LowCountCharUnlikelyProb = []float64{
0.99, 0.5 * 0.99, 0.25 * 0.99,
0.125 * 0.99, 0.0625 * 0.99, 0.03125 * 0.99, 0.015625 * 0.99,
}
UTF8LowCountCharUnlikelyProb unlikely probability from previous UTF8OneCharProb * 0.99 Computed with math.Pow(UTF8OneCharProb, u.numMBChars) * 0.99
var UTF8OneCharProb = 0.5
UTF8OneCharProb probability of one character points
var UTF8SmModel = Model{ // contains filtered or unexported fields }
UTF8SmModel model
var UTF8States = []MachineState{}/* 208 elements not displayed */
UTF8States states
var WINDOWS1250HungarianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1250HungarianCharToOrder hungarian Character Mapping Table(s):
var WINDOWS1250HungarianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
WINDOWS1250HungarianModel model
var WINDOWS1251BulgarianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1251BulgarianCharToOrder char to order
var WINDOWS1251BulgarianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1251BulgarianCharToOrderList char to order
var WINDOWS1251BulgarianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
WINDOWS1251BulgarianModel windows model
var WINDOWS1251RussianCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1251RussianCharToOrder prev WINDOWS_1251_RUSSIAN_CharToOrder
var WINDOWS1251RussianCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1251RussianCharToOrderList prev WINDOWS_1251_RUSSIAN_CharToOrder
var WINDOWS1251RussianModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
WINDOWS1251RussianModel prev WINDOWS_1251_RUSSIAN_MODEL
var WINDOWS1253GreekCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1253GreekCharToOrder greek char to order Character Mapping Table(s):
var WINDOWS1253GreekCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1253GreekCharToOrderList greek char to order
var WINDOWS1253GreekModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
WINDOWS1253GreekModel windows greek model
var WINDOWS1255HebrewCharToOrder = map[byte]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1255HebrewCharToOrder prev WINDOWS_1255_HEBREW_CHAR_TO_ORDER Character Mapping Table(s):
var WINDOWS1255HebrewCharToOrderList = [256]CharacterCategory{}/* 256 elements not displayed */
WINDOWS1255HebrewCharToOrderList optim
var WINDOWS1255HebrewModel = SingleByteCharSetModel{ // contains filtered or unexported fields }
WINDOWS1255HebrewModel prev WINDOWS_1255_HEBREW_MODEL
Functions ¶
This section is empty.
Types ¶
type BIG5DistributionAnalysis ¶
type BIG5DistributionAnalysis struct {
// contains filtered or unexported fields
}
BIG5DistributionAnalysis BIG5
type CharSetGroupProber ¶
type CharSetGroupProber struct { CharSetProber // contains filtered or unexported fields }
CharSetGroupProber is a group prober ???
type CharSetProber ¶
type CharSetProber struct {
// contains filtered or unexported fields
}
CharSetProber probes a charset???
type CharacterCategory ¶
type CharacterCategory int
CharacterCategory represents the different categories language models for SBCP (SingleByteCharsetProber) put chars into Anything less than CCControl is considered a letter
const ( // CCControl category CCControl CharacterCategory = 251 // CCDigit category CCDigit CharacterCategory = 252 // CCSymbol category CCSymbol CharacterCategory = 253 // CCLineBreak category CCLineBreak CharacterCategory = 254 // CCUndefined category CCUndefined CharacterCategory = 255 )
type EUCJPContextAnalysis ¶
type EUCJPContextAnalysis struct {
JapaneseContextAnalysis
}
EUCJPContextAnalysis JP Content analysis
type EUCJPDistributionAnalysis ¶
type EUCJPDistributionAnalysis struct {
// contains filtered or unexported fields
}
EUCJPDistributionAnalysis EUCJP
type EUCJPProber ¶
type EUCJPProber struct { MultiByteCharSetProber // contains filtered or unexported fields }
EUCJPProber prober
type EUCKRDistributionAnalysis ¶
type EUCKRDistributionAnalysis struct {
// contains filtered or unexported fields
}
EUCKRDistributionAnalysis EUCKR
type EUCTWDistributionAnalysis ¶
type EUCTWDistributionAnalysis struct {
// contains filtered or unexported fields
}
EUCTWDistributionAnalysis EUCTW
type EscCharSetProber ¶
type EscCharSetProber struct { CharSetProber // contains filtered or unexported fields }
EscCharSetProber Uses a "code scheme" approach for detecting encodings Whereby easily recognizable escape or shift sequences are relied on to identify these encodings
type GB2312DistributionAnalysis ¶
type GB2312DistributionAnalysis struct {
// contains filtered or unexported fields
}
GB2312DistributionAnalysis GB2312
type HebrewProber ¶
type HebrewProber struct { CharSetProber // contains filtered or unexported fields }
HebrewProber prober
type JapaneseContextAnalysis ¶
type JapaneseContextAnalysis struct {
// contains filtered or unexported fields
}
JapaneseContextAnalysis (JP, KR) specific context analyzer
type LanguageFilter ¶
type LanguageFilter int
LanguageFilter represents the different language filters appliable to a UniversalDetector
const ( // LFNone is no filter LFNone LanguageFilter = 0 // LFChineseSimplified language filter LFChineseSimplified LanguageFilter = 1 // LFChineseTraditional language filter LFChineseTraditional LanguageFilter = 2 // LFJapanese language filterz LFJapanese LanguageFilter = 4 // LFKorean language filter LFKorean LanguageFilter = 8 // LFNonCJK language filter LFNonCJK LanguageFilter = 0x10 // LFAll language filter LFAll LanguageFilter = 0x1f // LFChinese language filter LFChinese LanguageFilter = LFChineseSimplified | LFChineseTraditional // LFCJK language filter LFCJK LanguageFilter = LFChinese | LFJapanese | LFKorean )
type Latin1Prober ¶
type Latin1Prober struct { CharSetProber // contains filtered or unexported fields }
Latin1Prober prober
type MBCSGroupProber ¶
type MBCSGroupProber struct {
CharSetGroupProber
}
MBCSGroupProber regroups all group probers
type MachineState ¶
type MachineState int
MachineState represents the different states a state machine can be in
const ( // MSStart state MSStart MachineState = 0 // MSError state MSError MachineState = 1 // MSItsMe state MSItsMe MachineState = 2 )
type MultiByteCharSetProber ¶
type MultiByteCharSetProber struct { CharSetProber // contains filtered or unexported fields }
MultiByteCharSetProber is a multi byte charset prober ???
type Prober ¶
type Prober interface {
// contains filtered or unexported methods
}
Prober interface shared by all probers XD
type ProbingState ¶
type ProbingState int
ProbingState represents the different states a prober can be in
const ( // PSDetecting state PSDetecting ProbingState = 0 // PSFound state PSFound ProbingState = 1 // PSNotMe state PSNotMe ProbingState = 2 )
type Result ¶
Result contains the result or a detection
func DetectAll ¶
DetectAll detects all the possible encoding of a byte slice Outputs possible encodings only if their confidence is above a threshold
func DetectShortestUTF8 ¶ added in v0.0.2
DetectShortestUTF8 detects the best encoding for a byte slice Given that the right encoding may not have the highest confidence. Heuristic is made with the fewer count of exotic UTF8 chars (neither letters, numbers, punctuation or spaces)
type SBCSGroupProber ¶
type SBCSGroupProber struct {
CharSetGroupProber
}
SBCSGroupProber Group of Single Byte prober
type SJISContextAnalysis ¶
type SJISContextAnalysis struct {
JapaneseContextAnalysis
}
SJISContextAnalysis SJIS JP Content analysis
type SJISDistributionAnalysis ¶
type SJISDistributionAnalysis struct {
// contains filtered or unexported fields
}
SJISDistributionAnalysis SJIS
type SJISProber ¶
type SJISProber struct { MultiByteCharSetProber // contains filtered or unexported fields }
SJISProber prober
type SequenceLikelihood ¶
type SequenceLikelihood int
SequenceLikelihood represents the likelihood of a character following the previous one
const ( // SLNegative state SLNegative SequenceLikelihood = 0 // SLUnlikely state SLUnlikely SequenceLikelihood = 1 // SLLikely state SLLikely SequenceLikelihood = 2 // SLPositive state SLPositive SequenceLikelihood = 3 )
type SingleByteCharSetModel ¶
type SingleByteCharSetModel struct {
// contains filtered or unexported fields
}
SingleByteCharSetModel model for SBCSProber
type SingleByteCharSetProber ¶
type SingleByteCharSetProber struct { CharSetProber // contains filtered or unexported fields }
SingleByteCharSetProber is a single byte charset prober ???
type UTF8Prober ¶
type UTF8Prober struct { CharSetProber // contains filtered or unexported fields }
UTF8Prober prober
type UniversalDetector ¶
type UniversalDetector struct { Result *Result Done bool // contains filtered or unexported fields }
UniversalDetector is the detector of all the encodings.
func (*UniversalDetector) Close ¶
func (u *UniversalDetector) Close() *Result
Close stops analyzing the current document and come up with a final prediction. Returns : a Result struct
func (*UniversalDetector) Feed ¶
func (u *UniversalDetector) Feed(data []byte)
Feed takes a chunk of a document and feeds it through all of the relevant charset probers. After calling Feed, you can check the value of the Done attribute to see if you need to continue feeding the UniversalDetector mode data, or if it has made a prediction in the Result attribute Note: You should always call Close when you're done feeding in your document
if Done is not already true
type UniversalDetectorState ¶
type UniversalDetectorState int
UniversalDetectorState is a possible state of the UniversalDetector
const ( // UDSPureASCII state UDSPureASCII UniversalDetectorState = 0 // UDSEscASCII state UDSEscASCII UniversalDetectorState = 1 // UDSHighByte state UDSHighByte UniversalDetectorState = 2 )
Source Files
¶
- big5freq.go
- big5prober.go
- chardistribution.go
- charsetgroupprober.go
- charsetprober.go
- codingstatemachine.go
- cp949prober.go
- detect.go
- enums.go
- escprober.go
- escsm.go
- eucjpprober.go
- euckrfreq.go
- euckrprober.go
- euctwfreq.go
- euctwprober.go
- gb2312freq.go
- gb2312prober.go
- hebrewprober.go
- jisfreq.go
- jpcntx.go
- langbulgarianmodel.go
- langgreekmodel.go
- langhebrewmodel.go
- langhungarianmodel.go
- langrussianmodel.go
- langthaimodel.go
- langturkishmodel.go
- latin1prober.go
- mbcharsetprober.go
- mbcsgroupprober.go
- mbcssm.go
- sbcharsetprober.go
- sbcsgroupprober.go
- sjisprober.go
- universaldetector.go
- utf8prober.go