@Test public void testDoSlangCheck() { fail("Not yet implemented"); }
public int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString){ String inputString = stringBuilder.toString(); if (StableMaps.CiFour.containsKey(inputString)){ output.add(inputString); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); return countInputStringLength; } String preRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)+ inputString.charAt(StableData.INT_ONE); String inRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ONE)+ inputString.charAt(StableData.INT_TWO); String postRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_TWO)+ inputString.charAt(StableData.INT_THREE); if(StableMaps.dongCi.containsKey(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_THREE) + prefixWord[StableData.INT_ONE].charAt(StableData.INT_ZERO))) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if (StableMaps.CiTwo.containsKey(preRegister)){ if (StableMaps.CiTwo.containsKey(postRegister)){ String string= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO); if(StableMaps.xingWeiCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) &&StableMaps.shiTaiCi.containsKey(string)) { output.add(string); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(string); return countInputStringLength- StableData.INT_THREE; } if(StableMaps.zhuCi.containsKey(string)){ String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); countInputStringLength= posUtils.chuLiZhuCiOfThree(wordsForest, output, countInputStringLength-StableData.INT_ONE, strings, prefixWord); return countInputStringLength; } output.add(preRegister); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister); return countInputStringLength-StableData.INT_TWO; } } if(StableMaps.CiThree.containsKey(preRegister+ inputString.charAt(StableData.INT_TWO))&& !StableMaps.CiTwo.containsKey(postRegister)) { prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister+ inputString.charAt(StableData.INT_TWO)); output.add(preRegister+ inputString.charAt(StableData.INT_TWO)); return countInputStringLength- StableData.INT_ONE ; } if(StableMaps.CiTwo.containsKey(preRegister)&& StableMaps.CiTwo.containsKey(inRegister)) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if(StableMaps.CiTwo.containsKey(preRegister)) { countInputStringLength= doSlangPartAndPOSCheckForTwoChar(countInputStringLength- StableData.INT_TWO, output , stringBuilder.delete(StableData.INT_TWO, StableData.INT_FOUR), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } output.add(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); return countInputStringLength= StableData.INT_ONE; }
NLPControllerImp implements NLPController { public int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString){ String inputString = stringBuilder.toString(); if (StableMaps.CiFour.containsKey(inputString)){ output.add(inputString); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); return countInputStringLength; } String preRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)+ inputString.charAt(StableData.INT_ONE); String inRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ONE)+ inputString.charAt(StableData.INT_TWO); String postRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_TWO)+ inputString.charAt(StableData.INT_THREE); if(StableMaps.dongCi.containsKey(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_THREE) + prefixWord[StableData.INT_ONE].charAt(StableData.INT_ZERO))) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if (StableMaps.CiTwo.containsKey(preRegister)){ if (StableMaps.CiTwo.containsKey(postRegister)){ String string= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO); if(StableMaps.xingWeiCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) &&StableMaps.shiTaiCi.containsKey(string)) { output.add(string); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(string); return countInputStringLength- StableData.INT_THREE; } if(StableMaps.zhuCi.containsKey(string)){ String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); countInputStringLength= posUtils.chuLiZhuCiOfThree(wordsForest, output, countInputStringLength-StableData.INT_ONE, strings, prefixWord); return countInputStringLength; } output.add(preRegister); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister); return countInputStringLength-StableData.INT_TWO; } } if(StableMaps.CiThree.containsKey(preRegister+ inputString.charAt(StableData.INT_TWO))&& !StableMaps.CiTwo.containsKey(postRegister)) { prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister+ inputString.charAt(StableData.INT_TWO)); output.add(preRegister+ inputString.charAt(StableData.INT_TWO)); return countInputStringLength- StableData.INT_ONE ; } if(StableMaps.CiTwo.containsKey(preRegister)&& StableMaps.CiTwo.containsKey(inRegister)) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if(StableMaps.CiTwo.containsKey(preRegister)) { countInputStringLength= doSlangPartAndPOSCheckForTwoChar(countInputStringLength- StableData.INT_TWO, output , stringBuilder.delete(StableData.INT_TWO, StableData.INT_FOUR), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } output.add(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); return countInputStringLength= StableData.INT_ONE; } }
NLPControllerImp implements NLPController { public int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString){ String inputString = stringBuilder.toString(); if (StableMaps.CiFour.containsKey(inputString)){ output.add(inputString); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); return countInputStringLength; } String preRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)+ inputString.charAt(StableData.INT_ONE); String inRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ONE)+ inputString.charAt(StableData.INT_TWO); String postRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_TWO)+ inputString.charAt(StableData.INT_THREE); if(StableMaps.dongCi.containsKey(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_THREE) + prefixWord[StableData.INT_ONE].charAt(StableData.INT_ZERO))) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if (StableMaps.CiTwo.containsKey(preRegister)){ if (StableMaps.CiTwo.containsKey(postRegister)){ String string= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO); if(StableMaps.xingWeiCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) &&StableMaps.shiTaiCi.containsKey(string)) { output.add(string); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(string); return countInputStringLength- StableData.INT_THREE; } if(StableMaps.zhuCi.containsKey(string)){ String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); countInputStringLength= posUtils.chuLiZhuCiOfThree(wordsForest, output, countInputStringLength-StableData.INT_ONE, strings, prefixWord); return countInputStringLength; } output.add(preRegister); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister); return countInputStringLength-StableData.INT_TWO; } } if(StableMaps.CiThree.containsKey(preRegister+ inputString.charAt(StableData.INT_TWO))&& !StableMaps.CiTwo.containsKey(postRegister)) { prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister+ inputString.charAt(StableData.INT_TWO)); output.add(preRegister+ inputString.charAt(StableData.INT_TWO)); return countInputStringLength- StableData.INT_ONE ; } if(StableMaps.CiTwo.containsKey(preRegister)&& StableMaps.CiTwo.containsKey(inRegister)) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if(StableMaps.CiTwo.containsKey(preRegister)) { countInputStringLength= doSlangPartAndPOSCheckForTwoChar(countInputStringLength- StableData.INT_TWO, output , stringBuilder.delete(StableData.INT_TWO, StableData.INT_FOUR), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } output.add(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); return countInputStringLength= StableData.INT_ONE; }  }
NLPControllerImp implements NLPController { public int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString){ String inputString = stringBuilder.toString(); if (StableMaps.CiFour.containsKey(inputString)){ output.add(inputString); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); return countInputStringLength; } String preRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)+ inputString.charAt(StableData.INT_ONE); String inRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ONE)+ inputString.charAt(StableData.INT_TWO); String postRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_TWO)+ inputString.charAt(StableData.INT_THREE); if(StableMaps.dongCi.containsKey(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_THREE) + prefixWord[StableData.INT_ONE].charAt(StableData.INT_ZERO))) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if (StableMaps.CiTwo.containsKey(preRegister)){ if (StableMaps.CiTwo.containsKey(postRegister)){ String string= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO); if(StableMaps.xingWeiCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) &&StableMaps.shiTaiCi.containsKey(string)) { output.add(string); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(string); return countInputStringLength- StableData.INT_THREE; } if(StableMaps.zhuCi.containsKey(string)){ String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); countInputStringLength= posUtils.chuLiZhuCiOfThree(wordsForest, output, countInputStringLength-StableData.INT_ONE, strings, prefixWord); return countInputStringLength; } output.add(preRegister); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister); return countInputStringLength-StableData.INT_TWO; } } if(StableMaps.CiThree.containsKey(preRegister+ inputString.charAt(StableData.INT_TWO))&& !StableMaps.CiTwo.containsKey(postRegister)) { prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister+ inputString.charAt(StableData.INT_TWO)); output.add(preRegister+ inputString.charAt(StableData.INT_TWO)); return countInputStringLength- StableData.INT_ONE ; } if(StableMaps.CiTwo.containsKey(preRegister)&& StableMaps.CiTwo.containsKey(inRegister)) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if(StableMaps.CiTwo.containsKey(preRegister)) { countInputStringLength= doSlangPartAndPOSCheckForTwoChar(countInputStringLength- StableData.INT_TWO, output , stringBuilder.delete(StableData.INT_TWO, StableData.INT_FOUR), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } output.add(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); return countInputStringLength= StableData.INT_ONE; }  int doSlangPartAndPOSCheckForTwoChar(int countInputStringLength, List<String> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder,
			Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangCheckForMap(int countInputStringLength, List<String> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangPartAndPOSCheckForTwoCharForMap(int countInputStringLength, Map<String, WordFrequency> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils); int doPOSAndEMMCheckOfThreeForMap(int countInputLength, Map<String, WordFrequency> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils); int doSlangCheckForMap(int countInputStringLength, Map<String, WordFrequency> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils); }
NLPControllerImp implements NLPController { public int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString){ String inputString = stringBuilder.toString(); if (StableMaps.CiFour.containsKey(inputString)){ output.add(inputString); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); return countInputStringLength; } String preRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)+ inputString.charAt(StableData.INT_ONE); String inRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ONE)+ inputString.charAt(StableData.INT_TWO); String postRegister= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_TWO)+ inputString.charAt(StableData.INT_THREE); if(StableMaps.dongCi.containsKey(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_THREE) + prefixWord[StableData.INT_ONE].charAt(StableData.INT_ZERO))) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if (StableMaps.CiTwo.containsKey(preRegister)){ if (StableMaps.CiTwo.containsKey(postRegister)){ String string= StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO); if(StableMaps.xingWeiCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) &&StableMaps.shiTaiCi.containsKey(string)) { output.add(string); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(string); return countInputStringLength- StableData.INT_THREE; } if(StableMaps.zhuCi.containsKey(string)){ String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); countInputStringLength= posUtils.chuLiZhuCiOfThree(wordsForest, output, countInputStringLength-StableData.INT_ONE, strings, prefixWord); return countInputStringLength; } output.add(preRegister); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister); return countInputStringLength-StableData.INT_TWO; } } if(StableMaps.CiThree.containsKey(preRegister+ inputString.charAt(StableData.INT_TWO))&& !StableMaps.CiTwo.containsKey(postRegister)) { prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(preRegister+ inputString.charAt(StableData.INT_TWO)); output.add(preRegister+ inputString.charAt(StableData.INT_TWO)); return countInputStringLength- StableData.INT_ONE ; } if(StableMaps.CiTwo.containsKey(preRegister)&& StableMaps.CiTwo.containsKey(inRegister)) { countInputStringLength= doPOSAndEMMCheckOfThree(--countInputStringLength, output, wordsForest , stringBuilder.delete(StableData.INT_THREE, StableData.INT_FOUR), prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } if(StableMaps.CiTwo.containsKey(preRegister)) { countInputStringLength= doSlangPartAndPOSCheckForTwoChar(countInputStringLength- StableData.INT_TWO, output , stringBuilder.delete(StableData.INT_TWO, StableData.INT_FOUR), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputStringLength; } output.add(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(StableData.EMPTY_STRING+ inputString.charAt(StableData.INT_ZERO)); return countInputStringLength= StableData.INT_ONE; }  int doSlangPartAndPOSCheckForTwoChar(int countInputStringLength, List<String> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder,
			Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangCheckForMap(int countInputStringLength, List<String> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangPartAndPOSCheckForTwoCharForMap(int countInputStringLength, Map<String, WordFrequency> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils); int doPOSAndEMMCheckOfThreeForMap(int countInputLength, Map<String, WordFrequency> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils); int doSlangCheckForMap(int countInputStringLength, Map<String, WordFrequency> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils);  }