Made bv, ao, and ha reduction strategies work
Refactoring