reving version of my copy -do not use publicly