ga_first f = GArrowInversePair { forward = ga_first (forward f), backward = ga_first (backward f) }
ga_second f = GArrowInversePair { forward = ga_second (forward f), backward = ga_second (backward f) }
ga_cancell = GArrowInversePair { forward = ga_cancell , backward = ga_uncancell }
ga_first f = GArrowInversePair { forward = ga_first (forward f), backward = ga_first (backward f) }
ga_second f = GArrowInversePair { forward = ga_second (forward f), backward = ga_second (backward f) }
ga_cancell = GArrowInversePair { forward = ga_cancell , backward = ga_uncancell }