update to use generic view