better names for a few functions