// Copyright 2026 The Ebitengine Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Code generated by gen.go; DO NOT EDIT.

package chunk

// isSTerm reports whether r is in UAX #29's Sentence_Break = STerm class.
func isSTerm(r rune) bool {
	switch {
	case r >= 0x061D && r <= 0x061F: // ARABIC END OF TEXT MARK..ARABIC QUESTION MARK
		return true
	case r >= 0x0700 && r <= 0x0702: // SYRIAC END OF PARAGRAPH..SYRIAC SUBLINEAR FULL STOP
		return true
	case r >= 0x083D && r <= 0x083E: // SAMARITAN PUNCTUATION SOF MASHFAAT..SAMARITAN PUNCTUATION ANNAAU
		return true
	case r >= 0x0964 && r <= 0x0965: // DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA
		return true
	case r >= 0x104A && r <= 0x104B: // MYANMAR SIGN LITTLE SECTION..MYANMAR SIGN SECTION
		return true
	case r >= 0x1367 && r <= 0x1368: // ETHIOPIC QUESTION MARK..ETHIOPIC PARAGRAPH SEPARATOR
		return true
	case r >= 0x1735 && r <= 0x1736: // PHILIPPINE SINGLE PUNCTUATION..PHILIPPINE DOUBLE PUNCTUATION
		return true
	case r >= 0x17D4 && r <= 0x17D5: // KHMER SIGN KHAN..KHMER SIGN BARIYOOSAN
		return true
	case r >= 0x1944 && r <= 0x1945: // LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK
		return true
	case r >= 0x1AA8 && r <= 0x1AAB: // TAI THAM SIGN KAAN..TAI THAM SIGN SATKAANKUU
		return true
	case r >= 0x1B4E && r <= 0x1B4F: // BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN
		return true
	case r >= 0x1B5A && r <= 0x1B5B: // BALINESE PANTI..BALINESE PAMADA
		return true
	case r >= 0x1B5E && r <= 0x1B5F: // BALINESE CARIK SIKI..BALINESE CARIK PAREREN
		return true
	case r >= 0x1B7D && r <= 0x1B7F: // BALINESE PANTI LANTANG..BALINESE PANTI BAWAK
		return true
	case r >= 0x1C3B && r <= 0x1C3C: // LEPCHA PUNCTUATION TA-ROL..LEPCHA PUNCTUATION NYET THYOOM TA-ROL
		return true
	case r >= 0x1C7E && r <= 0x1C7F: // OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD
		return true
	case r >= 0x203C && r <= 0x203D: // DOUBLE EXCLAMATION MARK..INTERROBANG
		return true
	case r >= 0x2047 && r <= 0x2049: // DOUBLE QUESTION MARK..EXCLAMATION QUESTION MARK
		return true
	case r >= 0x2CF9 && r <= 0x2CFB: // COPTIC OLD NUBIAN FULL STOP..COPTIC OLD NUBIAN INDIRECT QUESTION MARK
		return true
	case r >= 0x2E53 && r <= 0x2E54: // MEDIEVAL EXCLAMATION MARK..MEDIEVAL QUESTION MARK
		return true
	case r >= 0x2E60 && r <= 0x2E61: // WIGGLY EXCLAMATION MARK..INVERTED WIGGLY EXCLAMATION MARK
		return true
	case r >= 0xA60E && r <= 0xA60F: // VAI FULL STOP..VAI QUESTION MARK
		return true
	case r >= 0xA876 && r <= 0xA877: // PHAGS-PA MARK SHAD..PHAGS-PA MARK DOUBLE SHAD
		return true
	case r >= 0xA8CE && r <= 0xA8CF: // SAURASHTRA DANDA..SAURASHTRA DOUBLE DANDA
		return true
	case r >= 0xA9C8 && r <= 0xA9C9: // JAVANESE PADA LINGSA..JAVANESE PADA LUNGSI
		return true
	case r >= 0xAA5D && r <= 0xAA5F: // CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA
		return true
	case r >= 0xAAF0 && r <= 0xAAF1: // MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM
		return true
	case r >= 0xFE15 && r <= 0xFE16: // PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK..PRESENTATION FORM FOR VERTICAL QUESTION MARK
		return true
	case r >= 0xFE56 && r <= 0xFE57: // SMALL QUESTION MARK..SMALL EXCLAMATION MARK
		return true
	case r >= 0x10A56 && r <= 0x10A57: // KHAROSHTHI PUNCTUATION DANDA..KHAROSHTHI PUNCTUATION DOUBLE DANDA
		return true
	case r >= 0x10F55 && r <= 0x10F59: // SOGDIAN PUNCTUATION TWO VERTICAL BARS..SOGDIAN PUNCTUATION HALF CIRCLE WITH DOT
		return true
	case r >= 0x10F86 && r <= 0x10F89: // OLD UYGHUR PUNCTUATION BAR..OLD UYGHUR PUNCTUATION FOUR DOTS
		return true
	case r >= 0x11047 && r <= 0x11048: // BRAHMI DANDA..BRAHMI DOUBLE DANDA
		return true
	case r >= 0x110BE && r <= 0x110C1: // KAITHI SECTION MARK..KAITHI DOUBLE DANDA
		return true
	case r >= 0x11141 && r <= 0x11143: // CHAKMA DANDA..CHAKMA QUESTION MARK
		return true
	case r >= 0x111C5 && r <= 0x111C6: // SHARADA DANDA..SHARADA DOUBLE DANDA
		return true
	case r >= 0x111DE && r <= 0x111DF: // SHARADA SECTION MARK-1..SHARADA SECTION MARK-2
		return true
	case r >= 0x11238 && r <= 0x11239: // KHOJKI DANDA..KHOJKI DOUBLE DANDA
		return true
	case r >= 0x1123B && r <= 0x1123C: // KHOJKI SECTION MARK..KHOJKI DOUBLE SECTION MARK
		return true
	case r >= 0x113D4 && r <= 0x113D5: // TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA
		return true
	case r >= 0x1144B && r <= 0x1144C: // NEWA DANDA..NEWA DOUBLE DANDA
		return true
	case r >= 0x115C2 && r <= 0x115C3: // SIDDHAM DANDA..SIDDHAM DOUBLE DANDA
		return true
	case r >= 0x115C9 && r <= 0x115D7: // SIDDHAM END OF TEXT MARK..SIDDHAM SECTION MARK WITH CIRCLES AND FOUR ENCLOSURES
		return true
	case r >= 0x11641 && r <= 0x11642: // MODI DANDA..MODI DOUBLE DANDA
		return true
	case r >= 0x1173C && r <= 0x1173E: // AHOM SIGN SMALL SECTION..AHOM SIGN RULAI
		return true
	case r >= 0x11A42 && r <= 0x11A43: // ZANABAZAR SQUARE MARK SHAD..ZANABAZAR SQUARE MARK DOUBLE SHAD
		return true
	case r >= 0x11A9B && r <= 0x11A9C: // SOYOMBO MARK SHAD..SOYOMBO MARK DOUBLE SHAD
		return true
	case r >= 0x11C41 && r <= 0x11C42: // BHAIKSUKI DANDA..BHAIKSUKI DOUBLE DANDA
		return true
	case r >= 0x11EF7 && r <= 0x11EF8: // MAKASAR PASSIMBANG..MAKASAR END OF SECTION
		return true
	case r >= 0x11F43 && r <= 0x11F44: // KAWI DANDA..KAWI DOUBLE DANDA
		return true
	case r >= 0x16A6E && r <= 0x16A6F: // MRO DANDA..MRO DOUBLE DANDA
		return true
	case r >= 0x16B37 && r <= 0x16B38: // PAHAWH HMONG SIGN VOS THOM..PAHAWH HMONG SIGN VOS TSHAB CEEB
		return true
	case r >= 0x16D6E && r <= 0x16D6F: // KIRAT RAI DANDA..KIRAT RAI DOUBLE DANDA
		return true
	}
	switch r {
	case 0x0021: // EXCLAMATION MARK
		return true
	case 0x003F: // QUESTION MARK
		return true
	case 0x0589: // ARMENIAN FULL STOP
		return true
	case 0x06D4: // ARABIC FULL STOP
		return true
	case 0x07F9: // NKO EXCLAMATION MARK
		return true
	case 0x0837: // SAMARITAN PUNCTUATION MELODIC QITSA
		return true
	case 0x0839: // SAMARITAN PUNCTUATION QITSA
		return true
	case 0x1362: // ETHIOPIC FULL STOP
		return true
	case 0x166E: // CANADIAN SYLLABICS FULL STOP
		return true
	case 0x1803: // MONGOLIAN FULL STOP
		return true
	case 0x1809: // MONGOLIAN MANCHU FULL STOP
		return true
	case 0x2E2E: // REVERSED QUESTION MARK
		return true
	case 0x2E3C: // STENOGRAPHIC FULL STOP
		return true
	case 0x3002: // IDEOGRAPHIC FULL STOP
		return true
	case 0xA4FF: // LISU PUNCTUATION FULL STOP
		return true
	case 0xA6F3: // BAMUM FULL STOP
		return true
	case 0xA6F7: // BAMUM QUESTION MARK
		return true
	case 0xA92F: // KAYAH LI SIGN SHYA
		return true
	case 0xABEB: // MEETEI MAYEK CHEIKHEI
		return true
	case 0xFE12: // PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP
		return true
	case 0xFF01: // FULLWIDTH EXCLAMATION MARK
		return true
	case 0xFF1F: // FULLWIDTH QUESTION MARK
		return true
	case 0xFF61: // HALFWIDTH IDEOGRAPHIC FULL STOP
		return true
	case 0x111CD: // SHARADA SUTRA MARK
		return true
	case 0x112A9: // MULTANI SECTION MARK
		return true
	case 0x11944: // DIVES AKURU DOUBLE DANDA
		return true
	case 0x11946: // DIVES AKURU END OF TEXT MARK
		return true
	case 0x16AF5: // BASSA VAH FULL STOP
		return true
	case 0x16B44: // PAHAWH HMONG SIGN XAUS
		return true
	case 0x16E98: // MEDEFAIDRIN FULL STOP
		return true
	case 0x1BC9F: // DUPLOYAN PUNCTUATION CHINOOK FULL STOP
		return true
	case 0x1DA88: // SIGNWRITING FULL STOP
		return true
	}
	return false
}
