dynamic refreshing fixed, need to reimplement some logic