join implementation in progress