heterofunctionalization heterobicycle difunctionalization heteroassociate biohomochirality heteroassociation heteroconjugation heterocatalysis heterocomplexation heterocyclisation