parent helper and loads of small fixes