minors. now move to shorten the background algorithms