<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def prefix_index_page(config):
 """HTML index page for a specific prefix. The prefix seen by the client is obtained from config.client_prefix as opposed to the local server prefix in config.prefix. Also uses the identifiers(config) function to get identifiers available. Arguments: config - configuration object in which: config.client_prefix - URI path prefix seen by client config.host - URI host seen by client config.api_version - string for api_version config.manipulator - string manipulator type config.auth_type - string for auth type config.include_osd - whether OSD is included """

    title = "IIIF Image API services under %s" % (config.client_prefix)
    # details of this prefix handler
    body = '<p>\n'
    body += 'host = %s<br/>\n' % (config.host)
    body += 'api_version = %s<br/>\n' % (config.api_version)
    body += 'manipulator = %s<br/>\n' % (config.klass_name)
    body += 'auth_type = %s\n</p>\n' % (config.auth_type)
    # table of identifiers and example requests
    ids = identifiers(config)
    api_version = config.api_version
    default = 'native' if api_version < '2.0' else 'default'
    body += '<table border="1">\n<tr><th align="left">Image identifier</th>'
    body += '<th> </th><th>full</th>'
    if (config.klass_name != 'dummy'):
        body += '<th>256,256</th>'
        body += '<th>30deg</th>'
        if (config.include_osd):
            body += '<th> </th>'
    body += "</tr>\n"
    for identifier in sorted(ids):
        base = urljoin('/', config.client_prefix + '/' + identifier)
        body += '<tr><th align="left">%s</th>' % (identifier)
        info = base + "/info.json"
        body += '<td><a href="%s">%s</a></td>' % (info, 'info')
        suffix = "full/full/0/%s" % (default)
        body += '<td><a href="%s">%s</a></td>' % (base + '/' + suffix, suffix)
        if (config.klass_name != 'dummy'):
            suffix = "full/256,256/0/%s" % (default)
            body += '<td><a href="%s">%s</a></td>' % (base + '/' + suffix, suffix)
            suffix = "full/100,/30/%s" % (default)
            body += '<td><a href="%s">%s</a></td>' % (base + '/' + suffix, suffix)
            if (config.include_osd):
                body += '<td><a href="%s/osd.html">OSD</a></td>' % (base)
        body += "</tr>\n"
    body += "</table<\n"
    return html_page(title, body)