changed structure. contorller does not bypass model for solution