following is now reciprocal at first to save time