def item(data, feed=None, service=None):
    """
    Format an text section page for a feed subscription using data found in 
    its Opml feed entry and in its Rss file.

    @param data: Opml data
    @type data: dict
    @param feed: Rss data. Default dict.
    @type feed: dict
    @param service: Intialized soovee.regex object. Default None.
    @type service: obj
    @return:
    @rtype: basestring
    @raise TypeError: data or feed passed was not a dict
    """
    if not isinstance(data, dict) and not isinstance(feed, dict):
        raise TypeError('FormsItem missing dictionaries.')
    from soovee_lib.txtwrap import wraptext
    page = ['=' * 80, '\n'.join(wraptext('FEED TITLE: %s' % service.
        PRETITLE.sub('', data['title']))), '\n'.join(wraptext(
        'FEED PAGE: %s ' % data['htmlUrl'])), '\n'.join(wraptext(service.
        DELHTML.sub('', data['description'])))]
    for episode in feed['eps']:
        audiofile = '%s (%.2f MB)' % (episode['enclosure']['url'], service.
            TOMB(episode['enclosure']['length']))
        subpage = ['-' * 80, '\n'.join(wraptext('EPISODE TITLE: %s' %
            episode['title'], 4)), '\n'.join(wraptext('EPISODE AUTHOR: %s' %
            episode['itunes:author'], 4)), '\n'.join(wraptext(
            'EPISODE CATEGORY: %s' % episode['category'], 4)), '\n'.join(
            wraptext('EPISODE AUDIOFILE: %s' % audiofile, 4)), '\n'.join(
            wraptext(service.PREEPISODE.sub('', episode['description']), 4))]
        page.append('\n'.join(subpage))
    return '\n'.join(page)
