implemented lazy loading for most services