I also don't think we need the type parameter here. Here it could seem necessary for domain matching, but we don't have a contract that two variables of the same type have the same domain, so I don't think we gain anything from having it.