still trying to get execution order right