add card related primitives