diff --git a/Lib/HTMLParser.py b/Lib/HTMLParser.py
index f0e520c..9979195 100644
--- a/Lib/HTMLParser.py
+++ b/Lib/HTMLParser.py
@@ -8,7 +8,7 @@
 # and CDATA (character data -- only end tags are special).
 
 
-import markupbase
+import _markupbase
 import re
 
 # Regular expressions used for parsing
@@ -64,7 +64,7 @@
         return result
 
 
-class HTMLParser(markupbase.ParserBase):
+class HTMLParser(_markupbase.ParserBase):
     """Find tags and other markup and call handler functions.
 
     Usage:
@@ -96,7 +96,7 @@
         self.rawdata = ''
         self.lasttag = '???'
         self.interesting = interesting_normal
-        markupbase.ParserBase.reset(self)
+        _markupbase.ParserBase.reset(self)
 
     def feed(self, data):
         """Feed data to the parser.
diff --git a/Lib/markupbase.py b/Lib/_markupbase.py
similarity index 99%
rename from Lib/markupbase.py
rename to Lib/_markupbase.py
index 24808d1..b178470 100644
--- a/Lib/markupbase.py
+++ b/Lib/_markupbase.py
@@ -28,7 +28,7 @@
     def __init__(self):
         if self.__class__ is ParserBase:
             raise RuntimeError(
-                "markupbase.ParserBase must be subclassed")
+                "_markupbase.ParserBase must be subclassed")
 
     def error(self, message):
         raise NotImplementedError(
diff --git a/Lib/sgmllib.py b/Lib/sgmllib.py
index ce5807b..7eca9de 100644
--- a/Lib/sgmllib.py
+++ b/Lib/sgmllib.py
@@ -9,7 +9,7 @@
 # not supported at all.
 
 
-import markupbase
+import _markupbase
 import re
 
 __all__ = ["SGMLParser", "SGMLParseError"]
@@ -52,7 +52,7 @@
 # chunks).  Entity references are passed by calling
 # self.handle_entityref() with the entity reference as argument.
 
-class SGMLParser(markupbase.ParserBase):
+class SGMLParser(_markupbase.ParserBase):
     # Definition of entities -- derived classes may override
     entity_or_charref = re.compile('&(?:'
       '([a-zA-Z][-.a-zA-Z0-9]*)|#([0-9]+)'
@@ -71,7 +71,7 @@
         self.lasttag = '???'
         self.nomoretags = 0
         self.literal = 0
-        markupbase.ParserBase.reset(self)
+        _markupbase.ParserBase.reset(self)
 
     def setnomoretags(self):
         """Enter literal mode (CDATA) till EOF.
