further tweaking initialization order