From: NN
Subject: NAME

.SH NAME
nn - efficient net news interface (No News is good news)

From: NN
Subject: SYNOPSIS

nn [ options ] [ newsgroup | +folder | file ]...
nn -g [ -r ]
nn -a0 [ newsgroup ]...

From: NN
Subject: DESCRIPTION

Net news is a world-wide information exchange service covering numerous topics
in science and every day life. Topics are organized in news\ groups, and these
groups are open for everybody to post articles on a subject related to the
topic of the group.

Nn is a `point-and-shoot' net news interface program, or a news reader for
short (not to be confused with the human news reader). When you use nn, you
can decide which of the many news groups you are interested in, and you can
unsubscribe to those which don't interest you. nn will let you read the new
(and old) articles in each of the groups you subscribe to using a menu based
article selection prior to reading the articles in the news group.

    When a news group is entered, nn will locate all the presently unread
articles in the group, and extract their sender, subject, and other relevant
information. This information is then rearranged, sorted, and marked in
various ways to give it a pleasant format when it is presented on the screen.

    This will be done very quickly, because nn uses the NOV database via the
NNTP XOVER command. The news server to use can be overridden by setting the
environment variable $NNTPSERVER to the name of the system (such as
news.newserver.com), or by setting the variable nntp-server (on the command
line only, since it is looked at before the init file), as
"nntp-server=news.some.domain"). If you use multiple servers, you probably
want to set the nn-directory and newsrc variables on the command line to an
alternate names as well, since some of the data files are server dependent. If
you are using a slow tcp link (such as ppp over a modem) and NNTP, see the
NOTES section at the end of this manual.

    When the article menu appears on the screen, nn will be in a mode called
selection mode. In this mode, the articles which seems to be interesting can
be selected by single keystrokes (using the keys a-z and 0-9). When all the
interesting articles among the ones presently displayed have been selected,
the space bar is hit, which causes nn to enter reading mode.

    In reading mode, each of the selected articles will be presented. You use
the space bar to go on to the next page of the current article, or to the next
article. Of course, there are all sorts of commands to scroll text up and
down, skip to the next article, responding to an article, decrypt an article,
and so on.

    When all the selected articles in the current group have been read, the
last hit on the space bar will cause nn will continue to the next group with
unread articles, and enter selection mode on that group.

From: NN
Subject: FREQUENTLY USED OPTIONS

nn accepts a lot of command line options, but here only the frequently used
options are described. Options can also be set permanently by including
appropriate variable settings in the init file described later. All options
are described in the section on Command Line Options towards the end of this
manual.

The frequently used command line options are:

.TP  -a0 Catch up on unread articles and groups. See the section "Catch up"
     below.

.TP  -g Prompt for the name of a news group or folder to be entered (with
     completion).

.TP  -r Used with -g to repeatedly prompt for groups to enter.

.TP  -lN Print only the first N lines of the first page of each article before
     prompting to continue. This is useful on slow terminals and modem lines
     to be able to see the first few lines of longer articles.

.TP  -sWORD Collect only articles which contain the string WORD in their
     subject (case is ignored). This is normally combined with the -x and -m
     options to find all articles on a specific subject.

.TP  -s/regexp Collect only articles whose subject matches the regular
     expression regexp. This is normally combined with the -x and -m options to
     find all articles on a specific subject.

.TP  -nWORD or -n/regexp Same as -s except that it matches on the sender's
     name instead of the article's subject. This is normally combined with the
     -x and -m options to find all articles from a specific author. It cannot
     be mixed with the -s option!

.TP  -i Normally searches with -n and -s are case independent. Using this
     option, the case becomes significant.

.TP  -m Merge all articles into one `meta group' instead of showing them one
     group at a time. This is normally used together with the -x and -s
     options to get all the articles on a specific subject presented on a
     single menu (when you don't care about which group they belong to). When
     -m is used, no articles will be marked as read.

.TP  -x[N] Present (or scan) all (or the last N) unread as well as read
     articles. When this option is used, nn will never mark unread articles as
     read (i.e. .newsrc is not updated).

.TP  -X Read/scan unsubscribed groups also. Most useful when looking for a
     specific subject in all groups, e.g.
           nn -mxX -sSubject all

.TP  news.group or file or +folder If none of these arguments are given, all
     subscribed news groups will be used. Otherwise, only the specified news
     groups and/or files will be collected and presented. In specifying a news
     groups, the following `meta notation' can be used:
     If the news group ends with a `.' (or `.all'), all subgroups of the news
     group will be collected, e.g.
           comp.sources. If a news group starts with a `.' (or `all.'), all the
     matching subgroups will be collected, e.g.
           .sources.unix The argument `all' identifies all (subscribed) news
     groups.

From: NN
Subject: COMMAND INPUT

In general, nn commands consist of one or two key-strokes, and nn reacts
instantly to the commands you give it; you don't have to enter return after
each command (except where explicitly stated).

Some commands have more serious effects than others, and therefore nn requests
you to confirm the command. You confirm by hitting the the y key, and reject
by hitting the n key. Some `trivial' requests may also be confirmed simply by
hitting space. For example, to confirm the creation of a save file, just hit
space, but if one or more directories also have to be created, you must enter
y.

Many commands will require that you enter a line of text, e.g. a file name or
a shell command. If you enter space as the first character on a line, the line
will be filled with a default value (if one is defined). For example, the
default value for a file name is the last file name you have entered, and the
default shell command is your previous shell command. You can edit this
default value as well as a directly typed text, using the following editing
commands. The erase, kill, and interrupt keys are the keys defined by the
current tty settings. On systems without job control, the suspend key will be
control-Z while it is the current suspend character on system with job
control.

.TP  erase
     Delete the last character on the line.

.TP  delete-word (normally ^W)
     Delete the last word or component of the input.

.TP  kill
     Delete all characters on the line.

.TP  interrupt and control-G
     Cancel the command which needs the input.

.TP  suspend Suspend nn if supported by the system. Otherwise, spawn an
     interactive shell.

.TP  return
     Terminate the line, and continue with the command.

Related variables: erase-key, flow-control, flush-typeahead, help-key,
kill-key, word-key.

From: NN
Subject: BASIC COMMANDS

There are numerous commands in nn, and most of them can be invoked by a single
keystroke. The descriptions in this manual are based on the standard bindings
of the commands to the keys, but it is possible to customize these using the
map command described later. For each of the keystroke commands described in
this manual, the corresponding command name will also be shown in curly
braces, e.g. {command}.

The following commands work in both selection mode and in reading mode. The
notation ^X means `control X':

.TP  ? {help} Help. Gives a one page overview of the commands available in the
     current mode.

.TP  ^L {redraw} Redraw screen.

.TP  ^R {redraw} Redraw screen (Same as ^L).

.TP  ^P {message} Repeat the last message shown on the message line. The
     command can be repeated to successively show previous messages (the
     maximum number of saved messages is controlled via the message-history
     variable.)

.TP  ! {shell} Shell escape. The user is prompted for a command which is
     executed by your favorite shell (see the shell variable). Shell escapes
     are described in detail later on.

.TP  Q {quit} Quit nn. When you use this command, you neither lose unread
     articles in the current group nor the selections you might have made
     (unless the articles are expired in the meantime of course).

.TP  V {version} Print release and version information.

.TP  :command {command} Execute the command by name. This form can be used to
     invoke any of nn's commands, also those which cannot be bound to a key
     (such as :coredump), or those which are not bound to a key by default
     (such as post and unshar).

Related and basic variables: backup, backup-suffix, confirm-auto-quit, expert,
mail, message-history, new-group-action, newsrc, quick-count.

From: NN
Subject: SELECTION MODE

In selection mode, the screen is divided into four parts: the header line
showing the name of the news group and the number of articles, the menu lines
which show the collected articles - one article per line, the prompt line
where you enter commands, and the message line where nn prints various
messages to you.

Each menu line begins with an article id which is a unique letter (or digit if
your screen can show more than 26 menu lines). To select an articles for
reading, you simply enter the corresponding id, and the menu line will be
high-lighted to indicate that the article is selected. When you have selected
all the interesting articles on the present menu, you simply hit space.

If there are more articles collected for the current group than could be
presented on one screenful of text, you will be presented with the next
portion of articles to select from. When you have had the opportunity to
select among all the articles in the group, hitting space will enter reading
mode.

If no articles have been selected in the current group, hitting space will
enter selection mode on the next news group, or exit nn if the current group
was the last news group with unread articles. It is thus possible to go
through ALL unread articles (without reading any of them) just by hitting
space a few times.

The articles will be presented on the menu using one of the following layouts:

.TP  0: x Name......... Subject.............. +123

.TP  1: x Name......... 123 Subject..............

.TP  2: x 123 Subject...................................

.TP  3: x Subject...........................................

.TP  4: x Subject........................................

Here x is the letter or digit that must be entered to select the article, Name
is the real name of the sender (or the mail address if the real name cannot be
found), Subject is the contents of the "Subject:" line in the article, and 123
is the number of lines in the article.

Layout 0 and 1 are just two ways to present the same information, while layout
2 and 3 are intended for groups whose articles have very long subject lines,
e.g. comp.sources.

    Layout 4 is a hybrid between layout 1 and 3. It will normally use layout 1,
but it will use layout 3 (with a little indentation) for menu lines where the
subject is longer than the space available with layout 1.

Layout 1 is the default layout, and an alternative menu line layout is
selected using the -L option or by setting the layout variable. Once nn is
started the layout can be changed at any time using the " key {layout}.

The Name is limited to 16 characters, and to make maximum use of this space,
nn will perform a series of simplifications on the name, e.g. changing first
names into initials, removing domain names from mail addresses (if the real
name is not found) etc. It does a good job, but some people on the net put
weird things into the From: field (or actually into their password file) which
result in nn producing quite cryptic, and sometimes funny "names".

One a usual 80 column terminal, the Subject is limited to about 60 characters
(75 in layout 3) and is thus only an approximation to the actual subject line
which may be much longer. To get as much out of this space, Re: prefixes (in
various forms) are recognized and replaced by a single `>' character (see the
re-layout variable).

    Since articles are sorted according to the subject, two or more adjacent
articles may share the same subject (ignoring any `>'s). In this case, only
the first article will show the subject of the article; the rest will only
show the `>' character in the subject field (or a `-' if there is no `>' at
the beginning of the line). A typical menu will thus only show each subject
once, saving a lot of time in scanning the news articles.

If consolidated menus (see section below) are enabled, adjacent articles
sharing the same subject will be shown with a single line on the menu
corresponding to the first of the articles. The number of articles with the
same subject will be shown as a braketed number in front of the subject, e.g.
with layout 1:
      x Name......... 123 [4] Subject.............. For further information see
the section on consolidated menus below.

Related variables: collapse-subject, columns, confirm-entry,
confirm-entry-limit, entry-report-limit, fsort, kill, layout, limit, lines,
long-menu, re-layout, repeat, slow-mode, sort, sort-mode, split,
subject-match-limit, subject-match-offset, subject-match-parts,
subject-match-minimum.

From: NN
Subject: ARTICLE ATTRIBUTES

While nn is running and between invocations, nn associates an attribute with
each article on your system. These attributes are used to differentiate
between read and unread articles, selected articles, articles marked for later
treatment, etc. Depending on how nn is configured, these attributes can be
saved between invocations of nn, or some of them may only be used while nn is
running.

The attribute is shown on the menu using either a single character following
the article id or by high-lighting the menu line, depending on the attribute
and the capabilities of the terminal. You can also change the attributes to
your own taste (see the attributes variable).

The attribute of an article can be changed explicitly using the selection mode
commands described below, or it will change automatically for example when you
have read or saved a selected article. If a command may change any article
attributes, it will be noted in the description of the command. The following
descriptions of the attributes will only mention the most important commands
that may set (or preserve) the attribute.

The following attributes may be associated with an article:

.TP  read Menu attribute "." - indicates that the article has been read or
     saved. When you leave the group, these articles will be marked
     permanently read, and are not presented the next time you enter the
     group.

.TP  seen Menu attribute "," - indicates that the article is unread, but that
     it has been presented on a menu. Depending on how nn is configured, these
     articles will automatically be marked read when you leave the group, they
     may remain seen, or they may just be unread the next time you enter the
     group (see the auto-junk-seen, confirm-junk-seen, and retain-seen-status
     variables).
     Only the commands continue (space) and read-skip (X) will mark unread
     articles on the current (or all) menu pages as seen when they are used.
     Other commands that scroll through the menu pages or enter reading mode
     will let unread articles remain unread.

.TP  unread Menu attribute " " - indicates an unread article. These articles
     were unread when you entered the group, and they may remain unread when
     you leave the group, unless they have been marked seen by the command
     that you used to leave the group or enter reading mode.

.TP  selected Menu line high-lighted (or menu attribute "*") - indicates that
     you have selected the article. If you leave the group, the selected
     articles will remain selected the next time you enter the group. When you
     have read a selected article, the attribute will automatically change to
     read.

.TP  auto-selected These articles have the same appearance as selected
     articles on the menu, and the only difference is that these articles have
     been selected automatically via the auto-selection facility rather than
     manually by you. Very few commands differentiate between these attributes
     and if they do, it is explicitly stated in this manual. The main
     difference is that these articles are only marked as unread when you
     leave the group (supposing they will also be auto-selected the next the
     group is entered). This simplifies the house-keeping between invocations
     of nn.

.TP  leave Menu attribute "+" - indicates that the article is marked for later
     treatment by the leave-article (l) command. These articles may be
     selected (on demand) when you have read all selected articles in a group.
     However, if you do not select them then immediately, they are stored as
     the leave-next attribute described below.

.TP  leave-next Menu attribute "=" - indicates that the article is marked for
     later treatment by the leave-next (L) command. This is a permanent
     attribute, which will remain on the article until you either read the
     article, change the attribute, or it is expired. So assinging this
     attribute to an article will effectively keep it unread until you do
     something. If the variable select-leave-next is set, nn will ask whether
     these articles should be selected on entry to a group (but naturally,
     doing so will change the leave-next attribute to select).

.TP  cancelled Menu attribute "#" - indicates that the article has been
     cancelled. This is mainly useful when tidying a folder; it is set by the
     cancel (C) command, and can be cleared by any command that change
     attributes, e.g. you can select and deselect the article.

.TP  killed Menu attribute "!" - indicates that the article has been killed
     (e.g. by the K {kill-select} command). Killed articles are immediately
     removed from the menu, so you should not normally see articles with this
     attribute. If you do, report it as a bug!

The attributes are saved in two files: .newsrc (read articles) and .nn/select
(other attributes). Plain unread articles are saved by not occurring in either
of these files. Both files are described in more detail later on.

Related variables: attributes, auto-junk-seen, confirm-junk-seen,
retain-seen-status, select-leave-next.

From: NN
Subject: SELECTION MODE COMMANDS

The primary purpose of the selection mode is of course to select the articles
to be read, but numerous other commands may also be performed in this mode:
saving of articles in files, replying and following up on articles,
mailing/forwarding articles, shell escapes etc.

    As described above, the selected articles are marked either by showing the
corresponding menu line in standout mode (reverse video), or if the terminal
does not have this capability by placing an asterisk (*) after the selection
letter or digit.

Most commands which are used to select articles will work as toggle commands.
If the article is not already selected, the selectedattribute on the
article(s), independent on the previous attribute. Otherwise, the article(s)
will be deselected and marked unread. Consequently, any article can be marked
unread simply be selecting and deselecting it.

During selection, the cursor will normally be placed on the article following
the last article whose attribute was changed (initially the first article).
The article pointed out by the cursor is called the current article, and the
following commands work relative to the current article and cursor position.

.TP  abc...z 01..9 {article N} The article with the given identification
     letter or digit is selected or deselected. The following article becomes
     the current article. If the variable auto-select-subject is set, all
     articles with the same subject as the given article are selected.

.TP  . {select} Select or deselect the current article and move the cursor to
     the next article.

.TP  , {line+1} Move the cursor to the next article. You can use the down
     arrow as well.

.TP  / {line-1} Move cursor to previous article. You can use the up arrow as
     well.

.TP  * {select-subject} Select or deselect all articles with same subject as
     current article. This will work across several menu pages if necessary.

.TP  -x {select-range} Select or deselect the range of articles between the
     current article and the article specified by x. For example you can
     select all articles from e to k by simply typing e-k.

The following commands may change the attributes on all articles on the
current menu page, or on all articles on all menu pages.

.TP  @ {select-invert}
     Reverse selections. All selected articles on the current page are
     deselected, and vice-versa. (Use the find command to select all
     articles.)

.TP  ~ {unselect-all} Deselect all auto-selected articles in the group (this
     works across all menu pages). If the command is executed twice, the
     selected articles will also be deselected.

.TP  + {select-auto} Perform auto-selections in the group (see the section on
     "auto kill/select" below).

.TP  = {find} Prompts for a regular expression, and selects all articles on
     the menu (all pages) which matches the regular expression. Depending on
     the variable select-on-sender matching is performed against the subject
     (default) or the sender of the articles. An empty answer (= return) will
     reuse the previous expression. Example: The command = . return will
     select all articles in the group.

.TP  J {junk-articles} This is a very versatile command which can be used to
     perform all sorts of attribute changes, either on individual articles,
     all articles on the current menu page, all articles with a specific
     attribute, or all available articles. To access all the functions of this
     command, the J key may have to be hit up to four times, to loop through
     different one-line menus. The full functionality of the junk-articles
     command is described in a separate section below.

.TP  L {leave-next} This is a specialized version of the generic J
     {junk-articles} command to set the leave-next attribute on a subset of
     the articles on the menu. It is also described further below.

The following commands move between the pages belonging to the same news group
when there are more articles than will fit on a single page. These commands
will not change any article attributes.

.TP  > {page+1} Goto next menu page.

.TP  < {page-1} Goto previous menu page, or to last menu page if on first menu
     page.

.TP  $ {page=$} Goto last menu page.

.TP  ^ {page=1} Goto first menu page.

The following commands are used to enter reading mode for the selected
articles, and to move between news groups (in selection mode). They may change
article attributes if noted below.

.TP  space {continue} Continue to next menu page, or if on last menu page,
     read the selected articles. If no articles have been selected, continue
     to the next news group. The unread articles on the current menu page will
     automatically be marked seen.

.TP  return {continue-no-mark} Identical to the continue command, except that
     the unread articles on the current menu page will remain unread. (The
     newline key has the same effect).

.TP  Z {read-return} Enter reading mode immediately with the currently
     selected articles. When all articles have been read, return to selection
     mode in the current group. It will mark selected articles read as they
     are read, but unread articles are not normally changed (can be controlled
     with the variable marked-by-read-return.)

.TP  X {read-skip} Mark all unmarked articles seen on all menu pages (or the
     pages defined by the marked-by-read-skip variable), and enter reading
     mode immediately with the currently selected articles. As the selected
     articles are read, they are marked read. When all selected articles have
     been read, nn will enter selection mode in the next news group. When no
     articles are selected, it goes directly to the next group. This can be
     used to skip all the articles in a large news group without having to go
     through all the menu pages.

If you don't want to read the current group now, but want to keep it for
later, you can use the following commands which will only mark seen and read
articles as read. Currently selected articles will still be selected the next
time you enter the group. None of these commands will change any attributes
themselves (by default).

.TP  N {next-group} Go forward to the next group in the presentation sequence.
     If the variable marked-by-next-group is set articles on the menu can
     optionally be marked seen

.TP  P {previous} Go back to the previous group. This command will enter
     selection mode on the last active group (two P commands in sequence will
     bring you to the current group). If there are still some unread articles
     in the group, only those articles will be shown. Otherwise, all the
     articles which were unread when nn was invoked will be shown marked with
     the read attribute (which can be changed as usual).

As described in the "Article Attributes" section, the read and seen articles
will normally be marked read when you leave the group, and these articles are
not shown the next time you enter the group.

In all releases prior to release 6.4, it was impossible to have individual
articles in a group marked unread when you left a group, and the default
behaviour of release 6.4 onwards will closely match the traditional behaviour.
This means that the seen and read articles are treated alike for most
practical purposes with the default variable settings.

If you don't like nn to silently mark the seen articles read, you can set the
variable confirm-junk-seen to get nn to prompt you for confirmation before
doing this, or you can unset the variable auto-junk-seen to simply keep the
seen articles for the next time you enter the group. You then have to use the
J {junk-articles} to mark articles read.

Using return {continue-no-mark} will also allow you to keep articles unread
rather than marking them seen when scrolling through the menu pages and
entering reading mode. If this is your preferred reading style, you can remap
space to this command.

Related variables: auto-junk-seen, auto-preview-mode, auto-select-subject,
case-fold-search, confirm-auto-quit, confirm-entry, confirm-junk-seen,
marked-by-next-group, marked-by-read-return, marked-by-read-skip,
retain-seen-status, select-on-sender.

From: NN
Subject: CONSOLIDATED MENUS

Normally, nn will use one menu line for each article, so if there are many
articles with identical subjects, each menu page will only contain a few
different subjects. To have each subject occur only once on the menu, nn can
operate with consolidated menus by setting the variable consolidated-menu.

When consolidated menus are used, nn operates with two kinds of subjects: open
and closed.

An open subject is a subject which is shown in the traditional way with one
menu line for each article with the given subject. In other words, when
consolidated menus are not used, all subjects are open (by default).

A closed subject is a multi-article subject which is presented by a single
menu line. This line will be the normal menu line for the first (oldest)
article with the subject, but with the subject field annotated with a
bracketed number showing the number of articles with that subject, e.g.
      a Kim F. Storm 12 [4] Future plans for nn
      b.Kim F. Storm 43 [3] More plans for nn
In this example, there are four unread articles with subject `a' of which the
first is posted by me and has 12 lines. The rest of the articles are hidden,
and will only be shown on request. The `.' marker on subject `b' shows that
all three articles within that subject have been read (or seen).

To select (or deselect) ALL the articles within a closed subject, simply
select the article shown on the menu; this will automatically select (or
deselect) the rest (see auto-select-closed). When all the unread articles
within a closed subject are selected, the menu line will be high-lighted.

If you want to view the individual articles in a subject (maybe to select
individual articles), you can open the subject with the commands:

.TP  (x Open subject x on menu.

.TP  (( Open current subject.

When you have completed viewing the opened subject, you can close it again
using the commands:

.TP  )x Close subject x on menu (x is any article with the subject).

.TP  )) Close current subject.

In the basic layout of the menu line for a closed subject as shown above, ALL
articles in the closed subject are supposed to be either:

.TP  unread The menu line is not high-lighted.

.TP  selected Menu line is fully high-lighted (if all UNREAD are selected).

.TP  read/seen There is a `.' (read attribute) following the article id.

If neither of these cases apply, i.e. there is a mixture of unread, selected,
and seen/read articles, the bracketed number will have one of the following
formats:

.TP  [U:T] There are U unread articles of T total (U<T).

.TP  [S/T] There are S selected articles of T total (S<U=T).

.TP  [S/U:T] There are S selected of U unread of T total (S<U<T).

If there are any selected articles (S>0), the information between the brackets
will be high-lighted (to show that something is selected, but not all the
unread articles).

Notice: Consolidated menus only work with the `subject' and `lexical' sorting
methods.

Variables related to consolidated menus are: auto-select-closed,
consolidated-menu, counter-delim-left, counter-delim-right, counter-padding,
save-closed-mode.

From: NN
Subject: THE JUNK-ARTICLES AND LEAVE-NEXT COMMANDS

The J {junk-articles} command is a very flexible command which can perform all
sorts of attribute changes, either on individual articles, all articles on the
current menu page, all articles with a specific attribute, or all available
articles.

To access all the functions of this command, the J key may have to be hit up
to four times, to loop through different one-line menus:

.TP  Mark Read This submenu allows you to mark articles read.

.TP  Unmark This submenu allows you to mark articles unread.

.TP  Select This submenu allows you to select articles based on their
     attribute.

.TP  Kill This submenu allows you to mark articles read and remove them from
     the menu based on their attribute.

The L {leave-next} command is an extension of the J command with a fifth menu:

.TP  Leave This menu allows you to mark articles for later handling with the
     leave-next attribute which will keep the article unread until you
     explicitly change the attribute (e.g. by reading it) or it is expired.

For each of these submenus, nn will list the most plausible choices you may
use, but all of the following answers can be used at all submenus. When you
have entered a choice, nn will afterward ask whether the change should be made
to all menu pages or only the current page.

.TP  J Show next submenu.

.TP  L Change attribute on all leave articles.

.TP  N Change attribute on all leave-next articles.

.TP  R Change attribute on all read articles.

.TP  S Change attribute on all seen articles.

.TP  U Change attribute on all unmarked (i.e. unread) articles.

.TP  A Change attribute on all articles no matter their current attribute.

.TP  * Change attribute on all selected articles on the current page.

.TP  + Change attribute on all selected articles on all pages.

.TP  a-z0-9 Change attribute on one or more specific articles on the current
     page. You end the list of articles by a space or by using one of the
     other choices described above.

.TP  . Change attribute on current article.

.TP  , / Move the current article down or up the menu without changing any
     attributes.

From: NN
Subject: READING MODE COMMANDS

In reading mode, the selected articles are presented one page at a time. To
get the next page of an article, simply hit space, and when you are on the
last page of an article, hit space to get to the next selected article.
Articles are normally marked read when you go to the next article, while going
back to the menu, quitting nn, etc. will retain the attribute on the current
article.

When you are on the last page of the last article, hit space to enter
selection mode on the next group (or the current group if reading mode was
entered using the Z command).

To read an article, the following text scrolling commands are available:

.TP  space {continue} Scroll one page forward or continue with the next
     article or group as described above.

.TP  backspace / delete {page-1} Go one page backwards in article.

.TP  d {page+1/2} Scroll one half page forward.

.TP  u {page-1/2} Go one half page backwards.

.TP  return {line+1} Scroll one line forward in the article.

.TP  tab {skip-lines} Skip over lines starting with the same character as the
     last line on the current page. This is useful to skip over included text
     or to the next file in a shell archive.

.TP  ^ {page=1} Move to the first page (excluding the header) of the article.

.TP  $ {page=$} Move to the last page of the article.

.TP  gN {line=@} Move to line N in the article.

.TP  /regexp {find} Search forward for text matching the regular expression
     regexp in the article. If a matching text is found, it will be
     high-lighted.

.TP  . {find-next} Repeat search for last regular expression.

.TP  h {page=0} Show the header of the article, and continue from the top of
     the article.

.TP  H {full-digest} If the current article is extracted from a digest, show
     the entire digest article including its header. Another H command will
     return to the current subarticle.

.TP  D {rot13} Turn rot13 (caesar) decryption on and off for the current
     article, and redraw current page. If the article is saved while it is
     decrypted on the screen, it will be saved in decrypted form as well!

.TP  c {compress} Turn compression on and off for the current article and
     redraw current page. With compression turned on, multiple spaces and tabs
     are shown as a single space. This makes it much easier to read right
     justified text which separate words with several spaces. (See also the
     compress variable)

The following commands are used to move among the selected articles.

.TP  n {next-article} Move to next selected article. This command skips the
     rest of the current article, marks it read, and jumps directly to the
     first page of the next selected article (or to the next group if it was
     the last selected article).

.TP  l {leave-article} Mark the current article with the leave attribute and
     continue with the next selected article. When all the selected articles
     in the current group have been read, these left over articles can be
     automatically selected and shown once more, or the treatment can be
     postponed to the next time you enter the group.
           This is particularly useful if you see an article which you may want
     to respond to unless one the following articles is already saying what
     you intended to say.

.TP  L {leave-next} Mark the current article with the leave-next attribute and
     continue with the next selected article.

.TP  p {previous} Goto previous article.

.TP  k {next-subject} Kill subject. Skips rest of current article, and all
     following articles with the same subject. The skipped articles are marked
     read. To kill a subject permanently use the K command.

.TP  * {select-subject} Show next article with same subject (even if it is not
     selected). This command will select all following articles with the same
     subject as the current article (similar to the `*' command in selection
     mode). This can be used to select only the first article on a subject in
     selection mode, and then select all follow-ups in reading mode if you
     find the article interesting.

.TP  a {advance-article} Goto the following article on the menu even if it is
     not selected. This command skips the rest of the current article and
     jumps directly to the first page of the next article (it will not skip to
     the next group if it is the last article). The attribute on the current
     article will be restored, except for the unread attribute which will be
     changed to seen.

.TP  b {back-article} Goto the article before current article on the menu even
     if it is not selected. This is similar to the a command, except for the
     direction.

The following commands perform an immediate return from reading mode to
selection mode in the current group or skip to the next group.

.TP  = {goto-menu} Return to selection mode in the current group (think of =
     as the "icon" of the selection menu). The articles read so far will be
     marked read.

.TP  N {next-group} Skip the rest of the selected and unread articles in the
     current group and go directly to the next group. Only the read (and seen)
     articles in the current group are marked as read.

.TP  X {read-skip} Mark all articles in the current group as read and go
     directly to the next group. (You will be asked to confirm this command.)

Related variables: case-fold-search, charset, compress, data-bits, date,
header-lines, mark-overlap, monitor, overlap, scroll-clear-page, stop,
trusted-escape-codes, wrap-header-margin.

From: NN
Subject: PREVIEWING ARTICLES IN SELECTION MODE

In selection mode, it is possible to read a specific article on the menu
without entering reading mode for all the selected articles on the menu. Using
the commands described below will enter reading mode for one article only, and
then return to the menu mode immediately after (depending on the setting of
the preview-continuation variable).

    If there are more than 5 free lines at the bottom of the menu screen, nn
will use that space to show the article (a minimal preview window can be
permanently allocated with the window variable). Otherwise, the screen will be
cleared to show the article.

    After previewing an article, it will be marked read (if the
preview-mark-read variable is set), and the following article will become the
current article.

.TP  %x {preview} Preview article x.

.TP  %% {preview} Preview the current article.

When the article is being shown, the following reading mode commands are very
useful:

.TP  = {goto-menu} Skip the rest of the current article, and return to menu
     mode.

.TP  n {next-article} Skip the rest of the current article, and preview the
     next article.

.TP  l {leave-article} Mark the article as selected (!) on the menu for
     handling later on. Then skip the rest of the current article, and preview
     the next article.

.TP  %y {preview} Preview article y .

If the variable auto-preview-mode is set, just hitting the article id in menu
mode will enter preview mode on the specified article.

Related variables: auto-preview-mode, min-window, preview-continuation,
preview-mark-read, window.

From: NN
Subject: SAVING ARTICLES

The following commands are used to save articles in files, unpack archives,
decode binaries, etc. It is possible to use the commands in both reading mode
to save the current article and in selection mode to save one or more articles
on the menu.

The saved articles will be appended to the specified file(s) followed by an
empty line each. Both files and directories will be created as needed. When an
article has been saved in a file, a message reporting the number of lines
saved will be shown if the save-report variable is set (default on).

.TP  S {save-full} Save articles including the full article header.

.TP  O {save-short} Save articles with a short header containing only the name
     of the sender, the subject, and the posting date of the article.

.TP  E {save-header} Save only the header of the articles.

.TP  W {save-body} Write article without a header.

.TP  :print {print} Print article. Instead of a file name, this command will
     prompt for the print command to which the current article will be piped.
     The default print command is specified at compile time, but it can be
     changed by setting the printer variable. The output will be identical to
     that of the O command.

.TP  :patch {patch} Send articles through patch(1) (or the program defined in
     the patch-command variable). Instead of a file name, you will be prompted
     for the name of a directory in which you want the patch command to be
     executed. nn will then pipe the body of the article through the patch
     command.
           The output from the patch process will be shown on the screen and
     also appended to a file named Patch.Result in the patch directory.

.TP  :unshar {unshar} Unshar articles. You will be prompted for the name of a
     directory in which you want nn to unshar the articles. nn will then pipe
     the proper parts of the article body into a Bourne Shell whose working
     directory will be set to the specified directory.
           During the unpacking, the normal output from the unshar process will
     appear on the screen, and the menu or article text will be redrawn when
     the process is finished.
           The output is also appended to a file named Unshar.Result in the
     unshar directory.
           The file specified in unshar-header-file (default "Unshar.Headers")
     in the unshar directory will contain the header and initial text (before
     the shar data) from the article. You can use the `G' {goto-group} command
     to look at the Unshar.Headers file.

.TP  :decode {decode} Decode uuencoded articles into binary files. You will be
     prompted for the name of a directory in which you want nn to place the
     decoded binary files (the file names are taken from the uuencoded data).
           nn will combine several articles into single files as needed, and
     you can even decode unrelated packages (into the same directory) with one
     decode command.
           To be able to decode a binary file which spans several articles, nn
     may have to ignore lines which fail the normal sanity checks on uuencoded
     data instead of treating them as transmission errors. Consequently, it is
     strongly recommended to check the resulting decoded file using the
     checksum which is normally contained in the original article. (Actually,
     you are also supposed to do this after decoding with a stand-alone
     uudecode program).
           The header and initial information in the decoded articles are saved
     in the file specified in decode-header-file (default "Decode.Headers") in
     the same directory as the decoded files.
           If decode-skip-prefix is non-null, :decode will attempt to ignore up
     to that many characters on each line to find the encoded data. This is
     particularly useful in some binaries groups where files are both
     uuencoded and packed with shar; nn will ignore the prefix added to each
     line by shar, and thus be able to unshar, concatenate, and decode
     multi-part postings automatically.

In reading mode, the following keys can also be used to invoke the save
commands:

.TP  s Same as S.

.TP  o Same as O.

.TP  w Same as W.

.TP  P Same as :print.

The save commands will prompt for a file name which is expanded according to
the rules described in the section on file name expansion below. For each
group, it is possible to specify a default save file in the init file, either
in connection with the group presentation sequence or in a separate save-files
section (see below). If a default save file is specified for the group, nn
will show this on the prompt line when it prompts for the file name. You can
edit this name as usual, but if you kill the entire name immediately, nn will
replace the default name with the last file name you entered. If you kill this
as well, nn will leave you with a blank line.

If the quick-save variable is set, nn will only prompt for a save file name
when the current article is inside a folder; otherwise, the default save file
defined in the init file will be used unconditionally.

If the file (and directories in the path) does not exist, nn will ask whether
the file (and the directories) should be created.

If the file name contains an asterisk, e.g.
      part*.shar nn will save each of the articles in uniquely named files
constructed by replacing the asterisk by numbers from the sequence 1, 2, 3,
etc. The format of the string that replaces the * can be changed with the
save-counter variable, and the first number to use can be changed via
save-counter-offset.

    In selection mode, nn will prompt you for the identifier of one or more
articles you want to save. When you don't want to save more articles, just hit
space. The saved articles will be marked read.

If you enter an asterisk `*' when you are prompted for an article to save, nn
will automatically save all the selected articles on the current menu page and
mark them read.

Likewise, if you enter a plus `+', nn will save all the selected articles on
all menu pages and mark them read.

This is very useful to unpack an entire package using the :unshar and :decode
commands. It can also be used in combination with the save selected articles
feature to save a selection of articles in separate, successively numbered
files. But do not confuse these two concepts! The S* and S+ commands can be
used to save the selected articles in a single file as well as in separate
files, and the save in separate files feature can be used also when saving
individual articles, either in the selection mode, or in the article reading
mode.

When articles are saved in a file with a full or partial header, any header
lines in the body of the article will be escaped by a tilde (e.g. ~From: ...)
to enable nn to split the folder into separate articles. The escape string can
be redefined via the embedded-header-escape variable.

Articles can optionally be saved in MAIL or MMDF compatible format by setting
the mail-format and mmdf-format variables. These variables only specify the
format used when creating a new folder, while appending to an existing folder
will be done in the format of the folder (unless folder-format-check is
false).

Related variables: confirm-append, confirm-create, decode-header-file,
decode-skip-prefix, default-save-file, folder-save-file, edit-patch-command,
edit-print-command, edit-unshar-command, folder, folder-format-check,
mail-format, mmdf-format, patch-command, printer, quick-save, save-counter,
save-counter-offset, save-report, suggest-default-save, unshar-command,
unshar-header-file.

From: NN
Subject: FOLDER MAINTENANCE

When more than one article is saved in a folder, nn is able to split the
folder, and each article in the folder can be treated like a separate article.

This means that you can save, decode, reply, follow-up, etc. just as with the
original article.

You can also cancel (delete) individual articles in a folder using the normal
C {cancel} command described later. When you quit from the folder, you will
then be given the option to remove the cancelled articles from the folder.

The original folder is saved in a file named `BackupFolder~' in the .nn
directory (see the backup-folder-path variable) by renaming or copying the old
folder as appropriate. When the folder has been compressed, the backup folder
will be removed unless the variable keep-backup-folder is set.

If all articles in a folder are cancelled, the folder will be removed or
truncated to zero length (whatever is allowed by directory and file
permissions). In this case no backup folder is retained even when
keep-backup-folder is set!

If the variable trace-folder-packing is set, nn will show which articles are
kept and which are removed as the folder is rewritten.

Folders are rewritten in the format of the original folder, i.e. the
mail-format and mmdf-format variables are ignored.

Related variables: backup-folder-path, keep-backup-folder,
trace-folder-packing.

From: NN
Subject: FILE NAME EXPANSION

When the save commands prompts for a file name, the following file name
expansions are performed on the file name you enter:

.TP  +folder The + is replaced by the contents of the folder variable (default
     value "~/News/") resulting in the name of a file in the folder directory.
     Examples:
           +emacs, +nn, +sources/shar/nn

.TP  + A single plus is replaced by the expansion of the file name contained
     in the default-save-file variable (or by folder-save-file when saving
     from a folder).

.TP  ~/file The ~ is replaced by the contents of the environment variable
     HOME, i.e. the path name of your home directory. Examples:
           ~/News/emacs, ~/News/nn, ~/src/shar/nn

.TP  ~user/file The ~user part is replaced by the user's home directory as
     defined in the /etc/passwd file.

.TP  |command-line Instead of writing to a file, the articles are piped to the
     given shell (/bin/sh) command-line. Each save or write command will
     create a separate pipe, but all articles saved or written in one command
     (in selection mode) are given as input to the same shell command.
     Example:
           | pr | lp This will print the articles on the printer after they
     have been piped through pr.
           It is possible to create separate pipes for each saved article by
     using a double pipe symbol in the beginning of the command, e.g.
           || cd ~/src/nn ; patch

The following symbols are expanded in a file name or command:

.TP  $F will be expanded to the name of the current group with the periods
     replaced by slashes, e.g. rec/music/synth.

.TP  $G will be expanded to the name of the current group.

.TP  $L will be expanded to the last component of the name of the current
     group. You may use this to create default save file names like +src/$L in
     the comp.sources groups.

.TP  $N will be expanded to the (local) article number, e.g. 1099. In
     selection mode it is only allowed at the end of the file name!

.TP  $(VAR) is replaced by the string value of the environment variable VAR.

Using these symbols, a simple naming scheme for `default folder name' is +$G
which will use the group name as folder name. Another possibility is +$F/$N.

As mentioned above, you can also instruct nn to save a series of files in
separate, unique files. All that is required is that the file name contains an
asterisk, e.g.
      +src/hype/part*.shar This will cause each of the articles to be saved in
separate, unique files named part1.shar, part2.shar, and so on, always
choosing a part number that results in a unique file name (i.e. if part1.shar
did already exist, the first article would be saved in part2.shar, the next in
part3.shar, and so on).

Related variables: default-save-file, folder, folder-save-file, save-counter,
save-counter-offset.

From: NN
Subject: FILE AND GROUP NAME COMPLETION

When entering a file name or a news group name, a simple completion feature is
available using the space, tab, and ? keys.

Hitting space anywhere during input will complete the current component of the
file name or group name with the first available possibility.

If this possibility is not the one you want, keep on hitting space until it
appears.

When the right completion has appeared, you can just continue typing the file
or group name, or you can hit tab to fix the current component, and get the
first possibility for the next component, and then use space to go through the
other possible completions.

The ? key will produce a list of the possible completions of the current
component. If the list is too long for the available space on screen, the key
can be repeated to get the next part of the list.

The current completion can be deleted with the erase key.

The default value for a file name is the last file name you have entered, so
if you enter a space as the first character after the prompt, the last file
name will be repeated (and you can edit it if you like). In some cases, a
string will already be written for you in the prompt line, and to get the
default value in these cases, use the kill key. This also means that if you
neither want the initial value, nor the default value, you will have to hit
the kill twice to get a clean prompt line.

Related variables: comp1-key, comp2-key, help-key, suggest-default-save.

From: NN
Subject: POSTING AND RESPONDING TO ARTICLES

In both selection mode and reading mode you can post new articles, post
follow-ups to articles, send replies to the author of an article, and you can
send mail to another user with the option of including an article in the
letter. In reading mode, a response is made to the current article, while in
selection mode you will be prompted for an article to respond to.

The following commands are available (the lower-case equivalents are also
available in reading mode):

.TP  R {reply} Reply through mail to the author of the article. This is the
     preferred way to respond to an article unless you think your reply is of
     general interest.

.TP  F {follow} Follow-up with an article in the same newsgroup (unless an
     alternative group is specified in the article header). The distribution
     of the follow-up is normally the same as the original article, but this
     can be modified via the follow-distribution variable.

.TP  M {mail} Mail a letter or forward an article to a single recipient. In
     selection mode, you will be prompted for an article to include in your
     letter, and in reading mode you will be asked if the current article
     should be included in the letter. You will then be prompted for the
     recipient of the letter (default recipient is yourself) and the subject
     of the letter (if an article is included, you may hit space to get the
     default subject which is the subject of the included article).
           The header of the article is only included in the posted letter if
     it is forwarded (i.e. not edited), or if the variable include-full-header
     is set.

.TP  :post {post} Post a new article to any newsgroup. This command will
     prompt you for a comma-separated list of newsgroups to post to (you
     cannot enter a space because space is used for group name completion as
     described below).
           If you enter ? {help-key} as the first key, nn will show you a list
     of all available news groups and their purpose. While paging through this
     list, you can enter q to quit looking at the list. You can also enter /
     followed by a regular expression (typically a single word) which will
     cause nn to show a (much shorter) list containing only the lines matching
     the regular expression.
           Normally, you will be prompted for the distribution of the article
     with the default take from default-distribution, but this can be changed
     via the post-distribution variable.

Generally, nn will construct a file with a suitable header, optionally include
a copy of the article in the file with each non-empty line prefixed by a `>'
character (except in mail mode), and invoke an editor of your choice (using
the EDITOR environment variable) on this file, positioning you on the first
line of the body of the article (if it knows the editor).

    When you have completed editing the message, it will compare it to the
unedited file, and if they are identical (i.e. you did not make any changes to
the file), or it is empty, the operation is cancelled. Otherwise you will be
prompted for an action to take on the constructed article (enter first letter
followed by return, or just return to take the default action):
      a)bort c)c e)dit h)old i)spell m)ail p)ost r)eedit s)end v)iew w)rite
7)bit
      Action: (post article)
You now have the opportunity to perform one of the following actions:

    a    throw the response away (will ask for confirmation),
    c    mail a copy of a follow-up to the poster of the article,
    e    edit the file again,
    h    hold response for later completion,
    i    run an (interactive) spell-checker on the text,
    m    mail a (blind) copy to a specified recipient,
    n    same as abort (no don't post),
    p    post article (same as send),
    r    throw away the edited text and edit the original text,
    s    send the article or letter,
    v    view the article (through the pager),
    w    append it to a file (before you send it),
    y    confirm default answer (e.g. yes post it), or
    7    strip the high-order bit from all characters in the message

If you have selected a 7-bit character set (this is determined by the values
of the charset and data-bits variables), nn will not allow you to post an
article or send a letter whose body contains characters with the high-order
bit set. It will warn you after you have first edited the message and                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            