First implementation with limited amount of interfaces