Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))

Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=0, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')), ('g', Col(name='g'))))

Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Filter(input=Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))

Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='<', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'sum', 'a'),))

Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'max', 'a'),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='<=', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner')


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'count', None),))

Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'min', None),))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'max', None),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'sum', None),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'min', 'a'),))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Filter(input=Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'count', 'a'),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=0, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'min', None),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='<=', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'max', 'a'),))


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'max', None),))


Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='<>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'sum', None),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=0, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'count', 'a'),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'min', None),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'min', 'a'),))


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=Or(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'max', 'a'),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'max', None),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='<=', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=0, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'min', None),))


Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner')


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'sum', None),))


Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'min', 'a'),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'max', 'a'),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'max', None),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'count', 'a'),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=0, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='=', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'min', 'a'),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'sum', None),))


Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'max', None),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='<=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'count', 'a'),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'max', 'a'),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='<>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'min', None),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner')


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='=', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'min', 'a'),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'sum', None),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=0, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'max', None),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'min', None),))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='=', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'max', 'a'),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Filter(input=Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'count', 'a'),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner')


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'min', 'a'),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=Or(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=0, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'sum', None),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))


Filter(input=Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'min', None),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Project(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=7, base=BaseType.INT))), exprs=(('a', Col(name='a')),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='<>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('n', 'max', None),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='<>', left=Col(name='b'), right=Lit(value=2, base=BaseType.INT)))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT)))), pred=And(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'min', 'a'),))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'count', 'a'),))


Filter(input=Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT))), pred=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))


Aggregate(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), keys=('g',), aggs=(('s', 'max', 'a'),))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=Or(left=BinOp(op='>', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)), right=BinOp(op='=', left=Col(name='g'), right=Lit(value=1, base=BaseType.INT))))


Filter(input=Join(left=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), right=Scan(table='u', schema=Schema(columns=(Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='w', type=ScalarType(base=BaseType.INT, nullable=True))), multiset=True)), pred=BinOp(op='=', left=Col(name='g'), right=Col(name='g_r')), kind='inner'), pred=BinOp(op='<>', left=Col(name='a'), right=Lit(value=3, base=BaseType.INT)))


Filter(input=Scan(table='t', schema=Schema(columns=(Column(name='a', type=ScalarType(base=BaseType.INT, nullable=False)), Column(name='b', type=ScalarType(base=BaseType.INT, nullable=True)), Column(name='g', type=ScalarType(base=BaseType.INT, nullable=False))), multiset=True)), pred=BinOp(op='=', left=Col(name='a'), right=Lit(value=5, base=BaseType.INT)))