separate out duplicate methods