adding full support for primitive types valueOf