@Override
    public Object clone() {
        final TinkerVertexProperty vp = new TinkerVertexProperty(id, vertex, key, value);
        vp.properties = properties;
        return vp;
    }
Use this constructor to construct {@link VertexProperty} instances for {@link TinkerGraph} where the {@code id}
can be explicitly set and validated against the expected data type.
tinkergraph-gremlin/src/main/java/org/apache/tinkerpop/gremlin/tinkergraph/structure/TinkerVertexProperty.java