extensive language checking work