fix transform bug: slice * identity
add ischeme caching (hacky, waiting for new elems)