added type intrinsics