CRAN Package Check Results for Package CLA

Last updated on 2020-08-07 01:49:38 CEST.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 0.95-1 2.91 103.97 106.88 OK
r-devel-linux-x86_64-debian-gcc 0.95-1 2.63 77.55 80.18 OK
r-devel-linux-x86_64-fedora-clang 0.95-1 129.43 OK
r-devel-linux-x86_64-fedora-gcc 0.95-1 119.38 OK
r-devel-windows-ix86+x86_64 0.95-1 9.00 110.00 119.00 OK
r-patched-linux-x86_64 0.95-1 2.89 98.15 101.04 OK
r-patched-solaris-x86 0.95-1 164.10 ERROR
r-release-linux-x86_64 0.95-1 2.99 97.15 100.14 OK
r-release-macos-x86_64 0.95-1 OK
r-release-windows-ix86+x86_64 0.95-1 12.00 136.00 148.00 OK
r-oldrel-macos-x86_64 0.95-1 OK
r-oldrel-windows-ix86+x86_64 0.95-1 6.00 115.00 121.00 OK

Check Details

Version: 0.95-1
Check: tests
Result: ERROR
     Running ‘SP500-ex.R’ [102s/123s]
     Running ‘findSigMu-ex.R’
    Running the tests in ‘tests/SP500-ex.R’ failed.
    Complete output:
     > require(CLA)
     Loading required package: CLA
     >
     > source(system.file("xtraR", "platform-sessionInfo.R", # <<- ../inst/xtraR/platform-sessionInfo.R
     + package = "CLA", mustWork=TRUE)) # moreSessionInfo(), withAutoprint() ..
     > mS <- moreSessionInfo(print. = TRUE)
     List of 4
     $ sizeof.long : int 4
     $ sizeof.longlong : int 8
     $ sizeof.longdouble: int 12
     $ sizeof.pointer : int 4
     32 bit platform type 'unix' ==> onWindows: FALSE
     arch: i86pc
     osVersion (0): Solaris 10
     osVersion: Solaris 10 | BLAS "is" Lapack: FALSE
     strictR: TRUE
     >
     > data(muS.sp500)
     >
     > if(requireNamespace("FRAPO")) {
     + data(SP500, package = "FRAPO")
     + print(dim(SP500)) # 265 * 476
     + }
     Loading required namespace: FRAPO
     [1] 265 476
     >
     > (n <- length(muS.sp500$mu)) # 476
     [1] 476
     > system.time(# ~ 9 sec (64-bit); 13.8 sec (32-b florence); seen 27.44 sec on Winb.32
     + CLs5c.0.120 <- CLA(muS.sp500$mu, muS.sp500$covar, lB=0, uB=1/20)
     + )
     user system elapsed
     92.926 1.245 113.899
     > CLs5c.0.120 # -> print() method
     Call: CLA(mu = muS.sp500$mu, covar = muS.sp500$covar, lB = 0, uB = 1/20)
     Critical Line Algorithm for n = 476 assets, resulting in 161 turning points
     Overview of result parts:
     List of 5
     $ weights_set : num [1:476, 1:161] 0 0 0.05 0 0 0 0 0 0 0 ...
     $ free_indices:List of 161
     $ gammas : num [1:161] -0.0845 -0.0845 -0.0134 -0.013 -0.0126 ...
     $ lambdas : num [1:161] 10.5 10.5 1.83 1.78 1.72 ...
     $ MS_weights : num [1:161, 1:2] 0.0369 0.0369 0.0369 0.0369 0.0366 ...
     >
     > uncall <- function(x) `$<-`(x, call, NULL)
     >
     > doExtras <- TRUE # for experiments, not normally
     > doExtras <- FALSE
     >
     > if(doExtras) system.time({
     + tols <- 10^-c(1,3,5:9,11,14)
     + names(tols) <- paste0("10^", round(log10(tols)))
     + CLs5c.ls <- lapply(tols, function(tol)
     + CLA(muS.sp500$mu, muS.sp500$covar, lB=0, uB=1/20, tol.lambda = tol))
     + }) # 78.101 elapsed [nb-mm4] ; 46.108 [lynne 2018-10]
     >
     > if(doExtras) {
     + identical(uncall(CLs5c.ls[["10^-7"]]), uncall(CLs5c.0.120))
     + for(i in seq_along(tols)[-1]) {
     + cat("--=--=--=--=--\n", (n1 <- names(tols[i-1])), " vs. ", (n2 <- names(tols[i])), ": ")
     + ae <- all.equal(uncall(CLs5c.ls[[i-1]]),
     + uncall(CLs5c.ls[[ i ]]))
     + if(isTRUE(ae)) cat(" are all.equal()\n")
     + else {
     + CLA.i. <- uncall(CLs5c.ls[[i-1]]) ; wgt <- CLA.i.$weights_set
     + cat("are different [all.equal()]: dim(..[[",n1,"]]$weights_set) =",
     + dim(wgt)[1],"x", dim(wgt)[2],"\n")
     + }
     + }
     + }
     > ## 2018-10 lynne, 64b Fedora 28
     > ## 10^-1 vs. 10^-3 : are different [all.equal()]: dim(..[[ 10^-1 ]]$weights_set) = 476 x 47
     > ## 10^-3 vs. 10^-5 : are different [all.equal()]: dim(..[[ 10^-3 ]]$weights_set) = 476 x 156
     > ## 10^-5 vs. 10^-6 : are all.equal()
     > ## ................ " " "
     >
     > op <- options(width = max(500, getOption("width"))) # then it actually fits
     >
     > if(require(Matrix)) withAutoprint(local = FALSE, {
     + ## visualize how weights change "along turning points"
     + spWts <- Matrix(CLs5c.0.120$weights_set, sparse=TRUE)
     + image(spWts, xlab = "turning point", ylab = "asset number")
     + ##
     + dim(spWts.non0 <- spWts[rowSums(spWts) > 0 , ])
     + round(1000 * spWts.non0)
     + ##
     + image(spWts.non0, xlab = "turning point", ylab = "asset number")
     + wts.non0 <- as(spWts.non0, "matrix")
     + }) else {
     + warning("'Matrix' package not available -- should not happen!")
     + wts.non0 <- CLs5c.0.120$weights_set[rowSums(CLs5c.0.120$weights_set) > 0 , ]
     + if(is.null(colnames(wts.non0))) ## empty column names for nice printing:
     + colnames(wts.non0) <- rep("", ncol(wts.non0))
     + print.table(round(1000 * wts.non0), zero.print=".")
     + }
     Loading required package: Matrix
     > spWts <- Matrix(CLs5c.0.120$weights_set, sparse = TRUE)
     > image(spWts, xlab = "turning point", ylab = "asset number")
     > dim(spWts.non0 <- spWts[rowSums(spWts) > 0, ])
     [1] 79 161
     > round(1000 * spWts.non0)
     79 x 161 sparse Matrix of class "dgCMatrix"
    
     AAPL 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 47 46 44 44 42 42 39 36 35 34 33 32 31 26 24 23 21 21 21 21 18 16 16 13 12 10 10 10 8 7 6 6 6 5 5 4 2 . . . . . . . . . . . . . . . . . . . . . . . . . .
     ADSK . . . . . . 0 0 0 49 50 50 50 50 50 50 50 47 47 41 41 48 49 49 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 48 46 45 45 43 39 38 38 37 36 36 35 30 29 24 23 19 16 14 13 13 13 12 12 12 11 10 7 7 5 5 5 4 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     AET . . . 0 8 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 43 41 40 38 38 38 38 35 33 33 32 31 29 29 29 27 26 26 25 25 25 25 23 21 19 18 17 17 15 13 12 12 11 11 10 10 4 1 0 . . . . . . . . . . .
     AMGN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 4
     ATI 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 44 43 41 37 36 25 24 19 18 18 15 11 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     AYE . . . . . . . . . . . . 0 3 7 3 3 1 3 9 10 38 42 42 45 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 48 48 48 48 48 47 43 42 38 37 31 26 22 21 21 20 18 18 17 14 13 5 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     AZO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 2 2 3 3 4 5 5 5 5 5 6 6 7 7 7 7 8 8 8 8 8 8 8 8 8 6
     BAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 16 18 24 24 25 27 30 34 36 38 39 40 41 43 45 46 46 48 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 49 49 49 49 48 48 48 47 46 46 46 45 43 43 42 42 42 42 42 42 41
     BCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 2 3 4 4 5 5 6 7 7 7 7 7 7 6 6 6 5 5 5 5 4 4 4 4 4 4 4 4 4 2 1 1 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     BDX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 3 6 7 8 8 8 8 8 9 9 9 9 9 8 8 8 8 8 8 8 8 9 10 10 11 11 14 14 15 15 15 15 15 15 16
     BIIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 5 11 14 14 16 19 19 20 23 24 26 26 28 28 30 30 30 31 33 33 33 33 33 32 32 31 31 31 31 30 27 26 24 24 24 23 22 21 20 19 19 18 18 18 18 18 18 18 18 18 18 18 18 18 18 19 19 19 19 19 19 20 20 20 20 21 21 22 22 23 23 23 23 23 24 25 25 26 26 26 27 27 27 27 27 27 27 27 27 27 26 26 25 25 25 24 24 23 23 23 23 22 22 20 19 18 18 18 15 15 15 15 15 14 14 14 12
     BNI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 10 10 18 23 34 37 38 42 48 49 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 48 45 43 43 40 37 37 37 36 36 35 35 35 35 33 33 31 30 29 28 27 26 25 25 22 21 20 19 18 18 17 13 11 10 9 8 8 8 5 3 3 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     BRL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 2 4 4 4 4 5 6 6 9 10 11 11 11 13 13 14 14 14 14 14 15 15
     BTU 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 31 12 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     BUD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 4 4 4 9
     CCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 2 3 7 9 10 11 12 12 12 14 16 16 18 19 21 21 21 22 22 23 23 23 23 23 24 25 26 26 26 27 27 28 29 29 29 29 29 29 30 30 31 31 31 31 31 31 31 31 31 31 31 32
     CELG 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 49 46 46 43 43 42 41 40 40 39 38 36 34 34 32 31 31 30 24 22 21 19 18 18 18 14 11 11 8 7 5 4 4 3 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     CI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 7 11 11 19 21 24 25 30 33 40 42 42 44 48 49 49 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 48 42 40 37 36 35 34 32 29 27 26 20 16 16 15 14 14 12 12 11 11 8 7 4 4 2 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     CL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 4 11 22 28 29 40 48 49 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50
     CLX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 3 4 6 19 24 27 31 33 33 33 40 45 45 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50
     CME 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 47 47 45 43 43 41 35 32 31 29 29 29 28 25 22 22 20 18 16 16 16 14 12 11 11 11 11 10 9 7 5 4 3 3 2 . . . . . . . . . . . . . . . . . . . . .
     CNX 50 50 50 50 50 50 50 50 50 50 49 49 42 39 32 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     COST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 3 3 4 4 5 5 5 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 6 6 6 6 6 5 5 5 5 5 4 4 4 4
     CTL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 1 3
     CVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 7 14 17 17 19 27 27 29 33 33 38 39 41 41 41 42 43 44 44 44 44 44 44 45 45 45 45 44 43 43 43 43 43 42 42 42 42 40 40 38 38 37 37 36 36 35 35 34 33 33 32 32 32 32 33 33 33 33 33 33 33 35 35 35 36 36 37 37 37 37 36 36 36 36 36 36 35 34 32 31 31 31 29 27 27 27 27 26 25 25 17 14 13 12 11 5 4 3 3 3 1 0 . .
     DF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 1 2 2 2 2 2 2 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3
     DGX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 2 2 3 4 7 10 11 12 12 14 16 17 17 17 18 19 19 25 28 29 29 30 35 35 36 36 36 37 38 38 40
     DVN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 1 0 . . . 0 1 1 1 1 1 1 1 1 1
     ED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 1 2 7 12 20 23 25 25 30 37 39 39 39 40 41 41 47 49 50 50 50 50 50 50 50 50 50 50 50 50
     EIX . . . . . . . . . . . . . . 0 37 40 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 47 45 43 43 42 41 38 37 36 36 36 34 30 25 18 16 13 13 8 2 . . . . . . . . . . . . . . . . . . . .
     ESRX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 2 3 5 5 6 8 9 10 10 14 15 16 16 16 17 17 17 17 17 17 16 16 16 16 15 15 15 13 12 12 12 11 11 10 9 9 8 7 5 5 5 5 5 3 3 3 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     FCX 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 47 47 40 31 27 26 24 21 21 20 12 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     FE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 2 6 7 9 10 14 18 22 24 24 26 32 32 33 36 36 39 39 40 40 40 39 38 34 33 31 31 31 30 29 26 24 23 21 19 19 19 19 19 18 18 18 18 16 16 15 15 13 13 11 11 9 9 7 4 4 3 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     GILD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 18 21 23 23 22 21 19 19 20 20 21 21 21 20 20 19 19 19 19 19 19 18 17 15 14 12 11 9 9 9 8 8 8 8 6 6 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     HAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 1 2 4 7 8 8 8 10 11 12 12 12 12 13 13 14 14 14 14 14 15 15 15 15 15 15 15 15 14
     HES 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 37 33 33 33 32 32 32 26 26 25 17 13 11 10 7 6 3 3 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     HST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 3 14 14 28 39 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 47 46 46 46 45 43 43 35 30 29 28 27 19 19 18 17 17 14 14 14 8
     HUM . . . . . . . . . . . . . . . . . . . . . 0 8 8 17 28 30 37 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 49 49 49 46 44 40 40 34 29 25 24 24 24 23 23 22 21 20 16 15 13 13 13 12 11 9 8 7 7 6 6 5 4 3 3 2 1 1 1 1 1 0 0 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     INTU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 4 5 5 5 9 12 12 15 17 19 19 20 21 23 24 24 24 24 24 25 26 28 28 28 28 29 30 30 30 30 30 31 31 34 35 35 35 36 38 38 39 39 39 40 40 40 40
     JNJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 7 8 8 9 9 12 16 21 22 24 24 27 30 31 31 32 32 33 33 38 41 42 42 43 50 50 50 50 50 50 50 50 50
     K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 5 6 9 10 17 22 23 26 29 29 31 40 44 47 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50
     LH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 9 9 15 20 21 21 22 22 24 24 25 25 28 28 30 30 30 31 31 31 31 31 33 34 34 35 35 36 36 40 41 42 43 43 43 43 45 46 46 46 47 47 47 47 47 47 47 46 46 46 46 45 44 42 41 40 40 39 37 37 37 37 36 36 36 31 29 29 28 28 24 23 23 23 23 22 22 22 20
     LLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 10 26 28 34 34 35 37 40 43 44 46 47 47 47 47 46 45 45 46 47 47 46 46 46 44 44 44 44 42 42 42 42 42 42 42 42 42 41 42 44 44 45 46 46 46 49 49 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 48 47 46 46 46 45 43 43 43 42 42 41 41 37 35 34 34 33 28 27 27 26 26 25 24 24 21
     LMT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 4 7 13 19 23 24 33 40 41 41 42 42 44 44 45 45 47 47 48 48 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50
     LUK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 4 5 5 8 9 9 10 10 11 15 16 17 18 18 21 22 23 23 23 23 23 22 21 20 20 19 19 20 19 19 19 21 22 22 22 22 22 22 22 21 21 20 20 19 19 19 18 18 17 17 17 16 15 15 14 14 13 13 10 8 8 7 6 6 6 4 3 3 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     MCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 2 2 2 1 1 2 2 1 1 0 0 2 4 4 4 5 5 6 6 6 6 7 7 7 8 9 9 10 10 11 11 12 12 12 12 11 11 11 9 9 8 8 8 8 8 6 5 5 4 4 4 4 4 3 2 2 1 1 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     MDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 5 8 8 11 13 16 17 18 20 21 22 22 22 23 23 24 25 27 27 28 28 29 30 31 31 31 31 32 32 35 37 37 37 38 41 41 41 41 42 42 42 42 42
     MMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 2 3 3 5
     MON 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 48 47 39 36 30 30 26 24 18 17 17 14 10 9 9 8 6 6 5 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     MRO 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 46 45 41 41 38 38 36 36 34 34 31 30 30 28 27 27 27 23 22 21 20 20 20 20 17 15 15 13 12 11 11 10 9 8 7 7 7 7 7 5 3 1 . . . . . . . . . . . . . . . . . . . . . . . . .
     MTW 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 35 23 14 11 10 9 5 5 4 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     MUR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 3 8 8 9 9 9 9 9 6 5 4 4 4 3 3 2 2 2 4 7 7 7 8 8 9 9 9 9 12 12 14 14 15 16 17 17 17 17 19 20 20 21 21 21 21 21 21 21 21 21 21 21 21 20 20 20 21 21 21 21 21 22 22 22 22 22 22 23 23 24 24 24 24 24 24 23 23 23 23 22 22 19 17 16 16 15 11 10 10 9 9 8 8 8 6
     NEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 3 6 6 8 10 12 12 12 14 15 16 16 17 17 17 18 19 21 22 22 22 23 24 25 25 25 25 26 26 27 28 29 29 29 31 31 31 32 32 32 32 32 34
     NOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 2 5 6 12 12 15 15 25 27 34 35 40 41 46 47 49 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50
     NUE 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 27 19 19 12 5 3 3 0 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     NVDA 50 50 50 50 50 50 50 50 50 1 1 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     PBG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 3 3 4 4 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 7 7 8 8 8 8 8 9 9 9 10 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 14 15 15 15 15 15 15 15 15 14 14 14 14 13 13 12 12 12 12 12 12 9
     PCP 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 40 32 31 29 27 27 23 23 21 21 14 13 8 8 5 4 2 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     PDCO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 5 5 5 5
     PEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 3 3 14 16 24 24 29 30 32 33 34 34 37 41 41 43 44 44 45 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50
     PG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 28 37 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50
     RAI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 14 17 27 28 41 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 44 42 40 38 38 38 38 34 32 32 30 29 28 28 28 27 26 25 25 25 25 25 24 22 20 20 19 19 18 17 17 17 17 17 16 16 13 12 11 11 11 9 8 8 8 8 7 7 7 7
     RIG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 3 8 9 10 12 15 16 16 17 18 18 18 19 19 19 19 18 18 18 18 18 19 22 22 23 24 24 25 25 24 25 25 25 25 27 27 27 27 27 26 26 25 24 24 26 27 27 27 27 27 28 28 28 28 30 30 31 31 31 31 32 32 32 32 33 32 32 32 32 32 32 32 32 32 32 32 32 32 31 30 30 28 28 26 26 26 25 24 24 24 24 24 23 22 20 18 18 17 17 15 13 13 13 12 12 12 12 9 8 7 7 7 4 4 4 3 3 3 2 2 2
     RRC 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 42 36 35 34 33 32 29 29 27 27 23 22 17 17 13 12 10 9 8 7 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     RTN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 4 7 13 15 16 17 17 16 16 16 15 15 16 17 17 17 16 16 16 16 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 16 17 17 18 21 22 23 23 24 24 24 25 26 26 28 29 29 30 30 30 29 29 29 29 29 29 29 29 29 29 29 30 30 31 31 31 31 31 31 31 31 31 31 31 31 30 29 29 29 29 28 28 28 27
     SII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 2 2 3 3 3 3 3 4 4 4 4 4 3 3 2 2 2 2 1 1 1 1 1 1 . . . . . . . . . . . . . . . .
     SSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 7 10 11 12 12 20 21 21 22 22 23 23 23 25
     SYK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 2 4 4 7 7 8 8 8 9 9 7 7 5 4 4 3 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     SYMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 1 1 3 3 3 4 4 4 4 4 5
     TEX 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 44 32 31 30 17 11 9 8 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     TIE 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 48 44 43 42 39 39 32 32 29 29 28 27 25 21 19 16 15 13 12 9 6 3 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     TSO 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 45 45 43 41 41 36 36 34 33 33 32 30 27 26 23 23 21 20 18 16 15 14 13 12 12 11 11 11 10 10 10 10 10 9 9 9 9 9 8 8 8 8 7 7 7 6 6 6 5 3 2 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     TYC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 1 1 2 3 3 4 5 5 5 7 8 8 9 9 9 9 10 11 11 12 13 14 14 14 14 15 15 15 15 15 16 16 16 17 17 17 17 18 18 18 18 18 18 19 19 20 21 21 21 21 23 23 23 23 23 23 23 23 23
     UST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 28 36 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 49 46
     WAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 2 2 6 9 10 10 11 15 16 16 17 17 18 18 18 18
     WFR 50 50 50 47 42 . 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     WMT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 3 3 3 7
     X 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 50 39 35 25 25 18 13 3 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
     XTO . . 0 3 . . . . . . . 0 7 9 11 7 7 2 . . . . . 0 11 24 26 34 42 43 43 48 48 49 48 44 42 38 38 37 35 30 30 30 29 29 29 29 29 29 29 28 26 25 24 23 18 12 8 7 7 7 6 6 6 5 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 3 3 5 6 8 8 9 10 12 14 14 14 14 14 14 14 14 14 14 14 14 14 13 12 12 11 11 10 10 10 9 9 8 8 8 8 8 7 6 5 5 4 4 3 2 1 1 1 . . . . . . . . . . . . . . . . .
     > image(spWts.non0, xlab = "turning point", ylab = "asset number")
     > wts.non0 <- as(spWts.non0, "matrix")
     > options(op)
     > stopifnot(nrow(wts.non0) == 79)
     > if(FALSE) # once, manually (into tests/ directory
     + saveRDS(wts.non0, "wtsn0.rds")
     > file.info("wtsn0.rds")$size # 2702049
     [1] 27020
     > wtsn0.ref <- readRDS("wtsn0.rds")
     >
     > ## see on all platforms what we get -- on OpenBLAS, the dim() differs !
     > all.equal(target = wtsn0.ref, current = wts.non0, tol=0)
     [1] TRUE
     > # expect TRUE only on 64bit (Lnx, R's BLAS)
     > # 3.10416e-15 and 1.366427e-15 on other BLAS
     > differWts <- ncol(wtsn0.ref) != ncol(wts.non0)
     > if(differWts) {
     + cat("Got",ncol(wts.non0), "weights from CLA() -- different than ref with",
     + ncol(wtsn0.ref), "\n")
     + strict <- FALSE # !
     + } else {
     + strict <- mS$strictR
     + stopifnot(all.equal(target = wtsn0.ref, current = wts.non0,
     + tol = 1e-13))
     + }
     > non.0.assets <- Filter(function(.) . > 0, apply(wts.non0, 1, function(c) sum(c > 0)))
     >
     > b64.n0 <-
     + c(AAPL = 135L, ADSK = 66L, AET = 147L, AMGN = 3L, ATI = 75L,
     + AYE = 56L, AZO = 26L, BAX = 95L, BCR = 35L, BDX = 36L, BIIB = 118L,
     + BNI = 86L, BRL = 23L, BTU = 27L, BUD = 7L, CCE = 54L, CELG = 128L,
     + CI = 69L, CL = 83L, CLX = 53L, CME = 140L, CNX = 16L, COST = 40L,
     + CTL = 5L, CVS = 102L, DF = 36L, DGX = 33L, DVN = 14L, ED = 32L,
     + EIX = 127L, ESRX = 48L, FCX = 54L, FE = 61L, GILD = 38L, HAL = 31L,
     + HES = 40L, HST = 108L, HUM = 71L, INTU = 48L, JNJ = 34L, K = 61L,
     + LH = 80L, LLL = 96L, LMT = 83L, LUK = 72L, MCD = 61L, MDT = 43L,
     + MMC = 7L, MON = 53L, MRO = 136L, MTW = 66L, MUR = 97L, NEM = 45L,
     + NOC = 74L, NUE = 30L, NVDA = 13L, PBG = 72L, PCP = 102L, PDCO = 71L,
     + PEP = 69L, PG = 87L, RAI = 110L, RIG = 121L, RRC = 105L, RTN = 90L,
     + SII = 27L, SSP = 14L, SYK = 19L, SYMC = 13L, TEX = 36L, TIE = 84L,
     + TSO = 115L, TYC = 59L, UST = 127L, WAG = 17L, WFR = 5L, WMT = 6L,
     + X = 43L, XTO = 102L)
     >
     > ## 32-bit Linux (Unfortunately, currently the results are slighly *platform dependent*)
     > nn <- c("AZO", "BAX", "CLX", "COST", "DGX", "DVN", "ESRX", "LMT", "MUR", "PEP",
     + "RIG", "SYMC", "TYC", "UST")
     > b32.n0 <- b64.n0
     > b32.n0[nn] <- b64.n0[nn] + 1L
     > nn <- c("AET", "BCR", "CI", "CL", "ED", "FE", "HAL", "MCD", "SII", "SYK")
     > b32.n0[nn] <- b64.n0[nn] - 1L
     >
     > ## 64-bit Linux -no-long-double:
     > b64nLD.n0 <- b64.n0
     > nn <- c("AZO", "BAX", "BNI", "CCE", "DVN", "GILD", "INTU", "JNJ", "LH",
     + "MDT", "NOC", "PBG", "SYMC")
     > b64nLD.n0[nn] <- b64.n0[nn] + 1L
     > nn <- c("ADSK", "BCR", "BDX", "BUD", "CTL", "FE", "MCD", "SII", "SYK")
     > b64nLD.n0[nn] <- b64.n0[nn] - 1L
     > b64nLD.n0[["XTO"]] <- 99L # = b... - 3L
     >
     > non.0.TARG <- if(mS$ b64) { if(mS$ b64nLD) b64nLD.n0 else b64.n0
     + } else b32.n0
     >
     > ## see on all platforms what we get; typically no diff on 64bit *and* using R's BLAS/Lapack
     > if(all(non.0.assets == non.0.TARG)) { ## show differences:
     + cat("Asset results == non.0.TARG; showing differences b32 - b64 :\n")
     + print(table(b32.n0 -b64.n0))
     + dput(names(b64.n0)[b32.n0 -b64.n0 == +1])
     + dput(names(b64.n0)[b32.n0 -b64.n0 == -1])
     + } else {
     + cat("\n'non.0.assets' differing from non.0.TARG:\n")
     + cat("+1:\n"); dput(names(b64.n0)[non.0.assets - non.0.TARG == +1])
     + cat("-1:\n"); dput(names(b64.n0)[non.0.assets - non.0.TARG == -1])
     + ## solaris :
     + ## +1:
     + ## c("AET", "BCR", "CI", "CL", "ED", "FE", "HAL", "MCD", "SII", "SYK")
     + ## -1:
     + ## c("AZO", "BAX", "CLX", "COST", "DGX", "DVN", "ESRX", "LMT", "MUR",
     + ## "PEP", "RIG", "SYMC", "TYC", "UST")
     + ## ATLAS :
     + ## +1:
     + ## c("AZO", "BRL", "CCE", "CLX", "INTU", "JNJ", "K", "LMT", "MUR",
     + ## "PEP", "SSP", "TYC", "UST", "XTO")
     + ## -1:
     + ## c("AET", "BCR", "CI", "ED", "FE", "MCD", "NEM", "SII", "SYK", "WMT")
     + ## MKL:
     + ## +1:
     + ## c("CLX", "INTU", "LH", "LLL", "LMT", "PBG", "SYMC", "TYC")
     + ## -1:
     + ## c("AMGN", "BCR", "BUD", "CL", "CTL", "ED", "HAL", "NEM", "XTO")
     + ## OpenBLAS:
     + ## +1:
     + ## c("BAX", "COST", "HST", "JNJ", "MDT", "MUR", "NOC", "PDCO", "WAG")
     + ## -1:
     + ## c("BCR", "CI", "CTL", "ED", "EIX", "HAL", "MCD", "RAI", "SYK")
     +
     + if(any(isB <- abs(non.0.assets - non.0.TARG) > 1)) {
     + cat("more different, showing differences:\n")
     + dput((non.0.assets - non.0.TARG)[isB])
     + }
     + ## OpenBLAS (only!):
     + ## c(XTO = -2L)
     + }
    
     'non.0.assets' differing from non.0.TARG:
     +1:
     c("AET", "BCR", "CI", "CL", "ED", "FE", "HAL", "MCD", "SII",
     "SYK")
     -1:
     c("AZO", "BAX", "CLX", "COST", "DGX", "DVN", "ESRX", "LMT", "MUR",
     "PEP", "RIG", "SYMC", "TYC", "UST")
     >
     > ## They have the same names and only differ by +/- 1:
     > stopifnot(exprs = {
     + identical(names(b64.n0), names(b32.n0))
     +
     + if(mS$ b64) !strict || identical(non.0.assets, non.0.TARG) # identical(*) fails on ATLAS, MKL, OpenBLAS
     + else if(.Platform$OS.type != "windows") identical(non.0.assets, b32.n0)
     + else ## 32-bit Windows
     + TRUE ## for now
     +
     + differWts || identical(head(CLs5c.0.120$free_indices, 12),
     + list(c(295L, 453L), 453L, c(453L, 472L), c(19L, 453L, 472L),
     + c(19L, 453L), 453L, c(15L, 453L), 15L, c(15L, 320L),
     + c(15L, 105L, 320L), c(105L, 320L), c(105L, 320L, 472L)))
     + })
     Error: if (mS$b64) !strict || identical(non.0.assets, non.0.TARG) else if (.Platform$OS.type != .... is not TRUE
     Execution halted
Flavor: r-patched-solaris-x86