Updated:

MVC Approach