// SPDX-License-Identifier: Unlicense OR BSD-3-Clause

package unicodedata

// Code generated by typesettings-utils/generators/unicodedata/cmd/main.go DO NOT EDIT.

// Unicode version: 17.0.0

var mirInt16 = [92]int16{
	0, 0, 1, -1, 2, 0, -2, 0, 0, 2, 0, -2, 0, 16, 0, -16, 0, 1, -1, 0,
	3, 3, 3, -3, -3, -3, 0, 2016, 0, 2527, 1923, 1914, 1918, 0, 2250, 0, 0, 138, 0, 7,
	-7, 0, -1, 1, 1824, 0, 2104, 0, 2108, 2106, 0, 2106, 1316, 0, -1, -138, 8, 8, 8, 0,
	7, 7, -8, -8, -8, -7, -1316, 1, -1, 3, -3, 1, 0, -1914, -1918, 0, 0, -1923, -1824, 0,
	0, -2016, -2104, 0, 0, -2106, -2108, -2106, -2250, 0, -2527, 0,
}

var mirUint8 = [640]uint8{
	16, 17, 17, 33, 17, 49, 17, 17, 84, 97, 135, 145, 26, 17, 17, 17, 17, 17, 17, 17,
	17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
	17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
	17, 17, 17, 177, 0, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
	3, 3, 3, 3, 4, 3, 3, 3, 3, 3, 5, 3, 3, 3, 3, 3, 6, 7, 8, 3,
	3, 3, 3, 3, 9, 10, 11, 12, 13, 3, 3, 3, 3, 3, 3, 3, 3, 14, 3, 15,
	3, 3, 3, 3, 3, 3, 16, 17, 18, 19, 20, 21, 3, 3, 3, 22, 23, 24, 3, 3,
	3, 3, 3, 3, 25, 3, 3, 3, 3, 3, 3, 3, 3, 26, 3, 3, 27, 28, 0, 1,
	0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0,
	0, 4, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
	0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 9, 0, 0, 0,
	0, 0, 0, 9, 0, 9, 0, 0, 0, 0, 0, 0, 0, 10, 11, 12, 13, 0, 0, 14,
	15, 16, 6, 0, 17, 18, 19, 19, 19, 20, 21, 22, 23, 24, 19, 25, 0, 26, 27, 19,
	19, 28, 29, 30, 0, 31, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 19, 28, 0,
	32, 33, 9, 34, 35, 19, 0, 0, 36, 37, 38, 39, 40, 19, 0, 41, 42, 43, 44, 31,
	0, 1, 45, 42, 0, 0, 0, 0, 0, 32, 14, 14, 0, 0, 0, 0, 14, 0, 0, 46,
	47, 47, 47, 47, 48, 49, 47, 47, 47, 47, 50, 51, 52, 53, 43, 21, 0, 0, 0, 0,
	0, 0, 0, 54, 6, 55, 0, 14, 19, 1, 0, 0, 0, 0, 56, 57, 0, 0, 0, 0,
	0, 19, 58, 31, 0, 0, 0, 0, 0, 0, 0, 59, 14, 0, 0, 0, 0, 1, 0, 2,
	0, 0, 0, 3, 0, 0, 0, 60, 61, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
	0, 0, 2, 3, 0, 4, 5, 0, 0, 6, 0, 0, 0, 7, 0, 0, 0, 1, 1, 0,
	0, 8, 9, 0, 8, 9, 0, 0, 0, 0, 8, 9, 10, 11, 12, 0, 0, 0, 13, 0,
	0, 0, 0, 14, 15, 16, 17, 0, 0, 0, 1, 0, 0, 18, 19, 0, 0, 0, 20, 0,
	0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 8, 21, 9, 0, 0,
	22, 0, 0, 0, 0, 1, 0, 23, 24, 25, 0, 0, 26, 0, 0, 0, 8, 21, 27, 0,
	1, 0, 0, 1, 1, 1, 1, 0, 1, 28, 29, 30, 0, 31, 32, 20, 1, 1, 0, 0,
	0, 8, 21, 9, 1, 4, 5, 0, 0, 0, 33, 9, 0, 1, 1, 1, 0, 8, 21, 21,
	21, 21, 34, 1, 35, 21, 21, 21, 9, 36, 0, 0, 37, 38, 1, 0, 39, 0, 0, 0,
	1, 0, 1, 0, 0, 0, 0, 8, 21, 9, 1, 0, 0, 0, 40, 0, 8, 21, 21, 21,
	21, 21, 21, 21, 21, 9, 0, 1, 1, 1, 1, 8, 21, 21, 21, 9, 0, 0, 0, 41,
	0, 42, 43, 0, 0, 0, 1, 44, 0, 0, 0, 45, 8, 9, 1, 0, 0, 0, 8, 21,
	21, 21, 9, 0, 1, 0, 1, 1, 8, 21, 21, 9, 0, 4, 5, 8, 9, 1, 0, 0,
}

// Total size 824 B.

func mirBits4( []uint8,  int) uint8 {
	return ([>>1] >> (( & 1) << 2)) & 0b1111
}
func mirLookup( rune) int16 {
	if 0 <=  &&  < 65380 {
		return mirInt16[(int(mirUint8[392+((int(mirUint8[160+((int(mirUint8[64+((int(mirBits4(mirUint8[:], int((((>>1)>>2)>>3)>>3))))<<3+int((((>>1)>>2)>>3)&7))]))<<3+int(((>>1)>>2)&7))]))<<2+int((>>1)&3))]))<<1+int(&1)]
	} else {
		return 0
	}
}