add preload logic