move typer val into body and make it lazy
Applied/Applied2 --> Applied/TypeApplied; relocate mkSyntheticParam