code: def colliding_select_statement() -> SqlSelectStatementNode:
      """SELECT statement that would cause a collision of table aliases if reduced.
  
      SELECT
        SUM(bookings_src.bookings) AS bookings
        listings_src.country_latest AS listing__country_latest
        bookings_src.ds AS ds
      FROM (
        SELECT
          colliding_alias.booking AS bookings
          , colliding_alias.ds AS ds
          , colliding_alias.listing_id AS listing
        FROM demo.fct_bookings colliding_alias
        WHERE fct_bookings_src.ds >= "2020-01-01"
      ) bookings_src
      JOIN (
        SELECT
          colliding_alias.country_latest AS country_latest
          , colliding_alias.listing_id AS listing
        FROM demo.dim_listings colliding_alias
      ) listings_src
      ON bookings_src.listing = listings_src.listing
      GROUP BY bookings_src.ds
      """
      return SqlSelectStatementNode(
          description="query",
          select_columns=(
              SqlSelectColumn(
                  expr=SqlAggregateFunctionExpression(
                      sql_function=SqlFunction.SUM,
                      sql_function_args=[
                          SqlColumnReferenceExpression(
                              col_ref=SqlColumnReference(
                                  table_alias="bookings_src",
                                  column_name="bookings",
                              )
                          )
                      ],
                  ),
                  column_alias="bookings",
              ),
              SqlSelectColumn(
                  expr=SqlColumnReferenceExpression(
                      col_ref=SqlColumnReference(
                          table_alias="listings_src",
                          column_name="listing__country_latest",
                      )
                  ),
                  column_alias="listing__country_latest",
              ),
              SqlSelectColumn(
                  expr=SqlColumnReferenceExpression(
                      col_ref=SqlColumnReference(
                          table_alias="bookings_src", column_name="ds"
                      )
                  ),
                  column_alias="ds",
              ),
          ),
          from_source=SqlSelectStatementNode(
              description="bookings_src",
              select_columns=(
                  SqlSelectColumn(
                      expr=SqlColumnReferenceExpression(
                          col_ref=SqlColumnReference(
                              table_alias="colliding_alias",
                              column_name="booking",
                          )
                      ),
                      column_alias="bookings",
                  ),
                  SqlSelectColumn(
                      expr=SqlColumnReferenceExpression(
                          col_ref=SqlColumnReference(
                              table_alias="colliding_alias",
                              column_name="ds",
                          )
                      ),
                      column_alias="ds",
                  ),
                  SqlSelectColumn(
                      expr=SqlColumnReferenceExpression(
                          col_ref=SqlColumnReference(
                              table_alias="colliding_alias",
                              column_name="listing_id",
                          )
                      ),
                      column_alias="listing",
                  ),
              ),
              from_source=SqlTableFromClauseNode(
                  sql_table=SqlTable(
                      schema_name="demo", table_name="fct_bookings"
                  )
              ),
              from_source_alias="colliding_alias",
              joins_descs=(),
              where=None,
              group_bys=(),
              order_bys=(),
              limit=None,
          ),
          from_source_alias="bookings_src",
          joins_descs=(
              SqlJoinDescription(
                  right_source=SqlSelectStatementNode(
                      description="listings_src",
                      select_columns=(
                          SqlSelectColumn(
                              expr=SqlColumnReferenceExpression(
                                  col_ref=SqlColumnReference(
                                      table_alias="colliding_alias",
                                      column_name="country",
                                  )
                              ),
                              column_alias="country_latest",
                          ),
                          SqlSelectColumn(
                              expr=SqlColumnReferenceExpression(
                                  col_ref=SqlColumnReference(
                                      table_alias="colliding_alias",
                                      column_name="listing_id",
                                  )
                              ),
                              column_alias="listing",
                          ),
                      ),
                      from_source=SqlTableFromClauseNode(
                          sql_table=SqlTable(
                              schema_name="demo",
                              table_name="dim_listings",
                          )
                      ),
                      from_source_alias="colliding_alias",
                      joins_descs=(),
                      where=None,
                      group_bys=(),
                      order_bys=(),
                      limit=None,
                  ),
                  right_source_alias="listings_src",
                  on_condition=SqlComparisonExpression(
                      left_expr=SqlColumnReferenceExpression(
                          SqlColumnReference(
                              table_alias="bookings_src",
                              column_name="listing",
                          ),
                      ),
                      comparison=SqlComparison.EQUALS,
                      right_expr=SqlColumnReferenceExpression(
                          SqlColumnReference(
                              table_alias="listings_src",
                              column_name="listing",
                          ),
                      ),
                  ),
                  join_type=SqlJoinType.LEFT_OUTER,
              ),
          ),
          group_bys=(
              SqlSelectColumn(
                  expr=SqlColumnReferenceExpression(
                      SqlColumnReference(
                          table_alias="bookings_src",
                          column_name="ds",
                      )
                  ),
                  column_alias="ds",
              ),
          ),
          where=SqlComparisonExpression(
              left_expr=SqlColumnReferenceExpression(
                  SqlColumnReference(
                      table_alias="bookings_src",
                      column_name="ds",
                  )
              ),
              comparison=SqlComparison.LESS_THAN_OR_EQUALS,
              right_expr=SqlStringLiteralExpression("2020-01-05"),
          ),
          order_bys=(),
          limit=None,
      )
  
imports: from __future__ import annotations
  import pytest
  from _pytest.fixtures import FixtureRequest
  from metricflow.dataflow.sql_table import SqlTable
  from metricflow.sql.optimizer.rewriting_sub_query_reducer import SqlRewritingSubQueryReducer
  from metricflow.sql.sql_exprs import SqlAggregateFunctionExpression, SqlColumnReference, SqlColumnReferenceExpression, SqlComparison, SqlComparisonExpression, SqlFunction, SqlStringExpression, SqlStringLiteralExpression
  from metricflow.sql.sql_plan import SqlJoinDescription, SqlJoinType, SqlOrderByDescription, SqlSelectColumn, SqlSelectStatementNode, SqlTableFromClauseNode
  from metricflow.test.fixtures.setup_fixtures import MetricFlowTestSessionState
  from metricflow.test.sql.compare_sql_plan import assert_default_rendered_sql_equal
label_desc: Use image node_id 5 for calling a global function with example usage: colliding_select_statement() and returns: SqlSelectStatementNode