.Pars <- c(
"1em", "adj", "ask", "bty", "cex", "cin", "col", "cra", "crt", "csi",
"cxy", "din", "err", "exp", "fig", "fin", "font", "frm", "fty", "lab",
"las", "lty", "lwd", "mai", "mar", "mex", "mfg", "mgp", "new", "oma",
"omd", "omi", "pch", "pin", "plt", "pty", "rsz", "smo", "srt", "tck",
"uin", "usr", "xaxp", "xaxs", "xaxt", "xpd", "yaxp", "yaxs", "yaxt")
##>> R-alpha  0.16.1
##>>  pp_ par(); names(pp[sapply(pp,is.null)])
##>>  [1] "1em" "cxy" "din" "exp" "frm" "fty" "rsz" "uin"
##>>       ---   ---   ---   ---   ---   ---   ---   ---  

##-- These are the ones used in 0.16.1 -- $RHOME/src/main/par.c  Query(..) :
.Pars <- c(
"adj", "ann", "ask", "bg", "bty",
"cex", "cex.axis", "cex.lab", "cex.main", "cex.sub", "cin",
"col", "col.axis", "col.lab", "col.main", "col.sub", "cra", "crt", "csi",
"err", "fg", "fig", "fin",
"font", "font.axis", "font.lab", "font.main", "font.sub", "lab", "las",
"lty", "lwd", "mai", "mar", "mex", "mfcol", "mfg", "mfrow", "mgp", "mkh",
"new", "oma", "omd", "omi", "pch", "pin", "plt", "ps", "pty",
"smo", "srt", "tck", "tmag", "type", "usr",
"xaxp", "xaxs", "xaxt", "xlog", "xpd",
"yaxp", "yaxs", "yaxt", "ylog")


par <-
function (...)
{
	single <- FALSE
	if (nargs() == 0) {
		args <- as.list(.Pars)
	}
	else {
		args <- list(...)
		if (length(args) == 1) {
			if (is.list(args[[1]]) | is.null(args[[1]]))
				args <- args[[1]]
			else
				if(is.null(names(args)))
					single <- TRUE
		}
	}
	value <- if (single) .Internal(par(args))[[1]]
	else .Internal(par(args))
        if(!is.null(names(args))) invisible(value) else value
}

par2 <-
function (...) 
{
	args <- list(...)
	if (length(args) == 1 && is.list(args[[1]])) 
		args <- args[[1]]
	.Internal(par2(args))
}

