Estimating Cxy with shrinkage


I am curious how Cxy is computed under method==“shrinkage.” It is clear that Cxx and Cyy are computed via corpcor’s cov.shrink() function, but it is unclear to me why one could use the square root of these optimal lambdas to transform the X and Y matrices and then find Cxy.

Cxy = h1 * crossprod(sweep(sweep(xs, 1, sqrt((1 - lambda.x) * w), “"), 2, sc.x, "”),
sweep(sweep(ys, 1, sqrt((1 - lambda.y) * w), “"), 2, sc.y, "”)).

Can the authors provide general intuition for the above line of code? Thanks so much!