refactor support, refine, relate to all use _relate method