testing out a more modular approach.