mostly setup and adding more fields