type-correct