Now supports primitive types