def METHOD_NAME(key=None, ret='all'):
    """
    returns a subtree of the token definition
    :param key: subsection identifier
    :type key: string
    :param ret: default return value, if nothing is found
    :type ret: user defined
    :return: subsection if key exists or user defined
    :rtype: dict or scalar
    """
    res = {'type': 'applspec',
           'title': 'Application Specific Password Token',
           'description': _('Application Specific Password: A token with a fixed password. Can be used '
                            'for certain applications or services.'),
           'init': {},
           'config': {},
           'user':  ["enroll"],
           # This tokentype is enrollable in the UI for...
           'ui_enroll': ["admin", "user"],
           'policy': {
               SCOPE.ENROLL: {
                   ACTION.MAXTOKENUSER: {
                       'type': 'int',
                       'desc': _("The user may only have this maximum number of application specific "
                                 "password tokens assigned."),
                       'group': GROUP.TOKEN
                   },
                   ACTION.MAXACTIVETOKENUSER: {
                       'type': 'int',
                       'desc': _("The user may only have this maximum number of active application specific"
                                 " password tokens assigned."),
                       'group': GROUP.TOKEN
                   }
               }
           },
           }
    # I don't think we need to define the lost token policies here...
    if key:
        ret = res.get(key)
    else:
        if ret == 'all':
            ret = res
    return ret