       choice(
         seq(@expression_list, "="),
         seq(@identifier_list, ":=")),
-      "range",
+      keyword("range"),
       @expression)
 
-    defer_stmt: -> seq("defer", @expression)
+    defer_stmt: -> seq(keyword("defer"), @expression)

      @primary_expr,
      ".",
      "(",
      "type",
      ")")
    type_case_clause: -> seq(@type_switch_case, ":", @statement_list)
    type_switch_case: -> choice(seq("case", @type_list), "default")

    select_stmt: -> seq(
      "select",
      "{",
      @comm_clause,
      "}")
    comm_clause: -> seq(@comm_case, ":", @statement_list)
    comm_case: -> choice(seq("case", choice(@send_stmt, @recv_stmt)), "default")
    recv_stmt: -> seq(
      optional(choice(
        seq(@expression_list, "="),

      repeat(seq(@import_decl, terminator())),
      repeat(seq(@top_level_decl, terminator())))

    package_clause: -> seq(keyword("package"), @package_name)
    package_name: -> @_identifier

    import_decl: -> seq(keyword("import"), choice(@import_spec, seq("(", repeat(seq(@import_spec, terminator())), ")")))
    import_spec: -> seq(optional(choice(".", @package_name)), @import_path)
    import_path: -> @_string_lit

