Type argument inference failed for type parameter '|1' of '|2'. Type argument could not be inferred from the argument passed ...