add language data, fixes some bugs