def METHOD_NAME(subparsers):
    user_parser = subparsers.add_parser('user',
                                        help='Manage posix users.  The organizationalUnit (by default "ou=people") needs '
                                             'to exist prior to managing users.')
    subcommands = user_parser.add_subparsers(help='action')
    list_parser = subcommands.add_parser('list', help='list')
    list_parser.set_defaults(func=list)
    get_parser = subcommands.add_parser('get', help='get')
    get_parser.set_defaults(func=get)
    get_parser.add_argument('selector', nargs='?', help='The term to search for')
    get_dn_parser = subcommands.add_parser('get_dn', help='get_dn')
    get_dn_parser.set_defaults(func=get_dn)
    get_dn_parser.add_argument('dn', nargs='?', help='The dn to get')
    create_user_parser = subcommands.add_parser('create', help='create')
    create_user_parser.set_defaults(func=create)
    populate_attr_arguments(create_user_parser, SINGULAR._must_attributes)
    modify_parser = subcommands.add_parser('modify', help='modify <add|delete|replace>:<attribute>:<value> ...')
    modify_parser.set_defaults(func=modify)
    modify_parser.add_argument('selector', nargs=1, help='The %s to modify' % RDN)
    modify_parser.add_argument('changes', nargs='+', help="A list of changes to apply in format: <add|delete|replace>:<attribute>:<value>")
    rename_parser = subcommands.add_parser('rename', help='rename the object')
    rename_parser.set_defaults(func=rename)
    rename_parser.add_argument('selector', help='The %s to modify' % RDN)
    rename_parser.add_argument('new_name', help='A new user name')
    rename_parser.add_argument('--keep-old-rdn', action='store_true', help="Specify whether the old RDN (i.e. 'cn: old_user') should be kept as an attribute of the entry or not")
    delete_parser = subcommands.add_parser('delete', help='deletes the object')
    delete_parser.set_defaults(func=delete)
    delete_parser.add_argument('dn', nargs='?', help='The dn to delete')