{
  "extensions": [
    {
      "extensionFunction": {
        "functionAnchor": 2,
        "name": "gt:i64_i64"
      }
    },
    {
      "extensionFunction": {
        "functionAnchor": 4,
        "name": "alias:struct<i64,i64>"
      }
    },
    {
      "extensionFunction": {
        "functionAnchor": 5,
        "name": "named_struct:str_i64_str_i64"
      }
    },
    {
      "extensionFunction": {
        "functionAnchor": 1,
        "name": "is_not_null:i64"
      }
    },
    {
      "extensionFunction": {
        "name": "and:bool_bool"
      }
    },
    {
      "extensionFunction": {
        "functionAnchor": 3,
        "name": "alias:i64"
      }
    }
  ],
  "relations": [
    {
      "root": {
        "input": {
          "project": {
            "common": {
              "emit": {
                "outputMapping": [
                  2,
                  3
                ]
              }
            },
            "input": {
              "filter": {
                "common": {
                  "direct": {}
                },
                "input": {
                  "read": {
                    "common": {
                      "direct": {}
                    },
                    "baseSchema": {
                      "names": [
                        "i1",
                        "i2"
                      ],
                      "struct": {
                        "types": [
                          {
                            "i64": {
                              "nullability": "NULLABILITY_NULLABLE"
                            }
                          },
                          {
                            "i64": {
                              "nullability": "NULLABILITY_NULLABLE"
                            }
                          }
                        ]
                      },
                      "columnTypes": [
                        "NORMAL_COL",
                        "NORMAL_COL"
                      ]
                    },
                    "filter": {
                      "scalarFunction": {
                        "outputType": {
                          "bool": {
                            "nullability": "NULLABILITY_NULLABLE"
                          }
                        },
                        "arguments": [
                          {
                            "value": {
                              "scalarFunction": {
                                "functionReference": 1,
                                "outputType": {
                                  "bool": {
                                    "nullability": "NULLABILITY_REQUIRED"
                                  }
                                },
                                "arguments": [
                                  {
                                    "value": {
                                      "selection": {
                                        "directReference": {
                                          "structField": {}
                                        }
                                      }
                                    }
                                  }
                                ]
                              }
                            }
                          },
                          {
                            "value": {
                              "scalarFunction": {
                                "functionReference": 2,
                                "outputType": {
                                  "bool": {
                                    "nullability": "NULLABILITY_NULLABLE"
                                  }
                                },
                                "arguments": [
                                  {
                                    "value": {
                                      "selection": {
                                        "directReference": {
                                          "structField": {}
                                        }
                                      }
                                    }
                                  },
                                  {
                                    "value": {
                                      "literal": {
                                        "i64": "8"
                                      }
                                    }
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      }
                    },
                    "advancedExtension": {
                      "optimization": {
                        "@type": "type.googleapis.com/google.protobuf.StringValue",
                        "value": "isMergeTree=0\n"
                      }
                    }
                  }
                },
                "condition": {
                  "scalarFunction": {
                    "outputType": {
                      "bool": {
                        "nullability": "NULLABILITY_NULLABLE"
                      }
                    },
                    "arguments": [
                      {
                        "value": {
                          "scalarFunction": {
                            "functionReference": 1,
                            "outputType": {
                              "bool": {
                                "nullability": "NULLABILITY_REQUIRED"
                              }
                            },
                            "arguments": [
                              {
                                "value": {
                                  "selection": {
                                    "directReference": {
                                      "structField": {}
                                    }
                                  }
                                }
                              }
                            ]
                          }
                        }
                      },
                      {
                        "value": {
                          "scalarFunction": {
                            "functionReference": 2,
                            "outputType": {
                              "bool": {
                                "nullability": "NULLABILITY_NULLABLE"
                              }
                            },
                            "arguments": [
                              {
                                "value": {
                                  "selection": {
                                    "directReference": {
                                      "structField": {}
                                    }
                                  }
                                }
                              },
                              {
                                "value": {
                                  "literal": {
                                    "i64": "8"
                                  }
                                }
                              }
                            ]
                          }
                        }
                      }
                    ]
                  }
                }
              }
            },
            "expressions": [
              {
                "scalarFunction": {
                  "functionReference": 3,
                  "outputType": {
                    "i64": {
                      "nullability": "NULLABILITY_NULLABLE"
                    }
                  },
                  "arguments": [
                    {
                      "value": {
                        "selection": {
                          "directReference": {
                            "structField": {}
                          }
                        }
                      }
                    }
                  ]
                }
              },
              {
                "scalarFunction": {
                  "functionReference": 4,
                  "outputType": {
                    "struct": {
                      "types": [
                        {
                          "i64": {
                            "nullability": "NULLABILITY_NULLABLE"
                          }
                        },
                        {
                          "i64": {
                            "nullability": "NULLABILITY_NULLABLE"
                          }
                        }
                      ],
                      "nullability": "NULLABILITY_REQUIRED",
                      "names": [
                        "a",
                        "b"
                      ]
                    }
                  },
                  "arguments": [
                    {
                      "value": {
                        "scalarFunction": {
                          "functionReference": 5,
                          "outputType": {
                            "struct": {
                              "types": [
                                {
                                  "i64": {
                                    "nullability": "NULLABILITY_NULLABLE"
                                  }
                                },
                                {
                                  "i64": {
                                    "nullability": "NULLABILITY_NULLABLE"
                                  }
                                }
                              ],
                              "nullability": "NULLABILITY_REQUIRED",
                              "names": [
                                "a",
                                "b"
                              ]
                            }
                          },
                          "arguments": [
                            {
                              "value": {
                                "literal": {
                                  "string": "a"
                                }
                              }
                            },
                            {
                              "value": {
                                "selection": {
                                  "directReference": {
                                    "structField": {}
                                  }
                                }
                              }
                            },
                            {
                              "value": {
                                "literal": {
                                  "string": "b"
                                }
                              }
                            },
                            {
                              "value": {
                                "selection": {
                                  "directReference": {
                                    "structField": {
                                      "field": 1
                                    }
                                  }
                                }
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        "names": [
          "a#73",
          "col1#67"
        ],
        "outputSchema": {
          "types": [
            {
              "i64": {
                "nullability": "NULLABILITY_NULLABLE"
              }
            },
            {
              "struct": {
                "types": [
                  {
                    "i64": {
                      "nullability": "NULLABILITY_NULLABLE"
                    }
                  },
                  {
                    "i64": {
                      "nullability": "NULLABILITY_NULLABLE"
                    }
                  }
                ],
                "nullability": "NULLABILITY_REQUIRED",
                "names": [
                  "a",
                  "b"
                ]
              }
            }
          ],
          "nullability": "NULLABILITY_REQUIRED"
        }
      }
    }
  ]
}