@value interface Type0 {} @value interface Type1 { refines Type0 } @value interface Type2 { refines Type1 } concrete Type4 { defines Defined } @type interface Defined<#x> {} @value interface Interface0<|#x> {} @value interface Interface1<#y|> {} @value interface Interface2<#y> { refines Interface0<#y> refines Interface1<#y> } @value interface Interface3<#y> { refines Interface0<#y> refines Interface1<#y> }