lab1 - modularization to independent files