fixed initialization. edge case, yes