implemented view controller