going for non child approach - changes too big for this approach