// File: ivanzamanov[P]kmeans/src/common/stem.cpp
// Function: step2()
static void step2() { switch (b[k-1])
{
    case 'a': if (ends("\07" "ational")) { r("\03" "ate"); break; }
              if (ends("\06" "tional")) { r("\04" "tion"); break; }
              break;
    case 'c': if (ends("\04" "enci")) { r("\04" "ence"); break; }
              if (ends("\04" "anci")) { r("\04" "ance"); break; }
              break;
    case 'e': if (ends("\04" "izer")) { r("\03" "ize"); break; }
              break;
    case 'l': if (ends("\03" "bli")) { r("\03" "ble"); break; } /*-DEPARTURE-*/

 /* To match the published algorithm, replace this line with
    case 'l': if (ends("\04" "abli")) { r("\04" "able"); break; } */

              if (ends("\04" "alli")) { r("\02" "al"); break; }
              if (ends("\05" "entli")) { r("\03" "ent"); break; }
              if (ends("\03" "eli")) { r("\01" "e"); break; }
              if (ends("\05" "ousli")) { r("\03" "ous"); break; }
              break;
    case 'o': if (ends("\07" "ization")) { r("\03" "ize"); break; }
              if (ends("\05" "ation")) { r("\03" "ate"); break; }
              if (ends("\04" "ator")) { r("\03" "ate"); break; }
              break;
    case 's': if (ends("\05" "alism")) { r("\02" "al"); break; }
              if (ends("\07" "iveness")) { r("\03" "ive"); break; }
              if (ends("\07" "fulness")) { r("\03" "ful"); break; }
              if (ends("\07" "ousness")) { r("\03" "ous"); break; }
              break;
    case 't': if (ends("\05" "aliti")) { r("\02" "al"); break; }
              if (ends("\05" "iviti")) { r("\03" "ive"); break; }
              if (ends("\06" "biliti")) { r("\03" "ble"); break; }
              break;
    case 'g': if (ends("\04" "logi")) { r("\03" "log"); break; } /*-DEPARTURE-*/

 /* To match the published algorithm, delete this line */

} }

// Assembly:
pushq %rax
movq 0x3928(%rip), %rax      # 0x5080
movl 0x392a(%rip), %ecx      # 0x5088
decl %ecx
movslq %ecx, %rcx
movsbl (%rax,%rcx), %eax
addl $-0x61, %eax
movl %eax, %ecx
movq %rcx, (%rsp)
subl $0x13, %eax
ja 0x1a6d
movq (%rsp), %rax
leaq 0x18b4(%rip), %rcx      # 0x3038
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x19d7(%rip), %rdi      # 0x316b
callq 0x1ea0
cmpl $0x0, %eax
je 0x17af
leaq 0x19a9(%rip), %rdi      # 0x314e
callq 0x22e0
jmp 0x1a6d
leaq 0x19be(%rip), %rdi      # 0x3174
callq 0x1ea0
cmpl $0x0, %eax
je 0x17d1
leaq 0x19b5(%rip), %rdi      # 0x317c
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
leaq 0x19a5(%rip), %rdi      # 0x3182
callq 0x1ea0
cmpl $0x0, %eax
je 0x17f8
leaq 0x199a(%rip), %rdi      # 0x3188
callq 0x22e0
jmp 0x1a6d
leaq 0x198f(%rip), %rdi      # 0x318e
callq 0x1ea0
cmpl $0x0, %eax
je 0x181a
leaq 0x1984(%rip), %rdi      # 0x3194
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
leaq 0x1974(%rip), %rdi      # 0x319a
callq 0x1ea0
cmpl $0x0, %eax
je 0x1841
leaq 0x1929(%rip), %rdi      # 0x3160
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
leaq 0x1953(%rip), %rdi      # 0x31a0
callq 0x1ea0
cmpl $0x0, %eax
je 0x1868
leaq 0x18f9(%rip), %rdi      # 0x3157
callq 0x22e0
jmp 0x1a6d
leaq 0x1936(%rip), %rdi      # 0x31a5
callq 0x1ea0
cmpl $0x0, %eax
je 0x188a
leaq 0x192b(%rip), %rdi      # 0x31ab
callq 0x22e0
jmp 0x1a6d
leaq 0x191e(%rip), %rdi      # 0x31af
callq 0x1ea0
cmpl $0x0, %eax
je 0x18ac
leaq 0x1914(%rip), %rdi      # 0x31b6
callq 0x22e0
jmp 0x1a6d
leaq 0x1908(%rip), %rdi      # 0x31bb
callq 0x1ea0
cmpl $0x0, %eax
je 0x18ce
leaq 0x18a1(%rip), %rdi      # 0x3165
callq 0x22e0
jmp 0x1a6d
leaq 0x18eb(%rip), %rdi      # 0x31c0
callq 0x1ea0
cmpl $0x0, %eax
je 0x18f0
leaq 0x18e1(%rip), %rdi      # 0x31c7
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
leaq 0x18d0(%rip), %rdi      # 0x31cc
callq 0x1ea0
cmpl $0x0, %eax
je 0x1917
leaq 0x1853(%rip), %rdi      # 0x3160
callq 0x22e0
jmp 0x1a6d
leaq 0x18b7(%rip), %rdi      # 0x31d5
callq 0x1ea0
cmpl $0x0, %eax
je 0x1939
leaq 0x181f(%rip), %rdi      # 0x314e
callq 0x22e0
jmp 0x1a6d
leaq 0x189c(%rip), %rdi      # 0x31dc
callq 0x1ea0
cmpl $0x0, %eax
je 0x195b
leaq 0x17fd(%rip), %rdi      # 0x314e
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
leaq 0x187b(%rip), %rdi      # 0x31e2
callq 0x1ea0
cmpl $0x0, %eax
je 0x1982
leaq 0x1833(%rip), %rdi      # 0x31ab
callq 0x22e0
jmp 0x1a6d
leaq 0x1860(%rip), %rdi      # 0x31e9
callq 0x1ea0
cmpl $0x0, %eax
je 0x19a4
leaq 0x1858(%rip), %rdi      # 0x31f2
callq 0x22e0
jmp 0x1a6d
leaq 0x184c(%rip), %rdi      # 0x31f7
callq 0x1ea0
cmpl $0x0, %eax
je 0x19c6
leaq 0x1844(%rip), %rdi      # 0x3200
callq 0x22e0
jmp 0x1a6d
leaq 0x1838(%rip), %rdi      # 0x3205
callq 0x1ea0
cmpl $0x0, %eax
je 0x19e8
leaq 0x17e9(%rip), %rdi      # 0x31c7
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
leaq 0x181a(%rip), %rdi      # 0x320e
callq 0x1ea0
cmpl $0x0, %eax
je 0x1a0c
leaq 0x17a6(%rip), %rdi      # 0x31ab
callq 0x22e0
jmp 0x1a6d
leaq 0x1802(%rip), %rdi      # 0x3215
callq 0x1ea0
cmpl $0x0, %eax
je 0x1a2b
leaq 0x17ce(%rip), %rdi      # 0x31f2
callq 0x22e0
jmp 0x1a6d
leaq 0x17ea(%rip), %rdi      # 0x321c
callq 0x1ea0
cmpl $0x0, %eax
je 0x1a4a
leaq 0x1714(%rip), %rdi      # 0x3157
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
leaq 0x17d1(%rip), %rdi      # 0x3224
callq 0x1ea0
cmpl $0x0, %eax
je 0x1a6b
leaq 0x17c6(%rip), %rdi      # 0x322a
callq 0x22e0
jmp 0x1a6d
jmp 0x1a6d
popq %rax
retq
nop