this works well but I think we need to restructure this function some more so we don't call valuePos.indexOf at the start... There are some assumptions about receiving values like this: "PARAM;X=true" (no value) which in practice never happens so we can probably do some more optimizations to bridge the final gap between the original time and the current time.