@Override public final Format getFormat(Class cl) {
        Format ret = formats.get(cl);
        if (ret == null) {
            if (cl.isEnum()) {
                ret = new EnumTypeFormat(cl);
                formats.put(cl, ret);
            } else {
                ret = getBasicFormat(cl);
            }
        }

        return ret;
    }
@Override public final Format getFormat(Class cl)