} else if (t instanceof Double) {
out.writeDouble(wrappedDouble, (Double) t);
} else if (t instanceof Float) {
out.writeFloat(wrappedFloat, (Float) t);
} else if (t instanceof Boolean) {
out.writeBool(wrappedBool, (Boolean) t);
} else if (t instanceof byte[]) {
byte[] bytes = (byte[]) t;
out.writeTag(wrappedBytes, WireFormat.WIRETYPE_LENGTH_DELIMITED);
out.writeRawVarint32(bytes.length);
out.writeRawBytes(bytes);