use java LinkedHashMap (why order is not stable?)
spellchecker: dictionary extended