code: @Override
      public <B> Lazy<IdentityT<M, B>> lazyZip(
              Lazy<? extends Applicative<Function<? super A, ? extends B>, MonadT<M, Identity<?>, ?>>> lazyAppFn) {
          return new Compose<>(mia)
                  .lazyZip(lazyAppFn.fmap(maybeT -> new Compose<>(
                          maybeT.<IdentityT<M, Function<? super A, ? extends B>>>coerce()
                                  .<Identity<Function<? super A, ? extends B>>,
                                          Monad<Identity<Function<? super A, ? extends B>>, M>>run())))
                  .fmap(compose -> identityT(compose.getCompose()));
      }
docs: {@inheritDoc}