killed the need for Cod2 and Dom2 inside each Bifunctor