possible minor optimization