defining base,generic,modules