new primitives, triangle and square