Why not an interface?