some re-organization