working on module factory
restoring factory files
implementing module factory
implementing module factory