iterates over cdp instead of rp