##INTERESTINGLY,THISONECRASHES
allTests <- list(structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),T=11:14),.Names=c("a","b","c","l","a","b","c","l","T"),row.names=c(NA,-4L),class="data.frame"),structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),T=11:14),.Names=c("a","b","c","l","a","b","c","l","T"),row.names=c(NA,-4L),class="data.frame"),structure(list(structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),T=11:14),.Names=c("","","T")),list(1:4,list(1:3,1:4),1:3,1:5),structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II","FIFTH")),T=11:14),.Names=c("a","b","c","l","a","b","c","l","T"),row.names=c(NA,-4L),class="data.frame"),structure(list(structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II","FIFTH"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),T=11:14),.Names=c("","","T")),list(1:4,list(1:3,1:4),1:3,1:5))
lapply(allTests, listFlatten)

##SAMPLETESTS

test1  <- structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),T=11:14),.Names=c("a","b","c","l","a","b","c","l","T"),row.names=c(NA,-4L),class="data.frame")
test2a <- structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),T=11:14),.Names=c("a","b","c","l","a","b","c","l","T"),row.names=c(NA,-4L),class="data.frame")
test2b <- structure(list(structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),T=11:14),.Names=c("","","T"))
test3a <- structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II")),a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II","FIFTH")),T=11:14),.Names=c("a","b","c","l","a","b","c","l","T"),row.names=c(NA,-4L),class="data.frame")
test3b <- structure(list(structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),structure(list(a=c(1,2,3,4),b=structure(1:4,.Label=c("a","b","c","d"),class="factor"),c=structure(c(4L,1L,3L,2L),.Label=c("DD","ff","gg","HI"),class="factor"),l=list(c("a","b"),c(2,3,4),c(44,33,11,22),c("chr","ID","i","II","FIFTH"))),.Names=c("a","b","c","l"),row.names=c(NA,-4L),class="data.frame"),T=11:14),.Names=c("","","T"))
test4  <- list(1:4,list(1:3,1:4),1:3,1:5)

test20 <- list(test2a, listFlatten(test2b))
test20.df <- list(test2a, as.data.frame(listFlatten(test2b)))
test20.upsideDown <- list(listFlatten(test2b), test2a)


## CREATE A LISTS OF ALL TESTS
  allInputs <- ls(pattern="test")
  indx <- sapply(allInputs, function(x) is.vector(get(x)))  |  sapply(allInputs, function(x) is.list(get(x)))  
  allInputs.gotten <- lapply(allInputs[indx], get)

## LAPPLY OVER ALL THE OUTPUTS
  outputs <- lapply(allInputs.gotten, listFlatten, "XX")
  names(outputs) <- allInputs[indx]

## OUTPUT THEM
  outputs




input.crash <- structure(list(l = structure(c("a", "2", "44", "chr", "b", "3", "33", "ID", NA, "4", "11", "i", NA, NA, "22", "II"), .Dim = c(4L, 4L), .Dimnames = list(NULL, c("L01", "L02", "L03", "L04"))),     l.1 = structure(c("a", "2", "44", "chr", "b", "3", "33",     "ID", NA, "4", "11", "i", NA, NA, "22", "II", NA, NA, NA,     "FIFTH"), .Dim = 4:5, .Dimnames = list(NULL, c("L01", "L02",     "L03", "L04", "L05")))), .Names = c("l", "l.1"))
target <- structure(list(a = c(1, 2, 3, 4), b = structure(1:4, .Label = c("a", "b", "c", "d"), class = "factor"), c = structure(c(4L, 1L, 3L, 2L), .Label = c("DD", "ff", "gg", "HI"), class = "factor"), l = list(    c("a", "b"), c(2, 3, 4), c(44, 33, 11, 22), c("chr", "ID",     "i", "II")), a = c(1, 2, 3, 4), b = structure(1:4, .Label = c("a", "b", "c", "d"), class = "factor"), c = structure(c(4L, 1L, 3L, 2L), .Label = c("DD", "ff", "gg", "HI"), class = "factor"), l = list(    c("a", "b"), c(2, 3, 4), c(44, 33, 11, 22), c("chr", "ID",     "i", "II", "FIFTH")), T = 11:14), .Names = c("a", "b", "c", "l", "a", "b", "c", "l", "T"), row.names = c(NA, -4L), class = "data.frame")
targetCols <- structure(c(4L, 8L), .Names = c("l", "l"))
