A lot of modification in model