container redesign: use flag instead function pointer to determine if join table must be used