controller singleton and skeleton
improve hexagon detection