added some join support