       (fstar-find-subtype-annotation
        ("{\\(\\(?:.\\|\n\\)+\\)}"
         (fstar-group-pre-matcher 2 5) nil
-        (1 'fstar-subtype-face append))
-       ;; ("\\({\\)\\(\\(?:.\\|\n\\)+\\)\\(}\\)"
-       ;; (fstar-group-pre-matcher 2 5) nil
-       ;; (1 'font-lock-type-face append)
-       ;; (2 'fstar-subtype-face append)
-       ;; (3 'font-lock-type-face append))
-       )
+        (1 'fstar-subtype-face append)))
       ("{:" (,(concat "\\({\\)\\(:" id "\\)\\(\\(?: +.+\\)?\\)\\(}\\)")
              (fstar-group-pre-matcher 2 2) nil
              (2 'font-lock-function-name-face append)

       (fstar-find-id (fstar-subexpr-pre-matcher 2) nil
                      (1 'font-lock-variable-name-face)))
      (fstar-find-id-with-type
       (1 'font-lock-variable-name-face)
       ;; (,id (fstar-id-with-type-pre-matcher) nil (0 'font-lock-type-face))
       )
      (,(concat "\\_<\\(type\\|kind\\)\\( +" id "\\)\\s-*$")
       (1 'fstar-structure-face)
       (2 'font-lock-function-name-face))

                "kind" "type" "logic"
                "private" "opaque" "total" "default"
                "open" "module")
              'symbols))

(defconst fstar-syntax-preprocessor
  (regexp-opt '("#set-options")
              'symbols))

(defconst fstar-syntax-keywords
