@type interface Object1<#x|> { } concrete Object2<|#y> { defines Object1<#y> }