modularity achieved
fix merge conflict