factory and protocol defined. #2
primary services implementation provided. #2