This is NOT the official version of dialog.  This version has been
significantly modified from the original.  It is for use by the Linux
busybox configuration script.  Please do not bother Savio Lam with
questions about this program.
