add the preload feature