implement a dog & cat enqueue, dequeue system