added primitives comparison