stack logic is reversed, so some iterator methods must also be reveresed
make sure priority map is rewound before returning priority key