separate visualizers
refactor visualizers