optimize the baseList