function spellState($keyWord)
{
    $spellStateString = "";
    $numFound = "";
    $origFreq = "";
    $flagnumFound = 0;
    $flagorigFreq = 0;
    $suggestionsFlag = 0;
    $string = "";
    $initialcheck = "";
    $initialcheck = spellStateNext($keyWord);
    if ($initialcheck == "true") {
        $spellStateString = "correct";
        return $spellStateString;
    }
    $url = SolrServer::getSpellCheckStateUrl() . "?q=" . urlencode($keyWord) . "&wt=json";
    //echo $url;
    $content = file_get_contents($url);
    if ($content) {
        $jsonIterator = new RecursiveIteratorIterator(new RecursiveArrayIterator(json_decode($content, TRUE)), RecursiveIteratorIterator::SELF_FIRST);
        foreach ($jsonIterator as $key => $val) {
            if (strcmp($key, "suggestions") == 0) {
                $suggestionsFlag = 1;
            }
            if ($suggestionsFlag == 1) {
                if (strcmp($key, "numFound") == 0) {
                    $numFound = $val;
                    $flagnumFound = 1;
                }
                if (strcmp($key, "origFreq") == 0) {
                    $origFreq = $val;
                    $flagorigFreq = 1;
                }
                if ($origFreq == 0 && $numFound == 0 && $flagnumFound == 1 && $flagorigFreq == 1) {
                    $spellStateString = "refine";
                    break;
                }
                if ($origFreq > 0) {
                    $spellStateString = "correct";
                    break;
                }
                if ($numFound > 0) {
                    if (strcmp($key, "word") == 0) {
                        $spellStateString = $val;
                        break;
                    }
                }
            }
        }
    }
    if ($suggestionsFlag == 0) {
        $spellStateString = "refine";
    }
    if ($flagnumFound == 0 && $flagorigFreq == 0) {
        $spellStateString = "refine";
    }
    if ($spellStateString == "refine") {
        $string = spellStateNext($keyWord);
        if ($string == "true") {
            $spellStateString = "correct";
        }
    }
    return $spellStateString;
}