updated for visualization