Now supports all common types + string