let MakeType[tree, paintRecords, localContext] ← <localContext4, newTgn>
where <localContext4, newTgn> ← CreateRecordTGN [ localContext3, paint,
frozenFieldList]
where <localContext3, frozenFieldList> ← FreezeFieldList [localContext2, fieldList]
where <localContext2, fieldList> ← MakeFieldList [RecList, paintRecords, localContext1]
where <localContext1, paint> ←
if paintRecords then GetUniquePaint [localContext]
else GetUnpaintedPaint [localContext]