tern for JS intelligence