class MSEImpurityMeasure implements ImpurityMeasure<MSEImpurityMeasure> {

    @Override public MSEImpurityMeasure add(MSEImpurityMeasure b) {
        return new MSEImpurityMeasure(
            leftY + b.leftY,
            leftY2 + b.leftY2,
            leftCnt + b.leftCnt,
            rightY + b.rightY,
            rightY2 + b.rightY2,
            rightCnt + b.rightCnt
        );
    }

    public  MSEImpurityMeasure(double leftY, double leftY2, long leftCnt, double rightY, double rightY2, long rightCnt);

}