#!/usr/bin/env python

import sys

per_page=8

class Step_back:
	def __init__(self, least, greatest):
		self.least = least
		self.greatest = greatest
		self.filename = 'pages-%d-through-%d' % (least+1, greatest+1)
		self.lines = []

	def add(self, line):
		self.lines.append(line)

	def write(self):
		#print 'writing %s with %d lines' % (self.filename, len(self.lines))
		file = open('%s.html' % self.filename, 'w')
		file.write(''.join(self.lines))
		file.close()

def process_subdivision(sbr, subleft, subright, overall_length, files):
	#print subleft, subright
	step_back(subleft, subright, overall_length, files)
	subresult = Step_back(subleft, subright)
	sbr.add('<a href="%s.html">%s</a><br></br>\n' % (subresult.filename, subresult.filename))

def step_back(left, right, overall_length, files):
	num_files=right - left + 1
	#print left, right, num_files, per_page
	sbr = Step_back(left, right)
	if num_files <= per_page:
		for fileno in xrange(num_files):
			sbr.add('<a href="%s">%s</a><br></br>\n' % (files[left + fileno], files[left + fileno]))
	elif num_files <= per_page*per_page: # an implicitly > per_page
		quotient, remainder = divmod(num_files, per_page)
		subleft = left
		for subpageno in xrange(quotient):
			subright = subleft + per_page - 1
			process_subdivision( \
				sbr, \
				subleft, \
				subright, \
				overall_length, \
				files)
			subleft += per_page
		if remainder != 0:
			# has a remainder, must handle it
			process_subdivision( \
				sbr, \
				subleft, \
				right, \
				overall_length, \
				files)
	else:
		quotient, remainder = divmod(num_files, per_page)
		for subpageno in xrange(per_page):
			process_subdivision( \
				sbr, \
				left + subpageno*quotient, \
				left + subpageno*quotient + quotient - 1, \
				overall_length, \
				files)
		if remainder != 0:
			# has a remainder, must handle it
			process_subdivision( \
				sbr, \
				left + quotient*per_page, \
				right, \
				overall_length, \
				files)
	sbr.write()
	return sbr

def main():
	files = sys.argv[1:]
	print '%s.html' % step_back(0, len(files) - 1, len(files), files).filename

main()