#name: resolved self-reference cycles with disjunctions
#evalPartial
-- in.cue --
a: b & {x: 1} | {y:     1} // {x:1,y:3,z:2} | {y:1}
b: {x:     2} | c & {z: 2} // {x:2} | {x:1,y:3,z:2}
c: a & {y: 3} | {z:     3} // {x:1,y:3,z:2} | {z:3}

@test(eq, {
	a: {x: 1, z: 2, y: 3} | {y: 1}
	b: {x: 2} | {z: 2, y: 3, x: 1}
	c: {y: 3, x: 1, z: 2} | {z: 3}
})
-- out/eval/stats --
Leaks:  6
Freed:  46
Reused: 32
Allocs: 20
Retain: 0

Unifications: 16
Conjuncts:    55
Disjuncts:    18

NumCloseIDs: 6
