Added Private function and Modular pattern