String type() {
            if (idx == null && val.getClass().isArray()) {
                String t = val.getClass().getComponentType().getSimpleName();
                int len = Array.getLength(val);
                StringBuilder b = new StringBuilder();
                for (int i = 0; i < len - 1; i++) {
                    b.append(t + ",");
                }
                b.append(t);
                return b.toString();
            }
            if (val != null && value() instanceof Calendar) {
                return "Date";
            }
            return val == null ? "null" : value().getClass().getSimpleName();
        }