fix: use lazyload