implement utility method