Modified from HTML4 to HTML5