add type support