Any reason to be concerned about the performance of doing both hashCode() and equals() on a large recursive JValue? It would likely be noticeably more performant if we had a way to go straight from the string to the resulting object unless hasCode() and equals() are especially clever for JValues.