Working on viewer implementation