finished view functions