Updated with some feedback from some colleagues.