Improve twinnable manymany join(), add main_context condition