complete implementation with files for CMU deployment