Update implementation of viewer