Write it in a modular way