modularized neighbor