Modified interfaces and implementations. Format code