# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"<label class=\"icn16 .*\" for=\".*\">(.*)<[^>]+>"
test_str = ("\n"
"<!doctype html>\n"
"<!--[if lt IE 7]> <html class=\"no-js ie6 oldie\" lang=\"en\"> <![endif]-->\n"
"<!--[if IE 7]> <html class=\"no-js ie7 oldie\" lang=\"en\"> <![endif]-->\n"
"<!--[if IE 8]> <html class=\"no-js ie8 oldie\" lang=\"en\"> <![endif]-->\n"
"<!--[if gt IE 8]><!--> <html class=\"no-js\" lang=\"en\"> <!--<![endif]-->\n"
"<head>\n"
"<meta charset=\"utf-8\">\n"
"<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\">\n"
"<title>\n"
"Ninite - Install or Update Multiple Apps at Once\n"
"</title>\n"
"<meta name=\"description\" content=\"The easiest, fastest way to update or install software. Ninite downloads and installs programs automatically in the background.\">\n"
"<meta name=\"author\" content=\"\">\n"
"<!--\n"
"<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n"
"-->\n"
"<link rel=\"icon\" type=\"image/png\" href=\"https://d8f7mp21btv4f.cloudfront.net/favicon-f2adff6a3437e4b447b9ed3e18ea6da3.png\">\n"
"<link rel=\"stylesheet\" href=\"https://d8f7mp21btv4f.cloudfront.net/css/style-2ac77874a515f12011f1769b65e3743b.css\">\n"
"<script src=\"https://d8f7mp21btv4f.cloudfront.net/js/libs/modernizr.min-fdea45d32b49928d8028af0c4e836788.js\"></script>\n\n"
"<script type=\"text/javascript\">\n"
"var _gaq = _gaq || [];\n"
"_gaq.push(['_setAccount', 'UA-10831845-1']);\n"
"_gaq.push(['_trackPageview']);\n"
"_gaq.push(['_trackPageLoadTime']);\n"
"(function() {\n"
"var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\n"
"ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\n"
"var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\n"
"})();\n"
"</script>\n"
"</head>\n"
"<body>\n"
"<div id=\"container\">\n\n"
"<div class=\"header\">\n"
"<div class=\"container_12\">\n"
"<div class=\"grid_6\">\n"
"<a class=\"brand\" href=\"/\">Ninite</a>\n"
"<a href=\"/pro\">Ninite Pro</a>\n"
"<a href=\"/updater/\">Ninite Updater</a>\n"
"</div>\n"
"<div class=\"grid_6 right\">\n"
"<a href=\"/help/\">help</a>\n"
"<a href=\"/feedback/\">feedback</a>\n\n"
"<a href=\"/signin/\">sign in</a>\n\n"
"</div>\n"
"</div>\n"
"</div>\n\n\n"
"<style>\n"
"body {\n"
"background: #fff;\n"
"overflow-x: hidden;\n"
"}\n"
"#content {\n"
"display: none;\n"
"}\n"
".home_heading {\n"
"margin-bottom: 4px;\n"
"}\n"
".app_category, .app_name {\n"
"list-style-type: none;\n"
"}\n"
".app_category_list, .app_name_list {\n"
"padding: 0;\n"
"margin: 0;\n"
"}\n"
".app_category_list {\n"
"margin: 0 auto;\n"
"}\n"
".app_category {\n"
"width: 145px;\n"
"margin-right: 2px;\n"
"float: left;\n"
"}\n"
".app_category_name {\n"
"margin: 16px 0 0;\n"
"}\n"
".app_name {\n"
"margin: 2px 0 0;\n"
"cursor: pointer;\n"
"}\n"
".app_name .icn16 {\n"
"display: inline-block;\n"
"height: 16px;\n"
"width: auto;\n"
"padding-left: 17px;\n"
"}\n"
".app_name:hover {\n"
"background: #f8de7e;\n"
"}\n"
".selected_app {\n"
"background: #5CE673;\n"
"}\n"
".selected_app:hover {\n"
"background: #52CC66;\n"
"}\n"
".get_installer_button {\n"
"margin: 16px 0;\n"
"}\n"
".ninite_opinions {\n"
"margin: 0;\n"
"padding: 0;\n"
"}\n"
".ninite_opinions li {\n"
"margin-top: 5px;\n"
"}\n"
".homepage_explanation {\n"
"border-bottom: none;\n"
"}\n"
".homepage_instructions {\n"
"margin: 10px auto;\n"
"}\n"
".homepage_info {\n"
"margin-top: 50px;\n"
"}\n"
"/* masonry transitions */\n"
".masonry, .masonry .masonry-brick {\n"
"-webkit-transition-duration: 0.7s;\n"
"-moz-transition-duration: 0.7s;\n"
"-ms-transition-duration: 0.7s;\n"
"-o-transition-duration: 0.7s;\n"
"transition-duration: 0.7s;\n"
"}\n"
".masonry {\n"
"-webkit-transition-property: height, width;\n"
"-moz-transition-property: height, width;\n"
"-ms-transition-property: height, width;\n"
"-o-transition-property: height, width;\n"
"transition-property: height, width;\n"
"}\n"
".masonry .masonry-brick {\n"
"-webkit-transition-property: left, right, top;\n"
"-moz-transition-property: left, right, top;\n"
"-ms-transition-property: left, right, top;\n"
"-o-transition-property: left, right, top;\n"
"transition-property: left, right, top;\n"
"}\n"
"</style>\n"
"<div class=\"homepage_explanation\">\n"
"<div class=\"container_12\">\n"
"<div class=\"grid_6\">\n"
"<h1 class=\"home_heading\">Install and Update All Your Programs at Once</h1>\n"
"<img style=\"border-radius: 16px;\" width=\"444\" height=\"299\" src=\"https://d8f7mp21btv4f.cloudfront.net/img/screenshot-507034b30050770944e5bd1855e1c9b0.png\" alt=\"A Ninite Installer\">\n"
"<br>\n"
"No toolbars. No clicking next.\n"
"Just pick your apps and click Get Installer.\n"
"</div>\n"
"<div class=\"grid_3\">\n"
"<h1 class=\"home_heading\">Always Up-to-date</h1>\n"
"<p>You don't have to watch for updates. Our bots do that. Here's what's new:</p>\n\n"
"<p>\n"
"Glary updated to 5.35.0.55.<br>\n"
"<span class=\"news_timestamp\">16 hours ago</span>\n"
"</p>\n\n"
"<p>\n"
"AIMP updated to 3.60.1503.<br>\n"
"<span class=\"news_timestamp\">Saturday at 6:31 pm</span>\n"
"</p>\n\n"
"<p>\n"
"Dropbox updated to 3.10.5.<br>\n"
"<span class=\"news_timestamp\">Friday at 7:41 pm</span>\n"
"</p>\n\n"
"<p>\n"
"Chrome updated to 45.0.2454.101.<br>\n"
"<span class=\"news_timestamp\">Thursday at 11:07 pm</span>\n"
"</p>\n\n"
"<p>\n"
"Skype updated to 7.11.0.102.<br>\n"
"<span class=\"news_timestamp\">Thursday at 8:19 pm</span>\n"
"</p>\n\n\n"
"<p><a href=\"/news\">more news</a></p>\n"
"</div>\n"
"<div class=\"grid_3\">\n"
"<h1 class=\"home_heading\">Trusted by Millions</h1>\n"
"<p>We install and update over 500,000 programs each day for millions of home users and <a href=\"https://ninite.com/pro\">Ninite Pro</a> subscribers like NASA, Harvard Medical School, and Tupperware.</p>\n"
"<p>The <a href=\"/press\">press</a> likes us too:</p>\n"
"<p>\n"
"“I'll bet the service saved me a couple hours”\n"
"<br>\n"
"<b>PCWorld</b>\n"
"</p>\n"
"<p>\n"
"“Ninite.com frees up your day”\n"
"<br>\n"
"<b>The Christian Science Monitor</b>\n"
"</p>\n"
"<p>\n"
"“This post can be fairly short because Ninite works exactly as advertised.”\n"
"<br>\n"
"<b>Lifehacker</b>\n"
"</p>\n"
"</div>\n"
"</div>\n"
"</div>\n"
"<div class=\"container_12 homepage_instructions\">\n"
"<div class=\"grid_4\">\n"
"<h1 class=\"home_heading\">1. Click all the apps you want</h1>\n"
"You can learn more about a program by hovering over it.\n"
"</div>\n"
"<div class=\"grid_4\">\n"
"<h1 class=\"home_heading\">2. Click Get Installer and run it</h1>\n"
"Ninite installs apps for you in the background.\n"
"No clicking next.\n"
"We say NO to toolbars or other junk.\n"
"</div>\n"
"<div class=\"grid_4\">\n"
"<h1 class=\"home_heading\">3. Run it again later</h1>\n"
"Your installer will update apps to the latest versions. If something is up-to-date we'll skip it.\n"
"</div>\n"
"</div>\n"
"<div class=\"container_12\">\n"
"<div class=\"grid_12\">\n\n\n"
"<h1 class=\"visuallyhidden\">We also have a page for screenreader-friendly\n"
"accessible apps at <a href=\"/accessible\">ninite.com/accessible</a>.</h1>\n\n"
"</div>\n"
"</div>\n"
"<form method=\"POST\">\n"
"<input type=\"hidden\" name=\"_xsrf\" value=\"2|264cb74f|df809b2aea80a04375f18cd76fdcdc32|1443511718\"/>\n"
"<ul class=\"app_category_list\">\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Web Browsers</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Fast Browser by Google 45.0.2454.101\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"chrome\"\n"
"id=\"cb_kvedr\">\n"
"<label class=\"icn16 icn16_kvedr\" for=\"cb_kvedr\">Chrome</label>\n"
"<p class=\"visuallyhidden\">Fast Browser by Google 45.0.2454.101</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Alternative Browser 32.0.1948.25\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"operaChromium\"\n"
"id=\"cb_dqbak\">\n"
"<label class=\"icn16 icn16_dqbak\" for=\"cb_dqbak\">Opera Chromium</label>\n"
"<p class=\"visuallyhidden\">Alternative Browser 32.0.1948.25</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Extensible Browser 41.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"firefox\"\n"
"id=\"cb_22s4s\">\n"
"<label class=\"icn16 icn16_22s4s\" for=\"cb_22s4s\">Firefox</label>\n"
"<p class=\"visuallyhidden\">Extensible Browser 41.0</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Messaging</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Internet Telephone 7.11.0.102\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"skype\"\n"
"id=\"cb_2qq4h\">\n"
"<label class=\"icn16 icn16_2qq4h\" for=\"cb_2qq4h\">Skype</label>\n"
"<p class=\"visuallyhidden\">Internet Telephone 7.11.0.102</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Multi-IM Client 2.10.11\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"pidgin\"\n"
"id=\"cb_tm27m\">\n"
"<label class=\"icn16 icn16_tm27m\" for=\"cb_tm27m\">Pidgin</label>\n"
"<p class=\"visuallyhidden\">Multi-IM Client 2.10.11</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Email Reader by Mozilla 38.2.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"thunderbird\"\n"
"id=\"cb_4nn6w\">\n"
"<label class=\"icn16 icn16_4nn6w\" for=\"cb_4nn6w\">Thunderbird</label>\n"
"<p class=\"visuallyhidden\">Email Reader by Mozilla 38.2.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Trillian IM 5.6.0.5\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"trillian\"\n"
"id=\"cb_tvalh\">\n"
"<label class=\"icn16 icn16_tvalh\" for=\"cb_tvalh\">Trillian</label>\n"
"<p class=\"visuallyhidden\">Trillian IM 5.6.0.5</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"AOL Instant Messenger 7.5.14.8\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"aim\"\n"
"id=\"cb_iicoh\">\n"
"<label class=\"icn16 icn16_iicoh\" for=\"cb_iicoh\">AIM</label>\n"
"<p class=\"visuallyhidden\">AOL Instant Messenger 7.5.14.8</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Yahoo! IM Client 11.5.0.0228\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"yahoo\"\n"
"id=\"cb_eqp6r\">\n"
"<label class=\"icn16 icn16_eqp6r\" for=\"cb_eqp6r\">Yahoo!</label>\n"
"<p class=\"visuallyhidden\">Yahoo! IM Client 11.5.0.0228</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Media</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Music/Media Manager 12.3.0.44\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"itunes\"\n"
"id=\"cb_hmiuc\">\n"
"<label class=\"icn16 icn16_hmiuc\" for=\"cb_hmiuc\">iTunes</label>\n"
"<p class=\"visuallyhidden\">Music/Media Manager 12.3.0.44</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Great Video Player 2.2.1\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"vlc\"\n"
"id=\"cb_5hco5\">\n"
"<label class=\"icn16 icn16_5hco5\" for=\"cb_5hco5\">VLC</label>\n"
"<p class=\"visuallyhidden\">Great Video Player 2.2.1</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Video Player 4.0.0.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"kmplayer\"\n"
"id=\"cb_tglx7\">\n"
"<label class=\"icn16 icn16_tglx7\" for=\"cb_tglx7\">KMPlayer</label>\n"
"<p class=\"visuallyhidden\">Video Player 4.0.0.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Music Player 3.60.1503\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"aimp\"\n"
"id=\"cb_lconn\">\n"
"<label class=\"icn16 icn16_lconn\" for=\"cb_lconn\">AIMP</label>\n"
"<p class=\"visuallyhidden\">Music Player 3.60.1503</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Music Player 1.3.8\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"foobar\"\n"
"id=\"cb_hbmpm\">\n"
"<label class=\"icn16 icn16_hbmpm\" for=\"cb_hbmpm\">foobar2000</label>\n"
"<p class=\"visuallyhidden\">Music Player 1.3.8</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Music Player 5.6.6.3516\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"winamp\"\n"
"id=\"cb_gs7lf\">\n"
"<label class=\"icn16 icn16_gs7lf\" for=\"cb_gs7lf\">Winamp</label>\n"
"<p class=\"visuallyhidden\">Music Player 5.6.6.3516</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Audio Editor 2.1.1\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"audacity\"\n"
"id=\"cb_htevm\">\n"
"<label class=\"icn16 icn16_htevm\" for=\"cb_htevm\">Audacity</label>\n"
"<p class=\"visuallyhidden\">Audio Editor 2.1.1</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Video decoders plus Media Player Classic 11.4.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"klitecodecs\"\n"
"id=\"cb_w53be\">\n"
"<label class=\"icn16 icn16_w53be\" for=\"cb_w53be\">K-Lite Codecs</label>\n"
"<p class=\"visuallyhidden\">Video decoders plus Media Player Classic 11.4.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Video Player 2.2.69.5227\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"gom\"\n"
"id=\"cb_uhgi3\">\n"
"<label class=\"icn16 icn16_uhgi3\" for=\"cb_uhgi3\">GOM</label>\n"
"<p class=\"visuallyhidden\">Video Player 2.2.69.5227</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Online Music Service 1.0.14.124\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"spotify\"\n"
"id=\"cb_tlvlq\">\n"
"<label class=\"icn16 icn16_tlvlq\" for=\"cb_tlvlq\">Spotify</label>\n"
"<p class=\"visuallyhidden\">Online Music Service 1.0.14.124</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Video decoders plus MPC 2014.07.13\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"cccp\"\n"
"id=\"cb_xsupa\">\n"
"<label class=\"icn16 icn16_xsupa\" for=\"cb_xsupa\">CCCP</label>\n"
"<p class=\"visuallyhidden\">Video decoders plus MPC 2014.07.13</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Music Organizer 4.1.8.1751\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"mediamonkey\"\n"
"id=\"cb_7qwxr\">\n"
"<label class=\"icn16 icn16_7qwxr\" for=\"cb_7qwxr\">MediaMonkey</label>\n"
"<p class=\"visuallyhidden\">Music Organizer 4.1.8.1751</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Video Player 7.7.8\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"quicktime\"\n"
"id=\"cb_nmyd5\">\n"
"<label class=\"icn16 icn16_nmyd5\" for=\"cb_nmyd5\">QuickTime</label>\n"
"<p class=\"visuallyhidden\">Video Player 7.7.8</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Runtimes</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Java Runtime Environment (JRE) 8u60-b27\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"java8\"\n"
"id=\"cb_za42k\">\n"
"<label class=\"icn16 icn16_za42k\" for=\"cb_za42k\">Java 8</label>\n"
"<p class=\"visuallyhidden\">Java Runtime Environment (JRE) 8u60-b27</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Microsoft .NET 4.6.00081\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\".net4.6\"\n"
"id=\"cb_mq4ah\">\n"
"<label class=\"icn16 icn16_mq4ah\" for=\"cb_mq4ah\">.NET 4.6</label>\n"
"<p class=\"visuallyhidden\">Microsoft .NET 4.6.00081</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Microsoft Silverlight 5.1.40728.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"silverlight\"\n"
"id=\"cb_sutoa\">\n"
"<label class=\"icn16 icn16_sutoa\" for=\"cb_sutoa\">Silverlight</label>\n"
"<p class=\"visuallyhidden\">Microsoft Silverlight 5.1.40728.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Adobe Air 19.0.0.190\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"air\"\n"
"id=\"cb_hrcyq\">\n"
"<label class=\"icn16 icn16_hrcyq\" for=\"cb_hrcyq\">Air</label>\n"
"<p class=\"visuallyhidden\">Adobe Air 19.0.0.190</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Shockwave Player 12.2.0.162\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"shockwave\"\n"
"id=\"cb_rci2j\">\n"
"<label class=\"icn16 icn16_rci2j\" for=\"cb_rci2j\">Shockwave</label>\n"
"<p class=\"visuallyhidden\">Shockwave Player 12.2.0.162</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Imaging</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Image Editor 4.6.5693.28 (requires .NET 4.5)\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"paint.net\"\n"
"id=\"cb_by33i\">\n"
"<label class=\"icn16 icn16_by33i\" for=\"cb_by33i\">Paint.NET</label>\n"
"<p class=\"visuallyhidden\">Image Editor 4.6.5693.28 (requires .NET 4.5)</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Photo Manager by Google 3.9.140.248\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"picasa\"\n"
"id=\"cb_f5zjo\">\n"
"<label class=\"icn16 icn16_f5zjo\" for=\"cb_f5zjo\">Picasa</label>\n"
"<p class=\"visuallyhidden\">Photo Manager by Google 3.9.140.248</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Open Source Image Editor 2.8.14\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"gimp\"\n"
"id=\"cb_7rlms\">\n"
"<label class=\"icn16 icn16_7rlms\" for=\"cb_7rlms\">GIMP</label>\n"
"<p class=\"visuallyhidden\">Open Source Image Editor 2.8.14</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Image Viewer 4.40\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"irfanview\"\n"
"id=\"cb_2n6do\">\n"
"<label class=\"icn16 icn16_2n6do\" for=\"cb_2n6do\">IrfanView</label>\n"
"<p class=\"visuallyhidden\">Image Viewer 4.40</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Image Viewer 2.34\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"xnview\"\n"
"id=\"cb_hzubg\">\n"
"<label class=\"icn16 icn16_hzubg\" for=\"cb_hzubg\">XnView</label>\n"
"<p class=\"visuallyhidden\">Image Viewer 2.34</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Vector Graphics Editor 0.91\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"inkscape\"\n"
"id=\"cb_g6lly\">\n"
"<label class=\"icn16 icn16_g6lly\" for=\"cb_g6lly\">Inkscape</label>\n"
"<p class=\"visuallyhidden\">Vector Graphics Editor 0.91</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"FastStone Image Viewer 5.5\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"faststone\"\n"
"id=\"cb_6nlg6\">\n"
"<label class=\"icn16 icn16_6nlg6\" for=\"cb_6nlg6\">FastStone</label>\n"
"<p class=\"visuallyhidden\">FastStone Image Viewer 5.5</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Screenshot Tool 1.2.6.7\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"greenshot\"\n"
"id=\"cb_wq43l\">\n"
"<label class=\"icn16 icn16_wq43l\" for=\"cb_wq43l\">Greenshot</label>\n"
"<p class=\"visuallyhidden\">Screenshot Tool 1.2.6.7</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Documents</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Free Office Suite 4.1.1 (JRE recommended)\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"openoffice\"\n"
"id=\"cb_x52fw\">\n"
"<label class=\"icn16 icn16_x52fw\" for=\"cb_x52fw\">OpenOffice</label>\n"
"<p class=\"visuallyhidden\">Free Office Suite 4.1.1 (JRE recommended)</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Adobe PDF Reader 15.8.20082\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"readerDC\"\n"
"id=\"cb_edv2t\">\n"
"<label class=\"icn16 icn16_edv2t\" for=\"cb_edv2t\">Reader DC</label>\n"
"<p class=\"visuallyhidden\">Adobe PDF Reader 15.8.20082</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Lightweight PDF Reader 3.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"sumatrapdf\"\n"
"id=\"cb_m4qxn\">\n"
"<label class=\"icn16 icn16_m4qxn\" for=\"cb_m4qxn\">SumatraPDF</label>\n"
"<p class=\"visuallyhidden\">Lightweight PDF Reader 3.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Alternative PDF Reader 7.2.0.0722\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"foxit\"\n"
"id=\"cb_n3l7s\">\n"
"<label class=\"icn16 icn16_n3l7s\" for=\"cb_n3l7s\">Foxit Reader</label>\n"
"<p class=\"visuallyhidden\">Alternative PDF Reader 7.2.0.0722</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Print Documents as PDF Files 3.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"cutepdf\"\n"
"id=\"cb_g2ba4\">\n"
"<label class=\"icn16 icn16_g2ba4\" for=\"cb_g2ba4\">CutePDF</label>\n"
"<p class=\"visuallyhidden\">Print Documents as PDF Files 3.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Free Office Suite 5.0.2 (JRE recommended)\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"libreoffice\"\n"
"id=\"cb_iym3r\">\n"
"<label class=\"icn16 icn16_iym3r\" for=\"cb_iym3r\">LibreOffice</label>\n"
"<p class=\"visuallyhidden\">Free Office Suite 5.0.2 (JRE recommended)</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Print Documents as PDF Files 2.1.2.884\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"pdfcreator\"\n"
"id=\"cb_jjvo5\">\n"
"<label class=\"icn16 icn16_jjvo5\" for=\"cb_jjvo5\">PDFCreator</label>\n"
"<p class=\"visuallyhidden\">Print Documents as PDF Files 2.1.2.884</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Security</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Great Antivirus by Microsoft 4.8.204\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"essentials\"\n"
"id=\"cb_da233\">\n"
"<label class=\"icn16 icn16_da233\" for=\"cb_da233\">Essentials</label>\n"
"<p class=\"visuallyhidden\">Great Antivirus by Microsoft 4.8.204</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Avast Free Antivirus 10.4.2233\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"avast\"\n"
"id=\"cb_l3vzg\">\n"
"<label class=\"icn16 icn16_l3vzg\" for=\"cb_l3vzg\">Avast</label>\n"
"<p class=\"visuallyhidden\">Avast Free Antivirus 10.4.2233</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"AVG Free Antivirus 2015 15.0.6140\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"avg\"\n"
"id=\"cb_4mrni\">\n"
"<label class=\"icn16 icn16_4mrni\" for=\"cb_4mrni\">AVG</label>\n"
"<p class=\"visuallyhidden\">AVG Free Antivirus 2015 15.0.6140</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Malware Remover 2.1.8.1057\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"malwarebytes\"\n"
"id=\"cb_mgdaa\">\n"
"<label class=\"icn16 icn16_mgdaa\" for=\"cb_mgdaa\">Malwarebytes</label>\n"
"<p class=\"visuallyhidden\">Malware Remover 2.1.8.1057</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Antivirus Free Trial 11.8.586.8535\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"adaware\"\n"
"id=\"cb_avnaa\">\n"
"<label class=\"icn16 icn16_avnaa\" for=\"cb_avnaa\">Ad-Aware</label>\n"
"<p class=\"visuallyhidden\">Antivirus Free Trial 11.8.586.8535</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Spyware Remover 2.4.40\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"spybot2\"\n"
"id=\"cb_fflxm\">\n"
"<label class=\"icn16 icn16_fflxm\" for=\"cb_fflxm\">Spybot 2</label>\n"
"<p class=\"visuallyhidden\">Spyware Remover 2.4.40</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Avira Free Antivirus 15.0.13.202\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"avira\"\n"
"id=\"cb_e54zh\">\n"
"<label class=\"icn16 icn16_e54zh\" for=\"cb_e54zh\">Avira</label>\n"
"<p class=\"visuallyhidden\">Avira Free Antivirus 15.0.13.202</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"SUPERAntiSpyware Free 6.0.1206\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"super\"\n"
"id=\"cb_dmzdc\">\n"
"<label class=\"icn16 icn16_dmzdc\" for=\"cb_dmzdc\">Super</label>\n"
"<p class=\"visuallyhidden\">SUPERAntiSpyware Free 6.0.1206</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">File Sharing</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Free Bittorrent Client 3.2.3\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"qbittorrent\"\n"
"id=\"cb_itstl\">\n"
"<label class=\"icn16 icn16_itstl\" for=\"cb_itstl\">qBittorrent</label>\n"
"<p class=\"visuallyhidden\">Free Bittorrent Client 3.2.3</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"File Sharing Client 0.50a\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"emule\"\n"
"id=\"cb_ceish\">\n"
"<label class=\"icn16 icn16_ceish\" for=\"cb_ceish\">eMule</label>\n"
"<p class=\"visuallyhidden\">File Sharing Client 0.50a</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Online Storage</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Great Online Backup/File Sync 3.10.5\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"dropbox\"\n"
"id=\"cb_f4z4i\">\n"
"<label class=\"icn16 icn16_f4z4i\" for=\"cb_f4z4i\">Dropbox</label>\n"
"<p class=\"visuallyhidden\">Great Online Backup/File Sync 3.10.5</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Online Backup/File Sync 1.25.0286.7715\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"googledrive\"\n"
"id=\"cb_v4sqq\">\n"
"<label class=\"icn16 icn16_v4sqq\" for=\"cb_v4sqq\">Google Drive</label>\n"
"<p class=\"visuallyhidden\">Online Backup/File Sync 1.25.0286.7715</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"MozyHome Online Backup 2.28.2.432\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"mozy\"\n"
"id=\"cb_r7qtr\">\n"
"<label class=\"icn16 icn16_r7qtr\" for=\"cb_r7qtr\">Mozy</label>\n"
"<p class=\"visuallyhidden\">MozyHome Online Backup 2.28.2.432</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Online File Sync by Microsoft 17.3.5951.0827\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"onedrive\"\n"
"id=\"cb_57ao2\">\n"
"<label class=\"icn16 icn16_57ao2\" for=\"cb_57ao2\">OneDrive</label>\n"
"<p class=\"visuallyhidden\">Online File Sync by Microsoft 17.3.5951.0827</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Online Backup/File Sync 3.6.0.1.139445\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"sugarsync\"\n"
"id=\"cb_rm6zf\">\n"
"<label class=\"icn16 icn16_rm6zf\" for=\"cb_rm6zf\">SugarSync</label>\n"
"<p class=\"visuallyhidden\">Online Backup/File Sync 3.6.0.1.139445</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"File Synchronization 1.4.111\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"bittorrentsync\"\n"
"id=\"cb_mwfrt\">\n"
"<label class=\"icn16 icn16_mwfrt\" for=\"cb_mwfrt\">BitTorrent Sync</label>\n"
"<p class=\"visuallyhidden\">File Synchronization 1.4.111</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Other</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Online Notes 5.9.1.8742\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"evernote\"\n"
"id=\"cb_i2ycj\">\n"
"<label class=\"icn16 icn16_i2ycj\" for=\"cb_i2ycj\">Evernote</label>\n"
"<p class=\"visuallyhidden\">Online Notes 5.9.1.8742</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Online Atlas by Google 7.1.5.1557\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"googleearth\"\n"
"id=\"cb_ewkjy\">\n"
"<label class=\"icn16 icn16_ewkjy\" for=\"cb_ewkjy\">Google Earth</label>\n"
"<p class=\"visuallyhidden\">Online Atlas by Google 7.1.5.1557</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"App Store for Games\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"steam\"\n"
"id=\"cb_oxxml\">\n"
"<label class=\"icn16 icn16_oxxml\" for=\"cb_oxxml\">Steam</label>\n"
"<p class=\"visuallyhidden\">App Store for Games</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Password Manager 2.30\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"keepass2\"\n"
"id=\"cb_jrd6u\">\n"
"<label class=\"icn16 icn16_jrd6u\" for=\"cb_jrd6u\">KeePass 2</label>\n"
"<p class=\"visuallyhidden\">Password Manager 2.30</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Local File Search Engine 1.3.4.686\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"everything\"\n"
"id=\"cb_gew3n\">\n"
"<label class=\"icn16 icn16_gew3n\" for=\"cb_gew3n\">Everything</label>\n"
"<p class=\"visuallyhidden\">Local File Search Engine 1.3.4.686</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Screen Reader 2015.3\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"nvda\"\n"
"id=\"cb_rrag3\">\n"
"<label class=\"icn16 icn16_rrag3\" for=\"cb_rrag3\">NV Access</label>\n"
"<p class=\"visuallyhidden\">Screen Reader 2015.3</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Utilities</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Remote Access Tool 10.0.47484.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"teamviewer\"\n"
"id=\"cb_ibqtw\">\n"
"<label class=\"icn16 icn16_ibqtw\" for=\"cb_ibqtw\">TeamViewer</label>\n"
"<p class=\"visuallyhidden\">Remote Access Tool 10.0.47484.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Disc Burner 2.5.8.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"imgburn\"\n"
"id=\"cb_itq3h\">\n"
"<label class=\"icn16 icn16_itq3h\" for=\"cb_itq3h\">ImgBurn</label>\n"
"<p class=\"visuallyhidden\">Disc Burner 2.5.8.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Great Disk Defrag 6.0.2.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"auslogics\"\n"
"id=\"cb_5tcns\">\n"
"<label class=\"icn16 icn16_5tcns\" for=\"cb_5tcns\">Auslogics</label>\n"
"<p class=\"visuallyhidden\">Great Disk Defrag 6.0.2.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Free Remote PC Access 5.2.3.8648\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"realvnc\"\n"
"id=\"cb_a3cu2\">\n"
"<label class=\"icn16 icn16_a3cu2\" for=\"cb_a3cu2\">RealVNC</label>\n"
"<p class=\"visuallyhidden\">Free Remote PC Access 5.2.3.8648</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Better File Copy 2.3\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"teracopy\"\n"
"id=\"cb_pa3mm\">\n"
"<label class=\"icn16 icn16_pa3mm\" for=\"cb_pa3mm\">TeraCopy</label>\n"
"<p class=\"visuallyhidden\">Better File Copy 2.3</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Disc Burner 4.5.6.5844 (requires .NET)\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"cdburnerxp\"\n"
"id=\"cb_7d32j\">\n"
"<label class=\"icn16 icn16_7d32j\" for=\"cb_7d32j\">CDBurnerXP</label>\n"
"<p class=\"visuallyhidden\">Disc Burner 4.5.6.5844 (requires .NET)</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"App Uninstaller/Reverse Ninite 1.95\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"revo\"\n"
"id=\"cb_lpcec\">\n"
"<label class=\"icn16 icn16_lpcec\" for=\"cb_lpcec\">Revo</label>\n"
"<p class=\"visuallyhidden\">App Uninstaller/Reverse Ninite 1.95</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Hotkey Launcher 2.5\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"launchy\"\n"
"id=\"cb_aly25\">\n"
"<label class=\"icn16 icn16_aly25\" for=\"cb_aly25\">Launchy</label>\n"
"<p class=\"visuallyhidden\">Hotkey Launcher 2.5</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Directory Statistics 1.1.2.80\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"windirstat\"\n"
"id=\"cb_ih3nm\">\n"
"<label class=\"icn16 icn16_ih3nm\" for=\"cb_ih3nm\">WinDirStat</label>\n"
"<p class=\"visuallyhidden\">Directory Statistics 1.1.2.80</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"System Utilities 5.35.0.55\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"glary\"\n"
"id=\"cb_h4enj\">\n"
"<label class=\"icn16 icn16_h4enj\" for=\"cb_h4enj\">Glary</label>\n"
"<p class=\"visuallyhidden\">System Utilities 5.35.0.55</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Disc Burner 0.53.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"infrarecorder\"\n"
"id=\"cb_addmm\">\n"
"<label class=\"icn16 icn16_addmm\" for=\"cb_addmm\">InfraRecorder</label>\n"
"<p class=\"visuallyhidden\">Disc Burner 0.53.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Classic Shell Win8 Start Menu 4.2.4\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"classicstart\"\n"
"id=\"cb_6cxnu\">\n"
"<label class=\"icn16 icn16_6cxnu\" for=\"cb_6cxnu\">Classic Start</label>\n"
"<p class=\"visuallyhidden\">Classic Shell Win8 Start Menu 4.2.4</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Compression</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Great Compression App 9.20\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"7zip\"\n"
"id=\"cb_bcaaf\">\n"
"<label class=\"icn16 icn16_bcaaf\" for=\"cb_bcaaf\">7-Zip</label>\n"
"<p class=\"visuallyhidden\">Great Compression App 9.20</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"File Compression Tool 5.7.2\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"peazip\"\n"
"id=\"cb_z6s5m\">\n"
"<label class=\"icn16 icn16_z6s5m\" for=\"cb_z6s5m\">PeaZip</label>\n"
"<p class=\"visuallyhidden\">File Compression Tool 5.7.2</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Another Compression Tool 5.21 (Trial)\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"winrar\"\n"
"id=\"cb_nxciq\">\n"
"<label class=\"icn16 icn16_nxciq\" for=\"cb_nxciq\">WinRAR</label>\n"
"<p class=\"visuallyhidden\">Another Compression Tool 5.21 (Trial)</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n\n"
"<li class=\"app_category\">\n"
"<h3 class=\"app_category_name\">Developer Tools</h3>\n"
"<ul class=\"app_name_list\">\n\n\n\n"
"<li class=\"app_name\" title=\"Great Programming Language 2.7.10\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"python\"\n"
"id=\"cb_epxow\">\n"
"<label class=\"icn16 icn16_epxow\" for=\"cb_epxow\">Python</label>\n"
"<p class=\"visuallyhidden\">Great Programming Language 2.7.10</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"FTP Client 3.14.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"filezilla\"\n"
"id=\"cb_xqkaw\">\n"
"<label class=\"icn16 icn16_xqkaw\" for=\"cb_xqkaw\">FileZilla</label>\n"
"<p class=\"visuallyhidden\">FTP Client 3.14.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Programmer's Editor 6.8.3\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"notepadplusplus\"\n"
"id=\"cb_j2gws\">\n"
"<label class=\"icn16 icn16_j2gws\" for=\"cb_j2gws\">Notepad++</label>\n"
"<p class=\"visuallyhidden\">Programmer's Editor 6.8.3</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Java Development Kit 8u60-b27\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"jdk8\"\n"
"id=\"cb_b6djg\">\n"
"<label class=\"icn16 icn16_b6djg\" for=\"cb_b6djg\">JDK 8</label>\n"
"<p class=\"visuallyhidden\">Java Development Kit 8u60-b27</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Java Development Kit 8u60-b27\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"jdkx8\"\n"
"id=\"cb_azvh4\">\n"
"<label class=\"icn16 icn16_azvh4\" for=\"cb_azvh4\">JDK x64 8</label>\n"
"<p class=\"visuallyhidden\">Java Development Kit 8u60-b27</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"SCP Client 5.7.5\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"winscp\"\n"
"id=\"cb_3nmgs\">\n"
"<label class=\"icn16 icn16_3nmgs\" for=\"cb_3nmgs\">WinSCP</label>\n"
"<p class=\"visuallyhidden\">SCP Client 5.7.5</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"SSH client 0.65\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"putty\"\n"
"id=\"cb_uriix\">\n"
"<label class=\"icn16 icn16_uriix\" for=\"cb_uriix\">PuTTY</label>\n"
"<p class=\"visuallyhidden\">SSH client 0.65</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"Compare and Merge Files 2.14.0\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"winmerge\"\n"
"id=\"cb_a7h2w\">\n"
"<label class=\"icn16 icn16_a7h2w\" for=\"cb_a7h2w\">WinMerge</label>\n"
"<p class=\"visuallyhidden\">Compare and Merge Files 2.14.0</p>\n"
"</li>\n\n\n\n\n"
"<li class=\"app_name\" title=\"IDE for Java 4.5 (requires Java)\">\n"
"<input type=\"checkbox\" name=\"apps\" value=\"eclipse\"\n"
"id=\"cb_nn5wk\">\n"
"<label class=\"icn16 icn16_nn5wk\" for=\"cb_nn5wk\">Eclipse</label>\n"
"<p class=\"visuallyhidden\">IDE for Java 4.5 (requires Java)</p>\n"
"</li>\n\n\n"
"</ul>\n"
"</li>\n\n\n"
"</ul>\n\n"
"<div class=\"container_12\">\n"
"<div class=\"grid_12 center\">\n"
"<p class=\"please_select_apps error\" style=\"display: none;\">\n"
"Select the apps you want by clicking on them above.\n"
"</p>\n"
"<button class=\"get_installer_button\" type=\"submit\" accesskey=\"g\">Get Installer</button>\n"
"</div>\n"
"</div>\n"
"</form>\n"
"<div class=\"container_12 homepage_info\">\n"
"<div class=\"grid_6\">\n"
"<h1>Ninite will</h1>\n"
"<ul class=\"ninite_opinions\">\n"
"<li>start working as soon as you run it</li>\n"
"<li>not bother you with any choices or options</li>\n"
"<li>install apps in their default location</li>\n"
"<li>say no to toolbars or extra junk</li>\n"
"<li>install 64-bit apps on 64-bit machines</li>\n"
"<li>install apps in your PC's language <a href=\"/help/features/language.html\">or one you choose</a></li>\n"
"<li>do all its work in the background</li>\n"
"<li>install the latest stable version of an app</li>\n"
"<li>skip up-to-date apps</li>\n"
"<li>skip any reboot requests from installers</li>\n"
"<li>use your proxy settings from Internet Explorer</li>\n"
"<li>download apps from each publisher's official site</li>\n"
"<li>verify digital signatures or hashes before running anything</li>\n"
"<li>work best if you turn off any web filters or firewalls</li>\n"
"<li>save you a lot of time!</li>\n"
"</ul>\n"
"<h1 style=\"margin-top: 30px;\">Suggest an app</h1>\n"
"<p>\n"
"We only add popular user-requested apps to Ninite.<br>\n"
"<a href=\"#\" onclick=\"$('#suggest').toggle(); $(this).hide(); return false;\">Show suggestion form.</a>\n"
"</p>\n"
"<form id=\"suggest\" style=\"display: none;\">\n"
"I want to see\n"
"<input class=\"auto\" name=\"name\" id=\"suggestname\" placeholder=\"app name\">\n"
"on Ninite.\n"
"<br>\n"
"Email me at\n"
"<input class=\"auto\" name=\"email\" type=\"email\" id=\"suggestemail\"\n"
"placeholder=\"your email (optional)\">\n"
"(optional) when it's ready.\n"
"<br>\n"
"<input class=\"auto\" type=\"submit\" value=\"Suggest this app\">\n"
"<span style=\"display:none; color: green;\" id=\"suggestthanks\">Thanks!</span>\n"
"</form>\n"
"</div>\n"
"<div class=\"grid_6\" style=\"position: relative;\">\n\n"
"<h1>Patch your domain from one window</h1>\n\n"
"<a href=\"https://ninite.com/pro\">\n"
"<img src=\"https://d8f7mp21btv4f.cloudfront.net/img/proremote/remote_small-7bbe9766239fc1c5a8f7b624b26e5f79.jpg\" alt=\"The new remote interface in Ninite Pro\">\n"
"</a>\n"
"<p>\n"
"<a href=\"https://ninite.com/pro\">Ninite Pro</a> helps you manage apps on your whole network for just $20/month for 100 machines. It's licensed for business use, faster because of its download cache, works offline, can uninstall apps, has options to disable built-in updaters and desktop shortcuts … we could go on, but there's a <a href=\"https://ninite.com/pro\">whole page for that</a>.\n"
"</p>\n"
"<a href=\"https://ninite.com/updater\">\n"
"<img src=\"https://d8f7mp21btv4f.cloudfront.net/updater/updates_available-e22afb0d61d0f2ff5dc52b810b5a8484.png\" alt=\"Ninite Updater in action\">\n"
"</a>\n"
"<p>\n"
"<a href=\"https://ninite.com/updater\">Ninite Updater</a> is for home users who want to support Ninite. It watches your apps for updates automatically for $9.99/year.\n"
"</p>\n"
"<p>\n"
"Our website is free for home use because these products pay the bills. We just like saving you time.\n"
"</p>\n"
"</div>\n"
"</div>\n\n"
"<div id=\"content\" role=\"main\">\n\n"
"</div>\n"
"<div class=\"footer container_12\">\n"
"<div class=\"grid_4 push_4 center\">\n"
"©2015 Secure By Design Inc.\n"
"</div>\n"
"<div class=\"grid_8 right\">\n"
"<a href=\"/about\">about</a>\n"
"<a href=\"/press\">press</a>\n"
"<a href=\"/news\">updates</a>\n"
"<a href=\"/terms/\">terms</a>\n"
"<a href=\"/privacy/\">privacy</a>\n"
"</div>\n"
"</div>\n\n"
"</div>\n"
"<script src=\"//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js\"></script>\n"
"<script>window.jQuery || document.write('<script src=\"https://d8f7mp21btv4f.cloudfront.net/js/libs/jquery-1.9.1.min-2ee4df84bb86736eb58870514d2cb4eb.js\"><\\/script>')</script>\n"
"<script src=\"https://d8f7mp21btv4f.cloudfront.net/js/libs/jquery.masonry.min-cf62fcc80f9712e5806e4772e5aa6b80.js\"></script>\n\n"
"<script>\n"
"$(function(){\n"
"$('.app_category_list').masonry({\n"
"itemSelector: '.app_category',\n"
"isFitWidth: true\n"
"});\n"
"});\n"
"$('.get_installer_button').click(function(e) {\n"
"if ($('input[name=apps]:checked').size() == 0) {\n"
"$('.please_select_apps').slideDown();\n"
"return false;\n"
"}\n"
"});\n"
"function set_checked_class(el) {\n"
"if (el.find(\"input:checkbox\").prop(\"checked\")) {\n"
"el.addClass(\"selected_app\");\n"
"} else {\n"
"el.removeClass(\"selected_app\");\n"
"}\n"
"}\n"
"function setall(cl, v) {\n"
"$(\".\"+cl+\" input\").prop(\"checked\", v);\n"
"$(\".app_name\").each(function(){ set_checked_class($(this)); });\n"
"return false;\n"
"}\n"
"$(document).ready(function() {\n"
"$(\".app_name\").each(function(){ set_checked_class($(this)); });\n"
"});\n"
"$(\".app_name\").click(function(e){\n"
"var ck = $(\"input:checkbox\", this).prop(\"checked\");\n"
"if (e.target.tagName != 'INPUT')\n"
"$(\"input:checkbox\", this).prop(\"checked\", !ck);\n"
"set_checked_class($(this));\n"
"});\n"
"$(\".app_name label\").click(function(e){\n"
"e.preventDefault();\n"
"});\n"
"function getCookie(name) {\n"
"var r = document.cookie.match(\"\\\\b\" + name + \"=([^;]*)\\\\b\");\n"
"return r ? r[1] : undefined;\n"
"}\n"
"$(\"form#suggest\").submit(function(e){\n"
"e.preventDefault();\n"
"var data = { name: $(\"#suggestname\").val(),\n"
"email: $(\"#suggestemail\").val(),\n"
"_xsrf: getCookie(\"_xsrf\") };\n"
"$.post(\"/suggest\", data, function(){\n"
"$(\"#suggestthanks\").fadeIn().delay(2000).fadeOut(\"slow\");\n"
"});\n"
"$(\"#suggestname\").val(\"\");\n"
"});\n"
"</script>\n\n"
"</body>\n"
"</html>\n")
matches = re.finditer(regex, test_str)
for matchNum, match in enumerate(matches, start=1):
print ("Match {matchNum} was found at {start}-{end}: {match}".format(matchNum = matchNum, start = match.start(), end = match.end(), match = match.group()))
for groupNum in range(0, len(match.groups())):
groupNum = groupNum + 1
print ("Group {groupNum} found at {start}-{end}: {group}".format(groupNum = groupNum, start = match.start(groupNum), end = match.end(groupNum), group = match.group(groupNum)))
# Note: for Python 2.7 compatibility, use ur"" to prefix the regex and u"" to prefix the test string and substitution.
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html