added outgoing edge functions