public static @NotNull <T> ObjectPattern.Capture<T> object(@NotNull T value) {
    return instanceOf((Class<T>)value.getClass()).equalTo(value);
  }
public static @NotNull <T> ObjectPattern.Capture<T> object(@NotNull T value)