Breaking out shared methods for clarity and reuse