          self.default_cols = True
          self.default_ordering = True
          self.standard_ordering = True
          self.used_aliases = set()
          self.filter_is_sticky = False
          self.subquery = False
  
          # SQL-related attributes
          # Select and related select clauses are expressions to use in the
          # SELECT clause of the query.
          # The select is used for cases where we want to set up the select
          # clause to contain other than default fields (values(), subqueries...)
          # Note that annotations go to annotations dictionary.
          self.select = ()
          self.where = WhereNode()
          # The group_by attribute can have one of the following forms:
          #  - None: no group by at all in the query
          #  - A tuple of expressions: group by (at least) those expressions.
          #    String refs are also allowed for now.
          #  - True: group by all select fields of the model
          # See compiler.get_group_by() for details.
          self.group_by = None
          self.order_by = ()
          self.low_mark, self.high_mark = 0, None  # Used for offset/limit
          self.distinct = False
          self.distinct_fields = ()
          self.select_for_update = False
          self.select_for_update_nowait = False
          self.select_for_update_skip_locked = False
          self.select_for_update_of = ()
          self.select_for_no_key_update = False
  
          self.select_related = False
          # Arbitrary limit for select_related to prevents infinite recursion.
          self.max_depth = 5
  
          # Holds the selects defined by a call to values() or values_list()
          # excluding annotation_select and extra_select.
          self.values_select = ()
  
          # SQL annotation-related attributes
          self.annotations = {}  # Maps alias -> Annotation Expression
          self.annotation_select_mask = None
          self._annotation_select_cache = None
  
          # Set combination attributes
          self.combinator = None
          self.combinator_all = False
          self.combined_queries = ()
  
          # These are for extensions. The contents are more or less appended
          # verbatim to the appropriate clause.
          self.extra = {}  # Maps col_alias -> (col_sql, params).
          self.extra_select_mask = None
 
</s> remove         self.extra_select_mask = None
        self._extra_select_cache = None

        self.extra_tables = ()
        self.extra_order_by = ()

        # A tuple that is a set of model field names and either True, if these
        # are the fields to defer, or False if these are the only fields to
        # load.
        self.deferred_loading = (frozenset(), True)
 </s> add  </s> remove         self.default_cols = True
        self.default_ordering = True
        self.standard_ordering = True
 </s> add  </s> remove         self.explain_info = None

 </s> add 
          self.default_cols = True
          self.default_ordering = True
          self.standard_ordering = True
          self.used_aliases = set()













































  
          # These are for extensions. The contents are more or less appended
          # verbatim to the appropriate clause.
          self.extra = {}  # Maps col_alias -> (col_sql, params).
          self.extra_select_mask = None
keep keep keep keep replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace replace keep keep keep keep keep
 Refs #27624 -- Optimized sql.Query creation by moving immutable/singleton attributes to class attributes. 
django/db/models/sql/query.py