private String wrapWithJson() {
		if (isString) {
			return "\"" + this.string + "\"";
		} else if (isObject) {
			StringBuilder sb = new StringBuilder();
			for (int i = 0; i < this.keys.size(); i++) {
				sb.append(",\"").append(this.keys.get(i)).append("\":").append(this.array.get(i).wrapWithJson());
			}
			return "{" + (sb.length() > 1 ? sb.substring(1) : "") + "}";
		} else {
			StringBuilder sb = new StringBuilder();
			for (int i = 0; i < this.array.size(); i++) {
				sb.append(",").append(this.array.get(i).wrapWithJson());
			}
			return "[" + (sb.length() > 1 ? sb.substring(1) : "") + "]";
		}
	}