Initial implementation of lazy loading for protocol