added base template for modularity