/* Generated from hindi.sbl by Snowball 3.0.0 - https://snowballstem.org/ */

#include "stem_UTF_8_hindi.h"

#include <stddef.h>

#include "snowball_runtime.h"

#ifdef __cplusplus
extern "C" {
#endif
extern int hindi_UTF_8_stem(struct SN_env * z);
#ifdef __cplusplus
}
#endif

static int r_CONSONANT(struct SN_env * z);


static const symbol s_0_0[3] = { 0xE0, 0xA5, 0x80 };
static const symbol s_0_1[12] = { 0xE0, 0xA5, 0x82, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_2[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_3[12] = { 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_4[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_5[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_6[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_7[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_8[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_9[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_10[9] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_11[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_12[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_13[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_14[9] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_15[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_16[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_17[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_18[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_19[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_20[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_21[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x80 };
static const symbol s_0_22[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x80 };
static const symbol s_0_23[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x81 };
static const symbol s_0_24[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_25[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_26[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_27[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_28[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_29[3] = { 0xE0, 0xA5, 0x81 };
static const symbol s_0_30[6] = { 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_31[9] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_32[12] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_33[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_34[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_35[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
static const symbol s_0_36[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
static const symbol s_0_37[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
static const symbol s_0_38[6] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82 };
static const symbol s_0_39[6] = { 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
static const symbol s_0_40[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
static const symbol s_0_41[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
static const symbol s_0_42[6] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_43[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_44[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_45[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_46[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_47[6] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_48[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_49[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_50[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_51[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_52[12] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_53[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_54[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_55[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_56[6] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_57[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_58[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_59[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_60[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_61[12] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_62[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_63[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_64[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_65[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_66[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_67[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_68[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_69[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_70[3] = { 0xE0, 0xA5, 0x82 };
static const symbol s_0_71[3] = { 0xE0, 0xA4, 0x85 };
static const symbol s_0_72[3] = { 0xE0, 0xA4, 0x86 };
static const symbol s_0_73[3] = { 0xE0, 0xA4, 0x87 };
static const symbol s_0_74[3] = { 0xE0, 0xA5, 0x87 };
static const symbol s_0_75[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_76[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_77[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_78[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_79[9] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_80[9] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_81[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_82[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_83[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_84[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_85[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_86[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_87[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_88[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_89[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_90[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_91[3] = { 0xE0, 0xA4, 0x88 };
static const symbol s_0_92[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x88 };
static const symbol s_0_93[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x88 };
static const symbol s_0_94[3] = { 0xE0, 0xA4, 0x89 };
static const symbol s_0_95[3] = { 0xE0, 0xA4, 0x8A };
static const symbol s_0_96[3] = { 0xE0, 0xA5, 0x8B };
static const symbol s_0_97[3] = { 0xE0, 0xA5, 0x8D };
static const symbol s_0_98[3] = { 0xE0, 0xA4, 0x8F };
static const symbol s_0_99[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F };
static const symbol s_0_100[6] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
static const symbol s_0_101[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
static const symbol s_0_102[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
static const symbol s_0_103[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F };
static const symbol s_0_104[6] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x8F };
static const symbol s_0_105[3] = { 0xE0, 0xA4, 0x93 };
static const symbol s_0_106[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93 };
static const symbol s_0_107[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93 };
static const symbol s_0_108[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_109[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_110[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_111[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_112[3] = { 0xE0, 0xA4, 0xBE };
static const symbol s_0_113[12] = { 0xE0, 0xA5, 0x82, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_114[12] = { 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_115[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_116[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_117[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_118[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_119[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_120[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_121[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_122[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_123[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_124[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_125[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_126[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_127[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_128[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_129[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE };
static const symbol s_0_130[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE };
static const symbol s_0_131[3] = { 0xE0, 0xA4, 0xBF };
static const struct among a_0[132] = {
{ 3, s_0_0, 0, -1, 0},
{ 12, s_0_1, -1, -1, 0},
{ 12, s_0_2, -2, -1, 0},
{ 12, s_0_3, -3, -1, 0},
{ 15, s_0_4, -1, -1, 0},
{ 15, s_0_5, -2, -1, 0},
{ 12, s_0_6, -6, -1, 0},
{ 15, s_0_7, -1, -1, 0},
{ 15, s_0_8, -2, -1, 0},
{ 9, s_0_9, -9, -1, 0},
{ 9, s_0_10, -10, -1, 0},
{ 9, s_0_11, -11, -1, 0},
{ 12, s_0_12, -1, -1, 0},
{ 12, s_0_13, -2, -1, 0},
{ 9, s_0_14, -14, -1, 0},
{ 12, s_0_15, -1, -1, 0},
{ 12, s_0_16, -2, -1, 0},
{ 6, s_0_17, -17, -1, 1},
{ 9, s_0_18, -1, -1, 0},
{ 9, s_0_19, -2, -1, 0},
{ 9, s_0_20, -3, -1, 0},
{ 6, s_0_21, -21, -1, 1},
{ 9, s_0_22, -1, -1, 0},
{ 6, s_0_23, 0, -1, 0},
{ 6, s_0_24, 0, -1, 0},
{ 12, s_0_25, -1, -1, 0},
{ 15, s_0_26, -1, -1, 0},
{ 15, s_0_27, -2, -1, 0},
{ 12, s_0_28, -4, -1, 0},
{ 3, s_0_29, 0, -1, 0},
{ 6, s_0_30, 0, -1, 0},
{ 9, s_0_31, -1, -1, 1},
{ 12, s_0_32, -1, -1, 0},
{ 12, s_0_33, -2, -1, 0},
{ 12, s_0_34, -3, -1, 0},
{ 6, s_0_35, 0, -1, 0},
{ 9, s_0_36, -1, -1, 0},
{ 9, s_0_37, -2, -1, 0},
{ 6, s_0_38, 0, -1, 0},
{ 6, s_0_39, 0, -1, 0},
{ 9, s_0_40, -1, -1, 0},
{ 9, s_0_41, -2, -1, 0},
{ 6, s_0_42, 0, -1, 0},
{ 12, s_0_43, -1, -1, 0},
{ 15, s_0_44, -1, -1, 0},
{ 15, s_0_45, -2, -1, 0},
{ 12, s_0_46, -4, -1, 0},
{ 6, s_0_47, 0, -1, 0},
{ 9, s_0_48, -1, -1, 0},
{ 9, s_0_49, -2, -1, 0},
{ 9, s_0_50, -3, -1, 0},
{ 9, s_0_51, -4, -1, 0},
{ 12, s_0_52, -1, -1, 1},
{ 15, s_0_53, -1, -1, 0},
{ 12, s_0_54, -3, -1, 1},
{ 15, s_0_55, -1, -1, 0},
{ 6, s_0_56, 0, -1, 0},
{ 9, s_0_57, -1, -1, 0},
{ 9, s_0_58, -2, -1, 0},
{ 9, s_0_59, -3, -1, 0},
{ 9, s_0_60, -4, -1, 0},
{ 12, s_0_61, -1, -1, 1},
{ 15, s_0_62, -1, -1, 0},
{ 12, s_0_63, -3, -1, 1},
{ 15, s_0_64, -1, -1, 0},
{ 6, s_0_65, 0, -1, 0},
{ 12, s_0_66, -1, -1, 0},
{ 15, s_0_67, -1, -1, 0},
{ 15, s_0_68, -2, -1, 0},
{ 12, s_0_69, -4, -1, 0},
{ 3, s_0_70, 0, -1, 0},
{ 3, s_0_71, 0, -1, 0},
{ 3, s_0_72, 0, -1, 0},
{ 3, s_0_73, 0, -1, 0},
{ 3, s_0_74, 0, -1, 0},
{ 12, s_0_75, -1, -1, 0},
{ 12, s_0_76, -2, -1, 0},
{ 15, s_0_77, -1, -1, 0},
{ 15, s_0_78, -2, -1, 0},
{ 9, s_0_79, -5, -1, 0},
{ 9, s_0_80, -6, -1, 0},
{ 12, s_0_81, -1, -1, 0},
{ 12, s_0_82, -2, -1, 0},
{ 6, s_0_83, -9, -1, 1},
{ 9, s_0_84, -1, -1, 0},
{ 9, s_0_85, -2, -1, 0},
{ 9, s_0_86, -3, -1, 0},
{ 6, s_0_87, -13, -1, 1},
{ 9, s_0_88, -1, -1, 0},
{ 9, s_0_89, -2, -1, 0},
{ 9, s_0_90, -3, -1, 0},
{ 3, s_0_91, 0, -1, 0},
{ 6, s_0_92, -1, -1, 0},
{ 6, s_0_93, -2, -1, 0},
{ 3, s_0_94, 0, -1, 0},
{ 3, s_0_95, 0, -1, 0},
{ 3, s_0_96, 0, -1, 0},
{ 3, s_0_97, 0, -1, 0},
{ 3, s_0_98, 0, -1, 0},
{ 6, s_0_99, -1, -1, 0},
{ 6, s_0_100, -2, -1, 0},
{ 9, s_0_101, -1, -1, 0},
{ 9, s_0_102, -2, -1, 0},
{ 6, s_0_103, -5, -1, 0},
{ 6, s_0_104, -6, -1, 0},
{ 3, s_0_105, 0, -1, 0},
{ 6, s_0_106, -1, -1, 0},
{ 6, s_0_107, -2, -1, 0},
{ 6, s_0_108, 0, -1, 1},
{ 9, s_0_109, -1, -1, 0},
{ 9, s_0_110, -2, -1, 0},
{ 9, s_0_111, -3, -1, 0},
{ 3, s_0_112, 0, -1, 0},
{ 12, s_0_113, -1, -1, 0},
{ 12, s_0_114, -2, -1, 0},
{ 15, s_0_115, -1, -1, 0},
{ 15, s_0_116, -2, -1, 0},
{ 9, s_0_117, -5, -1, 0},
{ 9, s_0_118, -6, -1, 0},
{ 12, s_0_119, -1, -1, 0},
{ 12, s_0_120, -2, -1, 0},
{ 6, s_0_121, -9, -1, 1},
{ 9, s_0_122, -1, -1, 0},
{ 9, s_0_123, -2, -1, 0},
{ 9, s_0_124, -3, -1, 0},
{ 6, s_0_125, -13, -1, 1},
{ 9, s_0_126, -1, -1, 0},
{ 9, s_0_127, -2, -1, 0},
{ 9, s_0_128, -3, -1, 0},
{ 9, s_0_129, -17, -1, 0},
{ 9, s_0_130, -18, -1, 0},
{ 3, s_0_131, 0, -1, 0}
};

static const unsigned char g_consonant[] = { 255, 255, 255, 255, 159, 0, 0, 0, 248, 7 };

static int r_CONSONANT(struct SN_env * z) {
    return !in_grouping_b_U(z, g_consonant, 2325, 2399, 0);
}

extern int hindi_UTF_8_stem(struct SN_env * z) {
    {
        int ret = skip_utf8(z->p, z->c, z->l, 1);
        if (ret < 0) return 0;
        z->c = ret;
    }
    z->lb = z->c; z->c = z->l;
    z->ket = z->c;
    if (!find_among_b(z, a_0, 132, r_CONSONANT)) return 0;
    z->bra = z->c;
    {
        int ret = slice_del(z);
        if (ret < 0) return ret;
    }
    z->c = z->lb;
    return 1;
}

extern struct SN_env * hindi_UTF_8_create_env(void) {
    return SN_new_env(sizeof(struct SN_env));
}

extern void hindi_UTF_8_close_env(struct SN_env * z) {
    SN_delete_env(z);
}

