repaint when fn changes