(so it works - code MIGHT be clearer if changed...)