split visuals into separate module
split visuals into separate module