re-order in initialization