"histbackback"<-
function(x, y, brks = NULL, xlab = NULL, axes = T, probability = F, 
		 xlim = NULL, ylab='',...)
{
	if(length(xlab))
		xlab <- rep(xlab, length = 2)
	if(is.list(x)) {
	  namx <- names(x)  # FEH 5Jan99
		y <- x[[2]]   # was x$y  FEH
		if(is.null(xlab)) {
		  if(length(namx)) xlab <- namx[1:2] else {   #FEH
			xlab <- deparse(substitute(x))
			xlab <- paste(xlab, c("x", "y"), sep = "$")
		  }
		}
		x <- x[[1]]   # was x$x FEJ
	}
	else if(is.null(xlab))
		xlab <- c(deparse(substitute(x)), deparse(substitute(y)))
	if(is.null(brks))
		brks <- hist(c(x, y), plot = F)$breaks
	ll <- hist(x, breaks = brks, plot = F, probability = probability)
	rr <- hist(y, breaks = brks, plot = F, probability = probability)
	if(length(xlim) == 2)
		xl <- xlim
	else xl <- range(c( - ll$counts, rr$counts))
	if(length(ll$counts) > 0) {
		barplot( - ll$counts, brks, xlim = xl, histo = T, horiz = T, 
			axes = F, ...)
		par(new = T)
	}
	if(length(rr$counts) > 0)
		barplot(rr$counts, brks, xlim = xl, histo = T, horiz = T, axes
			 = F, ...)
	if(axes) {
		mgp.axis(1, at=pretty(xl), labels=format(abs(pretty(xl))))  #FEH
		mgp.axis(2)
		title(xlab = xlab[1], adj = (-0.5 * xl[1])/( - xl[1] + xl[2]))
		title(xlab = xlab[2], adj = ( - xl[1] + 0.5 * xl[2])/( - xl[1] + 
			xl[2]))
		if(ylab!='') title(ylab=ylab)   # FEH
	}
	abline(v = 0)
	box()
	invisible(list(left = ll$counts, right = rr$counts, breaks = brks))
}
