relocated helpers