'\" t
.\" Title: fldigi
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1
.\" Date: 04/30/2019
.\" Manual: \ \&
.\" Source: \ \&
.\" Language: English
.\"
.TH "FLDIGI" "1" "04/30/2019" "\ \&" "\ \&"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
fldigi \- digital modem program for hamradio operators
.SH "SYNOPSIS"
.sp
\fBfldigi\fR [\fIOPTIONS\fR]
.SH "DESCRIPTION"
.sp
\fBFldigi\fR is a cross\-platform multi\-modem program for most of the digital modes used by radio amateurs today: CW, PSK, MFSK, MT\-63, RTTY, Hellschreiber, DominoEX, Olivia, THOR and Throb are all supported\&. It can also help calibrate a sound card to a time signal and do on\-air frequency measurement tests\&. Fldigi features basic rig control, logging, and contest operation, \(lqpanoramic\(rq PSK decoding, a PSK Reporter client, and remote control via XML\-RPC\&.
.SH "OPTIONS"
.sp
Long options begin with two hyphens and are handled by fldigi\&. The option names may be abbreviated to any unambiguous substring, and the option argument may be separated from the name by a space or equals sign, as per getopt(3)\&.
.sp
Short options begin with a single hyphen and are passed directly to FLTK\&. They may be abbreviated only as indicated\&.
.PP
\fB\-\-config\-dir\fR \fIDIRECTORY\fR
.RS 4
Look for and store configuration files in directory
\fIDIRECTORY\fR, which is created if it does not exist\&. Defaults to \(lq$HOME/\&.fldigi\(rq\&.
.RE
.PP
\fB\-\-rx\-ipc\-key\fR \fIKEY\fR
.RS 4
Set the receive message queue key\&. May be given in hex if prefixed with \(lq0x\(rq\&. Defaults to \(lq9876\(rq or \(lq0x2694\(rq\&.
.RE
.PP
\fB\-\-tx\-ipc\-key\fR \fIKEY\fR
.RS 4
Set the transmit message queue key\&. May be given in hex if prefixed with \(lq0x\(rq\&. Defaults to \(lq6789\(rq or \(lq0x1a85\(rq\&.
.RE
.PP
\fB\-\-arq\-server\-address\fR \fIHOSTNAME\fR
.RS 4
Set the ARQ TCP server address\&. Defaults to \(lq127\&.0\&.0\&.1\(rq\&.
\fIHOSTNAME\fR
may be any
\fInode name\fR
string accepted by
getaddrinfo(3)\&.
.RE
.PP
\fB\-\-arq\-server\-port\fR \fIPORT\fR
.RS 4
Set the ARQ TCP server port\&. Defaults to \(lq7322\(rq\&.
\fIPORT\fR
may be any
\fIservice name\fR
string accepted by
getaddrinfo(3)\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
The \fI\-\-xmlrpc\-*\fR options are only available if fldigi was built with XML\-RPC support\&.
.sp .5v
.RE
.PP
\fB\-\-xmlrpc\-server\-address\fR \fIHOSTNAME\fR
.RS 4
Set the XML\-RPC server address\&. Defaults to \(lq127\&.0\&.0\&.1\(rq\&.
.RE
.PP
\fB\-\-xmlrpc\-server\-port\fR \fIPORT\fR
.RS 4
Set the XML\-RPC server port\&. Defaults to \(lq7362\(rq\&.
.RE
.PP
\fB\-\-xmlrpc\-allow\fR \fIREGEX\fR
.RS 4
Allow only the methods whose names match
\fIREGEX\fR\&.
\fIREGEX\fR
is a POSIX extended regular expression\&.
.RE
.PP
\fB\-\-xmlrpc\-deny\fR \fIREGEX\fR
.RS 4
Allow only the methods whose names do not match
\fIREGEX\fR\&.
.RE
.PP
\fB\-\-xmlrpc\-list\fR
.RS 4
List all available XML\-RPC methods and exit\&. May be preceded by the
\fI\-\-xmlrpc\-allow\fR
or
\fI\-\-xmlrpc\-deny\fR
options to verify their effect\&.
.RE
.PP
\fB\-\-cpu\-speed\-test\fR
.RS 4
Perform the CPU speed test that is normally done when fldigi is run without an existing configuration directory\&. Results are shown in the event log and options may be changed to the recommended values for the measured CPU speed\&.
.RE
.PP
\fB\-\-noise\fR
.RS 4
Unhide controls for adding noise to the transmitted signal\&.
.RE
.PP
\fB\-\-wfall\-only\fR
.RS 4
Hide all main window widgets except the menu bar and waterfall (with its associated controls)\&. Meant to be used with external programs that control fldigi with XML\-RPC\&.
.RE
.PP
\fB\-\-debug\-level\fR \fILEVEL\fR
.RS 4
Set the event log verbosity\&.
\fILEVEL\fR
is clamped to the range [0,5]; for
\fIQuiet\fR,
\fIError\fR,
\fIWarning\fR,
\fIInfo\fR,
\fIVerbose\fR
and
\fIDebug\fR\&. Defaults to \(lq3\(rq (\fIInfo\fR)\&.
.RE
.PP
\fB\-\-version\fR
.RS 4
Print version information and exit\&.
.RE
.PP
\fB\-\-build\-info\fR
.RS 4
Print build information and exit\&.
.RE
.PP
\fB\-\-help\fR
.RS 4
Print options summary and exit\&.
.RE
.SS "Standard FLTK options"
.PP
\fB\-bg, \-background\fR \fICOLOUR\fR
.RS 4
Set the background colour\&.
.RE
.PP
\fB\-bg2, \-background2\fR \fICOLOUR\fR
.RS 4
Set the secondary (text) background colour\&.
.RE
.PP
\fB\-di, \-display\fR \fIDISPLAY\fR
.RS 4
Specifies the X server to connect to; see
X(7)\&.
.RE
.PP
\fB\-dn, \-dnd\fR or \fB\-nodn, \-nodnd\fR
.RS 4
Enable or disable drag and drop copy and paste in text fields\&.
.RE
.PP
\fB\-fg, \-foreground\fR \fICOLOUR\fR
.RS 4
Set the foreground colour\&.
.RE
.PP
\fB\-g, \-geometry\fR \fIGEOMETRY\fR
.RS 4
Set the initial window size and position\&.
\fBFldigi may not honour this option\fR\&.
.RE
.PP
\fB\-i, \-iconic\fR
.RS 4
Start fldigi in iconified state\&.
\fBFldigi may not honour this option\fR\&.
.RE
.PP
\fB\-k, \-kbd\fR or \fB\-nok, \-nokbd\fR
.RS 4
Enable or disable visible keyboard focus in non\-text widgets\&.
.RE
.PP
\fB\-na, \-name\fR \fICLASSNAME\fR
.RS 4
Set the window class\&. Defaults to \(lqFldigi\(rq\&.
.RE
.PP
\fB\-ti, \-title\fR \fIWINDOWTITLE\fR
.RS 4
Set the window title\&. Defaults to \(lqfldigi \- \(rq\&.
.RE
.SS "Additional UI options"
.PP
\fB\-\-font\fR \fIFONT[:SIZE]\fR
.RS 4
Set the widget font and (optionally) size\&. Defaults to \(lqsans:12\(rq\&.
.RE
.SS "Options useful to developers"
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
The \-\-benchmark\-* options are only enabled if fldigi was built (exclusively) for benchmarking and batch decoding\&.
.sp .5v
.RE
.PP
\fB\-\-benchmark\-modem\fR \fIID\fR
.RS 4
Specify the modem\&. Defaults to \(lq25\(rq (\(lqBPSK31\(rq)\&.
.RE
.PP
\fB\-\-benchmark\-frequency\fR \fIFREQ\fR
.RS 4
Set the modem frequency in Hz\&. Defaults to \(lq1000\(rq\&.
.RE
.PP
\fB\-\-benchmark\-afc\fR \fIBOOLEAN\fR
.RS 4
Enable or disable modem AFC\&. Defaults to \(lqfalse\(rq\&.
.RE
.PP
\fB\-\-benchmark\-squelch\fR \fIBOOLEAN\fR
.RS 4
Enable or disable modem squelch\&. Defaults to \(lqfalse\(rq\&.
.RE
.PP
\fB\-\-benchmark\-squelch\-level\fR \fILEVEL\fR
.RS 4
Set the modem squelch level (1\(em100%)\&. Defaults to \(lq0\&.0\(rq\&.
.RE
.PP
\fB\-\-benchmark\-input\fR \fIINPUT\fR
.RS 4
Specify the input\&. Must be a positive integer indicating the number of samples of silence to generate as the input, or, if fldigi was linked with libsndfile, the name of the input audio file\&. The filename must contain non\-digit characters\&.
.RE
.PP
\fB\-\-benchmark\-output\fR \fIFILE\fR
.RS 4
Specify the output data file\&. Non\-textual output (i\&.e\&. Hellschreiber or MFSK images) cannot be saved\&. Default: decoder output is discarded\&.
.RE
.PP
\fB\-\-benchmark\-src\-ratio\fR \fIRATIO\fR
.RS 4
Specify the sample rate conversion ratio\&. Defaults to \(lq1\&.0\(rq (input is not resampled)\&.
.RE
.PP
\fB\-\-benchmark\-src\-type\fR \fITYPE\fR
.RS 4
Set the sample rate conversion type\&. TYPE is an integer in the range [0,4]\&. Defaults to \(lq2\(rq (\(lqFastest SINC Interpolator\(rq)\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBWarning\fR
.ps -1
.br
.sp
\fBThe following options should not be relied upon\&. They are listed here only for the sake of completeness, and may be replaced by GUI settings or removed altogether in a future version\&.\fR
.sp .5v
.RE
.PP
\fB\-\-wfall\-width\fR \fIWIDTH\fR
.RS 4
Set the waterfall width\&.
.RE
.PP
\fB\-\-wfall\-height\fR \fIHEIGHT\fR
.RS 4
Set the waterfall height\&.
.RE
.PP
\fB\-\-window\-width\fR \fIWIDTH\fR
.RS 4
Set the minimum window width\&.
.RE
.PP
\fB\-\-window\-height\fR \fIHEIGHT\fR
.RS 4
Set the minimum window height\&.
.RE
.PP
\fB\-\-exit\-after\fR \fISECONDS\fR
.RS 4
Run for approximately
\fISECONDS\fR
seconds\&.
.RE
.PP
\fB\-\-frames\-per\-buffer\fR \fIFRAMES\fR
.RS 4
Set frames per buffer option to
\fIFRAMES\fR
when creating PortAudio streams\&. Defaults to \(lq0\(rq (let PortAudio choose)\&.
.RE
.SH "ENVIRONMENT"
.sp
Fldigi uses several environment variables, mainly set for child processes created by the macro and the notifier\&.
.SS "General variables"
.PP
FLDIGI_BROWSER
.RS 4
The web browser to use for http and file URIs\&. Overrides
$BROWSER
and
xdg\-open(1)\&.
.RE
.SS "Macro variables"
.sp
The following variables are created in the environment of the child process that is forked by the \fI\fR macro\&. They are empty if values are not available\&.
.PP
FLDIGI_RX_IPC_KEY
.RS 4
The receive message queue key\&.
.RE
.PP
FLDIGI_TX_IPC_KEY
.RS 4
The transmit message queue key\&.
.RE
.PP
FLDIGI_XMLRPC_ADDRESS
.RS 4
The XML\-RPC server address string\&.
.RE
.PP
FLDIGI_XMLRPC_PORT
.RS 4
The XML\-RPC server port string\&.
.RE
.PP
FLDIGI_ARQ_ADDRESS
.RS 4
The ARQ server address string\&.
.RE
.PP
FLDIGI_ARQ_PORT
.RS 4
The ARQ server port string\&.
.RE
.PP
FLDIGI_VERSION
.RS 4
The version string\&.
.RE
.PP
FLDIGI_PID
.RS 4
The process ID of the parent fldigi process\&.
.RE
.PP
FLDIGI_CONFIG_DIR
.RS 4
The configuration directory\&.
.RE
.PP
FLDIGI_MY_CALL
.RS 4
The operator\(cqs callsign\&.
.RE
.PP
FLDIGI_MY_NAME
.RS 4
The operator\(cqs name\&.
.RE
.PP
FLDIGI_MY_LOCATOR
.RS 4
The operator\(cqs IARU (Maidenhead) locator\&.
.RE
.PP
FLDIGI_MODEM
.RS 4
The short modem name\&.
.RE
.PP
FLDIGI_MODEM_LONG_NAME
.RS 4
The long modem name\&.
.RE
.PP
FLDIGI_DIAL_FREQUENCY
.RS 4
The rig (radio) frequency\&.
.RE
.PP
FLDIGI_AUDIO_FREQUENCY
.RS 4
The modem (audio) centre frequency\&.
.RE
.PP
FLDIGI_FREQUENCY
.RS 4
The actual receive/transmit frequency, i\&.e\&. the sum of rig and modem frequencies taking into account the rig sideband\&.
.RE
.PP
FLDIGI_LOG_FREQUENCY
.RS 4
The text (frequency in MHz) contained in the
\fIQSO Freq\fR
log field\&.
.RE
.PP
FLDIGI_LOG_TIME_ON
.RS 4
The text (QSO start time) contained in the (time)
\fIOn\fR
log field\&.
.RE
.PP
FLDIGI_LOG_TIME_OFF
.RS 4
The text (QSO end time) contained in the (time)
\fIOff\fR
log field\&.
.RE
.PP
FLDIGI_LOG_CALL
.RS 4
The text (other station\(cqs callsign) contained in the
\fICall\fR
log field\&.
.RE
.PP
FLDIGI_LOG_NAME
.RS 4
The text (other station\(cqs name) contained in the
\fIName\fR
log field\&.
.RE
.PP
FLDIGI_LOG_RST_IN
.RS 4
The text (received RST) contained in the (RST)
\fIIn\fR
log field\&.
.RE
.PP
FLDIGI_LOG_RST_OUT
.RS 4
The text (sent RST) contained in the (RST)
\fIOut\fR
log field\&.
.RE
.PP
FLDIGI_LOG_QTH
.RS 4
The text (other station\(cqs QTH) contained in the
\fIQTH\fR
log field\&.
.RE
.PP
FLDIGI_LOG_LOCATOR
.RS 4
The text (other station\(cqs Maidenhead locator) contained in the
\fILoc\fR
log field\&.
.RE
.PP
FLDIGI_LOG_NOTES
.RS 4
The text (free\-form notes) contained in the
\fINotes\fR
log field\&.
.RE
.PP
FLDIGI_AZ
.RS 4
The text (azimuth in degrees to other station) contained in the
\fIAz\fR
log field\&.
.RE
.SS "Notifier variables"
.sp
The following variables are created in the environment of child processes created by the notifier\&.
.PP
FLDIGI_NOTIFY_STRi
.RS 4
These variables (i in [0,9]) contain substrings matched by capturing groups in the event\(cqs regular expression\&. 0 contains the whole matched text\&.
.RE
.PP
FLDIGI_NOTIFY_STR_NUM
.RS 4
The number of substrings available\&.
.RE
.PP
FLDIGI_NOTIFY_CALLSIGN
.RS 4
Builtin event types that match callsigns will place the callsign in this variable\&.
.RE
.PP
FLDIGI_NOTIFY_TEXT
.RS 4
The complete string that matched the event\(cqs regular expression\&.
.RE
.PP
FLDIGI_NOTIFY_AUDIO_FREQUENCY
.RS 4
The modem frequency\&.
.RE
.PP
FLDIGI_NOTIFY_EVENT
.RS 4
The event type\&.
.RE
.PP
FLDIGI_NOTIFY_COUNTRY
.RS 4
The station\(cqs country name (for events of type "station heard twice")\&.
.RE
.SS "Debugging variables"
.sp
The following variables are only used if fldigi was built with debugging support (\fI\-\-enable\-debug\fR), or they are only useful when debugging specific modules\&.
.PP
FLDIGI_NO_EXEC
.RS 4
If set, this variable disables glibc\(cqs malloc debugging, which fldigi enables by default when built for debugging\&.
.RE
.PP
FLDIGI_TRACE_LOCKS
.RS 4
Traces
\fIFl::lock()\fR
calls\&.
.RE
.PP
FLDIGI_HAMLIB_DEBUG
.RS 4
Initialises hamlib in debug mode\&.
.RE
.SH "RESTRICTIONS"
.sp
Fldigi is licensed under the GNU GPL, which grants you the right to run the program for any purpose (freedom 0)\&. However, permission to use it for the transmission of radio signals can only be obtained from the communications authority of your country\&. When given, this permission almost always comes in the form of an amateur radio license\&.
.sp
If you do not have an amateur radio license you can still have fun using fldigi as a shortwave listener\&. One way to do so is by using the builtin PSK Reporter client to submit realtime spots of transmitting stations; see RESOURCES below\&. All you need is a computer, homebrew SDR receiver, and simple wire antenna!
.SH "FILES"
.sp
Various files and subdirectories are created in $HOME/\&.fldigi\&. Some of the most interesting ones are listed below\&.
.PP
fldigi_def\&.xml
.RS 4
The main settings file\&.
.RE
.PP
fldigi\&.prefs
.RS 4
The \(lqstatus\(rq file\&. Stores window geometries, button states, current modem, current audio frequency, squelch level, and so on\&.
.RE
.PP
status_log\&.txt
.RS 4
The event log\&.
.RE
.PP
macros/macros\&.mdf
.RS 4
The default macro file\&.
.RE
.PP
palettes/
.RS 4
This directory contains waterfall palettes\&.
.RE
.PP
scripts/
.RS 4
This directory is added to the PATH environment variable of the child process that runs macros\&.
.RE
.PP
logs/
.RS 4
This directory contains logged received and sent text (when such logging is enabled), including the default logbook database, logbook\&.adif\&.
.RE
.PP
images/
.RS 4
Received MFSK images are automatically saved in this directory\&.
.RE
.PP
freqanalysis\&.csv
.RS 4
This file is written by the frequency analysis modem\&. The fields are dial frequency, audio frequency, and offset\&. See documentation for details\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
The following files are used if present\&. They must be downloaded and copied to ~/\&.fldigi/ by the user\&.
.sp .5v
.RE
.PP
cty\&.dat
.RS 4
List of DXCC entities and callsign prefixes; used to display tooltips in the received text buffer, and also to auto\-fill the Country, Locator and Azimuth log fields\&. Available at
http://www\&.country\-files\&.com/cty/\&.
.RE
.PP
lotw1\&.txt
.RS 4
List of known LOTW users (one callsign per line); used for the received text tooltips\&. Available at
http://www\&.hb9bza\&.net/lotw/\&.
.RE
.PP
AGMemberList\&.txt or eqsl\&.txt
.RS 4
List of \(lqAuthenticity Guaranteed\(rq eQSL users (one callsign per line); used for the received text tooltips\&. Available at
http://www\&.eqsl\&.cc/QSLcard/Programming\&.cfm\&.
.RE
.SH "EXAMPLES"
.PP
fldigi \-\-wfall\-height 144 \-\-font sans:11 \-fg "#c0c0c0" \-bg "#5f5f63" \-bg2 "#19213b"
.RS 4
This is how the author of this document invokes fldigi\&.
.RE
.PP
fldigi \-\-xmlrpc\-deny "main\&.(tx|tune|run_macro)"
.RS 4
Unregister XML\-RPC methods that may transmit\&.
.RE
.PP
ssh \-L 7362:localhost:7362 remote\-host xvfb\-run fldigi \-display :99
.RS 4
Start fldigi on
\fIremote\-host\fR
under a \(lqfake\(rq X server\&. (The
xvfb\-run(1)
utility is available on Debian systems)\&. The remote \(lqheadless\(rq fldigi is then controlled via XML\-RPC on port 7362, i\&.e from flrig, flamp etc\&.
.RE
.PP
fldigi \-\-benchmark\-input 480000 \-\-benchmark\-modem 1
.RS 4
Benchmark the DominoEX\-4 modem with 480K audio samples\&.
.RE
.PP
fldigi \-\-benchmark\-input audio\&.wav \-\-benchmark\-modem 25 \-\-benchmark\-frequency 1500 \-\-benchmark\-afc 1 \-\-benchmark\-squelch 1 \-\-benchmark\-squelch\-level 5\&.0 \-\-benchmark\-output out\&.txt
.RS 4
Read
\fIaudio\&.wav\fR
(whose sample rate must be 8000Hz in this case) and decode BPSK\-31 signals at 1500Hz\&. AFC is enabled and the squelch is set to 5%\&. Decoded text is saved to
\fIout\&.txt\fR\&.
.RE
.SH "BUGS"
.sp
Yes\&.
.SH "SEE ALSO"
.sp
fldigi\-shell(1), gmfsk(1), gpsk31(1), grig(1), rigctl(1), xlog(1), getaddrinfo(3), getopt(3), regex(7), X(7)
.SH "RESOURCES"
.sp
Main web site: http://www\&.w1hkj\&.com/Fldigi\&.html
.sp
Sourceforge project page: http://sourceforge\&.net/projects/fldigi/
.sp
Wiki and bug tracker: https://fedorahosted\&.org/fldigi/
.sp
More information on MFSK16, DominoEX and other digital modes can be found at http://www\&.qsl\&.net/zl1bpu/ and http://www\&.w1hkj\&.com/FldigiHelp/Modes/index\&.htm
.sp
The PSK Automatic Propagation Reporter site can be found at http://www\&.pskreporter\&.info/
.SH "AUTHORS"
.PP
Fldigi was written by
.RS 4
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
David Freese,
W1HKJ\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Stelios Bounanos,
M0GLD\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Leigh L\&. Klotz, Jr\&.,
WA5ZNU\&.
.RE
.PP
Fldigi also includes code written by others\&. Among them are
.RS 4
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Tomi Manninen,
OH2BNS\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Pawel Jalocha,
SP9VRC\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Hamish Moffatt,
VK3SB\&.
.RE
.sp
This manual page was written by Stelios Bounanos \&.
.SH "COPYING"
.sp
License GPLv3+: GNU GPL version 3 or later\&.