TraceLab Component Library
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties
StemmerOperations.cs
Go to the documentation of this file.
1 ÿþ * * P o r t o f S n o w b a l l s t e m m e r s o n C # * O r i g i n a l s t e m m e r s c a n b e f o u n d o n h t t p : / / s n o w b a l l . t a r t a r u s . o r g * L i c e n c e s t i l l B S D : h t t p : / / s n o w b a l l . t a r t a r u s . o r g / l i c e n s e . p h p * * M o s t o f s t e m m e r s a r e p o r t e d f r o m J a v a b y I v e o n i k S y s t e m s l t d . ( w w w . i v e o n i k . c o m ) * / u s i n g S y s t e m ; u s i n g S y s t e m . C o l l e c t i o n s . G e n e r i c ; u s i n g S y s t e m . T e x t ; u s i n g S y s t e m . R e f l e c t i o n ; n a m e s p a c e T r a c e L a b . C o m p o n e n t s . D e v e l o p m e n t K i t . P r e p r o c e s s o r s . S t e m m e r s . S n o w b a l l . L a n g u a g e s { / / / < s u m m a r y > / / / P r o v i d e s s t e m m e r o p e r a t i o n s f o r t h e S n o w b a l l s t e m m e r / / / < / s u m m a r y > p u b l i c c l a s s S t e m m e r O p e r a t i o n s { / / / < s u m m a r y > / / / C u r r e n t s t r i n g / / / < / s u m m a r y > p r o t e c t e d S t r i n g B u i l d e r c u r r e n t ; / / / < s u m m a r y > / / / C u r s o r l o c a t i o n / / / < / s u m m a r y > p r o t e c t e d i n t c u r s o r ; / / / < s u m m a r y > / / / L i m i t / / / < / s u m m a r y > p r o t e c t e d i n t l i m i t ; / / / < s u m m a r y > / / / B a c k w a r d s l i m i t / / / < / s u m m a r y > p r o t e c t e d i n t l i m i t _ b a c k w a r d ; / / / < s u m m a r y > / / / B r a ( ? ) / / / < / s u m m a r y > p r o t e c t e d i n t b r a ; / / / < s u m m a r y > / / / K e t ( ? ) / / / < / s u m m a r y > p r o t e c t e d i n t k e t ; / / / < s u m m a r y > / / / C o n s t r u c t o r / / / < / s u m m a r y > p r o t e c t e d S t e m m e r O p e r a t i o n s ( ) { c u r r e n t = n e w S t r i n g B u i l d e r ( ) ; s e t C u r r e n t ( " " ) ; } / / / < s u m m a r y > / / / S e t t h e c u r r e n t s t r i n g . / / / < / s u m m a r y > / / / < p a r a m n a m e = " v a l u e " > V a l u e < / p a r a m > p r o t e c t e d v o i d s e t C u r r e n t ( s t r i n g v a l u e ) { / / c u r r e n t . r e p l a c e ( 0 , c u r r e n t . l e n g t h ( ) , v a l u e ) ; / / c u r r e n t = c u r r e n t . R e p l a c e ( c u r r e n t . T o S t r i n g ( ) , v a l u e ) ; / / c u r r e n t = S t r i n g B u f f e r R e p l a c e ( 0 , c u r r e n t . L e n g t h , c u r r e n t , v a l u e ) ; / / c u r r e n t = S t r i n g B u f f e r R e p l a c e ( 0 , v a l u e . L e n g t h , c u r r e n t , v a l u e ) ; c u r r e n t . R e m o v e ( 0 , c u r r e n t . L e n g t h ) ; c u r r e n t . A p p e n d ( v a l u e ) ; c u r s o r = 0 ; l i m i t = c u r r e n t . L e n g t h ; l i m i t _ b a c k w a r d = 0 ; b r a = c u r s o r ; k e t = l i m i t ; } / / / < s u m m a r y > / / / G e t t h e c u r r e n t s t r i n g . / / / < / s u m m a r y > / / / < r e t u r n s > V a l u e o f c u r r e n t s t r i n g < / r e t u r n s > p r o t e c t e d s t r i n g g e t C u r r e n t ( ) { s t r i n g r e s u l t = c u r r e n t . T o S t r i n g ( ) ; / / M a k e a n e w S t r i n g B u f f e r . I f w e r e u s e t h e o l d o n e , a n d a u s e r o f / / t h e l i b r a r y k e e p s a r e f e r e n c e t o t h e b u f f e r r e t u r n e d ( f o r e x a m p l e , / / b y c o n v e r t i n g i t t o a S t r i n g i n a w a y w h i c h d o e s n ' t f o r c e a c o p y ) , / / t h e b u f f e r s i z e w i l l n o t d e c r e a s e , a n d w e w i l l r i s k w a s t i n g a l a r g e / / a m o u n t o f m e m o r y . / / T h a n k s t o W o l f r a m E s s e r f o r s p o t t i n g t h i s p r o b l e m . / / c u r r e n t = n e w S t r i n g B u i l d e r ( ) ; r e t u r n r e s u l t ; } / / / < s u m m a r y > / / / C o p i e s s e t t i n g s f r o m a n o t h e r S t e m m e r O p e r a t i o n s o b j e c t . / / / < / s u m m a r y > / / / < p a r a m n a m e = " o t h e r " > S t e m m e r O p e r a t i o n s o b j e c t < / p a r a m > p r o t e c t e d v o i d c o p y _ f r o m ( S t e m m e r O p e r a t i o n s o t h e r ) { c u r r e n t = o t h e r . c u r r e n t ; c u r s o r = o t h e r . c u r s o r ; l i m i t = o t h e r . l i m i t ; l i m i t _ b a c k w a r d = o t h e r . l i m i t _ b a c k w a r d ; b r a = o t h e r . b r a ; k e t = o t h e r . k e t ; } / / / < s u m m a r y > / / / I n g r o u p i n g ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l i n _ g r o u p i n g ( c h a r [ ] s , i n t m i n , i n t m a x ) { i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ; i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ; / / c h - = m i n ; c h - = m i n ; i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 ) r e t u r n f a l s e ; c u r s o r + + ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / I n g r o u p i n g b ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l i n _ g r o u p i n g _ b ( c h a r [ ] s , i n t m i n , i n t m a x ) { i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ; i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ; c h - = m i n ; i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 ) r e t u r n f a l s e ; c u r s o r - - ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / O u t g r o u p i n g ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l o u t _ g r o u p i n g ( c h a r [ ] s , i n t m i n , i n t m a x ) { i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ; i f ( c h > m a x | | c h < m i n ) { c u r s o r + + ; r e t u r n t r u e ; } c h - = m i n ; i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 ) { c u r s o r + + ; r e t u r n t r u e ; } r e t u r n f a l s e ; } / / / < s u m m a r y > / / / O u t g r o u p i n g b ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l o u t _ g r o u p i n g _ b ( c h a r [ ] s , i n t m i n , i n t m a x ) { i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ; i f ( c h > m a x | | c h < m i n ) { c u r s o r - - ; r e t u r n t r u e ; } c h - = m i n ; i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 ) { c u r s o r - - ; r e t u r n t r u e ; } r e t u r n f a l s e ; } / / / < s u m m a r y > / / / I n r a n g e ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l i n _ r a n g e ( i n t m i n , i n t m a x ) { i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ; i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ; c u r s o r + + ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / I n r a n g e b ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l i n _ r a n g e _ b ( i n t m i n , i n t m a x ) { i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ; i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ; c u r s o r - - ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / O u t r a n g e ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l o u t _ r a n g e ( i n t m i n , i n t m a x ) { i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ; i f ( ! ( c h > m a x | | c h < m i n ) ) r e t u r n f a l s e ; c u r s o r + + ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / O u t r a n g e b ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m > / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m > / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s > p r o t e c t e d b o o l o u t _ r a n g e _ b ( i n t m i n , i n t m a x ) { i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ; / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ; i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ; i f ( ! ( c h > m a x | | c h < m i n ) ) r e t u r n f a l s e ; c u r s o r - - ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / E q s ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s _ s i z e " > i n p u t s t r i n g s i z e < / p a r a m > / / / < p a r a m n a m e = " s " > i n p u t s t r i n g < / p a r a m > / / / < r e t u r n s > < / r e t u r n s > p r o t e c t e d b o o l e q _ s ( i n t s _ s i z e , s t r i n g s ) { i f ( l i m i t - c u r s o r < s _ s i z e ) r e t u r n f a l s e ; i n t i ; f o r ( i = 0 ; i ! = s _ s i z e ; i + + ) { i f ( c u r r e n t [ c u r s o r + i ] ! = s [ i ] ) r e t u r n f a l s e ; / / i f ( c u r r e n t [ c u r s o r + i ] ! = s [ i ] ) r e t u r n f a l s e ; } c u r s o r + = s _ s i z e ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / E q s b ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s _ s i z e " > i n p u t s t r i n g s i z e < / p a r a m > / / / < p a r a m n a m e = " s " > i n p u t s t r i n g < / p a r a m > / / / < r e t u r n s > < / r e t u r n s > p r o t e c t e d b o o l e q _ s _ b ( i n t s _ s i z e , s t r i n g s ) { i f ( c u r s o r - l i m i t _ b a c k w a r d < s _ s i z e ) r e t u r n f a l s e ; i n t i ; f o r ( i = 0 ; i ! = s _ s i z e ; i + + ) { / / i f ( c u r r e n t . c h a r A t ( c u r s o r - s _ s i z e + i ) ! = s . c h a r A t ( i ) ) r e t u r n f a l s e ; i f ( c u r r e n t [ c u r s o r - s _ s i z e + i ] ! = s [ i ] ) r e t u r n f a l s e ; } c u r s o r - = s _ s i z e ; r e t u r n t r u e ; } / / / < s u m m a r y > / / / E q v ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m > / / / < r e t u r n s > < / r e t u r n s > p r o t e c t e d b o o l e q _ v ( S t r i n g B u i l d e r s ) { r e t u r n e q _ s ( s . L e n g t h , s . T o S t r i n g ( ) ) ; } / / / < s u m m a r y > / / / E q v b ? / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m > / / / < r e t u r n s > < / r e t u r n s > p r o t e c t e d b o o l e q _ v _ b ( S t r i n g B u i l d e r s ) { r e t u r n e q _ s _ b ( s . L e n g t h , s . T o S t r i n g ( ) ) ; } i n t e r n a l i n t f i n d _ a m o n g ( A m o n g [ ] v , i n t v _ s i z e ) { i n t i = 0 ; i n t j = v _ s i z e ; i n t c = c u r s o r ; i n t l = l i m i t ; i n t c o m m o n _ i = 0 ; i n t c o m m o n _ j = 0 ; b o o l f i r s t _ k e y _ i n s p e c t e d = f a l s e ; w h i l e ( t r u e ) { i n t k = i + ( ( j - i ) > > 1 ) ; i n t d i f f = 0 ; i n t c o m m o n = c o m m o n _ i < c o m m o n _ j ? c o m m o n _ i : c o m m o n _ j ; / / s m a l l e r A m o n g w = v [ k ] ; i n t i 2 ; f o r ( i 2 = c o m m o n ; i 2 < w . s _ s i z e ; i 2 + + ) { i f ( c + c o m m o n = = l ) { d i f f = - 1 ; b r e a k ; } d i f f = c u r r e n t [ c + c o m m o n ] - w . s [ i 2 ] ; i f ( d i f f ! = 0 ) b r e a k ; c o m m o n + + ; } i f ( d i f f < 0 ) { j = k ; c o m m o n _ j = c o m m o n ; } e l s e { i = k ; c o m m o n _ i = c o m m o n ; } i f ( j - i < = 1 ) { i f ( i > 0 ) b r e a k ; / / v - > s h a s b e e n i n s p e c t e d i f ( j = = i ) b r e a k ; / / o n l y o n e i t e m i n v / / - b u t n o w w e n e e d t o g o r o u n d o n c e m o r e t o g e t / / v - > s i n s p e c t e d . T h i s l o o k s m e s s y , b u t i s a c t u a l l y / / t h e o p t i m a l a p p r o a c h . i f ( f i r s t _ k e y _ i n s p e c t e d ) b r e a k ; f i r s t _ k e y _ i n s p e c t e d = t r u e ; } } w h i l e ( t r u e ) { A m o n g w = v [ i ] ; i f ( c o m m o n _ i > = w . s _ s i z e ) { c u r s o r = c + w . s _ s i z e ; i f ( w . m e t h o d = = n u l l ) r e t u r n w . r e s u l t ; / / b o o l r e s ; / / t r y / / { / / O b j e c t r e s o b j = w . m e t h o d . i n v o k e ( w . m e t h o d o b j e c t , n e w O b j e c t [ 0 ] ) ; / / r e s = r e s o b j . t o S t r i n g ( ) . e q u a l s ( " t r u e " ) ; / / } / / c a t c h ( I n v o c a t i o n T a r g e t E x c e p t i o n e ) / / { / / r e s = f a l s e ; / / / / F I X M E - d e b u g m e s s a g e / / } / / c a t c h ( I l l e g a l A c c e s s E x c e p t i o n e ) / / { / / r e s = f a l s e ; / / / / F I X M E - d e b u g m e s s a g e / / } / / c u r s o r = c + w . s _ s i z e ; / / i f ( r e s ) r e t u r n w . r e s u l t ; } i = w . s u b s t r i n g _ i ; i f ( i < 0 ) r e t u r n 0 ; } } / / / / f i n d _ a m o n g _ b i s f o r b a c k w a r d s p r o c e s s i n g . S a m e c o m m e n t s a p p l y i n t e r n a l i n t f i n d _ a m o n g _ b ( A m o n g [ ] v , i n t v _ s i z e ) { i n t i = 0 ; i n t j = v _ s i z e ; i n t c = c u r s o r ; i n t l b = l i m i t _ b a c k w a r d ; i n t c o m m o n _ i = 0 ; i n t c o m m o n _ j = 0 ; b o o l f i r s t _ k e y _ i n s p e c t e d = f a l s e ; w h i l e ( t r u e ) { i n t k = i + ( ( j - i ) > > 1 ) ; i n t d i f f = 0 ; i n t c o m m o n = c o m m o n _ i < c o m m o n _ j ? c o m m o n _ i : c o m m o n _ j ; A m o n g w = v [ k ] ; i n t i 2 ; f o r ( i 2 = w . s _ s i z e - 1 - c o m m o n ; i 2 > = 0 ; i 2 - - ) { i f ( c - c o m m o n = = l b ) { d i f f = - 1 ; b r e a k ; } / / d i f f = c u r r e n t . c h a r A t ( c - 1 - c o m m o n ) - w . s [ i 2 ] ; d i f f = c u r r e n t [ c - 1 - c o m m o n ] - w . s [ i 2 ] ; i f ( d i f f ! = 0 ) b r e a k ; c o m m o n + + ; } i f ( d i f f < 0 ) { j = k ; c o m m o n _ j = c o m m o n ; } e l s e { i = k ; c o m m o n _ i = c o m m o n ; } i f ( j - i < = 1 ) { i f ( i > 0 ) b r e a k ; i f ( j = = i ) b r e a k ; i f ( f i r s t _ k e y _ i n s p e c t e d ) b r e a k ; f i r s t _ k e y _ i n s p e c t e d = t r u e ; } } w h i l e ( t r u e ) { A m o n g w = v [ i ] ; i f ( c o m m o n _ i > = w . s _ s i z e ) { c u r s o r = c - w . s _ s i z e ; i f ( w . m e t h o d = = n u l l ) r e t u r n w . r e s u l t ; / / b o o l e a n r e s ; / / t r y / / { / / O b j e c t r e s o b j = w . m e t h o d . i n v o k e ( w . m e t h o d o b j e c t , / / n e w O b j e c t [ 0 ] ) ; / / r e s = r e s o b j . t o S t r i n g ( ) . e q u a l s ( " t r u e " ) ; / / } / / c a t c h ( I n v o c a t i o n T a r g e t E x c e p t i o n e ) / / { / / r e s = f a l s e ; / / / / F I X M E - d e b u g m e s s a g e / / } / / c a t c h ( I l l e g a l A c c e s s E x c e p t i o n e ) / / { / / r e s = f a l s e ; / / / / F I X M E - d e b u g m e s s a g e / / } / / c u r s o r = c - w . s _ s i z e ; / / i f ( r e s ) r e t u r n w . r e s u l t ; } i = w . s u b s t r i n g _ i ; i f ( i < 0 ) r e t u r n 0 ; } } / / / < s u m m a r y > / / / t o r e p l a c e c h a r s b e t w e e n c _ b r a a n d c _ k e t i n c u r r e n t b y t h e c h a r s i n s . / / / < / s u m m a r y > / / / < p a r a m n a m e = " c _ b r a " > < / p a r a m > / / / < p a r a m n a m e = " c _ k e t " > < / p a r a m > / / / < p a r a m n a m e = " s " > < / p a r a m > / / / < r e t u r n s > < / r e t u r n s > p r o t e c t e d i n t r e p l a c e _ s ( i n t c _ b r a , i n t c _ k e t , s t r i n g s ) { i n t a d j u s t m e n t = s . L e n g t h - ( c _ k e t - c _ b r a ) ; / / c u r r e n t . r e p l a c e ( c _ b r a , c _ k e t , s ) ; c u r r e n t = S t r i n g B u f f e r R e p l a c e ( c _ b r a , c _ k e t , c u r r e n t , s ) ; l i m i t + = a d j u s t m e n t ; i f ( c u r s o r > = c _ k e t ) c u r s o r + = a d j u s t m e n t ; e l s e i f ( c u r s o r > c _ b r a ) c u r s o r = c _ b r a ; r e t u r n a d j u s t m e n t ; } p r i v a t e S t r i n g B u i l d e r S t r i n g B u f f e r R e p l a c e ( i n t s t a r t , i n t e n d , S t r i n g B u i l d e r s , s t r i n g s 1 ) { S t r i n g B u i l d e r s b = n e w S t r i n g B u i l d e r ( ) ; f o r ( i n t i = 0 ; i < s t a r t ; i + + ) { s b . I n s e r t ( s b . L e n g t h , s [ i ] ) ; } / / f o r ( i n t i = 1 ; i < e n d - s t a r t + 1 ; i + + ) / / { s b . I n s e r t ( s b . L e n g t h , s 1 ) ; / / } f o r ( i n t i = e n d ; i < s . L e n g t h ; i + + ) { s b . I n s e r t ( s b . L e n g t h , s [ i ] ) ; } r e t u r n s b ; / / s t r i n g t e m p = s . T o S t r i n g ( ) ; / / t e m p = t e m p . S u b s t r i n g ( s t a r t - 1 , e n d - s t a r t + 1 ) ; / / s = s . R e p l a c e ( t e m p , s 1 , s t a r t - 1 , e n d - s t a r t + 1 ) ; / / r e t u r n s ; } / / / < s u m m a r y > / / / S l i c e c h e c k / / / < / s u m m a r y > p r o t e c t e d v o i d s l i c e _ c h e c k ( ) { i f ( b r a < 0 | | b r a > k e t | | k e t > l i m i t | | l i m i t > c u r r e n t . L e n g t h ) / / t h i s l i n e c o u l d b e r e m o v e d { / / S y s t e m . e r r . p r i n t l n ( " f a u l t y s l i c e o p e r a t i o n " ) ; / / F I X M E : r e p o r t e r r o r s o m e h o w . / * f p r i n t f ( s t d e r r , " f a u l t y s l i c e o p e r a t i o n : \ n " ) ; d e b u g ( z , - 1 , 0 ) ; e x i t ( 1 ) ; * / } } / / / < s u m m a r y > / / / S l i c e f r o m / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m > p r o t e c t e d v o i d s l i c e _ f r o m ( s t r i n g s ) { s l i c e _ c h e c k ( ) ; r e p l a c e _ s ( b r a , k e t , s ) ; } / / / < s u m m a r y > / / / S l i c e f r o m / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m > p r o t e c t e d v o i d s l i c e _ f r o m ( S t r i n g B u i l d e r s ) { s l i c e _ f r o m ( s . T o S t r i n g ( ) ) ; } / / / < s u m m a r y > / / / S l i c e d e l e t e / / / < / s u m m a r y > p r o t e c t e d v o i d s l i c e _ d e l ( ) { s l i c e _ f r o m ( " " ) ; } / / / < s u m m a r y > / / / I n s e r t / / / < / s u m m a r y > / / / < p a r a m n a m e = " c _ b r a " > < / p a r a m > / / / < p a r a m n a m e = " c _ k e t " > < / p a r a m > / / / < p a r a m n a m e = " s " > < / p a r a m > p r o t e c t e d v o i d i n s e r t ( i n t c _ b r a , i n t c _ k e t , s t r i n g s ) { i n t a d j u s t m e n t = r e p l a c e _ s ( c _ b r a , c _ k e t , s ) ; i f ( c _ b r a < = b r a ) b r a + = a d j u s t m e n t ; i f ( c _ b r a < = k e t ) k e t + = a d j u s t m e n t ; } / / / < s u m m a r y > / / / I n s e r t / / / < / s u m m a r y > / / / < p a r a m n a m e = " c _ b r a " > < / p a r a m > / / / < p a r a m n a m e = " c _ k e t " > < / p a r a m > / / / < p a r a m n a m e = " s " > < / p a r a m > p r o t e c t e d v o i d i n s e r t ( i n t c _ b r a , i n t c _ k e t , S t r i n g B u i l d e r s ) { i n s e r t ( c _ b r a , c _ k e t , s . T o S t r i n g ( ) ) ; } / / / < s u m m a r y > / / / C o p y t h e s l i c e i n t o t h e s u p p l i e d S t r i n g B u f f e r / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > < / p a r a m > / / / < r e t u r n s > < / r e t u r n s > p r o t e c t e d S t r i n g B u i l d e r s l i c e _ t o ( S t r i n g B u i l d e r s ) { s l i c e _ c h e c k ( ) ; i n t l e n = k e t - b r a ; / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( b r a , k e t ) ) ; / / i n t l e n g h = s t r i n g . I s N u l l O r E m p t y ( s . T o S t r i n g ( ) ) ! = t r u e ? s . L e n g t h : 0 ; / / i f ( k e t = = c u r r e n t . L e n g t h ) k e t - - ; / / s t r i n g s s = c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( b r a , l e n ) ; / / S t r i n g B u f f e r R e p l a c e ( 0 , s . L e n g t h , s , s s ) ; / / r e t u r n s ; r e t u r n S t r i n g B u f f e r R e p l a c e ( 0 , s . L e n g t h , s , c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( b r a , l e n ) ) ; / / r e t u r n S t r i n g B u f f e r R e p l a c e ( 0 , l e n g h , s , c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( b r a , k e t ) ) ; / / r e t u r n s ; } / / / * C o p y t h e s l i c e i n t o t h e s u p p l i e d S t r i n g B u i l d e r * / / / p r o t e c t e d S t r i n g B u i l d e r s l i c e _ t o ( S t r i n g B u i l d e r s ) / / { / / s l i c e _ c h e c k ( ) ; / / i n t l e n = k e t - b r a ; / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( b r a , k e t ) ) ; / / r e t u r n s ; / / } / / / < s u m m a r y > / / / A s s i g n t o / / / < / s u m m a r y > / / / < p a r a m n a m e = " s " > < / p a r a m > / / / < r e t u r n s > < / r e t u r n s > p r o t e c t e d S t r i n g B u i l d e r a s s i g n _ t o ( S t r i n g B u i l d e r s ) { / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( 0 , l i m i t ) ) ; / / r e t u r n s ; r e t u r n S t r i n g B u f f e r R e p l a c e ( 0 , s . L e n g t h , s , c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( 0 , l i m i t ) ) ; } / / p r o t e c t e d S t r i n g B u i l d e r a s s i g n _ t o ( S t r i n g B u i l d e r s ) / / { / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( 0 , l i m i t ) ) ; / / r e t u r n s ; / / } / / / * / / e x t e r n v o i d d e b u g ( s t r u c t S N _ e n v * z , i n t n u m b e r , i n t l i n e _ c o u n t ) / / { i n t i ; / / i n t l i m i t = S I Z E ( z - > p ) ; / / / / i f ( n u m b e r > = 0 ) p r i n t f ( " % 3 d ( l i n e % 4 d ) : ' " , n u m b e r , l i n e _ c o u n t ) ; / / i f ( n u m b e r > = 0 ) p r i n t f ( " % 3 d ( l i n e % 4 d ) : [ % d ] ' " , n u m b e r , l i n e _ c o u n t , l i m i t ) ; / / f o r ( i = 0 ; i < = l i m i t ; i + + ) / / { i f ( z - > l b = = i ) p r i n t f ( " { " ) ; / / i f ( z - > b r a = = i ) p r i n t f ( " [ " ) ; / / i f ( z - > c = = i ) p r i n t f ( " | " ) ; / / i f ( z - > k e t = = i ) p r i n t f ( " ] " ) ; / / i f ( z - > l = = i ) p r i n t f ( " } " ) ; / / i f ( i < l i m i t ) / / { i n t c h = z - > p [ i ] ; / / i f ( c h = = 0 ) c h = ' # ' ; / / p r i n t f ( " % c " , c h ) ; / / } / / } / / p r i n t f ( " ' \ n " ) ; / / } / / * / / / } ; / / / / / / / / / / / / / / / / / / / / / / / / / / / / / M E T H O D S F O R C Z E C H S T E M M E R A G R E S S I V E / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / < s u m m a r y > / / / R e m o v e D e r i v a t i o n a l ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e D e r i v a t i o n a l ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( ( l e n > 8 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 6 , 6 ) . E q u a l s ( " o b i n e c " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 6 , 6 ) ; r e t u r n ; } / / l e n > 8 i f ( l e n > 7 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " i o n \ u 0 0 e 1 \ u 0 1 5 9 " ) ) { / / - i o n á Y c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v i s k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v s t v " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v i \ u 0 1 6 1 t " ) | | / / - o v i at c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v n \ u 0 0 e d k " ) ) { / / - o v n í k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 s e k " ) | | / / - á s e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " l o u n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " n o s t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " t e l n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o v e c " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v \ u 0 0 e d k " ) | | / / - o v í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o v t v " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o v i n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 6 1 t i n " ) ) { / / - at i n c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e n i c " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i n e c " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i t e l " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } / / l e n > 6 i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 r n " ) ) { / / - á r n c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b n k " ) ) { / / - n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 0 e 1 n " ) | | / / - i á n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i s t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i s k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 6 1 t " ) | | / / - i at c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i t b " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d r n " ) ) { / / - í r n c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o s t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o u n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o u t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o u \ u 0 1 6 1 " ) ) { / / - o u a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " k y n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d a n " ) | | / / - a n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " k \ u 0 0 e 1 \ u 0 1 5 9 " ) | | / / k á Y c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " n \ u 0 0 e 9 \ u 0 1 5 9 " ) | | / / n é Y c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " n \ u 0 0 e d k " ) | | / / - n í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " c t v " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " s t v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d " ) | | / / - á  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a \ u 0 1 0 d " ) | | / / - a  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 n " ) | | / / - á n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 5 9 " ) | | / / - á Y c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a s " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e c " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 1 b n " ) | | / / - n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 5 9 " ) ) { / / - é Y c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 5 9 " ) | | / / - í Y c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i c " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d n " ) | | / / - í n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o b " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o \ u 0 1 4 8 " ) ) { / / - o H c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u l " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " y n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d k " ) | | / / - k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d n " ) | | / / - n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " d l " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " t v " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " t k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " v k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' c ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' \ u 0 1 0 d ' | | / / -  c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' k ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' l ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' n ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' t ' ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } / / r e m o v e D e r i v a t i o n a l / / / < s u m m a r y > / / / R e m o v e a u g m e n t a t i t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e A u g m e n t a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 6 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a j z n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i z n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i s k " ) ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( ( l e n > 4 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ 0 0 e 1 k " ) ) { / / - á k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / / < s u m m a r y > / / / R e m o v e d i m i n u t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e D i m i n u t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o u \ u 0 1 6 1 e k " ) ) { / / - o u ae k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e \ u 0 1 0 d e k " ) | | / / - e e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d e k " ) | | / / - é e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i \ u 0 1 0 d e k " ) | | / / - i e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d e k " ) | | / / í e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 n e k " ) | | / / - é n e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d n e k " ) ) { / / - í n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d e k " ) | | / / á e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a \ u 0 1 0 d e k " ) | | / / a e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o \ u 0 1 0 d e k " ) | | / / o e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u \ u 0 1 0 d e k " ) | | / / u e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 n e k " ) ) { / / - á n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } / / l e n > 6 i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e \ u 0 1 0 d k " ) | | / / - e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 0 d k " ) | | / / - i k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) ) { / / - í n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } } / *
2 
3  * P o r t o f S n o w b a l l s t e m m e r s o n C #
4 
5  * O r i g i n a l s t e m m e r s c a n b e f o u n d o n h t t p : / / s n o w b a l l . t a r t a r u s . o r g
6 
7  * L i c e n c e s t i l l B S D : h t t p : / / s n o w b a l l . t a r t a r u s . o r g / l i c e n s e . p h p
8 
9  *
10 
11  * M o s t o f s t e m m e r s a r e p o r t e d f r o m J a v a b y I v e o n i k S y s t e m s l t d . ( w w w . i v e o n i k . c o m )
12 
13  * /
14 
15  u s i n g S y s t e m ;
16 
17  u s i n g S y s t e m . C o l l e c t i o n s . G e n e r i c ;
18 
19  u s i n g S y s t e m . T e x t ;
20 
21  u s i n g S y s t e m . R e f l e c t i o n ;
22 
23 
24 
25  n a m e s p a c e T r a c e L a b . C o m p o n e n t s . D e v e l o p m e n t K i t . P r e p r o c e s s o r s . S t e m m e r s . S n o w b a l l . L a n g u a g e s
26 
27  {
28 
29  / / / < s u m m a r y >
30 
31  / / / P r o v i d e s s t e m m e r o p e r a t i o n s f o r t h e S n o w b a l l s t e m m e r
32 
33  / / / < / s u m m a r y >
34 
35  p u b l i c c l a s s S t e m m e r O p e r a t i o n s
36 
37  {
38 
39 
40 
41  / / / < s u m m a r y >
42 
43  / / / C u r r e n t s t r i n g
44 
45  / / / < / s u m m a r y >
46 
47  p r o t e c t e d S t r i n g B u i l d e r c u r r e n t ;
48 
49 
50 
51  / / / < s u m m a r y >
52 
53  / / / C u r s o r l o c a t i o n
54 
55  / / / < / s u m m a r y >
56 
57  p r o t e c t e d i n t c u r s o r ;
58 
59 
60 
61  / / / < s u m m a r y >
62 
63  / / / L i m i t
64 
65  / / / < / s u m m a r y >
66 
67  p r o t e c t e d i n t l i m i t ;
68 
69 
70 
71  / / / < s u m m a r y >
72 
73  / / / B a c k w a r d s l i m i t
74 
75  / / / < / s u m m a r y >
76 
77  p r o t e c t e d i n t l i m i t _ b a c k w a r d ;
78 
79 
80 
81  / / / < s u m m a r y >
82 
83  / / / B r a ( ? )
84 
85  / / / < / s u m m a r y >
86 
87  p r o t e c t e d i n t b r a ;
88 
89 
90 
91  / / / < s u m m a r y >
92 
93  / / / K e t ( ? )
94 
95  / / / < / s u m m a r y >
96 
97  p r o t e c t e d i n t k e t ;
98 
99 
100 
101 
102 
103  / / / < s u m m a r y >
104 
105  / / / C o n s t r u c t o r
106 
107  / / / < / s u m m a r y >
108 
109  p r o t e c t e d S t e m m e r O p e r a t i o n s ( )
110 
111  {
112 
113  c u r r e n t = n e w S t r i n g B u i l d e r ( ) ;
114 
115  s e t C u r r e n t ( " " ) ;
116 
117  }
118 
119 
120 
121  / / / < s u m m a r y >
122 
123  / / / S e t t h e c u r r e n t s t r i n g .
124 
125  / / / < / s u m m a r y >
126 
127  / / / < p a r a m n a m e = " v a l u e " > V a l u e < / p a r a m >
128 
129  p r o t e c t e d v o i d s e t C u r r e n t ( s t r i n g v a l u e )
130 
131  {
132 
133  / / c u r r e n t . r e p l a c e ( 0 , c u r r e n t . l e n g t h ( ) , v a l u e ) ;
134 
135  / / c u r r e n t = c u r r e n t . R e p l a c e ( c u r r e n t . T o S t r i n g ( ) , v a l u e ) ;
136 
137  / / c u r r e n t = S t r i n g B u f f e r R e p l a c e ( 0 , c u r r e n t . L e n g t h , c u r r e n t , v a l u e ) ;
138 
139  / / c u r r e n t = S t r i n g B u f f e r R e p l a c e ( 0 , v a l u e . L e n g t h , c u r r e n t , v a l u e ) ;
140 
141  c u r r e n t . R e m o v e ( 0 , c u r r e n t . L e n g t h ) ;
142 
143  c u r r e n t . A p p e n d ( v a l u e ) ;
144 
145  c u r s o r = 0 ;
146 
147  l i m i t = c u r r e n t . L e n g t h ;
148 
149  l i m i t _ b a c k w a r d = 0 ;
150 
151  b r a = c u r s o r ;
152 
153  k e t = l i m i t ;
154 
155  }
156 
157 
158 
159  / / / < s u m m a r y >
160 
161  / / / G e t t h e c u r r e n t s t r i n g .
162 
163  / / / < / s u m m a r y >
164 
165  / / / < r e t u r n s > V a l u e o f c u r r e n t s t r i n g < / r e t u r n s >
166 
167  p r o t e c t e d s t r i n g g e t C u r r e n t ( )
168 
169  {
170 
171  s t r i n g r e s u l t = c u r r e n t . T o S t r i n g ( ) ;
172 
173  / / M a k e a n e w S t r i n g B u f f e r . I f w e r e u s e t h e o l d o n e , a n d a u s e r o f
174 
175  / / t h e l i b r a r y k e e p s a r e f e r e n c e t o t h e b u f f e r r e t u r n e d ( f o r e x a m p l e ,
176 
177  / / b y c o n v e r t i n g i t t o a S t r i n g i n a w a y w h i c h d o e s n ' t f o r c e a c o p y ) ,
178 
179  / / t h e b u f f e r s i z e w i l l n o t d e c r e a s e , a n d w e w i l l r i s k w a s t i n g a l a r g e
180 
181  / / a m o u n t o f m e m o r y .
182 
183  / / T h a n k s t o W o l f r a m E s s e r f o r s p o t t i n g t h i s p r o b l e m .
184 
185  / / c u r r e n t = n e w S t r i n g B u i l d e r ( ) ;
186 
187  r e t u r n r e s u l t ;
188 
189  }
190 
191 
192 
193  / / / < s u m m a r y >
194 
195  / / / C o p i e s s e t t i n g s f r o m a n o t h e r S t e m m e r O p e r a t i o n s o b j e c t .
196 
197  / / / < / s u m m a r y >
198 
199  / / / < p a r a m n a m e = " o t h e r " > S t e m m e r O p e r a t i o n s o b j e c t < / p a r a m >
200 
201  p r o t e c t e d v o i d c o p y _ f r o m ( S t e m m e r O p e r a t i o n s o t h e r )
202 
203  {
204 
205  c u r r e n t = o t h e r . c u r r e n t ;
206 
207  c u r s o r = o t h e r . c u r s o r ;
208 
209  l i m i t = o t h e r . l i m i t ;
210 
211  l i m i t _ b a c k w a r d = o t h e r . l i m i t _ b a c k w a r d ;
212 
213  b r a = o t h e r . b r a ;
214 
215  k e t = o t h e r . k e t ;
216 
217  }
218 
219 
220 
221  / / / < s u m m a r y >
222 
223  / / / I n g r o u p i n g ?
224 
225  / / / < / s u m m a r y >
226 
227  / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m >
228 
229  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
230 
231  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
232 
233  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
234 
235  p r o t e c t e d b o o l i n _ g r o u p i n g ( c h a r [ ] s , i n t m i n , i n t m a x )
236 
237  {
238 
239  i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ;
240 
241  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ;
242 
243  i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ;
244 
245  i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ;
246 
247  / / c h - = m i n ;
248 
249  c h - = m i n ;
250 
251  i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 ) r e t u r n f a l s e ;
252 
253  c u r s o r + + ;
254 
255  r e t u r n t r u e ;
256 
257  }
258 
259 
260 
261  / / / < s u m m a r y >
262 
263  / / / I n g r o u p i n g b ?
264 
265  / / / < / s u m m a r y >
266 
267  / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m >
268 
269  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
270 
271  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
272 
273  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
274 
275  p r o t e c t e d b o o l i n _ g r o u p i n g _ b ( c h a r [ ] s , i n t m i n , i n t m a x )
276 
277  {
278 
279  i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ;
280 
281  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ;
282 
283  i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ;
284 
285  i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ;
286 
287  c h - = m i n ;
288 
289  i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 ) r e t u r n f a l s e ;
290 
291  c u r s o r - - ;
292 
293  r e t u r n t r u e ;
294 
295  }
296 
297 
298 
299  / / / < s u m m a r y >
300 
301  / / / O u t g r o u p i n g ?
302 
303  / / / < / s u m m a r y >
304 
305  / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m >
306 
307  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
308 
309  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
310 
311  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
312 
313  p r o t e c t e d b o o l o u t _ g r o u p i n g ( c h a r [ ] s , i n t m i n , i n t m a x )
314 
315  {
316 
317  i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ;
318 
319  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ;
320 
321  i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ;
322 
323  i f ( c h > m a x | | c h < m i n )
324 
325  {
326 
327  c u r s o r + + ;
328 
329  r e t u r n t r u e ;
330 
331  }
332 
333  c h - = m i n ;
334 
335  i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 )
336 
337  {
338 
339  c u r s o r + + ;
340 
341  r e t u r n t r u e ;
342 
343  }
344 
345  r e t u r n f a l s e ;
346 
347  }
348 
349 
350 
351  / / / < s u m m a r y >
352 
353  / / / O u t g r o u p i n g b ?
354 
355  / / / < / s u m m a r y >
356 
357  / / / < p a r a m n a m e = " s " > I n p u t c h a r s < / p a r a m >
358 
359  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
360 
361  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
362 
363  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
364 
365  p r o t e c t e d b o o l o u t _ g r o u p i n g _ b ( c h a r [ ] s , i n t m i n , i n t m a x )
366 
367  {
368 
369  i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ;
370 
371  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ;
372 
373  i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ;
374 
375  i f ( c h > m a x | | c h < m i n )
376 
377  {
378 
379  c u r s o r - - ;
380 
381  r e t u r n t r u e ;
382 
383  }
384 
385  c h - = m i n ;
386 
387  i f ( ( s [ c h > > 3 ] & ( 0 X 1 < < ( c h & 0 X 7 ) ) ) = = 0 )
388 
389  {
390 
391  c u r s o r - - ;
392 
393  r e t u r n t r u e ;
394 
395  }
396 
397  r e t u r n f a l s e ;
398 
399  }
400 
401 
402 
403  / / / < s u m m a r y >
404 
405  / / / I n r a n g e ?
406 
407  / / / < / s u m m a r y >
408 
409  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
410 
411  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
412 
413  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
414 
415  p r o t e c t e d b o o l i n _ r a n g e ( i n t m i n , i n t m a x )
416 
417  {
418 
419  i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ;
420 
421  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ;
422 
423  i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ;
424 
425  i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ;
426 
427  c u r s o r + + ;
428 
429  r e t u r n t r u e ;
430 
431  }
432 
433 
434 
435  / / / < s u m m a r y >
436 
437  / / / I n r a n g e b ?
438 
439  / / / < / s u m m a r y >
440 
441  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
442 
443  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
444 
445  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
446 
447  p r o t e c t e d b o o l i n _ r a n g e _ b ( i n t m i n , i n t m a x )
448 
449  {
450 
451  i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ;
452 
453  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ;
454 
455  i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ;
456 
457  i f ( c h > m a x | | c h < m i n ) r e t u r n f a l s e ;
458 
459  c u r s o r - - ;
460 
461  r e t u r n t r u e ;
462 
463  }
464 
465 
466 
467  / / / < s u m m a r y >
468 
469  / / / O u t r a n g e ?
470 
471  / / / < / s u m m a r y >
472 
473  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
474 
475  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
476 
477  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
478 
479  p r o t e c t e d b o o l o u t _ r a n g e ( i n t m i n , i n t m a x )
480 
481  {
482 
483  i f ( c u r s o r > = l i m i t ) r e t u r n f a l s e ;
484 
485  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r ) ;
486 
487  i n t c h = ( i n t ) c u r r e n t [ c u r s o r ] ;
488 
489  i f ( ! ( c h > m a x | | c h < m i n ) ) r e t u r n f a l s e ;
490 
491  c u r s o r + + ;
492 
493  r e t u r n t r u e ;
494 
495  }
496 
497 
498 
499  / / / < s u m m a r y >
500 
501  / / / O u t r a n g e b ?
502 
503  / / / < / s u m m a r y >
504 
505  / / / < p a r a m n a m e = " m i n " > M i n < / p a r a m >
506 
507  / / / < p a r a m n a m e = " m a x " > M a x < / p a r a m >
508 
509  / / / < r e t u r n s > T r u e i f y e s , f a l s e o t h e r w i s e < / r e t u r n s >
510 
511  p r o t e c t e d b o o l o u t _ r a n g e _ b ( i n t m i n , i n t m a x )
512 
513  {
514 
515  i f ( c u r s o r < = l i m i t _ b a c k w a r d ) r e t u r n f a l s e ;
516 
517  / / c h a r c h = c u r r e n t . c h a r A t ( c u r s o r - 1 ) ;
518 
519  i n t c h = ( i n t ) c u r r e n t [ c u r s o r - 1 ] ;
520 
521  i f ( ! ( c h > m a x | | c h < m i n ) ) r e t u r n f a l s e ;
522 
523  c u r s o r - - ;
524 
525  r e t u r n t r u e ;
526 
527  }
528 
529 
530 
531  / / / < s u m m a r y >
532 
533  / / / E q s ?
534 
535  / / / < / s u m m a r y >
536 
537  / / / < p a r a m n a m e = " s _ s i z e " > i n p u t s t r i n g s i z e < / p a r a m >
538 
539  / / / < p a r a m n a m e = " s " > i n p u t s t r i n g < / p a r a m >
540 
541  / / / < r e t u r n s > < / r e t u r n s >
542 
543  p r o t e c t e d b o o l e q _ s ( i n t s _ s i z e , s t r i n g s )
544 
545  {
546 
547  i f ( l i m i t - c u r s o r < s _ s i z e ) r e t u r n f a l s e ;
548 
549  i n t i ;
550 
551  f o r ( i = 0 ; i ! = s _ s i z e ; i + + )
552 
553  {
554 
555  i f ( c u r r e n t [ c u r s o r + i ] ! = s [ i ] ) r e t u r n f a l s e ;
556 
557  / / i f ( c u r r e n t [ c u r s o r + i ] ! = s [ i ] ) r e t u r n f a l s e ;
558 
559  }
560 
561  c u r s o r + = s _ s i z e ;
562 
563  r e t u r n t r u e ;
564 
565  }
566 
567 
568 
569  / / / < s u m m a r y >
570 
571  / / / E q s b ?
572 
573  / / / < / s u m m a r y >
574 
575  / / / < p a r a m n a m e = " s _ s i z e " > i n p u t s t r i n g s i z e < / p a r a m >
576 
577  / / / < p a r a m n a m e = " s " > i n p u t s t r i n g < / p a r a m >
578 
579  / / / < r e t u r n s > < / r e t u r n s >
580 
581  p r o t e c t e d b o o l e q _ s _ b ( i n t s _ s i z e , s t r i n g s )
582 
583  {
584 
585  i f ( c u r s o r - l i m i t _ b a c k w a r d < s _ s i z e ) r e t u r n f a l s e ;
586 
587  i n t i ;
588 
589  f o r ( i = 0 ; i ! = s _ s i z e ; i + + )
590 
591  {
592 
593  / / i f ( c u r r e n t . c h a r A t ( c u r s o r - s _ s i z e + i ) ! = s . c h a r A t ( i ) ) r e t u r n f a l s e ;
594 
595  i f ( c u r r e n t [ c u r s o r - s _ s i z e + i ] ! = s [ i ] ) r e t u r n f a l s e ;
596 
597  }
598 
599  c u r s o r - = s _ s i z e ;
600 
601  r e t u r n t r u e ;
602 
603  }
604 
605 
606 
607  / / / < s u m m a r y >
608 
609  / / / E q v ?
610 
611  / / / < / s u m m a r y >
612 
613  / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m >
614 
615  / / / < r e t u r n s > < / r e t u r n s >
616 
617  p r o t e c t e d b o o l e q _ v ( S t r i n g B u i l d e r s )
618 
619  {
620 
621  r e t u r n e q _ s ( s . L e n g t h , s . T o S t r i n g ( ) ) ;
622 
623  }
624 
625 
626 
627  / / / < s u m m a r y >
628 
629  / / / E q v b ?
630 
631  / / / < / s u m m a r y >
632 
633  / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m >
634 
635  / / / < r e t u r n s > < / r e t u r n s >
636 
637  p r o t e c t e d b o o l e q _ v _ b ( S t r i n g B u i l d e r s )
638 
639  {
640 
641  r e t u r n e q _ s _ b ( s . L e n g t h , s . T o S t r i n g ( ) ) ;
642 
643  }
644 
645 
646 
647 
648 
649  i n t e r n a l i n t f i n d _ a m o n g ( A m o n g [ ] v , i n t v _ s i z e )
650 
651  {
652 
653  i n t i = 0 ;
654 
655  i n t j = v _ s i z e ;
656 
657 
658 
659  i n t c = c u r s o r ;
660 
661  i n t l = l i m i t ;
662 
663 
664 
665  i n t c o m m o n _ i = 0 ;
666 
667  i n t c o m m o n _ j = 0 ;
668 
669 
670 
671  b o o l f i r s t _ k e y _ i n s p e c t e d = f a l s e ;
672 
673  w h i l e ( t r u e )
674 
675  {
676 
677  i n t k = i + ( ( j - i ) > > 1 ) ;
678 
679  i n t d i f f = 0 ;
680 
681  i n t c o m m o n = c o m m o n _ i < c o m m o n _ j ? c o m m o n _ i : c o m m o n _ j ; / / s m a l l e r
682 
683  A m o n g w = v [ k ] ;
684 
685  i n t i 2 ;
686 
687 
688 
689  f o r ( i 2 = c o m m o n ; i 2 < w . s _ s i z e ; i 2 + + )
690 
691  {
692 
693  i f ( c + c o m m o n = = l )
694 
695  {
696 
697  d i f f = - 1 ;
698 
699  b r e a k ;
700 
701  }
702 
703  d i f f = c u r r e n t [ c + c o m m o n ] - w . s [ i 2 ] ;
704 
705  i f ( d i f f ! = 0 ) b r e a k ;
706 
707  c o m m o n + + ;
708 
709  }
710 
711  i f ( d i f f < 0 )
712 
713  {
714 
715  j = k ;
716 
717  c o m m o n _ j = c o m m o n ;
718 
719  }
720 
721  e l s e
722 
723  {
724 
725  i = k ;
726 
727  c o m m o n _ i = c o m m o n ;
728 
729  }
730 
731  i f ( j - i < = 1 )
732 
733  {
734 
735  i f ( i > 0 ) b r e a k ; / / v - > s h a s b e e n i n s p e c t e d
736 
737  i f ( j = = i ) b r e a k ; / / o n l y o n e i t e m i n v
738 
739  / / - b u t n o w w e n e e d t o g o r o u n d o n c e m o r e t o g e t
740 
741  / / v - > s i n s p e c t e d . T h i s l o o k s m e s s y , b u t i s a c t u a l l y
742 
743  / / t h e o p t i m a l a p p r o a c h .
744 
745  i f ( f i r s t _ k e y _ i n s p e c t e d ) b r e a k ;
746 
747  f i r s t _ k e y _ i n s p e c t e d = t r u e ;
748 
749  }
750 
751  }
752 
753  w h i l e ( t r u e )
754 
755  {
756 
757  A m o n g w = v [ i ] ;
758 
759  i f ( c o m m o n _ i > = w . s _ s i z e )
760 
761  {
762 
763  c u r s o r = c + w . s _ s i z e ;
764 
765  i f ( w . m e t h o d = = n u l l ) r e t u r n w . r e s u l t ;
766 
767  / / b o o l r e s ;
768 
769  / / t r y
770 
771  / / {
772 
773  / / O b j e c t r e s o b j = w . m e t h o d . i n v o k e ( w . m e t h o d o b j e c t , n e w O b j e c t [ 0 ] ) ;
774 
775  / / r e s = r e s o b j . t o S t r i n g ( ) . e q u a l s ( " t r u e " ) ;
776 
777  / / }
778 
779  / / c a t c h ( I n v o c a t i o n T a r g e t E x c e p t i o n e )
780 
781  / / {
782 
783  / / r e s = f a l s e ;
784 
785  / / / / F I X M E - d e b u g m e s s a g e
786 
787  / / }
788 
789  / / c a t c h ( I l l e g a l A c c e s s E x c e p t i o n e )
790 
791  / / {
792 
793  / / r e s = f a l s e ;
794 
795  / / / / F I X M E - d e b u g m e s s a g e
796 
797  / / }
798 
799  / / c u r s o r = c + w . s _ s i z e ;
800 
801  / / i f ( r e s ) r e t u r n w . r e s u l t ;
802 
803  }
804 
805  i = w . s u b s t r i n g _ i ;
806 
807  i f ( i < 0 ) r e t u r n 0 ;
808 
809  }
810 
811  }
812 
813 
814 
815  / / / / f i n d _ a m o n g _ b i s f o r b a c k w a r d s p r o c e s s i n g . S a m e c o m m e n t s a p p l y
816 
817 
818 
819  i n t e r n a l i n t f i n d _ a m o n g _ b ( A m o n g [ ] v , i n t v _ s i z e )
820 
821  {
822 
823  i n t i = 0 ;
824 
825  i n t j = v _ s i z e ;
826 
827  i n t c = c u r s o r ;
828 
829  i n t l b = l i m i t _ b a c k w a r d ;
830 
831  i n t c o m m o n _ i = 0 ;
832 
833  i n t c o m m o n _ j = 0 ;
834 
835  b o o l f i r s t _ k e y _ i n s p e c t e d = f a l s e ;
836 
837  w h i l e ( t r u e )
838 
839  {
840 
841  i n t k = i + ( ( j - i ) > > 1 ) ;
842 
843  i n t d i f f = 0 ;
844 
845  i n t c o m m o n = c o m m o n _ i < c o m m o n _ j ? c o m m o n _ i : c o m m o n _ j ;
846 
847  A m o n g w = v [ k ] ;
848 
849  i n t i 2 ;
850 
851  f o r ( i 2 = w . s _ s i z e - 1 - c o m m o n ; i 2 > = 0 ; i 2 - - )
852 
853  {
854 
855  i f ( c - c o m m o n = = l b )
856 
857  {
858 
859  d i f f = - 1 ;
860 
861  b r e a k ;
862 
863  }
864 
865  / / d i f f = c u r r e n t . c h a r A t ( c - 1 - c o m m o n ) - w . s [ i 2 ] ;
866 
867  d i f f = c u r r e n t [ c - 1 - c o m m o n ] - w . s [ i 2 ] ;
868 
869  i f ( d i f f ! = 0 ) b r e a k ;
870 
871  c o m m o n + + ;
872 
873  }
874 
875  i f ( d i f f < 0 )
876 
877  {
878 
879  j = k ;
880 
881  c o m m o n _ j = c o m m o n ;
882 
883  }
884 
885  e l s e
886 
887  {
888 
889  i = k ;
890 
891  c o m m o n _ i = c o m m o n ;
892 
893  }
894 
895  i f ( j - i < = 1 )
896 
897  {
898 
899  i f ( i > 0 ) b r e a k ;
900 
901  i f ( j = = i ) b r e a k ;
902 
903  i f ( f i r s t _ k e y _ i n s p e c t e d ) b r e a k ;
904 
905  f i r s t _ k e y _ i n s p e c t e d = t r u e ;
906 
907  }
908 
909  }
910 
911  w h i l e ( t r u e )
912 
913  {
914 
915  A m o n g w = v [ i ] ;
916 
917  i f ( c o m m o n _ i > = w . s _ s i z e )
918 
919  {
920 
921  c u r s o r = c - w . s _ s i z e ;
922 
923  i f ( w . m e t h o d = = n u l l ) r e t u r n w . r e s u l t ;
924 
925  / / b o o l e a n r e s ;
926 
927  / / t r y
928 
929  / / {
930 
931  / / O b j e c t r e s o b j = w . m e t h o d . i n v o k e ( w . m e t h o d o b j e c t ,
932 
933  / / n e w O b j e c t [ 0 ] ) ;
934 
935  / / r e s = r e s o b j . t o S t r i n g ( ) . e q u a l s ( " t r u e " ) ;
936 
937  / / }
938 
939  / / c a t c h ( I n v o c a t i o n T a r g e t E x c e p t i o n e )
940 
941  / / {
942 
943  / / r e s = f a l s e ;
944 
945  / / / / F I X M E - d e b u g m e s s a g e
946 
947  / / }
948 
949  / / c a t c h ( I l l e g a l A c c e s s E x c e p t i o n e )
950 
951  / / {
952 
953  / / r e s = f a l s e ;
954 
955  / / / / F I X M E - d e b u g m e s s a g e
956 
957  / / }
958 
959  / / c u r s o r = c - w . s _ s i z e ;
960 
961  / / i f ( r e s ) r e t u r n w . r e s u l t ;
962 
963  }
964 
965  i = w . s u b s t r i n g _ i ;
966 
967  i f ( i < 0 ) r e t u r n 0 ;
968 
969  }
970 
971  }
972 
973 
974 
975  / / / < s u m m a r y >
976 
977  / / / t o r e p l a c e c h a r s b e t w e e n c _ b r a a n d c _ k e t i n c u r r e n t b y t h e c h a r s i n s .
978 
979  / / / < / s u m m a r y >
980 
981  / / / < p a r a m n a m e = " c _ b r a " > < / p a r a m >
982 
983  / / / < p a r a m n a m e = " c _ k e t " > < / p a r a m >
984 
985  / / / < p a r a m n a m e = " s " > < / p a r a m >
986 
987  / / / < r e t u r n s > < / r e t u r n s >
988 
989  p r o t e c t e d i n t r e p l a c e _ s ( i n t c _ b r a , i n t c _ k e t , s t r i n g s )
990 
991  {
992 
993  i n t a d j u s t m e n t = s . L e n g t h - ( c _ k e t - c _ b r a ) ;
994 
995  / / c u r r e n t . r e p l a c e ( c _ b r a , c _ k e t , s ) ;
996 
997  c u r r e n t = S t r i n g B u f f e r R e p l a c e ( c _ b r a , c _ k e t , c u r r e n t , s ) ;
998 
999  l i m i t + = a d j u s t m e n t ;
1000 
1001  i f ( c u r s o r > = c _ k e t ) c u r s o r + = a d j u s t m e n t ;
1002 
1003  e l s e i f ( c u r s o r > c _ b r a ) c u r s o r = c _ b r a ;
1004 
1005  r e t u r n a d j u s t m e n t ;
1006 
1007  }
1008 
1009 
1010 
1011  p r i v a t e S t r i n g B u i l d e r S t r i n g B u f f e r R e p l a c e ( i n t s t a r t , i n t e n d , S t r i n g B u i l d e r s , s t r i n g s 1 )
1012 
1013  {
1014 
1015  S t r i n g B u i l d e r s b = n e w S t r i n g B u i l d e r ( ) ;
1016 
1017  f o r ( i n t i = 0 ; i < s t a r t ; i + + )
1018 
1019  {
1021  s b . I n s e r t ( s b . L e n g t h , s [ i ] ) ;
1022 
1023  }
1024 
1025  / / f o r ( i n t i = 1 ; i < e n d - s t a r t + 1 ; i + + )
1026 
1027  / / {
1028 
1029  s b . I n s e r t ( s b . L e n g t h , s 1 ) ;
1030 
1031  / / }
1032 
1033  f o r ( i n t i = e n d ; i < s . L e n g t h ; i + + )
1034 
1035  {
1036 
1037  s b . I n s e r t ( s b . L e n g t h , s [ i ] ) ;
1038 
1039  }
1040 
1041 
1042 
1043  r e t u r n s b ;
1044 
1045  / / s t r i n g t e m p = s . T o S t r i n g ( ) ;
1046 
1047  / / t e m p = t e m p . S u b s t r i n g ( s t a r t - 1 , e n d - s t a r t + 1 ) ;
1048 
1049  / / s = s . R e p l a c e ( t e m p , s 1 , s t a r t - 1 , e n d - s t a r t + 1 ) ;
1050 
1051  / / r e t u r n s ;
1052 
1053  }
1054 
1055 
1056 
1057  / / / < s u m m a r y >
1058 
1059  / / / S l i c e c h e c k
1060 
1061  / / / < / s u m m a r y >
1062 
1063  p r o t e c t e d v o i d s l i c e _ c h e c k ( )
1064 
1065  {
1066 
1067  i f ( b r a < 0 | |
1068 
1069  b r a > k e t | |
1070 
1071  k e t > l i m i t | |
1072 
1073  l i m i t > c u r r e n t . L e n g t h ) / / t h i s l i n e c o u l d b e r e m o v e d
1074 
1075  {
1076 
1077  / / S y s t e m . e r r . p r i n t l n ( " f a u l t y s l i c e o p e r a t i o n " ) ;
1078 
1079  / / F I X M E : r e p o r t e r r o r s o m e h o w .
1081  / *
1082 
1083  f p r i n t f ( s t d e r r , " f a u l t y s l i c e o p e r a t i o n : \ n " ) ;
1084 
1085  d e b u g ( z , - 1 , 0 ) ;
1086 
1087  e x i t ( 1 ) ;
1088 
1089  * /
1090 
1091  }
1092 
1093  }
1094 
1095 
1096 
1097  / / / < s u m m a r y >
1098 
1099  / / / S l i c e f r o m
1100 
1101  / / / < / s u m m a r y >
1102 
1103  / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m >
1104 
1105  p r o t e c t e d v o i d s l i c e _ f r o m ( s t r i n g s )
1106 
1107  {
1109  s l i c e _ c h e c k ( ) ;
1110 
1111  r e p l a c e _ s ( b r a , k e t , s ) ;
1112 
1113  }
1114 
1115 
1116 
1117  / / / < s u m m a r y >
1118 
1119  / / / S l i c e f r o m
1120 
1121  / / / < / s u m m a r y >
1122 
1123  / / / < p a r a m n a m e = " s " > I n p u t s t r i n g < / p a r a m >
1124 
1125  p r o t e c t e d v o i d s l i c e _ f r o m ( S t r i n g B u i l d e r s )
1126 
1127  {
1128 
1129  s l i c e _ f r o m ( s . T o S t r i n g ( ) ) ;
1130 
1131  }
1132 
1133 
1134 
1135  / / / < s u m m a r y >
1136 
1137  / / / S l i c e d e l e t e
1138 
1139  / / / < / s u m m a r y >
1140 
1141  p r o t e c t e d v o i d s l i c e _ d e l ( )
1142 
1143  {
1144 
1145  s l i c e _ f r o m ( " " ) ;
1146 
1147  }
1148 
1149 
1150 
1151  / / / < s u m m a r y >
1152 
1153  / / / I n s e r t
1154 
1155  / / / < / s u m m a r y >
1156 
1157  / / / < p a r a m n a m e = " c _ b r a " > < / p a r a m >
1158 
1159  / / / < p a r a m n a m e = " c _ k e t " > < / p a r a m >
1160 
1161  / / / < p a r a m n a m e = " s " > < / p a r a m >
1162 
1163  p r o t e c t e d v o i d i n s e r t ( i n t c _ b r a , i n t c _ k e t , s t r i n g s )
1164 
1165  {
1166 
1167  i n t a d j u s t m e n t = r e p l a c e _ s ( c _ b r a , c _ k e t , s ) ;
1168 
1169  i f ( c _ b r a < = b r a ) b r a + = a d j u s t m e n t ;
1170 
1171  i f ( c _ b r a < = k e t ) k e t + = a d j u s t m e n t ;
1172 
1173  }
1174 
1175 
1176 
1177  / / / < s u m m a r y >
1178 
1179  / / / I n s e r t
1180 
1181  / / / < / s u m m a r y >
1182 
1183  / / / < p a r a m n a m e = " c _ b r a " > < / p a r a m >
1184 
1185  / / / < p a r a m n a m e = " c _ k e t " > < / p a r a m >
1186 
1187  / / / < p a r a m n a m e = " s " > < / p a r a m >
1188 
1189  p r o t e c t e d v o i d i n s e r t ( i n t c _ b r a , i n t c _ k e t , S t r i n g B u i l d e r s )
1190 
1191  {
1192 
1193  i n s e r t ( c _ b r a , c _ k e t , s . T o S t r i n g ( ) ) ;
1194 
1195  }
1196 
1197 
1198 
1199  / / / < s u m m a r y >
1200 
1201  / / / C o p y t h e s l i c e i n t o t h e s u p p l i e d S t r i n g B u f f e r
1202 
1203  / / / < / s u m m a r y >
1204 
1205  / / / < p a r a m n a m e = " s " > < / p a r a m >
1206 
1207  / / / < r e t u r n s > < / r e t u r n s >
1208 
1209  p r o t e c t e d S t r i n g B u i l d e r s l i c e _ t o ( S t r i n g B u i l d e r s )
1210 
1211  {
1212 
1213  s l i c e _ c h e c k ( ) ;
1214 
1215  i n t l e n = k e t - b r a ;
1216 
1217  / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( b r a , k e t ) ) ;
1218 
1219  / / i n t l e n g h = s t r i n g . I s N u l l O r E m p t y ( s . T o S t r i n g ( ) ) ! = t r u e ? s . L e n g t h : 0 ;
1220 
1221  / / i f ( k e t = = c u r r e n t . L e n g t h ) k e t - - ;
1222 
1223  / / s t r i n g s s = c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( b r a , l e n ) ;
1224 
1225  / / S t r i n g B u f f e r R e p l a c e ( 0 , s . L e n g t h , s , s s ) ;
1226 
1227  / / r e t u r n s ;
1228 
1229  r e t u r n S t r i n g B u f f e r R e p l a c e ( 0 , s . L e n g t h , s , c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( b r a , l e n ) ) ;
1230 
1231  / / r e t u r n S t r i n g B u f f e r R e p l a c e ( 0 , l e n g h , s , c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( b r a , k e t ) ) ;
1232 
1233  / / r e t u r n s ;
1234 
1235  }
1236 
1237 
1238 
1239  / / / * C o p y t h e s l i c e i n t o t h e s u p p l i e d S t r i n g B u i l d e r * /
1240 
1241  / / p r o t e c t e d S t r i n g B u i l d e r s l i c e _ t o ( S t r i n g B u i l d e r s )
1242 
1243  / / {
1244 
1245  / / s l i c e _ c h e c k ( ) ;
1246 
1247  / / i n t l e n = k e t - b r a ;
1248 
1249  / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( b r a , k e t ) ) ;
1250 
1251  / / r e t u r n s ;
1252 
1253  / / }
1254 
1255 
1256 
1257  / / / < s u m m a r y >
1258 
1259  / / / A s s i g n t o
1260 
1261  / / / < / s u m m a r y >
1262 
1263  / / / < p a r a m n a m e = " s " > < / p a r a m >
1264 
1265  / / / < r e t u r n s > < / r e t u r n s >
1266 
1267  p r o t e c t e d S t r i n g B u i l d e r a s s i g n _ t o ( S t r i n g B u i l d e r s )
1268 
1269  {
1270 
1271  / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( 0 , l i m i t ) ) ;
1272 
1273  / / r e t u r n s ;
1274 
1275  r e t u r n S t r i n g B u f f e r R e p l a c e ( 0 , s . L e n g t h , s , c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( 0 , l i m i t ) ) ;
1276 
1277  }
1278 
1279 
1280 
1281  / / p r o t e c t e d S t r i n g B u i l d e r a s s i g n _ t o ( S t r i n g B u i l d e r s )
1282 
1283  / / {
1284 
1285  / / s . r e p l a c e ( 0 , s . l e n g t h ( ) , c u r r e n t . s u b s t r i n g ( 0 , l i m i t ) ) ;
1286 
1287  / / r e t u r n s ;
1288 
1289  / / }
1290 
1291 
1292 
1293  / / / *
1294 
1295  / / e x t e r n v o i d d e b u g ( s t r u c t S N _ e n v * z , i n t n u m b e r , i n t l i n e _ c o u n t )
1296 
1297  / / { i n t i ;
1298 
1299  / / i n t l i m i t = S I Z E ( z - > p ) ;
1300 
1301  / / / / i f ( n u m b e r > = 0 ) p r i n t f ( " % 3 d ( l i n e % 4 d ) : ' " , n u m b e r , l i n e _ c o u n t ) ;
1302 
1303  / / i f ( n u m b e r > = 0 ) p r i n t f ( " % 3 d ( l i n e % 4 d ) : [ % d ] ' " , n u m b e r , l i n e _ c o u n t , l i m i t ) ;
1304 
1305  / / f o r ( i = 0 ; i < = l i m i t ; i + + )
1306 
1307  / / { i f ( z - > l b = = i ) p r i n t f ( " { " ) ;
1308 
1309  / / i f ( z - > b r a = = i ) p r i n t f ( " [ " ) ;
1310 
1311  / / i f ( z - > c = = i ) p r i n t f ( " | " ) ;
1312 
1313  / / i f ( z - > k e t = = i ) p r i n t f ( " ] " ) ;
1314 
1315  / / i f ( z - > l = = i ) p r i n t f ( " } " ) ;
1316 
1317  / / i f ( i < l i m i t )
1318 
1319  / / { i n t c h = z - > p [ i ] ;
1320 
1321  / / i f ( c h = = 0 ) c h = ' # ' ;
1322 
1323  / / p r i n t f ( " % c " , c h ) ;
1324 
1325  / / }
1326 
1327  / / }
1328 
1329  / / p r i n t f ( " ' \ n " ) ;
1330 
1331  / / }
1332 
1333  / / * /
1334 
1335 
1336 
1337  / / } ;
1338 
1339  / / / / / / / / / / / / / / / / / / / / / / / / / / / / / M E T H O D S F O R C Z E C H S T E M M E R A G R E S S I V E / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
1340 
1341 
1342 
1343  / / / < s u m m a r y >
1344 
1345  / / / R e m o v e D e r i v a t i o n a l ( C z e c h s t e m m e r a g r e s s i v e )
1346 
1347  / / / < / s u m m a r y >
1348 
1349  p r o t e c t e d v o i d r e m o v e D e r i v a t i o n a l ( )
1350 
1351  {
1352 
1353  i n t l e n = c u r r e n t . L e n g t h ;
1354 
1355  i f ( ( l e n > 8 ) & &
1356 
1357  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 6 , 6 ) . E q u a l s ( " o b i n e c " ) )
1358 
1359  {
1360 
1361  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 6 , 6 ) ;
1362 
1363  r e t u r n ;
1364 
1365  } / / l e n > 8
1366 
1367  i f ( l e n > 7 )
1368 
1369  {
1370 
1371  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " i o n \ u 0 0 e 1 \ u 0 1 5 9 " ) )
1372 
1373  { / / - i o n á Y
1374 
1375 
1376 
1377  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ;
1378 
1379  p a l a t a l i s e ( ) ;
1380 
1381  r e t u r n ;
1382 
1383  }
1384 
1385  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v i s k " ) | |
1386 
1387  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v s t v " ) | |
1388 
1389  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v i \ u 0 1 6 1 t " ) | | / / - o v i at
1390 
1391  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v n \ u 0 0 e d k " ) )
1392 
1393  { / / - o v n í k
1394 
1395 
1396 
1397  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ;
1398 
1399  r e t u r n ;
1400 
1401  }
1402 
1403  } / / l e n > 7
1404 
1405  i f ( l e n > 6 )
1406 
1407  {
1408 
1409  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 s e k " ) | | / / - á s e k
1410 
1411  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " l o u n " ) | |
1412 
1413  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " n o s t " ) | |
1414 
1415  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " t e l n " ) | |
1416 
1417  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o v e c " ) | |
1418 
1419  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o v \ u 0 0 e d k " ) | | / / - o v í k
1420 
1421  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o v t v " ) | |
1422 
1423  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o v i n " ) | |
1424 
1425  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 6 1 t i n " ) )
1426 
1427  { / / - at i n
1428 
1429 
1430 
1431  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ;
1432 
1433  r e t u r n ;
1434 
1435  }
1436 
1437  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e n i c " ) | |
1438 
1439  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i n e c " ) | |
1440 
1441  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i t e l " ) )
1442 
1443  {
1444 
1445 
1446 
1447  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1448 
1449  p a l a t a l i s e ( ) ;
1450 
1451  r e t u r n ;
1452 
1453  }
1454 
1455  } / / l e n > 6
1456 
1457  i f ( l e n > 5 )
1458 
1459  {
1460 
1461  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 r n " ) )
1462 
1463  { / / - á r n
1464 
1465  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1466 
1467  r e t u r n ;
1468 
1469  }
1470 
1471  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b n k " ) )
1472 
1473  { / / - n k
1474 
1475 
1476 
1477  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1478 
1479  p a l a t a l i s e ( ) ;
1480 
1481 
1482 
1483  r e t u r n ;
1484 
1485  }
1486 
1487  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 0 e 1 n " ) | | / / - i á n
1488 
1489  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i s t " ) | |
1490 
1491  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i s k " ) | |
1492 
1493  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 6 1 t " ) | | / / - i at
1494 
1495  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i t b " ) | |
1496 
1497  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d r n " ) )
1498 
1499  { / / - í r n
1500 
1501 
1502 
1503  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1504 
1505  p a l a t a l i s e ( ) ;
1506 
1507  r e t u r n ;
1508 
1509  }
1510 
1511  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o c h " ) | |
1512 
1513  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o s t " ) | |
1514 
1515  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v n " ) | |
1516 
1517  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o u n " ) | |
1518 
1519  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o u t " ) | |
1520 
1521  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o u \ u 0 1 6 1 " ) )
1522 
1523  { / / - o u a
1524 
1525 
1526 
1527  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1528 
1529  r e t u r n ;
1530 
1531  }
1532 
1533  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) )
1534 
1535  { / / - u ak
1536 
1537 
1538 
1539  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1540 
1541  r e t u r n ;
1542 
1543  }
1544 
1545  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " k y n " ) | |
1546 
1547  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d a n " ) | | / / -
1548 a n
1549 
1550  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " k \ u 0 0 e 1 \ u 0 1 5 9 " ) | | / / k á Y
1551 
1552  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " n \ u 0 0 e 9 \ u 0 1 5 9 " ) | | / / n é Y
1553 
1554  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " n \ u 0 0 e d k " ) | | / / - n í k
1555 
1556  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " c t v " ) | |
1557 
1558  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " s t v " ) )
1559 
1560  {
1561 
1562 
1563 
1564  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1565 
1566  r e t u r n ;
1567 
1568  }
1569 
1570  } / / l e n > 5
1571 
1572  i f ( l e n > 4 )
1573 
1574  {
1575 
1576  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d " ) | | / / - á  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a \ u 0 1 0 d " ) | | / / - a  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 n " ) | | / / - á n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 5 9 " ) | | / / - á Y c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a s " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e c " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 1 b n " ) | | / / - n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 5 9 " ) ) { / / - é Y c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 5 9 " ) | | / / - í Y c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i c " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d n " ) | | / / - í n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o b " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o \ u 0 1 4 8 " ) ) { / / - o H c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u l " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " y n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d k " ) | | / / - k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d n " ) | | / / - n c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " d l " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " t v " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " t k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " v k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' c ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' \ u 0 1 0 d ' | | / / -  c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' k ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' l ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' n ' | | c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' t ' ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } / / r e m o v e D e r i v a t i o n a l / / / < s u m m a r y > / / / R e m o v e a u g m e n t a t i t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e A u g m e n t a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 6 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a j z n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i z n " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i s k " ) ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( ( l e n > 4 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ 0 0 e 1 k " ) ) { / / - á k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / / < s u m m a r y > / / / R e m o v e d i m i n u t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e D i m i n u t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o u \ u 0 1 6 1 e k " ) ) { / / - o u ae k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e \ u 0 1 0 d e k " ) | | / / - e e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d e k " ) | | / / - é e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i \ u 0 1 0 d e k " ) | | / / - i e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d e k " ) | | / / í e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 n e k " ) | | / / - é n e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d n e k " ) ) { / / - í n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d e k " ) | | / / á e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a \ u 0 1 0 d e k " ) | | / / a e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o \ u 0 1 0 d e k " ) | | / / o e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u \ u 0 1 0 d e k " ) | | / / u e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 n e k " ) ) { / / - á n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } / / l e n > 6 i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e \ u 0 1 0 d k " ) | | / / - e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 0 d k " ) | | / / - i k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) ) { / / - í n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
1577 
1578 
1579  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a \ u 0 1 0 d " ) | | / / - a
1580 
1581 
1582  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 n " ) | | / / - á n
1583 
1584  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a n " ) | |
1585 
1586  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 5 9 " ) | | / / - á Y
1587 
1588  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a s " ) )
1589 
1590  {
1591 
1592 
1593 
1594  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1595 
1596  r e t u r n ;
1597 
1598  }
1599 
1600  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e c " ) | |
1601 
1602  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e n " ) | |
1603 
1604  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 1 b n " ) | | / / - n
1605 
1606  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 5 9 " ) )
1607 
1608  { / / - é Y
1609 
1610 
1611 
1612  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
1613 
1614  p a l a t a l i s e ( ) ;
1615 
1616  r e t u r n ;
1617 
1618  }
1619 
1620  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 5 9 " ) | | / / - í Y
1621 
1622  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i c " ) | |
1623 
1624  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) | |
1625 
1626  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d n " ) | | / / - í n
1627 
1628  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i t " ) | |
1629 
1630  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i v " ) )
1631 
1632  {
1633 
1634 
1635 
1636  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
1637 
1638  p a l a t a l i s e ( ) ;
1639 
1640  r e t u r n ;
1641 
1642  }
1643 
1644 
1645 
1646  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o b " ) | |
1647 
1648  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o t " ) | |
1649 
1650  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) | |
1651 
1652  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o \ u 0 1 4 8 " ) )
1653 
1654  { / / - o H
1655 
1656 
1657 
1658  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1659 
1660  r e t u r n ;
1661 
1662  }
1663 
1664  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u l " ) )
1665 
1666  {
1667 
1668 
1669 
1670  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1671 
1672  r e t u r n ;
1673 
1674  }
1675 
1676  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " y n " ) )
1677 
1678  {
1679 
1680 
1681 
1682  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1683 
1684  r e t u r n ;
1685 
1686  }
1687 
1688  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d k " ) | | / / -
1689 k
1690 
1691  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d n " ) | | / / -
1692 n
1693 
1694  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " d l " ) | |
1695 
1696  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " n k " ) | |
1697 
1698  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " t v " ) | |
1699 
1700  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " t k " ) | |
1701 
1702  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " v k " ) )
1703 
1704  {
1705 
1706 
1707 
1708  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1709 
1710  r e t u r n ;
1711 
1712  }
1713 
1714  } / / l e n > 4
1715 
1716  i f ( l e n > 3 )
1717 
1718  {
1719 
1720  i f ( c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' c ' | |
1721 
1722  c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' \ u 0 1 0 d ' | | / / -
1723 
1724 
1725  c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' k ' | |
1726 
1727  c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' l ' | |
1728 
1729  c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' n ' | |
1730 
1731  c u r r e n t . T o S t r i n g ( ) [ c u r r e n t . L e n g t h - 1 ] = = ' t ' )
1732 
1733  {
1734 
1735 
1736 
1737  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
1738 
1739  r e t u r n ;
1740 
1741  }
1742 
1743  } / / l e n > 3
1744 
1745  } / / r e m o v e D e r i v a t i o n a l
1746 
1747 
1748 
1749  / / / < s u m m a r y >
1750 
1751  / / / R e m o v e a u g m e n t a t i t i v e ( C z e c h s t e m m e r a g r e s s i v e )
1752 
1753  / / / < / s u m m a r y >
1754 
1755  p r o t e c t e d v o i d r e m o v e A u g m e n t a t i v e ( )
1756 
1757  {
1758 
1759  i n t l e n = c u r r e n t . L e n g t h ;
1760 
1761  / /
1762 
1763  i f ( ( l e n > 6 ) & &
1764 
1765  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a j z n " ) )
1766 
1767  {
1768 
1769 
1770 
1771  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ;
1772 
1773  r e t u r n ;
1774 
1775  }
1776 
1777  i f ( ( l e n > 5 ) & &
1778 
1779  ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i z n " ) | |
1780 
1781  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i s k " ) ) )
1782 
1783  {
1784 
1785 
1786 
1787  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1788 
1789  p a l a t a l i s e ( ) ;
1790 
1791  r e t u r n ;
1792 
1793  }
1794 
1795  i f ( ( l e n > 4 ) & &
1796 
1797  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ 0 0 e 1 k " ) )
1798 
1799  { / / - á k
1800 
1801 
1802 
1803  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
1804 
1805  r e t u r n ;
1806 
1807  }
1808 
1809  }
1810 
1811 
1812 
1813  / / / < s u m m a r y >
1814 
1815  / / / R e m o v e d i m i n u t i v e ( C z e c h s t e m m e r a g r e s s i v e )
1816 
1817  / / / < / s u m m a r y >
1818 
1819  p r o t e c t e d v o i d r e m o v e D i m i n u t i v e ( )
1820 
1821  {
1822 
1823  i n t l e n = c u r r e n t . L e n g t h ;
1824 
1825  / /
1826 
1827  i f ( ( l e n > 7 ) & &
1828 
1829  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " o u \ u 0 1 6 1 e k " ) )
1830 
1831  { / / - o u ae k
1832 
1833 
1834 
1835  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ;
1836 
1837  r e t u r n ;
1838 
1839  }
1840 
1841  i f ( l e n > 6 )
1842 
1843  {
1844 
1845  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e \ u 0 1 0 d e k " ) | | / / - e
1846 e k
1847 
1848  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d e k " ) | | / / - é e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i \ u 0 1 0 d e k " ) | | / / - i e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d e k " ) | | / / í e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 n e k " ) | | / / - é n e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d n e k " ) ) { / / - í n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d e k " ) | | / / á e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a \ u 0 1 0 d e k " ) | | / / a e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o \ u 0 1 0 d e k " ) | | / / o e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u \ u 0 1 0 d e k " ) | | / / u e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 n e k " ) ) { / / - á n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } / / l e n > 6 i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e \ u 0 1 0 d k " ) | | / / - e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 0 d k " ) | | / / - i k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) ) { / / - í n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
1849 e k
1850 
1851  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i \ u 0 1 0 d e k " ) | | / / - i
1852 e k
1853 
1854  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d e k " ) | | / / í e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 n e k " ) | | / / - é n e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d n e k " ) ) { / / - í n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d e k " ) | | / / á e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a \ u 0 1 0 d e k " ) | | / / a e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o \ u 0 1 0 d e k " ) | | / / o e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u \ u 0 1 0 d e k " ) | | / / u e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 n e k " ) ) { / / - á n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } / / l e n > 6 i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e \ u 0 1 0 d k " ) | | / / - e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 0 d k " ) | | / / - i k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) ) { / / - í n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
1855 e k
1856 
1857  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " e n e k " ) | |
1858 
1859  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 9 n e k " ) | | / / - é n e k
1860 
1861  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " i n e k " ) | |
1862 
1863  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e d n e k " ) )
1864 
1865  { / / - í n e k
1866 
1867 
1868 
1869  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1870 
1871  p a l a t a l i s e ( ) ;
1872 
1873  r e t u r n ;
1874 
1875  }
1876 
1877  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d e k " ) | | / / á e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a \ u 0 1 0 d e k " ) | | / / a e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o \ u 0 1 0 d e k " ) | | / / o e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u \ u 0 1 0 d e k " ) | | / / u e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u n e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 n e k " ) ) { / / - á n e k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } / / l e n > 6 i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e \ u 0 1 0 d k " ) | | / / - e k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 0 d k " ) | | / / - i k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) ) { / / - í n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
1878 e k
1879 
1880  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a \ u 0 1 0 d e k " ) | | / / a
1881 e k
1882 
1883  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o \ u 0 1 0 d e k " ) | | / / o
1884 e k
1885 
1886  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u \ u 0 1 0 d e k " ) | | / / u
1887 e k
1888 
1889  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a n e k " ) | |
1890 
1891  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " o n e k " ) | |
1892 
1893  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " u n e k " ) | |
1894 
1895  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 0 e 1 n e k " ) )
1896 
1897  { / / - á n e k
1898 
1899 
1900 
1901  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ;
1902 
1903  r e t u r n ;
1904 
1905  }
1906 
1907  } / / l e n > 6
1908 
1909  i f ( l e n > 5 )
1910 
1911  {
1912 
1913  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e \ u 0 1 0 d k " ) | | / / - e
1914 k
1915 
1916  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 \ u 0 1 0 d k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 0 d k " ) | | / / - i k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) ) { / / - í n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
1917 k
1918 
1919  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i \ u 0 1 0 d k " ) | | / / - i
1920 k
1921 
1922  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d \ u 0 1 0 d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) ) { / / - í n k c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
1923 k
1924 
1925  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e n k " ) | | / / - e n k
1926 
1927  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 n k " ) | | / / - é n k
1928 
1929  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i n k " ) | | / / - i n k
1930 
1931  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d n k " ) )
1932 
1933  { / / - í n k
1934 
1935 
1936 
1937  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1938 
1939  p a l a t a l i s e ( ) ;
1940 
1941  r e t u r n ;
1942 
1943  }
1944 
1945  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 \ u 0 1 0 d k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) ) { / / - u ak c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } / / l e n > 5 i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } i f ( ( l e n > 3 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / r e m o v e D i m i n u t i v e s / / / < s u m m a r y > / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 5 ) & & ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) ) { / / - j a c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } p r i v a t e v o i d p a l a t a l i s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / - i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) ) { / / - e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) ) { / / - ~e c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / - t  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / - t i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) ) { / / - t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
1946 k
1947 
1948  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a u 0 1 0 d k " ) | | / / - a
1949 k
1950 
1951  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o \ u 0 1 0 d k " ) | | / / - o
1952 k
1953 
1954  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 0 d k " ) | | / / - u
1955 k
1956 
1957  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a n k " ) | |
1958 
1959  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o n k " ) | |
1960 
1961  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u n k " ) )
1962 
1963  {
1964 
1965 
1966 
1967  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1968 
1969  r e t u r n ;
1970 
1971 
1972 
1973  }
1974 
1975  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 t k " ) | | / / - á t k
1976 
1977  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 n k " ) | | / / - á n k
1978 
1979  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " u \ u 0 1 6 1 k " ) )
1980 
1981  { / / - u ak
1982 
1983 
1984 
1985  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
1986 
1987  r e t u r n ;
1988 
1989  }
1990 
1991  } / / l e n > 5
1992 
1993  i f ( l e n > 4 )
1994 
1995  {
1996 
1997  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e k " ) | |
1998 
1999  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 k " ) | | / / - é k
2000 
2001  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d k " ) | | / / - í k
2002 
2003  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i k " ) )
2004 
2005  {
2006 
2007 
2008 
2009  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2010 
2011  p a l a t a l i s e ( ) ;
2012 
2013  r e t u r n ;
2014 
2015  }
2016 
2017  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 k " ) | | / / - á k
2018 
2019  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a k " ) | |
2020 
2021  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o k " ) | |
2022 
2023  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u k " ) )
2024 
2025  {
2026 
2027 
2028 
2029  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2030 
2031  r e t u r n ;
2032 
2033  }
2034 
2035  }
2036 
2037  i f ( ( l e n > 3 ) & &
2038 
2039  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " k " ) )
2040 
2041  {
2042 
2043 
2044 
2045  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2046 
2047  r e t u r n ;
2048 
2049  }
2050 
2051  } / / r e m o v e D i m i n u t i v e s
2052 
2053 
2054 
2055  / / / < s u m m a r y >
2056 
2057  / / / R e m o v e c o m p a r a t i v e ( C z e c h s t e m m e r a g r e s s i v e )
2058 
2059  / / / < / s u m m a r y >
2060 
2061  p r o t e c t e d v o i d r e m o v e C o m p a r a t i v e ( )
2062 
2063  {
2064 
2065  i n t l e n = c u r r e n t . L e n g t h ;
2066 
2067  / /
2068 
2069  i f ( ( l e n > 5 ) & &
2070 
2071  ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e j \ u 0 1 6 1 " ) | | / / - e j a
2072 
2073  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b j \ u 0 1 6 1 " ) ) )
2074 
2075  { / / - j a
2076 
2077 
2078 
2079  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2080 
2081  p a l a t a l i s e ( ) ;
2082 
2083  r e t u r n ;
2084 
2085  }
2086 
2087  }
2088 
2089 
2090 
2091  p r i v a t e v o i d p a l a t a l i s e ( )
2092 
2093  {
2094 
2095  i n t l e n = c u r r e n t . L e n g t h ;
2096 
2097 
2098 
2099  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c i " ) | |
2100 
2101  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " c e " ) | |
2102 
2103  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d i " ) | | / / -
2104 i
2105 
2106  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 0 d e " ) )
2107 
2108  { / / -
2109 e
2110 
2111 
2112 
2113  c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " k " ) ;
2114 
2115  r e t u r n ;
2116 
2117  }
2118 
2119  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z i " ) | |
2120 
2121  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " z e " ) | |
2122 
2123  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e i " ) | | / / - ~i
2124 
2125  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 7 e e " ) )
2126 
2127  { / / - ~e
2128 
2129 
2130 
2131  c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " h " ) ;
2132 
2133  r e t u r n ;
2134 
2135  }
2136 
2137  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 1 1 b " ) | | / / -
2138 t 
2139 
2140  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t i " ) | | / / -
2141 t i
2142 
2143  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 0 d t \ u 0 0 e d " ) )
2144 
2145  { / / -
2146 t í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) ) { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
2147 
2148 
2149 
2150  c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 3 , l e n , c u r r e n t , " c k " ) ;
2151 
2152  r e t u r n ;
2153 
2154  }
2155 
2156  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 1 1 b " ) | | / / - at 
2157 
2158  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t i " ) | | / / - at i
2159 
2160  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 1 t \ u 0 0 e d " ) )
2161 
2162  { / / - at í c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ; r e t u r n ; } c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } / / p a l a t a l i s e / / / < s u m m a r y > / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( ) { i n t l e n = c u r r e n t . L e n g t h ; i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) ) { / / - ov c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } } } / / r e m o v e P o s s e s s i v e s / / / < s u m m a r y > / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e ) / / / < / s u m m a r y > p r o t e c t e d v o i d r e m o v e C a s e ( ) { i n t l e n = c u r r e n t . L e n g t h ; / / i f ( ( l e n > 7 ) & & c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ; r e t u r n ; } / / l e n > 7 i f ( l e n > 6 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) ) { / / - t e m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) ) { / / - a t om c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ; r e t u r n ; } } i f ( l e n > 5 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) ) { / / - í c h c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
2163 
2164 
2165 
2166  c u r r e n t = S t r i n g B u f f e r R e p l a c e ( l e n - 2 , l e n , c u r r e n t , " s k " ) ;
2167 
2168  r e t u r n ;
2169 
2170  }
2171 
2172  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2173 
2174  r e t u r n ;
2175 
2176  } / / p a l a t a l i s e
2177 
2178 
2179 
2180  / / / < s u m m a r y >
2181 
2182  / / / R e m o v e p o s s e s s i v e s ( C z e c h s t e m m e r a g r e s s i v e )
2183 
2184  / / / < / s u m m a r y >
2185 
2186  p r o t e c t e d v o i d r e m o v e P o s s e s s i v e s ( )
2187 
2188  {
2189 
2190  i n t l e n = c u r r e n t . L e n g t h ;
2191 
2192 
2193 
2194  i f ( l e n > 5 )
2195 
2196  {
2197 
2198  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o v " ) )
2199 
2200  {
2201 
2202  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2203 
2204  r e t u r n ;
2205 
2206  }
2207 
2208  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f v " ) )
2209 
2210  { / / - ov
2211 
2212  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2213 
2214  r e t u r n ;
2215 
2216  }
2217 
2218  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " i n " ) )
2219 
2220  {
2221 
2222  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2223 
2224  p a l a t a l i s e ( ) ;
2225 
2226  r e t u r n ;
2227 
2228  }
2229 
2230  }
2231 
2232  } / / r e m o v e P o s s e s s i v e s
2233 
2234 
2235 
2236  / / / < s u m m a r y >
2237 
2238  / / / R e m o v e c a s e ( C z e c h s t e m m e r a g r e s s i v e )
2239 
2240  / / / < / s u m m a r y >
2241 
2242  p r o t e c t e d v o i d r e m o v e C a s e ( )
2243 
2244  {
2245 
2246  i n t l e n = c u r r e n t . L e n g t h ;
2247 
2248  / /
2249 
2250  i f ( ( l e n > 7 ) & &
2251 
2252  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 5 , 5 ) . E q u a l s ( " a t e c h " ) )
2253 
2254  {
2255 
2256  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 5 , 5 ) ;
2257 
2258  r e t u r n ;
2259 
2260  } / / l e n > 7
2261 
2262  i f ( l e n > 6 )
2263 
2264  {
2265 
2266  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " \ u 0 1 1 b t e m " ) )
2267 
2268  { / / - t e m
2269 
2270 
2271 
2272  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
2273 
2274  p a l a t a l i s e ( ) ;
2275 
2276  r e t u r n ;
2277 
2278  }
2279 
2280  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 4 , 4 ) . E q u a l s ( " a t \ u 0 1 6 f m " ) )
2281 
2282  { / / - a t om
2283 
2284  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 4 , 4 ) ;
2285 
2286  r e t u r n ;
2287 
2288  }
2289 
2290  }
2291 
2292  i f ( l e n > 5 )
2293 
2294  {
2295 
2296  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e c h " ) | |
2297 
2298  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i c h " ) | |
2299 
2300  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d c h " ) )
2301 
2302  { / / - í c h
2303 
2304 
2305 
2306  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2307 
2308  p a l a t a l i s e ( ) ;
2309 
2310  r e t u r n ;
2311 
2312  }
2313 
2314  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 h o " ) | | / / - é h o
2315 
2316  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 1 1 b m i " ) | | / / - m u
2317 
2318  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e m i " ) | |
2319 
2320  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 9 m u " ) | | / / - é m u c u r r e n t . s u b s t r i n g ( l e n - 3 , l e n ) . e q u a l s ( " e t e " ) | |
2321 
2322  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " e t i " ) | |
2323 
2324  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i h o " ) | |
2325 
2326  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d h o " ) | | / / - í h o
2327 
2328  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e d m i " ) | | / / - í m i
2329 
2330  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " i m u " ) )
2331 
2332  {
2333 
2334 
2335 
2336  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2337 
2338  p a l a t a l i s e ( ) ;
2339 
2340  r e t u r n ;
2341 
2342  }
2343 
2344  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 e 1 c h " ) | | / / - á c h
2345 
2346  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t a " ) | |
2347 
2348  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a t y " ) | |
2349 
2350  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d c h " ) | | / / - ý c h
2351 
2352  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m a " ) | |
2353 
2354  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " a m i " ) | |
2355 
2356  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v \ u 0 0 e 9 " ) | | / / - o v é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) ) { / / - ý m i c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ; r e t u r n ; } } i f ( l e n > 4 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) ) { / / - í m c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) ) { c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ; r e t u r n ; } } / / l e n > 4 i f ( l e n > 3 ) { i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) ) { p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
2357 
2358  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " o v i " ) | |
2359 
2360  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 3 , 3 ) . E q u a l s ( " \ u 0 0 f d m i " ) )
2361 
2362  { / / - ý m i
2363 
2364 
2365 
2366  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 3 , 3 ) ;
2367 
2368  r e t u r n ;
2369 
2370  }
2371 
2372  }
2373 
2374  i f ( l e n > 4 )
2375 
2376  {
2377 
2378  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e m " ) )
2379 
2380  {
2381 
2382 
2383 
2384  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2385 
2386  p a l a t a l i s e ( ) ;
2387 
2388  r e t u r n ;
2389 
2390 
2391 
2392  }
2393 
2394  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " e s " ) | |
2395 
2396  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 9 m " ) | | / / - é m
2397 
2398  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e d m " ) )
2399 
2400  { / / - í m
2401 
2402 
2403 
2404  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2405 
2406  p a l a t a l i s e ( ) ;
2407 
2408  r e t u r n ;
2409 
2410  }
2411 
2412  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 1 6 f m " ) )
2413 
2414  {
2415 
2416 
2417 
2418  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2419 
2420  r e t u r n ;
2421 
2422  }
2423 
2424  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " a t " ) | |
2425 
2426  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 e 1 m " ) | | / / - á m
2427 
2428  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o s " ) | |
2429 
2430  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " u s " ) | |
2431 
2432  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " \ u 0 0 f d m " ) | | / / - ý m
2433 
2434  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " m i " ) | |
2435 
2436  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 2 , 2 ) . E q u a l s ( " o u " ) )
2437 
2438  {
2439 
2440 
2441 
2442  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 2 , 2 ) ;
2443 
2444  r e t u r n ;
2445 
2446  }
2447 
2448  } / / l e n > 4
2449 
2450  i f ( l e n > 3 )
2451 
2452  {
2453 
2454  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " e " ) | |
2455 
2456  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " i " ) )
2457 
2458  {
2459 
2460 
2461 
2462  p a l a t a l i s e ( ) ;
2463 
2464  r e t u r n ;
2465 
2466  }
2467 
2468  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e d " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) ) { / / -  p a l a t a l i s e ( ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) ) { / / - o c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | | c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
2469 
2470  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 1 b " ) )
2471 
2472  { / / - 
2473 
2474 
2475 
2476  p a l a t a l i s e ( ) ;
2477 
2478  r e t u r n ;
2479 
2480  }
2481 
2482  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " u " ) | |
2483 
2484  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " y " ) | |
2485 
2486  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 1 6 f " ) )
2487 
2488  { / / - o
2489 
2490 
2491 
2492  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2493 
2494  r e t u r n ;
2495 
2496  }
2497 
2498  i f ( c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " a " ) | |
2499 
2500  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " o " ) | |
2501 
2502  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 1 " ) | | / / - á c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
2503 
2504  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 e 9 " ) | | / / - é c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) ) { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
2505 
2506  c u r r e n t . T o S t r i n g ( ) . S u b s t r i n g ( l e n - 1 , 1 ) . E q u a l s ( " \ u 0 0 f d " ) )
2507 
2508  { / / - ý c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ; r e t u r n ; } } / / l e n > 3 } } }
2509 
2510 
2511 
2512  c u r r e n t = c u r r e n t . R e m o v e ( l e n - 1 , 1 ) ;
2513 
2514  r e t u r n ;
2515 
2516  }
2517 
2518  } / / l e n > 3
2519 
2520  }
2521 
2522  }
2523 
2524 
2525 
2526  }
2527 
2528