extract method
fix yield