some bare bones documentation on functions