you should use VibratorFactoryVisitor pattern here.

inspired by ivan-gandhi@lj