porting over files from project version 2