refine baseDist as an interface class