update for new primitives