rewrote view function