alternative join version