nevermind, just spotted the missing `var` parameter in
func condense[T](e: Experiment[T, sGas]): var Experiment[T, sLiquid] =
cast[ptr Experiment[T, sLiquid]](e.addr)[]
Runbut I can't find a way to avoid casts or copies while transforming and an Experiment object
