validate.py relies on the markup.py