{X : Type u} →
  {Y : Type v} →
    [inst : TopologicalSpace X] →
      [inst_1 : TopologicalSpace Y] →
        {motive : ContinuousMap.HomotopyEquiv X Y → Sort u_1} →
          ((toFun : C(X, Y)) →
              (invFun : C(Y, X)) →
                (left_inv : (invFun.comp toFun).Homotopic (ContinuousMap.id X)) →
                  (right_inv : (toFun.comp invFun).Homotopic (ContinuousMap.id Y)) →
                    motive { toFun := toFun, invFun := invFun, left_inv := left_inv, right_inv := right_inv }) →
            (t : ContinuousMap.HomotopyEquiv X Y) → motive t