add primitives