 return KY)
  <|> (string "桂" >> return KE)
  <|> (string "銀" >> return GI)
  <|> (string "金" >> return KI)
  <|> (string "角" >> return KA)
  <|> (string "飛" >> return HI)
  <|> (string "玉" >> return OU)
  <|> (string "王" >> return OU)
  <|> (string "と" >> return TO)
  <|> (string "杏" >> return NY)
  <|> (string "圭" >> return NK)
  <|> (string "全" >> return NG)
  <|> (string "竜" >> return RY)
  <|> (string "龍" >> return RY)

kanjiKoma =
      (string "歩" >> return FU)
  <|> (string "香" >> return KY)
  <|> (string "桂" >> return KE)
  <|> (string "銀" >> return GI)
  <|> (string "金" >> return KI)
  <|> (string "角" >> return KA)
  <|> (string "飛" >> return HI)
  <|> (string "玉" >> return OU)
  <|> (string "王" >> return OU)
  <|> (string "と" >> return TO)
  <|> (string "杏" >> return NY)
  <|> (string "圭" >> return NK)
  <|> (string "全" >> return NG)
  <|> (string "竜" >> return RY)
  <|> (string "龍" >> return RY)
kanjiKoma =
      (string "歩" >> return FU)
  <|> (string "香" >> return KY)
  <|> (string "桂" >> return KE)
  <|> (string "銀" >> return GI)
  <|> (string "金" >> return KI)
  <|> (string "角" >> return KA)
  <|> (string "飛" >> return HI)
  <|> (string "玉" >> return OU)
  <|> (string "王" >> return OU)
  <|> (string "と" >> return TO)
  <|> (string "杏" >> return NY)
  <|> (string "圭" >> return NK)
  <|> (string "全" >> return NG)
  <|> (string "竜" >> return RY)
  <|> (string "龍" >> return RY)