added service trait