add rwilcox's explanation