make LSP work, but not robust