class CubeId {

    @Nullable
    CubeId getAncestor(int level) {
        return 0 <= level && level < getLevel() ? new CubeId(dimensionIds, Arrays.copyOf(dimensionsValues, level)) : null;
    }

    private  CubeId(@NonNull String[] dimensionIds, @NonNull String[] dimensionsValues);

}