First implementation of model