Updated DataModel with Dario's code, still need to integrate Brennan's code