patch 8.2.4733: HEEx and Surface do need a separate filetype

Problem:    HEEx and Surface do need a separate filetype.
Solution:   Revert 8.2.4729. (closes #10147)
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 9816c04..62afb37 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -416,9 +416,9 @@
 " Elixir or Euphoria
 au BufNewFile,BufRead *.ex call dist#ft#ExCheck()
 
-" Elixir, also used for HEEx and Surface
+" Elixir
 au BufRead,BufNewFile mix.lock,*.exs setf elixir
-au BufRead,BufNewFile *.eex,*.heex,*.leex,*.sface setf eelixir
+au BufRead,BufNewFile *.eex,*.leex setf eelixir
 
 " Elvish
 au BufRead,BufNewFile *.elv setf elvish
@@ -797,6 +797,9 @@
 " Hercules
 au BufNewFile,BufRead *.vc,*.ev,*.sum,*.errsum	setf hercules
 
+" HEEx
+au BufRead,BufNewFile *.heex			setf heex
+
 " HEX (Intel)
 au BufNewFile,BufRead *.hex,*.h32		setf hex
 
@@ -1902,6 +1905,9 @@
 " SVG (Scalable Vector Graphics)
 au BufNewFile,BufRead *.svg			setf svg
 
+" Surface
+au BufRead,BufNewFile *.sface			setf surface
+
 " Tads (or Nroff or Perl test file)
 au BufNewFile,BufRead *.t
 	\ if !dist#ft#FTnroff() && !dist#ft#FTperl() | setf tads | endif
diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim
index b1b912e..a609de7 100644
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -166,7 +166,7 @@
     \ 'edif': ['file.edf', 'file.edif', 'file.edo'],
     \ 'elinks': ['elinks.conf'],
     \ 'elixir': ['file.ex', 'file.exs', 'mix.lock'],
-    \ 'eelixir': ['file.eex', 'file.heex', 'file.leex', 'file.sface'],
+    \ 'eelixir': ['file.eex', 'file.leex'],
     \ 'elm': ['file.elm'],
     \ 'elmfilt': ['filter-rules'],
     \ 'elvish': ['file.elv'],
@@ -237,6 +237,7 @@
     \ 'hb': ['file.hb'],
     \ 'hcl': ['file.hcl'],
     \ 'hercules': ['file.vc', 'file.ev', 'file.sum', 'file.errsum'],
+    \ 'heex': ['file.heex'],
     \ 'hex': ['file.hex', 'file.h32'],
     \ 'hgcommit': ['hg-editor-file.txt'],
     \ 'hjson': ['file.hjson'],
@@ -516,6 +517,7 @@
     \ 'stata': ['file.ado', 'file.do', 'file.imata', 'file.mata'],
     \ 'stp': ['file.stp'],
     \ 'sudoers': ['any/etc/sudoers', 'sudoers.tmp', '/etc/sudoers', 'any/etc/sudoers.d/file'],
+    \ 'surface': ['file.sface'],
     \ 'svg': ['file.svg'],
     \ 'svn': ['svn-commitfile.tmp', 'svn-commit-file.tmp', 'svn-commit.tmp'],
     \ 'swift': ['file.swift'],
@@ -929,6 +931,7 @@
   call assert_equal('dat', &filetype)
   bwipe!
   call delete('datfile.DAT')
+  unlet g:filetype_dat
 
   filetype off
 endfunc
@@ -1523,6 +1526,7 @@
   call assert_equal('src', &filetype)
   bwipe!
   call delete('srcfile.SRC')
+  unlet g:filetype_src
 
   filetype off
 endfunc
diff --git a/src/version.c b/src/version.c
index 95486ba..cf575d1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4733,
+/**/
     4732,
 /**/
     4731,