custom directives and serice layer added