   public Parcelable save(T target, Parcelable p) {
     Bundle state = H.putParent(super.save(target, p));
     {{#fields}}
-    H.put{{primitive}}{{method}}(state, \"{{name}}\", target.{{name}});
+    H.put{{method}}(state, \"{{name}}\", target.{{name}});
     {{/fields}}
     return state;
   }

  public void save(T target, Bundle state) {
    super.save(target, state);
    {{#fields}}
    H.put{{primitive}}{{method}}(state, \"{{name}}\", target.{{name}});
    {{/fields}}
  }
  {{/view?}}

;; bundle-method

(def ^:private exact-types
  {"boolean"                                     "Boolean",
   "boolean[]"                                   "BooleanArray",
   "java.lang.Boolean"                           "BoxedBoolean",
   "byte"                                        "Byte",
   "byte[]"                                      "ByteArray",
   "java.lang.Byte"                              "BoxedByte",
   "char"                                        "Char",
   "char[]"                                      "CharArray",
   "java.lang.Char"                              "BoxedChar",
   "double"                                      "Double",
   "double[]"                                    "DoubleArray",
   "java.lang.Double"                            "BoxedDouble",
   "float"                                       "Float",
   "float[]"                                     "FloatArray",
   "java.lang.Float"                             "BoxedFloat",
   "int"                                         "Int",
   "int[]"                                       "IntArray",
   "java.lang.Integer"                           "BoxedInt"
   "long"                                        "Long",
   "long[]"                                      "LongArray",
   "java.lang.Long"                              "BoxedLong",
   "short"                                       "Short",
   "short[]"                                     "ShortArray",
   "java.lang.Short"                             "BoxedShort",
   
   "java.lang.CharSequence"                      "CharSequence",
   "java.lang.CharSequence[]"                    "CharSequenceArray",
   "java.lang.String"                            "String",
   "java.lang.String[]"                          "StringArray",
   "java.util.ArrayList<java.lang.CharSequence>" "CharSequenceArrayList",
   "java.util.ArrayList<java.lang.Integer>"      "IntegerArrayList",
   "java.util.ArrayList<java.lang.String>"       "StringArrayList",
   
   "android.os.Bundle"                           "Bundle",
   "android.os.Parcelable[]"                     "ParcelableArray"})

(defn- parcelable? [type]
