added memoization to @JsonProperty