making it modular