integrate more types