interface -> class