add abstract services