### Question:
Binding extends Value { @Override public Binding copy() { return this; }  static boolean isBindingValue(@NonNull final String value); static Binding valueOf(@NonNull final String value, Context context, FunctionManager manager); @NonNull abstract Value evaluate(Context context, Value data, int index); @NonNull abstract String toString(); @Override Binding copy(); static final char BINDING_PREFIX_0; static final char BINDING_PREFIX_1; static final char BINDING_SUFFIX; static final String INDEX; static final String ARRAY_DATA_LENGTH_REFERENCE; static final String ARRAY_DATA_LAST_INDEX_REFERENCE; static final Pattern BINDING_PATTERN; static final Pattern FUNCTION_ARGS_DELIMITER; static final String DATA_PATH_DELIMITERS; static final char DELIMITER_OBJECT; static final char DELIMITER_ARRAY_OPENING; static final char DELIMITER_ARRAY_CLOSING; }### Answer:
@Test public void copy() throws Exception { Binding binding = Binding.valueOf("@{a.b.c}", null, null); assertThat(binding, is(binding.copy())); }