In NewRateLimitingQueue how to get both old and new passed to UpdateFunc

How can i retrieve both old and new from the queue?

		UpdateFunc: func(old interface{}, new interface{}) {
			key, err := cache.MetaNamespaceKeyFunc(new)
			if err == nil {

While processing each item c.processNextItem() how can I get both old and new?

  item, exists, err := c.informer.GetIndexer().GetByKey(event.key)

returns only the new.

Thanks a lot in advance.