move to src directory
diff --git a/MANIFEST.in b/MANIFEST.in
index 7e6029d..e4855b7 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,3 +1,3 @@
 include AUTHORS.rst CHANGES.rst LICENSE.rst tox.ini
-recursive-include markupsafe *.c
+recursive-include src/markupsafe *.c
 graft tests
diff --git a/setup.cfg b/setup.cfg
index 3c5e533..1021eaf 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -17,6 +17,6 @@
 
 [coverage:paths]
 source =
-    markupsafe
+    src/markupsafe
     .tox/*/lib/python*/site-packages/markupsafe
     .tox/pypy/site-packages/markupsafe
diff --git a/setup.py b/setup.py
index cbc8905..0839504 100644
--- a/setup.py
+++ b/setup.py
@@ -11,20 +11,20 @@
     DistutilsPlatformError
 )
 
-from setuptools import Extension, setup
+from setuptools import Extension, setup, find_packages
 from setuptools.command.build_ext import build_ext
 
 with io.open('README.rst', 'rt', encoding='utf8') as f:
     readme = f.read()
 
-with io.open('markupsafe/__init__.py', 'rt', encoding='utf8') as f:
+with io.open('src/markupsafe/__init__.py', 'rt', encoding='utf8') as f:
     version = re.search(r'__version__ = \'(.*?)\'', f.read()).group(1)
 
 is_jython = 'java' in sys.platform
 is_pypy = hasattr(sys, 'pypy_version_info')
 
 ext_modules = [
-    Extension('markupsafe._speedups', ['markupsafe/_speedups.c']),
+    Extension('markupsafe._speedups', ['src/markupsafe/_speedups.c']),
 ]
 
 
@@ -100,7 +100,8 @@
                 'pallets-sphinx-themes',
             ],
         },
-        packages=['markupsafe'],
+        packages=find_packages("src"),
+        package_dir={"": "src"},
         include_package_data=True,
         zip_safe=False,
         cmdclass={'build_ext': ve_build_ext},
diff --git a/markupsafe/__init__.py b/src/markupsafe/__init__.py
similarity index 100%
rename from markupsafe/__init__.py
rename to src/markupsafe/__init__.py
diff --git a/markupsafe/_compat.py b/src/markupsafe/_compat.py
similarity index 100%
rename from markupsafe/_compat.py
rename to src/markupsafe/_compat.py
diff --git a/markupsafe/_constants.py b/src/markupsafe/_constants.py
similarity index 100%
rename from markupsafe/_constants.py
rename to src/markupsafe/_constants.py
diff --git a/markupsafe/_native.py b/src/markupsafe/_native.py
similarity index 100%
rename from markupsafe/_native.py
rename to src/markupsafe/_native.py
diff --git a/markupsafe/_speedups.c b/src/markupsafe/_speedups.c
similarity index 100%
rename from markupsafe/_speedups.c
rename to src/markupsafe/_speedups.c
diff --git a/tox.ini b/tox.ini
index efd0163..b3c3868 100644
--- a/tox.ini
+++ b/tox.ini
@@ -39,6 +39,6 @@
 
 [coverage:paths]
 source =
-    markupsafe
+    src/markupsafe
     .tox/*/lib/python*/site-packages/markupsafe
     .tox/pypy/site-packages/markupsafe