public static Object toReflectType(String typeSig, Object value) {
		switch (typeSig.charAt(0)) {
		case 'Z':
			return new Boolean(((Integer) value).intValue() != 0);
		case 'B':
			return new Byte(((Integer) value).byteValue());
		case 'S':
			return new Short(((Integer) value).shortValue());
		case 'C':
			return new Character((char) ((Integer) value).intValue());
		default:
			return value;
		}
	}