better joining strategy