re-structure the code
initialize