Resolve types in lambda arguments, recursively substitute