way too much time spent figuring out directives and services