digraph G {
	root [style=filled,label="Root"];
	subgraph cluster0{
		label="Set 0 RecordType(INTEGER EMPNO, VARCHAR(20) ENAME, VARCHAR(10) JOB, INTEGER MGR, TIMESTAMP(0) HIREDATE, INTEGER SAL, INTEGER COMM, INTEGER DEPTNO, BOOLEAN SLACKER)";
		rel8 [label="rel#8:LogicalTableScan\ntable=[CATALOG, SALES, EMP]\nrows=14.0, cost={inf}",shape=box]
		subset13 [label="rel#13:RelSubset#0.NONE.[]"]
		subset26 [label="rel#26:RelSubset#0.ENUMERABLE.[]",color=red]
		subset31 [label="rel#31:RelSubset#0.ENUMERABLE.[2 DESC-nulls-last, 1 ASC-nulls-first]",color=red]
		subset26 -> subset31;	}
	subgraph cluster1{
		label="Set 1 RecordType(VARCHAR(20) ENAME, VARCHAR(10) JOB, INTEGER SAL, INTEGER COMM)";
		rel9 [label="rel#9:LogicalTableScan\ntable=[CATALOG, SALES, BONUS]\nrows=1.0, cost={inf}",shape=box]
		subset14 [label="rel#14:RelSubset#1.NONE.[]"]
		subset27 [label="rel#27:RelSubset#1.ENUMERABLE.[]",color=red]
	}
	subgraph cluster2{
		label="Set 2 RecordType(INTEGER EMPNO, VARCHAR(20) ENAME, VARCHAR(10) JOB, INTEGER MGR, TIMESTAMP(0) HIREDATE, INTEGER SAL, INTEGER COMM, INTEGER DEPTNO, BOOLEAN SLACKER, VARCHAR(20) ENAME0, VARCHAR(10) JOB0, INTEGER SAL0, INTEGER COMM0)";
		rel15 [label="rel#15:LogicalJoin\nleft=RelSubset#13,right=RelSubset#14,condition=AND(=($1, $9), =($2, $10)),joinType=inner\nrows=1.0, cost={inf}",shape=box]
		rel19 [label="rel#19:LogicalSort\ninput=RelSubset#16,sort0=$2,sort1=$1,dir0=DESC-nulls-last,dir1=ASC-nulls-first\nrows=1.0, cost={inf}",shape=box]
		rel22 [label="rel#22:AbstractConverter\ninput=RelSubset#24,convention=ENUMERABLE,sort=[2 DESC-nulls-last, 1 ASC-nulls-first]\nrows=1.0, cost={inf}",shape=box]
		rel30 [label="rel#30:EnumerableSort\ninput=RelSubset#29,sort0=$2,sort1=$1,dir0=DESC-nulls-last,dir1=ASC-nulls-first\nrows=1.0, cost={inf}",shape=box]
		rel28 [label="rel#28:EnumerableHashJoin\nleft=RelSubset#26,right=RelSubset#27,condition=AND(=($1, $9), =($2, $10)),joinType=inner\nrows=1.0, cost={inf}",shape=box]
		rel32 [label="rel#32:EnumerableHashJoin\nleft=RelSubset#31,right=RelSubset#27,condition=AND(=($1, $9), =($2, $10)),joinType=inner\nrows=1.0, cost={inf}",shape=box]
		subset16 [label="rel#16:RelSubset#2.NONE.[]"]
		subset24 [label="rel#24:RelSubset#2.NONE.[2 DESC-nulls-last, 1 ASC-nulls-first]"]
		subset25 [label="rel#25:RelSubset#2.ENUMERABLE.[2 DESC-nulls-last, 1 ASC-nulls-first]"]
		subset29 [label="rel#29:RelSubset#2.ENUMERABLE.[]"]
		subset29 -> subset25;		subset16 -> subset24;	}
	root -> subset25;
	subset13 -> rel8;
	subset14 -> rel9;
	subset16 -> rel15; rel15 -> subset13[label="0"]; rel15 -> subset14[label="1"];
	subset24 -> rel19; rel19 -> subset16;
	subset25 -> rel22; rel22 -> subset24;
	subset25 -> rel30; rel30 -> subset29;
	subset29 -> rel28; rel28 -> subset26[label="0"]; rel28 -> subset27[label="1"];
	subset25 -> rel32; rel32 -> subset31[label="0"]; rel32 -> subset27[label="1"];
}