リファクタなので、コードの詳細まで突っ込みますが、このメソッドの使われる場所と定義場所が離れている（間に effects の定義がある）ので、見通しが良くないですね。