improvement - data fetch