all functionality before project