added explanation
added visualizer script