relay: add more implementation for interfaces