cache proxy fun