work on routing and directives