refactored oops support check