You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2026/04/09 20:39:43 UTC

(tinkerpop) branch master updated (41a90083a8 -> d3186e7863)

This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git


    from 41a90083a8 CTR add LinkedIn link to site
     add 9959310019 Add splitByElement() to Gherkin step definitions for nested collection parsing
     add 6a95ff5a7b docs
     new d3186e7863 Merge branch '3.8-dev'

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 docs/src/dev/developer/for-committers.asciidoc     | 10 +++++
 .../Gherkin/CommonSteps.cs                         | 34 ++++++++++++++++-
 .../Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs |  2 +
 gremlin-go/driver/cucumber/cucumberSteps_test.go   | 31 +++++++++++++++-
 gremlin-go/driver/cucumber/gremlin.go              |  2 +
 .../test/cucumber/feature-steps.js                 | 29 ++++++++++++++-
 .../gremlin-javascript/test/cucumber/gremlin.js    |  2 +
 .../src/main/python/tests/feature/feature_steps.py | 25 ++++++++++++-
 .../src/main/python/tests/feature/gremlin.py       |  2 +
 .../tinkerpop/gremlin/features/StepDefinition.java | 43 ++++++++++++++++++----
 .../gremlin/language/translator/translations.json  | 34 +++++++++++++++++
 .../gremlin/test/features/map/Fold.feature         | 24 +++++++++++-
 12 files changed, 222 insertions(+), 16 deletions(-)


(tinkerpop) 01/01: Merge branch '3.8-dev'

Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit d3186e78639fa673211e6a908d52f0df925975b0
Merge: 41a90083a8 6a95ff5a7b
Author: Stephen Mallette <st...@amazon.com>
AuthorDate: Thu Apr 9 16:39:26 2026 -0400

    Merge branch '3.8-dev'

 docs/src/dev/developer/for-committers.asciidoc     | 10 +++++
 .../Gherkin/CommonSteps.cs                         | 34 ++++++++++++++++-
 .../Gremlin.Net.IntegrationTest/Gherkin/Gremlin.cs |  2 +
 gremlin-go/driver/cucumber/cucumberSteps_test.go   | 31 +++++++++++++++-
 gremlin-go/driver/cucumber/gremlin.go              |  2 +
 .../test/cucumber/feature-steps.js                 | 29 ++++++++++++++-
 .../gremlin-javascript/test/cucumber/gremlin.js    |  2 +
 .../src/main/python/tests/feature/feature_steps.py | 25 ++++++++++++-
 .../src/main/python/tests/feature/gremlin.py       |  2 +
 .../tinkerpop/gremlin/features/StepDefinition.java | 43 ++++++++++++++++++----
 .../gremlin/language/translator/translations.json  | 34 +++++++++++++++++
 .../gremlin/test/features/map/Fold.feature         | 24 +++++++++++-
 12 files changed, 222 insertions(+), 16 deletions(-)

diff --cc docs/src/dev/developer/for-committers.asciidoc
index fa22fed4fa,c5e75ebfe0..3fd3cd1f12
--- a/docs/src/dev/developer/for-committers.asciidoc
+++ b/docs/src/dev/developer/for-committers.asciidoc
@@@ -421,12 -425,17 +421,22 @@@ such as null and spaces
  * Vertex - *v[_xxx_]* - The "xxx" should be replaced with the "name" property of a vertex in the graph. This syntax may
  include the `.id` suffix which would indicate getting the vertex identifier or the `.sid` suffix which gets a string
  representation of the edge identifier.
 +* VertexProperty - *vp[_xxx_]* - The "xxx" should be replaced with a representation of a vertex property in the form of
 +the `vertex_name-key->value`. Note that the key is just a string and the value is a typed value using the syntax
 +presented here.
 +
 +vp[marko-name->marko]
  
+ When using this syntax, it is important to remember that lists and sets may contain other lists or sets as elements,
+ allowing for nested collection notation such as `l[l[d[1].i,d[2].i],l[d[3].i,d[4].i]]`. The step definitions across all
+ language variants parse these correctly by tracking bracket depth so that commas inside inner brackets are not treated
+ as top-level separators. However, mixed-type nesting is not supported — a list or set may not contain a map as a direct
+ element (e.g. `l[m[{"name":"marko"}]]` will not parse correctly). This limitation exists because the type notation
+ matchers are applied in order using substring matching, and the `m[...]` matcher fires before `l[...]` on the outer
+ value, causing the map pattern to consume part of the surrounding bracket syntax. Same-type nesting (list-of-lists,
+ set-of-sets) and nesting of scalar types (vertices, edges, numbers, strings) inside lists or sets works as
+ expected.
+ 
  In addition, parameter names should adhere to a common form as they hold some meaning to certain language variant
  implementations:
  
diff --cc gremlin-js/gremlin-javascript/test/cucumber/feature-steps.js
index 59eeb1d76a,4581abde5c..63f6e26fe1
--- a/gremlin-js/gremlin-javascript/test/cucumber/feature-steps.js
+++ b/gremlin-js/gremlin-javascript/test/cucumber/feature-steps.js
@@@ -452,20 -463,23 +474,23 @@@ function toArray(stringList) 
    if (stringList === '') {
      return new Array(0);
    }
-   return stringList.split(',').map(x => parseValue.call(this, x));
+   return splitByElement(stringList).map(x => parseValue.call(this, x));
  }
  
 -function toSet(stringList) {
 -  if (stringList === '') {
 +function toMap(stringMap) {
 +  return parseMapValue.call(this, JSON.parse(stringMap));
 +}
 +
 +function toSet(stringSet) {
 +  if (stringSet === '') {
      return new Set();
    }
-   return new Set(stringSet.split(',').map(x => parseValue.call(this, x)));
+ 
+   const s = new Set();
+   splitByElement(stringList).forEach(x => s.add(parseValue.call(this, x)));
+   return s;
  }
  
 -function toMap(stringMap) {
 -  return parseMapValue.call(this, JSON.parse(stringMap));
 -}
 -
  function parseMapValue(value) {
    if (value === null)
      return null;
diff --cc gremlin-python/src/main/python/tests/feature/feature_steps.py
index c074bf171a,7902b27c86..f82b65ab55
--- a/gremlin-python/src/main/python/tests/feature/feature_steps.py
+++ b/gremlin-python/src/main/python/tests/feature/feature_steps.py
@@@ -318,12 -232,27 +318,33 @@@ def nothing_happening(step)
      return
  
  
 +@then("the file {file:QuotedString} should exist")
 +def unsupported_scenario(step, file):
 +    # this is a do nothing step as the test can't be supported in remote cases
 +    return
 +
 +
+ def _split_by_element(s):
+     depth = 0
+     current = []
+     results = []
+     for c in s:
+         if c == '[':
+             depth += 1
+             current.append(c)
+         elif c == ']':
+             depth -= 1
+             current.append(c)
+         elif c == ',' and depth == 0:
+             results.append(''.join(current).strip())
+             current = []
+         else:
+             current.append(c)
+     if current:
+         results.append(''.join(current).strip())
+     return results
+ 
+ 
  def _convert(val, ctx):
      graph_name = ctx.graph_name
      if isinstance(val, dict):  # convert dictionary keys/values
diff --cc gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/features/StepDefinition.java
index 1d653c8a89,dc070f74c4..09987991ac
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/features/StepDefinition.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/features/StepDefinition.java
@@@ -135,20 -131,14 +135,20 @@@ public final class StepDefinition 
          }));
          add(Pair.with(Pattern.compile("l\\[\\]"), s -> "[]"));
          add(Pair.with(Pattern.compile("l\\[(.*)\\]"), s -> {
-             final String[] items = s.split(",");
-             final String listItems = Stream.of(items).map(String::trim).map(x -> convertToString(x)).collect(Collectors.joining(","));
+             final List<String> items = splitByElement(s);
+             final String listItems = items.stream().map(String::trim).map(x -> convertToString(x)).collect(Collectors.joining(","));
              return String.format("[%s]", listItems);
          }));
 +        add(Pair.with(Pattern.compile("s\\[\\]"), s -> "{}"));
 +        add(Pair.with(Pattern.compile("s\\[(.*)\\]"), s -> {
 +            final String[] items = s.split(",");
 +            final String setItems = Stream.of(items).map(String::trim).map(x -> convertToString(x)).collect(Collectors.joining(","));
 +            return String.format("{%s}", setItems);
 +        }));
          add(Pair.with(Pattern.compile("s\\[\\]"), s -> String.format("{}")));
          add(Pair.with(Pattern.compile("s\\[(.*)\\]"), s -> {
-             final String[] items = s.split(",");
-             final String listItems = Stream.of(items).map(String::trim).map(x -> convertToString(x)).collect(Collectors.joining(","));
+             final List<String> items = splitByElement(s);
+             final String listItems = items.stream().map(String::trim).map(x -> convertToString(x)).collect(Collectors.joining(","));
              return String.format("{%s}", listItems);
          }));
          add(Pair.with(Pattern.compile("d\\[(NaN)\\]"), s -> "NaN"));
@@@ -189,16 -193,16 +189,16 @@@
              }
          }));
  
 -        add(Pair.with(Pattern.compile("l\\[\\]"), s -> Collections.emptyList()));
 +        add(Pair.with(Pattern.compile("l\\[\\]"), s -> new ArrayList<>()));
          add(Pair.with(Pattern.compile("l\\[(.*)\\]"), s -> {
-             final String[] items = s.split(",");
-             return Stream.of(items).map(String::trim).map(x -> convertToObject(x)).collect(Collectors.toList());
+             final List<String> items = splitByElement(s);
+             return items.stream().map(String::trim).map(x -> convertToObject(x)).collect(Collectors.toList());
          }));
  
 -        add(Pair.with(Pattern.compile("s\\[\\]"), s -> Collections.emptySet()));
 +        add(Pair.with(Pattern.compile("s\\[\\]"), s -> new HashSet<>()));
          add(Pair.with(Pattern.compile("s\\[(.*)\\]"), s -> {
-             final String[] items = s.split(",");
-             return Stream.of(items).map(String::trim).map(x -> convertToObject(x)).collect(Collectors.toSet());
+             final List<String> items = splitByElement(s);
+             return items.stream().map(String::trim).map(x -> convertToObject(x)).collect(Collectors.toSet());
          }));
  
          // return the string values as is, used to wrap results that may contain other regex patterns
diff --cc gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/language/translator/translations.json
index 04249b8786,0000000000..8f31f50286
mode 100644,000000..100644
--- a/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/language/translator/translations.json
+++ b/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/language/translator/translations.json
@@@ -1,44099 -1,0 +1,44133 @@@
 +[
 +    {
 +        "scenario": "g_V_branchXlabel_isXpersonX_countX_optionX1__ageX_optionX0__langX_optionX0__nameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\"))",
 +                "language": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\"))",
 +                "canonical": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\"))",
 +                "anonymized": "g.V().branch(__.label().is(string0).count()).option(xx1, __.values(string1)).option(xx2, __.values(string2)).option(xx2, __.values(string3))",
 +                "dotnet": "g.V().Branch<object>(__.Label().Is(\"person\").Count()).Option(xx1, __.Values<object>(\"age\")).Option(xx2, __.Values<object>(\"lang\")).Option(xx2, __.Values<object>(\"name\"))",
 +                "go": "g.V().Branch(gremlingo.T__.Label().Is(\"person\").Count()).Option(xx1, gremlingo.T__.Values(\"age\")).Option(xx2, gremlingo.T__.Values(\"lang\")).Option(xx2, gremlingo.T__.Values(\"name\"))",
 +                "groovy": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\"))",
 +                "java": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\"))",
 +                "javascript": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\"))",
 +                "python": "g.V().branch(__.label().is_('person').count()).option(xx1, __.values('age')).option(xx2, __.values('lang')).option(xx2, __.values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_branchXlabel_isXpersonX_countX_optionX1__ageX_optionX0__langX_optionX0__nameX_optionXany__labelX",
 +        "traversals": [
 +            {
 +                "original": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\")).option(Pick.any, __.label())",
 +                "language": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\")).option(Pick.any, __.label())",
 +                "canonical": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\")).option(Pick.any, __.label())",
 +                "anonymized": "g.V().branch(__.label().is(string0).count()).option(xx1, __.values(string1)).option(xx2, __.values(string2)).option(xx2, __.values(string3)).option(Pick.any, __.label())",
 +                "dotnet": "g.V().Branch<object>(__.Label().Is(\"person\").Count()).Option(xx1, __.Values<object>(\"age\")).Option(xx2, __.Values<object>(\"lang\")).Option(xx2, __.Values<object>(\"name\")).Option(Pick.Any, __.Label())",
 +                "go": "g.V().Branch(gremlingo.T__.Label().Is(\"person\").Count()).Option(xx1, gremlingo.T__.Values(\"age\")).Option(xx2, gremlingo.T__.Values(\"lang\")).Option(xx2, gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.Any, gremlingo.T__.Label())",
 +                "groovy": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\")).option(Pick.any, __.label())",
 +                "java": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\")).option(Pick.any, __.label())",
 +                "javascript": "g.V().branch(__.label().is(\"person\").count()).option(xx1, __.values(\"age\")).option(xx2, __.values(\"lang\")).option(xx2, __.values(\"name\")).option(Pick.any, __.label())",
 +                "python": "g.V().branch(__.label().is_('person').count()).option(xx1, __.values('age')).option(xx2, __.values('lang')).option(xx2, __.values('name')).option(Pick.any_, __.label())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_branchXageX_optionXltX30X__youngX_optionXgtX30X__oldX_optionXnone__on_the_edgeX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").branch(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gt(30), __.constant(\"old\")).option(Pick.none, __.constant(\"on the edge\"))",
 +                "language": "g.V().hasLabel(\"person\").branch(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gt(30), __.constant(\"old\")).option(Pick.none, __.constant(\"on the edge\"))",
 +                "canonical": "g.V().hasLabel(\"person\").branch(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gt(30), __.constant(\"old\")).option(Pick.none, __.constant(\"on the edge\"))",
 +                "anonymized": "g.V().hasLabel(string0).branch(__.values(string1)).option(P.lt(number0), __.constant(string2)).option(P.gt(number0), __.constant(string3)).option(Pick.none, __.constant(string4))",
 +                "dotnet": "g.V().HasLabel(\"person\").Branch<object>(__.Values<object>(\"age\")).Option(P.Lt(30), __.Constant<object>(\"young\")).Option(P.Gt(30), __.Constant<object>(\"old\")).Option(Pick.None, __.Constant<object>(\"on the edge\"))",
 +                "go": "g.V().HasLabel(\"person\").Branch(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Lt(30), gremlingo.T__.Constant(\"young\")).Option(gremlingo.P.Gt(30), gremlingo.T__.Constant(\"old\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"on the edge\"))",
 +                "groovy": "g.V().hasLabel(\"person\").branch(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gt(30), __.constant(\"old\")).option(Pick.none, __.constant(\"on the edge\"))",
 +                "java": "g.V().hasLabel(\"person\").branch(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gt(30), __.constant(\"old\")).option(Pick.none, __.constant(\"on the edge\"))",
 +                "javascript": "g.V().hasLabel(\"person\").branch(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gt(30), __.constant(\"old\")).option(Pick.none, __.constant(\"on the edge\"))",
 +                "python": "g.V().has_label('person').branch(__.values('age')).option(P.lt(30), __.constant('young')).option(P.gt(30), __.constant('old')).option(Pick.none, __.constant('on the edge'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_branchXidentityX_optionXhasLabelXsoftwareX__inXcreatedX_name_order_foldX_optionXhasXname_vadasX__ageX_optionXneqX123X__bothE_countX",
 +        "traversals": [
 +            {
 +                "original": "g.V().branch(__.identity()).option(__.hasLabel(\"software\"), __.in(\"created\").values(\"name\").order().fold()).option(__.has(\"name\",\"vadas\"), __.values(\"age\")).option(P.neq(123), __.bothE().count())",
 +                "language": "g.V().branch(__.identity()).option(__.hasLabel(\"software\"), __.in(\"created\").values(\"name\").order().fold()).option(__.has(\"name\", \"vadas\"), __.values(\"age\")).option(P.neq(123), __.bothE().count())",
 +                "canonical": "g.V().branch(__.identity()).option(__.hasLabel(\"software\"), __.in(\"created\").values(\"name\").order().fold()).option(__.has(\"name\", \"vadas\"), __.values(\"age\")).option(P.neq(123), __.bothE().count())",
 +                "anonymized": "g.V().branch(__.identity()).option(__.hasLabel(string0), __.in(string1).values(string2).order().fold()).option(__.has(string2, string3), __.values(string4)).option(P.neq(number0), __.bothE().count())",
 +                "dotnet": "g.V().Branch<object>(__.Identity()).Option(__.HasLabel(\"software\"), __.In(\"created\").Values<object>(\"name\").Order().Fold()).Option(__.Has(\"name\", \"vadas\"), __.Values<object>(\"age\")).Option(P.Neq(123), __.BothE().Count())",
 +                "go": "g.V().Branch(gremlingo.T__.Identity()).Option(gremlingo.T__.HasLabel(\"software\"), gremlingo.T__.In(\"created\").Values(\"name\").Order().Fold()).Option(gremlingo.T__.Has(\"name\", \"vadas\"), gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Neq(123), gremlingo.T__.BothE().Count())",
 +                "groovy": "g.V().branch(__.identity()).option(__.hasLabel(\"software\"), __.in(\"created\").values(\"name\").order().fold()).option(__.has(\"name\", \"vadas\"), __.values(\"age\")).option(P.neq(123), __.bothE().count())",
 +                "java": "g.V().branch(__.identity()).option(__.hasLabel(\"software\"), __.in(\"created\").values(\"name\").order().fold()).option(__.has(\"name\", \"vadas\"), __.values(\"age\")).option(P.neq(123), __.bothE().count())",
 +                "javascript": "g.V().branch(__.identity()).option(__.hasLabel(\"software\"), __.in_(\"created\").values(\"name\").order().fold()).option(__.has(\"name\", \"vadas\"), __.values(\"age\")).option(P.neq(123), __.bothE().count())",
 +                "python": "g.V().branch(__.identity()).option(__.has_label('software'), __.in_('created').values('name').order().fold()).option(__.has('name', 'vadas'), __.values('age')).option(P.neq(123), __.both_e().count())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXout_countX_optionX2L_nameX_optionX3L_ageX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\"))",
 +                "language": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\"))",
 +                "canonical": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\"))",
 +                "anonymized": "g.V().choose(__.out().count()).option(xx1, __.values(string0)).option(xx2, __.values(string1))",
 +                "dotnet": "g.V().Choose<object>(__.Out().Count()).Option(xx1, __.Values<object>(\"name\")).Option(xx2, __.Values<object>(\"age\"))",
 +                "go": "g.V().Choose(gremlingo.T__.Out().Count()).Option(xx1, gremlingo.T__.Values(\"name\")).Option(xx2, gremlingo.T__.Values(\"age\"))",
 +                "groovy": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\"))",
 +                "java": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\"))",
 +                "javascript": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\"))",
 +                "python": "g.V().choose(__.out().count()).option(xx1, __.values('name')).option(xx2, __.values('age'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXout_countX_optionX2L_nameX_optionX3L_ageX_optionXnone_discardX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\")).option(Pick.none, __.discard())",
 +                "language": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\")).option(Pick.none, __.discard())",
 +                "canonical": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\")).option(Pick.none, __.discard())",
 +                "anonymized": "g.V().choose(__.out().count()).option(xx1, __.values(string0)).option(xx2, __.values(string1)).option(Pick.none, __.discard())",
 +                "dotnet": "g.V().Choose<object>(__.Out().Count()).Option(xx1, __.Values<object>(\"name\")).Option(xx2, __.Values<object>(\"age\")).Option(Pick.None, __.Discard())",
 +                "go": "g.V().Choose(gremlingo.T__.Out().Count()).Option(xx1, gremlingo.T__.Values(\"name\")).Option(xx2, gremlingo.T__.Values(\"age\")).Option(gremlingo.Pick.None, gremlingo.T__.Discard())",
 +                "groovy": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\")).option(Pick.none, __.discard())",
 +                "java": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\")).option(Pick.none, __.discard())",
 +                "javascript": "g.V().choose(__.out().count()).option(xx1, __.values(\"name\")).option(xx2, __.values(\"age\")).option(Pick.none, __.discard())",
 +                "python": "g.V().choose(__.out().count()).option(xx1, __.values('name')).option(xx2, __.values('age')).option(Pick.none, __.discard())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasLabelXpersonX_and_outXcreatedX__outXknowsX_identityX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"),__.out(\"knows\"),__.identity()).values(\"name\")",
 +                "language": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\"), __.identity()).values(\"name\")",
 +                "canonical": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\"), __.identity()).values(\"name\")",
 +                "anonymized": "g.V().choose(__.hasLabel(string0).and().out(string1), __.out(string2), __.identity()).values(string3)",
 +                "dotnet": "g.V().Choose<object>(__.HasLabel(\"person\").And().Out(\"created\"), __.Out(\"knows\"), __.Identity()).Values<object>(\"name\")",
 +                "go": "g.V().Choose(gremlingo.T__.HasLabel(\"person\").And().Out(\"created\"), gremlingo.T__.Out(\"knows\"), gremlingo.T__.Identity()).Values(\"name\")",
 +                "groovy": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\"), __.identity()).values(\"name\")",
 +                "java": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\"), __.identity()).values(\"name\")",
 +                "javascript": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\"), __.identity()).values(\"name\")",
 +                "python": "g.V().choose(__.has_label('person').and_().out('created'), __.out('knows'), __.identity()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasLabelXpersonX_and_outXcreatedX_outXknowsX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"),__.out(\"knows\")).values(\"name\")",
 +                "language": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\")).values(\"name\")",
 +                "canonical": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\")).values(\"name\")",
 +                "anonymized": "g.V().choose(__.hasLabel(string0).and().out(string1), __.out(string2)).values(string3)",
 +                "dotnet": "g.V().Choose<object>(__.HasLabel(\"person\").And().Out(\"created\"), __.Out(\"knows\")).Values<object>(\"name\")",
 +                "go": "g.V().Choose(gremlingo.T__.HasLabel(\"person\").And().Out(\"created\"), gremlingo.T__.Out(\"knows\")).Values(\"name\")",
 +                "groovy": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\")).values(\"name\")",
 +                "java": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\")).values(\"name\")",
 +                "javascript": "g.V().choose(__.hasLabel(\"person\").and().out(\"created\"), __.out(\"knows\")).values(\"name\")",
 +                "python": "g.V().choose(__.has_label('person').and_().out('created'), __.out('knows')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXlabelX_optionXblah__outXknowsXX_optionXbleep__outXcreatedXX_optionXnone__identityX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.label()).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "language": "g.V().choose(__.label()).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "canonical": "g.V().choose(__.label()).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "anonymized": "g.V().choose(__.label()).option(string0, __.out(string1)).option(string2, __.out(string3)).option(Pick.none, __.identity()).values(string4)",
 +                "dotnet": "g.V().Choose<object>(__.Label()).Option(\"blah\", __.Out(\"knows\")).Option(\"bleep\", __.Out(\"created\")).Option(Pick.None, __.Identity()).Values<object>(\"name\")",
 +                "go": "g.V().Choose(gremlingo.T__.Label()).Option(\"blah\", gremlingo.T__.Out(\"knows\")).Option(\"bleep\", gremlingo.T__.Out(\"created\")).Option(gremlingo.Pick.None, gremlingo.T__.Identity()).Values(\"name\")",
 +                "groovy": "g.V().choose(__.label()).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "java": "g.V().choose(__.label()).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "javascript": "g.V().choose(__.label()).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "python": "g.V().choose(__.label()).option('blah', __.out('knows')).option('bleep', __.out('created')).option(Pick.none, __.identity()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXTlabelX_optionXperson__outXknowsX_nameX_optionXbleep_constantXbleepXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(T.label).option(\"person\", __.out(\"knows\").values(\"name\")).option(\"bleep\", __.constant(\"bleep\"))",
 +                "language": "g.V().choose(T.label).option(\"person\", __.out(\"knows\").values(\"name\")).option(\"bleep\", __.constant(\"bleep\"))",
 +                "canonical": "g.V().choose(T.label).option(\"person\", __.out(\"knows\").values(\"name\")).option(\"bleep\", __.constant(\"bleep\"))",
 +                "anonymized": "g.V().choose(T.label).option(string0, __.out(string1).values(string2)).option(string3, __.constant(string3))",
 +                "dotnet": "g.V().Choose<object>(T.Label).Option(\"person\", __.Out(\"knows\").Values<object>(\"name\")).Option(\"bleep\", __.Constant<object>(\"bleep\"))",
 +                "go": "g.V().Choose(gremlingo.T.Label).Option(\"person\", gremlingo.T__.Out(\"knows\").Values(\"name\")).Option(\"bleep\", gremlingo.T__.Constant(\"bleep\"))",
 +                "groovy": "g.V().choose(T.label).option(\"person\", __.out(\"knows\").values(\"name\")).option(\"bleep\", __.constant(\"bleep\"))",
 +                "java": "g.V().choose(T.label).option(\"person\", __.out(\"knows\").values(\"name\")).option(\"bleep\", __.constant(\"bleep\"))",
 +                "javascript": "g.V().choose(T.label).option(\"person\", __.out(\"knows\").values(\"name\")).option(\"bleep\", __.constant(\"bleep\"))",
 +                "python": "g.V().choose(T.label).option('person', __.out('knows').values('name')).option('bleep', __.constant('bleep'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXTlabelX_optionXblah__outXknowsXX_optionXbleep__outXcreatedXX_optionXnone__identityX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "language": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "canonical": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "anonymized": "g.V().choose(T.label).option(string0, __.out(string1)).option(string2, __.out(string3)).option(Pick.none, __.identity()).values(string4)",
 +                "dotnet": "g.V().Choose<object>(T.Label).Option(\"blah\", __.Out(\"knows\")).Option(\"bleep\", __.Out(\"created\")).Option(Pick.None, __.Identity()).Values<object>(\"name\")",
 +                "go": "g.V().Choose(gremlingo.T.Label).Option(\"blah\", gremlingo.T__.Out(\"knows\")).Option(\"bleep\", gremlingo.T__.Out(\"created\")).Option(gremlingo.Pick.None, gremlingo.T__.Identity()).Values(\"name\")",
 +                "groovy": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "java": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "javascript": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.identity()).values(\"name\")",
 +                "python": "g.V().choose(T.label).option('blah', __.out('knows')).option('bleep', __.out('created')).option(Pick.none, __.identity()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXTlabelX_optionXblah__outXknowsXX_optionXbleep__outXcreatedXX_optionXnone_discardX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.discard()).values(\"name\")",
 +                "language": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.discard()).values(\"name\")",
 +                "canonical": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.discard()).values(\"name\")",
 +                "anonymized": "g.V().choose(T.label).option(string0, __.out(string1)).option(string2, __.out(string3)).option(Pick.none, __.discard()).values(string4)",
 +                "dotnet": "g.V().Choose<object>(T.Label).Option(\"blah\", __.Out(\"knows\")).Option(\"bleep\", __.Out(\"created\")).Option(Pick.None, __.Discard()).Values<object>(\"name\")",
 +                "go": "g.V().Choose(gremlingo.T.Label).Option(\"blah\", gremlingo.T__.Out(\"knows\")).Option(\"bleep\", gremlingo.T__.Out(\"created\")).Option(gremlingo.Pick.None, gremlingo.T__.Discard()).Values(\"name\")",
 +                "groovy": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.discard()).values(\"name\")",
 +                "java": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.discard()).values(\"name\")",
 +                "javascript": "g.V().choose(T.label).option(\"blah\", __.out(\"knows\")).option(\"bleep\", __.out(\"created\")).option(Pick.none, __.discard()).values(\"name\")",
 +                "python": "g.V().choose(T.label).option('blah', __.out('knows')).option('bleep', __.out('created')).option(Pick.none, __.discard()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXoutXknowsX_count_isXgtX0XX__outXknowsXX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.out(\"knows\").count().is(P.gt(0)),__.out(\"knows\")).values(\"name\")",
 +                "language": "g.V().choose(__.out(\"knows\").count().is(P.gt(0)), __.out(\"knows\")).values(\"name\")",
 +                "canonical": "g.V().choose(__.out(\"knows\").count().is(P.gt(0)), __.out(\"knows\")).values(\"name\")",
 +                "anonymized": "g.V().choose(__.out(string0).count().is(P.gt(number0)), __.out(string0)).values(string1)",
 +                "dotnet": "g.V().Choose<object>(__.Out(\"knows\").Count().Is(P.Gt(0)), __.Out(\"knows\")).Values<object>(\"name\")",
 +                "go": "g.V().Choose(gremlingo.T__.Out(\"knows\").Count().Is(gremlingo.P.Gt(0)), gremlingo.T__.Out(\"knows\")).Values(\"name\")",
 +                "groovy": "g.V().choose(__.out(\"knows\").count().is(P.gt(0)), __.out(\"knows\")).values(\"name\")",
 +                "java": "g.V().choose(__.out(\"knows\").count().is(P.gt(0)), __.out(\"knows\")).values(\"name\")",
 +                "javascript": "g.V().choose(__.out(\"knows\").count().is(P.gt(0)), __.out(\"knows\")).values(\"name\")",
 +                "python": "g.V().choose(__.out('knows').count().is_(P.gt(0)), __.out('knows')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_asXp1X_chooseXoutEXknowsX__outXknowsXX_asXp2X_selectXp1_p2X_byXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").as(\"p1\").choose(__.outE(\"knows\"), __.out(\"knows\")).as(\"p2\").select(\"p1\", \"p2\").by(\"name\")",
 +                "language": "g.V().hasLabel(\"person\").as(\"p1\").choose(__.outE(\"knows\"), __.out(\"knows\")).as(\"p2\").select(\"p1\", \"p2\").by(\"name\")",
 +                "canonical": "g.V().hasLabel(\"person\").as(\"p1\").choose(__.outE(\"knows\"), __.out(\"knows\")).as(\"p2\").select(\"p1\", \"p2\").by(\"name\")",
 +                "anonymized": "g.V().hasLabel(string0).as(string1).choose(__.outE(string2), __.out(string2)).as(string3).select(string1, string3).by(string4)",
 +                "dotnet": "g.V().HasLabel(\"person\").As(\"p1\").Choose<object>(__.OutE(\"knows\"), __.Out(\"knows\")).As(\"p2\").Select<object>(\"p1\", \"p2\").By(\"name\")",
 +                "go": "g.V().HasLabel(\"person\").As(\"p1\").Choose(gremlingo.T__.OutE(\"knows\"), gremlingo.T__.Out(\"knows\")).As(\"p2\").Select(\"p1\", \"p2\").By(\"name\")",
 +                "groovy": "g.V().hasLabel(\"person\").as(\"p1\").choose(__.outE(\"knows\"), __.out(\"knows\")).as(\"p2\").select(\"p1\", \"p2\").by(\"name\")",
 +                "java": "g.V().hasLabel(\"person\").as(\"p1\").choose(__.outE(\"knows\"), __.out(\"knows\")).as(\"p2\").select(\"p1\", \"p2\").by(\"name\")",
 +                "javascript": "g.V().hasLabel(\"person\").as(\"p1\").choose(__.outE(\"knows\"), __.out(\"knows\")).as(\"p2\").select(\"p1\", \"p2\").by(\"name\")",
 +                "python": "g.V().has_label('person').as_('p1').choose(__.out_e('knows'), __.out('knows')).as_('p2').select('p1', 'p2').by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseXageX__optionX27L__constantXyoungXX_optionXnone__constantXoldXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(xx1, __.constant(\"young\")).option(Pick.none, __.constant(\"old\")).groupCount()",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(xx1, __.constant(\"young\")).option(Pick.none, __.constant(\"old\")).groupCount()",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(xx1, __.constant(\"young\")).option(Pick.none, __.constant(\"old\")).groupCount()",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1)).option(xx1, __.constant(string2)).option(Pick.none, __.constant(string3)).groupCount()",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"age\")).Option(xx1, __.Constant<object>(\"young\")).Option(Pick.None, __.Constant<object>(\"old\")).GroupCount<object>()",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"age\")).Option(xx1, gremlingo.T__.Constant(\"young\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"old\")).GroupCount()",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(xx1, __.constant(\"young\")).option(Pick.none, __.constant(\"old\")).groupCount()",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(xx1, __.constant(\"young\")).option(Pick.none, __.constant(\"old\")).groupCount()",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(xx1, __.constant(\"young\")).option(Pick.none, __.constant(\"old\")).groupCount()",
 +                "python": "g.V().has_label('person').choose(__.values('age')).option(xx1, __.constant('young')).option(Pick.none, __.constant('old')).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX1X_chooseXisX1X__constantX10Xfold__foldX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(1i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "language": "g.inject(1i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "canonical": "g.inject(1i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "anonymized": "g.inject(integer0).choose(__.is(xx1), __.constant(integer1).fold(), __.fold())",
 +                "dotnet": "g.Inject<object>(1).Choose<object>(__.Is(xx1), __.Constant<object>(10).Fold(), __.Fold<object>())",
 +                "go": "g.Inject(int32(1)).Choose(gremlingo.T__.Is(xx1), gremlingo.T__.Constant(int32(10)).Fold(), gremlingo.T__.Fold())",
 +                "groovy": "g.inject(1i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "java": "g.inject(1).choose(__.is(xx1), __.constant(10).fold(), __.fold())",
 +                "javascript": "g.inject(1).choose(__.is(xx1), __.constant(10).fold(), __.fold())",
 +                "python": "g.inject(1).choose(__.is_(xx1), __.constant(10).fold(), __.fold())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX2X_chooseXisX1X__constantX10Xfold__foldX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(2i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "language": "g.inject(2i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "canonical": "g.inject(2i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "anonymized": "g.inject(integer0).choose(__.is(xx1), __.constant(integer1).fold(), __.fold())",
 +                "dotnet": "g.Inject<object>(2).Choose<object>(__.Is(xx1), __.Constant<object>(10).Fold(), __.Fold<object>())",
 +                "go": "g.Inject(int32(2)).Choose(gremlingo.T__.Is(xx1), gremlingo.T__.Constant(int32(10)).Fold(), gremlingo.T__.Fold())",
 +                "groovy": "g.inject(2i).choose(__.is(xx1), __.constant(10i).fold(), __.fold())",
 +                "java": "g.inject(2).choose(__.is(xx1), __.constant(10).fold(), __.fold())",
 +                "javascript": "g.inject(2).choose(__.is(xx1), __.constant(10).fold(), __.fold())",
 +                "python": "g.inject(2).choose(__.is_(xx1), __.constant(10).fold(), __.fold())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasLabelXpersonX_chooseXageX_optionXbetweenX26_30X_constantXxXX_optionXbetweenX20_30X_constantXyXX_optionXnone_constantXzXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.constant(\"x\")).option(P.between(20, 30), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.constant(\"x\")).option(P.between(20, 30), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.constant(\"x\")).option(P.between(20, 30), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1)).option(P.between(number0, number1), __.constant(string2)).option(P.between(number2, number1), __.constant(string3)).option(Pick.none, __.constant(string4))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Constant<object>(\"x\")).Option(P.Between(20, 30), __.Constant<object>(\"y\")).Option(Pick.None, __.Constant<object>(\"z\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Constant(\"x\")).Option(gremlingo.P.Between(20, 30), gremlingo.T__.Constant(\"y\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"z\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.constant(\"x\")).option(P.between(20, 30), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.constant(\"x\")).option(P.between(20, 30), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.constant(\"x\")).option(P.between(20, 30), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "python": "g.V().has_label('person').choose(__.values('age')).option(P.between(26, 30), __.constant('x')).option(P.between(20, 30), __.constant('y')).option(Pick.none, __.constant('z'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasLabelXpersonX_chooseXageX_optionXbetweenX26_30X_orXgtX34XX_constantXxXX_optionXgtX34X_constantXyXX_optionXnone_constantXzXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30).or(P.gt(34)), __.constant(\"x\")).option(P.gt(34), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30).or(P.gt(34)), __.constant(\"x\")).option(P.gt(34), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30).or(P.gt(34)), __.constant(\"x\")).option(P.gt(34), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1)).option(P.between(number0, number1).or(P.gt(number2)), __.constant(string2)).option(P.gt(number2), __.constant(string3)).option(Pick.none, __.constant(string4))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30).Or(P.Gt(34)), __.Constant<object>(\"x\")).Option(P.Gt(34), __.Constant<object>(\"y\")).Option(Pick.None, __.Constant<object>(\"z\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30).Or(gremlingo.P.Gt(34)), gremlingo.T__.Constant(\"x\")).Option(gremlingo.P.Gt(34), gremlingo.T__.Constant(\"y\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"z\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30).or(P.gt(34)), __.constant(\"x\")).option(P.gt(34), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30).or(P.gt(34)), __.constant(\"x\")).option(P.gt(34), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30).or(P.gt(34)), __.constant(\"x\")).option(P.gt(34), __.constant(\"y\")).option(Pick.none, __.constant(\"z\"))",
 +                "python": "g.V().has_label('person').choose(__.values('age')).option(P.between(26, 30).or_(P.gt(34)), __.constant('x')).option(P.gt(34), __.constant('y')).option(Pick.none, __.constant('z'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseXageX_optionXbetweenX26_30X_nameX_optionXnone_nameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1)).option(P.between(number0, number1), __.values(string2)).option(Pick.none, __.values(string2))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\")).Option(Pick.None, __.Values<object>(\"name\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "python": "g.V().has_label('person').choose(__.values('age')).option(P.between(26, 30), __.values('name')).option(Pick.none, __.values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasLabelXpersonX_localXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "language": "g.V().hasLabel(\"person\").local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "canonical": "g.V().hasLabel(\"person\").local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "anonymized": "g.V().hasLabel(string0).local(__.choose(__.values(string1)).option(P.between(number0, number1), __.values(string2).fold()).option(Pick.none, __.values(string2).fold()))",
 +                "dotnet": "g.V().HasLabel(\"person\").Local<object>(__.Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\").Fold()).Option(Pick.None, __.Values<object>(\"name\").Fold()))",
 +                "go": "g.V().HasLabel(\"person\").Local(gremlingo.T__.Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\").Fold()).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\").Fold()))",
 +                "groovy": "g.V().hasLabel(\"person\").local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "java": "g.V().hasLabel(\"person\").local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "javascript": "g.V().hasLabel(\"person\").local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "python": "g.V().has_label('person').local(__.choose(__.values('age')).option(P.between(26, 30), __.values('name').fold()).option(Pick.none, __.values('name').fold()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasLabelXpersonX_mapXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "language": "g.V().hasLabel(\"person\").map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "canonical": "g.V().hasLabel(\"person\").map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "anonymized": "g.V().hasLabel(string0).map(__.choose(__.values(string1)).option(P.between(number0, number1), __.values(string2).fold()).option(Pick.none, __.values(string2).fold()))",
 +                "dotnet": "g.V().HasLabel(\"person\").Map<object>(__.Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\").Fold()).Option(Pick.None, __.Values<object>(\"name\").Fold()))",
 +                "go": "g.V().HasLabel(\"person\").Map(gremlingo.T__.Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\").Fold()).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\").Fold()))",
 +                "groovy": "g.V().hasLabel(\"person\").map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "java": "g.V().hasLabel(\"person\").map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "javascript": "g.V().hasLabel(\"person\").map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "python": "g.V().has_label('person').map(__.choose(__.values('age')).option(P.between(26, 30), __.values('name').fold()).option(Pick.none, __.values('name').fold()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXV_VXhasLabelXpersonX_barrier_localXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "language": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "canonical": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "anonymized": "g.union(__.V(), __.V()).hasLabel(string0).barrier().local(__.choose(__.values(string1)).option(P.between(number0, number1), __.values(string2).fold()).option(Pick.none, __.values(string2).fold()))",
 +                "dotnet": "g.Union<object>(__.V(), __.V()).HasLabel(\"person\").Barrier().Local<object>(__.Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\").Fold()).Option(Pick.None, __.Values<object>(\"name\").Fold()))",
 +                "go": "g.Union(gremlingo.T__.V(), gremlingo.T__.V()).HasLabel(\"person\").Barrier().Local(gremlingo.T__.Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\").Fold()).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\").Fold()))",
 +                "groovy": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "java": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "javascript": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().local(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "python": "g.union(__.V(), __.V()).has_label('person').barrier().local(__.choose(__.values('age')).option(P.between(26, 30), __.values('name').fold()).option(Pick.none, __.values('name').fold()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXV_VXhasLabelXpersonX_barrier_mapXchooseXageX_optionXbetweenX26_30X_name_foldX_optionXnone_name_foldXX",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "language": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "canonical": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "anonymized": "g.union(__.V(), __.V()).hasLabel(string0).barrier().map(__.choose(__.values(string1)).option(P.between(number0, number1), __.values(string2).fold()).option(Pick.none, __.values(string2).fold()))",
 +                "dotnet": "g.Union<object>(__.V(), __.V()).HasLabel(\"person\").Barrier().Map<object>(__.Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\").Fold()).Option(Pick.None, __.Values<object>(\"name\").Fold()))",
 +                "go": "g.Union(gremlingo.T__.V(), gremlingo.T__.V()).HasLabel(\"person\").Barrier().Map(gremlingo.T__.Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\").Fold()).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\").Fold()))",
 +                "groovy": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "java": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "javascript": "g.union(__.V(), __.V()).hasLabel(\"person\").barrier().map(__.choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\").fold()).option(Pick.none, __.values(\"name\").fold()))",
 +                "python": "g.union(__.V(), __.V()).has_label('person').barrier().map(__.choose(__.values('age')).option(P.between(26, 30), __.values('name').fold()).option(Pick.none, __.values('name').fold()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXageX_optionXbetweenX26_30X_nameX_optionXnone_nameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "language": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "canonical": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "anonymized": "g.V().choose(__.values(string0)).option(P.between(number0, number1), __.values(string1)).option(Pick.none, __.values(string1))",
 +                "dotnet": "g.V().Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\")).Option(Pick.None, __.Values<object>(\"name\"))",
 +                "go": "g.V().Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\"))",
 +                "groovy": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "java": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "javascript": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\"))",
 +                "python": "g.V().choose(__.values('age')).option(P.between(26, 30), __.values('name')).option(Pick.none, __.values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXageX_optionXbetweenX26_30X_nameX_optionXnone_nameX_optionXunproductive_labelX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.unproductive, __.label())",
 +                "language": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.unproductive, __.label())",
 +                "canonical": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.unproductive, __.label())",
 +                "anonymized": "g.V().choose(__.values(string0)).option(P.between(number0, number1), __.values(string1)).option(Pick.none, __.values(string1)).option(Pick.unproductive, __.label())",
 +                "dotnet": "g.V().Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\")).Option(Pick.None, __.Values<object>(\"name\")).Option(Pick.Unproductive, __.Label())",
 +                "go": "g.V().Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.Unproductive, gremlingo.T__.Label())",
 +                "groovy": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.unproductive, __.label())",
 +                "java": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.unproductive, __.label())",
 +                "javascript": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.unproductive, __.label())",
 +                "python": "g.V().choose(__.values('age')).option(P.between(26, 30), __.values('name')).option(Pick.none, __.values('name')).option(Pick.unproductive, __.label())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXageX_optionXbetweenX26_30X_nameX_optionXnone_nameX_optionXnone_identityX_optionXnone_failX_optionXunproductive_identityX_optionXunproductive_labelX_optionXnone_failX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())",
 +                "language": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())",
 +                "canonical": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())",
 +                "anonymized": "g.V().choose(__.values(string0)).option(P.between(number0, number1), __.values(string1)).option(Pick.none, __.values(string1)).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())",
 +                "dotnet": "g.V().Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\")).Option(Pick.None, __.Values<object>(\"name\")).Option(Pick.None, __.Identity()).Option(Pick.None, __.Fail()).Option(Pick.Unproductive, __.Label()).Option(Pick.Unproductive, __.Identity()).Option(Pick.Unproductive, __.Fail())",
 +                "go": "g.V().Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.None, gremlingo.T__.Identity()).Option(gremlingo.Pick.None, gremlingo.T__.Fail()).Option(gremlingo.Pick.Unproductive, gremlingo.T__.Label()).Option(gremlingo.Pick.Unproductive, gremlingo.T__.Identity()).Option(gremlingo.Pick.Unproductive, gremlingo.T__.Fail())",
 +                "groovy": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())",
 +                "java": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())",
 +                "javascript": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.values(\"name\")).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())",
 +                "python": "g.V().choose(__.values('age')).option(P.between(26, 30), __.values('name')).option(Pick.none, __.values('name')).option(Pick.none, __.identity()).option(Pick.none, __.fail()).option(Pick.unproductive, __.label()).option(Pick.unproductive, __.identity()).option(Pick.unproductive, __.fail())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXage_nameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.values(\"age\"), __.values(\"name\"))",
 +                "language": "g.V().choose(__.values(\"age\"), __.values(\"name\"))",
 +                "canonical": "g.V().choose(__.values(\"age\"), __.values(\"name\"))",
 +                "anonymized": "g.V().choose(__.values(string0), __.values(string1))",
 +                "dotnet": "g.V().Choose<object>(__.Values<object>(\"age\"), __.Values<object>(\"name\"))",
 +                "go": "g.V().Choose(gremlingo.T__.Values(\"age\"), gremlingo.T__.Values(\"name\"))",
 +                "groovy": "g.V().choose(__.values(\"age\"), __.values(\"name\"))",
 +                "java": "g.V().choose(__.values(\"age\"), __.values(\"name\"))",
 +                "javascript": "g.V().choose(__.values(\"age\"), __.values(\"name\"))",
 +                "python": "g.V().choose(__.values('age'), __.values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXageX_optionXbetweenX26_30X_nameX_optionXnone_discardX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.discard())",
 +                "language": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.discard())",
 +                "canonical": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.discard())",
 +                "anonymized": "g.V().choose(__.values(string0)).option(P.between(number0, number1), __.values(string1)).option(Pick.none, __.discard())",
 +                "dotnet": "g.V().Choose<object>(__.Values<object>(\"age\")).Option(P.Between(26, 30), __.Values<object>(\"name\")).Option(Pick.None, __.Discard())",
 +                "go": "g.V().Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Between(26, 30), gremlingo.T__.Values(\"name\")).Option(gremlingo.Pick.None, gremlingo.T__.Discard())",
 +                "groovy": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.discard())",
 +                "java": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.discard())",
 +                "javascript": "g.V().choose(__.values(\"age\")).option(P.between(26, 30), __.values(\"name\")).option(Pick.none, __.discard())",
 +                "python": "g.V().choose(__.values('age')).option(P.between(26, 30), __.values('name')).option(Pick.none, __.discard())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXnameX_optionXneqXyX_ageX_optionXnone_constantXxXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.values(\"name\")).option(P.neq(\"y\"), __.values(\"age\")).option(Pick.none, __.constant(\"x\"))",
 +                "language": "g.V().choose(__.values(\"name\")).option(P.neq(\"y\"), __.values(\"age\")).option(Pick.none, __.constant(\"x\"))",
 +                "canonical": "g.V().choose(__.values(\"name\")).option(P.neq(\"y\"), __.values(\"age\")).option(Pick.none, __.constant(\"x\"))",
 +                "anonymized": "g.V().choose(__.values(string0)).option(P.neq(string1), __.values(string2)).option(Pick.none, __.constant(string3))",
 +                "dotnet": "g.V().Choose<object>(__.Values<object>(\"name\")).Option(P.Neq(\"y\"), __.Values<object>(\"age\")).Option(Pick.None, __.Constant<object>(\"x\"))",
 +                "go": "g.V().Choose(gremlingo.T__.Values(\"name\")).Option(gremlingo.P.Neq(\"y\"), gremlingo.T__.Values(\"age\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"x\"))",
 +                "groovy": "g.V().choose(__.values(\"name\")).option(P.neq(\"y\"), __.values(\"age\")).option(Pick.none, __.constant(\"x\"))",
 +                "java": "g.V().choose(__.values(\"name\")).option(P.neq(\"y\"), __.values(\"age\")).option(Pick.none, __.constant(\"x\"))",
 +                "javascript": "g.V().choose(__.values(\"name\")).option(P.neq(\"y\"), __.values(\"age\")).option(Pick.none, __.constant(\"x\"))",
 +                "python": "g.V().choose(__.values('name')).option(P.neq('y'), __.values('age')).option(Pick.none, __.constant('x'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseXoutXcreatedX_count_isXeqX0XX__constantXdidnt_createX__constantXcreatedXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count().is(P.eq(0)),__.constant(\"didnt_create\"),__.constant(\"created\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count().is(P.eq(0)), __.constant(\"didnt_create\"), __.constant(\"created\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count().is(P.eq(0)), __.constant(\"didnt_create\"), __.constant(\"created\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.out(string1).count().is(P.eq(number0)), __.constant(string2), __.constant(string1))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Out(\"created\").Count().Is(P.Eq(0)), __.Constant<object>(\"didnt_create\"), __.Constant<object>(\"created\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Out(\"created\").Count().Is(gremlingo.P.Eq(0)), gremlingo.T__.Constant(\"didnt_create\"), gremlingo.T__.Constant(\"created\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count().is(P.eq(0)), __.constant(\"didnt_create\"), __.constant(\"created\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count().is(P.eq(0)), __.constant(\"didnt_create\"), __.constant(\"created\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count().is(P.eq(0)), __.constant(\"didnt_create\"), __.constant(\"created\"))",
 +                "python": "g.V().has_label('person').choose(__.out('created').count().is_(P.eq(0)), __.constant('didnt_create'), __.constant('created'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseXvaluesXageX_isXgtX30XX__valuesXageX__constantX30XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(30)),__.values(\"age\"),__.constant(30))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(30)), __.values(\"age\"), __.constant(30))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(30)), __.values(\"age\"), __.constant(30))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1).is(P.gt(number0)), __.values(string1), __.constant(number0))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"age\").Is(P.Gt(30)), __.Values<object>(\"age\"), __.Constant<object>(30))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"age\").Is(gremlingo.P.Gt(30)), gremlingo.T__.Values(\"age\"), gremlingo.T__.Constant(30))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(30)), __.values(\"age\"), __.constant(30))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(30)), __.values(\"age\"), __.constant(30))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(30)), __.values(\"age\"), __.constant(30))",
 +                "python": "g.V().has_label('person').choose(__.values('age').is_(P.gt(30)), __.values('age'), __.constant(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseXvaluesXageX_isXgtX29XX_and_valuesXageX_isXltX35XX__valuesXnameX__constantXotherXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(29)).and().values(\"age\").is(P.lt(35)),__.values(\"name\"),__.constant(\"other\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(29)).and().values(\"age\").is(P.lt(35)), __.values(\"name\"), __.constant(\"other\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(29)).and().values(\"age\").is(P.lt(35)), __.values(\"name\"), __.constant(\"other\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1).is(P.gt(number0)).and().values(string1).is(P.lt(number1)), __.values(string2), __.constant(string3))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"age\").Is(P.Gt(29)).And().Values<object>(\"age\").Is(P.Lt(35)), __.Values<object>(\"name\"), __.Constant<object>(\"other\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"age\").Is(gremlingo.P.Gt(29)).And().Values(\"age\").Is(gremlingo.P.Lt(35)), gremlingo.T__.Values(\"name\"), gremlingo.T__.Constant(\"other\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(29)).and().values(\"age\").is(P.lt(35)), __.values(\"name\"), __.constant(\"other\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(29)).and().values(\"age\").is(P.lt(35)), __.values(\"name\"), __.constant(\"other\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"age\").is(P.gt(29)).and().values(\"age\").is(P.lt(35)), __.values(\"name\"), __.constant(\"other\"))",
 +                "python": "g.V().has_label('person').choose(__.values('age').is_(P.gt(29)).and_().values('age').is_(P.lt(35)), __.values('name'), __.constant('other'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasXname_vadasX__valuesXnameX__valuesXageXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.has(\"name\", \"vadas\"),__.values(\"name\"),__.values(\"age\"))",
 +                "language": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"), __.values(\"age\"))",
 +                "canonical": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"), __.values(\"age\"))",
 +                "anonymized": "g.V().choose(__.has(string0, string1), __.values(string0), __.values(string2))",
 +                "dotnet": "g.V().Choose<object>(__.Has(\"name\", \"vadas\"), __.Values<object>(\"name\"), __.Values<object>(\"age\"))",
 +                "go": "g.V().Choose(gremlingo.T__.Has(\"name\", \"vadas\"), gremlingo.T__.Values(\"name\"), gremlingo.T__.Values(\"age\"))",
 +                "groovy": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"), __.values(\"age\"))",
 +                "java": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"), __.values(\"age\"))",
 +                "javascript": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"), __.values(\"age\"))",
 +                "python": "g.V().choose(__.has('name', 'vadas'), __.values('name'), __.values('age'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseXoutXcreatedX_countX_optionX0__constantXnoneXX_optionX1__constantXoneXX_optionX2__constantXmanyXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count()).option(xx0, __.constant(\"none\")).option(xx1, __.constant(\"one\")).option(xx2, __.constant(\"many\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count()).option(xx0, __.constant(\"none\")).option(xx1, __.constant(\"one\")).option(xx2, __.constant(\"many\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count()).option(xx0, __.constant(\"none\")).option(xx1, __.constant(\"one\")).option(xx2, __.constant(\"many\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.out(string1).count()).option(xx0, __.constant(string2)).option(xx1, __.constant(string3)).option(xx2, __.constant(string4))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Out(\"created\").Count()).Option(xx0, __.Constant<object>(\"none\")).Option(xx1, __.Constant<object>(\"one\")).Option(xx2, __.Constant<object>(\"many\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Out(\"created\").Count()).Option(xx0, gremlingo.T__.Constant(\"none\")).Option(xx1, gremlingo.T__.Constant(\"one\")).Option(xx2, gremlingo.T__.Constant(\"many\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count()).option(xx0, __.constant(\"none\")).option(xx1, __.constant(\"one\")).option(xx2, __.constant(\"many\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count()).option(xx0, __.constant(\"none\")).option(xx1, __.constant(\"one\")).option(xx2, __.constant(\"many\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.out(\"created\").count()).option(xx0, __.constant(\"none\")).option(xx1, __.constant(\"one\")).option(xx2, __.constant(\"many\"))",
 +                "python": "g.V().has_label('person').choose(__.out('created').count()).option(xx0, __.constant('none')).option(xx1, __.constant('one')).option(xx2, __.constant('many'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseXlocalXoutXknowsX_countX__optionX0__constantXnoFriendsXX__optionXnone__constantXhasFriendsXXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(__.local(__.out(\"knows\").count())).option(xx0, __.constant(\"noFriends\")).option(Pick.none, __.constant(\"hasFriends\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.local(__.out(\"knows\").count())).option(xx0, __.constant(\"noFriends\")).option(Pick.none, __.constant(\"hasFriends\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.local(__.out(\"knows\").count())).option(xx0, __.constant(\"noFriends\")).option(Pick.none, __.constant(\"hasFriends\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.local(__.out(string1).count())).option(xx0, __.constant(string2)).option(Pick.none, __.constant(string3))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Local<object>(__.Out(\"knows\").Count())).Option(xx0, __.Constant<object>(\"noFriends\")).Option(Pick.None, __.Constant<object>(\"hasFriends\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Local(gremlingo.T__.Out(\"knows\").Count())).Option(xx0, gremlingo.T__.Constant(\"noFriends\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"hasFriends\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.local(__.out(\"knows\").count())).option(xx0, __.constant(\"noFriends\")).option(Pick.none, __.constant(\"hasFriends\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.local(__.out(\"knows\").count())).option(xx0, __.constant(\"noFriends\")).option(Pick.none, __.constant(\"hasFriends\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.local(__.out(\"knows\").count())).option(xx0, __.constant(\"noFriends\")).option(Pick.none, __.constant(\"hasFriends\"))",
 +                "python": "g.V().has_label('person').choose(__.local(__.out('knows').count())).option(xx0, __.constant('noFriends')).option(Pick.none, __.constant('hasFriends'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXoutE_countX_optionX0__constantXnoneXX_optionXnone__constantXsomeXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.outE().count()).option(xx0, __.constant(\"none\")).option(Pick.none, __.constant(\"some\"))",
 +                "language": "g.V().choose(__.outE().count()).option(xx0, __.constant(\"none\")).option(Pick.none, __.constant(\"some\"))",
 +                "canonical": "g.V().choose(__.outE().count()).option(xx0, __.constant(\"none\")).option(Pick.none, __.constant(\"some\"))",
 +                "anonymized": "g.V().choose(__.outE().count()).option(xx0, __.constant(string0)).option(Pick.none, __.constant(string1))",
 +                "dotnet": "g.V().Choose<object>(__.OutE().Count()).Option(xx0, __.Constant<object>(\"none\")).Option(Pick.None, __.Constant<object>(\"some\"))",
 +                "go": "g.V().Choose(gremlingo.T__.OutE().Count()).Option(xx0, gremlingo.T__.Constant(\"none\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"some\"))",
 +                "groovy": "g.V().choose(__.outE().count()).option(xx0, __.constant(\"none\")).option(Pick.none, __.constant(\"some\"))",
 +                "java": "g.V().choose(__.outE().count()).option(xx0, __.constant(\"none\")).option(Pick.none, __.constant(\"some\"))",
 +                "javascript": "g.V().choose(__.outE().count()).option(xx0, __.constant(\"none\")).option(Pick.none, __.constant(\"some\"))",
 +                "python": "g.V().choose(__.out_e().count()).option(xx0, __.constant('none')).option(Pick.none, __.constant('some'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXlabelX_optionXperson__chooseXageX_optionXP_lt_30__constantXyoungXX_optionXP_gte_30__constantXoldXXX_optionXsoftware__constantXprogramXX_optionXnone__constantXunknownXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.label()).option(\"person\", __.choose(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gte(30), __.constant(\"old\"))).option(\"software\", __.constant(\"program\")).option(Pick.none, __.constant(\"unknown\"))",
 +                "language": "g.V().choose(__.label()).option(\"person\", __.choose(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gte(30), __.constant(\"old\"))).option(\"software\", __.constant(\"program\")).option(Pick.none, __.constant(\"unknown\"))",
 +                "canonical": "g.V().choose(__.label()).option(\"person\", __.choose(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gte(30), __.constant(\"old\"))).option(\"software\", __.constant(\"program\")).option(Pick.none, __.constant(\"unknown\"))",
 +                "anonymized": "g.V().choose(__.label()).option(string0, __.choose(__.values(string1)).option(P.lt(number0), __.constant(string2)).option(P.gte(number0), __.constant(string3))).option(string4, __.constant(string5)).option(Pick.none, __.constant(string6))",
 +                "dotnet": "g.V().Choose<object>(__.Label()).Option(\"person\", __.Choose<object>(__.Values<object>(\"age\")).Option(P.Lt(30), __.Constant<object>(\"young\")).Option(P.Gte(30), __.Constant<object>(\"old\"))).Option(\"software\", __.Constant<object>(\"program\")).Option(Pick.None, __.Constant<object>(\"unknown\"))",
 +                "go": "g.V().Choose(gremlingo.T__.Label()).Option(\"person\", gremlingo.T__.Choose(gremlingo.T__.Values(\"age\")).Option(gremlingo.P.Lt(30), gremlingo.T__.Constant(\"young\")).Option(gremlingo.P.Gte(30), gremlingo.T__.Constant(\"old\"))).Option(\"software\", gremlingo.T__.Constant(\"program\")).Option(gremlingo.Pick.None, gremlingo.T__.Constant(\"unknown\"))",
 +                "groovy": "g.V().choose(__.label()).option(\"person\", __.choose(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gte(30), __.constant(\"old\"))).option(\"software\", __.constant(\"program\")).option(Pick.none, __.constant(\"unknown\"))",
 +                "java": "g.V().choose(__.label()).option(\"person\", __.choose(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gte(30), __.constant(\"old\"))).option(\"software\", __.constant(\"program\")).option(Pick.none, __.constant(\"unknown\"))",
 +                "javascript": "g.V().choose(__.label()).option(\"person\", __.choose(__.values(\"age\")).option(P.lt(30), __.constant(\"young\")).option(P.gte(30), __.constant(\"old\"))).option(\"software\", __.constant(\"program\")).option(Pick.none, __.constant(\"unknown\"))",
 +                "python": "g.V().choose(__.label()).option('person', __.choose(__.values('age')).option(P.lt(30), __.constant('young')).option(P.gte(30), __.constant('old'))).option('software', __.constant('program')).option(Pick.none, __.constant('unknown'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXhasXname_vadasX__valuesXnameXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.has(\"name\", \"vadas\"),__.values(\"name\"))",
 +                "language": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"))",
 +                "canonical": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"))",
 +                "anonymized": "g.V().choose(__.has(string0, string1), __.values(string0))",
 +                "dotnet": "g.V().Choose<object>(__.Has(\"name\", \"vadas\"), __.Values<object>(\"name\"))",
 +                "go": "g.V().Choose(gremlingo.T__.Has(\"name\", \"vadas\"), gremlingo.T__.Values(\"name\"))",
 +                "groovy": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"))",
 +                "java": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"))",
 +                "javascript": "g.V().choose(__.has(\"name\", \"vadas\"), __.values(\"name\"))",
 +                "python": "g.V().choose(__.has('name', 'vadas'), __.values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_age_chooseXP_eqX29X_constantXmatchedX_constantXotherXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29),__.constant(\"matched\"),__.constant(\"other\"))",
 +                "language": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"), __.constant(\"other\"))",
 +                "canonical": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"), __.constant(\"other\"))",
 +                "anonymized": "g.V().hasLabel(string0).values(string1).choose(P.eq(number0), __.constant(string2), __.constant(string3))",
 +                "dotnet": "g.V().HasLabel(\"person\").Values<object>(\"age\").Choose<object>(P.Eq(29), __.Constant<object>(\"matched\"), __.Constant<object>(\"other\"))",
 +                "go": "g.V().HasLabel(\"person\").Values(\"age\").Choose(gremlingo.P.Eq(29), gremlingo.T__.Constant(\"matched\"), gremlingo.T__.Constant(\"other\"))",
 +                "groovy": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"), __.constant(\"other\"))",
 +                "java": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"), __.constant(\"other\"))",
 +                "javascript": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"), __.constant(\"other\"))",
 +                "python": "g.V().has_label('person').values('age').choose(P.eq(29), __.constant('matched'), __.constant('other'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_age_chooseXP_eqX29X_constantXmatchedX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29),__.constant(\"matched\"))",
 +                "language": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"))",
 +                "canonical": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"))",
 +                "anonymized": "g.V().hasLabel(string0).values(string1).choose(P.eq(number0), __.constant(string2))",
 +                "dotnet": "g.V().HasLabel(\"person\").Values<object>(\"age\").Choose<object>(P.Eq(29), __.Constant<object>(\"matched\"))",
 +                "go": "g.V().HasLabel(\"person\").Values(\"age\").Choose(gremlingo.P.Eq(29), gremlingo.T__.Constant(\"matched\"))",
 +                "groovy": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"))",
 +                "java": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"))",
 +                "javascript": "g.V().hasLabel(\"person\").values(\"age\").choose(P.eq(29), __.constant(\"matched\"))",
 +                "python": "g.V().has_label('person').values('age').choose(P.eq(29), __.constant('matched'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseX_valuesXnameX_option1X_isXmarkoX_valuesXageXX_option2Xnone_valuesXnameXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(values(\"name\")).option(is(\"marko\"), values(\"age\")).option(Pick.none, values(\"name\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(__.is(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(__.is(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1)).option(__.is(string2), __.values(string3)).option(Pick.none, __.values(string1))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"name\")).Option(__.Is(\"marko\"), __.Values<object>(\"age\")).Option(Pick.None, __.Values<object>(\"name\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"name\")).Option(gremlingo.T__.Is(\"marko\"), gremlingo.T__.Values(\"age\")).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(__.is(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(__.is(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(__.is(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "python": "g.V().has_label('person').choose(__.values('name')).option(__.is_('marko'), __.values('age')).option(Pick.none, __.values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_chooseX_valuesXnameX_option1X_PeqXmarkoX_valuesXageXX_option2Xnone_valuesXnameXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").choose(values(\"name\")).option(P.eq(\"marko\"), values(\"age\")).option(Pick.none, values(\"name\"))",
 +                "language": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(P.eq(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "canonical": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(P.eq(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "anonymized": "g.V().hasLabel(string0).choose(__.values(string1)).option(P.eq(string2), __.values(string3)).option(Pick.none, __.values(string1))",
 +                "dotnet": "g.V().HasLabel(\"person\").Choose<object>(__.Values<object>(\"name\")).Option(P.Eq(\"marko\"), __.Values<object>(\"age\")).Option(Pick.None, __.Values<object>(\"name\"))",
 +                "go": "g.V().HasLabel(\"person\").Choose(gremlingo.T__.Values(\"name\")).Option(gremlingo.P.Eq(\"marko\"), gremlingo.T__.Values(\"age\")).Option(gremlingo.Pick.None, gremlingo.T__.Values(\"name\"))",
 +                "groovy": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(P.eq(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "java": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(P.eq(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "javascript": "g.V().hasLabel(\"person\").choose(__.values(\"name\")).option(P.eq(\"marko\"), __.values(\"age\")).option(Pick.none, __.values(\"name\"))",
 +                "python": "g.V().has_label('person').choose(__.values('name')).option(P.eq('marko'), __.values('age')).option(Pick.none, __.values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXpropertiesXlocationX_order_byXvalueX_limitX2XX_value",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.properties(\"location\").order().by(T.value, Order.asc).range(0, 2)).value()",
 +                "language": "g.V().local(__.properties(\"location\").order().by(T.value, Order.asc).range(0, 2)).value()",
 +                "canonical": "g.V().local(__.properties(\"location\").order().by(T.value, Order.asc).range(0, 2)).value()",
 +                "anonymized": "g.V().local(__.properties(string0).order().by(T.value, Order.asc).range(number0, number1)).value()",
 +                "dotnet": "g.V().Local<object>(__.Properties<object>(\"location\").Order().By(T.Value, Order.Asc).Range<object>(0, 2)).Value<object>()",
 +                "go": "g.V().Local(gremlingo.T__.Properties(\"location\").Order().By(gremlingo.T.Value, gremlingo.Order.Asc).Range(0, 2)).Value()",
 +                "groovy": "g.V().local(__.properties(\"location\").order().by(T.value, Order.asc).range(0, 2)).value()",
 +                "java": "g.V().local(__.properties(\"location\").order().by(T.value, Order.asc).range(0, 2)).value()",
 +                "javascript": "g.V().local(__.properties(\"location\").order().by(T.value, Order.asc).range(0, 2)).value()",
 +                "python": "g.V().local(__.properties('location').order().by(T.value, Order.asc).range_(0, 2)).value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXlabel_personX_asXaX_localXoutXcreatedX_asXbXX_selectXa_bX_byXnameX_byXidX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(T.label, \"person\").as(\"a\").local(__.out(\"created\").as(\"b\")).select(\"a\", \"b\").by(\"name\").by(T.id)",
 +                "language": "g.V().has(T.label, \"person\").as(\"a\").local(__.out(\"created\").as(\"b\")).select(\"a\", \"b\").by(\"name\").by(T.id)",
 +                "canonical": "g.V().has(T.label, \"person\").as(\"a\").local(__.out(\"created\").as(\"b\")).select(\"a\", \"b\").by(\"name\").by(T.id)",
 +                "anonymized": "g.V().has(T.label, string0).as(string1).local(__.out(string2).as(string3)).select(string1, string3).by(string4).by(T.id)",
 +                "dotnet": "g.V().Has(T.Label, \"person\").As(\"a\").Local<object>(__.Out(\"created\").As(\"b\")).Select<object>(\"a\", \"b\").By(\"name\").By(T.Id)",
 +                "go": "g.V().Has(gremlingo.T.Label, \"person\").As(\"a\").Local(gremlingo.T__.Out(\"created\").As(\"b\")).Select(\"a\", \"b\").By(\"name\").By(gremlingo.T.Id)",
 +                "groovy": "g.V().has(T.label, \"person\").as(\"a\").local(__.out(\"created\").as(\"b\")).select(\"a\", \"b\").by(\"name\").by(T.id)",
 +                "java": "g.V().has(T.label, \"person\").as(\"a\").local(__.out(\"created\").as(\"b\")).select(\"a\", \"b\").by(\"name\").by(T.id)",
 +                "javascript": "g.V().has(T.label, \"person\").as(\"a\").local(__.out(\"created\").as(\"b\")).select(\"a\", \"b\").by(\"name\").by(T.id)",
 +                "python": "g.V().has(T.label, 'person').as_('a').local(__.out('created').as_('b')).select('a', 'b').by('name').by(T.id_)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXoutE_countX",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.outE().count())",
 +                "language": "g.V().local(__.outE().count())",
 +                "canonical": "g.V().local(__.outE().count())",
 +                "anonymized": "g.V().local(__.outE().count())",
 +                "dotnet": "g.V().Local<object>(__.OutE().Count())",
 +                "go": "g.V().Local(gremlingo.T__.OutE().Count())",
 +                "groovy": "g.V().local(__.outE().count())",
 +                "java": "g.V().local(__.outE().count())",
 +                "javascript": "g.V().local(__.outE().count())",
 +                "python": "g.V().local(__.out_e().count())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_localXoutEXknowsX_limitX1XX_inV_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).local(__.outE(\"knows\").limit(1)).inV().values(\"name\")",
 +                "language": "g.V(vid1).local(__.outE(\"knows\").limit(1)).inV().values(\"name\")",
 +                "canonical": "g.V(vid1).local(__.outE(\"knows\").limit(1)).inV().values(\"name\")",
 +                "anonymized": "g.V(vid1).local(__.outE(string0).limit(number0)).inV().values(string1)",
 +                "dotnet": "g.V(vid1).Local<object>(__.OutE(\"knows\").Limit<object>(1)).InV().Values<object>(\"name\")",
 +                "go": "g.V(vid1).Local(gremlingo.T__.OutE(\"knows\").Limit(1)).InV().Values(\"name\")",
 +                "groovy": "g.V(vid1).local(__.outE(\"knows\").limit(1)).inV().values(\"name\")",
 +                "java": "g.V(vid1).local(__.outE(\"knows\").limit(1)).inV().values(\"name\")",
 +                "javascript": "g.V(vid1).local(__.outE(\"knows\").limit(1)).inV().values(\"name\")",
 +                "python": "g.V(vid1).local(__.out_e('knows').limit(1)).in_v().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXbothEXcreatedX_limitX1XX_otherV_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.bothE(\"created\").limit(1)).otherV().values(\"name\")",
 +                "language": "g.V().local(__.bothE(\"created\").limit(1)).otherV().values(\"name\")",
 +                "canonical": "g.V().local(__.bothE(\"created\").limit(1)).otherV().values(\"name\")",
 +                "anonymized": "g.V().local(__.bothE(string0).limit(number0)).otherV().values(string1)",
 +                "dotnet": "g.V().Local<object>(__.BothE(\"created\").Limit<object>(1)).OtherV().Values<object>(\"name\")",
 +                "go": "g.V().Local(gremlingo.T__.BothE(\"created\").Limit(1)).OtherV().Values(\"name\")",
 +                "groovy": "g.V().local(__.bothE(\"created\").limit(1)).otherV().values(\"name\")",
 +                "java": "g.V().local(__.bothE(\"created\").limit(1)).otherV().values(\"name\")",
 +                "javascript": "g.V().local(__.bothE(\"created\").limit(1)).otherV().values(\"name\")",
 +                "python": "g.V().local(__.both_e('created').limit(1)).other_v().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX4X_localXbothEX1_createdX_limitX1XX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid4).local(__.bothE(\"created\").limit(1))",
 +                "language": "g.V(vid4).local(__.bothE(\"created\").limit(1))",
 +                "canonical": "g.V(vid4).local(__.bothE(\"created\").limit(1))",
 +                "anonymized": "g.V(vid4).local(__.bothE(string0).limit(number0))",
 +                "dotnet": "g.V(vid4).Local<object>(__.BothE(\"created\").Limit<object>(1))",
 +                "go": "g.V(vid4).Local(gremlingo.T__.BothE(\"created\").Limit(1))",
 +                "groovy": "g.V(vid4).local(__.bothE(\"created\").limit(1))",
 +                "java": "g.V(vid4).local(__.bothE(\"created\").limit(1))",
 +                "javascript": "g.V(vid4).local(__.bothE(\"created\").limit(1))",
 +                "python": "g.V(vid4).local(__.both_e('created').limit(1))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX4X_localXbothEXknows_createdX_limitX1XX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid4).local(__.bothE(\"knows\", \"created\").limit(1))",
 +                "language": "g.V(vid4).local(__.bothE(\"knows\", \"created\").limit(1))",
 +                "canonical": "g.V(vid4).local(__.bothE(\"knows\", \"created\").limit(1))",
 +                "anonymized": "g.V(vid4).local(__.bothE(string0, string1).limit(number0))",
 +                "dotnet": "g.V(vid4).Local<object>(__.BothE(\"knows\", \"created\").Limit<object>(1))",
 +                "go": "g.V(vid4).Local(gremlingo.T__.BothE(\"knows\", \"created\").Limit(1))",
 +                "groovy": "g.V(vid4).local(__.bothE(\"knows\", \"created\").limit(1))",
 +                "java": "g.V(vid4).local(__.bothE(\"knows\", \"created\").limit(1))",
 +                "javascript": "g.V(vid4).local(__.bothE(\"knows\", \"created\").limit(1))",
 +                "python": "g.V(vid4).local(__.both_e('knows', 'created').limit(1))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX4X_localXbothE_limitX1XX_otherV_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid4).local(__.bothE().limit(1)).otherV().values(\"name\")",
 +                "language": "g.V(vid4).local(__.bothE().limit(1)).otherV().values(\"name\")",
 +                "canonical": "g.V(vid4).local(__.bothE().limit(1)).otherV().values(\"name\")",
 +                "anonymized": "g.V(vid4).local(__.bothE().limit(number0)).otherV().values(string0)",
 +                "dotnet": "g.V(vid4).Local<object>(__.BothE().Limit<object>(1)).OtherV().Values<object>(\"name\")",
 +                "go": "g.V(vid4).Local(gremlingo.T__.BothE().Limit(1)).OtherV().Values(\"name\")",
 +                "groovy": "g.V(vid4).local(__.bothE().limit(1)).otherV().values(\"name\")",
 +                "java": "g.V(vid4).local(__.bothE().limit(1)).otherV().values(\"name\")",
 +                "javascript": "g.V(vid4).local(__.bothE().limit(1)).otherV().values(\"name\")",
 +                "python": "g.V(vid4).local(__.both_e().limit(1)).other_v().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX4X_localXbothE_limitX2XX_otherV_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid4).local(__.bothE().limit(2)).otherV().values(\"name\")",
 +                "language": "g.V(vid4).local(__.bothE().limit(2)).otherV().values(\"name\")",
 +                "canonical": "g.V(vid4).local(__.bothE().limit(2)).otherV().values(\"name\")",
 +                "anonymized": "g.V(vid4).local(__.bothE().limit(number0)).otherV().values(string0)",
 +                "dotnet": "g.V(vid4).Local<object>(__.BothE().Limit<object>(2)).OtherV().Values<object>(\"name\")",
 +                "go": "g.V(vid4).Local(gremlingo.T__.BothE().Limit(2)).OtherV().Values(\"name\")",
 +                "groovy": "g.V(vid4).local(__.bothE().limit(2)).otherV().values(\"name\")",
 +                "java": "g.V(vid4).local(__.bothE().limit(2)).otherV().values(\"name\")",
 +                "javascript": "g.V(vid4).local(__.bothE().limit(2)).otherV().values(\"name\")",
 +                "python": "g.V(vid4).local(__.both_e().limit(2)).other_v().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXinEXknowsX_limitX2XX_outV_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.inE(\"knows\").limit(2)).outV().values(\"name\")",
 +                "language": "g.V().local(__.inE(\"knows\").limit(2)).outV().values(\"name\")",
 +                "canonical": "g.V().local(__.inE(\"knows\").limit(2)).outV().values(\"name\")",
 +                "anonymized": "g.V().local(__.inE(string0).limit(number0)).outV().values(string1)",
 +                "dotnet": "g.V().Local<object>(__.InE(\"knows\").Limit<object>(2)).OutV().Values<object>(\"name\")",
 +                "go": "g.V().Local(gremlingo.T__.InE(\"knows\").Limit(2)).OutV().Values(\"name\")",
 +                "groovy": "g.V().local(__.inE(\"knows\").limit(2)).outV().values(\"name\")",
 +                "java": "g.V().local(__.inE(\"knows\").limit(2)).outV().values(\"name\")",
 +                "javascript": "g.V().local(__.inE(\"knows\").limit(2)).outV().values(\"name\")",
 +                "python": "g.V().local(__.in_e('knows').limit(2)).out_v().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXmatchXproject__created_person__person_name_nameX_selectXname_projectX_by_byXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.match(__.as(\"project\").in(\"created\").as(\"person\"),__.as(\"person\").values(\"name\").as(\"name\"))).select(\"name\", \"project\").by().by(\"name\")",
 +                "language": "g.V().local(__.match(__.as(\"project\").in(\"created\").as(\"person\"), __.as(\"person\").values(\"name\").as(\"name\"))).select(\"name\", \"project\").by().by(\"name\")",
 +                "canonical": "g.V().local(__.match(__.as(\"project\").in(\"created\").as(\"person\"), __.as(\"person\").values(\"name\").as(\"name\"))).select(\"name\", \"project\").by().by(\"name\")",
 +                "anonymized": "g.V().local(__.match(__.as(string0).in(string1).as(string2), __.as(string2).values(string3).as(string3))).select(string3, string0).by().by(string3)",
 +                "dotnet": "g.V().Local<object>(__.Match<object>(__.As(\"project\").In(\"created\").As(\"person\"), __.As(\"person\").Values<object>(\"name\").As(\"name\"))).Select<object>(\"name\", \"project\").By().By(\"name\")",
 +                "go": "g.V().Local(gremlingo.T__.Match(gremlingo.T__.As(\"project\").In(\"created\").As(\"person\"), gremlingo.T__.As(\"person\").Values(\"name\").As(\"name\"))).Select(\"name\", \"project\").By().By(\"name\")",
 +                "groovy": "g.V().local(__.match(__.as(\"project\").in(\"created\").as(\"person\"), __.as(\"person\").values(\"name\").as(\"name\"))).select(\"name\", \"project\").by().by(\"name\")",
 +                "java": "g.V().local(__.match(__.as(\"project\").in(\"created\").as(\"person\"), __.as(\"person\").values(\"name\").as(\"name\"))).select(\"name\", \"project\").by().by(\"name\")",
 +                "javascript": "g.V().local(__.match(__.as(\"project\").in_(\"created\").as(\"person\"), __.as(\"person\").values(\"name\").as(\"name\"))).select(\"name\", \"project\").by().by(\"name\")",
 +                "python": "g.V().local(__.match(__.as_('project').in_('created').as_('person'), __.as_('person').values('name').as_('name'))).select('name', 'project').by().by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_in_barrier_localXcountX",
 +        "traversals": [
 +            {
 +                "original": "g.V().in().barrier().local(__.count())",
 +                "language": "g.V().in().barrier().local(__.count())",
 +                "canonical": "g.V().in().barrier().local(__.count())",
 +                "anonymized": "g.V().in().barrier().local(__.count())",
 +                "dotnet": "g.V().In().Barrier().Local<object>(__.Count())",
 +                "go": "g.V().In().Barrier().Local(gremlingo.T__.Count())",
 +                "groovy": "g.V().in().barrier().local(__.count())",
 +                "java": "g.V().in().barrier().local(__.count())",
 +                "javascript": "g.V().in_().barrier().local(__.count())",
 +                "python": "g.V().in_().barrier().local(__.count())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXout_in_simplePathX_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.out().in().simplePath()).path()",
 +                "language": "g.V().local(__.out().in().simplePath()).path()",
 +                "canonical": "g.V().local(__.out().in().simplePath()).path()",
 +                "anonymized": "g.V().local(__.out().in().simplePath()).path()",
 +                "dotnet": "g.V().Local<object>(__.Out().In().SimplePath()).Path()",
 +                "go": "g.V().Local(gremlingo.T__.Out().In().SimplePath()).Path()",
 +                "groovy": "g.V().local(__.out().in().simplePath()).path()",
 +                "java": "g.V().local(__.out().in().simplePath()).path()",
 +                "javascript": "g.V().local(__.out().in_().simplePath()).path()",
 +                "python": "g.V().local(__.out().in_().simple_path()).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_withSackX0LX_V_in_barrier_localXsackXsumX_byXageXX_sack",
 +        "traversals": [
 +            {
 +                "original": "g.withSack(0L).V().in().barrier().local(__.sack(sum).by(\"age\")).sack()",
 +                "language": "g.withSack(0l).V().in().barrier().local(__.sack(Operator.sum).by(\"age\")).sack()",
 +                "canonical": "g.withSack(0l).V().in().barrier().local(__.sack(Operator.sum).by(\"age\")).sack()",
 +                "anonymized": "g.withSack(long0).V().in().barrier().local(__.sack(Operator.sum).by(string0)).sack()",
 +                "dotnet": "g.WithSack(0l).V().In().Barrier().Local<object>(__.Sack(Operator.Sum).By(\"age\")).Sack<object>()",
 +                "go": "g.WithSack(int64(0)).V().In().Barrier().Local(gremlingo.T__.Sack(gremlingo.Operator.Sum).By(\"age\")).Sack()",
 +                "groovy": "g.withSack(0l).V().in().barrier().local(__.sack(Operator.sum).by(\"age\")).sack()",
 +                "java": "g.withSack(0l).V().in().barrier().local(__.sack(Operator.sum).by(\"age\")).sack()",
 +                "javascript": "g.withSack(0).V().in_().barrier().local(__.sack(Operator.sum).by(\"age\")).sack()",
 +                "python": "g.with_sack(long(0)).V().in_().barrier().local(__.sack(Operator.sum_).by('age')).sack()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXout_localXcountXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.out().local(__.count()))",
 +                "language": "g.V().local(__.out().local(__.count()))",
 +                "canonical": "g.V().local(__.out().local(__.count()))",
 +                "anonymized": "g.V().local(__.out().local(__.count()))",
 +                "dotnet": "g.V().Local<object>(__.Out().Local<object>(__.Count()))",
 +                "go": "g.V().Local(gremlingo.T__.Out().Local(gremlingo.T__.Count()))",
 +                "groovy": "g.V().local(__.out().local(__.count()))",
 +                "java": "g.V().local(__.out().local(__.count()))",
 +                "javascript": "g.V().local(__.out().local(__.count()))",
 +                "python": "g.V().local(__.out().local(__.count()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_unionXoutE_count_localXinE_countXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().union(__.outE().count(), __.local(inE().count()))",
 +                "language": "g.V().union(__.outE().count(), __.local(__.inE().count()))",
 +                "canonical": "g.V().union(__.outE().count(), __.local(__.inE().count()))",
 +                "anonymized": "g.V().union(__.outE().count(), __.local(__.inE().count()))",
 +                "dotnet": "g.V().Union<object>(__.OutE().Count(), __.Local<object>(__.InE().Count()))",
 +                "go": "g.V().Union(gremlingo.T__.OutE().Count(), gremlingo.T__.Local(gremlingo.T__.InE().Count()))",
 +                "groovy": "g.V().union(__.outE().count(), __.local(__.inE().count()))",
 +                "java": "g.V().union(__.outE().count(), __.local(__.inE().count()))",
 +                "javascript": "g.V().union(__.outE().count(), __.local(__.inE().count()))",
 +                "python": "g.V().union(__.out_e().count(), __.local(__.in_e().count()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX2X_optionalXoutXknowsXX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid2).optional(__.out(\"knows\"))",
 +                "language": "g.V(vid2).optional(__.out(\"knows\"))",
 +                "canonical": "g.V(vid2).optional(__.out(\"knows\"))",
 +                "anonymized": "g.V(vid2).optional(__.out(string0))",
 +                "dotnet": "g.V(vid2).Optional<object>(__.Out(\"knows\"))",
 +                "go": "g.V(vid2).Optional(gremlingo.T__.Out(\"knows\"))",
 +                "groovy": "g.V(vid2).optional(__.out(\"knows\"))",
 +                "java": "g.V(vid2).optional(__.out(\"knows\"))",
 +                "javascript": "g.V(vid2).optional(__.out(\"knows\"))",
 +                "python": "g.V(vid2).optional(__.out('knows'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX2X_optionalXinXknowsXX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid2).optional(__.in(\"knows\"))",
 +                "language": "g.V(vid2).optional(__.in(\"knows\"))",
 +                "canonical": "g.V(vid2).optional(__.in(\"knows\"))",
 +                "anonymized": "g.V(vid2).optional(__.in(string0))",
 +                "dotnet": "g.V(vid2).Optional<object>(__.In(\"knows\"))",
 +                "go": "g.V(vid2).Optional(gremlingo.T__.In(\"knows\"))",
 +                "groovy": "g.V(vid2).optional(__.in(\"knows\"))",
 +                "java": "g.V(vid2).optional(__.in(\"knows\"))",
 +                "javascript": "g.V(vid2).optional(__.in_(\"knows\"))",
 +                "python": "g.V(vid2).optional(__.in_('knows'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_optionalXoutXknowsX_optionalXoutXcreatedXXX_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").optional(__.out(\"knows\").optional(__.out(\"created\"))).path()",
 +                "language": "g.V().hasLabel(\"person\").optional(__.out(\"knows\").optional(__.out(\"created\"))).path()",
 +                "canonical": "g.V().hasLabel(\"person\").optional(__.out(\"knows\").optional(__.out(\"created\"))).path()",
 +                "anonymized": "g.V().hasLabel(string0).optional(__.out(string1).optional(__.out(string2))).path()",
 +                "dotnet": "g.V().HasLabel(\"person\").Optional<object>(__.Out(\"knows\").Optional<object>(__.Out(\"created\"))).Path()",
 +                "go": "g.V().HasLabel(\"person\").Optional(gremlingo.T__.Out(\"knows\").Optional(gremlingo.T__.Out(\"created\"))).Path()",
 +                "groovy": "g.V().hasLabel(\"person\").optional(__.out(\"knows\").optional(__.out(\"created\"))).path()",
 +                "java": "g.V().hasLabel(\"person\").optional(__.out(\"knows\").optional(__.out(\"created\"))).path()",
 +                "javascript": "g.V().hasLabel(\"person\").optional(__.out(\"knows\").optional(__.out(\"created\"))).path()",
 +                "python": "g.V().has_label('person').optional(__.out('knows').optional(__.out('created'))).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_optionalXout_optionalXoutXX_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().optional(__.out().optional(__.out())).path()",
 +                "language": "g.V().optional(__.out().optional(__.out())).path()",
 +                "canonical": "g.V().optional(__.out().optional(__.out())).path()",
 +                "anonymized": "g.V().optional(__.out().optional(__.out())).path()",
 +                "dotnet": "g.V().Optional<object>(__.Out().Optional<object>(__.Out())).Path()",
 +                "go": "g.V().Optional(gremlingo.T__.Out().Optional(gremlingo.T__.Out())).Path()",
 +                "groovy": "g.V().optional(__.out().optional(__.out())).path()",
 +                "java": "g.V().optional(__.out().optional(__.out())).path()",
 +                "javascript": "g.V().optional(__.out().optional(__.out())).path()",
 +                "python": "g.V().optional(__.out().optional(__.out())).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_optionalXaddVXdogXX_label",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\",\"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"name [...]
 +                "language": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"nam [...]
 +                "canonical": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"na [...]
 +                "anonymized": "g.addV(string0).property(string1, string2).property(string3, number0).as(string2).addV(string0).property(string1, string4).property(string3, number1).as(string4).addV(string5).property(string1, string6).property(string7, string8).as(string6).addV(string0).property(string1, string9).property(string3, number2).as(string9).addV(string5).property(string1, string10).property(string7, string8).as(string10).addV(string0).property(string1, string11).property(strin [...]
 +                "dotnet": "g.AddV((string) \"person\").Property(\"name\", \"marko\").Property(\"age\", 29).As(\"marko\").AddV((string) \"person\").Property(\"name\", \"vadas\").Property(\"age\", 27).As(\"vadas\").AddV((string) \"software\").Property(\"name\", \"lop\").Property(\"lang\", \"java\").As(\"lop\").AddV((string) \"person\").Property(\"name\", \"josh\").Property(\"age\", 32).As(\"josh\").AddV((string) \"software\").Property(\"name\", \"ripple\").Property(\"lang\", \"java\").As( [...]
 +                "go": "g.AddV(\"person\").Property(\"name\", \"marko\").Property(\"age\", 29).As(\"marko\").AddV(\"person\").Property(\"name\", \"vadas\").Property(\"age\", 27).As(\"vadas\").AddV(\"software\").Property(\"name\", \"lop\").Property(\"lang\", \"java\").As(\"lop\").AddV(\"person\").Property(\"name\", \"josh\").Property(\"age\", 32).As(\"josh\").AddV(\"software\").Property(\"name\", \"ripple\").Property(\"lang\", \"java\").As(\"ripple\").AddV(\"person\").Property(\"name\", \ [...]
 +                "groovy": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"name\ [...]
 +                "java": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"name\", [...]
 +                "javascript": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"n [...]
 +                "python": "g.add_v('person').property('name', 'marko').property('age', 29).as_('marko').add_v('person').property('name', 'vadas').property('age', 27).as_('vadas').add_v('software').property('name', 'lop').property('lang', 'java').as_('lop').add_v('person').property('name', 'josh').property('age', 32).as_('josh').add_v('software').property('name', 'ripple').property('lang', 'java').as_('ripple').add_v('person').property('name', 'peter').property('age', 35).as_('peter').ad [...]
 +            },
 +            {
 +                "original": "g.V(vid1).optional(__.addV(\"dog\")).label()",
 +                "language": "g.V(vid1).optional(__.addV(\"dog\")).label()",
 +                "canonical": "g.V(vid1).optional(__.addV(\"dog\")).label()",
 +                "anonymized": "g.V(vid1).optional(__.addV(string0)).label()",
 +                "dotnet": "g.V(vid1).Optional<object>(__.AddV((string) \"dog\")).Label()",
 +                "go": "g.V(vid1).Optional(gremlingo.T__.AddV(\"dog\")).Label()",
 +                "groovy": "g.V(vid1).optional(__.addV(\"dog\")).label()",
 +                "java": "g.V(vid1).optional(__.addV(\"dog\")).label()",
 +                "javascript": "g.V(vid1).optional(__.addV(\"dog\")).label()",
 +                "python": "g.V(vid1).optional(__.add_v('dog')).label()"
 +            },
 +            {
 +                "original": "g.V()",
 +                "language": "g.V()",
 +                "canonical": "g.V()",
 +                "anonymized": "g.V()",
 +                "dotnet": "g.V()",
 +                "go": "g.V()",
 +                "groovy": "g.V()",
 +                "java": "g.V()",
 +                "javascript": "g.V()",
 +                "python": "g.V()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXoutX_timesX2X_emit_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.out()).times(2).emit().path()",
 +                "language": "g.V().repeat(__.out()).times(2).emit().path()",
 +                "canonical": "g.V().repeat(__.out()).times(2).emit().path()",
 +                "anonymized": "g.V().repeat(__.out()).times(number0).emit().path()",
 +                "dotnet": "g.V().Repeat(__.Out()).Times(2).Emit().Path()",
 +                "go": "g.V().Repeat(gremlingo.T__.Out()).Times(2).Emit().Path()",
 +                "groovy": "g.V().repeat(__.out()).times(2).emit().path()",
 +                "java": "g.V().repeat(__.out()).times(2).emit().path()",
 +                "javascript": "g.V().repeat(__.out()).times(2).emit().path()",
 +                "python": "g.V().repeat(__.out()).times(2).emit().path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXoutX_timesX2X_repeatXinX_timesX2X_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.out()).times(2).repeat(__.in()).times(2).values(\"name\")",
 +                "language": "g.V().repeat(__.out()).times(2).repeat(__.in()).times(2).values(\"name\")",
 +                "canonical": "g.V().repeat(__.out()).times(2).repeat(__.in()).times(2).values(\"name\")",
 +                "anonymized": "g.V().repeat(__.out()).times(number0).repeat(__.in()).times(number0).values(string0)",
 +                "dotnet": "g.V().Repeat(__.Out()).Times(2).Repeat(__.In()).Times(2).Values<object>(\"name\")",
 +                "go": "g.V().Repeat(gremlingo.T__.Out()).Times(2).Repeat(gremlingo.T__.In()).Times(2).Values(\"name\")",
 +                "groovy": "g.V().repeat(__.out()).times(2).repeat(__.in()).times(2).values(\"name\")",
 +                "java": "g.V().repeat(__.out()).times(2).repeat(__.in()).times(2).values(\"name\")",
 +                "javascript": "g.V().repeat(__.out()).times(2).repeat(__.in_()).times(2).values(\"name\")",
 +                "python": "g.V().repeat(__.out()).times(2).repeat(__.in_()).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXoutE_inVX_timesX2X_path_by_name_by_label",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.outE().inV()).times(2).path().by(\"name\").by(T.label)",
 +                "language": "g.V().repeat(__.outE().inV()).times(2).path().by(\"name\").by(T.label)",
 +                "canonical": "g.V().repeat(__.outE().inV()).times(2).path().by(\"name\").by(T.label)",
 +                "anonymized": "g.V().repeat(__.outE().inV()).times(number0).path().by(string0).by(T.label)",
 +                "dotnet": "g.V().Repeat(__.OutE().InV()).Times(2).Path().By(\"name\").By(T.Label)",
 +                "go": "g.V().Repeat(gremlingo.T__.OutE().InV()).Times(2).Path().By(\"name\").By(gremlingo.T.Label)",
 +                "groovy": "g.V().repeat(__.outE().inV()).times(2).path().by(\"name\").by(T.label)",
 +                "java": "g.V().repeat(__.outE().inV()).times(2).path().by(\"name\").by(T.label)",
 +                "javascript": "g.V().repeat(__.outE().inV()).times(2).path().by(\"name\").by(T.label)",
 +                "python": "g.V().repeat(__.out_e().in_v()).times(2).path().by('name').by(T.label)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXoutX_timesX2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.out()).times(2)",
 +                "language": "g.V().repeat(__.out()).times(2)",
 +                "canonical": "g.V().repeat(__.out()).times(2)",
 +                "anonymized": "g.V().repeat(__.out()).times(number0)",
 +                "dotnet": "g.V().Repeat(__.Out()).Times(2)",
 +                "go": "g.V().Repeat(gremlingo.T__.Out()).Times(2)",
 +                "groovy": "g.V().repeat(__.out()).times(2)",
 +                "java": "g.V().repeat(__.out()).times(2)",
 +                "javascript": "g.V().repeat(__.out()).times(2)",
 +                "python": "g.V().repeat(__.out()).times(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXoutX_timesX2X_emit",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.out()).times(2).emit()",
 +                "language": "g.V().repeat(__.out()).times(2).emit()",
 +                "canonical": "g.V().repeat(__.out()).times(2).emit()",
 +                "anonymized": "g.V().repeat(__.out()).times(number0).emit()",
 +                "dotnet": "g.V().Repeat(__.Out()).Times(2).Emit()",
 +                "go": "g.V().Repeat(gremlingo.T__.Out()).Times(2).Emit()",
 +                "groovy": "g.V().repeat(__.out()).times(2).emit()",
 +                "java": "g.V().repeat(__.out()).times(2).emit()",
 +                "javascript": "g.V().repeat(__.out()).times(2).emit()",
 +                "python": "g.V().repeat(__.out()).times(2).emit()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_timesX2X_repeatXoutX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).times(2).repeat(__.out()).values(\"name\")",
 +                "language": "g.V(vid1).times(2).repeat(__.out()).values(\"name\")",
 +                "canonical": "g.V(vid1).times(2).repeat(__.out()).values(\"name\")",
 +                "anonymized": "g.V(vid1).times(number0).repeat(__.out()).values(string0)",
 +                "dotnet": "g.V(vid1).Times(2).Repeat(__.Out()).Values<object>(\"name\")",
 +                "go": "g.V(vid1).Times(2).Repeat(gremlingo.T__.Out()).Values(\"name\")",
 +                "groovy": "g.V(vid1).times(2).repeat(__.out()).values(\"name\")",
 +                "java": "g.V(vid1).times(2).repeat(__.out()).values(\"name\")",
 +                "javascript": "g.V(vid1).times(2).repeat(__.out()).values(\"name\")",
 +                "python": "g.V(vid1).times(2).repeat(__.out()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit_timesX2X_repeatXoutX_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit().times(2).repeat(__.out()).path()",
 +                "language": "g.V().emit().times(2).repeat(__.out()).path()",
 +                "canonical": "g.V().emit().times(2).repeat(__.out()).path()",
 +                "anonymized": "g.V().emit().times(number0).repeat(__.out()).path()",
 +                "dotnet": "g.V().Emit().Times(2).Repeat(__.Out()).Path()",
 +                "go": "g.V().Emit().Times(2).Repeat(gremlingo.T__.Out()).Path()",
 +                "groovy": "g.V().emit().times(2).repeat(__.out()).path()",
 +                "java": "g.V().emit().times(2).repeat(__.out()).path()",
 +                "javascript": "g.V().emit().times(2).repeat(__.out()).path()",
 +                "python": "g.V().emit().times(2).repeat(__.out()).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit_repeatXoutX_timesX2X_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit().repeat(__.out()).times(2).path()",
 +                "language": "g.V().emit().repeat(__.out()).times(2).path()",
 +                "canonical": "g.V().emit().repeat(__.out()).times(2).path()",
 +                "anonymized": "g.V().emit().repeat(__.out()).times(number0).path()",
 +                "dotnet": "g.V().Emit().Repeat(__.Out()).Times(2).Path()",
 +                "go": "g.V().Emit().Repeat(gremlingo.T__.Out()).Times(2).Path()",
 +                "groovy": "g.V().emit().repeat(__.out()).times(2).path()",
 +                "java": "g.V().emit().repeat(__.out()).times(2).path()",
 +                "javascript": "g.V().emit().repeat(__.out()).times(2).path()",
 +                "python": "g.V().emit().repeat(__.out()).times(2).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_emitXhasXlabel_personXX_repeatXoutX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).emit(__.has(T.label, \"person\")).repeat(__.out()).values(\"name\")",
 +                "language": "g.V(vid1).emit(__.has(T.label, \"person\")).repeat(__.out()).values(\"name\")",
 +                "canonical": "g.V(vid1).emit(__.has(T.label, \"person\")).repeat(__.out()).values(\"name\")",
 +                "anonymized": "g.V(vid1).emit(__.has(T.label, string0)).repeat(__.out()).values(string1)",
 +                "dotnet": "g.V(vid1).Emit(__.Has(T.Label, \"person\")).Repeat(__.Out()).Values<object>(\"name\")",
 +                "go": "g.V(vid1).Emit(gremlingo.T__.Has(gremlingo.T.Label, \"person\")).Repeat(gremlingo.T__.Out()).Values(\"name\")",
 +                "groovy": "g.V(vid1).emit(__.has(T.label, \"person\")).repeat(__.out()).values(\"name\")",
 +                "java": "g.V(vid1).emit(__.has(T.label, \"person\")).repeat(__.out()).values(\"name\")",
 +                "javascript": "g.V(vid1).emit(__.has(T.label, \"person\")).repeat(__.out()).values(\"name\")",
 +                "python": "g.V(vid1).emit(__.has(T.label, 'person')).repeat(__.out()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXgroupCountXmX_byXnameX_outX_timesX2X_capXmX",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.groupCount(\"m\").by(\"name\").out()).times(2).cap(\"m\")",
 +                "language": "g.V().repeat(__.groupCount(\"m\").by(\"name\").out()).times(2).cap(\"m\")",
 +                "canonical": "g.V().repeat(__.groupCount(\"m\").by(\"name\").out()).times(2).cap(\"m\")",
 +                "anonymized": "g.V().repeat(__.groupCount(string0).by(string1).out()).times(number0).cap(string0)",
 +                "dotnet": "g.V().Repeat(__.GroupCount(\"m\").By(\"name\").Out()).Times(2).Cap<object>(\"m\")",
 +                "go": "g.V().Repeat(gremlingo.T__.GroupCount(\"m\").By(\"name\").Out()).Times(2).Cap(\"m\")",
 +                "groovy": "g.V().repeat(__.groupCount(\"m\").by(\"name\").out()).times(2).cap(\"m\")",
 +                "java": "g.V().repeat(__.groupCount(\"m\").by(\"name\").out()).times(2).cap(\"m\")",
 +                "javascript": "g.V().repeat(__.groupCount(\"m\").by(\"name\").out()).times(2).cap(\"m\")",
 +                "python": "g.V().repeat(__.group_count('m').by('name').out()).times(2).cap('m')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_repeatXgroupCountXmX_byXloopsX_outX_timesX3X_capXmX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).repeat(__.groupCount(\"m\").by(__.loops()).out()).times(3).cap(\"m\")",
 +                "language": "g.V(vid1).repeat(__.groupCount(\"m\").by(__.loops()).out()).times(3).cap(\"m\")",
 +                "canonical": "g.V(vid1).repeat(__.groupCount(\"m\").by(__.loops()).out()).times(3).cap(\"m\")",
 +                "anonymized": "g.V(vid1).repeat(__.groupCount(string0).by(__.loops()).out()).times(number0).cap(string0)",
 +                "dotnet": "g.V(vid1).Repeat(__.GroupCount(\"m\").By(__.Loops()).Out()).Times(3).Cap<object>(\"m\")",
 +                "go": "g.V(vid1).Repeat(gremlingo.T__.GroupCount(\"m\").By(gremlingo.T__.Loops()).Out()).Times(3).Cap(\"m\")",
 +                "groovy": "g.V(vid1).repeat(__.groupCount(\"m\").by(__.loops()).out()).times(3).cap(\"m\")",
 +                "java": "g.V(vid1).repeat(__.groupCount(\"m\").by(__.loops()).out()).times(3).cap(\"m\")",
 +                "javascript": "g.V(vid1).repeat(__.groupCount(\"m\").by(__.loops()).out()).times(3).cap(\"m\")",
 +                "python": "g.V(vid1).repeat(__.group_count('m').by(__.loops()).out()).times(3).cap('m')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXbothX_timesX10X_asXaX_out_asXbX_selectXa_bX",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.both()).times(10).as(\"a\").out().as(\"b\").select(\"a\", \"b\").count()",
 +                "language": "g.V().repeat(__.both()).times(10).as(\"a\").out().as(\"b\").select(\"a\", \"b\").count()",
 +                "canonical": "g.V().repeat(__.both()).times(10).as(\"a\").out().as(\"b\").select(\"a\", \"b\").count()",
 +                "anonymized": "g.V().repeat(__.both()).times(number0).as(string0).out().as(string1).select(string0, string1).count()",
 +                "dotnet": "g.V().Repeat(__.Both()).Times(10).As(\"a\").Out().As(\"b\").Select<object>(\"a\", \"b\").Count()",
 +                "go": "g.V().Repeat(gremlingo.T__.Both()).Times(10).As(\"a\").Out().As(\"b\").Select(\"a\", \"b\").Count()",
 +                "groovy": "g.V().repeat(__.both()).times(10).as(\"a\").out().as(\"b\").select(\"a\", \"b\").count()",
 +                "java": "g.V().repeat(__.both()).times(10).as(\"a\").out().as(\"b\").select(\"a\", \"b\").count()",
 +                "javascript": "g.V().repeat(__.both()).times(10).as(\"a\").out().as(\"b\").select(\"a\", \"b\").count()",
 +                "python": "g.V().repeat(__.both()).times(10).as_('a').out().as_('b').select('a', 'b').count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_repeatXoutX_untilXoutE_count_isX0XX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).repeat(__.out()).until(__.outE().count().is(0)).values(\"name\")",
 +                "language": "g.V(vid1).repeat(__.out()).until(__.outE().count().is(0)).values(\"name\")",
 +                "canonical": "g.V(vid1).repeat(__.out()).until(__.outE().count().is(0)).values(\"name\")",
 +                "anonymized": "g.V(vid1).repeat(__.out()).until(__.outE().count().is(number0)).values(string0)",
 +                "dotnet": "g.V(vid1).Repeat(__.Out()).Until(__.OutE().Count().Is(0)).Values<object>(\"name\")",
 +                "go": "g.V(vid1).Repeat(gremlingo.T__.Out()).Until(gremlingo.T__.OutE().Count().Is(0)).Values(\"name\")",
 +                "groovy": "g.V(vid1).repeat(__.out()).until(__.outE().count().is(0)).values(\"name\")",
 +                "java": "g.V(vid1).repeat(__.out()).until(__.outE().count().is(0)).values(\"name\")",
 +                "javascript": "g.V(vid1).repeat(__.out()).until(__.outE().count().is(0)).values(\"name\")",
 +                "python": "g.V(vid1).repeat(__.out()).until(__.out_e().count().is_(0)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_markoX_repeatXoutE_inV_simplePathX_untilXhasXname_rippleXX_path_byXnameX_byXlabelX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", \"marko\").repeat(__.outE().inV().simplePath()).until(__.has(\"name\", \"ripple\")).path().by(\"name\").by(T.label)",
 +                "language": "g.V().has(\"name\", \"marko\").repeat(__.outE().inV().simplePath()).until(__.has(\"name\", \"ripple\")).path().by(\"name\").by(T.label)",
 +                "canonical": "g.V().has(\"name\", \"marko\").repeat(__.outE().inV().simplePath()).until(__.has(\"name\", \"ripple\")).path().by(\"name\").by(T.label)",
 +                "anonymized": "g.V().has(string0, string1).repeat(__.outE().inV().simplePath()).until(__.has(string0, string2)).path().by(string0).by(T.label)",
 +                "dotnet": "g.V().Has(\"name\", \"marko\").Repeat(__.OutE().InV().SimplePath()).Until(__.Has(\"name\", \"ripple\")).Path().By(\"name\").By(T.Label)",
 +                "go": "g.V().Has(\"name\", \"marko\").Repeat(gremlingo.T__.OutE().InV().SimplePath()).Until(gremlingo.T__.Has(\"name\", \"ripple\")).Path().By(\"name\").By(gremlingo.T.Label)",
 +                "groovy": "g.V().has(\"name\", \"marko\").repeat(__.outE().inV().simplePath()).until(__.has(\"name\", \"ripple\")).path().by(\"name\").by(T.label)",
 +                "java": "g.V().has(\"name\", \"marko\").repeat(__.outE().inV().simplePath()).until(__.has(\"name\", \"ripple\")).path().by(\"name\").by(T.label)",
 +                "javascript": "g.V().has(\"name\", \"marko\").repeat(__.outE().inV().simplePath()).until(__.has(\"name\", \"ripple\")).path().by(\"name\").by(T.label)",
 +                "python": "g.V().has('name', 'marko').repeat(__.out_e().in_v().simple_path()).until(__.has('name', 'ripple')).path().by('name').by(T.label)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXloop_name_loopX_repeatXinX_timesX5X_path_by_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"loops\",\"name\",\"loop\").repeat(__.in()).times(5).path().by(\"name\")",
 +                "language": "g.V().has(\"loops\", \"name\", \"loop\").repeat(__.in()).times(5).path().by(\"name\")",
 +                "canonical": "g.V().has(\"loops\", \"name\", \"loop\").repeat(__.in()).times(5).path().by(\"name\")",
 +                "anonymized": "g.V().has(string0, string1, string2).repeat(__.in()).times(number0).path().by(string1)",
 +                "dotnet": "g.V().Has(\"loops\", \"name\", \"loop\").Repeat(__.In()).Times(5).Path().By(\"name\")",
 +                "go": "g.V().Has(\"loops\", \"name\", \"loop\").Repeat(gremlingo.T__.In()).Times(5).Path().By(\"name\")",
 +                "groovy": "g.V().has(\"loops\", \"name\", \"loop\").repeat(__.in()).times(5).path().by(\"name\")",
 +                "java": "g.V().has(\"loops\", \"name\", \"loop\").repeat(__.in()).times(5).path().by(\"name\")",
 +                "javascript": "g.V().has(\"loops\", \"name\", \"loop\").repeat(__.in_()).times(5).path().by(\"name\")",
 +                "python": "g.V().has('loops', 'name', 'loop').repeat(__.in_()).times(5).path().by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXout_repeatXout_order_byXname_descXX_timesX1XX_timesX1X_limitX1X_path_byXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.out().repeat(__.out().order().by(\"name\",desc)).times(1)).times(1).limit(1).path().by(\"name\")",
 +                "language": "g.V().repeat(__.out().repeat(__.out().order().by(\"name\", Order.desc)).times(1)).times(1).limit(1).path().by(\"name\")",
 +                "canonical": "g.V().repeat(__.out().repeat(__.out().order().by(\"name\", Order.desc)).times(1)).times(1).limit(1).path().by(\"name\")",
 +                "anonymized": "g.V().repeat(__.out().repeat(__.out().order().by(string0, Order.desc)).times(number0)).times(number0).limit(number0).path().by(string0)",
 +                "dotnet": "g.V().Repeat(__.Out().Repeat(__.Out().Order().By(\"name\", Order.Desc)).Times(1)).Times(1).Limit<object>(1).Path().By(\"name\")",
 +                "go": "g.V().Repeat(gremlingo.T__.Out().Repeat(gremlingo.T__.Out().Order().By(\"name\", gremlingo.Order.Desc)).Times(1)).Times(1).Limit(1).Path().By(\"name\")",
 +                "groovy": "g.V().repeat(__.out().repeat(__.out().order().by(\"name\", Order.desc)).times(1)).times(1).limit(1).path().by(\"name\")",
 +                "java": "g.V().repeat(__.out().repeat(__.out().order().by(\"name\", Order.desc)).times(1)).times(1).limit(1).path().by(\"name\")",
 +                "javascript": "g.V().repeat(__.out().repeat(__.out().order().by(\"name\", Order.desc)).times(1)).times(1).limit(1).path().by(\"name\")",
 +                "python": "g.V().repeat(__.out().repeat(__.out().order().by('name', Order.desc)).times(1)).times(1).limit(1).path().by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXoutXknowsXX_untilXrepeatXoutXcreatedXX_emitXhasXname_lopXXX_path_byXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.out(\"knows\")).until(__.repeat(__.out(\"created\")).emit(__.has(\"name\", \"lop\"))).path().by(\"name\")",
 +                "language": "g.V().repeat(__.out(\"knows\")).until(__.repeat(__.out(\"created\")).emit(__.has(\"name\", \"lop\"))).path().by(\"name\")",
 +                "canonical": "g.V().repeat(__.out(\"knows\")).until(__.repeat(__.out(\"created\")).emit(__.has(\"name\", \"lop\"))).path().by(\"name\")",
 +                "anonymized": "g.V().repeat(__.out(string0)).until(__.repeat(__.out(string1)).emit(__.has(string2, string3))).path().by(string2)",
 +                "dotnet": "g.V().Repeat(__.Out(\"knows\")).Until(__.Repeat(__.Out(\"created\")).Emit(__.Has(\"name\", \"lop\"))).Path().By(\"name\")",
 +                "go": "g.V().Repeat(gremlingo.T__.Out(\"knows\")).Until(gremlingo.T__.Repeat(gremlingo.T__.Out(\"created\")).Emit(gremlingo.T__.Has(\"name\", \"lop\"))).Path().By(\"name\")",
 +                "groovy": "g.V().repeat(__.out(\"knows\")).until(__.repeat(__.out(\"created\")).emit(__.has(\"name\", \"lop\"))).path().by(\"name\")",
 +                "java": "g.V().repeat(__.out(\"knows\")).until(__.repeat(__.out(\"created\")).emit(__.has(\"name\", \"lop\"))).path().by(\"name\")",
 +                "javascript": "g.V().repeat(__.out(\"knows\")).until(__.repeat(__.out(\"created\")).emit(__.has(\"name\", \"lop\"))).path().by(\"name\")",
 +                "python": "g.V().repeat(__.out('knows')).until(__.repeat(__.out('created')).emit(__.has('name', 'lop'))).path().by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXrepeatXout_createdXX_untilXhasXname_rippleXXXemit_lang",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "language": "g.V().repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "canonical": "g.V().repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "anonymized": "g.V().repeat(__.repeat(__.out(string0)).until(__.has(string1, string2))).emit().values(string3)",
 +                "dotnet": "g.V().Repeat(__.Repeat(__.Out(\"created\")).Until(__.Has(\"name\", \"ripple\"))).Emit().Values<object>(\"lang\")",
 +                "go": "g.V().Repeat(gremlingo.T__.Repeat(gremlingo.T__.Out(\"created\")).Until(gremlingo.T__.Has(\"name\", \"ripple\"))).Emit().Values(\"lang\")",
 +                "groovy": "g.V().repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "java": "g.V().repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "javascript": "g.V().repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "python": "g.V().repeat(__.repeat(__.out('created')).until(__.has('name', 'ripple'))).emit().values('lang')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_untilXconstantXtrueXX_repeatXrepeatXout_createdXX_untilXhasXname_rippleXXXemit_lang",
 +        "traversals": [
 +            {
 +                "original": "g.V().until(__.constant(true)).repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "language": "g.V().until(__.constant(true)).repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "canonical": "g.V().until(__.constant(true)).repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "anonymized": "g.V().until(__.constant(boolean0)).repeat(__.repeat(__.out(string0)).until(__.has(string1, string2))).emit().values(string3)",
 +                "dotnet": "g.V().Until(__.Constant<object>(true)).Repeat(__.Repeat(__.Out(\"created\")).Until(__.Has(\"name\", \"ripple\"))).Emit().Values<object>(\"lang\")",
 +                "go": "g.V().Until(gremlingo.T__.Constant(true)).Repeat(gremlingo.T__.Repeat(gremlingo.T__.Out(\"created\")).Until(gremlingo.T__.Has(\"name\", \"ripple\"))).Emit().Values(\"lang\")",
 +                "groovy": "g.V().until(__.constant(true)).repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "java": "g.V().until(__.constant(true)).repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "javascript": "g.V().until(__.constant(true)).repeat(__.repeat(__.out(\"created\")).until(__.has(\"name\", \"ripple\"))).emit().values(\"lang\")",
 +                "python": "g.V().until(__.constant(True)).repeat(__.repeat(__.out('created')).until(__.has('name', 'ripple'))).emit().values('lang')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit_repeatXa_outXknows_filterXloops_isX0XX_lang",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit().repeat(\"a\", __.out(\"knows\").filter(__.loops(\"a\").is(0))).values(\"lang\")",
 +                "language": "g.V().emit().repeat(\"a\", __.out(\"knows\").filter(__.loops(\"a\").is(0))).values(\"lang\")",
 +                "canonical": "g.V().emit().repeat(\"a\", __.out(\"knows\").filter(__.loops(\"a\").is(0))).values(\"lang\")",
 +                "anonymized": "g.V().emit().repeat(string0, __.out(string1).filter(__.loops(string0).is(number0))).values(string2)",
 +                "dotnet": "g.V().Emit().Repeat(\"a\", __.Out(\"knows\").Filter(__.Loops(\"a\").Is(0))).Values<object>(\"lang\")",
 +                "go": "g.V().Emit().Repeat(\"a\", gremlingo.T__.Out(\"knows\").Filter(gremlingo.T__.Loops(\"a\").Is(0))).Values(\"lang\")",
 +                "groovy": "g.V().emit().repeat(\"a\", __.out(\"knows\").filter(__.loops(\"a\").is(0))).values(\"lang\")",
 +                "java": "g.V().emit().repeat(\"a\", __.out(\"knows\").filter(__.loops(\"a\").is(0))).values(\"lang\")",
 +                "javascript": "g.V().emit().repeat(\"a\", __.out(\"knows\").filter(__.loops(\"a\").is(0))).values(\"lang\")",
 +                "python": "g.V().emit().repeat('a', __.out('knows').filter_(__.loops('a').is_(0))).values('lang')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX3X_repeatXbothX_createdXX_untilXloops_is_40XXemit_repeatXin_knowsXX_emit_loopsXisX1Xdedup_values",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid3).repeat(__.both(\"created\")).until(__.loops().is(40)).emit(__.repeat(__.in(\"knows\")).emit(__.loops().is(1))).dedup().values(\"name\")",
 +                "language": "g.V(vid3).repeat(__.both(\"created\")).until(__.loops().is(40)).emit(__.repeat(__.in(\"knows\")).emit(__.loops().is(1))).dedup().values(\"name\")",
 +                "canonical": "g.V(vid3).repeat(__.both(\"created\")).until(__.loops().is(40)).emit(__.repeat(__.in(\"knows\")).emit(__.loops().is(1))).dedup().values(\"name\")",
 +                "anonymized": "g.V(vid3).repeat(__.both(string0)).until(__.loops().is(number0)).emit(__.repeat(__.in(string1)).emit(__.loops().is(number1))).dedup().values(string2)",
 +                "dotnet": "g.V(vid3).Repeat(__.Both(\"created\")).Until(__.Loops().Is(40)).Emit(__.Repeat(__.In(\"knows\")).Emit(__.Loops().Is(1))).Dedup().Values<object>(\"name\")",
 +                "go": "g.V(vid3).Repeat(gremlingo.T__.Both(\"created\")).Until(gremlingo.T__.Loops().Is(40)).Emit(gremlingo.T__.Repeat(gremlingo.T__.In(\"knows\")).Emit(gremlingo.T__.Loops().Is(1))).Dedup().Values(\"name\")",
 +                "groovy": "g.V(vid3).repeat(__.both(\"created\")).until(__.loops().is(40)).emit(__.repeat(__.in(\"knows\")).emit(__.loops().is(1))).dedup().values(\"name\")",
 +                "java": "g.V(vid3).repeat(__.both(\"created\")).until(__.loops().is(40)).emit(__.repeat(__.in(\"knows\")).emit(__.loops().is(1))).dedup().values(\"name\")",
 +                "javascript": "g.V(vid3).repeat(__.both(\"created\")).until(__.loops().is(40)).emit(__.repeat(__.in_(\"knows\")).emit(__.loops().is(1))).dedup().values(\"name\")",
 +                "python": "g.V(vid3).repeat(__.both('created')).until(__.loops().is_(40)).emit(__.repeat(__.in_('knows')).emit(__.loops().is_(1))).dedup().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_repeatXrepeatXunionXout_uses_out_traversesXX_whereXloops_isX0X_timesX1X_timeX2X_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).repeat(__.repeat(__.union(__.out(\"uses\"), __.out(\"traverses\")).where(__.loops().is(0))).times(1)).times(2).values(\"name\")",
 +                "language": "g.V(vid1).repeat(__.repeat(__.union(__.out(\"uses\"), __.out(\"traverses\")).where(__.loops().is(0))).times(1)).times(2).values(\"name\")",
 +                "canonical": "g.V(vid1).repeat(__.repeat(__.union(__.out(\"uses\"), __.out(\"traverses\")).where(__.loops().is(0))).times(1)).times(2).values(\"name\")",
 +                "anonymized": "g.V(vid1).repeat(__.repeat(__.union(__.out(string0), __.out(string1)).where(__.loops().is(number0))).times(number1)).times(number2).values(string2)",
 +                "dotnet": "g.V(vid1).Repeat(__.Repeat(__.Union<object>(__.Out(\"uses\"), __.Out(\"traverses\")).Where(__.Loops().Is(0))).Times(1)).Times(2).Values<object>(\"name\")",
 +                "go": "g.V(vid1).Repeat(gremlingo.T__.Repeat(gremlingo.T__.Union(gremlingo.T__.Out(\"uses\"), gremlingo.T__.Out(\"traverses\")).Where(gremlingo.T__.Loops().Is(0))).Times(1)).Times(2).Values(\"name\")",
 +                "groovy": "g.V(vid1).repeat(__.repeat(__.union(__.out(\"uses\"), __.out(\"traverses\")).where(__.loops().is(0))).times(1)).times(2).values(\"name\")",
 +                "java": "g.V(vid1).repeat(__.repeat(__.union(__.out(\"uses\"), __.out(\"traverses\")).where(__.loops().is(0))).times(1)).times(2).values(\"name\")",
 +                "javascript": "g.V(vid1).repeat(__.repeat(__.union(__.out(\"uses\"), __.out(\"traverses\")).where(__.loops().is(0))).times(1)).times(2).values(\"name\")",
 +                "python": "g.V(vid1).repeat(__.repeat(__.union(__.out('uses'), __.out('traverses')).where(__.loops().is_(0))).times(1)).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXa_outXknows_repeatXb_outXcreatedX_filterXloops_isX0XX_emit_lang",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(\"a\", __.out(\"knows\").repeat(\"b\", __.out(\"created\").filter(__.loops(\"a\").is(0))).emit()).emit().values(\"lang\")",
 +                "language": "g.V().repeat(\"a\", __.out(\"knows\").repeat(\"b\", __.out(\"created\").filter(__.loops(\"a\").is(0))).emit()).emit().values(\"lang\")",
 +                "canonical": "g.V().repeat(\"a\", __.out(\"knows\").repeat(\"b\", __.out(\"created\").filter(__.loops(\"a\").is(0))).emit()).emit().values(\"lang\")",
 +                "anonymized": "g.V().repeat(string0, __.out(string1).repeat(string2, __.out(string3).filter(__.loops(string0).is(number0))).emit()).emit().values(string4)",
 +                "dotnet": "g.V().Repeat(\"a\", __.Out(\"knows\").Repeat(\"b\", __.Out(\"created\").Filter(__.Loops(\"a\").Is(0))).Emit()).Emit().Values<object>(\"lang\")",
 +                "go": "g.V().Repeat(\"a\", gremlingo.T__.Out(\"knows\").Repeat(\"b\", gremlingo.T__.Out(\"created\").Filter(gremlingo.T__.Loops(\"a\").Is(0))).Emit()).Emit().Values(\"lang\")",
 +                "groovy": "g.V().repeat(\"a\", __.out(\"knows\").repeat(\"b\", __.out(\"created\").filter(__.loops(\"a\").is(0))).emit()).emit().values(\"lang\")",
 +                "java": "g.V().repeat(\"a\", __.out(\"knows\").repeat(\"b\", __.out(\"created\").filter(__.loops(\"a\").is(0))).emit()).emit().values(\"lang\")",
 +                "javascript": "g.V().repeat(\"a\", __.out(\"knows\").repeat(\"b\", __.out(\"created\").filter(__.loops(\"a\").is(0))).emit()).emit().values(\"lang\")",
 +                "python": "g.V().repeat('a', __.out('knows').repeat('b', __.out('created').filter_(__.loops('a').is_(0))).emit()).emit().values('lang')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX6X_repeatXa_bothXcreatedX_simplePathX_emitXrepeatXb_bothXknowsXX_untilXloopsXbX_asXb_whereXloopsXaX_asXbX_hasXname_vadasXX_dedup_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid6).repeat(\"a\", __.both(\"created\").simplePath()).emit(__.repeat(\"b\", __.both(\"knows\")).until(__.loops(\"b\").as(\"b\").where(__.loops(\"a\").as(\"b\"))).has(\"name\", \"vadas\")).dedup().values(\"name\")",
 +                "language": "g.V(vid6).repeat(\"a\", __.both(\"created\").simplePath()).emit(__.repeat(\"b\", __.both(\"knows\")).until(__.loops(\"b\").as(\"b\").where(__.loops(\"a\").as(\"b\"))).has(\"name\", \"vadas\")).dedup().values(\"name\")",
 +                "canonical": "g.V(vid6).repeat(\"a\", __.both(\"created\").simplePath()).emit(__.repeat(\"b\", __.both(\"knows\")).until(__.loops(\"b\").as(\"b\").where(__.loops(\"a\").as(\"b\"))).has(\"name\", \"vadas\")).dedup().values(\"name\")",
 +                "anonymized": "g.V(vid6).repeat(string0, __.both(string1).simplePath()).emit(__.repeat(string2, __.both(string3)).until(__.loops(string2).as(string2).where(__.loops(string0).as(string2))).has(string4, string5)).dedup().values(string4)",
 +                "dotnet": "g.V(vid6).Repeat(\"a\", __.Both(\"created\").SimplePath()).Emit(__.Repeat(\"b\", __.Both(\"knows\")).Until(__.Loops(\"b\").As(\"b\").Where(__.Loops(\"a\").As(\"b\"))).Has(\"name\", \"vadas\")).Dedup().Values<object>(\"name\")",
 +                "go": "g.V(vid6).Repeat(\"a\", gremlingo.T__.Both(\"created\").SimplePath()).Emit(gremlingo.T__.Repeat(\"b\", gremlingo.T__.Both(\"knows\")).Until(gremlingo.T__.Loops(\"b\").As(\"b\").Where(gremlingo.T__.Loops(\"a\").As(\"b\"))).Has(\"name\", \"vadas\")).Dedup().Values(\"name\")",
 +                "groovy": "g.V(vid6).repeat(\"a\", __.both(\"created\").simplePath()).emit(__.repeat(\"b\", __.both(\"knows\")).until(__.loops(\"b\").as(\"b\").where(__.loops(\"a\").as(\"b\"))).has(\"name\", \"vadas\")).dedup().values(\"name\")",
 +                "java": "g.V(vid6).repeat(\"a\", __.both(\"created\").simplePath()).emit(__.repeat(\"b\", __.both(\"knows\")).until(__.loops(\"b\").as(\"b\").where(__.loops(\"a\").as(\"b\"))).has(\"name\", \"vadas\")).dedup().values(\"name\")",
 +                "javascript": "g.V(vid6).repeat(\"a\", __.both(\"created\").simplePath()).emit(__.repeat(\"b\", __.both(\"knows\")).until(__.loops(\"b\").as(\"b\").where(__.loops(\"a\").as(\"b\"))).has(\"name\", \"vadas\")).dedup().values(\"name\")",
 +                "python": "g.V(vid6).repeat('a', __.both('created').simple_path()).emit(__.repeat('b', __.both('knows')).until(__.loops('b').as_('b').where(__.loops('a').as_('b'))).has('name', 'vadas')).dedup().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit()",
 +                "language": "g.V().emit()",
 +                "canonical": "g.V().emit()",
 +                "anonymized": "g.V().emit()",
 +                "dotnet": "g.V().Emit()",
 +                "go": "g.V().Emit()",
 +                "groovy": "g.V().emit()",
 +                "java": "g.V().emit()",
 +                "javascript": "g.V().emit()",
 +                "python": "g.V().emit()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_untilXidentityX",
 +        "traversals": [
 +            {
 +                "original": "g.V().until(__.identity())",
 +                "language": "g.V().until(__.identity())",
 +                "canonical": "g.V().until(__.identity())",
 +                "anonymized": "g.V().until(__.identity())",
 +                "dotnet": "g.V().Until(__.Identity())",
 +                "go": "g.V().Until(gremlingo.T__.Identity())",
 +                "groovy": "g.V().until(__.identity())",
 +                "java": "g.V().until(__.identity())",
 +                "javascript": "g.V().until(__.identity())",
 +                "python": "g.V().until(__.identity())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_timesX5X",
 +        "traversals": [
 +            {
 +                "original": "g.V().times(5)",
 +                "language": "g.V().times(5)",
 +                "canonical": "g.V().times(5)",
 +                "anonymized": "g.V().times(number0)",
 +                "dotnet": "g.V().Times(5)",
 +                "go": "g.V().Times(5)",
 +                "groovy": "g.V().times(5)",
 +                "java": "g.V().times(5)",
 +                "javascript": "g.V().times(5)",
 +                "python": "g.V().times(5)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_name_markoX_repeatXoutXcreatedXX_timesX1X_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\",\"name\",\"marko\").repeat(__.out(\"created\")).times(1).values(\"name\")",
 +                "language": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(1).values(\"name\")",
 +                "canonical": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(1).values(\"name\")",
 +                "anonymized": "g.V().has(string0, string1, string2).repeat(__.out(string3)).times(number0).values(string1)",
 +                "dotnet": "g.V().Has(\"person\", \"name\", \"marko\").Repeat(__.Out(\"created\")).Times(1).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"person\", \"name\", \"marko\").Repeat(gremlingo.T__.Out(\"created\")).Times(1).Values(\"name\")",
 +                "groovy": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(1).values(\"name\")",
 +                "java": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(1).values(\"name\")",
 +                "javascript": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(1).values(\"name\")",
 +                "python": "g.V().has('person', 'name', 'marko').repeat(__.out('created')).times(1).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_name_markoX_repeatXoutXcreatedXX_timesX0X_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\",\"name\",\"marko\").repeat(out(\"created\")).times(0).values(\"name\")",
 +                "language": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(0).values(\"name\")",
 +                "canonical": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(0).values(\"name\")",
 +                "anonymized": "g.V().has(string0, string1, string2).repeat(__.out(string3)).times(number0).values(string1)",
 +                "dotnet": "g.V().Has(\"person\", \"name\", \"marko\").Repeat(__.Out(\"created\")).Times(0).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"person\", \"name\", \"marko\").Repeat(gremlingo.T__.Out(\"created\")).Times(0).Values(\"name\")",
 +                "groovy": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(0).values(\"name\")",
 +                "java": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(0).values(\"name\")",
 +                "javascript": "g.V().has(\"person\", \"name\", \"marko\").repeat(__.out(\"created\")).times(0).values(\"name\")",
 +                "python": "g.V().has('person', 'name', 'marko').repeat(__.out('created')).times(0).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_name_markoX_timesX1X_repeatXoutXcreatedXX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\",\"name\",\"marko\").times(1).repeat(out(\"created\")).values(\"name\")",
 +                "language": "g.V().has(\"person\", \"name\", \"marko\").times(1).repeat(__.out(\"created\")).values(\"name\")",
 +                "canonical": "g.V().has(\"person\", \"name\", \"marko\").times(1).repeat(__.out(\"created\")).values(\"name\")",
 +                "anonymized": "g.V().has(string0, string1, string2).times(number0).repeat(__.out(string3)).values(string1)",
 +                "dotnet": "g.V().Has(\"person\", \"name\", \"marko\").Times(1).Repeat(__.Out(\"created\")).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"person\", \"name\", \"marko\").Times(1).Repeat(gremlingo.T__.Out(\"created\")).Values(\"name\")",
 +                "groovy": "g.V().has(\"person\", \"name\", \"marko\").times(1).repeat(__.out(\"created\")).values(\"name\")",
 +                "java": "g.V().has(\"person\", \"name\", \"marko\").times(1).repeat(__.out(\"created\")).values(\"name\")",
 +                "javascript": "g.V().has(\"person\", \"name\", \"marko\").times(1).repeat(__.out(\"created\")).values(\"name\")",
 +                "python": "g.V().has('person', 'name', 'marko').times(1).repeat(__.out('created')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_name_markoX_timesX0X_repeatXoutXcreatedXX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\",\"name\",\"marko\").times(0).repeat(out(\"created\")).values(\"name\")",
 +                "language": "g.V().has(\"person\", \"name\", \"marko\").times(0).repeat(__.out(\"created\")).values(\"name\")",
 +                "canonical": "g.V().has(\"person\", \"name\", \"marko\").times(0).repeat(__.out(\"created\")).values(\"name\")",
 +                "anonymized": "g.V().has(string0, string1, string2).times(number0).repeat(__.out(string3)).values(string1)",
 +                "dotnet": "g.V().Has(\"person\", \"name\", \"marko\").Times(0).Repeat(__.Out(\"created\")).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"person\", \"name\", \"marko\").Times(0).Repeat(gremlingo.T__.Out(\"created\")).Values(\"name\")",
 +                "groovy": "g.V().has(\"person\", \"name\", \"marko\").times(0).repeat(__.out(\"created\")).values(\"name\")",
 +                "java": "g.V().has(\"person\", \"name\", \"marko\").times(0).repeat(__.out(\"created\")).values(\"name\")",
 +                "javascript": "g.V().has(\"person\", \"name\", \"marko\").times(0).repeat(__.out(\"created\")).values(\"name\")",
 +                "python": "g.V().has('person', 'name', 'marko').times(0).repeat(__.out('created')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXboth_hasXnot_productiveXX_timesX3X_constantX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.both().has(\"not\", \"productive\")).times(3).constant(1)",
 +                "language": "g.V().repeat(__.both().has(\"not\", \"productive\")).times(3).constant(1)",
 +                "canonical": "g.V().repeat(__.both().has(\"not\", \"productive\")).times(3).constant(1)",
 +                "anonymized": "g.V().repeat(__.both().has(string0, string1)).times(number0).constant(number1)",
 +                "dotnet": "g.V().Repeat(__.Both().Has(\"not\", \"productive\")).Times(3).Constant<object>(1)",
 +                "go": "g.V().Repeat(gremlingo.T__.Both().Has(\"not\", \"productive\")).Times(3).Constant(1)",
 +                "groovy": "g.V().repeat(__.both().has(\"not\", \"productive\")).times(3).constant(1)",
 +                "java": "g.V().repeat(__.both().has(\"not\", \"productive\")).times(3).constant(1)",
 +                "javascript": "g.V().repeat(__.both().has(\"not\", \"productive\")).times(3).constant(1)",
 +                "python": "g.V().repeat(__.both().has('not', 'productive')).times(3).constant(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXnot_productiveX_repeatXbothX_timesX3X_constantX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"not\", \"productive\").repeat(__.both()).times(3).constant(1)",
 +                "language": "g.V().has(\"not\", \"productive\").repeat(__.both()).times(3).constant(1)",
 +                "canonical": "g.V().has(\"not\", \"productive\").repeat(__.both()).times(3).constant(1)",
 +                "anonymized": "g.V().has(string0, string1).repeat(__.both()).times(number0).constant(number1)",
 +                "dotnet": "g.V().Has(\"not\", \"productive\").Repeat(__.Both()).Times(3).Constant<object>(1)",
 +                "go": "g.V().Has(\"not\", \"productive\").Repeat(gremlingo.T__.Both()).Times(3).Constant(1)",
 +                "groovy": "g.V().has(\"not\", \"productive\").repeat(__.both()).times(3).constant(1)",
 +                "java": "g.V().has(\"not\", \"productive\").repeat(__.both()).times(3).constant(1)",
 +                "javascript": "g.V().has(\"not\", \"productive\").repeat(__.both()).times(3).constant(1)",
 +                "python": "g.V().has('not', 'productive').repeat(__.both()).times(3).constant(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1_2_3X_repeatXboth_barrierX_emit_timesX2X_path",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(2).path()",
 +                "language": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(2).path()",
 +                "canonical": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(2).path()",
 +                "anonymized": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(number0).path()",
 +                "dotnet": "g.V(vid1, vid2, vid3).Repeat(__.Both().Barrier()).Emit().Times(2).Path()",
 +                "go": "g.V(vid1, vid2, vid3).Repeat(gremlingo.T__.Both().Barrier()).Emit().Times(2).Path()",
 +                "groovy": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(2).path()",
 +                "java": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(2).path()",
 +                "javascript": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(2).path()",
 +                "python": "g.V(vid1, vid2, vid3).repeat(__.both().barrier()).emit().times(2).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_order_byXname_descX_repeatXboth_simplePath_order_byXname_descXX_timesX2X_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().order().by(\"name\", Order.desc).repeat(__.both().simplePath().order().by(\"name\", Order.desc)).times(2).path()",
 +                "language": "g.V().order().by(\"name\", Order.desc).repeat(__.both().simplePath().order().by(\"name\", Order.desc)).times(2).path()",
 +                "canonical": "g.V().order().by(\"name\", Order.desc).repeat(__.both().simplePath().order().by(\"name\", Order.desc)).times(2).path()",
 +                "anonymized": "g.V().order().by(string0, Order.desc).repeat(__.both().simplePath().order().by(string0, Order.desc)).times(number0).path()",
 +                "dotnet": "g.V().Order().By(\"name\", Order.Desc).Repeat(__.Both().SimplePath().Order().By(\"name\", Order.Desc)).Times(2).Path()",
 +                "go": "g.V().Order().By(\"name\", gremlingo.Order.Desc).Repeat(gremlingo.T__.Both().SimplePath().Order().By(\"name\", gremlingo.Order.Desc)).Times(2).Path()",
 +                "groovy": "g.V().order().by(\"name\", Order.desc).repeat(__.both().simplePath().order().by(\"name\", Order.desc)).times(2).path()",
 +                "java": "g.V().order().by(\"name\", Order.desc).repeat(__.both().simplePath().order().by(\"name\", Order.desc)).times(2).path()",
 +                "javascript": "g.V().order().by(\"name\", Order.desc).repeat(__.both().simplePath().order().by(\"name\", Order.desc)).times(2).path()",
 +                "python": "g.V().order().by('name', Order.desc).repeat(__.both().simple_path().order().by('name', Order.desc)).times(2).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXboth_repeatXorder_byXnameXX_timesX1XX_timesX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.both().repeat(__.order().by(\"name\")).times(1)).times(1)",
 +                "language": "g.V().repeat(__.both().repeat(__.order().by(\"name\")).times(1)).times(1)",
 +                "canonical": "g.V().repeat(__.both().repeat(__.order().by(\"name\")).times(1)).times(1)",
 +                "anonymized": "g.V().repeat(__.both().repeat(__.order().by(string0)).times(number0)).times(number0)",
 +                "dotnet": "g.V().Repeat(__.Both().Repeat(__.Order().By(\"name\")).Times(1)).Times(1)",
 +                "go": "g.V().Repeat(gremlingo.T__.Both().Repeat(gremlingo.T__.Order().By(\"name\")).Times(1)).Times(1)",
 +                "groovy": "g.V().repeat(__.both().repeat(__.order().by(\"name\")).times(1)).times(1)",
 +                "java": "g.V().repeat(__.both().repeat(__.order().by(\"name\")).times(1)).times(1)",
 +                "javascript": "g.V().repeat(__.both().repeat(__.order().by(\"name\")).times(1)).times(1)",
 +                "python": "g.V().repeat(__.both().repeat(__.order().by('name')).times(1)).times(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_order_byXname_descX_repeatXlocalXout_order_byXnameXXX_timesX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().order().by(\"name\", Order.desc).repeat(__.local(__.out().order().by(\"name\"))).times(1)",
 +                "language": "g.V().order().by(\"name\", Order.desc).repeat(__.local(__.out().order().by(\"name\"))).times(1)",
 +                "canonical": "g.V().order().by(\"name\", Order.desc).repeat(__.local(__.out().order().by(\"name\"))).times(1)",
 +                "anonymized": "g.V().order().by(string0, Order.desc).repeat(__.local(__.out().order().by(string0))).times(number0)",
 +                "dotnet": "g.V().Order().By(\"name\", Order.Desc).Repeat(__.Local<object>(__.Out().Order().By(\"name\"))).Times(1)",
 +                "go": "g.V().Order().By(\"name\", gremlingo.Order.Desc).Repeat(gremlingo.T__.Local(gremlingo.T__.Out().Order().By(\"name\"))).Times(1)",
 +                "groovy": "g.V().order().by(\"name\", Order.desc).repeat(__.local(__.out().order().by(\"name\"))).times(1)",
 +                "java": "g.V().order().by(\"name\", Order.desc).repeat(__.local(__.out().order().by(\"name\"))).times(1)",
 +                "javascript": "g.V().order().by(\"name\", Order.desc).repeat(__.local(__.out().order().by(\"name\"))).times(1)",
 +                "python": "g.V().order().by('name', Order.desc).repeat(__.local(__.out().order().by('name'))).times(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_order_byXnameX_repeatXlocalXboth_simplePath_order_byXnameXXX_timesX2X_path",
 +        "traversals": [
 +            {
 +                "original": "g.V().order().by(\"name\").repeat(__.local(__.both().simplePath().order().by(\"name\"))).times(2).path()",
 +                "language": "g.V().order().by(\"name\").repeat(__.local(__.both().simplePath().order().by(\"name\"))).times(2).path()",
 +                "canonical": "g.V().order().by(\"name\").repeat(__.local(__.both().simplePath().order().by(\"name\"))).times(2).path()",
 +                "anonymized": "g.V().order().by(string0).repeat(__.local(__.both().simplePath().order().by(string0))).times(number0).path()",
 +                "dotnet": "g.V().Order().By(\"name\").Repeat(__.Local<object>(__.Both().SimplePath().Order().By(\"name\"))).Times(2).Path()",
 +                "go": "g.V().Order().By(\"name\").Repeat(gremlingo.T__.Local(gremlingo.T__.Both().SimplePath().Order().By(\"name\"))).Times(2).Path()",
 +                "groovy": "g.V().order().by(\"name\").repeat(__.local(__.both().simplePath().order().by(\"name\"))).times(2).path()",
 +                "java": "g.V().order().by(\"name\").repeat(__.local(__.both().simplePath().order().by(\"name\"))).times(2).path()",
 +                "javascript": "g.V().order().by(\"name\").repeat(__.local(__.both().simplePath().order().by(\"name\"))).times(2).path()",
 +                "python": "g.V().order().by('name').repeat(__.local(__.both().simple_path().order().by('name'))).times(2).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXunionXoutXknowsX_order_byXnameX_inXcreatedX_order_byXnameXXX_timesX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.union(__.out(\"knows\").order().by(\"name\"), __.in(\"created\").order().by(\"name\"))).times(1)",
 +                "language": "g.V().repeat(__.union(__.out(\"knows\").order().by(\"name\"), __.in(\"created\").order().by(\"name\"))).times(1)",
 +                "canonical": "g.V().repeat(__.union(__.out(\"knows\").order().by(\"name\"), __.in(\"created\").order().by(\"name\"))).times(1)",
 +                "anonymized": "g.V().repeat(__.union(__.out(string0).order().by(string1), __.in(string2).order().by(string1))).times(number0)",
 +                "dotnet": "g.V().Repeat(__.Union<object>(__.Out(\"knows\").Order().By(\"name\"), __.In(\"created\").Order().By(\"name\"))).Times(1)",
 +                "go": "g.V().Repeat(gremlingo.T__.Union(gremlingo.T__.Out(\"knows\").Order().By(\"name\"), gremlingo.T__.In(\"created\").Order().By(\"name\"))).Times(1)",
 +                "groovy": "g.V().repeat(__.union(__.out(\"knows\").order().by(\"name\"), __.in(\"created\").order().by(\"name\"))).times(1)",
 +                "java": "g.V().repeat(__.union(__.out(\"knows\").order().by(\"name\"), __.in(\"created\").order().by(\"name\"))).times(1)",
 +                "javascript": "g.V().repeat(__.union(__.out(\"knows\").order().by(\"name\"), __.in_(\"created\").order().by(\"name\"))).times(1)",
 +                "python": "g.V().repeat(__.union(__.out('knows').order().by('name'), __.in_('created').order().by('name'))).times(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXaddV_propertyXgenerated_trueXX_timesX2X",
 +        "traversals": [
 +            {
 +                "original": "g.addV().property(\"notGenerated\", \"true\").addV().property(\"notGenerated\", \"true\")",
 +                "language": "g.addV().property(\"notGenerated\", \"true\").addV().property(\"notGenerated\", \"true\")",
 +                "canonical": "g.addV().property(\"notGenerated\", \"true\").addV().property(\"notGenerated\", \"true\")",
 +                "anonymized": "g.addV().property(string0, string1).addV().property(string0, string1)",
 +                "dotnet": "g.AddV().Property(\"notGenerated\", \"true\").AddV().Property(\"notGenerated\", \"true\")",
 +                "go": "g.AddV().Property(\"notGenerated\", \"true\").AddV().Property(\"notGenerated\", \"true\")",
 +                "groovy": "g.addV().property(\"notGenerated\", \"true\").addV().property(\"notGenerated\", \"true\")",
 +                "java": "g.addV().property(\"notGenerated\", \"true\").addV().property(\"notGenerated\", \"true\")",
 +                "javascript": "g.addV().property(\"notGenerated\", \"true\").addV().property(\"notGenerated\", \"true\")",
 +                "python": "g.add_v().property('notGenerated', 'true').add_v().property('notGenerated', 'true')"
 +            },
 +            {
 +                "original": "g.V().repeat(__.addV().property(\"generated\", \"true\")).times(2)",
 +                "language": "g.V().repeat(__.addV().property(\"generated\", \"true\")).times(2)",
 +                "canonical": "g.V().repeat(__.addV().property(\"generated\", \"true\")).times(2)",
 +                "anonymized": "g.V().repeat(__.addV().property(string0, string1)).times(number0)",
 +                "dotnet": "g.V().Repeat(__.AddV().Property(\"generated\", \"true\")).Times(2)",
 +                "go": "g.V().Repeat(gremlingo.T__.AddV().Property(\"generated\", \"true\")).Times(2)",
 +                "groovy": "g.V().repeat(__.addV().property(\"generated\", \"true\")).times(2)",
 +                "java": "g.V().repeat(__.addV().property(\"generated\", \"true\")).times(2)",
 +                "javascript": "g.V().repeat(__.addV().property(\"generated\", \"true\")).times(2)",
 +                "python": "g.V().repeat(__.add_v().property('generated', 'true')).times(2)"
 +            },
 +            {
 +                "original": "g.V().has(\"notGenerated\")",
 +                "language": "g.V().has(\"notGenerated\")",
 +                "canonical": "g.V().has(\"notGenerated\")",
 +                "anonymized": "g.V().has(string0)",
 +                "dotnet": "g.V().Has(\"notGenerated\")",
 +                "go": "g.V().Has(\"notGenerated\")",
 +                "groovy": "g.V().has(\"notGenerated\")",
 +                "java": "g.V().has(\"notGenerated\")",
 +                "javascript": "g.V().has(\"notGenerated\")",
 +                "python": "g.V().has('notGenerated')"
 +            },
 +            {
 +                "original": "g.V().has(\"generated\")",
 +                "language": "g.V().has(\"generated\")",
 +                "canonical": "g.V().has(\"generated\")",
 +                "anonymized": "g.V().has(string0)",
 +                "dotnet": "g.V().Has(\"generated\")",
 +                "go": "g.V().Has(\"generated\")",
 +                "groovy": "g.V().has(\"generated\")",
 +                "java": "g.V().has(\"generated\")",
 +                "javascript": "g.V().has(\"generated\")",
 +                "python": "g.V().has('generated')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXdedup_bothX_timesX2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.dedup().both()).times(2)",
 +                "language": "g.V().repeat(__.dedup().both()).times(2)",
 +                "canonical": "g.V().repeat(__.dedup().both()).times(2)",
 +                "anonymized": "g.V().repeat(__.dedup().both()).times(number0)",
 +                "dotnet": "g.V().Repeat(__.Dedup().Both()).Times(2)",
 +                "go": "g.V().Repeat(gremlingo.T__.Dedup().Both()).Times(2)",
 +                "groovy": "g.V().repeat(__.dedup().both()).times(2)",
 +                "java": "g.V().repeat(__.dedup().both()).times(2)",
 +                "javascript": "g.V().repeat(__.dedup().both()).times(2)",
 +                "python": "g.V().repeat(__.dedup().both()).times(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXaggregateXxXX_timesX2X_selectXxX_limitX1X_unfold",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.aggregate(\"x\")).times(2).select(\"x\").limit(1).unfold()",
 +                "language": "g.V().repeat(__.aggregate(\"x\")).times(2).select(\"x\").limit(1).unfold()",
 +                "canonical": "g.V().repeat(__.aggregate(\"x\")).times(2).select(\"x\").limit(1).unfold()",
 +                "anonymized": "g.V().repeat(__.aggregate(string0)).times(number0).select(string0).limit(number1).unfold()",
 +                "dotnet": "g.V().Repeat(__.Aggregate(\"x\")).Times(2).Select<object>(\"x\").Limit<object>(1).Unfold<object>()",
 +                "go": "g.V().Repeat(gremlingo.T__.Aggregate(\"x\")).Times(2).Select(\"x\").Limit(1).Unfold()",
 +                "groovy": "g.V().repeat(__.aggregate(\"x\")).times(2).select(\"x\").limit(1).unfold()",
 +                "java": "g.V().repeat(__.aggregate(\"x\")).times(2).select(\"x\").limit(1).unfold()",
 +                "javascript": "g.V().repeat(__.aggregate(\"x\")).times(2).select(\"x\").limit(1).unfold()",
 +                "python": "g.V().repeat(__.aggregate('x')).times(2).select('x').limit(1).unfold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXstrX_repeatXsplitXabcX_conjoinX_timesX2X",
 +        "traversals": [
 +            {
 +                "original": "g.addV().property(\"str\", \"ababcczababcc\").addV().property(\"str\", \"abcyabc\")",
 +                "language": "g.addV().property(\"str\", \"ababcczababcc\").addV().property(\"str\", \"abcyabc\")",
 +                "canonical": "g.addV().property(\"str\", \"ababcczababcc\").addV().property(\"str\", \"abcyabc\")",
 +                "anonymized": "g.addV().property(string0, string1).addV().property(string0, string2)",
 +                "dotnet": "g.AddV().Property(\"str\", \"ababcczababcc\").AddV().Property(\"str\", \"abcyabc\")",
 +                "go": "g.AddV().Property(\"str\", \"ababcczababcc\").AddV().Property(\"str\", \"abcyabc\")",
 +                "groovy": "g.addV().property(\"str\", \"ababcczababcc\").addV().property(\"str\", \"abcyabc\")",
 +                "java": "g.addV().property(\"str\", \"ababcczababcc\").addV().property(\"str\", \"abcyabc\")",
 +                "javascript": "g.addV().property(\"str\", \"ababcczababcc\").addV().property(\"str\", \"abcyabc\")",
 +                "python": "g.add_v().property('str', 'ababcczababcc').add_v().property('str', 'abcyabc')"
 +            },
 +            {
 +                "original": "g.V().values(\"str\").repeat(__.split(\"abc\").conjoin(\"\")).times(2)",
 +                "language": "g.V().values(\"str\").repeat(__.split(\"abc\").conjoin(\"\")).times(2)",
 +                "canonical": "g.V().values(\"str\").repeat(__.split(\"abc\").conjoin(\"\")).times(2)",
 +                "anonymized": "g.V().values(string0).repeat(__.split(string1).conjoin(string2)).times(number0)",
 +                "dotnet": "g.V().Values<object>(\"str\").Repeat(__.Split(\"abc\").Conjoin((string) \"\")).Times(2)",
 +                "go": "g.V().Values(\"str\").Repeat(gremlingo.T__.Split(\"abc\").Conjoin(\"\")).Times(2)",
 +                "groovy": "g.V().values(\"str\").repeat(__.split(\"abc\").conjoin(\"\")).times(2)",
 +                "java": "g.V().values(\"str\").repeat(__.split(\"abc\").conjoin(\"\")).times(2)",
 +                "javascript": "g.V().values(\"str\").repeat(__.split(\"abc\").conjoin(\"\")).times(2)",
 +                "python": "g.V().values('str').repeat(__.split('abc').conjoin('')).times(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_withSackX0X_V_repeatXsackXsumX_byXageX_whereXsack_isXltX59XXXX_timesX2X",
 +        "traversals": [
 +            {
 +                "original": "g.withSack(0L).V().repeat(__.sack(Operator.sum).by(\"age\").where(__.sack().is(P.lt(59)))).times(2)",
 +                "language": "g.withSack(0l).V().repeat(__.sack(Operator.sum).by(\"age\").where(__.sack().is(P.lt(59)))).times(2)",
 +                "canonical": "g.withSack(0l).V().repeat(__.sack(Operator.sum).by(\"age\").where(__.sack().is(P.lt(59)))).times(2)",
 +                "anonymized": "g.withSack(long0).V().repeat(__.sack(Operator.sum).by(string0).where(__.sack().is(P.lt(number0)))).times(number1)",
 +                "dotnet": "g.WithSack(0l).V().Repeat(__.Sack(Operator.Sum).By(\"age\").Where(__.Sack<object>().Is(P.Lt(59)))).Times(2)",
 +                "go": "g.WithSack(int64(0)).V().Repeat(gremlingo.T__.Sack(gremlingo.Operator.Sum).By(\"age\").Where(gremlingo.T__.Sack().Is(gremlingo.P.Lt(59)))).Times(2)",
 +                "groovy": "g.withSack(0l).V().repeat(__.sack(Operator.sum).by(\"age\").where(__.sack().is(P.lt(59)))).times(2)",
 +                "java": "g.withSack(0l).V().repeat(__.sack(Operator.sum).by(\"age\").where(__.sack().is(P.lt(59)))).times(2)",
 +                "javascript": "g.withSack(0).V().repeat(__.sack(Operator.sum).by(\"age\").where(__.sack().is(P.lt(59)))).times(2)",
 +                "python": "g.with_sack(long(0)).V().repeat(__.sack(Operator.sum_).by('age').where(__.sack().is_(P.lt(59)))).times(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXinjectXyXX_timesX2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(inject('y')).times(2)",
 +                "language": "g.V().repeat(__.inject('y')).times(2)",
 +                "canonical": "g.V().repeat(__.inject('y')).times(2)",
 +                "anonymized": "g.V().repeat(__.inject(string0)).times(number0)",
 +                "dotnet": "g.V().Repeat(__.Inject(\"y\")).Times(2)",
 +                "go": "g.V().Repeat(gremlingo.T__.Inject(\"y\")).Times(2)",
 +                "groovy": "g.V().repeat(__.inject('y')).times(2)",
 +                "java": "g.V().repeat(__.inject(\"y\")).times(2)",
 +                "javascript": "g.V().repeat(__.inject(\"y\")).times(2)",
 +                "python": "g.V().repeat(__.inject('y')).times(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXunionXconstantXyX_limitX1X_identityXX_timesX3X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(union(constant('y').limit(1),identity())).times(2)",
 +                "language": "g.V().repeat(__.union(__.constant('y').limit(1), __.identity())).times(2)",
 +                "canonical": "g.V().repeat(__.union(__.constant('y').limit(1), __.identity())).times(2)",
 +                "anonymized": "g.V().repeat(__.union(__.constant(string0).limit(number0), __.identity())).times(number1)",
 +                "dotnet": "g.V().Repeat(__.Union<object>(__.Constant<object>(\"y\").Limit<object>(1), __.Identity())).Times(2)",
 +                "go": "g.V().Repeat(gremlingo.T__.Union(gremlingo.T__.Constant(\"y\").Limit(1), gremlingo.T__.Identity())).Times(2)",
 +                "groovy": "g.V().repeat(__.union(__.constant('y').limit(1), __.identity())).times(2)",
 +                "java": "g.V().repeat(__.union(__.constant(\"y\").limit(1), __.identity())).times(2)",
 +                "javascript": "g.V().repeat(__.union(__.constant(\"y\").limit(1), __.identity())).times(2)",
 +                "python": "g.V().repeat(__.union(__.constant('y').limit(1), __.identity())).times(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX3X_repeatXout_order_byXperformancesX_tailX2XX_timesX1X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(1).values(\"name\")",
 +                "language": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(1).values(\"name\")",
 +                "canonical": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(1).values(\"name\")",
 +                "anonymized": "g.V(vid3).repeat(__.out().order().by(string0).tail(number0)).times(number1).values(string1)",
 +                "dotnet": "g.V(vid3).Repeat(__.Out().Order().By(\"performances\").Tail<object>(2)).Times(1).Values<object>(\"name\")",
 +                "go": "g.V(vid3).Repeat(gremlingo.T__.Out().Order().By(\"performances\").Tail(2)).Times(1).Values(\"name\")",
 +                "groovy": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(1).values(\"name\")",
 +                "java": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(1).values(\"name\")",
 +                "javascript": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(1).values(\"name\")",
 +                "python": "g.V(vid3).repeat(__.out().order().by('performances').tail(2)).times(1).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX3X_repeatXout_order_byXperformancesX_tailX2XX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(2).values(\"name\")",
 +                "language": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(2).values(\"name\")",
 +                "canonical": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(2).values(\"name\")",
 +                "anonymized": "g.V(vid3).repeat(__.out().order().by(string0).tail(number0)).times(number0).values(string1)",
 +                "dotnet": "g.V(vid3).Repeat(__.Out().Order().By(\"performances\").Tail<object>(2)).Times(2).Values<object>(\"name\")",
 +                "go": "g.V(vid3).Repeat(gremlingo.T__.Out().Order().By(\"performances\").Tail(2)).Times(2).Values(\"name\")",
 +                "groovy": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(2).values(\"name\")",
 +                "java": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(2).values(\"name\")",
 +                "javascript": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(2)).times(2).values(\"name\")",
 +                "python": "g.V(vid3).repeat(__.out().order().by('performances').tail(2)).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX2X_repeatXout_localXorder_byXperformancesX_tailX1XXX_timesX1X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid2).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(1).values(\"name\")",
 +                "language": "g.V(vid2).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(1).values(\"name\")",
 +                "canonical": "g.V(vid2).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(1).values(\"name\")",
 +                "anonymized": "g.V(vid2).repeat(__.out().local(__.order().by(string0).tail(number0))).times(number0).values(string1)",
 +                "dotnet": "g.V(vid2).Repeat(__.Out().Local<object>(__.Order().By(\"performances\").Tail<object>(1))).Times(1).Values<object>(\"name\")",
 +                "go": "g.V(vid2).Repeat(gremlingo.T__.Out().Local(gremlingo.T__.Order().By(\"performances\").Tail(1))).Times(1).Values(\"name\")",
 +                "groovy": "g.V(vid2).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(1).values(\"name\")",
 +                "java": "g.V(vid2).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(1).values(\"name\")",
 +                "javascript": "g.V(vid2).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(1).values(\"name\")",
 +                "python": "g.V(vid2).repeat(__.out().local(__.order().by('performances').tail(1))).times(1).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX250X_repeatXout_localXorder_byXperformancesX_tailX1XXX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid250).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(2).values(\"name\")",
 +                "language": "g.V(vid250).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(2).values(\"name\")",
 +                "canonical": "g.V(vid250).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(2).values(\"name\")",
 +                "anonymized": "g.V(vid250).repeat(__.out().local(__.order().by(string0).tail(number0))).times(number1).values(string1)",
 +                "dotnet": "g.V(vid250).Repeat(__.Out().Local<object>(__.Order().By(\"performances\").Tail<object>(1))).Times(2).Values<object>(\"name\")",
 +                "go": "g.V(vid250).Repeat(gremlingo.T__.Out().Local(gremlingo.T__.Order().By(\"performances\").Tail(1))).Times(2).Values(\"name\")",
 +                "groovy": "g.V(vid250).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(2).values(\"name\")",
 +                "java": "g.V(vid250).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(2).values(\"name\")",
 +                "javascript": "g.V(vid250).repeat(__.out().local(__.order().by(\"performances\").tail(1))).times(2).values(\"name\")",
 +                "python": "g.V(vid250).repeat(__.out().local(__.order().by('performances').tail(1))).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX3X_repeatXout_order_byXperformancesX_tailX3X_limitX1XX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(3).limit(1)).times(2).values(\"name\")",
 +                "language": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(3).limit(1)).times(2).values(\"name\")",
 +                "canonical": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(3).limit(1)).times(2).values(\"name\")",
 +                "anonymized": "g.V(vid3).repeat(__.out().order().by(string0).tail(number0).limit(number1)).times(number2).values(string1)",
 +                "dotnet": "g.V(vid3).Repeat(__.Out().Order().By(\"performances\").Tail<object>(3).Limit<object>(1)).Times(2).Values<object>(\"name\")",
 +                "go": "g.V(vid3).Repeat(gremlingo.T__.Out().Order().By(\"performances\").Tail(3).Limit(1)).Times(2).Values(\"name\")",
 +                "groovy": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(3).limit(1)).times(2).values(\"name\")",
 +                "java": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(3).limit(1)).times(2).values(\"name\")",
 +                "javascript": "g.V(vid3).repeat(__.out().order().by(\"performances\").tail(3).limit(1)).times(2).values(\"name\")",
 +                "python": "g.V(vid3).repeat(__.out().order().by('performances').tail(3).limit(1)).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX3X_repeatXout_order_byXperformances_descX_limitX5X_tailX1XX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid3).repeat(__.out().order().by(\"performances\", Order.desc).limit(5).tail(1)).times(2).values(\"name\")",
 +                "language": "g.V(vid3).repeat(__.out().order().by(\"performances\", Order.desc).limit(5).tail(1)).times(2).values(\"name\")",
 +                "canonical": "g.V(vid3).repeat(__.out().order().by(\"performances\", Order.desc).limit(5).tail(1)).times(2).values(\"name\")",
 +                "anonymized": "g.V(vid3).repeat(__.out().order().by(string0, Order.desc).limit(number0).tail(number1)).times(number2).values(string1)",
 +                "dotnet": "g.V(vid3).Repeat(__.Out().Order().By(\"performances\", Order.Desc).Limit<object>(5).Tail<object>(1)).Times(2).Values<object>(\"name\")",
 +                "go": "g.V(vid3).Repeat(gremlingo.T__.Out().Order().By(\"performances\", gremlingo.Order.Desc).Limit(5).Tail(1)).Times(2).Values(\"name\")",
 +                "groovy": "g.V(vid3).repeat(__.out().order().by(\"performances\", Order.desc).limit(5).tail(1)).times(2).values(\"name\")",
 +                "java": "g.V(vid3).repeat(__.out().order().by(\"performances\", Order.desc).limit(5).tail(1)).times(2).values(\"name\")",
 +                "javascript": "g.V(vid3).repeat(__.out().order().by(\"performances\", Order.desc).limit(5).tail(1)).times(2).values(\"name\")",
 +                "python": "g.V(vid3).repeat(__.out().order().by('performances', Order.desc).limit(5).tail(1)).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX3X_repeatXoutE_order_byXweightX_tailX2X_inVX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid3).repeat(__.outE().order().by(\"weight\").tail(2).inV()).times(2).values(\"name\")",
 +                "language": "g.V(vid3).repeat(__.outE().order().by(\"weight\").tail(2).inV()).times(2).values(\"name\")",
 +                "canonical": "g.V(vid3).repeat(__.outE().order().by(\"weight\").tail(2).inV()).times(2).values(\"name\")",
 +                "anonymized": "g.V(vid3).repeat(__.outE().order().by(string0).tail(number0).inV()).times(number0).values(string1)",
 +                "dotnet": "g.V(vid3).Repeat(__.OutE().Order().By(\"weight\").Tail<object>(2).InV()).Times(2).Values<object>(\"name\")",
 +                "go": "g.V(vid3).Repeat(gremlingo.T__.OutE().Order().By(\"weight\").Tail(2).InV()).Times(2).Values(\"name\")",
 +                "groovy": "g.V(vid3).repeat(__.outE().order().by(\"weight\").tail(2).inV()).times(2).values(\"name\")",
 +                "java": "g.V(vid3).repeat(__.outE().order().by(\"weight\").tail(2).inV()).times(2).values(\"name\")",
 +                "javascript": "g.V(vid3).repeat(__.outE().order().by(\"weight\").tail(2).inV()).times(2).values(\"name\")",
 +                "python": "g.V(vid3).repeat(__.out_e().order().by('weight').tail(2).in_v()).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX3X_repeatXoutE_order_byXweight_descX_limitX2X_inVX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid3).repeat(__.outE().order().by(\"weight\", Order.desc).limit(2).inV()).times(2).values(\"name\")",
 +                "language": "g.V(vid3).repeat(__.outE().order().by(\"weight\", Order.desc).limit(2).inV()).times(2).values(\"name\")",
 +                "canonical": "g.V(vid3).repeat(__.outE().order().by(\"weight\", Order.desc).limit(2).inV()).times(2).values(\"name\")",
 +                "anonymized": "g.V(vid3).repeat(__.outE().order().by(string0, Order.desc).limit(number0).inV()).times(number0).values(string1)",
 +                "dotnet": "g.V(vid3).Repeat(__.OutE().Order().By(\"weight\", Order.Desc).Limit<object>(2).InV()).Times(2).Values<object>(\"name\")",
 +                "go": "g.V(vid3).Repeat(gremlingo.T__.OutE().Order().By(\"weight\", gremlingo.Order.Desc).Limit(2).InV()).Times(2).Values(\"name\")",
 +                "groovy": "g.V(vid3).repeat(__.outE().order().by(\"weight\", Order.desc).limit(2).inV()).times(2).values(\"name\")",
 +                "java": "g.V(vid3).repeat(__.outE().order().by(\"weight\", Order.desc).limit(2).inV()).times(2).values(\"name\")",
 +                "javascript": "g.V(vid3).repeat(__.outE().order().by(\"weight\", Order.desc).limit(2).inV()).times(2).values(\"name\")",
 +                "python": "g.V(vid3).repeat(__.out_e().order().by('weight', Order.desc).limit(2).in_v()).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit_repeatXout_order_byXnameXX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "language": "g.V().emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "canonical": "g.V().emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "anonymized": "g.V().emit().repeat(__.out().order().by(string0)).times(number0).values(string0)",
 +                "dotnet": "g.V().Emit().Repeat(__.Out().Order().By(\"name\")).Times(2).Values<object>(\"name\")",
 +                "go": "g.V().Emit().Repeat(gremlingo.T__.Out().Order().By(\"name\")).Times(2).Values(\"name\")",
 +                "groovy": "g.V().emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "java": "g.V().emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "javascript": "g.V().emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "python": "g.V().emit().repeat(__.out().order().by('name')).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXemit_repeatXout_order_byXnameXX_timesX2X_valuesXnameXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\"))",
 +                "language": "g.V().local(__.emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\"))",
 +                "canonical": "g.V().local(__.emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\"))",
 +                "anonymized": "g.V().local(__.emit().repeat(__.out().order().by(string0)).times(number0).values(string0))",
 +                "dotnet": "g.V().Local<object>(__.Emit().Repeat(__.Out().Order().By(\"name\")).Times(2).Values<object>(\"name\"))",
 +                "go": "g.V().Local(gremlingo.T__.Emit().Repeat(gremlingo.T__.Out().Order().By(\"name\")).Times(2).Values(\"name\"))",
 +                "groovy": "g.V().local(__.emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\"))",
 +                "java": "g.V().local(__.emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\"))",
 +                "javascript": "g.V().local(__.emit().repeat(__.out().order().by(\"name\")).times(2).values(\"name\"))",
 +                "python": "g.V().local(__.emit().repeat(__.out().order().by('name')).times(2).values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit_repeatXlocalXout_order_byXnameXXX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\")",
 +                "language": "g.V().emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\")",
 +                "canonical": "g.V().emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\")",
 +                "anonymized": "g.V().emit().repeat(__.local(__.out().order().by(string0))).times(number0).values(string0)",
 +                "dotnet": "g.V().Emit().Repeat(__.Local<object>(__.Out().Order().By(\"name\"))).Times(2).Values<object>(\"name\")",
 +                "go": "g.V().Emit().Repeat(gremlingo.T__.Local(gremlingo.T__.Out().Order().By(\"name\"))).Times(2).Values(\"name\")",
 +                "groovy": "g.V().emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\")",
 +                "java": "g.V().emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\")",
 +                "javascript": "g.V().emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\")",
 +                "python": "g.V().emit().repeat(__.local(__.out().order().by('name'))).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXemit_repeatXlocalXout_order_byXnameXXX_timesX2X_valuesXnameXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\"))",
 +                "language": "g.V().local(__.emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\"))",
 +                "canonical": "g.V().local(__.emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\"))",
 +                "anonymized": "g.V().local(__.emit().repeat(__.local(__.out().order().by(string0))).times(number0).values(string0))",
 +                "dotnet": "g.V().Local<object>(__.Emit().Repeat(__.Local<object>(__.Out().Order().By(\"name\"))).Times(2).Values<object>(\"name\"))",
 +                "go": "g.V().Local(gremlingo.T__.Emit().Repeat(gremlingo.T__.Local(gremlingo.T__.Out().Order().By(\"name\"))).Times(2).Values(\"name\"))",
 +                "groovy": "g.V().local(__.emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\"))",
 +                "java": "g.V().local(__.emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\"))",
 +                "javascript": "g.V().local(__.emit().repeat(__.local(__.out().order().by(\"name\"))).times(2).values(\"name\"))",
 +                "python": "g.V().local(__.emit().repeat(__.local(__.out().order().by('name'))).times(2).values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emitXhasLabelXpersonXX_repeatXout_order_byXnameXX_timesX2X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit(__.hasLabel(\"person\")).repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "language": "g.V().emit(__.hasLabel(\"person\")).repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "canonical": "g.V().emit(__.hasLabel(\"person\")).repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "anonymized": "g.V().emit(__.hasLabel(string0)).repeat(__.out().order().by(string1)).times(number0).values(string1)",
 +                "dotnet": "g.V().Emit(__.HasLabel(\"person\")).Repeat(__.Out().Order().By(\"name\")).Times(2).Values<object>(\"name\")",
 +                "go": "g.V().Emit(gremlingo.T__.HasLabel(\"person\")).Repeat(gremlingo.T__.Out().Order().By(\"name\")).Times(2).Values(\"name\")",
 +                "groovy": "g.V().emit(__.hasLabel(\"person\")).repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "java": "g.V().emit(__.hasLabel(\"person\")).repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "javascript": "g.V().emit(__.hasLabel(\"person\")).repeat(__.out().order().by(\"name\")).times(2).values(\"name\")",
 +                "python": "g.V().emit(__.has_label('person')).repeat(__.out().order().by('name')).times(2).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_untilXloops_isX2XX_repeatXout_order_byXnameXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().until(__.loops().is(2)).repeat(__.out().order().by(\"name\")).values(\"name\")",
 +                "language": "g.V().until(__.loops().is(2)).repeat(__.out().order().by(\"name\")).values(\"name\")",
 +                "canonical": "g.V().until(__.loops().is(2)).repeat(__.out().order().by(\"name\")).values(\"name\")",
 +                "anonymized": "g.V().until(__.loops().is(number0)).repeat(__.out().order().by(string0)).values(string0)",
 +                "dotnet": "g.V().Until(__.Loops().Is(2)).Repeat(__.Out().Order().By(\"name\")).Values<object>(\"name\")",
 +                "go": "g.V().Until(gremlingo.T__.Loops().Is(2)).Repeat(gremlingo.T__.Out().Order().By(\"name\")).Values(\"name\")",
 +                "groovy": "g.V().until(__.loops().is(2)).repeat(__.out().order().by(\"name\")).values(\"name\")",
 +                "java": "g.V().until(__.loops().is(2)).repeat(__.out().order().by(\"name\")).values(\"name\")",
 +                "javascript": "g.V().until(__.loops().is(2)).repeat(__.out().order().by(\"name\")).values(\"name\")",
 +                "python": "g.V().until(__.loops().is_(2)).repeat(__.out().order().by('name')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit_repeatXdedupX_timesX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit().repeat(__.dedup()).times(1)",
 +                "language": "g.V().emit().repeat(__.dedup()).times(1)",
 +                "canonical": "g.V().emit().repeat(__.dedup()).times(1)",
 +                "anonymized": "g.V().emit().repeat(__.dedup()).times(number0)",
 +                "dotnet": "g.V().Emit().Repeat(__.Dedup()).Times(1)",
 +                "go": "g.V().Emit().Repeat(gremlingo.T__.Dedup()).Times(1)",
 +                "groovy": "g.V().emit().repeat(__.dedup()).times(1)",
 +                "java": "g.V().emit().repeat(__.dedup()).times(1)",
 +                "javascript": "g.V().emit().repeat(__.dedup()).times(1)",
 +                "python": "g.V().emit().repeat(__.dedup()).times(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_emit_repeatXdedupX_timesX2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().emit().repeat(__.dedup()).times(2)",
 +                "language": "g.V().emit().repeat(__.dedup()).times(2)",
 +                "canonical": "g.V().emit().repeat(__.dedup()).times(2)",
 +                "anonymized": "g.V().emit().repeat(__.dedup()).times(number0)",
 +                "dotnet": "g.V().Emit().Repeat(__.Dedup()).Times(2)",
 +                "go": "g.V().Emit().Repeat(gremlingo.T__.Dedup()).Times(2)",
 +                "groovy": "g.V().emit().repeat(__.dedup()).times(2)",
 +                "java": "g.V().emit().repeat(__.dedup()).times(2)",
 +                "javascript": "g.V().emit().repeat(__.dedup()).times(2)",
 +                "python": "g.V().emit().repeat(__.dedup()).times(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXX",
 +        "traversals": [
 +            {
 +                "original": "g.union()",
 +                "language": "g.union()",
 +                "canonical": "g.union()",
 +                "anonymized": "g.union()",
 +                "dotnet": "g.Union<object>()",
 +                "go": "g.Union()",
 +                "groovy": "g.union()",
 +                "java": "g.union()",
 +                "javascript": "g.union()",
 +                "python": "g.union()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXV_name",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.V().values(\"name\"))",
 +                "language": "g.union(__.V().values(\"name\"))",
 +                "canonical": "g.union(__.V().values(\"name\"))",
 +                "anonymized": "g.union(__.V().values(string0))",
 +                "dotnet": "g.Union<object>(__.V().Values<object>(\"name\"))",
 +                "go": "g.Union(gremlingo.T__.V().Values(\"name\"))",
 +                "groovy": "g.union(__.V().values(\"name\"))",
 +                "java": "g.union(__.V().values(\"name\"))",
 +                "javascript": "g.union(__.V().values(\"name\"))",
 +                "python": "g.union(__.V().values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXVXv1X_VX4XX_name",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.V(vid1), __.V(vid4)).values(\"name\")",
 +                "language": "g.union(__.V(vid1), __.V(vid4)).values(\"name\")",
 +                "canonical": "g.union(__.V(vid1), __.V(vid4)).values(\"name\")",
 +                "anonymized": "g.union(__.V(vid1), __.V(vid4)).values(string0)",
 +                "dotnet": "g.Union<object>(__.V(vid1), __.V(vid4)).Values<object>(\"name\")",
 +                "go": "g.Union(gremlingo.T__.V(vid1), gremlingo.T__.V(vid4)).Values(\"name\")",
 +                "groovy": "g.union(__.V(vid1), __.V(vid4)).values(\"name\")",
 +                "java": "g.union(__.V(vid1), __.V(vid4)).values(\"name\")",
 +                "javascript": "g.union(__.V(vid1), __.V(vid4)).values(\"name\")",
 +                "python": "g.union(__.V(vid1), __.V(vid4)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXV_hasLabelXsoftwareX_V_hasLabelXpersonXX_name",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.V().hasLabel(\"software\"), __.V().hasLabel(\"person\")).values(\"name\")",
 +                "language": "g.union(__.V().hasLabel(\"software\"), __.V().hasLabel(\"person\")).values(\"name\")",
 +                "canonical": "g.union(__.V().hasLabel(\"software\"), __.V().hasLabel(\"person\")).values(\"name\")",
 +                "anonymized": "g.union(__.V().hasLabel(string0), __.V().hasLabel(string1)).values(string2)",
 +                "dotnet": "g.Union<object>(__.V().HasLabel(\"software\"), __.V().HasLabel(\"person\")).Values<object>(\"name\")",
 +                "go": "g.Union(gremlingo.T__.V().HasLabel(\"software\"), gremlingo.T__.V().HasLabel(\"person\")).Values(\"name\")",
 +                "groovy": "g.union(__.V().hasLabel(\"software\"), __.V().hasLabel(\"person\")).values(\"name\")",
 +                "java": "g.union(__.V().hasLabel(\"software\"), __.V().hasLabel(\"person\")).values(\"name\")",
 +                "javascript": "g.union(__.V().hasLabel(\"software\"), __.V().hasLabel(\"person\")).values(\"name\")",
 +                "python": "g.union(__.V().has_label('software'), __.V().has_label('person')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXV_out_out_V_hasLabelXsoftwareXX_path",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path()",
 +                "language": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path()",
 +                "canonical": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path()",
 +                "anonymized": "g.union(__.V().out().out(), __.V().hasLabel(string0)).path()",
 +                "dotnet": "g.Union<object>(__.V().Out().Out(), __.V().HasLabel(\"software\")).Path()",
 +                "go": "g.Union(gremlingo.T__.V().Out().Out(), gremlingo.T__.V().HasLabel(\"software\")).Path()",
 +                "groovy": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path()",
 +                "java": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path()",
 +                "javascript": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path()",
 +                "python": "g.union(__.V().out().out(), __.V().has_label('software')).path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXV_out_out_V_hasLabelXsoftwareXX_path_byXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "language": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "canonical": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "anonymized": "g.union(__.V().out().out(), __.V().hasLabel(string0)).path().by(string1)",
 +                "dotnet": "g.Union<object>(__.V().Out().Out(), __.V().HasLabel(\"software\")).Path().By(\"name\")",
 +                "go": "g.Union(gremlingo.T__.V().Out().Out(), gremlingo.T__.V().HasLabel(\"software\")).Path().By(\"name\")",
 +                "groovy": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "java": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "javascript": "g.union(__.V().out().out(), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "python": "g.union(__.V().out().out(), __.V().has_label('software')).path().by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXunionXV_out_outX_V_hasLabelXsoftwareXX_path_byXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.union(__.V().out().out()), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "language": "g.union(__.union(__.V().out().out()), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "canonical": "g.union(__.union(__.V().out().out()), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "anonymized": "g.union(__.union(__.V().out().out()), __.V().hasLabel(string0)).path().by(string1)",
 +                "dotnet": "g.Union<object>(__.Union<object>(__.V().Out().Out()), __.V().HasLabel(\"software\")).Path().By(\"name\")",
 +                "go": "g.Union(gremlingo.T__.Union(gremlingo.T__.V().Out().Out()), gremlingo.T__.V().HasLabel(\"software\")).Path().By(\"name\")",
 +                "groovy": "g.union(__.union(__.V().out().out()), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "java": "g.union(__.union(__.V().out().out()), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "javascript": "g.union(__.union(__.V().out().out()), __.V().hasLabel(\"software\")).path().by(\"name\")",
 +                "python": "g.union(__.union(__.V().out().out()), __.V().has_label('software')).path().by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXinjectX1X_injectX2X",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.inject(1), __.inject(2))",
 +                "language": "g.union(__.inject(1), __.inject(2))",
 +                "canonical": "g.union(__.inject(1), __.inject(2))",
 +                "anonymized": "g.union(__.inject(number0), __.inject(number1))",
 +                "dotnet": "g.Union<object>(__.Inject(1), __.Inject(2))",
 +                "go": "g.Union(gremlingo.T__.Inject(1), gremlingo.T__.Inject(2))",
 +                "groovy": "g.union(__.inject(1), __.inject(2))",
 +                "java": "g.union(__.inject(1), __.inject(2))",
 +                "javascript": "g.union(__.inject(1), __.inject(2))",
 +                "python": "g.union(__.inject(1), __.inject(2))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_unionXconstantX1X_constantX2X_constantX3XX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid2).union(constant(1i), constant(2i), constant(3i))",
 +                "language": "g.V(vid2).union(__.constant(1i), __.constant(2i), __.constant(3i))",
 +                "canonical": "g.V(vid2).union(__.constant(1i), __.constant(2i), __.constant(3i))",
 +                "anonymized": "g.V(vid2).union(__.constant(integer0), __.constant(integer1), __.constant(integer2))",
 +                "dotnet": "g.V(vid2).Union<object>(__.Constant<object>(1), __.Constant<object>(2), __.Constant<object>(3))",
 +                "go": "g.V(vid2).Union(gremlingo.T__.Constant(int32(1)), gremlingo.T__.Constant(int32(2)), gremlingo.T__.Constant(int32(3)))",
 +                "groovy": "g.V(vid2).union(__.constant(1i), __.constant(2i), __.constant(3i))",
 +                "java": "g.V(vid2).union(__.constant(1), __.constant(2), __.constant(3))",
 +                "javascript": "g.V(vid2).union(__.constant(1), __.constant(2), __.constant(3))",
 +                "python": "g.V(vid2).union(__.constant(1), __.constant(2), __.constant(3))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_unionXout__inX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().union(__.out(), __.in()).values(\"name\")",
 +                "language": "g.V().union(__.out(), __.in()).values(\"name\")",
 +                "canonical": "g.V().union(__.out(), __.in()).values(\"name\")",
 +                "anonymized": "g.V().union(__.out(), __.in()).values(string0)",
 +                "dotnet": "g.V().Union<object>(__.Out(), __.In()).Values<object>(\"name\")",
 +                "go": "g.V().Union(gremlingo.T__.Out(), gremlingo.T__.In()).Values(\"name\")",
 +                "groovy": "g.V().union(__.out(), __.in()).values(\"name\")",
 +                "java": "g.V().union(__.out(), __.in()).values(\"name\")",
 +                "javascript": "g.V().union(__.out(), __.in_()).values(\"name\")",
 +                "python": "g.V().union(__.out(), __.in_()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_unionXrepeatXoutX_timesX2X__outX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).union(__.repeat(__.out()).times(2), __.out()).values(\"name\")",
 +                "language": "g.V(vid1).union(__.repeat(__.out()).times(2), __.out()).values(\"name\")",
 +                "canonical": "g.V(vid1).union(__.repeat(__.out()).times(2), __.out()).values(\"name\")",
 +                "anonymized": "g.V(vid1).union(__.repeat(__.out()).times(number0), __.out()).values(string0)",
 +                "dotnet": "g.V(vid1).Union<object>(__.Repeat(__.Out()).Times(2), __.Out()).Values<object>(\"name\")",
 +                "go": "g.V(vid1).Union(gremlingo.T__.Repeat(gremlingo.T__.Out()).Times(2), gremlingo.T__.Out()).Values(\"name\")",
 +                "groovy": "g.V(vid1).union(__.repeat(__.out()).times(2), __.out()).values(\"name\")",
 +                "java": "g.V(vid1).union(__.repeat(__.out()).times(2), __.out()).values(\"name\")",
 +                "javascript": "g.V(vid1).union(__.repeat(__.out()).times(2), __.out()).values(\"name\")",
 +                "python": "g.V(vid1).union(__.repeat(__.out()).times(2), __.out()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXlabel_is_person__unionX__out_lang__out_nameX__in_labelX",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label())",
 +                "language": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label())",
 +                "canonical": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label())",
 +                "anonymized": "g.V().choose(__.label().is(string0), __.union(__.out().values(string1), __.out().values(string2)), __.in().label())",
 +                "dotnet": "g.V().Choose<object>(__.Label().Is(\"person\"), __.Union<object>(__.Out().Values<object>(\"lang\"), __.Out().Values<object>(\"name\")), __.In().Label())",
 +                "go": "g.V().Choose(gremlingo.T__.Label().Is(\"person\"), gremlingo.T__.Union(gremlingo.T__.Out().Values(\"lang\"), gremlingo.T__.Out().Values(\"name\")), gremlingo.T__.In().Label())",
 +                "groovy": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label())",
 +                "java": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label())",
 +                "javascript": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in_().label())",
 +                "python": "g.V().choose(__.label().is_('person'), __.union(__.out().values('lang'), __.out().values('name')), __.in_().label())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_chooseXlabel_is_person__unionX__out_lang__out_nameX__in_labelX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label()).groupCount()",
 +                "language": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label()).groupCount()",
 +                "canonical": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label()).groupCount()",
 +                "anonymized": "g.V().choose(__.label().is(string0), __.union(__.out().values(string1), __.out().values(string2)), __.in().label()).groupCount()",
 +                "dotnet": "g.V().Choose<object>(__.Label().Is(\"person\"), __.Union<object>(__.Out().Values<object>(\"lang\"), __.Out().Values<object>(\"name\")), __.In().Label()).GroupCount<object>()",
 +                "go": "g.V().Choose(gremlingo.T__.Label().Is(\"person\"), gremlingo.T__.Union(gremlingo.T__.Out().Values(\"lang\"), gremlingo.T__.Out().Values(\"name\")), gremlingo.T__.In().Label()).GroupCount()",
 +                "groovy": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label()).groupCount()",
 +                "java": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in().label()).groupCount()",
 +                "javascript": "g.V().choose(__.label().is(\"person\"), __.union(__.out().values(\"lang\"), __.out().values(\"name\")), __.in_().label()).groupCount()",
 +                "python": "g.V().choose(__.label().is_('person'), __.union(__.out().values('lang'), __.out().values('name')), __.in_().label()).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_unionXrepeatXunionXoutXcreatedX__inXcreatedXX_timesX2X__repeatXunionXinXcreatedX__outXcreatedXX_timesX2XX_label_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.V().union(__.repeat(__.union(__.out(\"created\"),__.in(\"created\"))).times(2),__.repeat(__.union(__.in(\"created\"),__.out(\"created\"))).times(2)).label().groupCount()",
 +                "language": "g.V().union(__.repeat(__.union(__.out(\"created\"), __.in(\"created\"))).times(2), __.repeat(__.union(__.in(\"created\"), __.out(\"created\"))).times(2)).label().groupCount()",
 +                "canonical": "g.V().union(__.repeat(__.union(__.out(\"created\"), __.in(\"created\"))).times(2), __.repeat(__.union(__.in(\"created\"), __.out(\"created\"))).times(2)).label().groupCount()",
 +                "anonymized": "g.V().union(__.repeat(__.union(__.out(string0), __.in(string0))).times(number0), __.repeat(__.union(__.in(string0), __.out(string0))).times(number0)).label().groupCount()",
 +                "dotnet": "g.V().Union<object>(__.Repeat(__.Union<object>(__.Out(\"created\"), __.In(\"created\"))).Times(2), __.Repeat(__.Union<object>(__.In(\"created\"), __.Out(\"created\"))).Times(2)).Label().GroupCount<object>()",
 +                "go": "g.V().Union(gremlingo.T__.Repeat(gremlingo.T__.Union(gremlingo.T__.Out(\"created\"), gremlingo.T__.In(\"created\"))).Times(2), gremlingo.T__.Repeat(gremlingo.T__.Union(gremlingo.T__.In(\"created\"), gremlingo.T__.Out(\"created\"))).Times(2)).Label().GroupCount()",
 +                "groovy": "g.V().union(__.repeat(__.union(__.out(\"created\"), __.in(\"created\"))).times(2), __.repeat(__.union(__.in(\"created\"), __.out(\"created\"))).times(2)).label().groupCount()",
 +                "java": "g.V().union(__.repeat(__.union(__.out(\"created\"), __.in(\"created\"))).times(2), __.repeat(__.union(__.in(\"created\"), __.out(\"created\"))).times(2)).label().groupCount()",
 +                "javascript": "g.V().union(__.repeat(__.union(__.out(\"created\"), __.in_(\"created\"))).times(2), __.repeat(__.union(__.in_(\"created\"), __.out(\"created\"))).times(2)).label().groupCount()",
 +                "python": "g.V().union(__.repeat(__.union(__.out('created'), __.in_('created'))).times(2), __.repeat(__.union(__.in_('created'), __.out('created'))).times(2)).label().group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1_2X_unionXoutE_count__inE_count__outE_weight_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1, vid2).union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum())",
 +                "language": "g.V(vid1, vid2).union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum())",
 +                "canonical": "g.V(vid1, vid2).union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum())",
 +                "anonymized": "g.V(vid1, vid2).union(__.outE().count(), __.inE().count(), __.outE().values(string0).sum())",
 +                "dotnet": "g.V(vid1, vid2).Union<object>(__.OutE().Count(), __.InE().Count(), __.OutE().Values<object>(\"weight\").Sum<object>())",
 +                "go": "g.V(vid1, vid2).Union(gremlingo.T__.OutE().Count(), gremlingo.T__.InE().Count(), gremlingo.T__.OutE().Values(\"weight\").Sum())",
 +                "groovy": "g.V(vid1, vid2).union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum())",
 +                "java": "g.V(vid1, vid2).union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum())",
 +                "javascript": "g.V(vid1, vid2).union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum())",
 +                "python": "g.V(vid1, vid2).union(__.out_e().count(), __.in_e().count(), __.out_e().values('weight').sum_())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1_2X_localXunionXoutE_count__inE_count__outE_weight_sumXX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1, vid2).local(__.union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum()))",
 +                "language": "g.V(vid1, vid2).local(__.union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum()))",
 +                "canonical": "g.V(vid1, vid2).local(__.union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum()))",
 +                "anonymized": "g.V(vid1, vid2).local(__.union(__.outE().count(), __.inE().count(), __.outE().values(string0).sum()))",
 +                "dotnet": "g.V(vid1, vid2).Local<object>(__.Union<object>(__.OutE().Count(), __.InE().Count(), __.OutE().Values<object>(\"weight\").Sum<object>()))",
 +                "go": "g.V(vid1, vid2).Local(gremlingo.T__.Union(gremlingo.T__.OutE().Count(), gremlingo.T__.InE().Count(), gremlingo.T__.OutE().Values(\"weight\").Sum()))",
 +                "groovy": "g.V(vid1, vid2).local(__.union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum()))",
 +                "java": "g.V(vid1, vid2).local(__.union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum()))",
 +                "javascript": "g.V(vid1, vid2).local(__.union(__.outE().count(), __.inE().count(), __.outE().values(\"weight\").sum()))",
 +                "python": "g.V(vid1, vid2).local(__.union(__.out_e().count(), __.in_e().count(), __.out_e().values('weight').sum_()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1_2X_localXunionXcountXX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1, vid2).local(__.union(__.count()))",
 +                "language": "g.V(vid1, vid2).local(__.union(__.count()))",
 +                "canonical": "g.V(vid1, vid2).local(__.union(__.count()))",
 +                "anonymized": "g.V(vid1, vid2).local(__.union(__.count()))",
 +                "dotnet": "g.V(vid1, vid2).Local<object>(__.Union<object>(__.Count()))",
 +                "go": "g.V(vid1, vid2).Local(gremlingo.T__.Union(gremlingo.T__.Count()))",
 +                "groovy": "g.V(vid1, vid2).local(__.union(__.count()))",
 +                "java": "g.V(vid1, vid2).local(__.union(__.count()))",
 +                "javascript": "g.V(vid1, vid2).local(__.union(__.count()))",
 +                "python": "g.V(vid1, vid2).local(__.union(__.count()))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_unionXaddVXpersonX_propertyXname_aliceX_addVXpersonX_propertyXname_bobX_addVXpersonX_propertyXname_chrisX_name",
 +        "traversals": [
 +            {
 +                "original": "g.union(__.addV(\"person\").property(\"name\", \"alice\"),__.addV(\"person\").property(\"name\", \"bob\"),__.addV(\"person\").property(\"name\", \"chris\")).values(\"name\")",
 +                "language": "g.union(__.addV(\"person\").property(\"name\", \"alice\"), __.addV(\"person\").property(\"name\", \"bob\"), __.addV(\"person\").property(\"name\", \"chris\")).values(\"name\")",
 +                "canonical": "g.union(__.addV(\"person\").property(\"name\", \"alice\"), __.addV(\"person\").property(\"name\", \"bob\"), __.addV(\"person\").property(\"name\", \"chris\")).values(\"name\")",
 +                "anonymized": "g.union(__.addV(string0).property(string1, string2), __.addV(string0).property(string1, string3), __.addV(string0).property(string1, string4)).values(string1)",
 +                "dotnet": "g.Union<object>(__.AddV((string) \"person\").Property(\"name\", \"alice\"), __.AddV((string) \"person\").Property(\"name\", \"bob\"), __.AddV((string) \"person\").Property(\"name\", \"chris\")).Values<object>(\"name\")",
 +                "go": "g.Union(gremlingo.T__.AddV(\"person\").Property(\"name\", \"alice\"), gremlingo.T__.AddV(\"person\").Property(\"name\", \"bob\"), gremlingo.T__.AddV(\"person\").Property(\"name\", \"chris\")).Values(\"name\")",
 +                "groovy": "g.union(__.addV(\"person\").property(\"name\", \"alice\"), __.addV(\"person\").property(\"name\", \"bob\"), __.addV(\"person\").property(\"name\", \"chris\")).values(\"name\")",
 +                "java": "g.union(__.addV(\"person\").property(\"name\", \"alice\"), __.addV(\"person\").property(\"name\", \"bob\"), __.addV(\"person\").property(\"name\", \"chris\")).values(\"name\")",
 +                "javascript": "g.union(__.addV(\"person\").property(\"name\", \"alice\"), __.addV(\"person\").property(\"name\", \"bob\"), __.addV(\"person\").property(\"name\", \"chris\")).values(\"name\")",
 +                "python": "g.union(__.add_v('person').property('name', 'alice'), __.add_v('person').property('name', 'bob'), __.add_v('person').property('name', 'chris')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX_hasLabelXpersonX_unionX_whereX_out_count_isXgtX2XXX_valuesXageX_notX_whereX_bothE_count_isXgt2XXX_valusXnameXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").union(where(outE().count().is(P.gt(2))).values(\"age\"),__.not(where(outE().count().is(P.gt(2)))).values(\"name\"))",
 +                "language": "g.V().hasLabel(\"person\").union(__.where(__.outE().count().is(P.gt(2))).values(\"age\"), __.not(__.where(__.outE().count().is(P.gt(2)))).values(\"name\"))",
 +                "canonical": "g.V().hasLabel(\"person\").union(__.where(__.outE().count().is(P.gt(2))).values(\"age\"), __.not(__.where(__.outE().count().is(P.gt(2)))).values(\"name\"))",
 +                "anonymized": "g.V().hasLabel(string0).union(__.where(__.outE().count().is(P.gt(number0))).values(string1), __.not(__.where(__.outE().count().is(P.gt(number0)))).values(string2))",
 +                "dotnet": "g.V().HasLabel(\"person\").Union<object>(__.Where(__.OutE().Count().Is(P.Gt(2))).Values<object>(\"age\"), __.Not(__.Where(__.OutE().Count().Is(P.Gt(2)))).Values<object>(\"name\"))",
 +                "go": "g.V().HasLabel(\"person\").Union(gremlingo.T__.Where(gremlingo.T__.OutE().Count().Is(gremlingo.P.Gt(2))).Values(\"age\"), gremlingo.T__.Not(gremlingo.T__.Where(gremlingo.T__.OutE().Count().Is(gremlingo.P.Gt(2)))).Values(\"name\"))",
 +                "groovy": "g.V().hasLabel(\"person\").union(__.where(__.outE().count().is(P.gt(2))).values(\"age\"), __.not(__.where(__.outE().count().is(P.gt(2)))).values(\"name\"))",
 +                "java": "g.V().hasLabel(\"person\").union(__.where(__.outE().count().is(P.gt(2))).values(\"age\"), __.not(__.where(__.outE().count().is(P.gt(2)))).values(\"name\"))",
 +                "javascript": "g.V().hasLabel(\"person\").union(__.where(__.outE().count().is(P.gt(2))).values(\"age\"), __.not(__.where(__.outE().count().is(P.gt(2)))).values(\"name\"))",
 +                "python": "g.V().has_label('person').union(__.where(__.out_e().count().is_(P.gt(2))).values('age'), __.not_(__.where(__.out_e().count().is_(P.gt(2)))).values('name'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 123)",
 +                "language": "g.addV(\"data\").property(\"int\", 123)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 123)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 123)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 123)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 123)",
 +                "java": "g.addV(\"data\").property(\"int\", 123)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 123)",
 +                "python": "g.add_v('data').property('int', 123)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal))",
 +                "python": "g.V().values('int').as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX_mathXaddX0_5XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 10)",
 +                "language": "g.addV(\"data\").property(\"int\", 10)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 10)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 10)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 10)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 10)",
 +                "java": "g.addV(\"data\").property(\"int\", 10)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 10)",
 +                "python": "g.add_v('data').property('int', 10)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).math(\"_ + 0.5\")",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).math(\"_ + 0.5\")",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).math(\"_ + 0.5\")",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).math(string1)",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal)).Math(\"_ + 0.5\")",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal)).Math(\"_ + 0.5\")",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).math(\"_ + 0.5\")",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).math(\"_ + 0.5\")",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal)).math(\"_ + 0.5\")",
 +                "python": "g.V().values('int').as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL)).math('_ + 0.5')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX_isXgtX0XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 5)",
 +                "language": "g.addV(\"data\").property(\"int\", 5)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 5)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 5)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 5)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 5)",
 +                "java": "g.addV(\"data\").property(\"int\", 5)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 5)",
 +                "python": "g.add_v('data').property('int', 5)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).is(P.gt(0))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).is(P.gt(0))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).is(P.gt(0))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).is(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal)).Is(P.Gt(0))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal)).Is(gremlingo.P.Gt(0))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).is(P.gt(0))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).is(P.gt(0))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal)).is(P.gt(0))",
 +                "python": "g.V().values('int').as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL)).is_(P.gt(0))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3).addV(\"data\").property(\"int\", 4)",
 +                "language": "g.addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3).addV(\"data\").property(\"int\", 4)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3).addV(\"data\").property(\"int\", 4)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 2).AddV((string) \"data\").Property(\"int\", 3).AddV((string) \"data\").Property(\"int\", 4)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 2).AddV(\"data\").Property(\"int\", 3).AddV(\"data\").Property(\"int\", 4)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3).addV(\"data\").property(\"int\", 4)",
 +                "java": "g.addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3).addV(\"data\").property(\"int\", 4)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3).addV(\"data\").property(\"int\", 4)",
 +                "python": "g.add_v('data').property('int', 2).add_v('data').property('int', 3).add_v('data').property('int', 4)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).sum()",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).sum()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).sum()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).sum()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal)).Sum<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal)).Sum()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).sum()",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).sum()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal)).sum()",
 +                "python": "g.V().values('int').as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL)).sum_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX_minX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 10)",
 +                "language": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 10)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 10)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 1).AddV((string) \"data\").Property(\"int\", 5).AddV((string) \"data\").Property(\"int\", 10)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 1).AddV(\"data\").Property(\"int\", 5).AddV(\"data\").Property(\"int\", 10)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 10)",
 +                "java": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 10)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 10)",
 +                "python": "g.add_v('data').property('int', 1).add_v('data').property('int', 5).add_v('data').property('int', 10)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).min()",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).min()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).min()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).min()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal)).Min<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal)).Min()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).min()",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).min()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal)).min()",
 +                "python": "g.V().values('int').as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL)).min_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX_maxX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 7).addV(\"data\").property(\"int\", 14).addV(\"data\").property(\"int\", 21)",
 +                "language": "g.addV(\"data\").property(\"int\", 7).addV(\"data\").property(\"int\", 14).addV(\"data\").property(\"int\", 21)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 7).addV(\"data\").property(\"int\", 14).addV(\"data\").property(\"int\", 21)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 7).AddV((string) \"data\").Property(\"int\", 14).AddV((string) \"data\").Property(\"int\", 21)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 7).AddV(\"data\").Property(\"int\", 14).AddV(\"data\").Property(\"int\", 21)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 7).addV(\"data\").property(\"int\", 14).addV(\"data\").property(\"int\", 21)",
 +                "java": "g.addV(\"data\").property(\"int\", 7).addV(\"data\").property(\"int\", 14).addV(\"data\").property(\"int\", 21)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 7).addV(\"data\").property(\"int\", 14).addV(\"data\").property(\"int\", 21)",
 +                "python": "g.add_v('data').property('int', 7).add_v('data').property('int', 14).add_v('data').property('int', 21)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).max()",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).max()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).max()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).max()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal)).Max<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal)).Max()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).max()",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).max()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal)).max()",
 +                "python": "g.V().values('int').as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL)).max_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX_project_byXidentityX_byXmathXmulX10XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 6)",
 +                "language": "g.addV(\"data\").property(\"int\", 6)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 6)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 6)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 6)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 6)",
 +                "java": "g.addV(\"data\").property(\"int\", 6)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 6)",
 +                "python": "g.add_v('data').property('int', 6)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).project(\"original\", \"multiplied\").by(identity()).by(math(\"_ * 10\"))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).project(string1, string2).by(__.identity()).by(__.math(string3))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal)).Project<object>(\"original\", \"multiplied\").By(__.Identity()).By(__.Math(\"_ * 10\"))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal)).Project(\"original\", \"multiplied\").By(gremlingo.T__.Identity()).By(gremlingo.T__.Math(\"_ * 10\"))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "python": "g.V().values('int').as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL)).project('original', 'multiplied').by(__.identity()).by(__.math('_ * 10'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX99X_asNumberXGType_BIGDECIMALX_isXtypeOfXGType_BIGDECIMALXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject(99).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).groupCount()",
 +                "language": "g.inject(99).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).groupCount()",
 +                "canonical": "g.inject(99).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).groupCount()",
 +                "anonymized": "g.inject(number0).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).groupCount()",
 +                "dotnet": "g.Inject<object>(99).AsNumber(GType.BigDecimal).Is(P.TypeOf(GType.BigDecimal)).GroupCount<object>()",
 +                "go": "g.Inject(99).AsNumber(gremlingo.GType.BigDecimal).Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal)).GroupCount()",
 +                "groovy": "g.inject(99).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).groupCount()",
 +                "java": "g.inject(99).asNumber(GType.BIGDECIMAL).is(P.typeOf(GType.BIGDECIMAL)).groupCount()",
 +                "javascript": "g.inject(99).asNumber(GType.bigDecimal).is(P.typeOf(GType.bigDecimal)).groupCount()",
 +                "python": "g.inject(99).as_number(GType.BIGDECIMAL).is_(P.type_of(GType.BIGDECIMAL)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_BIGDECIMALXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.BIGDECIMAL))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.BIGDECIMAL))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.BIGDECIMAL))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.BIGDECIMAL))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.BigDecimal))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.BigDecimal))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.BIGDECIMAL))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.BIGDECIMAL))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.bigDecimal))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.BIGDECIMAL))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 456)",
 +                "language": "g.addV(\"data\").property(\"int\", 456)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 456)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 456)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 456)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 456)",
 +                "java": "g.addV(\"data\").property(\"int\", 456)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 456)",
 +                "python": "g.add_v('data').property('int', 456)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigInt).is(P.typeOf(GType.bigInt))",
 +                "python": "g.V().values('int').as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX_mathXmulX1000XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 100)",
 +                "language": "g.addV(\"data\").property(\"int\", 100)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 100)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 100)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 100)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 100)",
 +                "java": "g.addV(\"data\").property(\"int\", 100)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 100)",
 +                "python": "g.add_v('data').property('int', 100)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).math(\"_ * 1000\")",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).math(\"_ * 1000\")",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).math(\"_ * 1000\")",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).math(string1)",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt)).Math(\"_ * 1000\")",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt)).Math(\"_ * 1000\")",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).math(\"_ * 1000\")",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).math(\"_ * 1000\")",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigInt).is(P.typeOf(GType.bigInt)).math(\"_ * 1000\")",
 +                "python": "g.V().values('int').as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT)).math('_ * 1000')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX_isXeqX42XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 42)",
 +                "language": "g.addV(\"data\").property(\"int\", 42)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 42)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 42)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 42)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 42)",
 +                "java": "g.addV(\"data\").property(\"int\", 42)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 42)",
 +                "python": "g.add_v('data').property('int', 42)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).is(P.eq(42))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).is(P.eq(42))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).is(P.eq(42))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).is(P.eq(number0))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt)).Is(P.Eq(42))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt)).Is(gremlingo.P.Eq(42))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).is(P.eq(42))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).is(P.eq(42))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigInt).is(P.typeOf(GType.bigInt)).is(P.eq(42))",
 +                "python": "g.V().values('int').as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT)).is_(P.eq(42))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "language": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 10).AddV((string) \"data\").Property(\"int\", 20).AddV((string) \"data\").Property(\"int\", 30)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 10).AddV(\"data\").Property(\"int\", 20).AddV(\"data\").Property(\"int\", 30)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "java": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "python": "g.add_v('data').property('int', 10).add_v('data').property('int', 20).add_v('data').property('int', 30)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).sum()",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).sum()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).sum()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).sum()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt)).Sum<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt)).Sum()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).sum()",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).sum()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigInt).is(P.typeOf(GType.bigInt)).sum()",
 +                "python": "g.V().values('int').as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT)).sum_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX_minX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25)",
 +                "language": "g.addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 5).AddV((string) \"data\").Property(\"int\", 15).AddV((string) \"data\").Property(\"int\", 25)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 5).AddV(\"data\").Property(\"int\", 15).AddV(\"data\").Property(\"int\", 25)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25)",
 +                "java": "g.addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 5).addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25)",
 +                "python": "g.add_v('data').property('int', 5).add_v('data').property('int', 15).add_v('data').property('int', 25)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).min()",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).min()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).min()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).min()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt)).Min<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt)).Min()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).min()",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).min()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigInt).is(P.typeOf(GType.bigInt)).min()",
 +                "python": "g.V().values('int').as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT)).min_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX_maxX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 100).addV(\"data\").property(\"int\", 200).addV(\"data\").property(\"int\", 300)",
 +                "language": "g.addV(\"data\").property(\"int\", 100).addV(\"data\").property(\"int\", 200).addV(\"data\").property(\"int\", 300)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 100).addV(\"data\").property(\"int\", 200).addV(\"data\").property(\"int\", 300)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 100).AddV((string) \"data\").Property(\"int\", 200).AddV((string) \"data\").Property(\"int\", 300)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 100).AddV(\"data\").Property(\"int\", 200).AddV(\"data\").Property(\"int\", 300)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 100).addV(\"data\").property(\"int\", 200).addV(\"data\").property(\"int\", 300)",
 +                "java": "g.addV(\"data\").property(\"int\", 100).addV(\"data\").property(\"int\", 200).addV(\"data\").property(\"int\", 300)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 100).addV(\"data\").property(\"int\", 200).addV(\"data\").property(\"int\", 300)",
 +                "python": "g.add_v('data').property('int', 100).add_v('data').property('int', 200).add_v('data').property('int', 300)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).max()",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).max()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).max()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).max()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt)).Max<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt)).Max()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).max()",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).max()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigInt).is(P.typeOf(GType.bigInt)).max()",
 +                "python": "g.V().values('int').as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT)).max_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX_project_byXidentityX_byXmathXaddX999XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 50)",
 +                "language": "g.addV(\"data\").property(\"int\", 50)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 50)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 50)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 50)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 50)",
 +                "java": "g.addV(\"data\").property(\"int\", 50)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 50)",
 +                "python": "g.add_v('data').property('int', 50)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).project(\"original\", \"added\").by(identity()).by(math(\"_ + 999\"))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).project(\"original\", \"added\").by(__.identity()).by(__.math(\"_ + 999\"))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).project(\"original\", \"added\").by(__.identity()).by(__.math(\"_ + 999\"))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).project(string1, string2).by(__.identity()).by(__.math(string3))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt)).Project<object>(\"original\", \"added\").By(__.Identity()).By(__.Math(\"_ + 999\"))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt)).Project(\"original\", \"added\").By(gremlingo.T__.Identity()).By(gremlingo.T__.Math(\"_ + 999\"))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).project(\"original\", \"added\").by(__.identity()).by(__.math(\"_ + 999\"))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).project(\"original\", \"added\").by(__.identity()).by(__.math(\"_ + 999\"))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.bigInt).is(P.typeOf(GType.bigInt)).project(\"original\", \"added\").by(__.identity()).by(__.math(\"_ + 999\"))",
 +                "python": "g.V().values('int').as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT)).project('original', 'added').by(__.identity()).by(__.math('_ + 999'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX777X_asNumberXGType_BIGINTX_isXtypeOfXGType_BIGINTXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject(777).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).groupCount()",
 +                "language": "g.inject(777).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).groupCount()",
 +                "canonical": "g.inject(777).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).groupCount()",
 +                "anonymized": "g.inject(number0).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).groupCount()",
 +                "dotnet": "g.Inject<object>(777).AsNumber(GType.BigInt).Is(P.TypeOf(GType.BigInt)).GroupCount<object>()",
 +                "go": "g.Inject(777).AsNumber(gremlingo.GType.BigInt).Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt)).GroupCount()",
 +                "groovy": "g.inject(777).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).groupCount()",
 +                "java": "g.inject(777).asNumber(GType.BIGINT).is(P.typeOf(GType.BIGINT)).groupCount()",
 +                "javascript": "g.inject(777).asNumber(GType.bigInt).is(P.typeOf(GType.bigInt)).groupCount()",
 +                "python": "g.inject(777).as_number(GType.BIGINT).is_(P.type_of(GType.BIGINT)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_BIGINTXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.BIGINT))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.BIGINT))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.BIGINT))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.BIGINT))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.BigInt))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.BigInt))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.BIGINT))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.BIGINT))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.bigInt))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.BIGINT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BYTEX_isXtypeOfXGType_BYTEXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 5)",
 +                "language": "g.addV(\"data\").property(\"int\", 5)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 5)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 5)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 5)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 5)",
 +                "java": "g.addV(\"data\").property(\"int\", 5)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 5)",
 +                "python": "g.add_v('data').property('int', 5)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Byte).Is(P.TypeOf(GType.Byte))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Byte).Is(gremlingo.P.TypeOf(gremlingo.GType.Byte))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.byte).is(P.typeOf(GType.byte))",
 +                "python": "g.V().values('int').as_number(GType.BYTE).is_(P.type_of(GType.BYTE))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BYTEX_isXtypeOfXGType_BYTEXX_mathXaddX20XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 10)",
 +                "language": "g.addV(\"data\").property(\"int\", 10)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 10)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 10)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 10)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 10)",
 +                "java": "g.addV(\"data\").property(\"int\", 10)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 10)",
 +                "python": "g.add_v('data').property('int', 10)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).math(\"_ + 20\")",
 +                "language": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).math(\"_ + 20\")",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).math(\"_ + 20\")",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).math(string1)",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Byte).Is(P.TypeOf(GType.Byte)).Math(\"_ + 20\")",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Byte).Is(gremlingo.P.TypeOf(gremlingo.GType.Byte)).Math(\"_ + 20\")",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).math(\"_ + 20\")",
 +                "java": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).math(\"_ + 20\")",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.byte).is(P.typeOf(GType.byte)).math(\"_ + 20\")",
 +                "python": "g.V().values('int').as_number(GType.BYTE).is_(P.type_of(GType.BYTE)).math('_ + 20')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BYTEX_isXtypeOfXGType_BYTEXX_isXltX10XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 7)",
 +                "language": "g.addV(\"data\").property(\"int\", 7)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 7)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 7)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 7)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 7)",
 +                "java": "g.addV(\"data\").property(\"int\", 7)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 7)",
 +                "python": "g.add_v('data').property('int', 7)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).is(P.lt(10))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).is(P.lt(10))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).is(P.lt(10))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).is(P.lt(number0))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Byte).Is(P.TypeOf(GType.Byte)).Is(P.Lt(10))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Byte).Is(gremlingo.P.TypeOf(gremlingo.GType.Byte)).Is(gremlingo.P.Lt(10))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).is(P.lt(10))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).is(P.lt(10))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.byte).is(P.typeOf(GType.byte)).is(P.lt(10))",
 +                "python": "g.V().values('int').as_number(GType.BYTE).is_(P.type_of(GType.BYTE)).is_(P.lt(10))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BYTEX_isXtypeOfXGType_BYTEXX_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3)",
 +                "language": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 1).AddV((string) \"data\").Property(\"int\", 2).AddV((string) \"data\").Property(\"int\", 3)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 1).AddV(\"data\").Property(\"int\", 2).AddV(\"data\").Property(\"int\", 3)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3)",
 +                "java": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 1).addV(\"data\").property(\"int\", 2).addV(\"data\").property(\"int\", 3)",
 +                "python": "g.add_v('data').property('int', 1).add_v('data').property('int', 2).add_v('data').property('int', 3)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).sum()",
 +                "language": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).sum()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).sum()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).sum()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Byte).Is(P.TypeOf(GType.Byte)).Sum<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Byte).Is(gremlingo.P.TypeOf(gremlingo.GType.Byte)).Sum()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).sum()",
 +                "java": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).sum()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.byte).is(P.typeOf(GType.byte)).sum()",
 +                "python": "g.V().values('int').as_number(GType.BYTE).is_(P.type_of(GType.BYTE)).sum_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BYTEX_isXtypeOfXGType_BYTEXX_project_byXidentityX_byXmathXmulX2XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 8)",
 +                "language": "g.addV(\"data\").property(\"int\", 8)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 8)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 8)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 8)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 8)",
 +                "java": "g.addV(\"data\").property(\"int\", 8)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 8)",
 +                "python": "g.add_v('data').property('int', 8)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).project(\"original\", \"doubled\").by(identity()).by(math(\"_ * 2\"))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).project(\"original\", \"doubled\").by(__.identity()).by(__.math(\"_ * 2\"))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).project(\"original\", \"doubled\").by(__.identity()).by(__.math(\"_ * 2\"))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).project(string1, string2).by(__.identity()).by(__.math(string3))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Byte).Is(P.TypeOf(GType.Byte)).Project<object>(\"original\", \"doubled\").By(__.Identity()).By(__.Math(\"_ * 2\"))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Byte).Is(gremlingo.P.TypeOf(gremlingo.GType.Byte)).Project(\"original\", \"doubled\").By(gremlingo.T__.Identity()).By(gremlingo.T__.Math(\"_ * 2\"))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).project(\"original\", \"doubled\").by(__.identity()).by(__.math(\"_ * 2\"))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).project(\"original\", \"doubled\").by(__.identity()).by(__.math(\"_ * 2\"))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.byte).is(P.typeOf(GType.byte)).project(\"original\", \"doubled\").by(__.identity()).by(__.math(\"_ * 2\"))",
 +                "python": "g.V().values('int').as_number(GType.BYTE).is_(P.type_of(GType.BYTE)).project('original', 'doubled').by(__.identity()).by(__.math('_ * 2'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_BYTEX_isXtypeOfXGType_BYTEXX_chooseXisXeqX12XX_constantXtwelveX_constantXotherXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 12)",
 +                "language": "g.addV(\"data\").property(\"int\", 12)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 12)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 12)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 12)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 12)",
 +                "java": "g.addV(\"data\").property(\"int\", 12)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 12)",
 +                "python": "g.add_v('data').property('int', 12)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).choose(__.is(P.eq(12)), constant(\"twelve\"), constant(\"other\"))",
 +                "language": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).choose(__.is(P.eq(12)), __.constant(\"twelve\"), __.constant(\"other\"))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).choose(__.is(P.eq(12)), __.constant(\"twelve\"), __.constant(\"other\"))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).choose(__.is(P.eq(number0)), __.constant(string1), __.constant(string2))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Byte).Is(P.TypeOf(GType.Byte)).Choose<object>(__.Is(P.Eq(12)), __.Constant<object>(\"twelve\"), __.Constant<object>(\"other\"))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Byte).Is(gremlingo.P.TypeOf(gremlingo.GType.Byte)).Choose(gremlingo.T__.Is(gremlingo.P.Eq(12)), gremlingo.T__.Constant(\"twelve\"), gremlingo.T__.Constant(\"other\"))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).choose(__.is(P.eq(12)), __.constant(\"twelve\"), __.constant(\"other\"))",
 +                "java": "g.V().values(\"int\").asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).choose(__.is(P.eq(12)), __.constant(\"twelve\"), __.constant(\"other\"))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.byte).is(P.typeOf(GType.byte)).choose(__.is(P.eq(12)), __.constant(\"twelve\"), __.constant(\"other\"))",
 +                "python": "g.V().values('int').as_number(GType.BYTE).is_(P.type_of(GType.BYTE)).choose(__.is_(P.eq(12)), __.constant('twelve'), __.constant('other'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX15X_asNumberXGType_BYTEX_isXtypeOfXGType_BYTEXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject(15).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).groupCount()",
 +                "language": "g.inject(15).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).groupCount()",
 +                "canonical": "g.inject(15).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).groupCount()",
 +                "anonymized": "g.inject(number0).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).groupCount()",
 +                "dotnet": "g.Inject<object>(15).AsNumber(GType.Byte).Is(P.TypeOf(GType.Byte)).GroupCount<object>()",
 +                "go": "g.Inject(15).AsNumber(gremlingo.GType.Byte).Is(gremlingo.P.TypeOf(gremlingo.GType.Byte)).GroupCount()",
 +                "groovy": "g.inject(15).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).groupCount()",
 +                "java": "g.inject(15).asNumber(GType.BYTE).is(P.typeOf(GType.BYTE)).groupCount()",
 +                "javascript": "g.inject(15).asNumber(GType.byte).is(P.typeOf(GType.byte)).groupCount()",
 +                "python": "g.inject(15).as_number(GType.BYTE).is_(P.type_of(GType.BYTE)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_BYTEXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.BYTE))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.BYTE))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.BYTE))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.BYTE))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Byte))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Byte))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.BYTE))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.BYTE))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.byte))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.BYTE))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdatetimeX_isXtypeOfXGType_DATETIMEXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "language": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "canonical": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "anonymized": "g.addV(string0).property(string1, offsetdatetime0)",
 +                "dotnet": "g.AddV((string) \"event\").Property(\"datetime\", DateTimeOffset.Parse(\"2023-08-08T00:00Z\"))",
 +                "go": "g.AddV(\"event\").Property(\"datetime\", time.Date(2023, 8, 8, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0)))",
 +                "groovy": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "java": "g.addV(\"event\").property(\"datetime\", OffsetDateTime.parse(\"2023-08-08T00:00Z\"))",
 +                "javascript": "g.addV(\"event\").property(\"datetime\", new Date('2023-08-08T00:00Z'))",
 +                "python": "g.add_v('event').property('datetime', datetime.datetime.fromisoformat('2023-08-08T00:00+00:00'))"
 +            },
 +            {
 +                "original": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME))",
 +                "language": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME))",
 +                "canonical": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DATETIME))",
 +                "dotnet": "g.V().Values<object>(\"datetime\").Is(P.TypeOf(GType.DateTime))",
 +                "go": "g.V().Values(\"datetime\").Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime))",
 +                "groovy": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME))",
 +                "java": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME))",
 +                "javascript": "g.V().values(\"datetime\").is(P.typeOf(GType.datetime))",
 +                "python": "g.V().values('datetime').is_(P.type_of(GType.DATETIME))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdatetimeX_isXtypeOfXGType_DATETIMEXX_project_byXidentityX_byXdateAddXDT_dayX1XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "language": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "canonical": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "anonymized": "g.addV(string0).property(string1, offsetdatetime0)",
 +                "dotnet": "g.AddV((string) \"event\").Property(\"datetime\", DateTimeOffset.Parse(\"2023-08-08T00:00Z\"))",
 +                "go": "g.AddV(\"event\").Property(\"datetime\", time.Date(2023, 8, 8, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0)))",
 +                "groovy": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "java": "g.addV(\"event\").property(\"datetime\", OffsetDateTime.parse(\"2023-08-08T00:00Z\"))",
 +                "javascript": "g.addV(\"event\").property(\"datetime\", new Date('2023-08-08T00:00Z'))",
 +                "python": "g.add_v('event').property('datetime', datetime.datetime.fromisoformat('2023-08-08T00:00+00:00'))"
 +            },
 +            {
 +                "original": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).project(\"original\", \"nextDay\").by(identity()).by(dateAdd(DT.day, 1))",
 +                "language": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).project(\"original\", \"nextDay\").by(__.identity()).by(__.dateAdd(DT.day, 1))",
 +                "canonical": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).project(\"original\", \"nextDay\").by(__.identity()).by(__.dateAdd(DT.day, 1))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DATETIME)).project(string1, string2).by(__.identity()).by(__.dateAdd(DT.day, number0))",
 +                "dotnet": "g.V().Values<object>(\"datetime\").Is(P.TypeOf(GType.DateTime)).Project<object>(\"original\", \"nextDay\").By(__.Identity()).By(__.DateAdd(DT.Day, 1))",
 +                "go": "g.V().Values(\"datetime\").Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime)).Project(\"original\", \"nextDay\").By(gremlingo.T__.Identity()).By(gremlingo.T__.DateAdd(gremlingo.DT.Day, 1))",
 +                "groovy": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).project(\"original\", \"nextDay\").by(__.identity()).by(__.dateAdd(DT.day, 1))",
 +                "java": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).project(\"original\", \"nextDay\").by(__.identity()).by(__.dateAdd(DT.day, 1))",
 +                "javascript": "g.V().values(\"datetime\").is(P.typeOf(GType.datetime)).project(\"original\", \"nextDay\").by(__.identity()).by(__.dateAdd(DT.day, 1))",
 +                "python": "g.V().values('datetime').is_(P.type_of(GType.DATETIME)).project('original', 'nextDay').by(__.identity()).by(__.date_add(DT.day, 1))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdatetimeX_isXtypeOfXGType_DATETIMEXX_dateDiffXdatetimeX2023_08_10XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "language": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "canonical": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "anonymized": "g.addV(string0).property(string1, offsetdatetime0)",
 +                "dotnet": "g.AddV((string) \"event\").Property(\"datetime\", DateTimeOffset.Parse(\"2023-08-08T00:00Z\"))",
 +                "go": "g.AddV(\"event\").Property(\"datetime\", time.Date(2023, 8, 8, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0)))",
 +                "groovy": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "java": "g.addV(\"event\").property(\"datetime\", OffsetDateTime.parse(\"2023-08-08T00:00Z\"))",
 +                "javascript": "g.addV(\"event\").property(\"datetime\", new Date('2023-08-08T00:00Z'))",
 +                "python": "g.add_v('event').property('datetime', datetime.datetime.fromisoformat('2023-08-08T00:00+00:00'))"
 +            },
 +            {
 +                "original": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).dateDiff(datetime(\"2023-08-08T00:00:30Z\"))",
 +                "language": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).dateDiff(datetime(\"2023-08-08T00:00:30Z\"))",
 +                "canonical": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).dateDiff(datetime(\"2023-08-08T00:00:30Z\"))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DATETIME)).dateDiff(offsetdatetime0)",
 +                "dotnet": "g.V().Values<object>(\"datetime\").Is(P.TypeOf(GType.DateTime)).DateDiff(DateTimeOffset.Parse(\"2023-08-08T00:00:30Z\"))",
 +                "go": "g.V().Values(\"datetime\").Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime)).DateDiff(time.Date(2023, 8, 8, 0, 0, 30, 0, time.FixedZone(\"UTC+00:00\", 0)))",
 +                "groovy": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).dateDiff(datetime(\"2023-08-08T00:00:30Z\"))",
 +                "java": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).dateDiff(OffsetDateTime.parse(\"2023-08-08T00:00:30Z\"))",
 +                "javascript": "g.V().values(\"datetime\").is(P.typeOf(GType.datetime)).dateDiff(new Date('2023-08-08T00:00:30Z'))",
 +                "python": "g.V().values('datetime').is_(P.type_of(GType.DATETIME)).date_diff(datetime.datetime.fromisoformat('2023-08-08T00:00:30+00:00'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdatetimeX_isXtypeOfXGType_DATETIMEXX_whereXisXgtXdatetimeX2020_01_01XXXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T12:34:56Z\"))",
 +                "language": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T12:34:56Z\"))",
 +                "canonical": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T12:34:56Z\"))",
 +                "anonymized": "g.addV(string0).property(string1, offsetdatetime0)",
 +                "dotnet": "g.AddV((string) \"event\").Property(\"datetime\", DateTimeOffset.Parse(\"2023-08-08T12:34:56Z\"))",
 +                "go": "g.AddV(\"event\").Property(\"datetime\", time.Date(2023, 8, 8, 12, 34, 56, 0, time.FixedZone(\"UTC+00:00\", 0)))",
 +                "groovy": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T12:34:56Z\"))",
 +                "java": "g.addV(\"event\").property(\"datetime\", OffsetDateTime.parse(\"2023-08-08T12:34:56Z\"))",
 +                "javascript": "g.addV(\"event\").property(\"datetime\", new Date('2023-08-08T12:34:56Z'))",
 +                "python": "g.add_v('event').property('datetime', datetime.datetime.fromisoformat('2023-08-08T12:34:56+00:00'))"
 +            },
 +            {
 +                "original": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).where(__.is(P.gt(datetime(\"2020-01-01T00:00:00Z\"))))",
 +                "language": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).where(__.is(P.gt(datetime(\"2020-01-01T00:00:00Z\"))))",
 +                "canonical": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).where(__.is(P.gt(datetime(\"2020-01-01T00:00:00Z\"))))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DATETIME)).where(__.is(P.gt(offsetdatetime0)))",
 +                "dotnet": "g.V().Values<object>(\"datetime\").Is(P.TypeOf(GType.DateTime)).Where(__.Is(P.Gt(DateTimeOffset.Parse(\"2020-01-01T00:00Z\"))))",
 +                "go": "g.V().Values(\"datetime\").Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime)).Where(gremlingo.T__.Is(gremlingo.P.Gt(time.Date(2020, 1, 1, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0)))))",
 +                "groovy": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).where(__.is(P.gt(datetime(\"2020-01-01T00:00:00Z\"))))",
 +                "java": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).where(__.is(P.gt(OffsetDateTime.parse(\"2020-01-01T00:00Z\"))))",
 +                "javascript": "g.V().values(\"datetime\").is(P.typeOf(GType.datetime)).where(__.is(P.gt(new Date('2020-01-01T00:00Z'))))",
 +                "python": "g.V().values('datetime').is_(P.type_of(GType.DATETIME)).where(__.is_(P.gt(datetime.datetime.fromisoformat('2020-01-01T00:00+00:00'))))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdatetimeX_isXtypeOfXGType_DATETIMEXX_chooseXisXeqXdatetimeX2023_08_08XXXX_constantXmatchX_constantXnoMatchXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "language": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "canonical": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "anonymized": "g.addV(string0).property(string1, offsetdatetime0)",
 +                "dotnet": "g.AddV((string) \"event\").Property(\"datetime\", DateTimeOffset.Parse(\"2023-08-08T00:00Z\"))",
 +                "go": "g.AddV(\"event\").Property(\"datetime\", time.Date(2023, 8, 8, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0)))",
 +                "groovy": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "java": "g.addV(\"event\").property(\"datetime\", OffsetDateTime.parse(\"2023-08-08T00:00Z\"))",
 +                "javascript": "g.addV(\"event\").property(\"datetime\", new Date('2023-08-08T00:00Z'))",
 +                "python": "g.add_v('event').property('datetime', datetime.datetime.fromisoformat('2023-08-08T00:00+00:00'))"
 +            },
 +            {
 +                "original": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).choose(__.is(P.eq(datetime(\"2023-08-08T00:00:00Z\"))), constant(\"match\"), constant(\"noMatch\"))",
 +                "language": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).choose(__.is(P.eq(datetime(\"2023-08-08T00:00:00Z\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "canonical": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).choose(__.is(P.eq(datetime(\"2023-08-08T00:00:00Z\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DATETIME)).choose(__.is(P.eq(offsetdatetime0)), __.constant(string1), __.constant(string2))",
 +                "dotnet": "g.V().Values<object>(\"datetime\").Is(P.TypeOf(GType.DateTime)).Choose<object>(__.Is(P.Eq(DateTimeOffset.Parse(\"2023-08-08T00:00Z\"))), __.Constant<object>(\"match\"), __.Constant<object>(\"noMatch\"))",
 +                "go": "g.V().Values(\"datetime\").Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime)).Choose(gremlingo.T__.Is(gremlingo.P.Eq(time.Date(2023, 8, 8, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0)))), gremlingo.T__.Constant(\"match\"), gremlingo.T__.Constant(\"noMatch\"))",
 +                "groovy": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).choose(__.is(P.eq(datetime(\"2023-08-08T00:00:00Z\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "java": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).choose(__.is(P.eq(OffsetDateTime.parse(\"2023-08-08T00:00Z\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "javascript": "g.V().values(\"datetime\").is(P.typeOf(GType.datetime)).choose(__.is(P.eq(new Date('2023-08-08T00:00Z'))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "python": "g.V().values('datetime').is_(P.type_of(GType.DATETIME)).choose(__.is_(P.eq(datetime.datetime.fromisoformat('2023-08-08T00:00+00:00'))), __.constant('match'), __.constant('noMatch'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdatetimeX_isXtypeOfXGType_DATETIMEXX_localXaggregateXaX_capXaX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "language": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "canonical": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "anonymized": "g.addV(string0).property(string1, offsetdatetime0)",
 +                "dotnet": "g.AddV((string) \"event\").Property(\"datetime\", DateTimeOffset.Parse(\"2023-08-08T00:00Z\"))",
 +                "go": "g.AddV(\"event\").Property(\"datetime\", time.Date(2023, 8, 8, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0)))",
 +                "groovy": "g.addV(\"event\").property(\"datetime\", datetime(\"2023-08-08T00:00:00Z\"))",
 +                "java": "g.addV(\"event\").property(\"datetime\", OffsetDateTime.parse(\"2023-08-08T00:00Z\"))",
 +                "javascript": "g.addV(\"event\").property(\"datetime\", new Date('2023-08-08T00:00Z'))",
 +                "python": "g.add_v('event').property('datetime', datetime.datetime.fromisoformat('2023-08-08T00:00+00:00'))"
 +            },
 +            {
 +                "original": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).local(aggregate(\"a\")).cap(\"a\")",
 +                "language": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "canonical": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DATETIME)).local(__.aggregate(string1)).cap(string1)",
 +                "dotnet": "g.V().Values<object>(\"datetime\").Is(P.TypeOf(GType.DateTime)).Local<object>(__.Aggregate(\"a\")).Cap<object>(\"a\")",
 +                "go": "g.V().Values(\"datetime\").Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime)).Local(gremlingo.T__.Aggregate(\"a\")).Cap(\"a\")",
 +                "groovy": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "java": "g.V().values(\"datetime\").is(P.typeOf(GType.DATETIME)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "javascript": "g.V().values(\"datetime\").is(P.typeOf(GType.datetime)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "python": "g.V().values('datetime').is_(P.type_of(GType.DATETIME)).local(__.aggregate('a')).cap('a')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXdatetimeX_isXtypeOfXGType_DATETIMEXX_aggregateXaX_capXaX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(datetime(\"2023-08-08T00:00:00Z\")).is(P.typeOf(GType.DATETIME)).aggregate(\"a\").cap(\"a\")",
 +                "language": "g.inject(datetime(\"2023-08-08T00:00:00Z\")).is(P.typeOf(GType.DATETIME)).aggregate(\"a\").cap(\"a\")",
 +                "canonical": "g.inject(datetime(\"2023-08-08T00:00:00Z\")).is(P.typeOf(GType.DATETIME)).aggregate(\"a\").cap(\"a\")",
 +                "anonymized": "g.inject(offsetdatetime0).is(P.typeOf(GType.DATETIME)).aggregate(string0).cap(string0)",
 +                "dotnet": "g.Inject<object>(DateTimeOffset.Parse(\"2023-08-08T00:00Z\")).Is(P.TypeOf(GType.DateTime)).Aggregate(\"a\").Cap<object>(\"a\")",
 +                "go": "g.Inject(time.Date(2023, 8, 8, 0, 0, 0, 0, time.FixedZone(\"UTC+00:00\", 0))).Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime)).Aggregate(\"a\").Cap(\"a\")",
 +                "groovy": "g.inject(datetime(\"2023-08-08T00:00:00Z\")).is(P.typeOf(GType.DATETIME)).aggregate(\"a\").cap(\"a\")",
 +                "java": "g.inject(OffsetDateTime.parse(\"2023-08-08T00:00Z\")).is(P.typeOf(GType.DATETIME)).aggregate(\"a\").cap(\"a\")",
 +                "javascript": "g.inject(new Date('2023-08-08T00:00Z')).is(P.typeOf(GType.datetime)).aggregate(\"a\").cap(\"a\")",
 +                "python": "g.inject(datetime.datetime.fromisoformat('2023-08-08T00:00+00:00')).is_(P.type_of(GType.DATETIME)).aggregate('a').cap('a')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXdatetimeX_isXtypeOfXGType_DATETIMEXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject(datetime(\"2023-08-08T12:34:56Z\")).is(P.typeOf(GType.DATETIME)).groupCount()",
 +                "language": "g.inject(datetime(\"2023-08-08T12:34:56Z\")).is(P.typeOf(GType.DATETIME)).groupCount()",
 +                "canonical": "g.inject(datetime(\"2023-08-08T12:34:56Z\")).is(P.typeOf(GType.DATETIME)).groupCount()",
 +                "anonymized": "g.inject(offsetdatetime0).is(P.typeOf(GType.DATETIME)).groupCount()",
 +                "dotnet": "g.Inject<object>(DateTimeOffset.Parse(\"2023-08-08T12:34:56Z\")).Is(P.TypeOf(GType.DateTime)).GroupCount<object>()",
 +                "go": "g.Inject(time.Date(2023, 8, 8, 12, 34, 56, 0, time.FixedZone(\"UTC+00:00\", 0))).Is(gremlingo.P.TypeOf(gremlingo.GType.DateTime)).GroupCount()",
 +                "groovy": "g.inject(datetime(\"2023-08-08T12:34:56Z\")).is(P.typeOf(GType.DATETIME)).groupCount()",
 +                "java": "g.inject(OffsetDateTime.parse(\"2023-08-08T12:34:56Z\")).is(P.typeOf(GType.DATETIME)).groupCount()",
 +                "javascript": "g.inject(new Date('2023-08-08T12:34:56Z')).is(P.typeOf(GType.datetime)).groupCount()",
 +                "python": "g.inject(datetime.datetime.fromisoformat('2023-08-08T12:34:56+00:00')).is_(P.type_of(GType.DATETIME)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 1.5d)",
 +                "language": "g.addV(\"data\").property(\"double\", 1.5d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 1.5d)",
 +                "anonymized": "g.addV(string0).property(string1, double0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 1.5d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 1.5)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 1.5d)",
 +                "java": "g.addV(\"data\").property(\"double\", 1.5d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 1.5)",
 +                "python": "g.add_v('data').property('double', 1.5)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE))",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE))",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE))",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double))",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double))",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE))",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE))",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double))",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_valuesXweightX_isXtypeOfXGType_DOUBLEXX",
 +        "traversals": [
 +            {
 +                "original": "g.E().values(\"weight\").is(P.typeOf(GType.DOUBLE))",
 +                "language": "g.E().values(\"weight\").is(P.typeOf(GType.DOUBLE))",
 +                "canonical": "g.E().values(\"weight\").is(P.typeOf(GType.DOUBLE))",
 +                "anonymized": "g.E().values(string0).is(P.typeOf(GType.DOUBLE))",
 +                "dotnet": "g.E().Values<object>(\"weight\").Is(P.TypeOf(GType.Double))",
 +                "go": "g.E().Values(\"weight\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double))",
 +                "groovy": "g.E().values(\"weight\").is(P.typeOf(GType.DOUBLE))",
 +                "java": "g.E().values(\"weight\").is(P.typeOf(GType.DOUBLE))",
 +                "javascript": "g.E().values(\"weight\").is(P.typeOf(GType.double))",
 +                "python": "g.E().values('weight').is_(P.type_of(GType.DOUBLE))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX_mathXceilX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 2.7d)",
 +                "language": "g.addV(\"data\").property(\"double\", 2.7d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 2.7d)",
 +                "anonymized": "g.addV(string0).property(string1, double0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 2.7d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 2.7)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 2.7d)",
 +                "java": "g.addV(\"data\").property(\"double\", 2.7d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 2.7)",
 +                "python": "g.add_v('data').property('double', 2.7)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).math('ceil _')",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).math('ceil _')",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).math('ceil _')",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE)).math(string1)",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double)).Math(\"ceil _\")",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).Math(\"ceil _\")",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).math('ceil _')",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).math(\"ceil _\")",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double)).math(\"ceil _\")",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE)).math('ceil _')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX_isXgtX1_0XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 0.8d).addV(\"data\").property(\"double\", 1.2d)",
 +                "language": "g.addV(\"data\").property(\"double\", 0.8d).addV(\"data\").property(\"double\", 1.2d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 0.8d).addV(\"data\").property(\"double\", 1.2d)",
 +                "anonymized": "g.addV(string0).property(string1, double0).addV(string0).property(string1, double1)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 0.8d).AddV((string) \"data\").Property(\"double\", 1.2d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 0.8).AddV(\"data\").Property(\"double\", 1.2)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 0.8d).addV(\"data\").property(\"double\", 1.2d)",
 +                "java": "g.addV(\"data\").property(\"double\", 0.8d).addV(\"data\").property(\"double\", 1.2d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 0.8).addV(\"data\").property(\"double\", 1.2)",
 +                "python": "g.add_v('data').property('double', 0.8).add_v('data').property('double', 1.2)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).is(P.gt(1.0d))",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).is(P.gt(1.0d))",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).is(P.gt(1.0d))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE)).is(P.gt(double0))",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double)).Is(P.Gt(1.0d))",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).Is(gremlingo.P.Gt(1.0))",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).is(P.gt(1.0d))",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).is(P.gt(1.0d))",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double)).is(P.gt(1.0))",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE)).is_(P.gt(1.0))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 1.5d).addV(\"data\").property(\"double\", 2.5d).addV(\"data\").property(\"double\", 3.5d)",
 +                "language": "g.addV(\"data\").property(\"double\", 1.5d).addV(\"data\").property(\"double\", 2.5d).addV(\"data\").property(\"double\", 3.5d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 1.5d).addV(\"data\").property(\"double\", 2.5d).addV(\"data\").property(\"double\", 3.5d)",
 +                "anonymized": "g.addV(string0).property(string1, double0).addV(string0).property(string1, double1).addV(string0).property(string1, double2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 1.5d).AddV((string) \"data\").Property(\"double\", 2.5d).AddV((string) \"data\").Property(\"double\", 3.5d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 1.5).AddV(\"data\").Property(\"double\", 2.5).AddV(\"data\").Property(\"double\", 3.5)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 1.5d).addV(\"data\").property(\"double\", 2.5d).addV(\"data\").property(\"double\", 3.5d)",
 +                "java": "g.addV(\"data\").property(\"double\", 1.5d).addV(\"data\").property(\"double\", 2.5d).addV(\"data\").property(\"double\", 3.5d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 1.5).addV(\"data\").property(\"double\", 2.5).addV(\"data\").property(\"double\", 3.5)",
 +                "python": "g.add_v('data').property('double', 1.5).add_v('data').property('double', 2.5).add_v('data').property('double', 3.5)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).sum()",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).sum()",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).sum()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE)).sum()",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double)).Sum<object>()",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).Sum()",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).sum()",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).sum()",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double)).sum()",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE)).sum_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX_minX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 0.1d).addV(\"data\").property(\"double\", 0.5d).addV(\"data\").property(\"double\", 0.9d)",
 +                "language": "g.addV(\"data\").property(\"double\", 0.1d).addV(\"data\").property(\"double\", 0.5d).addV(\"data\").property(\"double\", 0.9d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 0.1d).addV(\"data\").property(\"double\", 0.5d).addV(\"data\").property(\"double\", 0.9d)",
 +                "anonymized": "g.addV(string0).property(string1, double0).addV(string0).property(string1, double1).addV(string0).property(string1, double2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 0.1d).AddV((string) \"data\").Property(\"double\", 0.5d).AddV((string) \"data\").Property(\"double\", 0.9d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 0.1).AddV(\"data\").Property(\"double\", 0.5).AddV(\"data\").Property(\"double\", 0.9)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 0.1d).addV(\"data\").property(\"double\", 0.5d).addV(\"data\").property(\"double\", 0.9d)",
 +                "java": "g.addV(\"data\").property(\"double\", 0.1d).addV(\"data\").property(\"double\", 0.5d).addV(\"data\").property(\"double\", 0.9d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 0.1).addV(\"data\").property(\"double\", 0.5).addV(\"data\").property(\"double\", 0.9)",
 +                "python": "g.add_v('data').property('double', 0.1).add_v('data').property('double', 0.5).add_v('data').property('double', 0.9)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).min()",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).min()",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).min()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE)).min()",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double)).Min<object>()",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).Min()",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).min()",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).min()",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double)).min()",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE)).min_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX_maxX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 3.7d).addV(\"data\").property(\"double\", 1.9d)",
 +                "language": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 3.7d).addV(\"data\").property(\"double\", 1.9d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 3.7d).addV(\"data\").property(\"double\", 1.9d)",
 +                "anonymized": "g.addV(string0).property(string1, double0).addV(string0).property(string1, double1).addV(string0).property(string1, double2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 2.1d).AddV((string) \"data\").Property(\"double\", 3.7d).AddV((string) \"data\").Property(\"double\", 1.9d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 2.1).AddV(\"data\").Property(\"double\", 3.7).AddV(\"data\").Property(\"double\", 1.9)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 3.7d).addV(\"data\").property(\"double\", 1.9d)",
 +                "java": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 3.7d).addV(\"data\").property(\"double\", 1.9d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 2.1).addV(\"data\").property(\"double\", 3.7).addV(\"data\").property(\"double\", 1.9)",
 +                "python": "g.add_v('data').property('double', 2.1).add_v('data').property('double', 3.7).add_v('data').property('double', 1.9)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).max()",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).max()",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).max()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE)).max()",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double)).Max<object>()",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).Max()",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).max()",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).max()",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double)).max()",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE)).max_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX_meanX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 4.1d).addV(\"data\").property(\"double\", 6.1d)",
 +                "language": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 4.1d).addV(\"data\").property(\"double\", 6.1d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 4.1d).addV(\"data\").property(\"double\", 6.1d)",
 +                "anonymized": "g.addV(string0).property(string1, double0).addV(string0).property(string1, double1).addV(string0).property(string1, double2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 2.1d).AddV((string) \"data\").Property(\"double\", 4.1d).AddV((string) \"data\").Property(\"double\", 6.1d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 2.1).AddV(\"data\").Property(\"double\", 4.1).AddV(\"data\").Property(\"double\", 6.1)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 4.1d).addV(\"data\").property(\"double\", 6.1d)",
 +                "java": "g.addV(\"data\").property(\"double\", 2.1d).addV(\"data\").property(\"double\", 4.1d).addV(\"data\").property(\"double\", 6.1d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 2.1).addV(\"data\").property(\"double\", 4.1).addV(\"data\").property(\"double\", 6.1)",
 +                "python": "g.add_v('data').property('double', 2.1).add_v('data').property('double', 4.1).add_v('data').property('double', 6.1)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).mean()",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).mean()",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).mean()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE)).mean()",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double)).Mean<object>()",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).Mean()",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).mean()",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).mean()",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double)).mean()",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE)).mean()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXdoubleX_isXtypeOfXGType_DOUBLEXX_order_byXascX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"double\", 3.2d).addV(\"data\").property(\"double\", 1.8d).addV(\"data\").property(\"double\", 2.5d)",
 +                "language": "g.addV(\"data\").property(\"double\", 3.2d).addV(\"data\").property(\"double\", 1.8d).addV(\"data\").property(\"double\", 2.5d)",
 +                "canonical": "g.addV(\"data\").property(\"double\", 3.2d).addV(\"data\").property(\"double\", 1.8d).addV(\"data\").property(\"double\", 2.5d)",
 +                "anonymized": "g.addV(string0).property(string1, double0).addV(string0).property(string1, double1).addV(string0).property(string1, double2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"double\", 3.2d).AddV((string) \"data\").Property(\"double\", 1.8d).AddV((string) \"data\").Property(\"double\", 2.5d)",
 +                "go": "g.AddV(\"data\").Property(\"double\", 3.2).AddV(\"data\").Property(\"double\", 1.8).AddV(\"data\").Property(\"double\", 2.5)",
 +                "groovy": "g.addV(\"data\").property(\"double\", 3.2d).addV(\"data\").property(\"double\", 1.8d).addV(\"data\").property(\"double\", 2.5d)",
 +                "java": "g.addV(\"data\").property(\"double\", 3.2d).addV(\"data\").property(\"double\", 1.8d).addV(\"data\").property(\"double\", 2.5d)",
 +                "javascript": "g.addV(\"data\").property(\"double\", 3.2).addV(\"data\").property(\"double\", 1.8).addV(\"data\").property(\"double\", 2.5)",
 +                "python": "g.add_v('data').property('double', 3.2).add_v('data').property('double', 1.8).add_v('data').property('double', 2.5)"
 +            },
 +            {
 +                "original": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).order().by(asc)",
 +                "language": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).order().by(Order.asc)",
 +                "canonical": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).order().by(Order.asc)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE)).order().by(Order.asc)",
 +                "dotnet": "g.V().Values<object>(\"double\").Is(P.TypeOf(GType.Double)).Order().By(Order.Asc)",
 +                "go": "g.V().Values(\"double\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).Order().By(gremlingo.Order.Asc)",
 +                "groovy": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).order().by(Order.asc)",
 +                "java": "g.V().values(\"double\").is(P.typeOf(GType.DOUBLE)).order().by(Order.asc)",
 +                "javascript": "g.V().values(\"double\").is(P.typeOf(GType.double)).order().by(Order.asc)",
 +                "python": "g.V().values('double').is_(P.type_of(GType.DOUBLE)).order().by(Order.asc)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX5_5dX_isXtypeOfXGType_DOUBLEXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject(5.5d).is(P.typeOf(GType.DOUBLE)).groupCount()",
 +                "language": "g.inject(5.5d).is(P.typeOf(GType.DOUBLE)).groupCount()",
 +                "canonical": "g.inject(5.5d).is(P.typeOf(GType.DOUBLE)).groupCount()",
 +                "anonymized": "g.inject(double0).is(P.typeOf(GType.DOUBLE)).groupCount()",
 +                "dotnet": "g.Inject<object>(5.5d).Is(P.TypeOf(GType.Double)).GroupCount<object>()",
 +                "go": "g.Inject(5.5).Is(gremlingo.P.TypeOf(gremlingo.GType.Double)).GroupCount()",
 +                "groovy": "g.inject(5.5d).is(P.typeOf(GType.DOUBLE)).groupCount()",
 +                "java": "g.inject(5.5d).is(P.typeOf(GType.DOUBLE)).groupCount()",
 +                "javascript": "g.inject(5.5).is(P.typeOf(GType.double)).groupCount()",
 +                "python": "g.inject(5.5).is_(P.type_of(GType.DOUBLE)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_DOUBLEXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.DOUBLE))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.DOUBLE))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.DOUBLE))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.DOUBLE))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Double))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Double))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.DOUBLE))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.DOUBLE))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.double))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.DOUBLE))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXfloatX_isXtypeOfXGType_FLOATXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"float\", 2.5)",
 +                "language": "g.addV(\"data\").property(\"float\", 2.5)",
 +                "canonical": "g.addV(\"data\").property(\"float\", 2.5)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"float\", 2.5)",
 +                "go": "g.AddV(\"data\").Property(\"float\", 2.5)",
 +                "groovy": "g.addV(\"data\").property(\"float\", 2.5)",
 +                "java": "g.addV(\"data\").property(\"float\", 2.5)",
 +                "javascript": "g.addV(\"data\").property(\"float\", 2.5)",
 +                "python": "g.add_v('data').property('float', 2.5)"
 +            },
 +            {
 +                "original": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT))",
 +                "language": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT))",
 +                "canonical": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT))",
 +                "dotnet": "g.V().Values<object>(\"float\").AsNumber(GType.Float).Is(P.TypeOf(GType.Float))",
 +                "go": "g.V().Values(\"float\").AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float))",
 +                "groovy": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT))",
 +                "java": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT))",
 +                "javascript": "g.V().values(\"float\").asNumber(GType.float).is(P.typeOf(GType.float))",
 +                "python": "g.V().values('float').as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXfloatX_isXtypeOfXGType_FLOATXX_mathXmulX2XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "language": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "canonical": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"float\", 3.0)",
 +                "go": "g.AddV(\"data\").Property(\"float\", 3.0)",
 +                "groovy": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "java": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "javascript": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "python": "g.add_v('data').property('float', 3.0)"
 +            },
 +            {
 +                "original": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).math(\"_ * 2\")",
 +                "language": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).math(\"_ * 2\")",
 +                "canonical": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).math(\"_ * 2\")",
 +                "anonymized": "g.V().values(string0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).math(string1)",
 +                "dotnet": "g.V().Values<object>(\"float\").AsNumber(GType.Float).Is(P.TypeOf(GType.Float)).Math(\"_ * 2\")",
 +                "go": "g.V().Values(\"float\").AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float)).Math(\"_ * 2\")",
 +                "groovy": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).math(\"_ * 2\")",
 +                "java": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).math(\"_ * 2\")",
 +                "javascript": "g.V().values(\"float\").asNumber(GType.float).is(P.typeOf(GType.float)).math(\"_ * 2\")",
 +                "python": "g.V().values('float').as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT)).math('_ * 2')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXfloatX_isXtypeOfXGType_FLOATXX_isXeqX1_5XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"float\", 1.5)",
 +                "language": "g.addV(\"data\").property(\"float\", 1.5)",
 +                "canonical": "g.addV(\"data\").property(\"float\", 1.5)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"float\", 1.5)",
 +                "go": "g.AddV(\"data\").Property(\"float\", 1.5)",
 +                "groovy": "g.addV(\"data\").property(\"float\", 1.5)",
 +                "java": "g.addV(\"data\").property(\"float\", 1.5)",
 +                "javascript": "g.addV(\"data\").property(\"float\", 1.5)",
 +                "python": "g.add_v('data').property('float', 1.5)"
 +            },
 +            {
 +                "original": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).is(P.eq(1.5))",
 +                "language": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).is(P.eq(1.5))",
 +                "canonical": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).is(P.eq(1.5))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).is(P.eq(number0))",
 +                "dotnet": "g.V().Values<object>(\"float\").AsNumber(GType.Float).Is(P.TypeOf(GType.Float)).Is(P.Eq(1.5))",
 +                "go": "g.V().Values(\"float\").AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float)).Is(gremlingo.P.Eq(1.5))",
 +                "groovy": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).is(P.eq(1.5))",
 +                "java": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).is(P.eq(1.5))",
 +                "javascript": "g.V().values(\"float\").asNumber(GType.float).is(P.typeOf(GType.float)).is(P.eq(1.5))",
 +                "python": "g.V().values('float').as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT)).is_(P.eq(1.5))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXfloatX_isXtypeOfXGType_FLOATXX_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"float\", 1.5).addV(\"data\").property(\"float\", 2.5).addV(\"data\").property(\"float\", 3.0)",
 +                "language": "g.addV(\"data\").property(\"float\", 1.5).addV(\"data\").property(\"float\", 2.5).addV(\"data\").property(\"float\", 3.0)",
 +                "canonical": "g.addV(\"data\").property(\"float\", 1.5).addV(\"data\").property(\"float\", 2.5).addV(\"data\").property(\"float\", 3.0)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"float\", 1.5).AddV((string) \"data\").Property(\"float\", 2.5).AddV((string) \"data\").Property(\"float\", 3.0)",
 +                "go": "g.AddV(\"data\").Property(\"float\", 1.5).AddV(\"data\").Property(\"float\", 2.5).AddV(\"data\").Property(\"float\", 3.0)",
 +                "groovy": "g.addV(\"data\").property(\"float\", 1.5).addV(\"data\").property(\"float\", 2.5).addV(\"data\").property(\"float\", 3.0)",
 +                "java": "g.addV(\"data\").property(\"float\", 1.5).addV(\"data\").property(\"float\", 2.5).addV(\"data\").property(\"float\", 3.0)",
 +                "javascript": "g.addV(\"data\").property(\"float\", 1.5).addV(\"data\").property(\"float\", 2.5).addV(\"data\").property(\"float\", 3.0)",
 +                "python": "g.add_v('data').property('float', 1.5).add_v('data').property('float', 2.5).add_v('data').property('float', 3.0)"
 +            },
 +            {
 +                "original": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).sum()",
 +                "language": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).sum()",
 +                "canonical": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).sum()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).sum()",
 +                "dotnet": "g.V().Values<object>(\"float\").AsNumber(GType.Float).Is(P.TypeOf(GType.Float)).Sum<object>()",
 +                "go": "g.V().Values(\"float\").AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float)).Sum()",
 +                "groovy": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).sum()",
 +                "java": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).sum()",
 +                "javascript": "g.V().values(\"float\").asNumber(GType.float).is(P.typeOf(GType.float)).sum()",
 +                "python": "g.V().values('float').as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT)).sum_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXfloatX_isXtypeOfXGType_FLOATXX_project_byXidentityX_byXmathXmulX10XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"float\", 4.5)",
 +                "language": "g.addV(\"data\").property(\"float\", 4.5)",
 +                "canonical": "g.addV(\"data\").property(\"float\", 4.5)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"float\", 4.5)",
 +                "go": "g.AddV(\"data\").Property(\"float\", 4.5)",
 +                "groovy": "g.addV(\"data\").property(\"float\", 4.5)",
 +                "java": "g.addV(\"data\").property(\"float\", 4.5)",
 +                "javascript": "g.addV(\"data\").property(\"float\", 4.5)",
 +                "python": "g.add_v('data').property('float', 4.5)"
 +            },
 +            {
 +                "original": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).project(\"original\", \"multiplied\").by(identity()).by(math(\"_ * 10\"))",
 +                "language": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "canonical": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).project(string1, string2).by(__.identity()).by(__.math(string3))",
 +                "dotnet": "g.V().Values<object>(\"float\").AsNumber(GType.Float).Is(P.TypeOf(GType.Float)).Project<object>(\"original\", \"multiplied\").By(__.Identity()).By(__.Math(\"_ * 10\"))",
 +                "go": "g.V().Values(\"float\").AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float)).Project(\"original\", \"multiplied\").By(gremlingo.T__.Identity()).By(gremlingo.T__.Math(\"_ * 10\"))",
 +                "groovy": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "java": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "javascript": "g.V().values(\"float\").asNumber(GType.float).is(P.typeOf(GType.float)).project(\"original\", \"multiplied\").by(__.identity()).by(__.math(\"_ * 10\"))",
 +                "python": "g.V().values('float').as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT)).project('original', 'multiplied').by(__.identity()).by(__.math('_ * 10'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXfloatX_isXtypeOfXGType_FLOATXX_whereXisXgtX1_0XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"float\", 0.5).addV(\"data\").property(\"float\", 1.5)",
 +                "language": "g.addV(\"data\").property(\"float\", 0.5).addV(\"data\").property(\"float\", 1.5)",
 +                "canonical": "g.addV(\"data\").property(\"float\", 0.5).addV(\"data\").property(\"float\", 1.5)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"float\", 0.5).AddV((string) \"data\").Property(\"float\", 1.5)",
 +                "go": "g.AddV(\"data\").Property(\"float\", 0.5).AddV(\"data\").Property(\"float\", 1.5)",
 +                "groovy": "g.addV(\"data\").property(\"float\", 0.5).addV(\"data\").property(\"float\", 1.5)",
 +                "java": "g.addV(\"data\").property(\"float\", 0.5).addV(\"data\").property(\"float\", 1.5)",
 +                "javascript": "g.addV(\"data\").property(\"float\", 0.5).addV(\"data\").property(\"float\", 1.5)",
 +                "python": "g.add_v('data').property('float', 0.5).add_v('data').property('float', 1.5)"
 +            },
 +            {
 +                "original": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).where(__.is(P.gt(1.0)))",
 +                "language": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).where(__.is(P.gt(1.0)))",
 +                "canonical": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).where(__.is(P.gt(1.0)))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).where(__.is(P.gt(number0)))",
 +                "dotnet": "g.V().Values<object>(\"float\").AsNumber(GType.Float).Is(P.TypeOf(GType.Float)).Where(__.Is(P.Gt(1.0)))",
 +                "go": "g.V().Values(\"float\").AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float)).Where(gremlingo.T__.Is(gremlingo.P.Gt(1.0)))",
 +                "groovy": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).where(__.is(P.gt(1.0)))",
 +                "java": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).where(__.is(P.gt(1.0)))",
 +                "javascript": "g.V().values(\"float\").asNumber(GType.float).is(P.typeOf(GType.float)).where(__.is(P.gt(1.0)))",
 +                "python": "g.V().values('float').as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT)).where(__.is_(P.gt(1.0)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXfloatX_isXtypeOfXGType_FLOATXX_chooseXisXeqX3_0XX_constantXthreeX_constantXotherXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "language": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "canonical": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"float\", 3.0)",
 +                "go": "g.AddV(\"data\").Property(\"float\", 3.0)",
 +                "groovy": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "java": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "javascript": "g.addV(\"data\").property(\"float\", 3.0)",
 +                "python": "g.add_v('data').property('float', 3.0)"
 +            },
 +            {
 +                "original": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).choose(__.is(P.eq(3.0)), constant(\"three\"), constant(\"other\"))",
 +                "language": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).choose(__.is(P.eq(3.0)), __.constant(\"three\"), __.constant(\"other\"))",
 +                "canonical": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).choose(__.is(P.eq(3.0)), __.constant(\"three\"), __.constant(\"other\"))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).choose(__.is(P.eq(number0)), __.constant(string1), __.constant(string2))",
 +                "dotnet": "g.V().Values<object>(\"float\").AsNumber(GType.Float).Is(P.TypeOf(GType.Float)).Choose<object>(__.Is(P.Eq(3.0)), __.Constant<object>(\"three\"), __.Constant<object>(\"other\"))",
 +                "go": "g.V().Values(\"float\").AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float)).Choose(gremlingo.T__.Is(gremlingo.P.Eq(3.0)), gremlingo.T__.Constant(\"three\"), gremlingo.T__.Constant(\"other\"))",
 +                "groovy": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).choose(__.is(P.eq(3.0)), __.constant(\"three\"), __.constant(\"other\"))",
 +                "java": "g.V().values(\"float\").asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).choose(__.is(P.eq(3.0)), __.constant(\"three\"), __.constant(\"other\"))",
 +                "javascript": "g.V().values(\"float\").asNumber(GType.float).is(P.typeOf(GType.float)).choose(__.is(P.eq(3.0)), __.constant(\"three\"), __.constant(\"other\"))",
 +                "python": "g.V().values('float').as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT)).choose(__.is_(P.eq(3.0)), __.constant('three'), __.constant('other'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX2_0fX_isXtypeOfXGType_FLOATXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject(2.0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).groupCount()",
 +                "language": "g.inject(2.0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).groupCount()",
 +                "canonical": "g.inject(2.0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).groupCount()",
 +                "anonymized": "g.inject(number0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).groupCount()",
 +                "dotnet": "g.Inject<object>(2.0).AsNumber(GType.Float).Is(P.TypeOf(GType.Float)).GroupCount<object>()",
 +                "go": "g.Inject(2.0).AsNumber(gremlingo.GType.Float).Is(gremlingo.P.TypeOf(gremlingo.GType.Float)).GroupCount()",
 +                "groovy": "g.inject(2.0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).groupCount()",
 +                "java": "g.inject(2.0).asNumber(GType.FLOAT).is(P.typeOf(GType.FLOAT)).groupCount()",
 +                "javascript": "g.inject(2.0).asNumber(GType.float).is(P.typeOf(GType.float)).groupCount()",
 +                "python": "g.inject(2.0).as_number(GType.FLOAT).is_(P.type_of(GType.FLOAT)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_FLOATXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.FLOAT))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.FLOAT))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.FLOAT))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.FLOAT))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Float))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Float))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.FLOAT))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.FLOAT))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.float))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.FLOAT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.INT))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.INT))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.INT))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.INT))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Int))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.INT))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.INT))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.int))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.INT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_typeOfXGType_INTXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.typeOf(GType.INT)).values(\"name\")",
 +                "language": "g.V().has(\"age\", P.typeOf(GType.INT)).values(\"name\")",
 +                "canonical": "g.V().has(\"age\", P.typeOf(GType.INT)).values(\"name\")",
 +                "anonymized": "g.V().has(string0, P.typeOf(GType.INT)).values(string1)",
 +                "dotnet": "g.V().Has(\"age\", P.TypeOf(GType.Int)).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"age\", gremlingo.P.TypeOf(gremlingo.GType.Int)).Values(\"name\")",
 +                "groovy": "g.V().has(\"age\", P.typeOf(GType.INT)).values(\"name\")",
 +                "java": "g.V().has(\"age\", P.typeOf(GType.INT)).values(\"name\")",
 +                "javascript": "g.V().has(\"age\", P.typeOf(GType.int)).values(\"name\")",
 +                "python": "g.V().has('age', P.type_of(GType.INT)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_whereXvaluesXageX_isXtypeOfXGType_INTXXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().where(__.values(\"age\").is(P.typeOf(GType.INT))).values(\"name\")",
 +                "language": "g.V().where(__.values(\"age\").is(P.typeOf(GType.INT))).values(\"name\")",
 +                "canonical": "g.V().where(__.values(\"age\").is(P.typeOf(GType.INT))).values(\"name\")",
 +                "anonymized": "g.V().where(__.values(string0).is(P.typeOf(GType.INT))).values(string1)",
 +                "dotnet": "g.V().Where(__.Values<object>(\"age\").Is(P.TypeOf(GType.Int))).Values<object>(\"name\")",
 +                "go": "g.V().Where(gremlingo.T__.Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int))).Values(\"name\")",
 +                "groovy": "g.V().where(__.values(\"age\").is(P.typeOf(GType.INT))).values(\"name\")",
 +                "java": "g.V().where(__.values(\"age\").is(P.typeOf(GType.INT))).values(\"name\")",
 +                "javascript": "g.V().where(__.values(\"age\").is(P.typeOf(GType.int))).values(\"name\")",
 +                "python": "g.V().where(__.values('age').is_(P.type_of(GType.INT))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX_mathXincX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"name\", \"age\").is(P.typeOf(GType.INT)).math(\"_ + 1\")",
 +                "language": "g.V().values(\"name\", \"age\").is(P.typeOf(GType.INT)).math(\"_ + 1\")",
 +                "canonical": "g.V().values(\"name\", \"age\").is(P.typeOf(GType.INT)).math(\"_ + 1\")",
 +                "anonymized": "g.V().values(string0, string1).is(P.typeOf(GType.INT)).math(string2)",
 +                "dotnet": "g.V().Values<object>(\"name\", \"age\").Is(P.TypeOf(GType.Int)).Math(\"_ + 1\")",
 +                "go": "g.V().Values(\"name\", \"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int)).Math(\"_ + 1\")",
 +                "groovy": "g.V().values(\"name\", \"age\").is(P.typeOf(GType.INT)).math(\"_ + 1\")",
 +                "java": "g.V().values(\"name\", \"age\").is(P.typeOf(GType.INT)).math(\"_ + 1\")",
 +                "javascript": "g.V().values(\"name\", \"age\").is(P.typeOf(GType.int)).math(\"_ + 1\")",
 +                "python": "g.V().values('name', 'age').is_(P.type_of(GType.INT)).math('_ + 1')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.INT)).sum()",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.INT)).sum()",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.INT)).sum()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.INT)).sum()",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Int)).Sum<object>()",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int)).Sum()",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.INT)).sum()",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.INT)).sum()",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.int)).sum()",
 +                "python": "g.V().values('age').is_(P.type_of(GType.INT)).sum_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX_minX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.INT)).min()",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.INT)).min()",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.INT)).min()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.INT)).min()",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Int)).Min<object>()",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int)).Min()",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.INT)).min()",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.INT)).min()",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.int)).min()",
 +                "python": "g.V().values('age').is_(P.type_of(GType.INT)).min_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX_maxX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.INT)).max()",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.INT)).max()",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.INT)).max()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.INT)).max()",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Int)).Max<object>()",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int)).Max()",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.INT)).max()",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.INT)).max()",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.int)).max()",
 +                "python": "g.V().values('age').is_(P.type_of(GType.INT)).max_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX_meanX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.INT)).mean()",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.INT)).mean()",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.INT)).mean()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.INT)).mean()",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Int)).Mean<object>()",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int)).Mean()",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.INT)).mean()",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.INT)).mean()",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.int)).mean()",
 +                "python": "g.V().values('age').is_(P.type_of(GType.INT)).mean()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX_order_byXdescX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.INT)).order().by(desc)",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.INT)).order().by(Order.desc)",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.INT)).order().by(Order.desc)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.INT)).order().by(Order.desc)",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Int)).Order().By(Order.Desc)",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int)).Order().By(gremlingo.Order.Desc)",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.INT)).order().by(Order.desc)",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.INT)).order().by(Order.desc)",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.int)).order().by(Order.desc)",
 +                "python": "g.V().values('age').is_(P.type_of(GType.INT)).order().by(Order.desc)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_INTXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.INT)).groupCount()",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.INT)).groupCount()",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.INT)).groupCount()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.INT)).groupCount()",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Int)).GroupCount<object>()",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Int)).GroupCount()",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.INT)).groupCount()",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.INT)).groupCount()",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.int)).groupCount()",
 +                "python": "g.V().values('age').is_(P.type_of(GType.INT)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXnameX_fold_isXtypeOfXGType_LISTXX_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"name\").fold().is(P.typeOf(GType.LIST)).count()",
 +                "language": "g.V().values(\"name\").fold().is(P.typeOf(GType.LIST)).count()",
 +                "canonical": "g.V().values(\"name\").fold().is(P.typeOf(GType.LIST)).count()",
 +                "anonymized": "g.V().values(string0).fold().is(P.typeOf(GType.LIST)).count()",
 +                "dotnet": "g.V().Values<object>(\"name\").Fold().Is(P.TypeOf(GType.List)).Count()",
 +                "go": "g.V().Values(\"name\").Fold().Is(gremlingo.P.TypeOf(gremlingo.GType.List)).Count()",
 +                "groovy": "g.V().values(\"name\").fold().is(P.typeOf(GType.LIST)).count()",
 +                "java": "g.V().values(\"name\").fold().is(P.typeOf(GType.LIST)).count()",
 +                "javascript": "g.V().values(\"name\").fold().is(P.typeOf(GType.list)).count()",
 +                "python": "g.V().values('name').fold().is_(P.type_of(GType.LIST)).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_LISTXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.LIST))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.LIST))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.LIST))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LIST))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.List))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.List))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.LIST))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.LIST))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.list))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.LIST))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlistX_isXtypeOfXGType_LISTXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"list\", [\"a\", \"b\", \"c\"])",
 +                "language": "g.addV(\"data\").property(\"list\", [\"a\", \"b\", \"c\"])",
 +                "canonical": "g.addV(\"data\").property(\"list\", [\"a\", \"b\", \"c\"])",
 +                "anonymized": "g.addV(string0).property(string1, list0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"list\", new List<object> { \"a\", \"b\", \"c\" })",
 +                "go": "g.AddV(\"data\").Property(\"list\", []interface{}{\"a\", \"b\", \"c\"})",
 +                "groovy": "g.addV(\"data\").property(\"list\", [\"a\", \"b\", \"c\"])",
 +                "java": "g.addV(\"data\").property(\"list\", new ArrayList<Object>() {{ add(\"a\"); add(\"b\"); add(\"c\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"list\", [\"a\", \"b\", \"c\"])",
 +                "python": "g.add_v('data').property('list', ['a', 'b', 'c'])"
 +            },
 +            {
 +                "original": "g.V().values(\"list\").is(P.typeOf(GType.LIST))",
 +                "language": "g.V().values(\"list\").is(P.typeOf(GType.LIST))",
 +                "canonical": "g.V().values(\"list\").is(P.typeOf(GType.LIST))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LIST))",
 +                "dotnet": "g.V().Values<object>(\"list\").Is(P.TypeOf(GType.List))",
 +                "go": "g.V().Values(\"list\").Is(gremlingo.P.TypeOf(gremlingo.GType.List))",
 +                "groovy": "g.V().values(\"list\").is(P.typeOf(GType.LIST))",
 +                "java": "g.V().values(\"list\").is(P.typeOf(GType.LIST))",
 +                "javascript": "g.V().values(\"list\").is(P.typeOf(GType.list))",
 +                "python": "g.V().values('list').is_(P.type_of(GType.LIST))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXlist_typeOfXGType_LISTXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"name\", \"test\").property(\"list\", [1, 2, 3])",
 +                "language": "g.addV(\"data\").property(\"name\", \"test\").property(\"list\", [1, 2, 3])",
 +                "canonical": "g.addV(\"data\").property(\"name\", \"test\").property(\"list\", [1, 2, 3])",
 +                "anonymized": "g.addV(string0).property(string1, string2).property(string3, list0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"name\", \"test\").Property(\"list\", new List<object> { 1, 2, 3 })",
 +                "go": "g.AddV(\"data\").Property(\"name\", \"test\").Property(\"list\", []interface{}{1, 2, 3})",
 +                "groovy": "g.addV(\"data\").property(\"name\", \"test\").property(\"list\", [1, 2, 3])",
 +                "java": "g.addV(\"data\").property(\"name\", \"test\").property(\"list\", new ArrayList<Object>() {{ add(1); add(2); add(3); }})",
 +                "javascript": "g.addV(\"data\").property(\"name\", \"test\").property(\"list\", [1, 2, 3])",
 +                "python": "g.add_v('data').property('name', 'test').property('list', [1, 2, 3])"
 +            },
 +            {
 +                "original": "g.V().has(\"list\", P.typeOf(GType.LIST)).values(\"name\")",
 +                "language": "g.V().has(\"list\", P.typeOf(GType.LIST)).values(\"name\")",
 +                "canonical": "g.V().has(\"list\", P.typeOf(GType.LIST)).values(\"name\")",
 +                "anonymized": "g.V().has(string0, P.typeOf(GType.LIST)).values(string1)",
 +                "dotnet": "g.V().Has(\"list\", P.TypeOf(GType.List)).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"list\", gremlingo.P.TypeOf(gremlingo.GType.List)).Values(\"name\")",
 +                "groovy": "g.V().has(\"list\", P.typeOf(GType.LIST)).values(\"name\")",
 +                "java": "g.V().has(\"list\", P.typeOf(GType.LIST)).values(\"name\")",
 +                "javascript": "g.V().has(\"list\", P.typeOf(GType.list)).values(\"name\")",
 +                "python": "g.V().has('list', P.type_of(GType.LIST)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlistX_isXtypeOfXGType_LISTXX_unfold",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"list\", [\"x\", \"y\", \"z\"])",
 +                "language": "g.addV(\"data\").property(\"list\", [\"x\", \"y\", \"z\"])",
 +                "canonical": "g.addV(\"data\").property(\"list\", [\"x\", \"y\", \"z\"])",
 +                "anonymized": "g.addV(string0).property(string1, list0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"list\", new List<object> { \"x\", \"y\", \"z\" })",
 +                "go": "g.AddV(\"data\").Property(\"list\", []interface{}{\"x\", \"y\", \"z\"})",
 +                "groovy": "g.addV(\"data\").property(\"list\", [\"x\", \"y\", \"z\"])",
 +                "java": "g.addV(\"data\").property(\"list\", new ArrayList<Object>() {{ add(\"x\"); add(\"y\"); add(\"z\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"list\", [\"x\", \"y\", \"z\"])",
 +                "python": "g.add_v('data').property('list', ['x', 'y', 'z'])"
 +            },
 +            {
 +                "original": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold()",
 +                "language": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold()",
 +                "canonical": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LIST)).unfold()",
 +                "dotnet": "g.V().Values<object>(\"list\").Is(P.TypeOf(GType.List)).Unfold<object>()",
 +                "go": "g.V().Values(\"list\").Is(gremlingo.P.TypeOf(gremlingo.GType.List)).Unfold()",
 +                "groovy": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold()",
 +                "java": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold()",
 +                "javascript": "g.V().values(\"list\").is(P.typeOf(GType.list)).unfold()",
 +                "python": "g.V().values('list').is_(P.type_of(GType.LIST)).unfold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlistX_isXtypeOfXGType_LISTXX_countXlocalX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"list\", [1, 2, 3, 4, 5])",
 +                "language": "g.addV(\"data\").property(\"list\", [1, 2, 3, 4, 5])",
 +                "canonical": "g.addV(\"data\").property(\"list\", [1, 2, 3, 4, 5])",
 +                "anonymized": "g.addV(string0).property(string1, list0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"list\", new List<object> { 1, 2, 3, 4, 5 })",
 +                "go": "g.AddV(\"data\").Property(\"list\", []interface{}{1, 2, 3, 4, 5})",
 +                "groovy": "g.addV(\"data\").property(\"list\", [1, 2, 3, 4, 5])",
 +                "java": "g.addV(\"data\").property(\"list\", new ArrayList<Object>() {{ add(1); add(2); add(3); add(4); add(5); }})",
 +                "javascript": "g.addV(\"data\").property(\"list\", [1, 2, 3, 4, 5])",
 +                "python": "g.add_v('data').property('list', [1, 2, 3, 4, 5])"
 +            },
 +            {
 +                "original": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).count(local)",
 +                "language": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).count(Scope.local)",
 +                "canonical": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).count(Scope.local)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LIST)).count(Scope.local)",
 +                "dotnet": "g.V().Values<object>(\"list\").Is(P.TypeOf(GType.List)).Count(Scope.Local)",
 +                "go": "g.V().Values(\"list\").Is(gremlingo.P.TypeOf(gremlingo.GType.List)).Count(gremlingo.Scope.Local)",
 +                "groovy": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).count(Scope.local)",
 +                "java": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).count(Scope.local)",
 +                "javascript": "g.V().values(\"list\").is(P.typeOf(GType.list)).count(Scope.local)",
 +                "python": "g.V().values('list').is_(P.type_of(GType.LIST)).count(Scope.local)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlistX_isXtypeOfXGType_LISTXX_unfold_rangeX1_3X",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"list\", [\"first\", \"second\", \"third\", \"fourth\"])",
 +                "language": "g.addV(\"data\").property(\"list\", [\"first\", \"second\", \"third\", \"fourth\"])",
 +                "canonical": "g.addV(\"data\").property(\"list\", [\"first\", \"second\", \"third\", \"fourth\"])",
 +                "anonymized": "g.addV(string0).property(string1, list0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"list\", new List<object> { \"first\", \"second\", \"third\", \"fourth\" })",
 +                "go": "g.AddV(\"data\").Property(\"list\", []interface{}{\"first\", \"second\", \"third\", \"fourth\"})",
 +                "groovy": "g.addV(\"data\").property(\"list\", [\"first\", \"second\", \"third\", \"fourth\"])",
 +                "java": "g.addV(\"data\").property(\"list\", new ArrayList<Object>() {{ add(\"first\"); add(\"second\"); add(\"third\"); add(\"fourth\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"list\", [\"first\", \"second\", \"third\", \"fourth\"])",
 +                "python": "g.add_v('data').property('list', ['first', 'second', 'third', 'fourth'])"
 +            },
 +            {
 +                "original": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold().range(1, 3)",
 +                "language": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold().range(1, 3)",
 +                "canonical": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold().range(1, 3)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LIST)).unfold().range(number0, number1)",
 +                "dotnet": "g.V().Values<object>(\"list\").Is(P.TypeOf(GType.List)).Unfold<object>().Range<object>(1, 3)",
 +                "go": "g.V().Values(\"list\").Is(gremlingo.P.TypeOf(gremlingo.GType.List)).Unfold().Range(1, 3)",
 +                "groovy": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold().range(1, 3)",
 +                "java": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).unfold().range(1, 3)",
 +                "javascript": "g.V().values(\"list\").is(P.typeOf(GType.list)).unfold().range(1, 3)",
 +                "python": "g.V().values('list').is_(P.type_of(GType.LIST)).unfold().range_(1, 3)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlistX_isXtypeOfXGType_LISTXX_project_byXidentityX_byXcountXlocalX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"list\", [\"apple\", \"banana\"])",
 +                "language": "g.addV(\"data\").property(\"list\", [\"apple\", \"banana\"])",
 +                "canonical": "g.addV(\"data\").property(\"list\", [\"apple\", \"banana\"])",
 +                "anonymized": "g.addV(string0).property(string1, list0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"list\", new List<object> { \"apple\", \"banana\" })",
 +                "go": "g.AddV(\"data\").Property(\"list\", []interface{}{\"apple\", \"banana\"})",
 +                "groovy": "g.addV(\"data\").property(\"list\", [\"apple\", \"banana\"])",
 +                "java": "g.addV(\"data\").property(\"list\", new ArrayList<Object>() {{ add(\"apple\"); add(\"banana\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"list\", [\"apple\", \"banana\"])",
 +                "python": "g.add_v('data').property('list', ['apple', 'banana'])"
 +            },
 +            {
 +                "original": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).project(\"original\", \"size\").by(identity()).by(count(local))",
 +                "language": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).project(\"original\", \"size\").by(__.identity()).by(__.count(Scope.local))",
 +                "canonical": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).project(\"original\", \"size\").by(__.identity()).by(__.count(Scope.local))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LIST)).project(string1, string2).by(__.identity()).by(__.count(Scope.local))",
 +                "dotnet": "g.V().Values<object>(\"list\").Is(P.TypeOf(GType.List)).Project<object>(\"original\", \"size\").By(__.Identity()).By(__.Count(Scope.Local))",
 +                "go": "g.V().Values(\"list\").Is(gremlingo.P.TypeOf(gremlingo.GType.List)).Project(\"original\", \"size\").By(gremlingo.T__.Identity()).By(gremlingo.T__.Count(gremlingo.Scope.Local))",
 +                "groovy": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).project(\"original\", \"size\").by(__.identity()).by(__.count(Scope.local))",
 +                "java": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).project(\"original\", \"size\").by(__.identity()).by(__.count(Scope.local))",
 +                "javascript": "g.V().values(\"list\").is(P.typeOf(GType.list)).project(\"original\", \"size\").by(__.identity()).by(__.count(Scope.local))",
 +                "python": "g.V().values('list').is_(P.type_of(GType.LIST)).project('original', 'size').by(__.identity()).by(__.count(Scope.local))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlistX_isXtypeOfXGType_LISTXX_whereXcountXlocalX_isXgtX2XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"list\", [1]).addV(\"data\").property(\"list\", [1, 2, 3])",
 +                "language": "g.addV(\"data\").property(\"list\", [1]).addV(\"data\").property(\"list\", [1, 2, 3])",
 +                "canonical": "g.addV(\"data\").property(\"list\", [1]).addV(\"data\").property(\"list\", [1, 2, 3])",
 +                "anonymized": "g.addV(string0).property(string1, list0).addV(string0).property(string1, list1)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"list\", new List<object> { 1 }).AddV((string) \"data\").Property(\"list\", new List<object> { 1, 2, 3 })",
 +                "go": "g.AddV(\"data\").Property(\"list\", []interface{}{1}).AddV(\"data\").Property(\"list\", []interface{}{1, 2, 3})",
 +                "groovy": "g.addV(\"data\").property(\"list\", [1]).addV(\"data\").property(\"list\", [1, 2, 3])",
 +                "java": "g.addV(\"data\").property(\"list\", new ArrayList<Object>() {{ add(1); }}).addV(\"data\").property(\"list\", new ArrayList<Object>() {{ add(1); add(2); add(3); }})",
 +                "javascript": "g.addV(\"data\").property(\"list\", [1]).addV(\"data\").property(\"list\", [1, 2, 3])",
 +                "python": "g.add_v('data').property('list', [1]).add_v('data').property('list', [1, 2, 3])"
 +            },
 +            {
 +                "original": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).where(count(local).is(P.gt(2)))",
 +                "language": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).where(__.count(Scope.local).is(P.gt(2)))",
 +                "canonical": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).where(__.count(Scope.local).is(P.gt(2)))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LIST)).where(__.count(Scope.local).is(P.gt(number0)))",
 +                "dotnet": "g.V().Values<object>(\"list\").Is(P.TypeOf(GType.List)).Where(__.Count(Scope.Local).Is(P.Gt(2)))",
 +                "go": "g.V().Values(\"list\").Is(gremlingo.P.TypeOf(gremlingo.GType.List)).Where(gremlingo.T__.Count(gremlingo.Scope.Local).Is(gremlingo.P.Gt(2)))",
 +                "groovy": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).where(__.count(Scope.local).is(P.gt(2)))",
 +                "java": "g.V().values(\"list\").is(P.typeOf(GType.LIST)).where(__.count(Scope.local).is(P.gt(2)))",
 +                "javascript": "g.V().values(\"list\").is(P.typeOf(GType.list)).where(__.count(Scope.local).is(P.gt(2)))",
 +                "python": "g.V().values('list').is_(P.type_of(GType.LIST)).where(__.count(Scope.local).is_(P.gt(2)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXlistX_isXtypeOfXGType_LISTXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject([\"test\"]).is(P.typeOf(GType.LIST)).groupCount()",
 +                "language": "g.inject([\"test\"]).is(P.typeOf(GType.LIST)).groupCount()",
 +                "canonical": "g.inject([\"test\"]).is(P.typeOf(GType.LIST)).groupCount()",
 +                "anonymized": "g.inject(list0).is(P.typeOf(GType.LIST)).groupCount()",
 +                "dotnet": "g.Inject<object>(new List<object> { \"test\" }).Is(P.TypeOf(GType.List)).GroupCount<object>()",
 +                "go": "g.Inject([]interface{}{\"test\"}).Is(gremlingo.P.TypeOf(gremlingo.GType.List)).GroupCount()",
 +                "groovy": "g.inject([\"test\"]).is(P.typeOf(GType.LIST)).groupCount()",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(\"test\"); }}).is(P.typeOf(GType.LIST)).groupCount()",
 +                "javascript": "g.inject([\"test\"]).is(P.typeOf(GType.list)).groupCount()",
 +                "python": "g.inject(['test']).is_(P.type_of(GType.LIST)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlongX_isXtypeOfXGType_LONGXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"long\", 1L)",
 +                "language": "g.addV(\"data\").property(\"long\", 1l)",
 +                "canonical": "g.addV(\"data\").property(\"long\", 1l)",
 +                "anonymized": "g.addV(string0).property(string1, long0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"long\", 1l)",
 +                "go": "g.AddV(\"data\").Property(\"long\", int64(1))",
 +                "groovy": "g.addV(\"data\").property(\"long\", 1l)",
 +                "java": "g.addV(\"data\").property(\"long\", 1l)",
 +                "javascript": "g.addV(\"data\").property(\"long\", 1)",
 +                "python": "g.add_v('data').property('long', long(1))"
 +            },
 +            {
 +                "original": "g.V().values(\"long\").is(P.typeOf(GType.LONG))",
 +                "language": "g.V().values(\"long\").is(P.typeOf(GType.LONG))",
 +                "canonical": "g.V().values(\"long\").is(P.typeOf(GType.LONG))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LONG))",
 +                "dotnet": "g.V().Values<object>(\"long\").Is(P.TypeOf(GType.Long))",
 +                "go": "g.V().Values(\"long\").Is(gremlingo.P.TypeOf(gremlingo.GType.Long))",
 +                "groovy": "g.V().values(\"long\").is(P.typeOf(GType.LONG))",
 +                "java": "g.V().values(\"long\").is(P.typeOf(GType.LONG))",
 +                "javascript": "g.V().values(\"long\").is(P.typeOf(GType.long))",
 +                "python": "g.V().values('long').is_(P.type_of(GType.LONG))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXlong_typeOfXGType_LONGXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"name\", \"test\").property(\"long\", 1L)",
 +                "language": "g.addV(\"data\").property(\"name\", \"test\").property(\"long\", 1l)",
 +                "canonical": "g.addV(\"data\").property(\"name\", \"test\").property(\"long\", 1l)",
 +                "anonymized": "g.addV(string0).property(string1, string2).property(string3, long0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"name\", \"test\").Property(\"long\", 1l)",
 +                "go": "g.AddV(\"data\").Property(\"name\", \"test\").Property(\"long\", int64(1))",
 +                "groovy": "g.addV(\"data\").property(\"name\", \"test\").property(\"long\", 1l)",
 +                "java": "g.addV(\"data\").property(\"name\", \"test\").property(\"long\", 1l)",
 +                "javascript": "g.addV(\"data\").property(\"name\", \"test\").property(\"long\", 1)",
 +                "python": "g.add_v('data').property('name', 'test').property('long', long(1))"
 +            },
 +            {
 +                "original": "g.V().has(\"long\", P.typeOf(GType.LONG)).values(\"name\")",
 +                "language": "g.V().has(\"long\", P.typeOf(GType.LONG)).values(\"name\")",
 +                "canonical": "g.V().has(\"long\", P.typeOf(GType.LONG)).values(\"name\")",
 +                "anonymized": "g.V().has(string0, P.typeOf(GType.LONG)).values(string1)",
 +                "dotnet": "g.V().Has(\"long\", P.TypeOf(GType.Long)).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"long\", gremlingo.P.TypeOf(gremlingo.GType.Long)).Values(\"name\")",
 +                "groovy": "g.V().has(\"long\", P.typeOf(GType.LONG)).values(\"name\")",
 +                "java": "g.V().has(\"long\", P.typeOf(GType.LONG)).values(\"name\")",
 +                "javascript": "g.V().has(\"long\", P.typeOf(GType.long)).values(\"name\")",
 +                "python": "g.V().has('long', P.type_of(GType.LONG)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlongX_isXtypeOfXGType_LONGXX_mathXmulX2XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"long\", 5L)",
 +                "language": "g.addV(\"data\").property(\"long\", 5l)",
 +                "canonical": "g.addV(\"data\").property(\"long\", 5l)",
 +                "anonymized": "g.addV(string0).property(string1, long0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"long\", 5l)",
 +                "go": "g.AddV(\"data\").Property(\"long\", int64(5))",
 +                "groovy": "g.addV(\"data\").property(\"long\", 5l)",
 +                "java": "g.addV(\"data\").property(\"long\", 5l)",
 +                "javascript": "g.addV(\"data\").property(\"long\", 5)",
 +                "python": "g.add_v('data').property('long', long(5))"
 +            },
 +            {
 +                "original": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).math(\"_ * 2\")",
 +                "language": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).math(\"_ * 2\")",
 +                "canonical": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).math(\"_ * 2\")",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LONG)).math(string1)",
 +                "dotnet": "g.V().Values<object>(\"long\").Is(P.TypeOf(GType.Long)).Math(\"_ * 2\")",
 +                "go": "g.V().Values(\"long\").Is(gremlingo.P.TypeOf(gremlingo.GType.Long)).Math(\"_ * 2\")",
 +                "groovy": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).math(\"_ * 2\")",
 +                "java": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).math(\"_ * 2\")",
 +                "javascript": "g.V().values(\"long\").is(P.typeOf(GType.long)).math(\"_ * 2\")",
 +                "python": "g.V().values('long').is_(P.type_of(GType.LONG)).math('_ * 2')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlongX_isXtypeOfXGType_LONGXX_isXgtX5XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"long\", 10L)",
 +                "language": "g.addV(\"data\").property(\"long\", 10l)",
 +                "canonical": "g.addV(\"data\").property(\"long\", 10l)",
 +                "anonymized": "g.addV(string0).property(string1, long0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"long\", 10l)",
 +                "go": "g.AddV(\"data\").Property(\"long\", int64(10))",
 +                "groovy": "g.addV(\"data\").property(\"long\", 10l)",
 +                "java": "g.addV(\"data\").property(\"long\", 10l)",
 +                "javascript": "g.addV(\"data\").property(\"long\", 10)",
 +                "python": "g.add_v('data').property('long', long(10))"
 +            },
 +            {
 +                "original": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).is(P.gt(5L))",
 +                "language": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).is(P.gt(5l))",
 +                "canonical": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).is(P.gt(5l))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LONG)).is(P.gt(long0))",
 +                "dotnet": "g.V().Values<object>(\"long\").Is(P.TypeOf(GType.Long)).Is(P.Gt(5l))",
 +                "go": "g.V().Values(\"long\").Is(gremlingo.P.TypeOf(gremlingo.GType.Long)).Is(gremlingo.P.Gt(int64(5)))",
 +                "groovy": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).is(P.gt(5l))",
 +                "java": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).is(P.gt(5l))",
 +                "javascript": "g.V().values(\"long\").is(P.typeOf(GType.long)).is(P.gt(5))",
 +                "python": "g.V().values('long').is_(P.type_of(GType.LONG)).is_(P.gt(long(5)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlongX_isXtypeOfXGType_LONGXX_sumX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"long\", 1L).addV(\"data\").property(\"long\", 2L).addV(\"data\").property(\"long\", 3L)",
 +                "language": "g.addV(\"data\").property(\"long\", 1l).addV(\"data\").property(\"long\", 2l).addV(\"data\").property(\"long\", 3l)",
 +                "canonical": "g.addV(\"data\").property(\"long\", 1l).addV(\"data\").property(\"long\", 2l).addV(\"data\").property(\"long\", 3l)",
 +                "anonymized": "g.addV(string0).property(string1, long0).addV(string0).property(string1, long1).addV(string0).property(string1, long2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"long\", 1l).AddV((string) \"data\").Property(\"long\", 2l).AddV((string) \"data\").Property(\"long\", 3l)",
 +                "go": "g.AddV(\"data\").Property(\"long\", int64(1)).AddV(\"data\").Property(\"long\", int64(2)).AddV(\"data\").Property(\"long\", int64(3))",
 +                "groovy": "g.addV(\"data\").property(\"long\", 1l).addV(\"data\").property(\"long\", 2l).addV(\"data\").property(\"long\", 3l)",
 +                "java": "g.addV(\"data\").property(\"long\", 1l).addV(\"data\").property(\"long\", 2l).addV(\"data\").property(\"long\", 3l)",
 +                "javascript": "g.addV(\"data\").property(\"long\", 1).addV(\"data\").property(\"long\", 2).addV(\"data\").property(\"long\", 3)",
 +                "python": "g.add_v('data').property('long', long(1)).add_v('data').property('long', long(2)).add_v('data').property('long', long(3))"
 +            },
 +            {
 +                "original": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).sum()",
 +                "language": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).sum()",
 +                "canonical": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).sum()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LONG)).sum()",
 +                "dotnet": "g.V().Values<object>(\"long\").Is(P.TypeOf(GType.Long)).Sum<object>()",
 +                "go": "g.V().Values(\"long\").Is(gremlingo.P.TypeOf(gremlingo.GType.Long)).Sum()",
 +                "groovy": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).sum()",
 +                "java": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).sum()",
 +                "javascript": "g.V().values(\"long\").is(P.typeOf(GType.long)).sum()",
 +                "python": "g.V().values('long').is_(P.type_of(GType.LONG)).sum_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXlongX_isXtypeOfXGType_LONGXX_localXaggregateXaXX_capXaX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"long\", 100L)",
 +                "language": "g.addV(\"data\").property(\"long\", 100l)",
 +                "canonical": "g.addV(\"data\").property(\"long\", 100l)",
 +                "anonymized": "g.addV(string0).property(string1, long0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"long\", 100l)",
 +                "go": "g.AddV(\"data\").Property(\"long\", int64(100))",
 +                "groovy": "g.addV(\"data\").property(\"long\", 100l)",
 +                "java": "g.addV(\"data\").property(\"long\", 100l)",
 +                "javascript": "g.addV(\"data\").property(\"long\", 100)",
 +                "python": "g.add_v('data').property('long', long(100))"
 +            },
 +            {
 +                "original": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).local(aggregate(\"a\")).cap(\"a\")",
 +                "language": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "canonical": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.LONG)).local(__.aggregate(string1)).cap(string1)",
 +                "dotnet": "g.V().Values<object>(\"long\").Is(P.TypeOf(GType.Long)).Local<object>(__.Aggregate(\"a\")).Cap<object>(\"a\")",
 +                "go": "g.V().Values(\"long\").Is(gremlingo.P.TypeOf(gremlingo.GType.Long)).Local(gremlingo.T__.Aggregate(\"a\")).Cap(\"a\")",
 +                "groovy": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "java": "g.V().values(\"long\").is(P.typeOf(GType.LONG)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "javascript": "g.V().values(\"long\").is(P.typeOf(GType.long)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "python": "g.V().values('long').is_(P.type_of(GType.LONG)).local(__.aggregate('a')).cap('a')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_valueMap_isXtypeOfXGType_MAPXX_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").valueMap().is(P.typeOf(GType.MAP)).count()",
 +                "language": "g.V().hasLabel(\"person\").valueMap().is(P.typeOf(GType.MAP)).count()",
 +                "canonical": "g.V().hasLabel(\"person\").valueMap().is(P.typeOf(GType.MAP)).count()",
 +                "anonymized": "g.V().hasLabel(string0).valueMap().is(P.typeOf(GType.MAP)).count()",
 +                "dotnet": "g.V().HasLabel(\"person\").ValueMap<object, object>().Is(P.TypeOf(GType.Map)).Count()",
 +                "go": "g.V().HasLabel(\"person\").ValueMap().Is(gremlingo.P.TypeOf(gremlingo.GType.Map)).Count()",
 +                "groovy": "g.V().hasLabel(\"person\").valueMap().is(P.typeOf(GType.MAP)).count()",
 +                "java": "g.V().hasLabel(\"person\").valueMap().is(P.typeOf(GType.MAP)).count()",
 +                "javascript": "g.V().hasLabel(\"person\").valueMap().is(P.typeOf(GType.map)).count()",
 +                "python": "g.V().has_label('person').value_map().is_(P.type_of(GType.MAP)).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_groupCount_byXlabelX_isXtypeOfXGType_MAPX",
 +        "traversals": [
 +            {
 +                "original": "g.V().groupCount().by(label).is(P.typeOf(GType.MAP))",
 +                "language": "g.V().groupCount().by(T.label).is(P.typeOf(GType.MAP))",
 +                "canonical": "g.V().groupCount().by(T.label).is(P.typeOf(GType.MAP))",
 +                "anonymized": "g.V().groupCount().by(T.label).is(P.typeOf(GType.MAP))",
 +                "dotnet": "g.V().GroupCount<object>().By(T.Label).Is(P.TypeOf(GType.Map))",
 +                "go": "g.V().GroupCount().By(gremlingo.T.Label).Is(gremlingo.P.TypeOf(gremlingo.GType.Map))",
 +                "groovy": "g.V().groupCount().by(T.label).is(P.typeOf(GType.MAP))",
 +                "java": "g.V().groupCount().by(T.label).is(P.typeOf(GType.MAP))",
 +                "javascript": "g.V().groupCount().by(T.label).is(P.typeOf(GType.map))",
 +                "python": "g.V().group_count().by(T.label).is_(P.type_of(GType.MAP))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_MAPXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.MAP))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.MAP))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.MAP))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.MAP))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Map))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Map))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.MAP))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.MAP))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.map))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.MAP))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXmapX_isXtypeOfXGType_MAPXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"map\", [\"key1\": \"1\", \"key2\": \"2\"])",
 +                "language": "g.addV(\"data\").property(\"map\", [\"key1\":\"1\", \"key2\":\"2\"])",
 +                "canonical": "g.addV(\"data\").property(\"map\", [\"key1\":\"1\", \"key2\":\"2\"])",
 +                "anonymized": "g.addV(string0).property(string1, map0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"map\", new Dictionary<object, object> {{ \"key1\", \"1\" }, { \"key2\", \"2\" }})",
 +                "go": "g.AddV(\"data\").Property(\"map\", map[interface{}]interface{}{\"key1\": \"1\", \"key2\": \"2\" })",
 +                "groovy": "g.addV(\"data\").property(\"map\", [\"key1\":\"1\", \"key2\":\"2\"])",
 +                "java": "g.addV(\"data\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"key1\", \"1\"); put(\"key2\", \"2\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"map\", new Map([[\"key1\", \"1\"], [\"key2\", \"2\"]]))",
 +                "python": "g.add_v('data').property('map', { 'key1': '1', 'key2': '2' })"
 +            },
 +            {
 +                "original": "g.V().values(\"map\").is(P.typeOf(GType.MAP))",
 +                "language": "g.V().values(\"map\").is(P.typeOf(GType.MAP))",
 +                "canonical": "g.V().values(\"map\").is(P.typeOf(GType.MAP))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.MAP))",
 +                "dotnet": "g.V().Values<object>(\"map\").Is(P.TypeOf(GType.Map))",
 +                "go": "g.V().Values(\"map\").Is(gremlingo.P.TypeOf(gremlingo.GType.Map))",
 +                "groovy": "g.V().values(\"map\").is(P.typeOf(GType.MAP))",
 +                "java": "g.V().values(\"map\").is(P.typeOf(GType.MAP))",
 +                "javascript": "g.V().values(\"map\").is(P.typeOf(GType.map))",
 +                "python": "g.V().values('map').is_(P.type_of(GType.MAP))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXmap_typeOfXGType_MAPXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"name\", \"test\").property(\"map\", [\"a\": 1, \"b\": 2])",
 +                "language": "g.addV(\"data\").property(\"name\", \"test\").property(\"map\", [\"a\":1, \"b\":2])",
 +                "canonical": "g.addV(\"data\").property(\"name\", \"test\").property(\"map\", [\"a\":1, \"b\":2])",
 +                "anonymized": "g.addV(string0).property(string1, string2).property(string3, map0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"name\", \"test\").Property(\"map\", new Dictionary<object, object> {{ \"a\", 1 }, { \"b\", 2 }})",
 +                "go": "g.AddV(\"data\").Property(\"name\", \"test\").Property(\"map\", map[interface{}]interface{}{\"a\": 1, \"b\": 2 })",
 +                "groovy": "g.addV(\"data\").property(\"name\", \"test\").property(\"map\", [\"a\":1, \"b\":2])",
 +                "java": "g.addV(\"data\").property(\"name\", \"test\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"a\", 1); put(\"b\", 2); }})",
 +                "javascript": "g.addV(\"data\").property(\"name\", \"test\").property(\"map\", new Map([[\"a\", 1], [\"b\", 2]]))",
 +                "python": "g.add_v('data').property('name', 'test').property('map', { 'a': 1, 'b': 2 })"
 +            },
 +            {
 +                "original": "g.V().has(\"map\", P.typeOf(GType.MAP)).values(\"name\")",
 +                "language": "g.V().has(\"map\", P.typeOf(GType.MAP)).values(\"name\")",
 +                "canonical": "g.V().has(\"map\", P.typeOf(GType.MAP)).values(\"name\")",
 +                "anonymized": "g.V().has(string0, P.typeOf(GType.MAP)).values(string1)",
 +                "dotnet": "g.V().Has(\"map\", P.TypeOf(GType.Map)).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"map\", gremlingo.P.TypeOf(gremlingo.GType.Map)).Values(\"name\")",
 +                "groovy": "g.V().has(\"map\", P.typeOf(GType.MAP)).values(\"name\")",
 +                "java": "g.V().has(\"map\", P.typeOf(GType.MAP)).values(\"name\")",
 +                "javascript": "g.V().has(\"map\", P.typeOf(GType.map)).values(\"name\")",
 +                "python": "g.V().has('map', P.type_of(GType.MAP)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXmapX_isXtypeOfXGType_MAPXX_countXlocalX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"map\", [\"a\": 1, \"b\": 2, \"c\": 3])",
 +                "language": "g.addV(\"data\").property(\"map\", [\"a\":1, \"b\":2, \"c\":3])",
 +                "canonical": "g.addV(\"data\").property(\"map\", [\"a\":1, \"b\":2, \"c\":3])",
 +                "anonymized": "g.addV(string0).property(string1, map0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"map\", new Dictionary<object, object> {{ \"a\", 1 }, { \"b\", 2 }, { \"c\", 3 }})",
 +                "go": "g.AddV(\"data\").Property(\"map\", map[interface{}]interface{}{\"a\": 1, \"b\": 2, \"c\": 3 })",
 +                "groovy": "g.addV(\"data\").property(\"map\", [\"a\":1, \"b\":2, \"c\":3])",
 +                "java": "g.addV(\"data\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"a\", 1); put(\"b\", 2); put(\"c\", 3); }})",
 +                "javascript": "g.addV(\"data\").property(\"map\", new Map([[\"a\", 1], [\"b\", 2], [\"c\", 3]]))",
 +                "python": "g.add_v('data').property('map', { 'a': 1, 'b': 2, 'c': 3 })"
 +            },
 +            {
 +                "original": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).count(local)",
 +                "language": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).count(Scope.local)",
 +                "canonical": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).count(Scope.local)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.MAP)).count(Scope.local)",
 +                "dotnet": "g.V().Values<object>(\"map\").Is(P.TypeOf(GType.Map)).Count(Scope.Local)",
 +                "go": "g.V().Values(\"map\").Is(gremlingo.P.TypeOf(gremlingo.GType.Map)).Count(gremlingo.Scope.Local)",
 +                "groovy": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).count(Scope.local)",
 +                "java": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).count(Scope.local)",
 +                "javascript": "g.V().values(\"map\").is(P.typeOf(GType.map)).count(Scope.local)",
 +                "python": "g.V().values('map').is_(P.type_of(GType.MAP)).count(Scope.local)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXmapX_isXtypeOfXGType_MAPXX_selectXvaluesX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"map\", [\"city\": \"NYC\", \"country\": \"USA\"])",
 +                "language": "g.addV(\"data\").property(\"map\", [\"city\":\"NYC\", \"country\":\"USA\"])",
 +                "canonical": "g.addV(\"data\").property(\"map\", [\"city\":\"NYC\", \"country\":\"USA\"])",
 +                "anonymized": "g.addV(string0).property(string1, map0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"map\", new Dictionary<object, object> {{ \"city\", \"NYC\" }, { \"country\", \"USA\" }})",
 +                "go": "g.AddV(\"data\").Property(\"map\", map[interface{}]interface{}{\"city\": \"NYC\", \"country\": \"USA\" })",
 +                "groovy": "g.addV(\"data\").property(\"map\", [\"city\":\"NYC\", \"country\":\"USA\"])",
 +                "java": "g.addV(\"data\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"city\", \"NYC\"); put(\"country\", \"USA\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"map\", new Map([[\"city\", \"NYC\"], [\"country\", \"USA\"]]))",
 +                "python": "g.add_v('data').property('map', { 'city': 'NYC', 'country': 'USA' })"
 +            },
 +            {
 +                "original": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).select(values)",
 +                "language": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).select(Column.values)",
 +                "canonical": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).select(Column.values)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.MAP)).select(Column.values)",
 +                "dotnet": "g.V().Values<object>(\"map\").Is(P.TypeOf(GType.Map)).Select<object>(Column.Values)",
 +                "go": "g.V().Values(\"map\").Is(gremlingo.P.TypeOf(gremlingo.GType.Map)).Select(gremlingo.Column.Values)",
 +                "groovy": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).select(Column.values)",
 +                "java": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).select(Column.values)",
 +                "javascript": "g.V().values(\"map\").is(P.typeOf(GType.map)).select(Column.values)",
 +                "python": "g.V().values('map').is_(P.type_of(GType.MAP)).select(Column.values)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXmapX_isXtypeOfXGType_MAPXX_whereX_countXlocalX_isXgtX1XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"map\", [\"single\": \"value\"]).addV(\"data\").property(\"map\", [\"key1\": \"1\", \"key2\": \"2\"])",
 +                "language": "g.addV(\"data\").property(\"map\", [\"single\":\"value\"]).addV(\"data\").property(\"map\", [\"key1\":\"1\", \"key2\":\"2\"])",
 +                "canonical": "g.addV(\"data\").property(\"map\", [\"single\":\"value\"]).addV(\"data\").property(\"map\", [\"key1\":\"1\", \"key2\":\"2\"])",
 +                "anonymized": "g.addV(string0).property(string1, map0).addV(string0).property(string1, map1)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"map\", new Dictionary<object, object> {{ \"single\", \"value\" }}).AddV((string) \"data\").Property(\"map\", new Dictionary<object, object> {{ \"key1\", \"1\" }, { \"key2\", \"2\" }})",
 +                "go": "g.AddV(\"data\").Property(\"map\", map[interface{}]interface{}{\"single\": \"value\" }).AddV(\"data\").Property(\"map\", map[interface{}]interface{}{\"key1\": \"1\", \"key2\": \"2\" })",
 +                "groovy": "g.addV(\"data\").property(\"map\", [\"single\":\"value\"]).addV(\"data\").property(\"map\", [\"key1\":\"1\", \"key2\":\"2\"])",
 +                "java": "g.addV(\"data\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"single\", \"value\"); }}).addV(\"data\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"key1\", \"1\"); put(\"key2\", \"2\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"map\", new Map([[\"single\", \"value\"]])).addV(\"data\").property(\"map\", new Map([[\"key1\", \"1\"], [\"key2\", \"2\"]]))",
 +                "python": "g.add_v('data').property('map', { 'single': 'value' }).add_v('data').property('map', { 'key1': '1', 'key2': '2' })"
 +            },
 +            {
 +                "original": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).where(count(local).is(P.gt(1)))",
 +                "language": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).where(__.count(Scope.local).is(P.gt(1)))",
 +                "canonical": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).where(__.count(Scope.local).is(P.gt(1)))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.MAP)).where(__.count(Scope.local).is(P.gt(number0)))",
 +                "dotnet": "g.V().Values<object>(\"map\").Is(P.TypeOf(GType.Map)).Where(__.Count(Scope.Local).Is(P.Gt(1)))",
 +                "go": "g.V().Values(\"map\").Is(gremlingo.P.TypeOf(gremlingo.GType.Map)).Where(gremlingo.T__.Count(gremlingo.Scope.Local).Is(gremlingo.P.Gt(1)))",
 +                "groovy": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).where(__.count(Scope.local).is(P.gt(1)))",
 +                "java": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).where(__.count(Scope.local).is(P.gt(1)))",
 +                "javascript": "g.V().values(\"map\").is(P.typeOf(GType.map)).where(__.count(Scope.local).is(P.gt(1)))",
 +                "python": "g.V().values('map').is_(P.type_of(GType.MAP)).where(__.count(Scope.local).is_(P.gt(1)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXmapX_isXtypeOfXGType_MAPXX_foldX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"map\", [\"a\": 1]).addV(\"data\").property(\"map\", [\"b\": 2, \"c\": 3])",
 +                "language": "g.addV(\"data\").property(\"map\", [\"a\":1]).addV(\"data\").property(\"map\", [\"b\":2, \"c\":3])",
 +                "canonical": "g.addV(\"data\").property(\"map\", [\"a\":1]).addV(\"data\").property(\"map\", [\"b\":2, \"c\":3])",
 +                "anonymized": "g.addV(string0).property(string1, map0).addV(string0).property(string1, map1)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"map\", new Dictionary<object, object> {{ \"a\", 1 }}).AddV((string) \"data\").Property(\"map\", new Dictionary<object, object> {{ \"b\", 2 }, { \"c\", 3 }})",
 +                "go": "g.AddV(\"data\").Property(\"map\", map[interface{}]interface{}{\"a\": 1 }).AddV(\"data\").Property(\"map\", map[interface{}]interface{}{\"b\": 2, \"c\": 3 })",
 +                "groovy": "g.addV(\"data\").property(\"map\", [\"a\":1]).addV(\"data\").property(\"map\", [\"b\":2, \"c\":3])",
 +                "java": "g.addV(\"data\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"a\", 1); }}).addV(\"data\").property(\"map\", new LinkedHashMap<Object, Object>() {{ put(\"b\", 2); put(\"c\", 3); }})",
 +                "javascript": "g.addV(\"data\").property(\"map\", new Map([[\"a\", 1]])).addV(\"data\").property(\"map\", new Map([[\"b\", 2], [\"c\", 3]]))",
 +                "python": "g.add_v('data').property('map', { 'a': 1 }).add_v('data').property('map', { 'b': 2, 'c': 3 })"
 +            },
 +            {
 +                "original": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).fold()",
 +                "language": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).fold()",
 +                "canonical": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).fold()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.MAP)).fold()",
 +                "dotnet": "g.V().Values<object>(\"map\").Is(P.TypeOf(GType.Map)).Fold()",
 +                "go": "g.V().Values(\"map\").Is(gremlingo.P.TypeOf(gremlingo.GType.Map)).Fold()",
 +                "groovy": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).fold()",
 +                "java": "g.V().values(\"map\").is(P.typeOf(GType.MAP)).fold()",
 +                "javascript": "g.V().values(\"map\").is(P.typeOf(GType.map)).fold()",
 +                "python": "g.V().values('map').is_(P.type_of(GType.MAP)).fold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valueXnameX_aggregateXxX_capXxX_isXtypeOfXGType_SETX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"name\").aggregate(\"x\").cap(\"x\").is(P.typeOf(GType.SET))",
 +                "language": "g.V().values(\"name\").aggregate(\"x\").cap(\"x\").is(P.typeOf(GType.SET))",
 +                "canonical": "g.V().values(\"name\").aggregate(\"x\").cap(\"x\").is(P.typeOf(GType.SET))",
 +                "anonymized": "g.V().values(string0).aggregate(string1).cap(string1).is(P.typeOf(GType.SET))",
 +                "dotnet": "g.V().Values<object>(\"name\").Aggregate(\"x\").Cap<object>(\"x\").Is(P.TypeOf(GType.Set))",
 +                "go": "g.V().Values(\"name\").Aggregate(\"x\").Cap(\"x\").Is(gremlingo.P.TypeOf(gremlingo.GType.Set))",
 +                "groovy": "g.V().values(\"name\").aggregate(\"x\").cap(\"x\").is(P.typeOf(GType.SET))",
 +                "java": "g.V().values(\"name\").aggregate(\"x\").cap(\"x\").is(P.typeOf(GType.SET))",
 +                "javascript": "g.V().values(\"name\").aggregate(\"x\").cap(\"x\").is(P.typeOf(GType.set))",
 +                "python": "g.V().values('name').aggregate('x').cap('x').is_(P.type_of(GType.SET))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_SETXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.SET))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.SET))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.SET))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.SET))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Set))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Set))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.SET))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.SET))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.set))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.SET))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valueMap_selectXkeysX_dedup_isXtypeOfXGType_SETXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().valueMap().select(keys).dedup().is(P.typeOf(GType.SET))",
 +                "language": "g.V().valueMap().select(Column.keys).dedup().is(P.typeOf(GType.SET))",
 +                "canonical": "g.V().valueMap().select(Column.keys).dedup().is(P.typeOf(GType.SET))",
 +                "anonymized": "g.V().valueMap().select(Column.keys).dedup().is(P.typeOf(GType.SET))",
 +                "dotnet": "g.V().ValueMap<object, object>().Select<object>(Column.Keys).Dedup().Is(P.TypeOf(GType.Set))",
 +                "go": "g.V().ValueMap().Select(gremlingo.Column.Keys).Dedup().Is(gremlingo.P.TypeOf(gremlingo.GType.Set))",
 +                "groovy": "g.V().valueMap().select(Column.keys).dedup().is(P.typeOf(GType.SET))",
 +                "java": "g.V().valueMap().select(Column.keys).dedup().is(P.typeOf(GType.SET))",
 +                "javascript": "g.V().valueMap().select(Column.keys).dedup().is(P.typeOf(GType.set))",
 +                "python": "g.V().value_map().select(Column.keys).dedup().is_(P.type_of(GType.SET))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXsetX_isXtypeOfXGType_SETXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"set\", {\"a\", \"b\", \"c\"})",
 +                "language": "g.addV(\"data\").property(\"set\", {\"a\", \"b\", \"c\"})",
 +                "canonical": "g.addV(\"data\").property(\"set\", {\"a\", \"b\", \"c\"})",
 +                "anonymized": "g.addV(string0).property(string1, set0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"set\", new HashSet<object> { \"a\", \"b\", \"c\" })",
 +                "go": "g.AddV(\"data\").Property(\"set\", gremlingo.NewSimpleSet(\"a\", \"b\", \"c\"))",
 +                "groovy": "g.addV(\"data\").property(\"set\", [\"a\", \"b\", \"c\"] as Set)",
 +                "java": "g.addV(\"data\").property(\"set\", new HashSet<Object>() {{ add(\"a\"); add(\"b\"); add(\"c\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"set\", new Set([\"a\", \"b\", \"c\"]))",
 +                "python": "g.add_v('data').property('set', {'a', 'b', 'c'})"
 +            },
 +            {
 +                "original": "g.V().values(\"set\").is(P.typeOf(GType.SET))",
 +                "language": "g.V().values(\"set\").is(P.typeOf(GType.SET))",
 +                "canonical": "g.V().values(\"set\").is(P.typeOf(GType.SET))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.SET))",
 +                "dotnet": "g.V().Values<object>(\"set\").Is(P.TypeOf(GType.Set))",
 +                "go": "g.V().Values(\"set\").Is(gremlingo.P.TypeOf(gremlingo.GType.Set))",
 +                "groovy": "g.V().values(\"set\").is(P.typeOf(GType.SET))",
 +                "java": "g.V().values(\"set\").is(P.typeOf(GType.SET))",
 +                "javascript": "g.V().values(\"set\").is(P.typeOf(GType.set))",
 +                "python": "g.V().values('set').is_(P.type_of(GType.SET))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXset_typeOfXGType_SETXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"name\", \"test\").property(\"set\", {1, 2, 3})",
 +                "language": "g.addV(\"data\").property(\"name\", \"test\").property(\"set\", {1, 2, 3})",
 +                "canonical": "g.addV(\"data\").property(\"name\", \"test\").property(\"set\", {1, 2, 3})",
 +                "anonymized": "g.addV(string0).property(string1, string2).property(string3, set0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"name\", \"test\").Property(\"set\", new HashSet<object> { 1, 2, 3 })",
 +                "go": "g.AddV(\"data\").Property(\"name\", \"test\").Property(\"set\", gremlingo.NewSimpleSet(1, 2, 3))",
 +                "groovy": "g.addV(\"data\").property(\"name\", \"test\").property(\"set\", [1, 2, 3] as Set)",
 +                "java": "g.addV(\"data\").property(\"name\", \"test\").property(\"set\", new HashSet<Object>() {{ add(1); add(2); add(3); }})",
 +                "javascript": "g.addV(\"data\").property(\"name\", \"test\").property(\"set\", new Set([1, 2, 3]))",
 +                "python": "g.add_v('data').property('name', 'test').property('set', {1, 2, 3})"
 +            },
 +            {
 +                "original": "g.V().has(\"set\", P.typeOf(GType.SET)).values(\"name\")",
 +                "language": "g.V().has(\"set\", P.typeOf(GType.SET)).values(\"name\")",
 +                "canonical": "g.V().has(\"set\", P.typeOf(GType.SET)).values(\"name\")",
 +                "anonymized": "g.V().has(string0, P.typeOf(GType.SET)).values(string1)",
 +                "dotnet": "g.V().Has(\"set\", P.TypeOf(GType.Set)).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"set\", gremlingo.P.TypeOf(gremlingo.GType.Set)).Values(\"name\")",
 +                "groovy": "g.V().has(\"set\", P.typeOf(GType.SET)).values(\"name\")",
 +                "java": "g.V().has(\"set\", P.typeOf(GType.SET)).values(\"name\")",
 +                "javascript": "g.V().has(\"set\", P.typeOf(GType.set)).values(\"name\")",
 +                "python": "g.V().has('set', P.type_of(GType.SET)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXsetX_isXtypeOfXGType_SETXX_unfold",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"set\", {\"x\", \"y\", \"z\"})",
 +                "language": "g.addV(\"data\").property(\"set\", {\"x\", \"y\", \"z\"})",
 +                "canonical": "g.addV(\"data\").property(\"set\", {\"x\", \"y\", \"z\"})",
 +                "anonymized": "g.addV(string0).property(string1, set0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"set\", new HashSet<object> { \"x\", \"y\", \"z\" })",
 +                "go": "g.AddV(\"data\").Property(\"set\", gremlingo.NewSimpleSet(\"x\", \"y\", \"z\"))",
 +                "groovy": "g.addV(\"data\").property(\"set\", [\"x\", \"y\", \"z\"] as Set)",
 +                "java": "g.addV(\"data\").property(\"set\", new HashSet<Object>() {{ add(\"x\"); add(\"y\"); add(\"z\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"set\", new Set([\"x\", \"y\", \"z\"]))",
 +                "python": "g.add_v('data').property('set', {'x', 'y', 'z'})"
 +            },
 +            {
 +                "original": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold()",
 +                "language": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold()",
 +                "canonical": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold()",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.SET)).unfold()",
 +                "dotnet": "g.V().Values<object>(\"set\").Is(P.TypeOf(GType.Set)).Unfold<object>()",
 +                "go": "g.V().Values(\"set\").Is(gremlingo.P.TypeOf(gremlingo.GType.Set)).Unfold()",
 +                "groovy": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold()",
 +                "java": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold()",
 +                "javascript": "g.V().values(\"set\").is(P.typeOf(GType.set)).unfold()",
 +                "python": "g.V().values('set').is_(P.type_of(GType.SET)).unfold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXsetX_isXtypeOfXGType_SETXX_countXlocalX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"set\", {1, 2, 3, 4, 5})",
 +                "language": "g.addV(\"data\").property(\"set\", {1, 2, 3, 4, 5})",
 +                "canonical": "g.addV(\"data\").property(\"set\", {1, 2, 3, 4, 5})",
 +                "anonymized": "g.addV(string0).property(string1, set0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"set\", new HashSet<object> { 1, 2, 3, 4, 5 })",
 +                "go": "g.AddV(\"data\").Property(\"set\", gremlingo.NewSimpleSet(1, 2, 3, 4, 5))",
 +                "groovy": "g.addV(\"data\").property(\"set\", [1, 2, 3, 4, 5] as Set)",
 +                "java": "g.addV(\"data\").property(\"set\", new HashSet<Object>() {{ add(1); add(2); add(3); add(4); add(5); }})",
 +                "javascript": "g.addV(\"data\").property(\"set\", new Set([1, 2, 3, 4, 5]))",
 +                "python": "g.add_v('data').property('set', {1, 2, 3, 4, 5})"
 +            },
 +            {
 +                "original": "g.V().values(\"set\").is(P.typeOf(GType.SET)).count(local)",
 +                "language": "g.V().values(\"set\").is(P.typeOf(GType.SET)).count(Scope.local)",
 +                "canonical": "g.V().values(\"set\").is(P.typeOf(GType.SET)).count(Scope.local)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.SET)).count(Scope.local)",
 +                "dotnet": "g.V().Values<object>(\"set\").Is(P.TypeOf(GType.Set)).Count(Scope.Local)",
 +                "go": "g.V().Values(\"set\").Is(gremlingo.P.TypeOf(gremlingo.GType.Set)).Count(gremlingo.Scope.Local)",
 +                "groovy": "g.V().values(\"set\").is(P.typeOf(GType.SET)).count(Scope.local)",
 +                "java": "g.V().values(\"set\").is(P.typeOf(GType.SET)).count(Scope.local)",
 +                "javascript": "g.V().values(\"set\").is(P.typeOf(GType.set)).count(Scope.local)",
 +                "python": "g.V().values('set').is_(P.type_of(GType.SET)).count(Scope.local)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXsetX_isXtypeOfXGType_SETXX_whereXcountXlocalX_isXeqX3XXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"set\", {1, 2}).addV(\"data\").property(\"set\", {1, 2, 3})",
 +                "language": "g.addV(\"data\").property(\"set\", {1, 2}).addV(\"data\").property(\"set\", {1, 2, 3})",
 +                "canonical": "g.addV(\"data\").property(\"set\", {1, 2}).addV(\"data\").property(\"set\", {1, 2, 3})",
 +                "anonymized": "g.addV(string0).property(string1, set0).addV(string0).property(string1, set1)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"set\", new HashSet<object> { 1, 2 }).AddV((string) \"data\").Property(\"set\", new HashSet<object> { 1, 2, 3 })",
 +                "go": "g.AddV(\"data\").Property(\"set\", gremlingo.NewSimpleSet(1, 2)).AddV(\"data\").Property(\"set\", gremlingo.NewSimpleSet(1, 2, 3))",
 +                "groovy": "g.addV(\"data\").property(\"set\", [1, 2] as Set).addV(\"data\").property(\"set\", [1, 2, 3] as Set)",
 +                "java": "g.addV(\"data\").property(\"set\", new HashSet<Object>() {{ add(1); add(2); }}).addV(\"data\").property(\"set\", new HashSet<Object>() {{ add(1); add(2); add(3); }})",
 +                "javascript": "g.addV(\"data\").property(\"set\", new Set([1, 2])).addV(\"data\").property(\"set\", new Set([1, 2, 3]))",
 +                "python": "g.add_v('data').property('set', {1, 2}).add_v('data').property('set', {1, 2, 3})"
 +            },
 +            {
 +                "original": "g.V().values(\"set\").is(P.typeOf(GType.SET)).where(count(local).is(P.eq(3)))",
 +                "language": "g.V().values(\"set\").is(P.typeOf(GType.SET)).where(__.count(Scope.local).is(P.eq(3)))",
 +                "canonical": "g.V().values(\"set\").is(P.typeOf(GType.SET)).where(__.count(Scope.local).is(P.eq(3)))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.SET)).where(__.count(Scope.local).is(P.eq(number0)))",
 +                "dotnet": "g.V().Values<object>(\"set\").Is(P.TypeOf(GType.Set)).Where(__.Count(Scope.Local).Is(P.Eq(3)))",
 +                "go": "g.V().Values(\"set\").Is(gremlingo.P.TypeOf(gremlingo.GType.Set)).Where(gremlingo.T__.Count(gremlingo.Scope.Local).Is(gremlingo.P.Eq(3)))",
 +                "groovy": "g.V().values(\"set\").is(P.typeOf(GType.SET)).where(__.count(Scope.local).is(P.eq(3)))",
 +                "java": "g.V().values(\"set\").is(P.typeOf(GType.SET)).where(__.count(Scope.local).is(P.eq(3)))",
 +                "javascript": "g.V().values(\"set\").is(P.typeOf(GType.set)).where(__.count(Scope.local).is(P.eq(3)))",
 +                "python": "g.V().values('set').is_(P.type_of(GType.SET)).where(__.count(Scope.local).is_(P.eq(3)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXsetX_isXtypeOfXGType_SETXX_unfold_limitX2X",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"set\", {\"first\", \"second\", \"third\", \"fourth\"})",
 +                "language": "g.addV(\"data\").property(\"set\", {\"first\", \"second\", \"third\", \"fourth\"})",
 +                "canonical": "g.addV(\"data\").property(\"set\", {\"first\", \"second\", \"third\", \"fourth\"})",
 +                "anonymized": "g.addV(string0).property(string1, set0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"set\", new HashSet<object> { \"first\", \"second\", \"third\", \"fourth\" })",
 +                "go": "g.AddV(\"data\").Property(\"set\", gremlingo.NewSimpleSet(\"first\", \"second\", \"third\", \"fourth\"))",
 +                "groovy": "g.addV(\"data\").property(\"set\", [\"first\", \"second\", \"third\", \"fourth\"] as Set)",
 +                "java": "g.addV(\"data\").property(\"set\", new HashSet<Object>() {{ add(\"first\"); add(\"second\"); add(\"third\"); add(\"fourth\"); }})",
 +                "javascript": "g.addV(\"data\").property(\"set\", new Set([\"first\", \"second\", \"third\", \"fourth\"]))",
 +                "python": "g.add_v('data').property('set', {'first', 'second', 'third', 'fourth'})"
 +            },
 +            {
 +                "original": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold().limit(2)",
 +                "language": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold().limit(2)",
 +                "canonical": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold().limit(2)",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.SET)).unfold().limit(number0)",
 +                "dotnet": "g.V().Values<object>(\"set\").Is(P.TypeOf(GType.Set)).Unfold<object>().Limit<object>(2)",
 +                "go": "g.V().Values(\"set\").Is(gremlingo.P.TypeOf(gremlingo.GType.Set)).Unfold().Limit(2)",
 +                "groovy": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold().limit(2)",
 +                "java": "g.V().values(\"set\").is(P.typeOf(GType.SET)).unfold().limit(2)",
 +                "javascript": "g.V().values(\"set\").is(P.typeOf(GType.set)).unfold().limit(2)",
 +                "python": "g.V().values('set').is_(P.type_of(GType.SET)).unfold().limit(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXsetX_isXtypeOfXGType_SETXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject({\"test\"}).is(P.typeOf(GType.SET)).groupCount()",
 +                "language": "g.inject({\"test\"}).is(P.typeOf(GType.SET)).groupCount()",
 +                "canonical": "g.inject({\"test\"}).is(P.typeOf(GType.SET)).groupCount()",
 +                "anonymized": "g.inject(set0).is(P.typeOf(GType.SET)).groupCount()",
 +                "dotnet": "g.Inject<object>(new HashSet<object> { \"test\" }).Is(P.TypeOf(GType.Set)).GroupCount<object>()",
 +                "go": "g.Inject(gremlingo.NewSimpleSet(\"test\")).Is(gremlingo.P.TypeOf(gremlingo.GType.Set)).GroupCount()",
 +                "groovy": "g.inject([\"test\"] as Set).is(P.typeOf(GType.SET)).groupCount()",
 +                "java": "g.inject(new HashSet<Object>() {{ add(\"test\"); }}).is(P.typeOf(GType.SET)).groupCount()",
 +                "javascript": "g.inject(new Set([\"test\"])).is(P.typeOf(GType.set)).groupCount()",
 +                "python": "g.inject({'test'}).is_(P.type_of(GType.SET)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_SHORTX_isXtypeOfXGType_SHORTXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 100)",
 +                "language": "g.addV(\"data\").property(\"int\", 100)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 100)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 100)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 100)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 100)",
 +                "java": "g.addV(\"data\").property(\"int\", 100)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 100)",
 +                "python": "g.add_v('data').property('int', 100)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "language": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Short).Is(P.TypeOf(GType.Short))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Short).Is(gremlingo.P.TypeOf(gremlingo.GType.Short))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "java": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.short).is(P.typeOf(GType.short))",
 +                "python": "g.V().values('int').as_number(GType.SHORT).is_(P.type_of(GType.SHORT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_SHORTX_isXtypeOfXGType_SHORTXX_mathXmulX10XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 50)",
 +                "language": "g.addV(\"data\").property(\"int\", 50)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 50)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 50)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 50)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 50)",
 +                "java": "g.addV(\"data\").property(\"int\", 50)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 50)",
 +                "python": "g.add_v('data').property('int', 50)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).math(\"_ * 10\")",
 +                "language": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).math(\"_ * 10\")",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).math(\"_ * 10\")",
 +                "anonymized": "g.V().values(string0).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).math(string1)",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Short).Is(P.TypeOf(GType.Short)).Math(\"_ * 10\")",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Short).Is(gremlingo.P.TypeOf(gremlingo.GType.Short)).Math(\"_ * 10\")",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).math(\"_ * 10\")",
 +                "java": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).math(\"_ * 10\")",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.short).is(P.typeOf(GType.short)).math(\"_ * 10\")",
 +                "python": "g.V().values('int').as_number(GType.SHORT).is_(P.type_of(GType.SHORT)).math('_ * 10')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_SHORTX_isXtypeOfXGType_SHORTXX_isXbetweenX20_30XX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 25)",
 +                "language": "g.addV(\"data\").property(\"int\", 25)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 25)",
 +                "anonymized": "g.addV(string0).property(string1, number0)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 25)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 25)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 25)",
 +                "java": "g.addV(\"data\").property(\"int\", 25)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 25)",
 +                "python": "g.add_v('data').property('int', 25)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).is(P.between(20, 30))",
 +                "language": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).is(P.between(20, 30))",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).is(P.between(20, 30))",
 +                "anonymized": "g.V().values(string0).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).is(P.between(number0, number1))",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Short).Is(P.TypeOf(GType.Short)).Is(P.Between(20, 30))",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Short).Is(gremlingo.P.TypeOf(gremlingo.GType.Short)).Is(gremlingo.P.Between(20, 30))",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).is(P.between(20, 30))",
 +                "java": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).is(P.between(20, 30))",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.short).is(P.typeOf(GType.short)).is(P.between(20, 30))",
 +                "python": "g.V().values('int').as_number(GType.SHORT).is_(P.type_of(GType.SHORT)).is_(P.between(20, 30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_SHORTX_isXtypeOfXGType_SHORTXX_minX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "language": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 10).AddV((string) \"data\").Property(\"int\", 20).AddV((string) \"data\").Property(\"int\", 30)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 10).AddV(\"data\").Property(\"int\", 20).AddV(\"data\").Property(\"int\", 30)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "java": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 10).addV(\"data\").property(\"int\", 20).addV(\"data\").property(\"int\", 30)",
 +                "python": "g.add_v('data').property('int', 10).add_v('data').property('int', 20).add_v('data').property('int', 30)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).min()",
 +                "language": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).min()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).min()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).min()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Short).Is(P.TypeOf(GType.Short)).Min<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Short).Is(gremlingo.P.TypeOf(gremlingo.GType.Short)).Min()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).min()",
 +                "java": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).min()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.short).is(P.typeOf(GType.short)).min()",
 +                "python": "g.V().values('int').as_number(GType.SHORT).is_(P.type_of(GType.SHORT)).min_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXintX_asNumberXGType_SHORTX_isXtypeOfXGType_SHORTXX_maxX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25).addV(\"data\").property(\"int\", 35)",
 +                "language": "g.addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25).addV(\"data\").property(\"int\", 35)",
 +                "canonical": "g.addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25).addV(\"data\").property(\"int\", 35)",
 +                "anonymized": "g.addV(string0).property(string1, number0).addV(string0).property(string1, number1).addV(string0).property(string1, number2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"int\", 15).AddV((string) \"data\").Property(\"int\", 25).AddV((string) \"data\").Property(\"int\", 35)",
 +                "go": "g.AddV(\"data\").Property(\"int\", 15).AddV(\"data\").Property(\"int\", 25).AddV(\"data\").Property(\"int\", 35)",
 +                "groovy": "g.addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25).addV(\"data\").property(\"int\", 35)",
 +                "java": "g.addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25).addV(\"data\").property(\"int\", 35)",
 +                "javascript": "g.addV(\"data\").property(\"int\", 15).addV(\"data\").property(\"int\", 25).addV(\"data\").property(\"int\", 35)",
 +                "python": "g.add_v('data').property('int', 15).add_v('data').property('int', 25).add_v('data').property('int', 35)"
 +            },
 +            {
 +                "original": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).max()",
 +                "language": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).max()",
 +                "canonical": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).max()",
 +                "anonymized": "g.V().values(string0).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).max()",
 +                "dotnet": "g.V().Values<object>(\"int\").AsNumber(GType.Short).Is(P.TypeOf(GType.Short)).Max<object>()",
 +                "go": "g.V().Values(\"int\").AsNumber(gremlingo.GType.Short).Is(gremlingo.P.TypeOf(gremlingo.GType.Short)).Max()",
 +                "groovy": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).max()",
 +                "java": "g.V().values(\"int\").asNumber(GType.SHORT).is(P.typeOf(GType.SHORT)).max()",
 +                "javascript": "g.V().values(\"int\").asNumber(GType.short).is(P.typeOf(GType.short)).max()",
 +                "python": "g.V().values('int').as_number(GType.SHORT).is_(P.type_of(GType.SHORT)).max_()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX42X_asNumberXGType_SHORTX_isXtypeOfXGType_SHORTXX_storeXaX_capXaX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(42).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "language": "g.inject(42).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "canonical": "g.inject(42).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "anonymized": "g.inject(number0).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "dotnet": "g.Inject<object>(42).AsNumber(GType.Short).Is(P.TypeOf(GType.Short))",
 +                "go": "g.Inject(42).AsNumber(gremlingo.GType.Short).Is(gremlingo.P.TypeOf(gremlingo.GType.Short))",
 +                "groovy": "g.inject(42).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "java": "g.inject(42).asNumber(GType.SHORT).is(P.typeOf(GType.SHORT))",
 +                "javascript": "g.inject(42).asNumber(GType.short).is(P.typeOf(GType.short))",
 +                "python": "g.inject(42).as_number(GType.SHORT).is_(P.type_of(GType.SHORT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXtypeOfXGType_SHORTXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.typeOf(GType.SHORT))",
 +                "language": "g.V().values(\"age\").is(P.typeOf(GType.SHORT))",
 +                "canonical": "g.V().values(\"age\").is(P.typeOf(GType.SHORT))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.SHORT))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.TypeOf(GType.Short))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.TypeOf(gremlingo.GType.Short))",
 +                "groovy": "g.V().values(\"age\").is(P.typeOf(GType.SHORT))",
 +                "java": "g.V().values(\"age\").is(P.typeOf(GType.SHORT))",
 +                "javascript": "g.V().values(\"age\").is(P.typeOf(GType.short))",
 +                "python": "g.V().values('age').is_(P.type_of(GType.SHORT))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXuuidX_isXtypeOfXGType_UUIDXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"uuid\", Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.AddV(\"data\").Property(\"uuid\", uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.addV(\"data\").property(\"uuid\", uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.add_v('data').property('uuid', uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            },
 +            {
 +                "original": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID))",
 +                "language": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID))",
 +                "canonical": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.UUID))",
 +                "dotnet": "g.V().Values<object>(\"uuid\").Is(P.TypeOf(GType.UUID))",
 +                "go": "g.V().Values(\"uuid\").Is(gremlingo.P.TypeOf(gremlingo.GType.UUID))",
 +                "groovy": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID))",
 +                "java": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID))",
 +                "javascript": "g.V().values(\"uuid\").is(P.typeOf(GType.uuid))",
 +                "python": "g.V().values('uuid').is_(P.type_of(GType.UUID))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXuuid_typeOfXGType_UUIDXX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"name\", \"test\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.addV(\"data\").property(\"name\", \"test\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.addV(\"data\").property(\"name\", \"test\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.addV(string0).property(string1, string2).property(string3, string4)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"name\", \"test\").Property(\"uuid\", Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.AddV(\"data\").Property(\"name\", \"test\").Property(\"uuid\", uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.addV(\"data\").property(\"name\", \"test\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.addV(\"data\").property(\"name\", \"test\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.addV(\"data\").property(\"name\", \"test\").property(\"uuid\", uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.add_v('data').property('name', 'test').property('uuid', uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            },
 +            {
 +                "original": "g.V().has(\"uuid\", P.typeOf(GType.UUID)).values(\"name\")",
 +                "language": "g.V().has(\"uuid\", P.typeOf(GType.UUID)).values(\"name\")",
 +                "canonical": "g.V().has(\"uuid\", P.typeOf(GType.UUID)).values(\"name\")",
 +                "anonymized": "g.V().has(string0, P.typeOf(GType.UUID)).values(string1)",
 +                "dotnet": "g.V().Has(\"uuid\", P.TypeOf(GType.UUID)).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"uuid\", gremlingo.P.TypeOf(gremlingo.GType.UUID)).Values(\"name\")",
 +                "groovy": "g.V().has(\"uuid\", P.typeOf(GType.UUID)).values(\"name\")",
 +                "java": "g.V().has(\"uuid\", P.typeOf(GType.UUID)).values(\"name\")",
 +                "javascript": "g.V().has(\"uuid\", P.typeOf(GType.uuid)).values(\"name\")",
 +                "python": "g.V().has('uuid', P.type_of(GType.UUID)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXuuidX_isXtypeOfXGType_UUIDXX_project_byXidentityX_byXconstantXuuidXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"uuid\", Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.AddV(\"data\").Property(\"uuid\", uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.addV(\"data\").property(\"uuid\", uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.add_v('data').property('uuid', uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            },
 +            {
 +                "original": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).project(\"original\", \"type\").by(identity()).by(constant(\"uuid\"))",
 +                "language": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).project(\"original\", \"type\").by(__.identity()).by(__.constant(\"uuid\"))",
 +                "canonical": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).project(\"original\", \"type\").by(__.identity()).by(__.constant(\"uuid\"))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.UUID)).project(string1, string2).by(__.identity()).by(__.constant(string0))",
 +                "dotnet": "g.V().Values<object>(\"uuid\").Is(P.TypeOf(GType.UUID)).Project<object>(\"original\", \"type\").By(__.Identity()).By(__.Constant<object>(\"uuid\"))",
 +                "go": "g.V().Values(\"uuid\").Is(gremlingo.P.TypeOf(gremlingo.GType.UUID)).Project(\"original\", \"type\").By(gremlingo.T__.Identity()).By(gremlingo.T__.Constant(\"uuid\"))",
 +                "groovy": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).project(\"original\", \"type\").by(__.identity()).by(__.constant(\"uuid\"))",
 +                "java": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).project(\"original\", \"type\").by(__.identity()).by(__.constant(\"uuid\"))",
 +                "javascript": "g.V().values(\"uuid\").is(P.typeOf(GType.uuid)).project(\"original\", \"type\").by(__.identity()).by(__.constant(\"uuid\"))",
 +                "python": "g.V().values('uuid').is_(P.type_of(GType.UUID)).project('original', 'type').by(__.identity()).by(__.constant('uuid'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXuuidX_isXtypeOfXGType_UUIDXX_whereXisXeqXuuidXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"uuid\", Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.AddV(\"data\").Property(\"uuid\", uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.addV(\"data\").property(\"uuid\", uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.add_v('data').property('uuid', uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            },
 +            {
 +                "original": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).where(__.is(P.eq(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "language": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).where(__.is(P.eq(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "canonical": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).where(__.is(P.eq(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.UUID)).where(__.is(P.eq(string1)))",
 +                "dotnet": "g.V().Values<object>(\"uuid\").Is(P.TypeOf(GType.UUID)).Where(__.Is(P.Eq(Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "go": "g.V().Values(\"uuid\").Is(gremlingo.P.TypeOf(gremlingo.GType.UUID)).Where(gremlingo.T__.Is(gremlingo.P.Eq(uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "groovy": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).where(__.is(P.eq(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "java": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).where(__.is(P.eq(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "javascript": "g.V().values(\"uuid\").is(P.typeOf(GType.uuid)).where(__.is(P.eq(uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))))",
 +                "python": "g.V().values('uuid').is_(P.type_of(GType.UUID)).where(__.is_(P.eq(uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXuuidX_isXtypeOfXGType_UUIDXX_chooseXisXeqXuuidXX_constantXmatchX_constantXnoMatchXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"uuid\", Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.AddV(\"data\").Property(\"uuid\", uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.addV(\"data\").property(\"uuid\", uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.add_v('data').property('uuid', uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            },
 +            {
 +                "original": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).choose(__.is(P.eq(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), constant(\"match\"), constant(\"noMatch\"))",
 +                "language": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).choose(__.is(P.eq(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "canonical": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).choose(__.is(P.eq(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.UUID)).choose(__.is(P.eq(string1)), __.constant(string2), __.constant(string3))",
 +                "dotnet": "g.V().Values<object>(\"uuid\").Is(P.TypeOf(GType.UUID)).Choose<object>(__.Is(P.Eq(Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), __.Constant<object>(\"match\"), __.Constant<object>(\"noMatch\"))",
 +                "go": "g.V().Values(\"uuid\").Is(gremlingo.P.TypeOf(gremlingo.GType.UUID)).Choose(gremlingo.T__.Is(gremlingo.P.Eq(uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), gremlingo.T__.Constant(\"match\"), gremlingo.T__.Constant(\"noMatch\"))",
 +                "groovy": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).choose(__.is(P.eq(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "java": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).choose(__.is(P.eq(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "javascript": "g.V().values(\"uuid\").is(P.typeOf(GType.uuid)).choose(__.is(P.eq(uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))), __.constant(\"match\"), __.constant(\"noMatch\"))",
 +                "python": "g.V().values('uuid').is_(P.type_of(GType.UUID)).choose(__.is_(P.eq(uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))), __.constant('match'), __.constant('noMatch'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXuuidX_isXtypeOfXGType_UUIDXX_localXaggregateXaXX_capXaX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"uuid\", Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.AddV(\"data\").Property(\"uuid\", uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.addV(\"data\").property(\"uuid\", uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.add_v('data').property('uuid', uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            },
 +            {
 +                "original": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).local(aggregate(\"a\")).cap(\"a\")",
 +                "language": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "canonical": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.UUID)).local(__.aggregate(string1)).cap(string1)",
 +                "dotnet": "g.V().Values<object>(\"uuid\").Is(P.TypeOf(GType.UUID)).Local<object>(__.Aggregate(\"a\")).Cap<object>(\"a\")",
 +                "go": "g.V().Values(\"uuid\").Is(gremlingo.P.TypeOf(gremlingo.GType.UUID)).Local(gremlingo.T__.Aggregate(\"a\")).Cap(\"a\")",
 +                "groovy": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "java": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "javascript": "g.V().values(\"uuid\").is(P.typeOf(GType.uuid)).local(__.aggregate(\"a\")).cap(\"a\")",
 +                "python": "g.V().values('uuid').is_(P.type_of(GType.UUID)).local(__.aggregate('a')).cap('a')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXuuidX_isXtypeOfXGType_UUIDXX_aggregateXaX_capXaX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.addV(\"data\").property(\"uuid\", UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"data\").Property(\"uuid\", Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.AddV(\"data\").Property(\"uuid\", uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.addV(\"data\").property(\"uuid\", UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.addV(\"data\").property(\"uuid\", uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.add_v('data').property('uuid', uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            },
 +            {
 +                "original": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).aggregate(\"a\").cap(\"a\")",
 +                "language": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).aggregate(\"a\").cap(\"a\")",
 +                "canonical": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).aggregate(\"a\").cap(\"a\")",
 +                "anonymized": "g.V().values(string0).is(P.typeOf(GType.UUID)).aggregate(string1).cap(string1)",
 +                "dotnet": "g.V().Values<object>(\"uuid\").Is(P.TypeOf(GType.UUID)).Aggregate(\"a\").Cap<object>(\"a\")",
 +                "go": "g.V().Values(\"uuid\").Is(gremlingo.P.TypeOf(gremlingo.GType.UUID)).Aggregate(\"a\").Cap(\"a\")",
 +                "groovy": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).aggregate(\"a\").cap(\"a\")",
 +                "java": "g.V().values(\"uuid\").is(P.typeOf(GType.UUID)).aggregate(\"a\").cap(\"a\")",
 +                "javascript": "g.V().values(\"uuid\").is(P.typeOf(GType.uuid)).aggregate(\"a\").cap(\"a\")",
 +                "python": "g.V().values('uuid').is_(P.type_of(GType.UUID)).aggregate('a').cap('a')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXuuidX_isXtypeOfXGType_UUIDXX_groupCount",
 +        "traversals": [
 +            {
 +                "original": "g.inject(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).is(P.typeOf(GType.UUID)).groupCount()",
 +                "language": "g.inject(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).is(P.typeOf(GType.UUID)).groupCount()",
 +                "canonical": "g.inject(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).is(P.typeOf(GType.UUID)).groupCount()",
 +                "anonymized": "g.inject(string0).is(P.typeOf(GType.UUID)).groupCount()",
 +                "dotnet": "g.Inject<object>(Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).Is(P.TypeOf(GType.UUID)).GroupCount<object>()",
 +                "go": "g.Inject(uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).Is(gremlingo.P.TypeOf(gremlingo.GType.UUID)).GroupCount()",
 +                "groovy": "g.inject(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).is(P.typeOf(GType.UUID)).groupCount()",
 +                "java": "g.inject(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).is(P.typeOf(GType.UUID)).groupCount()",
 +                "javascript": "g.inject(uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\")).is(P.typeOf(GType.uuid)).groupCount()",
 +                "python": "g.inject(uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479')).is_(P.type_of(GType.UUID)).group_count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXUUIDX47af10b_58cc_4372_a567_0f02b2f3d479XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "language": "g.inject(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "canonical": "g.inject(UUID(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "anonymized": "g.inject(string0)",
 +                "dotnet": "g.Inject<object>(Guid.Parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "go": "g.Inject(uuid.MustParse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "groovy": "g.inject(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "java": "g.inject(UUID.fromString(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "javascript": "g.inject(uuid.parse(\"f47af10b-58cc-4372-a567-0f02b2f3d479\"))",
 +                "python": "g.inject(uuid.UUID('f47af10b-58cc-4372-a567-0f02b2f3d479'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXUUIDXXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(UUID())",
 +                "language": "g.inject(UUID())",
 +                "canonical": "g.inject(UUID())",
 +                "anonymized": "g.inject(string0)",
 +                "dotnet": "g.Inject<object>(Guid.NewGuid())",
 +                "go": "g.Inject(uuid.New())",
 +                "groovy": "g.inject(UUID.randomUUID())",
 +                "java": "g.inject(UUID.randomUUID())",
 +                "javascript": "g.inject(uuid.v4())",
 +                "python": "g.inject(uuid.uuid4())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_aggregateXxX_byXnameX_byXageX_capXxX",
 +        "traversals": [
 +            {
 +                "original": "g.V().aggregate(\"x\").by(\"name\").by(\"age\").cap(\"x\")",
 +                "language": "g.V().aggregate(\"x\").by(\"name\").by(\"age\").cap(\"x\")",
 +                "canonical": "g.V().aggregate(\"x\").by(\"name\").by(\"age\").cap(\"x\")",
 +                "anonymized": "g.V().aggregate(string0).by(string1).by(string2).cap(string0)",
 +                "dotnet": "g.V().Aggregate(\"x\").By(\"name\").By(\"age\").Cap<object>(\"x\")",
 +                "go": "g.V().Aggregate(\"x\").By(\"name\").By(\"age\").Cap(\"x\")",
 +                "groovy": "g.V().aggregate(\"x\").by(\"name\").by(\"age\").cap(\"x\")",
 +                "java": "g.V().aggregate(\"x\").by(\"name\").by(\"age\").cap(\"x\")",
 +                "javascript": "g.V().aggregate(\"x\").by(\"name\").by(\"age\").cap(\"x\")",
 +                "python": "g.V().aggregate('x').by('name').by('age').cap('x')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXaggregateXxX_byXnameXX_byXageX_capXxX",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(aggregate(\"x\").by(\"name\").by(\"age\")).cap(\"x\")",
 +                "language": "g.V().local(__.aggregate(\"x\").by(\"name\").by(\"age\")).cap(\"x\")",
 +                "canonical": "g.V().local(__.aggregate(\"x\").by(\"name\").by(\"age\")).cap(\"x\")",
 +                "anonymized": "g.V().local(__.aggregate(string0).by(string1).by(string2)).cap(string0)",
 +                "dotnet": "g.V().Local<object>(__.Aggregate(\"x\").By(\"name\").By(\"age\")).Cap<object>(\"x\")",
 +                "go": "g.V().Local(gremlingo.T__.Aggregate(\"x\").By(\"name\").By(\"age\")).Cap(\"x\")",
 +                "groovy": "g.V().local(__.aggregate(\"x\").by(\"name\").by(\"age\")).cap(\"x\")",
 +                "java": "g.V().local(__.aggregate(\"x\").by(\"name\").by(\"age\")).cap(\"x\")",
 +                "javascript": "g.V().local(__.aggregate(\"x\").by(\"name\").by(\"age\")).cap(\"x\")",
 +                "python": "g.V().local(__.aggregate('x').by('name').by('age')).cap('x')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_allXgtX32XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").all(P.gt(32))",
 +                "language": "g.V().values(\"age\").all(P.gt(32))",
 +                "canonical": "g.V().values(\"age\").all(P.gt(32))",
 +                "anonymized": "g.V().values(string0).all(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").All(P.Gt(32))",
 +                "go": "g.V().Values(\"age\").All(gremlingo.P.Gt(32))",
 +                "groovy": "g.V().values(\"age\").all(P.gt(32))",
 +                "java": "g.V().values(\"age\").all(P.gt(32))",
 +                "javascript": "g.V().values(\"age\").all(P.gt(32))",
 +                "python": "g.V().values('age').all_(P.gt(32))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_whereXisXP_gtX33XXX_fold_allXgtX33XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().all(P.gt(33))",
 +                "language": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().all(P.gt(33))",
 +                "canonical": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().all(P.gt(33))",
 +                "anonymized": "g.V().values(string0).where(__.is(P.gt(number0))).fold().all(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Where(__.Is(P.Gt(33))).Fold().All(P.Gt(33))",
 +                "go": "g.V().Values(\"age\").Where(gremlingo.T__.Is(gremlingo.P.Gt(33))).Fold().All(gremlingo.P.Gt(33))",
 +                "groovy": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().all(P.gt(33))",
 +                "java": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().all(P.gt(33))",
 +                "javascript": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().all(P.gt(33))",
 +                "python": "g.V().values('age').where(__.is_(P.gt(33))).fold().all_(P.gt(33))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_order_byXdescX_fold_allXgtX10XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").order().by(desc).fold().all(P.gt(10))",
 +                "language": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(10))",
 +                "canonical": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(10))",
 +                "anonymized": "g.V().values(string0).order().by(Order.desc).fold().all(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Order().By(Order.Desc).Fold().All(P.Gt(10))",
 +                "go": "g.V().Values(\"age\").Order().By(gremlingo.Order.Desc).Fold().All(gremlingo.P.Gt(10))",
 +                "groovy": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(10))",
 +                "java": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(10))",
 +                "javascript": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(10))",
 +                "python": "g.V().values('age').order().by(Order.desc).fold().all_(P.gt(10))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_order_byXdescX_fold_allXgtX30XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").order().by(desc).fold().all(P.gt(30))",
 +                "language": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(30))",
 +                "canonical": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(30))",
 +                "anonymized": "g.V().values(string0).order().by(Order.desc).fold().all(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Order().By(Order.Desc).Fold().All(P.Gt(30))",
 +                "go": "g.V().Values(\"age\").Order().By(gremlingo.Order.Desc).Fold().All(gremlingo.P.Gt(30))",
 +                "groovy": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(30))",
 +                "java": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(30))",
 +                "javascript": "g.V().values(\"age\").order().by(Order.desc).fold().all(P.gt(30))",
 +                "python": "g.V().values('age').order().by(Order.desc).fold().all_(P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXabc_bcdX_allXeqXbcdXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([\"abc\",\"bcd\"]).all(P.eq(\"bcd\"))",
 +                "language": "g.inject([\"abc\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "canonical": "g.inject([\"abc\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "anonymized": "g.inject(list0).all(P.eq(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { \"abc\", \"bcd\" }).All(P.Eq(\"bcd\"))",
 +                "go": "g.Inject([]interface{}{\"abc\", \"bcd\"}).All(gremlingo.P.Eq(\"bcd\"))",
 +                "groovy": "g.inject([\"abc\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(\"abc\"); add(\"bcd\"); }}).all(P.eq(\"bcd\"))",
 +                "javascript": "g.inject([\"abc\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "python": "g.inject(['abc', 'bcd']).all_(P.eq('bcd'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXbcd_bcdX_allXeqXbcdXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([\"bcd\",\"bcd\"]).all(P.eq(\"bcd\"))",
 +                "language": "g.inject([\"bcd\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "canonical": "g.inject([\"bcd\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "anonymized": "g.inject(list0).all(P.eq(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { \"bcd\", \"bcd\" }).All(P.Eq(\"bcd\"))",
 +                "go": "g.Inject([]interface{}{\"bcd\", \"bcd\"}).All(gremlingo.P.Eq(\"bcd\"))",
 +                "groovy": "g.inject([\"bcd\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(\"bcd\"); add(\"bcd\"); }}).all(P.eq(\"bcd\"))",
 +                "javascript": "g.inject([\"bcd\", \"bcd\"]).all(P.eq(\"bcd\"))",
 +                "python": "g.inject(['bcd', 'bcd']).all_(P.eq('bcd'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnull_abcX_allXTextP_startingWithXaXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([null,\"abc\"]).all(TextP.startingWith(\"a\"))",
 +                "language": "g.inject([null, \"abc\"]).all(TextP.startingWith(\"a\"))",
 +                "canonical": "g.inject([null, \"abc\"]).all(TextP.startingWith(\"a\"))",
 +                "anonymized": "g.inject(list0).all(TextP.startingWith(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { null, \"abc\" }).All(TextP.StartingWith(\"a\"))",
 +                "go": "g.Inject([]interface{}{nil, \"abc\"}).All(gremlingo.TextP.StartingWith(\"a\"))",
 +                "groovy": "g.inject([null, \"abc\"]).all(TextP.startingWith(\"a\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(null); add(\"abc\"); }}).all(TextP.startingWith(\"a\"))",
 +                "javascript": "g.inject([null, \"abc\"]).all(TextP.startingWith(\"a\"))",
 +                "python": "g.inject([None, 'abc']).all_(TextP.starting_with('a'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX5_8_10_10_7X_allXgteX7XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([5,8,10],[10,7]).all(P.gte(7))",
 +                "language": "g.inject([5, 8, 10], [10, 7]).all(P.gte(7))",
 +                "canonical": "g.inject([5, 8, 10], [10, 7]).all(P.gte(7))",
 +                "anonymized": "g.inject(list0, list1).all(P.gte(number0))",
 +                "dotnet": "g.Inject<object>(new List<object> { 5, 8, 10 }, new List<object> { 10, 7 }).All(P.Gte(7))",
 +                "go": "g.Inject([]interface{}{5, 8, 10}, []interface{}{10, 7}).All(gremlingo.P.Gte(7))",
 +                "groovy": "g.inject([5, 8, 10], [10, 7]).all(P.gte(7))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(5); add(8); add(10); }}, new ArrayList<Object>() {{ add(10); add(7); }}).all(P.gte(7))",
 +                "javascript": "g.inject([5, 8, 10], [10, 7]).all(P.gte(7))",
 +                "python": "g.inject([5, 8, 10], [10, 7]).all_(P.gte(7))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnullX_allXeqXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(null).all(P.eq(null))",
 +                "language": "g.inject(null).all(P.eq(null))",
 +                "canonical": "g.inject(null).all(P.eq(null))",
 +                "anonymized": "g.inject(object0).all(P.eq(object0))",
 +                "dotnet": "g.Inject<object>(null).All(P.Eq(null))",
 +                "go": "g.Inject(nil).All(gremlingo.P.Eq(nil))",
 +                "groovy": "g.inject(null).all(P.eq(null))",
 +                "java": "g.inject(null).all(P.eq(null))",
 +                "javascript": "g.inject(null).all(P.eq(null))",
 +                "python": "g.inject(None).all_(P.eq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX7X_allXeqX7XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(7).all(P.eq(7))",
 +                "language": "g.inject(7).all(P.eq(7))",
 +                "canonical": "g.inject(7).all(P.eq(7))",
 +                "anonymized": "g.inject(number0).all(P.eq(number0))",
 +                "dotnet": "g.Inject<object>(7).All(P.Eq(7))",
 +                "go": "g.Inject(7).All(gremlingo.P.Eq(7))",
 +                "groovy": "g.inject(7).all(P.eq(7))",
 +                "java": "g.inject(7).all(P.eq(7))",
 +                "javascript": "g.inject(7).all(P.eq(7))",
 +                "python": "g.inject(7).all_(P.eq(7))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnull_nullX_allXeqXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([null,null]).all(P.eq(null))",
 +                "language": "g.inject([null, null]).all(P.eq(null))",
 +                "canonical": "g.inject([null, null]).all(P.eq(null))",
 +                "anonymized": "g.inject(list0).all(P.eq(object0))",
 +                "dotnet": "g.Inject<object>(new List<object> { null, null }).All(P.Eq(null))",
 +                "go": "g.Inject([]interface{}{nil, nil}).All(gremlingo.P.Eq(nil))",
 +                "groovy": "g.inject([null, null]).all(P.eq(null))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(null); add(null); }}).all(P.eq(null))",
 +                "javascript": "g.inject([null, null]).all(P.eq(null))",
 +                "python": "g.inject([None, None]).all_(P.eq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX3_threeX_allXeqX3XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([3,\"three\"]).all(P.eq(3))",
 +                "language": "g.inject([3, \"three\"]).all(P.eq(3))",
 +                "canonical": "g.inject([3, \"three\"]).all(P.eq(3))",
 +                "anonymized": "g.inject(list0).all(P.eq(number0))",
 +                "dotnet": "g.Inject<object>(new List<object> { 3, \"three\" }).All(P.Eq(3))",
 +                "go": "g.Inject([]interface{}{3, \"three\"}).All(gremlingo.P.Eq(3))",
 +                "groovy": "g.inject([3, \"three\"]).all(P.eq(3))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(3); add(\"three\"); }}).all(P.eq(3))",
 +                "javascript": "g.inject([3, \"three\"]).all(P.eq(3))",
 +                "python": "g.inject([3, 'three']).all_(P.eq(3))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_andXhasXage_gt_27X__outE_count_gte_2X_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().and(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "language": "g.V().and(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "canonical": "g.V().and(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "anonymized": "g.V().and(__.has(string0, P.gt(number0)), __.outE().count().is(P.gte(number1))).values(string1)",
 +                "dotnet": "g.V().And(__.Has(\"age\", P.Gt(27)), __.OutE().Count().Is(P.Gte(2))).Values<object>(\"name\")",
 +                "go": "g.V().And(gremlingo.T__.Has(\"age\", gremlingo.P.Gt(27)), gremlingo.T__.OutE().Count().Is(gremlingo.P.Gte(2))).Values(\"name\")",
 +                "groovy": "g.V().and(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "java": "g.V().and(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "javascript": "g.V().and(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "python": "g.V().and_(__.has('age', P.gt(27)), __.out_e().count().is_(P.gte(2))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_andXoutE__hasXlabel_personX_and_hasXage_gte_32XX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().and(__.outE(), __.has(T.label, \"person\").and().has(\"age\", P.gte(32))).values(\"name\")",
 +                "language": "g.V().and(__.outE(), __.has(T.label, \"person\").and().has(\"age\", P.gte(32))).values(\"name\")",
 +                "canonical": "g.V().and(__.outE(), __.has(T.label, \"person\").and().has(\"age\", P.gte(32))).values(\"name\")",
 +                "anonymized": "g.V().and(__.outE(), __.has(T.label, string0).and().has(string1, P.gte(number0))).values(string2)",
 +                "dotnet": "g.V().And(__.OutE(), __.Has(T.Label, \"person\").And().Has(\"age\", P.Gte(32))).Values<object>(\"name\")",
 +                "go": "g.V().And(gremlingo.T__.OutE(), gremlingo.T__.Has(gremlingo.T.Label, \"person\").And().Has(\"age\", gremlingo.P.Gte(32))).Values(\"name\")",
 +                "groovy": "g.V().and(__.outE(), __.has(T.label, \"person\").and().has(\"age\", P.gte(32))).values(\"name\")",
 +                "java": "g.V().and(__.outE(), __.has(T.label, \"person\").and().has(\"age\", P.gte(32))).values(\"name\")",
 +                "javascript": "g.V().and(__.outE(), __.has(T.label, \"person\").and().has(\"age\", P.gte(32))).values(\"name\")",
 +                "python": "g.V().and_(__.out_e(), __.has(T.label, 'person').and_().has('age', P.gte(32))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_outXknowsX_and_outXcreatedX_inXcreatedX_asXaX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").out(\"knows\").and().out(\"created\").in(\"created\").as(\"a\").values(\"name\")",
 +                "language": "g.V().as(\"a\").out(\"knows\").and().out(\"created\").in(\"created\").as(\"a\").values(\"name\")",
 +                "canonical": "g.V().as(\"a\").out(\"knows\").and().out(\"created\").in(\"created\").as(\"a\").values(\"name\")",
 +                "anonymized": "g.V().as(string0).out(string1).and().out(string2).in(string2).as(string0).values(string3)",
 +                "dotnet": "g.V().As(\"a\").Out(\"knows\").And().Out(\"created\").In(\"created\").As(\"a\").Values<object>(\"name\")",
 +                "go": "g.V().As(\"a\").Out(\"knows\").And().Out(\"created\").In(\"created\").As(\"a\").Values(\"name\")",
 +                "groovy": "g.V().as(\"a\").out(\"knows\").and().out(\"created\").in(\"created\").as(\"a\").values(\"name\")",
 +                "java": "g.V().as(\"a\").out(\"knows\").and().out(\"created\").in(\"created\").as(\"a\").values(\"name\")",
 +                "javascript": "g.V().as(\"a\").out(\"knows\").and().out(\"created\").in_(\"created\").as(\"a\").values(\"name\")",
 +                "python": "g.V().as_('a').out('knows').and_().out('created').in_('created').as_('a').values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_andXselectXaX_selectXaXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").and(__.select(\"a\"), __.select(\"a\"))",
 +                "language": "g.V().as(\"a\").and(__.select(\"a\"), __.select(\"a\"))",
 +                "canonical": "g.V().as(\"a\").and(__.select(\"a\"), __.select(\"a\"))",
 +                "anonymized": "g.V().as(string0).and(__.select(string0), __.select(string0))",
 +                "dotnet": "g.V().As(\"a\").And(__.Select<object>(\"a\"), __.Select<object>(\"a\"))",
 +                "go": "g.V().As(\"a\").And(gremlingo.T__.Select(\"a\"), gremlingo.T__.Select(\"a\"))",
 +                "groovy": "g.V().as(\"a\").and(__.select(\"a\"), __.select(\"a\"))",
 +                "java": "g.V().as(\"a\").and(__.select(\"a\"), __.select(\"a\"))",
 +                "javascript": "g.V().as(\"a\").and(__.select(\"a\"), __.select(\"a\"))",
 +                "python": "g.V().as_('a').and_(__.select('a'), __.select('a'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_markoX_and_hasXname_markoX_and_hasXname_markoX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", \"marko\").and().has(\"name\", \"marko\").and().has(\"name\", \"marko\")",
 +                "language": "g.V().has(\"name\", \"marko\").and().has(\"name\", \"marko\").and().has(\"name\", \"marko\")",
 +                "canonical": "g.V().has(\"name\", \"marko\").and().has(\"name\", \"marko\").and().has(\"name\", \"marko\")",
 +                "anonymized": "g.V().has(string0, string1).and().has(string0, string1).and().has(string0, string1)",
 +                "dotnet": "g.V().Has(\"name\", \"marko\").And().Has(\"name\", \"marko\").And().Has(\"name\", \"marko\")",
 +                "go": "g.V().Has(\"name\", \"marko\").And().Has(\"name\", \"marko\").And().Has(\"name\", \"marko\")",
 +                "groovy": "g.V().has(\"name\", \"marko\").and().has(\"name\", \"marko\").and().has(\"name\", \"marko\")",
 +                "java": "g.V().has(\"name\", \"marko\").and().has(\"name\", \"marko\").and().has(\"name\", \"marko\")",
 +                "javascript": "g.V().has(\"name\", \"marko\").and().has(\"name\", \"marko\").and().has(\"name\", \"marko\")",
 +                "python": "g.V().has('name', 'marko').and_().has('name', 'marko').and_().has('name', 'marko')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_anyXgtX32XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").any(P.gt(32))",
 +                "language": "g.V().values(\"age\").any(P.gt(32))",
 +                "canonical": "g.V().values(\"age\").any(P.gt(32))",
 +                "anonymized": "g.V().values(string0).any(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Any(P.Gt(32))",
 +                "go": "g.V().Values(\"age\").Any(gremlingo.P.Gt(32))",
 +                "groovy": "g.V().values(\"age\").any(P.gt(32))",
 +                "java": "g.V().values(\"age\").any(P.gt(32))",
 +                "javascript": "g.V().values(\"age\").any(P.gt(32))",
 +                "python": "g.V().values('age').any_(P.gt(32))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_order_byXdescX_fold_anyXeqX29XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").order().by(desc).fold().any(P.eq(29))",
 +                "language": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.eq(29))",
 +                "canonical": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.eq(29))",
 +                "anonymized": "g.V().values(string0).order().by(Order.desc).fold().any(P.eq(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Order().By(Order.Desc).Fold().Any(P.Eq(29))",
 +                "go": "g.V().Values(\"age\").Order().By(gremlingo.Order.Desc).Fold().Any(gremlingo.P.Eq(29))",
 +                "groovy": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.eq(29))",
 +                "java": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.eq(29))",
 +                "javascript": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.eq(29))",
 +                "python": "g.V().values('age').order().by(Order.desc).fold().any_(P.eq(29))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_order_byXdescX_fold_anyXgtX10XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").order().by(desc).fold().any(P.gt(10))",
 +                "language": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(10))",
 +                "canonical": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(10))",
 +                "anonymized": "g.V().values(string0).order().by(Order.desc).fold().any(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Order().By(Order.Desc).Fold().Any(P.Gt(10))",
 +                "go": "g.V().Values(\"age\").Order().By(gremlingo.Order.Desc).Fold().Any(gremlingo.P.Gt(10))",
 +                "groovy": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(10))",
 +                "java": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(10))",
 +                "javascript": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(10))",
 +                "python": "g.V().values('age').order().by(Order.desc).fold().any_(P.gt(10))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_order_byXdescX_fold_anyXgtX42XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").order().by(desc).fold().any(P.gt(42))",
 +                "language": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(42))",
 +                "canonical": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(42))",
 +                "anonymized": "g.V().values(string0).order().by(Order.desc).fold().any(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Order().By(Order.Desc).Fold().Any(P.Gt(42))",
 +                "go": "g.V().Values(\"age\").Order().By(gremlingo.Order.Desc).Fold().Any(gremlingo.P.Gt(42))",
 +                "groovy": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(42))",
 +                "java": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(42))",
 +                "javascript": "g.V().values(\"age\").order().by(Order.desc).fold().any(P.gt(42))",
 +                "python": "g.V().values('age').order().by(Order.desc).fold().any_(P.gt(42))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXabc_cdeX_anyXeqXbcdXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([\"abc\",\"cde\"]).any(P.eq(\"bcd\"))",
 +                "language": "g.inject([\"abc\", \"cde\"]).any(P.eq(\"bcd\"))",
 +                "canonical": "g.inject([\"abc\", \"cde\"]).any(P.eq(\"bcd\"))",
 +                "anonymized": "g.inject(list0).any(P.eq(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { \"abc\", \"cde\" }).Any(P.Eq(\"bcd\"))",
 +                "go": "g.Inject([]interface{}{\"abc\", \"cde\"}).Any(gremlingo.P.Eq(\"bcd\"))",
 +                "groovy": "g.inject([\"abc\", \"cde\"]).any(P.eq(\"bcd\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(\"abc\"); add(\"cde\"); }}).any(P.eq(\"bcd\"))",
 +                "javascript": "g.inject([\"abc\", \"cde\"]).any(P.eq(\"bcd\"))",
 +                "python": "g.inject(['abc', 'cde']).any_(P.eq('bcd'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXabc_bcdX_anyXeqXbcdXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([\"abc\",\"bcd\"]).any(P.eq(\"bcd\"))",
 +                "language": "g.inject([\"abc\", \"bcd\"]).any(P.eq(\"bcd\"))",
 +                "canonical": "g.inject([\"abc\", \"bcd\"]).any(P.eq(\"bcd\"))",
 +                "anonymized": "g.inject(list0).any(P.eq(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { \"abc\", \"bcd\" }).Any(P.Eq(\"bcd\"))",
 +                "go": "g.Inject([]interface{}{\"abc\", \"bcd\"}).Any(gremlingo.P.Eq(\"bcd\"))",
 +                "groovy": "g.inject([\"abc\", \"bcd\"]).any(P.eq(\"bcd\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(\"abc\"); add(\"bcd\"); }}).any(P.eq(\"bcd\"))",
 +                "javascript": "g.inject([\"abc\", \"bcd\"]).any(P.eq(\"bcd\"))",
 +                "python": "g.inject(['abc', 'bcd']).any_(P.eq('bcd'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnull_abcX_anyXTextP_startingWithXaXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([null,\"abc\"]).any(TextP.startingWith(\"a\"))",
 +                "language": "g.inject([null, \"abc\"]).any(TextP.startingWith(\"a\"))",
 +                "canonical": "g.inject([null, \"abc\"]).any(TextP.startingWith(\"a\"))",
 +                "anonymized": "g.inject(list0).any(TextP.startingWith(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { null, \"abc\" }).Any(TextP.StartingWith(\"a\"))",
 +                "go": "g.Inject([]interface{}{nil, \"abc\"}).Any(gremlingo.TextP.StartingWith(\"a\"))",
 +                "groovy": "g.inject([null, \"abc\"]).any(TextP.startingWith(\"a\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(null); add(\"abc\"); }}).any(TextP.startingWith(\"a\"))",
 +                "javascript": "g.inject([null, \"abc\"]).any(TextP.startingWith(\"a\"))",
 +                "python": "g.inject([None, 'abc']).any_(TextP.starting_with('a'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX5_8_10_10_7X_anyXeqX7XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([5,8,10],[10,7]).any(P.eq(7))",
 +                "language": "g.inject([5, 8, 10], [10, 7]).any(P.eq(7))",
 +                "canonical": "g.inject([5, 8, 10], [10, 7]).any(P.eq(7))",
 +                "anonymized": "g.inject(list0, list1).any(P.eq(number0))",
 +                "dotnet": "g.Inject<object>(new List<object> { 5, 8, 10 }, new List<object> { 10, 7 }).Any(P.Eq(7))",
 +                "go": "g.Inject([]interface{}{5, 8, 10}, []interface{}{10, 7}).Any(gremlingo.P.Eq(7))",
 +                "groovy": "g.inject([5, 8, 10], [10, 7]).any(P.eq(7))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(5); add(8); add(10); }}, new ArrayList<Object>() {{ add(10); add(7); }}).any(P.eq(7))",
 +                "javascript": "g.inject([5, 8, 10], [10, 7]).any(P.eq(7))",
 +                "python": "g.inject([5, 8, 10], [10, 7]).any_(P.eq(7))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnullX_anyXeqXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(null).any(P.eq(null))",
 +                "language": "g.inject(null).any(P.eq(null))",
 +                "canonical": "g.inject(null).any(P.eq(null))",
 +                "anonymized": "g.inject(object0).any(P.eq(object0))",
 +                "dotnet": "g.Inject<object>(null).Any(P.Eq(null))",
 +                "go": "g.Inject(nil).Any(gremlingo.P.Eq(nil))",
 +                "groovy": "g.inject(null).any(P.eq(null))",
 +                "java": "g.inject(null).any(P.eq(null))",
 +                "javascript": "g.inject(null).any(P.eq(null))",
 +                "python": "g.inject(None).any_(P.eq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX7X_anyXeqX7XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(7).any(P.eq(7))",
 +                "language": "g.inject(7).any(P.eq(7))",
 +                "canonical": "g.inject(7).any(P.eq(7))",
 +                "anonymized": "g.inject(number0).any(P.eq(number0))",
 +                "dotnet": "g.Inject<object>(7).Any(P.Eq(7))",
 +                "go": "g.Inject(7).Any(gremlingo.P.Eq(7))",
 +                "groovy": "g.inject(7).any(P.eq(7))",
 +                "java": "g.inject(7).any(P.eq(7))",
 +                "javascript": "g.inject(7).any(P.eq(7))",
 +                "python": "g.inject(7).any_(P.eq(7))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnull_nullX_anyXeqXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([null,null]).any(P.eq(null))",
 +                "language": "g.inject([null, null]).any(P.eq(null))",
 +                "canonical": "g.inject([null, null]).any(P.eq(null))",
 +                "anonymized": "g.inject(list0).any(P.eq(object0))",
 +                "dotnet": "g.Inject<object>(new List<object> { null, null }).Any(P.Eq(null))",
 +                "go": "g.Inject([]interface{}{nil, nil}).Any(gremlingo.P.Eq(nil))",
 +                "groovy": "g.inject([null, null]).any(P.eq(null))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(null); add(null); }}).any(P.eq(null))",
 +                "javascript": "g.inject([null, null]).any(P.eq(null))",
 +                "python": "g.inject([None, None]).any_(P.eq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX3_threeX_anyXeqX3XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([3,\"three\"]).any(P.eq(3))",
 +                "language": "g.inject([3, \"three\"]).any(P.eq(3))",
 +                "canonical": "g.inject([3, \"three\"]).any(P.eq(3))",
 +                "anonymized": "g.inject(list0).any(P.eq(number0))",
 +                "dotnet": "g.Inject<object>(new List<object> { 3, \"three\" }).Any(P.Eq(3))",
 +                "go": "g.Inject([]interface{}{3, \"three\"}).Any(gremlingo.P.Eq(3))",
 +                "groovy": "g.inject([3, \"three\"]).any(P.eq(3))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(3); add(\"three\"); }}).any(P.eq(3))",
 +                "javascript": "g.inject([3, \"three\"]).any(P.eq(3))",
 +                "python": "g.inject([3, 'three']).any_(P.eq(3))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_coinX1_0X",
 +        "traversals": [
 +            {
 +                "original": "g.V().coin(1.0)",
 +                "language": "g.V().coin(1.0)",
 +                "canonical": "g.V().coin(1.0)",
 +                "anonymized": "g.V().coin(number0)",
 +                "dotnet": "g.V().Coin(1.0)",
 +                "go": "g.V().Coin(1.0)",
 +                "groovy": "g.V().coin(1.0)",
 +                "java": "g.V().coin(1.0)",
 +                "javascript": "g.V().coin(1.0)",
 +                "python": "g.V().coin(1.0)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_coinX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().coin(1)",
 +                "language": "g.V().coin(1)",
 +                "canonical": "g.V().coin(1)",
 +                "anonymized": "g.V().coin(number0)",
 +                "dotnet": "g.V().Coin(1)",
 +                "go": "g.V().Coin(1)",
 +                "groovy": "g.V().coin(1)",
 +                "java": "g.V().coin(1)",
 +                "javascript": "g.V().coin(1)",
 +                "python": "g.V().coin(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_coinX0X",
 +        "traversals": [
 +            {
 +                "original": "g.V().coin(0.0)",
 +                "language": "g.V().coin(0.0)",
 +                "canonical": "g.V().coin(0.0)",
 +                "anonymized": "g.V().coin(number0)",
 +                "dotnet": "g.V().Coin(0.0)",
 +                "go": "g.V().Coin(0.0)",
 +                "groovy": "g.V().coin(0.0)",
 +                "java": "g.V().coin(0.0)",
 +                "javascript": "g.V().coin(0.0)",
 +                "python": "g.V().coin(0.0)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_withStrategiesXSeedStrategyX_V_order_byXnameX_coinX50X",
 +        "traversals": [
 +            {
 +                "original": "g.withStrategies(new SeedStrategy(seed: 999999)).V().order().by(\"name\").coin(0.5)",
 +                "language": "g.withStrategies(new SeedStrategy(seed:999999)).V().order().by(\"name\").coin(0.5)",
 +                "canonical": "g.withStrategies(new SeedStrategy(seed:999999)).V().order().by(\"name\").coin(0.5)",
 +                "anonymized": "g.withStrategies(new SeedStrategy(seed:number0)).V().order().by(string0).coin(number1)",
 +                "dotnet": "g.WithStrategies(new SeedStrategy(seed: 999999)).V().Order().By(\"name\").Coin(0.5)",
 +                "go": "g.WithStrategies(gremlingo.SeedStrategy(gremlingo.SeedStrategyConfig{Seed: 999999})).V().Order().By(\"name\").Coin(0.5)",
 +                "groovy": "g.withStrategies(new SeedStrategy(seed:999999)).V().order().by(\"name\").coin(0.5)",
 +                "java": "g.withStrategies(SeedStrategy.build().seed(999999).create()).V().order().by(\"name\").coin(0.5)",
 +                "javascript": "g.withStrategies(new SeedStrategy({seed: 999999})).V().order().by(\"name\").coin(0.5)",
 +                "python": "g.with_strategies(SeedStrategy(seed=999999)).V().order().by('name').coin(0.5)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXcreatedX_inXcreatedX_cyclicPath",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath()",
 +                "language": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath()",
 +                "canonical": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath()",
 +                "anonymized": "g.V(vid1).out(string0).in(string0).cyclicPath()",
 +                "dotnet": "g.V(vid1).Out(\"created\").In(\"created\").CyclicPath()",
 +                "go": "g.V(vid1).Out(\"created\").In(\"created\").CyclicPath()",
 +                "groovy": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath()",
 +                "java": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath()",
 +                "javascript": "g.V(vid1).out(\"created\").in_(\"created\").cyclicPath()",
 +                "python": "g.V(vid1).out('created').in_('created').cyclic_path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_both_both_cyclicPath_byXageX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).both().both().cyclicPath().by('age')",
 +                "language": "g.V(vid1).both().both().cyclicPath().by('age')",
 +                "canonical": "g.V(vid1).both().both().cyclicPath().by('age')",
 +                "anonymized": "g.V(vid1).both().both().cyclicPath().by(string0)",
 +                "dotnet": "g.V(vid1).Both().Both().CyclicPath().By(\"age\")",
 +                "go": "g.V(vid1).Both().Both().CyclicPath().By(\"age\")",
 +                "groovy": "g.V(vid1).both().both().cyclicPath().by('age')",
 +                "java": "g.V(vid1).both().both().cyclicPath().by(\"age\")",
 +                "javascript": "g.V(vid1).both().both().cyclicPath().by(\"age\")",
 +                "python": "g.V(vid1).both().both().cyclic_path().by('age')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXcreatedX_inXcreatedX_cyclicPath_path",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath().path()",
 +                "language": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath().path()",
 +                "canonical": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath().path()",
 +                "anonymized": "g.V(vid1).out(string0).in(string0).cyclicPath().path()",
 +                "dotnet": "g.V(vid1).Out(\"created\").In(\"created\").CyclicPath().Path()",
 +                "go": "g.V(vid1).Out(\"created\").In(\"created\").CyclicPath().Path()",
 +                "groovy": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath().path()",
 +                "java": "g.V(vid1).out(\"created\").in(\"created\").cyclicPath().path()",
 +                "javascript": "g.V(vid1).out(\"created\").in_(\"created\").cyclicPath().path()",
 +                "python": "g.V(vid1).out('created').in_('created').cyclic_path().path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_cyclicPath_fromXaX_toXbX_path",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).as(\"a\").out(\"created\").as(\"b\").in(\"created\").as(\"c\").cyclicPath().from(\"a\").to(\"b\").path()",
 +                "language": "g.V(vid1).as(\"a\").out(\"created\").as(\"b\").in(\"created\").as(\"c\").cyclicPath().from(\"a\").to(\"b\").path()",
 +                "canonical": "g.V(vid1).as(\"a\").out(\"created\").as(\"b\").in(\"created\").as(\"c\").cyclicPath().from(\"a\").to(\"b\").path()",
 +                "anonymized": "g.V(vid1).as(string0).out(string1).as(string2).in(string1).as(string3).cyclicPath().from(string0).to(string2).path()",
 +                "dotnet": "g.V(vid1).As(\"a\").Out(\"created\").As(\"b\").In(\"created\").As(\"c\").CyclicPath().From(\"a\").To(\"b\").Path()",
 +                "go": "g.V(vid1).As(\"a\").Out(\"created\").As(\"b\").In(\"created\").As(\"c\").CyclicPath().From(\"a\").To(\"b\").Path()",
 +                "groovy": "g.V(vid1).as(\"a\").out(\"created\").as(\"b\").in(\"created\").as(\"c\").cyclicPath().from(\"a\").to(\"b\").path()",
 +                "java": "g.V(vid1).as(\"a\").out(\"created\").as(\"b\").in(\"created\").as(\"c\").cyclicPath().from(\"a\").to(\"b\").path()",
 +                "javascript": "g.V(vid1).as(\"a\").out(\"created\").as(\"b\").in_(\"created\").as(\"c\").cyclicPath().from_(\"a\").to(\"b\").path()",
 +                "python": "g.V(vid1).as_('a').out('created').as_('b').in_('created').as_('c').cyclic_path().from_('a').to('b').path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX0X_V_both_coalesceXhasXname_markoX_both_constantX0XX_cyclicPath_path",
 +        "traversals": [
 +            {
 +                "original": "g.inject(0).V().both().coalesce(has('name','marko').both(),constant(0)).cyclicPath().path()",
 +                "language": "g.inject(0).V().both().coalesce(__.has('name', 'marko').both(), __.constant(0)).cyclicPath().path()",
 +                "canonical": "g.inject(0).V().both().coalesce(__.has('name', 'marko').both(), __.constant(0)).cyclicPath().path()",
 +                "anonymized": "g.inject(number0).V().both().coalesce(__.has(string0, string1).both(), __.constant(number0)).cyclicPath().path()",
 +                "dotnet": "g.Inject<object>(0).V().Both().Coalesce<object>(__.Has(\"name\", \"marko\").Both(), __.Constant<object>(0)).CyclicPath().Path()",
 +                "go": "g.Inject(0).V().Both().Coalesce(gremlingo.T__.Has(\"name\", \"marko\").Both(), gremlingo.T__.Constant(0)).CyclicPath().Path()",
 +                "groovy": "g.inject(0).V().both().coalesce(__.has('name', 'marko').both(), __.constant(0)).cyclicPath().path()",
 +                "java": "g.inject(0).V().both().coalesce(__.has(\"name\", \"marko\").both(), __.constant(0)).cyclicPath().path()",
 +                "javascript": "g.inject(0).V().both().coalesce(__.has(\"name\", \"marko\").both(), __.constant(0)).cyclicPath().path()",
 +                "python": "g.inject(0).V().both().coalesce(__.has('name', 'marko').both(), __.constant(0)).cyclic_path().path()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_out_in_valuesXnameX_fold_dedupXlocalX_unfold",
 +        "traversals": [
 +            {
 +                "original": "g.V().out().in().values(\"name\").fold().dedup(Scope.local).unfold()",
 +                "language": "g.V().out().in().values(\"name\").fold().dedup(Scope.local).unfold()",
 +                "canonical": "g.V().out().in().values(\"name\").fold().dedup(Scope.local).unfold()",
 +                "anonymized": "g.V().out().in().values(string0).fold().dedup(Scope.local).unfold()",
 +                "dotnet": "g.V().Out().In().Values<object>(\"name\").Fold().Dedup(Scope.Local).Unfold<object>()",
 +                "go": "g.V().Out().In().Values(\"name\").Fold().Dedup(gremlingo.Scope.Local).Unfold()",
 +                "groovy": "g.V().out().in().values(\"name\").fold().dedup(Scope.local).unfold()",
 +                "java": "g.V().out().in().values(\"name\").fold().dedup(Scope.local).unfold()",
 +                "javascript": "g.V().out().in_().values(\"name\").fold().dedup(Scope.local).unfold()",
 +                "python": "g.V().out().in_().values('name').fold().dedup(Scope.local).unfold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_out_in_valuesXnameX_fold_dedupXlocalX",
 +        "traversals": [
 +            {
 +                "original": "g.V().out().map(__.in().values(\"name\").fold().dedup(Scope.local))",
 +                "language": "g.V().out().map(__.in().values(\"name\").fold().dedup(Scope.local))",
 +                "canonical": "g.V().out().map(__.in().values(\"name\").fold().dedup(Scope.local))",
 +                "anonymized": "g.V().out().map(__.in().values(string0).fold().dedup(Scope.local))",
 +                "dotnet": "g.V().Out().Map<object>(__.In().Values<object>(\"name\").Fold().Dedup(Scope.Local))",
 +                "go": "g.V().Out().Map(gremlingo.T__.In().Values(\"name\").Fold().Dedup(gremlingo.Scope.Local))",
 +                "groovy": "g.V().out().map(__.in().values(\"name\").fold().dedup(Scope.local))",
 +                "java": "g.V().out().map(__.in().values(\"name\").fold().dedup(Scope.local))",
 +                "javascript": "g.V().out().map(__.in_().values(\"name\").fold().dedup(Scope.local))",
 +                "python": "g.V().out().map(__.in_().values('name').fold().dedup(Scope.local))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_out_asXxX_in_asXyX_selectXx_yX_byXnameX_fold_dedupXlocal_x_yX_unfold",
 +        "traversals": [
 +            {
 +                "original": "g.V().out().as(\"x\").in().as(\"y\").select(\"x\", \"y\").by(\"name\").fold().dedup(Scope.local, \"x\", \"y\").unfold()",
 +                "language": "g.V().out().as(\"x\").in().as(\"y\").select(\"x\", \"y\").by(\"name\").fold().dedup(Scope.local, \"x\", \"y\").unfold()",
 +                "canonical": "g.V().out().as(\"x\").in().as(\"y\").select(\"x\", \"y\").by(\"name\").fold().dedup(Scope.local, \"x\", \"y\").unfold()",
 +                "anonymized": "g.V().out().as(string0).in().as(string1).select(string0, string1).by(string2).fold().dedup(Scope.local, string0, string1).unfold()",
 +                "dotnet": "g.V().Out().As(\"x\").In().As(\"y\").Select<object>(\"x\", \"y\").By(\"name\").Fold().Dedup(Scope.Local, \"x\", \"y\").Unfold<object>()",
 +                "go": "g.V().Out().As(\"x\").In().As(\"y\").Select(\"x\", \"y\").By(\"name\").Fold().Dedup(gremlingo.Scope.Local, \"x\", \"y\").Unfold()",
 +                "groovy": "g.V().out().as(\"x\").in().as(\"y\").select(\"x\", \"y\").by(\"name\").fold().dedup(Scope.local, \"x\", \"y\").unfold()",
 +                "java": "g.V().out().as(\"x\").in().as(\"y\").select(\"x\", \"y\").by(\"name\").fold().dedup(Scope.local, \"x\", \"y\").unfold()",
 +                "javascript": "g.V().out().as(\"x\").in_().as(\"y\").select(\"x\", \"y\").by(\"name\").fold().dedup(Scope.local, \"x\", \"y\").unfold()",
 +                "python": "g.V().out().as_('x').in_().as_('y').select('x', 'y').by('name').fold().dedup(Scope.local, 'x', 'y').unfold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_dedup_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().dedup().values(\"name\")",
 +                "language": "g.V().both().dedup().values(\"name\")",
 +                "canonical": "g.V().both().dedup().values(\"name\")",
 +                "anonymized": "g.V().both().dedup().values(string0)",
 +                "dotnet": "g.V().Both().Dedup().Values<object>(\"name\")",
 +                "go": "g.V().Both().Dedup().Values(\"name\")",
 +                "groovy": "g.V().both().dedup().values(\"name\")",
 +                "java": "g.V().both().dedup().values(\"name\")",
 +                "javascript": "g.V().both().dedup().values(\"name\")",
 +                "python": "g.V().both().dedup().values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_hasXlabel_softwareX_dedup_byXlangX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").values(\"name\")",
 +                "language": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").values(\"name\")",
 +                "canonical": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").values(\"name\")",
 +                "anonymized": "g.V().both().has(T.label, string0).dedup().by(string1).values(string2)",
 +                "dotnet": "g.V().Both().Has(T.Label, \"software\").Dedup().By(\"lang\").Values<object>(\"name\")",
 +                "go": "g.V().Both().Has(gremlingo.T.Label, \"software\").Dedup().By(\"lang\").Values(\"name\")",
 +                "groovy": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").values(\"name\")",
 +                "java": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").values(\"name\")",
 +                "javascript": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").values(\"name\")",
 +                "python": "g.V().both().has(T.label, 'software').dedup().by('lang').values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_both_name_dedup",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().both().values(\"name\").dedup()",
 +                "language": "g.V().both().both().values(\"name\").dedup()",
 +                "canonical": "g.V().both().both().values(\"name\").dedup()",
 +                "anonymized": "g.V().both().both().values(string0).dedup()",
 +                "dotnet": "g.V().Both().Both().Values<object>(\"name\").Dedup()",
 +                "go": "g.V().Both().Both().Values(\"name\").Dedup()",
 +                "groovy": "g.V().both().both().values(\"name\").dedup()",
 +                "java": "g.V().both().both().values(\"name\").dedup()",
 +                "javascript": "g.V().both().both().values(\"name\").dedup()",
 +                "python": "g.V().both().both().values('name').dedup()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_both_dedup",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().both().dedup()",
 +                "language": "g.V().both().both().dedup()",
 +                "canonical": "g.V().both().both().dedup()",
 +                "anonymized": "g.V().both().both().dedup()",
 +                "dotnet": "g.V().Both().Both().Dedup()",
 +                "go": "g.V().Both().Both().Dedup()",
 +                "groovy": "g.V().both().both().dedup()",
 +                "java": "g.V().both().both().dedup()",
 +                "javascript": "g.V().both().both().dedup()",
 +                "python": "g.V().both().both().dedup()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_both_dedup_byXlabelX",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().both().dedup().by(T.label)",
 +                "language": "g.V().both().both().dedup().by(T.label)",
 +                "canonical": "g.V().both().both().dedup().by(T.label)",
 +                "anonymized": "g.V().both().both().dedup().by(T.label)",
 +                "dotnet": "g.V().Both().Both().Dedup().By(T.Label)",
 +                "go": "g.V().Both().Both().Dedup().By(gremlingo.T.Label)",
 +                "groovy": "g.V().both().both().dedup().by(T.label)",
 +                "java": "g.V().both().both().dedup().by(T.label)",
 +                "javascript": "g.V().both().both().dedup().by(T.label)",
 +                "python": "g.V().both().both().dedup().by(T.label)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_group_byXlabelX_byXbothE_weight_dedup_foldX",
 +        "traversals": [
 +            {
 +                "original": "g.V().group().by(T.label).by(__.bothE().values(\"weight\").dedup().order().by(Order.asc).fold())",
 +                "language": "g.V().group().by(T.label).by(__.bothE().values(\"weight\").dedup().order().by(Order.asc).fold())",
 +                "canonical": "g.V().group().by(T.label).by(__.bothE().values(\"weight\").dedup().order().by(Order.asc).fold())",
 +                "anonymized": "g.V().group().by(T.label).by(__.bothE().values(string0).dedup().order().by(Order.asc).fold())",
 +                "dotnet": "g.V().Group<object, object>().By(T.Label).By(__.BothE().Values<object>(\"weight\").Dedup().Order().By(Order.Asc).Fold())",
 +                "go": "g.V().Group().By(gremlingo.T.Label).By(gremlingo.T__.BothE().Values(\"weight\").Dedup().Order().By(gremlingo.Order.Asc).Fold())",
 +                "groovy": "g.V().group().by(T.label).by(__.bothE().values(\"weight\").dedup().order().by(Order.asc).fold())",
 +                "java": "g.V().group().by(T.label).by(__.bothE().values(\"weight\").dedup().order().by(Order.asc).fold())",
 +                "javascript": "g.V().group().by(T.label).by(__.bothE().values(\"weight\").dedup().order().by(Order.asc).fold())",
 +                "python": "g.V().group().by(T.label).by(__.both_e().values('weight').dedup().order().by(Order.asc).fold())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_both_asXbX_dedupXa_bX_byXlabelX_selectXa_bX",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").both().as(\"b\").dedup(\"a\", \"b\").by(T.label).select(\"a\", \"b\")",
 +                "language": "g.V().as(\"a\").both().as(\"b\").dedup(\"a\", \"b\").by(T.label).select(\"a\", \"b\")",
 +                "canonical": "g.V().as(\"a\").both().as(\"b\").dedup(\"a\", \"b\").by(T.label).select(\"a\", \"b\")",
 +                "anonymized": "g.V().as(string0).both().as(string1).dedup(string0, string1).by(T.label).select(string0, string1)",
 +                "dotnet": "g.V().As(\"a\").Both().As(\"b\").Dedup(\"a\", \"b\").By(T.Label).Select<object>(\"a\", \"b\")",
 +                "go": "g.V().As(\"a\").Both().As(\"b\").Dedup(\"a\", \"b\").By(gremlingo.T.Label).Select(\"a\", \"b\")",
 +                "groovy": "g.V().as(\"a\").both().as(\"b\").dedup(\"a\", \"b\").by(T.label).select(\"a\", \"b\")",
 +                "java": "g.V().as(\"a\").both().as(\"b\").dedup(\"a\", \"b\").by(T.label).select(\"a\", \"b\")",
 +                "javascript": "g.V().as(\"a\").both().as(\"b\").dedup(\"a\", \"b\").by(T.label).select(\"a\", \"b\")",
 +                "python": "g.V().as_('a').both().as_('b').dedup('a', 'b').by(T.label).select('a', 'b')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_out_asXbX_in_asXcX_dedupXa_bX_path_byXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"person\").property(\"name\",\"alice\").as(\"a\").addV(\"person\").property(\"name\",\"bob\").as(\"b\").addV(\"person\").property(\"name\",\"carol\").as(\"c\").addE(\"knows\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"c\")",
 +                "language": "g.addV(\"person\").property(\"name\", \"alice\").as(\"a\").addV(\"person\").property(\"name\", \"bob\").as(\"b\").addV(\"person\").property(\"name\", \"carol\").as(\"c\").addE(\"knows\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"c\")",
 +                "canonical": "g.addV(\"person\").property(\"name\", \"alice\").as(\"a\").addV(\"person\").property(\"name\", \"bob\").as(\"b\").addV(\"person\").property(\"name\", \"carol\").as(\"c\").addE(\"knows\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"c\")",
 +                "anonymized": "g.addV(string0).property(string1, string2).as(string3).addV(string0).property(string1, string4).as(string5).addV(string0).property(string1, string6).as(string7).addE(string8).from(string3).to(string5).addE(string9).from(string3).to(string5).addE(string9).from(string3).to(string7)",
 +                "dotnet": "g.AddV((string) \"person\").Property(\"name\", \"alice\").As(\"a\").AddV((string) \"person\").Property(\"name\", \"bob\").As(\"b\").AddV((string) \"person\").Property(\"name\", \"carol\").As(\"c\").AddE((string) \"knows\").From(\"a\").To(\"b\").AddE((string) \"likes\").From(\"a\").To(\"b\").AddE((string) \"likes\").From(\"a\").To(\"c\")",
 +                "go": "g.AddV(\"person\").Property(\"name\", \"alice\").As(\"a\").AddV(\"person\").Property(\"name\", \"bob\").As(\"b\").AddV(\"person\").Property(\"name\", \"carol\").As(\"c\").AddE(\"knows\").From(\"a\").To(\"b\").AddE(\"likes\").From(\"a\").To(\"b\").AddE(\"likes\").From(\"a\").To(\"c\")",
 +                "groovy": "g.addV(\"person\").property(\"name\", \"alice\").as(\"a\").addV(\"person\").property(\"name\", \"bob\").as(\"b\").addV(\"person\").property(\"name\", \"carol\").as(\"c\").addE(\"knows\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"c\")",
 +                "java": "g.addV(\"person\").property(\"name\", \"alice\").as(\"a\").addV(\"person\").property(\"name\", \"bob\").as(\"b\").addV(\"person\").property(\"name\", \"carol\").as(\"c\").addE(\"knows\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"b\").addE(\"likes\").from(\"a\").to(\"c\")",
 +                "javascript": "g.addV(\"person\").property(\"name\", \"alice\").as(\"a\").addV(\"person\").property(\"name\", \"bob\").as(\"b\").addV(\"person\").property(\"name\", \"carol\").as(\"c\").addE(\"knows\").from_(\"a\").to(\"b\").addE(\"likes\").from_(\"a\").to(\"b\").addE(\"likes\").from_(\"a\").to(\"c\")",
 +                "python": "g.add_v('person').property('name', 'alice').as_('a').add_v('person').property('name', 'bob').as_('b').add_v('person').property('name', 'carol').as_('c').add_e('knows').from_('a').to('b').add_e('likes').from_('a').to('b').add_e('likes').from_('a').to('c')"
 +            },
 +            {
 +                "original": "g.V().as(\"a\").out().as(\"b\").in().as(\"c\").dedup(\"a\", \"b\").path().by(\"name\")",
 +                "language": "g.V().as(\"a\").out().as(\"b\").in().as(\"c\").dedup(\"a\", \"b\").path().by(\"name\")",
 +                "canonical": "g.V().as(\"a\").out().as(\"b\").in().as(\"c\").dedup(\"a\", \"b\").path().by(\"name\")",
 +                "anonymized": "g.V().as(string0).out().as(string1).in().as(string2).dedup(string0, string1).path().by(string3)",
 +                "dotnet": "g.V().As(\"a\").Out().As(\"b\").In().As(\"c\").Dedup(\"a\", \"b\").Path().By(\"name\")",
 +                "go": "g.V().As(\"a\").Out().As(\"b\").In().As(\"c\").Dedup(\"a\", \"b\").Path().By(\"name\")",
 +                "groovy": "g.V().as(\"a\").out().as(\"b\").in().as(\"c\").dedup(\"a\", \"b\").path().by(\"name\")",
 +                "java": "g.V().as(\"a\").out().as(\"b\").in().as(\"c\").dedup(\"a\", \"b\").path().by(\"name\")",
 +                "javascript": "g.V().as(\"a\").out().as(\"b\").in_().as(\"c\").dedup(\"a\", \"b\").path().by(\"name\")",
 +                "python": "g.V().as_('a').out().as_('b').in_().as_('c').dedup('a', 'b').path().by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_ascX_selectXvX_valuesXnameX_dedup",
 +        "traversals": [
 +            {
 +                "original": "g.V().outE().as(\"e\").inV().as(\"v\").select(\"e\").order().by(\"weight\", Order.asc).select(\"v\").values(\"name\").dedup()",
 +                "language": "g.V().outE().as(\"e\").inV().as(\"v\").select(\"e\").order().by(\"weight\", Order.asc).select(\"v\").values(\"name\").dedup()",
 +                "canonical": "g.V().outE().as(\"e\").inV().as(\"v\").select(\"e\").order().by(\"weight\", Order.asc).select(\"v\").values(\"name\").dedup()",
 +                "anonymized": "g.V().outE().as(string0).inV().as(string1).select(string0).order().by(string2, Order.asc).select(string1).values(string3).dedup()",
 +                "dotnet": "g.V().OutE().As(\"e\").InV().As(\"v\").Select<object>(\"e\").Order().By(\"weight\", Order.Asc).Select<object>(\"v\").Values<object>(\"name\").Dedup()",
 +                "go": "g.V().OutE().As(\"e\").InV().As(\"v\").Select(\"e\").Order().By(\"weight\", gremlingo.Order.Asc).Select(\"v\").Values(\"name\").Dedup()",
 +                "groovy": "g.V().outE().as(\"e\").inV().as(\"v\").select(\"e\").order().by(\"weight\", Order.asc).select(\"v\").values(\"name\").dedup()",
 +                "java": "g.V().outE().as(\"e\").inV().as(\"v\").select(\"e\").order().by(\"weight\", Order.asc).select(\"v\").values(\"name\").dedup()",
 +                "javascript": "g.V().outE().as(\"e\").inV().as(\"v\").select(\"e\").order().by(\"weight\", Order.asc).select(\"v\").values(\"name\").dedup()",
 +                "python": "g.V().out_e().as_('e').in_v().as_('v').select('e').order().by('weight', Order.asc).select('v').values('name').dedup()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_both_dedup_byXoutE_countX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().both().dedup().by(__.outE().count()).values(\"name\")",
 +                "language": "g.V().both().both().dedup().by(__.outE().count()).values(\"name\")",
 +                "canonical": "g.V().both().both().dedup().by(__.outE().count()).values(\"name\")",
 +                "anonymized": "g.V().both().both().dedup().by(__.outE().count()).values(string0)",
 +                "dotnet": "g.V().Both().Both().Dedup().By(__.OutE().Count()).Values<object>(\"name\")",
 +                "go": "g.V().Both().Both().Dedup().By(gremlingo.T__.OutE().Count()).Values(\"name\")",
 +                "groovy": "g.V().both().both().dedup().by(__.outE().count()).values(\"name\")",
 +                "java": "g.V().both().both().dedup().by(__.outE().count()).values(\"name\")",
 +                "javascript": "g.V().both().both().dedup().by(__.outE().count()).values(\"name\")",
 +                "python": "g.V().both().both().dedup().by(__.out_e().count()).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_groupCount_selectXvaluesX_unfold_dedup",
 +        "traversals": [
 +            {
 +                "original": "g.V().groupCount().select(Column.values).unfold().dedup()",
 +                "language": "g.V().groupCount().select(Column.values).unfold().dedup()",
 +                "canonical": "g.V().groupCount().select(Column.values).unfold().dedup()",
 +                "anonymized": "g.V().groupCount().select(Column.values).unfold().dedup()",
 +                "dotnet": "g.V().GroupCount<object>().Select<object>(Column.Values).Unfold<object>().Dedup()",
 +                "go": "g.V().GroupCount().Select(gremlingo.Column.Values).Unfold().Dedup()",
 +                "groovy": "g.V().groupCount().select(Column.values).unfold().dedup()",
 +                "java": "g.V().groupCount().select(Column.values).unfold().dedup()",
 +                "javascript": "g.V().groupCount().select(Column.values).unfold().dedup()",
 +                "python": "g.V().group_count().select(Column.values).unfold().dedup()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_repeatXbothX_timesX3X_emit_name_asXbX_group_byXselectXaXX_byXselectXbX_dedup_order_foldX_selectXvaluesX_unfold_dedup",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").repeat(__.both()).times(3).emit().values(\"name\").as(\"b\").group().by(__.select(\"a\")).by(__.select(\"b\").dedup().order().fold()).select(Column.values).unfold().dedup()",
 +                "language": "g.V().as(\"a\").repeat(__.both()).times(3).emit().values(\"name\").as(\"b\").group().by(__.select(\"a\")).by(__.select(\"b\").dedup().order().fold()).select(Column.values).unfold().dedup()",
 +                "canonical": "g.V().as(\"a\").repeat(__.both()).times(3).emit().values(\"name\").as(\"b\").group().by(__.select(\"a\")).by(__.select(\"b\").dedup().order().fold()).select(Column.values).unfold().dedup()",
 +                "anonymized": "g.V().as(string0).repeat(__.both()).times(number0).emit().values(string1).as(string2).group().by(__.select(string0)).by(__.select(string2).dedup().order().fold()).select(Column.values).unfold().dedup()",
 +                "dotnet": "g.V().As(\"a\").Repeat(__.Both()).Times(3).Emit().Values<object>(\"name\").As(\"b\").Group<object, object>().By(__.Select<object>(\"a\")).By(__.Select<object>(\"b\").Dedup().Order().Fold()).Select<object>(Column.Values).Unfold<object>().Dedup()",
 +                "go": "g.V().As(\"a\").Repeat(gremlingo.T__.Both()).Times(3).Emit().Values(\"name\").As(\"b\").Group().By(gremlingo.T__.Select(\"a\")).By(gremlingo.T__.Select(\"b\").Dedup().Order().Fold()).Select(gremlingo.Column.Values).Unfold().Dedup()",
 +                "groovy": "g.V().as(\"a\").repeat(__.both()).times(3).emit().values(\"name\").as(\"b\").group().by(__.select(\"a\")).by(__.select(\"b\").dedup().order().fold()).select(Column.values).unfold().dedup()",
 +                "java": "g.V().as(\"a\").repeat(__.both()).times(3).emit().values(\"name\").as(\"b\").group().by(__.select(\"a\")).by(__.select(\"b\").dedup().order().fold()).select(Column.values).unfold().dedup()",
 +                "javascript": "g.V().as(\"a\").repeat(__.both()).times(3).emit().values(\"name\").as(\"b\").group().by(__.select(\"a\")).by(__.select(\"b\").dedup().order().fold()).select(Column.values).unfold().dedup()",
 +                "python": "g.V().as_('a').repeat(__.both()).times(3).emit().values('name').as_('b').group().by(__.select('a')).by(__.select('b').dedup().order().fold()).select(Column.values).unfold().dedup()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXdedupX_timesX2X_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.dedup()).times(2).count()",
 +                "language": "g.V().repeat(__.dedup()).times(2).count()",
 +                "canonical": "g.V().repeat(__.dedup()).times(2).count()",
 +                "anonymized": "g.V().repeat(__.dedup()).times(number0).count()",
 +                "dotnet": "g.V().Repeat(__.Dedup()).Times(2).Count()",
 +                "go": "g.V().Repeat(gremlingo.T__.Dedup()).Times(2).Count()",
 +                "groovy": "g.V().repeat(__.dedup()).times(2).count()",
 +                "java": "g.V().repeat(__.dedup()).times(2).count()",
 +                "javascript": "g.V().repeat(__.dedup()).times(2).count()",
 +                "python": "g.V().repeat(__.dedup()).times(2).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_group_by_byXout_dedup_foldX_unfold_selectXvaluesX_unfold_out_order_byXnameX_limitX1X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by(\"name\").limit(1).values(\"name\")",
 +                "language": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by(\"name\").limit(1).values(\"name\")",
 +                "canonical": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by(\"name\").limit(1).values(\"name\")",
 +                "anonymized": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by(string0).limit(number0).values(string0)",
 +                "dotnet": "g.V().Both().Group<object, object>().By().By(__.Out().Dedup().Fold()).Unfold<object>().Select<object>(Column.Values).Unfold<object>().Out().Order().By(\"name\").Limit<object>(1).Values<object>(\"name\")",
 +                "go": "g.V().Both().Group().By().By(gremlingo.T__.Out().Dedup().Fold()).Unfold().Select(gremlingo.Column.Values).Unfold().Out().Order().By(\"name\").Limit(1).Values(\"name\")",
 +                "groovy": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by(\"name\").limit(1).values(\"name\")",
 +                "java": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by(\"name\").limit(1).values(\"name\")",
 +                "javascript": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by(\"name\").limit(1).values(\"name\")",
 +                "python": "g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by('name').limit(1).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_bothE_properties_dedup_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().bothE().properties().dedup().count()",
 +                "language": "g.V().bothE().properties().dedup().count()",
 +                "canonical": "g.V().bothE().properties().dedup().count()",
 +                "anonymized": "g.V().bothE().properties().dedup().count()",
 +                "dotnet": "g.V().BothE().Properties<object>().Dedup().Count()",
 +                "go": "g.V().BothE().Properties().Dedup().Count()",
 +                "groovy": "g.V().bothE().properties().dedup().count()",
 +                "java": "g.V().bothE().properties().dedup().count()",
 +                "javascript": "g.V().bothE().properties().dedup().count()",
 +                "python": "g.V().both_e().properties().dedup().count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_properties_dedup_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().properties().dedup().count()",
 +                "language": "g.V().both().properties().dedup().count()",
 +                "canonical": "g.V().both().properties().dedup().count()",
 +                "anonymized": "g.V().both().properties().dedup().count()",
 +                "dotnet": "g.V().Both().Properties<object>().Dedup().Count()",
 +                "go": "g.V().Both().Properties().Dedup().Count()",
 +                "groovy": "g.V().both().properties().dedup().count()",
 +                "java": "g.V().both().properties().dedup().count()",
 +                "javascript": "g.V().both().properties().dedup().count()",
 +                "python": "g.V().both().properties().dedup().count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_properties_properties_dedup_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().properties().properties().dedup().count()",
 +                "language": "g.V().both().properties().properties().dedup().count()",
 +                "canonical": "g.V().both().properties().properties().dedup().count()",
 +                "anonymized": "g.V().both().properties().properties().dedup().count()",
 +                "dotnet": "g.V().Both().Properties<object>().Properties<object>().Dedup().Count()",
 +                "go": "g.V().Both().Properties().Properties().Dedup().Count()",
 +                "groovy": "g.V().both().properties().properties().dedup().count()",
 +                "java": "g.V().both().properties().properties().dedup().count()",
 +                "javascript": "g.V().both().properties().properties().dedup().count()",
 +                "python": "g.V().both().properties().properties().dedup().count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_order_byXname_descX_barrier_dedup_age_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().order().by(\"name\",desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "language": "g.V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "canonical": "g.V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "anonymized": "g.V().order().by(string0, Order.desc).barrier().dedup().by(string1).values(string0)",
 +                "dotnet": "g.V().Order().By(\"name\", Order.Desc).Barrier().Dedup().By(\"age\").Values<object>(\"name\")",
 +                "go": "g.V().Order().By(\"name\", gremlingo.Order.Desc).Barrier().Dedup().By(\"age\").Values(\"name\")",
 +                "groovy": "g.V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "java": "g.V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "javascript": "g.V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "python": "g.V().order().by('name', Order.desc).barrier().dedup().by('age').values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_withStrategiesXProductiveByStrategyX_V_order_byXname_descX_barrier_dedup_age_name",
 +        "traversals": [
 +            {
 +                "original": "g.withStrategies(ProductiveByStrategy).V().order().by(\"name\",desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "language": "g.withStrategies(ProductiveByStrategy).V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "canonical": "g.withStrategies(ProductiveByStrategy).V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "anonymized": "g.withStrategies(ProductiveByStrategy).V().order().by(string0, Order.desc).barrier().dedup().by(string1).values(string0)",
 +                "dotnet": "g.WithStrategies(new ProductiveByStrategy()).V().Order().By(\"name\", Order.Desc).Barrier().Dedup().By(\"age\").Values<object>(\"name\")",
 +                "go": "g.WithStrategies(gremlingo.ProductiveByStrategy()).V().Order().By(\"name\", gremlingo.Order.Desc).Barrier().Dedup().By(\"age\").Values(\"name\")",
 +                "groovy": "g.withStrategies(ProductiveByStrategy).V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "java": "g.withStrategies(ProductiveByStrategy.instance()).V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "javascript": "g.withStrategies(new ProductiveByStrategy()).V().order().by(\"name\", Order.desc).barrier().dedup().by(\"age\").values(\"name\")",
 +                "python": "g.with_strategies(ProductiveByStrategy()).V().order().by('name', Order.desc).barrier().dedup().by('age').values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_dedup_age_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().dedup().by(\"age\").values(\"name\")",
 +                "language": "g.V().both().dedup().by(\"age\").values(\"name\")",
 +                "canonical": "g.V().both().dedup().by(\"age\").values(\"name\")",
 +                "anonymized": "g.V().both().dedup().by(string0).values(string1)",
 +                "dotnet": "g.V().Both().Dedup().By(\"age\").Values<object>(\"name\")",
 +                "go": "g.V().Both().Dedup().By(\"age\").Values(\"name\")",
 +                "groovy": "g.V().both().dedup().by(\"age\").values(\"name\")",
 +                "java": "g.V().both().dedup().by(\"age\").values(\"name\")",
 +                "javascript": "g.V().both().dedup().by(\"age\").values(\"name\")",
 +                "python": "g.V().both().dedup().by('age').values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_asXaX_both_asXbX_both_asXcX_dedupXa_bX_age_selectXa_b_cX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).as(\"a\").both().as(\"b\").both().as(\"c\").dedup(\"a\",\"b\").by(\"age\").select(\"a\",\"b\",\"c\").by(\"name\")",
 +                "language": "g.V(vid1).as(\"a\").both().as(\"b\").both().as(\"c\").dedup(\"a\", \"b\").by(\"age\").select(\"a\", \"b\", \"c\").by(\"name\")",
 +                "canonical": "g.V(vid1).as(\"a\").both().as(\"b\").both().as(\"c\").dedup(\"a\", \"b\").by(\"age\").select(\"a\", \"b\", \"c\").by(\"name\")",
 +                "anonymized": "g.V(vid1).as(string0).both().as(string1).both().as(string2).dedup(string0, string1).by(string3).select(string0, string1, string2).by(string4)",
 +                "dotnet": "g.V(vid1).As(\"a\").Both().As(\"b\").Both().As(\"c\").Dedup(\"a\", \"b\").By(\"age\").Select<object>(\"a\", \"b\", \"c\").By(\"name\")",
 +                "go": "g.V(vid1).As(\"a\").Both().As(\"b\").Both().As(\"c\").Dedup(\"a\", \"b\").By(\"age\").Select(\"a\", \"b\", \"c\").By(\"name\")",
 +                "groovy": "g.V(vid1).as(\"a\").both().as(\"b\").both().as(\"c\").dedup(\"a\", \"b\").by(\"age\").select(\"a\", \"b\", \"c\").by(\"name\")",
 +                "java": "g.V(vid1).as(\"a\").both().as(\"b\").both().as(\"c\").dedup(\"a\", \"b\").by(\"age\").select(\"a\", \"b\", \"c\").by(\"name\")",
 +                "javascript": "g.V(vid1).as(\"a\").both().as(\"b\").both().as(\"c\").dedup(\"a\", \"b\").by(\"age\").select(\"a\", \"b\", \"c\").by(\"name\")",
 +                "python": "g.V(vid1).as_('a').both().as_('b').both().as_('c').dedup('a', 'b').by('age').select('a', 'b', 'c').by('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_valuesXageX_dedupXlocalX_unfold",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).values(\"age\").dedup(Scope.local).unfold()",
 +                "language": "g.V(vid1).values(\"age\").dedup(Scope.local).unfold()",
 +                "canonical": "g.V(vid1).values(\"age\").dedup(Scope.local).unfold()",
 +                "anonymized": "g.V(vid1).values(string0).dedup(Scope.local).unfold()",
 +                "dotnet": "g.V(vid1).Values<object>(\"age\").Dedup(Scope.Local).Unfold<object>()",
 +                "go": "g.V(vid1).Values(\"age\").Dedup(gremlingo.Scope.Local).Unfold()",
 +                "groovy": "g.V(vid1).values(\"age\").dedup(Scope.local).unfold()",
 +                "java": "g.V(vid1).values(\"age\").dedup(Scope.local).unfold()",
 +                "javascript": "g.V(vid1).values(\"age\").dedup(Scope.local).unfold()",
 +                "python": "g.V(vid1).values('age').dedup(Scope.local).unfold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_dedup_count",
 +        "traversals": [
 +            {
 +                "original": "g.addV('person').property('name','josh').addV('person').property('name','josh').addV('person').property('name','josh')",
 +                "language": "g.addV('person').property('name', 'josh').addV('person').property('name', 'josh').addV('person').property('name', 'josh')",
 +                "canonical": "g.addV('person').property('name', 'josh').addV('person').property('name', 'josh').addV('person').property('name', 'josh')",
 +                "anonymized": "g.addV(string0).property(string1, string2).addV(string0).property(string1, string2).addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"person\").Property(\"name\", \"josh\").AddV((string) \"person\").Property(\"name\", \"josh\").AddV((string) \"person\").Property(\"name\", \"josh\")",
 +                "go": "g.AddV(\"person\").Property(\"name\", \"josh\").AddV(\"person\").Property(\"name\", \"josh\").AddV(\"person\").Property(\"name\", \"josh\")",
 +                "groovy": "g.addV('person').property('name', 'josh').addV('person').property('name', 'josh').addV('person').property('name', 'josh')",
 +                "java": "g.addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\")",
 +                "javascript": "g.addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\")",
 +                "python": "g.add_v('person').property('name', 'josh').add_v('person').property('name', 'josh').add_v('person').property('name', 'josh')"
 +            },
 +            {
 +                "original": "g.V().properties(\"name\").dedup().count()",
 +                "language": "g.V().properties(\"name\").dedup().count()",
 +                "canonical": "g.V().properties(\"name\").dedup().count()",
 +                "anonymized": "g.V().properties(string0).dedup().count()",
 +                "dotnet": "g.V().Properties<object>(\"name\").Dedup().Count()",
 +                "go": "g.V().Properties(\"name\").Dedup().Count()",
 +                "groovy": "g.V().properties(\"name\").dedup().count()",
 +                "java": "g.V().properties(\"name\").dedup().count()",
 +                "javascript": "g.V().properties(\"name\").dedup().count()",
 +                "python": "g.V().properties('name').dedup().count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_dedup_byXvalueX_count",
 +        "traversals": [
 +            {
 +                "original": "g.addV('person').property('name','josh').addV('person').property('name','josh').addV('person').property('name','josh')",
 +                "language": "g.addV('person').property('name', 'josh').addV('person').property('name', 'josh').addV('person').property('name', 'josh')",
 +                "canonical": "g.addV('person').property('name', 'josh').addV('person').property('name', 'josh').addV('person').property('name', 'josh')",
 +                "anonymized": "g.addV(string0).property(string1, string2).addV(string0).property(string1, string2).addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"person\").Property(\"name\", \"josh\").AddV((string) \"person\").Property(\"name\", \"josh\").AddV((string) \"person\").Property(\"name\", \"josh\")",
 +                "go": "g.AddV(\"person\").Property(\"name\", \"josh\").AddV(\"person\").Property(\"name\", \"josh\").AddV(\"person\").Property(\"name\", \"josh\")",
 +                "groovy": "g.addV('person').property('name', 'josh').addV('person').property('name', 'josh').addV('person').property('name', 'josh')",
 +                "java": "g.addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\")",
 +                "javascript": "g.addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\").addV(\"person\").property(\"name\", \"josh\")",
 +                "python": "g.add_v('person').property('name', 'josh').add_v('person').property('name', 'josh').add_v('person').property('name', 'josh')"
 +            },
 +            {
 +                "original": "g.V().properties(\"name\").dedup().by(value).count()",
 +                "language": "g.V().properties(\"name\").dedup().by(T.value).count()",
 +                "canonical": "g.V().properties(\"name\").dedup().by(T.value).count()",
 +                "anonymized": "g.V().properties(string0).dedup().by(T.value).count()",
 +                "dotnet": "g.V().Properties<object>(\"name\").Dedup().By(T.Value).Count()",
 +                "go": "g.V().Properties(\"name\").Dedup().By(gremlingo.T.Value).Count()",
 +                "groovy": "g.V().properties(\"name\").dedup().by(T.value).count()",
 +                "java": "g.V().properties(\"name\").dedup().by(T.value).count()",
 +                "javascript": "g.V().properties(\"name\").dedup().by(T.value).count()",
 +                "python": "g.V().properties('name').dedup().by(T.value).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_hasXlabel_softwareX_dedup_byXlangX_byXnameX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").by(\"name\").values(\"name\")",
 +                "language": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").by(\"name\").values(\"name\")",
 +                "canonical": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").by(\"name\").values(\"name\")",
 +                "anonymized": "g.V().both().has(T.label, string0).dedup().by(string1).by(string2).values(string2)",
 +                "dotnet": "g.V().Both().Has(T.Label, \"software\").Dedup().By(\"lang\").By(\"name\").Values<object>(\"name\")",
 +                "go": "g.V().Both().Has(gremlingo.T.Label, \"software\").Dedup().By(\"lang\").By(\"name\").Values(\"name\")",
 +                "groovy": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").by(\"name\").values(\"name\")",
 +                "java": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").by(\"name\").values(\"name\")",
 +                "javascript": "g.V().both().has(T.label, \"software\").dedup().by(\"lang\").by(\"name\").values(\"name\")",
 +                "python": "g.V().both().has(T.label, 'software').dedup().by('lang').by('name').values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_count_discard",
 +        "traversals": [
 +            {
 +                "original": "g.V().count().discard()",
 +                "language": "g.V().count().discard()",
 +                "canonical": "g.V().count().discard()",
 +                "anonymized": "g.V().count().discard()",
 +                "dotnet": "g.V().Count().Discard()",
 +                "go": "g.V().Count().Discard()",
 +                "groovy": "g.V().count().discard()",
 +                "java": "g.V().count().discard()",
 +                "javascript": "g.V().count().discard()",
 +                "python": "g.V().count().discard()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_discard",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").discard()",
 +                "language": "g.V().hasLabel(\"person\").discard()",
 +                "canonical": "g.V().hasLabel(\"person\").discard()",
 +                "anonymized": "g.V().hasLabel(string0).discard()",
 +                "dotnet": "g.V().HasLabel(\"person\").Discard()",
 +                "go": "g.V().HasLabel(\"person\").Discard()",
 +                "groovy": "g.V().hasLabel(\"person\").discard()",
 +                "java": "g.V().hasLabel(\"person\").discard()",
 +                "javascript": "g.V().hasLabel(\"person\").discard()",
 +                "python": "g.V().has_label('person').discard()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXcreatedX_discard",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"created\").discard()",
 +                "language": "g.V(vid1).out(\"created\").discard()",
 +                "canonical": "g.V(vid1).out(\"created\").discard()",
 +                "anonymized": "g.V(vid1).out(string0).discard()",
 +                "dotnet": "g.V(vid1).Out(\"created\").Discard()",
 +                "go": "g.V(vid1).Out(\"created\").Discard()",
 +                "groovy": "g.V(vid1).out(\"created\").discard()",
 +                "java": "g.V(vid1).out(\"created\").discard()",
 +                "javascript": "g.V(vid1).out(\"created\").discard()",
 +                "python": "g.V(vid1).out('created').discard()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_discard",
 +        "traversals": [
 +            {
 +                "original": "g.V().discard()",
 +                "language": "g.V().discard()",
 +                "canonical": "g.V().discard()",
 +                "anonymized": "g.V().discard()",
 +                "dotnet": "g.V().Discard()",
 +                "go": "g.V().Discard()",
 +                "groovy": "g.V().discard()",
 +                "java": "g.V().discard()",
 +                "javascript": "g.V().discard()",
 +                "python": "g.V().discard()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_discard_discard",
 +        "traversals": [
 +            {
 +                "original": "g.V().discard().discard()",
 +                "language": "g.V().discard().discard()",
 +                "canonical": "g.V().discard().discard()",
 +                "anonymized": "g.V().discard().discard()",
 +                "dotnet": "g.V().Discard().Discard()",
 +                "go": "g.V().Discard().Discard()",
 +                "groovy": "g.V().discard().discard()",
 +                "java": "g.V().discard().discard()",
 +                "javascript": "g.V().discard().discard()",
 +                "python": "g.V().discard().discard()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_discard_fold",
 +        "traversals": [
 +            {
 +                "original": "g.V().discard().fold()",
 +                "language": "g.V().discard().fold()",
 +                "canonical": "g.V().discard().fold()",
 +                "anonymized": "g.V().discard().fold()",
 +                "dotnet": "g.V().Discard().Fold()",
 +                "go": "g.V().Discard().Fold()",
 +                "groovy": "g.V().discard().fold()",
 +                "java": "g.V().discard().fold()",
 +                "javascript": "g.V().discard().fold()",
 +                "python": "g.V().discard().fold()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_discard_fold_discard",
 +        "traversals": [
 +            {
 +                "original": "g.V().discard().fold().discard()",
 +                "language": "g.V().discard().fold().discard()",
 +                "canonical": "g.V().discard().fold().discard()",
 +                "anonymized": "g.V().discard().fold().discard()",
 +                "dotnet": "g.V().Discard().Fold().Discard()",
 +                "go": "g.V().Discard().Fold().Discard()",
 +                "groovy": "g.V().discard().fold().discard()",
 +                "java": "g.V().discard().fold().discard()",
 +                "javascript": "g.V().discard().fold().discard()",
 +                "python": "g.V().discard().fold().discard()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_discard_fold_constantX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().discard().fold().constant(1)",
 +                "language": "g.V().discard().fold().constant(1)",
 +                "canonical": "g.V().discard().fold().constant(1)",
 +                "anonymized": "g.V().discard().fold().constant(number0)",
 +                "dotnet": "g.V().Discard().Fold().Constant<object>(1)",
 +                "go": "g.V().Discard().Fold().Constant(1)",
 +                "groovy": "g.V().discard().fold().constant(1)",
 +                "java": "g.V().discard().fold().constant(1)",
 +                "javascript": "g.V().discard().fold().constant(1)",
 +                "python": "g.V().discard().fold().constant(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_projectXxX_byXcoalesceXage_isXgtX29XX_discardXX_selectXxX",
 +        "traversals": [
 +            {
 +                "original": "g.V().project(\"x\").by(__.coalesce(__.values(\"age\").is(P.gt(29)), __.discard())).select(\"x\")",
 +                "language": "g.V().project(\"x\").by(__.coalesce(__.values(\"age\").is(P.gt(29)), __.discard())).select(\"x\")",
 +                "canonical": "g.V().project(\"x\").by(__.coalesce(__.values(\"age\").is(P.gt(29)), __.discard())).select(\"x\")",
 +                "anonymized": "g.V().project(string0).by(__.coalesce(__.values(string1).is(P.gt(number0)), __.discard())).select(string0)",
 +                "dotnet": "g.V().Project<object>(\"x\").By(__.Coalesce<object>(__.Values<object>(\"age\").Is(P.Gt(29)), __.Discard())).Select<object>(\"x\")",
 +                "go": "g.V().Project(\"x\").By(gremlingo.T__.Coalesce(gremlingo.T__.Values(\"age\").Is(gremlingo.P.Gt(29)), gremlingo.T__.Discard())).Select(\"x\")",
 +                "groovy": "g.V().project(\"x\").by(__.coalesce(__.values(\"age\").is(P.gt(29)), __.discard())).select(\"x\")",
 +                "java": "g.V().project(\"x\").by(__.coalesce(__.values(\"age\").is(P.gt(29)), __.discard())).select(\"x\")",
 +                "javascript": "g.V().project(\"x\").by(__.coalesce(__.values(\"age\").is(P.gt(29)), __.discard())).select(\"x\")",
 +                "python": "g.V().project('x').by(__.coalesce(__.values('age').is_(P.gt(29)), __.discard())).select('x')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_drop",
 +        "traversals": [
 +            {
 +                "original": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "language": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "canonical": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "anonymized": "g.addV().as(string0).addV().as(string1).addE(string2).to(string0)",
 +                "dotnet": "g.AddV().As(\"a\").AddV().As(\"b\").AddE((string) \"knows\").To(\"a\")",
 +                "go": "g.AddV().As(\"a\").AddV().As(\"b\").AddE(\"knows\").To(\"a\")",
 +                "groovy": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "java": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "javascript": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "python": "g.add_v().as_('a').add_v().as_('b').add_e('knows').to('a')"
 +            },
 +            {
 +                "original": "g.V().drop()",
 +                "language": "g.V().drop()",
 +                "canonical": "g.V().drop()",
 +                "anonymized": "g.V().drop()",
 +                "dotnet": "g.V().Drop()",
 +                "go": "g.V().Drop()",
 +                "groovy": "g.V().drop()",
 +                "java": "g.V().drop()",
 +                "javascript": "g.V().drop()",
 +                "python": "g.V().drop()"
 +            },
 +            {
 +                "original": "g.V()",
 +                "language": "g.V()",
 +                "canonical": "g.V()",
 +                "anonymized": "g.V()",
 +                "dotnet": "g.V()",
 +                "go": "g.V()",
 +                "groovy": "g.V()",
 +                "java": "g.V()",
 +                "javascript": "g.V()",
 +                "python": "g.V()"
 +            },
 +            {
 +                "original": "g.E()",
 +                "language": "g.E()",
 +                "canonical": "g.E()",
 +                "anonymized": "g.E()",
 +                "dotnet": "g.E()",
 +                "go": "g.E()",
 +                "groovy": "g.E()",
 +                "java": "g.E()",
 +                "javascript": "g.E()",
 +                "python": "g.E()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_outE_drop",
 +        "traversals": [
 +            {
 +                "original": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "language": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "canonical": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "anonymized": "g.addV().as(string0).addV().as(string1).addE(string2).to(string0)",
 +                "dotnet": "g.AddV().As(\"a\").AddV().As(\"b\").AddE((string) \"knows\").To(\"a\")",
 +                "go": "g.AddV().As(\"a\").AddV().As(\"b\").AddE(\"knows\").To(\"a\")",
 +                "groovy": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "java": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "javascript": "g.addV().as(\"a\").addV().as(\"b\").addE(\"knows\").to(\"a\")",
 +                "python": "g.add_v().as_('a').add_v().as_('b').add_e('knows').to('a')"
 +            },
 +            {
 +                "original": "g.V().outE().drop()",
 +                "language": "g.V().outE().drop()",
 +                "canonical": "g.V().outE().drop()",
 +                "anonymized": "g.V().outE().drop()",
 +                "dotnet": "g.V().OutE().Drop()",
 +                "go": "g.V().OutE().Drop()",
 +                "groovy": "g.V().outE().drop()",
 +                "java": "g.V().outE().drop()",
 +                "javascript": "g.V().outE().drop()",
 +                "python": "g.V().out_e().drop()"
 +            },
 +            {
 +                "original": "g.V()",
 +                "language": "g.V()",
 +                "canonical": "g.V()",
 +                "anonymized": "g.V()",
 +                "dotnet": "g.V()",
 +                "go": "g.V()",
 +                "groovy": "g.V()",
 +                "java": "g.V()",
 +                "javascript": "g.V()",
 +                "python": "g.V()"
 +            },
 +            {
 +                "original": "g.E()",
 +                "language": "g.E()",
 +                "canonical": "g.E()",
 +                "anonymized": "g.E()",
 +                "dotnet": "g.E()",
 +                "go": "g.E()",
 +                "groovy": "g.E()",
 +                "java": "g.E()",
 +                "javascript": "g.E()",
 +                "python": "g.E()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_drop",
 +        "traversals": [
 +            {
 +                "original": "g.addV().property(\"name\",\"bob\").addV().property(\"name\",\"alice\")",
 +                "language": "g.addV().property(\"name\", \"bob\").addV().property(\"name\", \"alice\")",
 +                "canonical": "g.addV().property(\"name\", \"bob\").addV().property(\"name\", \"alice\")",
 +                "anonymized": "g.addV().property(string0, string1).addV().property(string0, string2)",
 +                "dotnet": "g.AddV().Property(\"name\", \"bob\").AddV().Property(\"name\", \"alice\")",
 +                "go": "g.AddV().Property(\"name\", \"bob\").AddV().Property(\"name\", \"alice\")",
 +                "groovy": "g.addV().property(\"name\", \"bob\").addV().property(\"name\", \"alice\")",
 +                "java": "g.addV().property(\"name\", \"bob\").addV().property(\"name\", \"alice\")",
 +                "javascript": "g.addV().property(\"name\", \"bob\").addV().property(\"name\", \"alice\")",
 +                "python": "g.add_v().property('name', 'bob').add_v().property('name', 'alice')"
 +            },
 +            {
 +                "original": "g.V().properties().drop()",
 +                "language": "g.V().properties().drop()",
 +                "canonical": "g.V().properties().drop()",
 +                "anonymized": "g.V().properties().drop()",
 +                "dotnet": "g.V().Properties<object>().Drop()",
 +                "go": "g.V().Properties().Drop()",
 +                "groovy": "g.V().properties().drop()",
 +                "java": "g.V().properties().drop()",
 +                "javascript": "g.V().properties().drop()",
 +                "python": "g.V().properties().drop()"
 +            },
 +            {
 +                "original": "g.V()",
 +                "language": "g.V()",
 +                "canonical": "g.V()",
 +                "anonymized": "g.V()",
 +                "dotnet": "g.V()",
 +                "go": "g.V()",
 +                "groovy": "g.V()",
 +                "java": "g.V()",
 +                "javascript": "g.V()",
 +                "python": "g.V()"
 +            },
 +            {
 +                "original": "g.V().properties()",
 +                "language": "g.V().properties()",
 +                "canonical": "g.V().properties()",
 +                "anonymized": "g.V().properties()",
 +                "dotnet": "g.V().Properties<object>()",
 +                "go": "g.V().Properties()",
 +                "groovy": "g.V().properties()",
 +                "java": "g.V().properties()",
 +                "javascript": "g.V().properties()",
 +                "python": "g.V().properties()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_propertiesXweightX_drop",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\",\"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"name [...]
 +                "language": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"nam [...]
 +                "canonical": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"na [...]
 +                "anonymized": "g.addV(string0).property(string1, string2).property(string3, number0).as(string2).addV(string0).property(string1, string4).property(string3, number1).as(string4).addV(string5).property(string1, string6).property(string7, string8).as(string6).addV(string0).property(string1, string9).property(string3, number2).as(string9).addV(string5).property(string1, string10).property(string7, string8).as(string10).addV(string0).property(string1, string11).property(strin [...]
 +                "dotnet": "g.AddV((string) \"person\").Property(\"name\", \"marko\").Property(\"age\", 29).As(\"marko\").AddV((string) \"person\").Property(\"name\", \"vadas\").Property(\"age\", 27).As(\"vadas\").AddV((string) \"software\").Property(\"name\", \"lop\").Property(\"lang\", \"java\").As(\"lop\").AddV((string) \"person\").Property(\"name\", \"josh\").Property(\"age\", 32).As(\"josh\").AddV((string) \"software\").Property(\"name\", \"ripple\").Property(\"lang\", \"java\").As( [...]
 +                "go": "g.AddV(\"person\").Property(\"name\", \"marko\").Property(\"age\", 29).As(\"marko\").AddV(\"person\").Property(\"name\", \"vadas\").Property(\"age\", 27).As(\"vadas\").AddV(\"software\").Property(\"name\", \"lop\").Property(\"lang\", \"java\").As(\"lop\").AddV(\"person\").Property(\"name\", \"josh\").Property(\"age\", 32).As(\"josh\").AddV(\"software\").Property(\"name\", \"ripple\").Property(\"lang\", \"java\").As(\"ripple\").AddV(\"person\").Property(\"name\", \ [...]
 +                "groovy": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"name\ [...]
 +                "java": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"name\", [...]
 +                "javascript": "g.addV(\"person\").property(\"name\", \"marko\").property(\"age\", 29).as(\"marko\").addV(\"person\").property(\"name\", \"vadas\").property(\"age\", 27).as(\"vadas\").addV(\"software\").property(\"name\", \"lop\").property(\"lang\", \"java\").as(\"lop\").addV(\"person\").property(\"name\", \"josh\").property(\"age\", 32).as(\"josh\").addV(\"software\").property(\"name\", \"ripple\").property(\"lang\", \"java\").as(\"ripple\").addV(\"person\").property(\"n [...]
 +                "python": "g.add_v('person').property('name', 'marko').property('age', 29).as_('marko').add_v('person').property('name', 'vadas').property('age', 27).as_('vadas').add_v('software').property('name', 'lop').property('lang', 'java').as_('lop').add_v('person').property('name', 'josh').property('age', 32).as_('josh').add_v('software').property('name', 'ripple').property('lang', 'java').as_('ripple').add_v('person').property('name', 'peter').property('age', 35).as_('peter').ad [...]
 +            },
 +            {
 +                "original": "g.E().properties(\"weight\").drop()",
 +                "language": "g.E().properties(\"weight\").drop()",
 +                "canonical": "g.E().properties(\"weight\").drop()",
 +                "anonymized": "g.E().properties(string0).drop()",
 +                "dotnet": "g.E().Properties<object>(\"weight\").Drop()",
 +                "go": "g.E().Properties(\"weight\").Drop()",
 +                "groovy": "g.E().properties(\"weight\").drop()",
 +                "java": "g.E().properties(\"weight\").drop()",
 +                "javascript": "g.E().properties(\"weight\").drop()",
 +                "python": "g.E().properties('weight').drop()"
 +            },
 +            {
 +                "original": "g.E().properties()",
 +                "language": "g.E().properties()",
 +                "canonical": "g.E().properties()",
 +                "anonymized": "g.E().properties()",
 +                "dotnet": "g.E().Properties<object>()",
 +                "go": "g.E().Properties()",
 +                "groovy": "g.E().properties()",
 +                "java": "g.E().properties()",
 +                "javascript": "g.E().properties()",
 +                "python": "g.E().properties()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_propertiesXstartTimeX_drop",
 +        "traversals": [
 +            {
 +                "original": "g.addV().property(\"name\",\"bob\").property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"va\", \"startTime\", 2016).addV().property(\"name\",\"alice\").property(Cardinality.list, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2016)",
 +                "language": "g.addV().property(\"name\", \"bob\").property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"va\", \"startTime\", 2016).addV().property(\"name\", \"alice\").property(Cardinality.list, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2016)",
 +                "canonical": "g.addV().property(\"name\", \"bob\").property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"va\", \"startTime\", 2016).addV().property(\"name\", \"alice\").property(Cardinality.list, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2016)",
 +                "anonymized": "g.addV().property(string0, string1).property(Cardinality.list, string2, string3, string4, number0, string5, number1).property(Cardinality.list, string2, string6, string4, number1).addV().property(string0, string7).property(Cardinality.list, string2, string6, string4, number0, string5, number1).property(Cardinality.list, string2, string3, string4, number1)",
 +                "dotnet": "g.AddV().Property(\"name\", \"bob\").Property(Cardinality.List, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).Property(Cardinality.List, \"location\", \"va\", \"startTime\", 2016).AddV().Property(\"name\", \"alice\").Property(Cardinality.List, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).Property(Cardinality.List, \"location\", \"ny\", \"startTime\", 2016)",
 +                "go": "g.AddV().Property(\"name\", \"bob\").Property(gremlingo.Cardinality.List, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).Property(gremlingo.Cardinality.List, \"location\", \"va\", \"startTime\", 2016).AddV().Property(\"name\", \"alice\").Property(gremlingo.Cardinality.List, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).Property(gremlingo.Cardinality.List, \"location\", \"ny\", \"startTime\", 2016)",
 +                "groovy": "g.addV().property(\"name\", \"bob\").property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"va\", \"startTime\", 2016).addV().property(\"name\", \"alice\").property(Cardinality.list, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2016)",
 +                "java": "g.addV().property(\"name\", \"bob\").property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"va\", \"startTime\", 2016).addV().property(\"name\", \"alice\").property(Cardinality.list, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2016)",
 +                "javascript": "g.addV().property(\"name\", \"bob\").property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"va\", \"startTime\", 2016).addV().property(\"name\", \"alice\").property(Cardinality.list, \"location\", \"va\", \"startTime\", 2014, \"endTime\", 2016).property(Cardinality.list, \"location\", \"ny\", \"startTime\", 2016)",
 +                "python": "g.add_v().property('name', 'bob').property(Cardinality.list_, 'location', 'ny', 'startTime', 2014, 'endTime', 2016).property(Cardinality.list_, 'location', 'va', 'startTime', 2016).add_v().property('name', 'alice').property(Cardinality.list_, 'location', 'va', 'startTime', 2014, 'endTime', 2016).property(Cardinality.list_, 'location', 'ny', 'startTime', 2016)"
 +            },
 +            {
 +                "original": "g.V().properties().properties(\"startTime\").drop()",
 +                "language": "g.V().properties().properties(\"startTime\").drop()",
 +                "canonical": "g.V().properties().properties(\"startTime\").drop()",
 +                "anonymized": "g.V().properties().properties(string0).drop()",
 +                "dotnet": "g.V().Properties<object>().Properties<object>(\"startTime\").Drop()",
 +                "go": "g.V().Properties().Properties(\"startTime\").Drop()",
 +                "groovy": "g.V().properties().properties(\"startTime\").drop()",
 +                "java": "g.V().properties().properties(\"startTime\").drop()",
 +                "javascript": "g.V().properties().properties(\"startTime\").drop()",
 +                "python": "g.V().properties().properties('startTime').drop()"
 +            },
 +            {
 +                "original": "g.V().properties().properties()",
 +                "language": "g.V().properties().properties()",
 +                "canonical": "g.V().properties().properties()",
 +                "anonymized": "g.V().properties().properties()",
 +                "dotnet": "g.V().Properties<object>().Properties<object>()",
 +                "go": "g.V().Properties().Properties()",
 +                "groovy": "g.V().properties().properties()",
 +                "java": "g.V().properties().properties()",
 +                "javascript": "g.V().properties().properties()",
 +                "python": "g.V().properties().properties()"
 +            },
 +            {
 +                "original": "g.V().properties().properties(\"startTime\")",
 +                "language": "g.V().properties().properties(\"startTime\")",
 +                "canonical": "g.V().properties().properties(\"startTime\")",
 +                "anonymized": "g.V().properties().properties(string0)",
 +                "dotnet": "g.V().Properties<object>().Properties<object>(\"startTime\")",
 +                "go": "g.V().Properties().Properties(\"startTime\")",
 +                "groovy": "g.V().properties().properties(\"startTime\")",
 +                "java": "g.V().properties().properties(\"startTime\")",
 +                "javascript": "g.V().properties().properties(\"startTime\")",
 +                "python": "g.V().properties().properties('startTime')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_filterXisX0XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().filter(__.is(0))",
 +                "language": "g.V().filter(__.is(0))",
 +                "canonical": "g.V().filter(__.is(0))",
 +                "anonymized": "g.V().filter(__.is(number0))",
 +                "dotnet": "g.V().Filter(__.Is(0))",
 +                "go": "g.V().Filter(gremlingo.T__.Is(0))",
 +                "groovy": "g.V().filter(__.is(0))",
 +                "java": "g.V().filter(__.is(0))",
 +                "javascript": "g.V().filter(__.is(0))",
 +                "python": "g.V().filter_(__.is_(0))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_filterXconstantX0XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().filter(__.constant(0))",
 +                "language": "g.V().filter(__.constant(0))",
 +                "canonical": "g.V().filter(__.constant(0))",
 +                "anonymized": "g.V().filter(__.constant(number0))",
 +                "dotnet": "g.V().Filter(__.Constant<object>(0))",
 +                "go": "g.V().Filter(gremlingo.T__.Constant(0))",
 +                "groovy": "g.V().filter(__.constant(0))",
 +                "java": "g.V().filter(__.constant(0))",
 +                "javascript": "g.V().filter(__.constant(0))",
 +                "python": "g.V().filter_(__.constant(0))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_filterXhasXlang_javaXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().filter(__.has(\"lang\",\"java\"))",
 +                "language": "g.V().filter(__.has(\"lang\", \"java\"))",
 +                "canonical": "g.V().filter(__.has(\"lang\", \"java\"))",
 +                "anonymized": "g.V().filter(__.has(string0, string1))",
 +                "dotnet": "g.V().Filter(__.Has(\"lang\", \"java\"))",
 +                "go": "g.V().Filter(gremlingo.T__.Has(\"lang\", \"java\"))",
 +                "groovy": "g.V().filter(__.has(\"lang\", \"java\"))",
 +                "java": "g.V().filter(__.has(\"lang\", \"java\"))",
 +                "javascript": "g.V().filter(__.has(\"lang\", \"java\"))",
 +                "python": "g.V().filter_(__.has('lang', 'java'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_filterXhasXage_gtX30XXX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).filter(__.has(\"age\",P.gt(30)))",
 +                "language": "g.V(vid1).filter(__.has(\"age\", P.gt(30)))",
 +                "canonical": "g.V(vid1).filter(__.has(\"age\", P.gt(30)))",
 +                "anonymized": "g.V(vid1).filter(__.has(string0, P.gt(number0)))",
 +                "dotnet": "g.V(vid1).Filter(__.Has(\"age\", P.Gt(30)))",
 +                "go": "g.V(vid1).Filter(gremlingo.T__.Has(\"age\", gremlingo.P.Gt(30)))",
 +                "groovy": "g.V(vid1).filter(__.has(\"age\", P.gt(30)))",
 +                "java": "g.V(vid1).filter(__.has(\"age\", P.gt(30)))",
 +                "javascript": "g.V(vid1).filter(__.has(\"age\", P.gt(30)))",
 +                "python": "g.V(vid1).filter_(__.has('age', P.gt(30)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX2X_filterXhasXage_gtX30XXX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid2).filter(__.has(\"age\",P.gt(30)))",
 +                "language": "g.V(vid2).filter(__.has(\"age\", P.gt(30)))",
 +                "canonical": "g.V(vid2).filter(__.has(\"age\", P.gt(30)))",
 +                "anonymized": "g.V(vid2).filter(__.has(string0, P.gt(number0)))",
 +                "dotnet": "g.V(vid2).Filter(__.Has(\"age\", P.Gt(30)))",
 +                "go": "g.V(vid2).Filter(gremlingo.T__.Has(\"age\", gremlingo.P.Gt(30)))",
 +                "groovy": "g.V(vid2).filter(__.has(\"age\", P.gt(30)))",
 +                "java": "g.V(vid2).filter(__.has(\"age\", P.gt(30)))",
 +                "javascript": "g.V(vid2).filter(__.has(\"age\", P.gt(30)))",
 +                "python": "g.V(vid2).filter_(__.has('age', P.gt(30)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_filterXhasXage_gtX30XXX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().filter(__.has(\"age\",P.gt(30)))",
 +                "language": "g.V(vid1).out().filter(__.has(\"age\", P.gt(30)))",
 +                "canonical": "g.V(vid1).out().filter(__.has(\"age\", P.gt(30)))",
 +                "anonymized": "g.V(vid1).out().filter(__.has(string0, P.gt(number0)))",
 +                "dotnet": "g.V(vid1).Out().Filter(__.Has(\"age\", P.Gt(30)))",
 +                "go": "g.V(vid1).Out().Filter(gremlingo.T__.Has(\"age\", gremlingo.P.Gt(30)))",
 +                "groovy": "g.V(vid1).out().filter(__.has(\"age\", P.gt(30)))",
 +                "java": "g.V(vid1).out().filter(__.has(\"age\", P.gt(30)))",
 +                "javascript": "g.V(vid1).out().filter(__.has(\"age\", P.gt(30)))",
 +                "python": "g.V(vid1).out().filter_(__.has('age', P.gt(30)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_filterXhasXname_startingWithXm_or_pXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().filter(__.has(\"name\", TextP.startingWith(\"m\").or(TextP.startingWith(\"p\"))))",
 +                "language": "g.V().filter(__.has(\"name\", TextP.startingWith(\"m\").or(TextP.startingWith(\"p\"))))",
 +                "canonical": "g.V().filter(__.has(\"name\", TextP.startingWith(\"m\").or(TextP.startingWith(\"p\"))))",
 +                "anonymized": "g.V().filter(__.has(string0, TextP.startingWith(string1).or(TextP.startingWith(string2))))",
 +                "dotnet": "g.V().Filter(__.Has(\"name\", TextP.StartingWith(\"m\").Or(TextP.StartingWith(\"p\"))))",
 +                "go": "g.V().Filter(gremlingo.T__.Has(\"name\", gremlingo.TextP.StartingWith(\"m\").Or(gremlingo.TextP.StartingWith(\"p\"))))",
 +                "groovy": "g.V().filter(__.has(\"name\", TextP.startingWith(\"m\").or(TextP.startingWith(\"p\"))))",
 +                "java": "g.V().filter(__.has(\"name\", TextP.startingWith(\"m\").or(TextP.startingWith(\"p\"))))",
 +                "javascript": "g.V().filter(__.has(\"name\", TextP.startingWith(\"m\").or(TextP.startingWith(\"p\"))))",
 +                "python": "g.V().filter_(__.has('name', TextP.starting_with('m').or_(TextP.starting_with('p'))))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_filterXisX0XX",
 +        "traversals": [
 +            {
 +                "original": "g.E().filter(__.is(0))",
 +                "language": "g.E().filter(__.is(0))",
 +                "canonical": "g.E().filter(__.is(0))",
 +                "anonymized": "g.E().filter(__.is(number0))",
 +                "dotnet": "g.E().Filter(__.Is(0))",
 +                "go": "g.E().Filter(gremlingo.T__.Is(0))",
 +                "groovy": "g.E().filter(__.is(0))",
 +                "java": "g.E().filter(__.is(0))",
 +                "javascript": "g.E().filter(__.is(0))",
 +                "python": "g.E().filter_(__.is_(0))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_filterXconstantX0XX",
 +        "traversals": [
 +            {
 +                "original": "g.E().filter(__.constant(0))",
 +                "language": "g.E().filter(__.constant(0))",
 +                "canonical": "g.E().filter(__.constant(0))",
 +                "anonymized": "g.E().filter(__.constant(number0))",
 +                "dotnet": "g.E().Filter(__.Constant<object>(0))",
 +                "go": "g.E().Filter(gremlingo.T__.Constant(0))",
 +                "groovy": "g.E().filter(__.constant(0))",
 +                "java": "g.E().filter(__.constant(0))",
 +                "javascript": "g.E().filter(__.constant(0))",
 +                "python": "g.E().filter_(__.constant(0))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_hasXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).has(\"name\")",
 +                "language": "g.V(vid1).has(\"name\")",
 +                "canonical": "g.V(vid1).has(\"name\")",
 +                "anonymized": "g.V(vid1).has(string0)",
 +                "dotnet": "g.V(vid1).Has(\"name\")",
 +                "go": "g.V(vid1).Has(\"name\")",
 +                "groovy": "g.V(vid1).has(\"name\")",
 +                "java": "g.V(vid1).has(\"name\")",
 +                "javascript": "g.V(vid1).has(\"name\")",
 +                "python": "g.V(vid1).has('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_hasXcircumferenceX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).has(\"circumference\")",
 +                "language": "g.V(vid1).has(\"circumference\")",
 +                "canonical": "g.V(vid1).has(\"circumference\")",
 +                "anonymized": "g.V(vid1).has(string0)",
 +                "dotnet": "g.V(vid1).Has(\"circumference\")",
 +                "go": "g.V(vid1).Has(\"circumference\")",
 +                "groovy": "g.V(vid1).has(\"circumference\")",
 +                "java": "g.V(vid1).has(\"circumference\")",
 +                "javascript": "g.V(vid1).has(\"circumference\")",
 +                "python": "g.V(vid1).has('circumference')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_hasXname_markoX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).has(\"name\", \"marko\")",
 +                "language": "g.V(vid1).has(\"name\", \"marko\")",
 +                "canonical": "g.V(vid1).has(\"name\", \"marko\")",
 +                "anonymized": "g.V(vid1).has(string0, string1)",
 +                "dotnet": "g.V(vid1).Has(\"name\", \"marko\")",
 +                "go": "g.V(vid1).Has(\"name\", \"marko\")",
 +                "groovy": "g.V(vid1).has(\"name\", \"marko\")",
 +                "java": "g.V(vid1).has(\"name\", \"marko\")",
 +                "javascript": "g.V(vid1).has(\"name\", \"marko\")",
 +                "python": "g.V(vid1).has('name', 'marko')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_hasXname_markovarX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).has(\"name\", xx1)",
 +                "language": "g.V(vid1).has(\"name\", xx1)",
 +                "canonical": "g.V(vid1).has(\"name\", xx1)",
 +                "anonymized": "g.V(vid1).has(string0, xx1)",
 +                "dotnet": "g.V(vid1).Has(\"name\", (object) xx1)",
 +                "go": "g.V(vid1).Has(\"name\", xx1)",
 +                "groovy": "g.V(vid1).has(\"name\", xx1)",
 +                "java": "g.V(vid1).has(\"name\", xx1)",
 +                "javascript": "g.V(vid1).has(\"name\", xx1)",
 +                "python": "g.V(vid1).has('name', xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX2X_hasXname_markoX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).has(\"name\", \"marko\")",
 +                "language": "g.V(vid1).has(\"name\", \"marko\")",
 +                "canonical": "g.V(vid1).has(\"name\", \"marko\")",
 +                "anonymized": "g.V(vid1).has(string0, string1)",
 +                "dotnet": "g.V(vid1).Has(\"name\", \"marko\")",
 +                "go": "g.V(vid1).Has(\"name\", \"marko\")",
 +                "groovy": "g.V(vid1).has(\"name\", \"marko\")",
 +                "java": "g.V(vid1).has(\"name\", \"marko\")",
 +                "javascript": "g.V(vid1).has(\"name\", \"marko\")",
 +                "python": "g.V(vid1).has('name', 'marko')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_markoX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", \"marko\")",
 +                "language": "g.V().has(\"name\", \"marko\")",
 +                "canonical": "g.V().has(\"name\", \"marko\")",
 +                "anonymized": "g.V().has(string0, string1)",
 +                "dotnet": "g.V().Has(\"name\", \"marko\")",
 +                "go": "g.V().Has(\"name\", \"marko\")",
 +                "groovy": "g.V().has(\"name\", \"marko\")",
 +                "java": "g.V().has(\"name\", \"marko\")",
 +                "javascript": "g.V().has(\"name\", \"marko\")",
 +                "python": "g.V().has('name', 'marko')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_blahX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", \"blah\")",
 +                "language": "g.V().has(\"name\", \"blah\")",
 +                "canonical": "g.V().has(\"name\", \"blah\")",
 +                "anonymized": "g.V().has(string0, string1)",
 +                "dotnet": "g.V().Has(\"name\", \"blah\")",
 +                "go": "g.V().Has(\"name\", \"blah\")",
 +                "groovy": "g.V().has(\"name\", \"blah\")",
 +                "java": "g.V().has(\"name\", \"blah\")",
 +                "javascript": "g.V().has(\"name\", \"blah\")",
 +                "python": "g.V().has('name', 'blah')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_gt_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.gt(30))",
 +                "language": "g.V().has(\"age\", P.gt(30))",
 +                "canonical": "g.V().has(\"age\", P.gt(30))",
 +                "anonymized": "g.V().has(string0, P.gt(number0))",
 +                "dotnet": "g.V().Has(\"age\", P.Gt(30))",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Gt(30))",
 +                "groovy": "g.V().has(\"age\", P.gt(30))",
 +                "java": "g.V().has(\"age\", P.gt(30))",
 +                "javascript": "g.V().has(\"age\", P.gt(30))",
 +                "python": "g.V().has('age', P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_hasXage_gt_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "language": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "canonical": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "anonymized": "g.V(vid1).has(string0, P.gt(number0))",
 +                "dotnet": "g.V(vid1).Has(\"age\", P.Gt(30))",
 +                "go": "g.V(vid1).Has(\"age\", gremlingo.P.Gt(30))",
 +                "groovy": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "java": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "javascript": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "python": "g.V(vid1).has('age', P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXpersonvar_age_gt_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(xx1, \"age\", P.gt(30))",
 +                "language": "g.V().has(xx1, \"age\", P.gt(30))",
 +                "canonical": "g.V().has(xx1, \"age\", P.gt(30))",
 +                "anonymized": "g.V().has(xx1, string0, P.gt(number0))",
 +                "dotnet": "g.V().Has((string) xx1, \"age\", P.Gt(30))",
 +                "go": "g.V().Has(xx1, \"age\", gremlingo.P.Gt(30))",
 +                "groovy": "g.V().has(xx1, \"age\", P.gt(30))",
 +                "java": "g.V().has(xx1, \"age\", P.gt(30))",
 +                "javascript": "g.V().has(xx1, \"age\", P.gt(30))",
 +                "python": "g.V().has(xx1, 'age', P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX4X_hasXage_gt_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "language": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "canonical": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "anonymized": "g.V(vid4).has(string0, P.gt(number0))",
 +                "dotnet": "g.V(vid4).Has(\"age\", P.Gt(30))",
 +                "go": "g.V(vid4).Has(\"age\", gremlingo.P.Gt(30))",
 +                "groovy": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "java": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "javascript": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "python": "g.V(vid4).has('age', P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VXv1X_hasXage_gt_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "language": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "canonical": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "anonymized": "g.V(vid1).has(string0, P.gt(number0))",
 +                "dotnet": "g.V(vid1).Has(\"age\", P.Gt(30))",
 +                "go": "g.V(vid1).Has(\"age\", gremlingo.P.Gt(30))",
 +                "groovy": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "java": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "javascript": "g.V(vid1).has(\"age\", P.gt(30))",
 +                "python": "g.V(vid1).has('age', P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VXv4X_hasXage_gt_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "language": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "canonical": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "anonymized": "g.V(vid4).has(string0, P.gt(number0))",
 +                "dotnet": "g.V(vid4).Has(\"age\", P.Gt(30))",
 +                "go": "g.V(vid4).Has(\"age\", gremlingo.P.Gt(30))",
 +                "groovy": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "java": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "javascript": "g.V(vid4).has(\"age\", P.gt(30))",
 +                "python": "g.V(vid4).has('age', P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_hasXid_2X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid2).has(\"age\", P.gt(30))",
 +                "language": "g.V(vid2).has(\"age\", P.gt(30))",
 +                "canonical": "g.V(vid2).has(\"age\", P.gt(30))",
 +                "anonymized": "g.V(vid2).has(string0, P.gt(number0))",
 +                "dotnet": "g.V(vid2).Has(\"age\", P.Gt(30))",
 +                "go": "g.V(vid2).Has(\"age\", gremlingo.P.Gt(30))",
 +                "groovy": "g.V(vid2).has(\"age\", P.gt(30))",
 +                "java": "g.V(vid2).has(\"age\", P.gt(30))",
 +                "javascript": "g.V(vid2).has(\"age\", P.gt(30))",
 +                "python": "g.V(vid2).has('age', P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXblahX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"blah\")",
 +                "language": "g.V().has(\"blah\")",
 +                "canonical": "g.V().has(\"blah\")",
 +                "anonymized": "g.V().has(string0)",
 +                "dotnet": "g.V().Has(\"blah\")",
 +                "go": "g.V().Has(\"blah\")",
 +                "groovy": "g.V().has(\"blah\")",
 +                "java": "g.V().has(\"blah\")",
 +                "javascript": "g.V().has(\"blah\")",
 +                "python": "g.V().has('blah')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_name_markoX_age",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\", \"name\", \"marko\").values(\"age\")",
 +                "language": "g.V().has(\"person\", \"name\", \"marko\").values(\"age\")",
 +                "canonical": "g.V().has(\"person\", \"name\", \"marko\").values(\"age\")",
 +                "anonymized": "g.V().has(string0, string1, string2).values(string3)",
 +                "dotnet": "g.V().Has(\"person\", \"name\", \"marko\").Values<object>(\"age\")",
 +                "go": "g.V().Has(\"person\", \"name\", \"marko\").Values(\"age\")",
 +                "groovy": "g.V().has(\"person\", \"name\", \"marko\").values(\"age\")",
 +                "java": "g.V().has(\"person\", \"name\", \"marko\").values(\"age\")",
 +                "javascript": "g.V().has(\"person\", \"name\", \"marko\").values(\"age\")",
 +                "python": "g.V().has('person', 'name', 'marko').values('age')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_name_markovarX_age",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\", \"name\", xx1).values(\"age\")",
 +                "language": "g.V().has(\"person\", \"name\", xx1).values(\"age\")",
 +                "canonical": "g.V().has(\"person\", \"name\", xx1).values(\"age\")",
 +                "anonymized": "g.V().has(string0, string1, xx1).values(string2)",
 +                "dotnet": "g.V().Has(\"person\", \"name\", (object) xx1).Values<object>(\"age\")",
 +                "go": "g.V().Has(\"person\", \"name\", xx1).Values(\"age\")",
 +                "groovy": "g.V().has(\"person\", \"name\", xx1).values(\"age\")",
 +                "java": "g.V().has(\"person\", \"name\", xx1).values(\"age\")",
 +                "javascript": "g.V().has(\"person\", \"name\", xx1).values(\"age\")",
 +                "python": "g.V().has('person', 'name', xx1).values('age')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXpersonvar_name_markoX_age",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(xx1, \"name\", \"marko\").values(\"age\")",
 +                "language": "g.V().has(xx1, \"name\", \"marko\").values(\"age\")",
 +                "canonical": "g.V().has(xx1, \"name\", \"marko\").values(\"age\")",
 +                "anonymized": "g.V().has(xx1, string0, string1).values(string2)",
 +                "dotnet": "g.V().Has((string) xx1, \"name\", \"marko\").Values<object>(\"age\")",
 +                "go": "g.V().Has(xx1, \"name\", \"marko\").Values(\"age\")",
 +                "groovy": "g.V().has(xx1, \"name\", \"marko\").values(\"age\")",
 +                "java": "g.V().has(xx1, \"name\", \"marko\").values(\"age\")",
 +                "javascript": "g.V().has(xx1, \"name\", \"marko\").values(\"age\")",
 +                "python": "g.V().has(xx1, 'name', 'marko').values('age')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outE_hasXweight_inside_0_06X_inV",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).outE().has(\"weight\", P.inside(0.0, 0.6)).inV()",
 +                "language": "g.V(vid1).outE().has(\"weight\", P.inside(0.0, 0.6)).inV()",
 +                "canonical": "g.V(vid1).outE().has(\"weight\", P.inside(0.0, 0.6)).inV()",
 +                "anonymized": "g.V(vid1).outE().has(string0, P.inside(number0, number1)).inV()",
 +                "dotnet": "g.V(vid1).OutE().Has(\"weight\", P.Inside(0.0, 0.6)).InV()",
 +                "go": "g.V(vid1).OutE().Has(\"weight\", gremlingo.P.Inside(0.0, 0.6)).InV()",
 +                "groovy": "g.V(vid1).outE().has(\"weight\", P.inside(0.0, 0.6)).inV()",
 +                "java": "g.V(vid1).outE().has(\"weight\", P.inside(0.0, 0.6)).inV()",
 +                "javascript": "g.V(vid1).outE().has(\"weight\", P.inside(0.0, 0.6)).inV()",
 +                "python": "g.V(vid1).out_e().has('weight', P.inside(0.0, 0.6)).in_v()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_EX11X_outV_outE_hasXid_10X",
 +        "traversals": [
 +            {
 +                "original": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "language": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "canonical": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "anonymized": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "dotnet": "g.E(eid11).OutV().OutE().Has(T.Id, (object) eid10)",
 +                "go": "g.E(eid11).OutV().OutE().Has(gremlingo.T.Id, eid10)",
 +                "groovy": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "java": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "javascript": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "python": "g.E(eid11).out_v().out_e().has(T.id_, eid10)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_EX11X_outV_outE_hasXid_10AsStringX",
 +        "traversals": [
 +            {
 +                "original": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "language": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "canonical": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "anonymized": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "dotnet": "g.E(eid11).OutV().OutE().Has(T.Id, (object) eid10)",
 +                "go": "g.E(eid11).OutV().OutE().Has(gremlingo.T.Id, eid10)",
 +                "groovy": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "java": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "javascript": "g.E(eid11).outV().outE().has(T.id, eid10)",
 +                "python": "g.E(eid11).out_v().out_e().has(T.id_, eid10)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXlocationX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"location\")",
 +                "language": "g.V().has(\"location\")",
 +                "canonical": "g.V().has(\"location\")",
 +                "anonymized": "g.V().has(string0)",
 +                "dotnet": "g.V().Has(\"location\")",
 +                "go": "g.V().Has(\"location\")",
 +                "groovy": "g.V().has(\"location\")",
 +                "java": "g.V().has(\"location\")",
 +                "javascript": "g.V().has(\"location\")",
 +                "python": "g.V().has('location')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_withinX27X_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.within(27)).count()",
 +                "language": "g.V().has(\"age\", P.within(27)).count()",
 +                "canonical": "g.V().has(\"age\", P.within(27)).count()",
 +                "anonymized": "g.V().has(string0, P.within(number0)).count()",
 +                "dotnet": "g.V().Has(\"age\", P.Within(27)).Count()",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Within(27)).Count()",
 +                "groovy": "g.V().has(\"age\", P.within(27)).count()",
 +                "java": "g.V().has(\"age\", P.within(27)).count()",
 +                "javascript": "g.V().has(\"age\", P.within(27)).count()",
 +                "python": "g.V().has('age', P.within(27)).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_withinX27_nullX_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.within(27,null)).count()",
 +                "language": "g.V().has(\"age\", P.within(27, null)).count()",
 +                "canonical": "g.V().has(\"age\", P.within(27, null)).count()",
 +                "anonymized": "g.V().has(string0, P.within(number0, object0)).count()",
 +                "dotnet": "g.V().Has(\"age\", P.Within(27, null)).Count()",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Within(27, nil)).Count()",
 +                "groovy": "g.V().has(\"age\", P.within(27, null)).count()",
 +                "java": "g.V().has(\"age\", P.within(27, null)).count()",
 +                "javascript": "g.V().has(\"age\", P.within(27, null)).count()",
 +                "python": "g.V().has('age', P.within(27, None)).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_withinX27_29X_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.within(27,29)).count()",
 +                "language": "g.V().has(\"age\", P.within(27, 29)).count()",
 +                "canonical": "g.V().has(\"age\", P.within(27, 29)).count()",
 +                "anonymized": "g.V().has(string0, P.within(number0, number1)).count()",
 +                "dotnet": "g.V().Has(\"age\", P.Within(27, 29)).Count()",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Within(27, 29)).Count()",
 +                "groovy": "g.V().has(\"age\", P.within(27, 29)).count()",
 +                "java": "g.V().has(\"age\", P.within(27, 29)).count()",
 +                "javascript": "g.V().has(\"age\", P.within(27, 29)).count()",
 +                "python": "g.V().has('age', P.within(27, 29)).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_withoutX27X_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.without(27)).count()",
 +                "language": "g.V().has(\"age\", P.without(27)).count()",
 +                "canonical": "g.V().has(\"age\", P.without(27)).count()",
 +                "anonymized": "g.V().has(string0, P.without(number0)).count()",
 +                "dotnet": "g.V().Has(\"age\", P.Without(27)).Count()",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Without(27)).Count()",
 +                "groovy": "g.V().has(\"age\", P.without(27)).count()",
 +                "java": "g.V().has(\"age\", P.without(27)).count()",
 +                "javascript": "g.V().has(\"age\", P.without(27)).count()",
 +                "python": "g.V().has('age', P.without(27)).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_withoutX27_29X_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.without(27,29)).count()",
 +                "language": "g.V().has(\"age\", P.without(27, 29)).count()",
 +                "canonical": "g.V().has(\"age\", P.without(27, 29)).count()",
 +                "anonymized": "g.V().has(string0, P.without(number0, number1)).count()",
 +                "dotnet": "g.V().Has(\"age\", P.Without(27, 29)).Count()",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Without(27, 29)).Count()",
 +                "groovy": "g.V().has(\"age\", P.without(27, 29)).count()",
 +                "java": "g.V().has(\"age\", P.without(27, 29)).count()",
 +                "javascript": "g.V().has(\"age\", P.without(27, 29)).count()",
 +                "python": "g.V().has('age', P.without(27, 29)).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_age_withinX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\", \"age\", P.within())",
 +                "language": "g.V().has(\"person\", \"age\", P.within())",
 +                "canonical": "g.V().has(\"person\", \"age\", P.within())",
 +                "anonymized": "g.V().has(string0, string1, P.within())",
 +                "dotnet": "g.V().Has(\"person\", \"age\", P.Within())",
 +                "go": "g.V().Has(\"person\", \"age\", gremlingo.P.Within())",
 +                "groovy": "g.V().has(\"person\", \"age\", P.within())",
 +                "java": "g.V().has(\"person\", \"age\", P.within())",
 +                "javascript": "g.V().has(\"person\", \"age\", P.within())",
 +                "python": "g.V().has('person', 'age', P.within())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_age_withoutX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\", \"age\", P.without())",
 +                "language": "g.V().has(\"person\", \"age\", P.without())",
 +                "canonical": "g.V().has(\"person\", \"age\", P.without())",
 +                "anonymized": "g.V().has(string0, string1, P.without())",
 +                "dotnet": "g.V().Has(\"person\", \"age\", P.Without())",
 +                "go": "g.V().Has(\"person\", \"age\", gremlingo.P.Without())",
 +                "groovy": "g.V().has(\"person\", \"age\", P.without())",
 +                "java": "g.V().has(\"person\", \"age\", P.without())",
 +                "javascript": "g.V().has(\"person\", \"age\", P.without())",
 +                "python": "g.V().has('person', 'age', P.without())"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_containingXarkXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.containing(\"ark\"))",
 +                "language": "g.V().has(\"name\", TextP.containing(\"ark\"))",
 +                "canonical": "g.V().has(\"name\", TextP.containing(\"ark\"))",
 +                "anonymized": "g.V().has(string0, TextP.containing(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.Containing(\"ark\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.Containing(\"ark\"))",
 +                "groovy": "g.V().has(\"name\", TextP.containing(\"ark\"))",
 +                "java": "g.V().has(\"name\", TextP.containing(\"ark\"))",
 +                "javascript": "g.V().has(\"name\", TextP.containing(\"ark\"))",
 +                "python": "g.V().has('name', TextP.containing('ark'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_startingWithXmarXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.startingWith(\"mar\"))",
 +                "language": "g.V().has(\"name\", TextP.startingWith(\"mar\"))",
 +                "canonical": "g.V().has(\"name\", TextP.startingWith(\"mar\"))",
 +                "anonymized": "g.V().has(string0, TextP.startingWith(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.StartingWith(\"mar\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.StartingWith(\"mar\"))",
 +                "groovy": "g.V().has(\"name\", TextP.startingWith(\"mar\"))",
 +                "java": "g.V().has(\"name\", TextP.startingWith(\"mar\"))",
 +                "javascript": "g.V().has(\"name\", TextP.startingWith(\"mar\"))",
 +                "python": "g.V().has('name', TextP.starting_with('mar'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_endingWithXasXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.endingWith(\"as\"))",
 +                "language": "g.V().has(\"name\", TextP.endingWith(\"as\"))",
 +                "canonical": "g.V().has(\"name\", TextP.endingWith(\"as\"))",
 +                "anonymized": "g.V().has(string0, TextP.endingWith(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.EndingWith(\"as\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.EndingWith(\"as\"))",
 +                "groovy": "g.V().has(\"name\", TextP.endingWith(\"as\"))",
 +                "java": "g.V().has(\"name\", TextP.endingWith(\"as\"))",
 +                "javascript": "g.V().has(\"name\", TextP.endingWith(\"as\"))",
 +                "python": "g.V().has('name', TextP.ending_with('as'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXperson_name_containingXoX_andXltXmXXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"person\", \"name\", TextP.containing(\"o\").and(P.lt(\"m\")))",
 +                "language": "g.V().has(\"person\", \"name\", TextP.containing(\"o\").and(P.lt(\"m\")))",
 +                "canonical": "g.V().has(\"person\", \"name\", TextP.containing(\"o\").and(P.lt(\"m\")))",
 +                "anonymized": "g.V().has(string0, string1, TextP.containing(string2).and(P.lt(string3)))",
 +                "dotnet": "g.V().Has(\"person\", \"name\", TextP.Containing(\"o\").And(P.Lt(\"m\")))",
 +                "go": "g.V().Has(\"person\", \"name\", gremlingo.TextP.Containing(\"o\").And(gremlingo.P.Lt(\"m\")))",
 +                "groovy": "g.V().has(\"person\", \"name\", TextP.containing(\"o\").and(P.lt(\"m\")))",
 +                "java": "g.V().has(\"person\", \"name\", TextP.containing(\"o\").and(P.lt(\"m\")))",
 +                "javascript": "g.V().has(\"person\", \"name\", TextP.containing(\"o\").and(P.lt(\"m\")))",
 +                "python": "g.V().has('person', 'name', TextP.containing('o').and_(P.lt('m')))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_gtXmX_andXcontainingXoXXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", P.gt(\"m\").and(TextP.containing(\"o\")))",
 +                "language": "g.V().has(\"name\", P.gt(\"m\").and(TextP.containing(\"o\")))",
 +                "canonical": "g.V().has(\"name\", P.gt(\"m\").and(TextP.containing(\"o\")))",
 +                "anonymized": "g.V().has(string0, P.gt(string1).and(TextP.containing(string2)))",
 +                "dotnet": "g.V().Has(\"name\", P.Gt(\"m\").And(TextP.Containing(\"o\")))",
 +                "go": "g.V().Has(\"name\", gremlingo.P.Gt(\"m\").And(gremlingo.TextP.Containing(\"o\")))",
 +                "groovy": "g.V().has(\"name\", P.gt(\"m\").and(TextP.containing(\"o\")))",
 +                "java": "g.V().has(\"name\", P.gt(\"m\").and(TextP.containing(\"o\")))",
 +                "javascript": "g.V().has(\"name\", P.gt(\"m\").and(TextP.containing(\"o\")))",
 +                "python": "g.V().has('name', P.gt('m').and_(TextP.containing('o')))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_not_containingXarkXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.notContaining(\"ark\"))",
 +                "language": "g.V().has(\"name\", TextP.notContaining(\"ark\"))",
 +                "canonical": "g.V().has(\"name\", TextP.notContaining(\"ark\"))",
 +                "anonymized": "g.V().has(string0, TextP.notContaining(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.NotContaining(\"ark\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.NotContaining(\"ark\"))",
 +                "groovy": "g.V().has(\"name\", TextP.notContaining(\"ark\"))",
 +                "java": "g.V().has(\"name\", TextP.notContaining(\"ark\"))",
 +                "javascript": "g.V().has(\"name\", TextP.notContaining(\"ark\"))",
 +                "python": "g.V().has('name', TextP.not_containing('ark'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_not_startingWithXmarXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.notStartingWith(\"mar\"))",
 +                "language": "g.V().has(\"name\", TextP.notStartingWith(\"mar\"))",
 +                "canonical": "g.V().has(\"name\", TextP.notStartingWith(\"mar\"))",
 +                "anonymized": "g.V().has(string0, TextP.notStartingWith(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.NotStartingWith(\"mar\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.NotStartingWith(\"mar\"))",
 +                "groovy": "g.V().has(\"name\", TextP.notStartingWith(\"mar\"))",
 +                "java": "g.V().has(\"name\", TextP.notStartingWith(\"mar\"))",
 +                "javascript": "g.V().has(\"name\", TextP.notStartingWith(\"mar\"))",
 +                "python": "g.V().has('name', TextP.not_starting_with('mar'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_not_endingWithXasXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.notEndingWith(\"as\"))",
 +                "language": "g.V().has(\"name\", TextP.notEndingWith(\"as\"))",
 +                "canonical": "g.V().has(\"name\", TextP.notEndingWith(\"as\"))",
 +                "anonymized": "g.V().has(string0, TextP.notEndingWith(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.NotEndingWith(\"as\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.NotEndingWith(\"as\"))",
 +                "groovy": "g.V().has(\"name\", TextP.notEndingWith(\"as\"))",
 +                "java": "g.V().has(\"name\", TextP.notEndingWith(\"as\"))",
 +                "javascript": "g.V().has(\"name\", TextP.notEndingWith(\"as\"))",
 +                "python": "g.V().has('name', TextP.not_ending_with('as'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_regexXrMarXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.regex(\"^mar\"))",
 +                "language": "g.V().has(\"name\", TextP.regex(\"^mar\"))",
 +                "canonical": "g.V().has(\"name\", TextP.regex(\"^mar\"))",
 +                "anonymized": "g.V().has(string0, TextP.regex(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.Regex(\"^mar\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.Regex(\"^mar\"))",
 +                "groovy": "g.V().has(\"name\", TextP.regex(\"^mar\"))",
 +                "java": "g.V().has(\"name\", TextP.regex(\"^mar\"))",
 +                "javascript": "g.V().has(\"name\", TextP.regex(\"^mar\"))",
 +                "python": "g.V().has('name', TextP.regex('^mar'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_notRegexXrMarXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", TextP.notRegex(\"^mar\"))",
 +                "language": "g.V().has(\"name\", TextP.notRegex(\"^mar\"))",
 +                "canonical": "g.V().has(\"name\", TextP.notRegex(\"^mar\"))",
 +                "anonymized": "g.V().has(string0, TextP.notRegex(string1))",
 +                "dotnet": "g.V().Has(\"name\", TextP.NotRegex(\"^mar\"))",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.NotRegex(\"^mar\"))",
 +                "groovy": "g.V().has(\"name\", TextP.notRegex(\"^mar\"))",
 +                "java": "g.V().has(\"name\", TextP.notRegex(\"^mar\"))",
 +                "javascript": "g.V().has(\"name\", TextP.notRegex(\"^mar\"))",
 +                "python": "g.V().has('name', TextP.not_regex('^mar'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_regexXTinkerXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "language": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "canonical": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"software\").Property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "go": "g.AddV(\"software\").Property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "groovy": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "java": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "javascript": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "python": "g.add_v('software').property('name', 'Apache TinkerPop\u00a9')"
 +            },
 +            {
 +                "original": "g.V().has(\"name\", TextP.regex(\"Tinker\")).values(\"name\")",
 +                "language": "g.V().has(\"name\", TextP.regex(\"Tinker\")).values(\"name\")",
 +                "canonical": "g.V().has(\"name\", TextP.regex(\"Tinker\")).values(\"name\")",
 +                "anonymized": "g.V().has(string0, TextP.regex(string1)).values(string0)",
 +                "dotnet": "g.V().Has(\"name\", TextP.Regex(\"Tinker\")).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.Regex(\"Tinker\")).Values(\"name\")",
 +                "groovy": "g.V().has(\"name\", TextP.regex(\"Tinker\")).values(\"name\")",
 +                "java": "g.V().has(\"name\", TextP.regex(\"Tinker\")).values(\"name\")",
 +                "javascript": "g.V().has(\"name\", TextP.regex(\"Tinker\")).values(\"name\")",
 +                "python": "g.V().has('name', TextP.regex('Tinker')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_regexXTinkerUnicodeXX",
 +        "traversals": [
 +            {
 +                "original": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "language": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "canonical": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "anonymized": "g.addV(string0).property(string1, string2)",
 +                "dotnet": "g.AddV((string) \"software\").Property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "go": "g.AddV(\"software\").Property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "groovy": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "java": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "javascript": "g.addV(\"software\").property(\"name\", \"Apache TinkerPop\u00a9\")",
 +                "python": "g.add_v('software').property('name', 'Apache TinkerPop\u00a9')"
 +            },
 +            {
 +                "original": "g.V().has(\"name\", TextP.regex(\"Tinker.*\\u00A9\")).values(\"name\")",
 +                "language": "g.V().has(\"name\", TextP.regex(\"Tinker.*\\u00A9\")).values(\"name\")",
 +                "canonical": "g.V().has(\"name\", TextP.regex(\"Tinker.*\\u00A9\")).values(\"name\")",
 +                "anonymized": "g.V().has(string0, TextP.regex(string1)).values(string0)",
 +                "dotnet": "g.V().Has(\"name\", TextP.Regex(\"Tinker.*\\u00A9\")).Values<object>(\"name\")",
 +                "go": "g.V().Has(\"name\", gremlingo.TextP.Regex(\"Tinker.*\\u00A9\")).Values(\"name\")",
 +                "groovy": "g.V().has(\"name\", TextP.regex(\"Tinker.*\\u00A9\")).values(\"name\")",
 +                "java": "g.V().has(\"name\", TextP.regex(\"Tinker.*\\u00A9\")).values(\"name\")",
 +                "javascript": "g.V().has(\"name\", TextP.regex(\"Tinker.*\\u00A9\")).values(\"name\")",
 +                "python": "g.V().has('name', TextP.regex('Tinker.*\\u00A9')).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXp_neqXvXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"p\", P.neq(\"v\"))",
 +                "language": "g.V().has(\"p\", P.neq(\"v\"))",
 +                "canonical": "g.V().has(\"p\", P.neq(\"v\"))",
 +                "anonymized": "g.V().has(string0, P.neq(string1))",
 +                "dotnet": "g.V().Has(\"p\", P.Neq(\"v\"))",
 +                "go": "g.V().Has(\"p\", gremlingo.P.Neq(\"v\"))",
 +                "groovy": "g.V().has(\"p\", P.neq(\"v\"))",
 +                "java": "g.V().has(\"p\", P.neq(\"v\"))",
 +                "javascript": "g.V().has(\"p\", P.neq(\"v\"))",
 +                "python": "g.V().has('p', P.neq('v'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_gtX18X_andXltX30XXorXgtx35XXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).or(P.gt(35)))",
 +                "language": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).or(P.gt(35)))",
 +                "canonical": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).or(P.gt(35)))",
 +                "anonymized": "g.V().has(string0, P.gt(number0).and(P.lt(number1)).or(P.gt(number2)))",
 +                "dotnet": "g.V().Has(\"age\", P.Gt(18).And(P.Lt(30)).Or(P.Gt(35)))",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Gt(18).And(gremlingo.P.Lt(30)).Or(gremlingo.P.Gt(35)))",
 +                "groovy": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).or(P.gt(35)))",
 +                "java": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).or(P.gt(35)))",
 +                "javascript": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).or(P.gt(35)))",
 +                "python": "g.V().has('age', P.gt(18).and_(P.lt(30)).or_(P.gt(35)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXage_gtX18X_andXltX30XXorXltx35XXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).and(P.lt(35)))",
 +                "language": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).and(P.lt(35)))",
 +                "canonical": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).and(P.lt(35)))",
 +                "anonymized": "g.V().has(string0, P.gt(number0).and(P.lt(number1)).and(P.lt(number2)))",
 +                "dotnet": "g.V().Has(\"age\", P.Gt(18).And(P.Lt(30)).And(P.Lt(35)))",
 +                "go": "g.V().Has(\"age\", gremlingo.P.Gt(18).And(gremlingo.P.Lt(30)).And(gremlingo.P.Lt(35)))",
 +                "groovy": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).and(P.lt(35)))",
 +                "java": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).and(P.lt(35)))",
 +                "javascript": "g.V().has(\"age\", P.gt(18).and(P.lt(30)).and(P.lt(35)))",
 +                "python": "g.V().has('age', P.gt(18).and_(P.lt(30)).and_(P.lt(35)))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXk_withinXcXX_valuesXkX",
 +        "traversals": [
 +            {
 +                "original": "g.addV().property(\"k\", \"\u8f49\u6ce8\").addV().property(\"k\", \"\u2726\").addV().property(\"k\", \"\u2660\").addV().property(\"k\", \"A\")",
 +                "language": "g.addV().property(\"k\", \"\u8f49\u6ce8\").addV().property(\"k\", \"\u2726\").addV().property(\"k\", \"\u2660\").addV().property(\"k\", \"A\")",
 +                "canonical": "g.addV().property(\"k\", \"\u8f49\u6ce8\").addV().property(\"k\", \"\u2726\").addV().property(\"k\", \"\u2660\").addV().property(\"k\", \"A\")",
 +                "anonymized": "g.addV().property(string0, string1).addV().property(string0, string2).addV().property(string0, string3).addV().property(string0, string4)",
 +                "dotnet": "g.AddV().Property(\"k\", \"\u8f49\u6ce8\").AddV().Property(\"k\", \"\u2726\").AddV().Property(\"k\", \"\u2660\").AddV().Property(\"k\", \"A\")",
 +                "go": "g.AddV().Property(\"k\", \"\u8f49\u6ce8\").AddV().Property(\"k\", \"\u2726\").AddV().Property(\"k\", \"\u2660\").AddV().Property(\"k\", \"A\")",
 +                "groovy": "g.addV().property(\"k\", \"\u8f49\u6ce8\").addV().property(\"k\", \"\u2726\").addV().property(\"k\", \"\u2660\").addV().property(\"k\", \"A\")",
 +                "java": "g.addV().property(\"k\", \"\u8f49\u6ce8\").addV().property(\"k\", \"\u2726\").addV().property(\"k\", \"\u2660\").addV().property(\"k\", \"A\")",
 +                "javascript": "g.addV().property(\"k\", \"\u8f49\u6ce8\").addV().property(\"k\", \"\u2726\").addV().property(\"k\", \"\u2660\").addV().property(\"k\", \"A\")",
 +                "python": "g.add_v().property('k', '\u8f49\u6ce8').add_v().property('k', '\u2726').add_v().property('k', '\u2660').add_v().property('k', 'A')"
 +            },
 +            {
 +                "original": "g.V().has(\"k\", P.within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).values(\"k\")",
 +                "language": "g.V().has(\"k\", P.within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).values(\"k\")",
 +                "canonical": "g.V().has(\"k\", P.within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).values(\"k\")",
 +                "anonymized": "g.V().has(string0, P.within(string1, string2, string3)).values(string0)",
 +                "dotnet": "g.V().Has(\"k\", P.Within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).Values<object>(\"k\")",
 +                "go": "g.V().Has(\"k\", gremlingo.P.Within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).Values(\"k\")",
 +                "groovy": "g.V().has(\"k\", P.within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).values(\"k\")",
 +                "java": "g.V().has(\"k\", P.within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).values(\"k\")",
 +                "javascript": "g.V().has(\"k\", P.within(\"\u8f49\u6ce8\", \"\u2726\", \"\u2660\")).values(\"k\")",
 +                "python": "g.V().has('k', P.within('\u8f49\u6ce8', '\u2726', '\u2660')).values('k')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(null)",
 +                "language": "g.V().has(null)",
 +                "canonical": "g.V().has(null)",
 +                "anonymized": "g.V().has(string0)",
 +                "dotnet": "g.V().Has(null)",
 +                "go": "g.V().Has(nil)",
 +                "groovy": "g.V().has(null)",
 +                "java": "g.V().has(null)",
 +                "javascript": "g.V().has(null)",
 +                "python": "g.V().has(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXnull_testnullkeyX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(null, \"test-null-key\")",
 +                "language": "g.V().has(null, \"test-null-key\")",
 +                "canonical": "g.V().has(null, \"test-null-key\")",
 +                "anonymized": "g.V().has(string0, string1)",
 +                "dotnet": "g.V().Has((string) null, \"test-null-key\")",
 +                "go": "g.V().Has(nil, \"test-null-key\")",
 +                "groovy": "g.V().has(null, \"test-null-key\")",
 +                "java": "g.V().has(null, \"test-null-key\")",
 +                "javascript": "g.V().has(null, \"test-null-key\")",
 +                "python": "g.V().has(None, 'test-null-key')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_hasXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.E().has(null)",
 +                "language": "g.E().has(null)",
 +                "canonical": "g.E().has(null)",
 +                "anonymized": "g.E().has(string0)",
 +                "dotnet": "g.E().Has(null)",
 +                "go": "g.E().Has(nil)",
 +                "groovy": "g.E().has(null)",
 +                "java": "g.E().has(null)",
 +                "javascript": "g.E().has(null)",
 +                "python": "g.E().has(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXlabel_personX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(T.label, \"person\")",
 +                "language": "g.V().has(T.label, \"person\")",
 +                "canonical": "g.V().has(T.label, \"person\")",
 +                "anonymized": "g.V().has(T.label, string0)",
 +                "dotnet": "g.V().Has(T.Label, \"person\")",
 +                "go": "g.V().Has(gremlingo.T.Label, \"person\")",
 +                "groovy": "g.V().has(T.label, \"person\")",
 +                "java": "g.V().has(T.label, \"person\")",
 +                "javascript": "g.V().has(T.label, \"person\")",
 +                "python": "g.V().has(T.label, 'person')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXlabel_eqXpersonXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(T.label, eq(\"person\"))",
 +                "language": "g.V().has(T.label, P.eq(\"person\"))",
 +                "canonical": "g.V().has(T.label, P.eq(\"person\"))",
 +                "anonymized": "g.V().has(T.label, P.eq(string0))",
 +                "dotnet": "g.V().Has(T.Label, P.Eq(\"person\"))",
 +                "go": "g.V().Has(gremlingo.T.Label, gremlingo.P.Eq(\"person\"))",
 +                "groovy": "g.V().has(T.label, P.eq(\"person\"))",
 +                "java": "g.V().has(T.label, P.eq(\"person\"))",
 +                "javascript": "g.V().has(T.label, P.eq(\"person\"))",
 +                "python": "g.V().has(T.label, P.eq('person'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXname_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(\"name\", null)",
 +                "language": "g.V().has(\"name\", null)",
 +                "canonical": "g.V().has(\"name\", null)",
 +                "anonymized": "g.V().has(string0, object0)",
 +                "dotnet": "g.V().Has(\"name\", (object) null)",
 +                "go": "g.V().Has(\"name\", nil)",
 +                "groovy": "g.V().has(\"name\", null)",
 +                "java": "g.V().has(\"name\", null)",
 +                "javascript": "g.V().has(\"name\", null)",
 +                "python": "g.V().has('name', None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXemptyX_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(xx1).count()",
 +                "language": "g.V().hasId(xx1).count()",
 +                "canonical": "g.V().hasId(xx1).count()",
 +                "anonymized": "g.V().hasId(xx1).count()",
 +                "dotnet": "g.V().HasId(xx1).Count()",
 +                "go": "g.V().HasId(xx1).Count()",
 +                "groovy": "g.V().hasId(xx1).count()",
 +                "java": "g.V().hasId(xx1).count()",
 +                "javascript": "g.V().hasId(xx1).count()",
 +                "python": "g.V().has_id(xx1).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXwithinXemptyXX_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(P.within([])).count()",
 +                "language": "g.V().hasId(P.within([])).count()",
 +                "canonical": "g.V().hasId(P.within([])).count()",
 +                "anonymized": "g.V().hasId(P.within(list0)).count()",
 +                "dotnet": "g.V().HasId(P.Within(new List<object> {  })).Count()",
 +                "go": "g.V().HasId(gremlingo.P.Within([]interface{}{})).Count()",
 +                "groovy": "g.V().hasId(P.within([])).count()",
 +                "java": "g.V().hasId(P.within(new ArrayList<Object>() {{  }})).count()",
 +                "javascript": "g.V().hasId(P.within([])).count()",
 +                "python": "g.V().has_id(P.within([])).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXwithoutXemptyXX_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(P.without([])).count()",
 +                "language": "g.V().hasId(P.without([])).count()",
 +                "canonical": "g.V().hasId(P.without([])).count()",
 +                "anonymized": "g.V().hasId(P.without(list0)).count()",
 +                "dotnet": "g.V().HasId(P.Without(new List<object> {  })).Count()",
 +                "go": "g.V().HasId(gremlingo.P.Without([]interface{}{})).Count()",
 +                "groovy": "g.V().hasId(P.without([])).count()",
 +                "java": "g.V().hasId(P.without(new ArrayList<Object>() {{  }})).count()",
 +                "javascript": "g.V().hasId(P.without([])).count()",
 +                "python": "g.V().has_id(P.without([])).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_notXhasIdXwithinXemptyXXX_count",
 +        "traversals": [
 +            {
 +                "original": "g.V().not(__.hasId(P.within([]))).count()",
 +                "language": "g.V().not(__.hasId(P.within([]))).count()",
 +                "canonical": "g.V().not(__.hasId(P.within([]))).count()",
 +                "anonymized": "g.V().not(__.hasId(P.within(list0))).count()",
 +                "dotnet": "g.V().Not(__.HasId(P.Within(new List<object> {  }))).Count()",
 +                "go": "g.V().Not(gremlingo.T__.HasId(gremlingo.P.Within([]interface{}{}))).Count()",
 +                "groovy": "g.V().not(__.hasId(P.within([]))).count()",
 +                "java": "g.V().not(__.hasId(P.within(new ArrayList<Object>() {{  }}))).count()",
 +                "javascript": "g.V().not(__.hasId(P.within([]))).count()",
 +                "python": "g.V().not_(__.has_id(P.within([]))).count()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(null)",
 +                "language": "g.V().hasId(null)",
 +                "canonical": "g.V().hasId(null)",
 +                "anonymized": "g.V().hasId(object0)",
 +                "dotnet": "g.V().HasId(null)",
 +                "go": "g.V().HasId(nil)",
 +                "groovy": "g.V().hasId(null)",
 +                "java": "g.V().hasId(null)",
 +                "javascript": "g.V().hasId(null)",
 +                "python": "g.V().has_id(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXeqXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(P.eq(null))",
 +                "language": "g.V().hasId(P.eq(null))",
 +                "canonical": "g.V().hasId(P.eq(null))",
 +                "anonymized": "g.V().hasId(P.eq(object0))",
 +                "dotnet": "g.V().HasId(P.Eq(null))",
 +                "go": "g.V().HasId(gremlingo.P.Eq(nil))",
 +                "groovy": "g.V().hasId(P.eq(null))",
 +                "java": "g.V().hasId(P.eq(null))",
 +                "javascript": "g.V().hasId(P.eq(null))",
 +                "python": "g.V().has_id(P.eq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdX2_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(vid2, null)",
 +                "language": "g.V().hasId(vid2, null)",
 +                "canonical": "g.V().hasId(vid2, null)",
 +                "anonymized": "g.V().hasId(vid2, object0)",
 +                "dotnet": "g.V().HasId(vid2, null)",
 +                "go": "g.V().HasId(vid2, nil)",
 +                "groovy": "g.V().hasId(vid2, null)",
 +                "java": "g.V().hasId(vid2, null)",
 +                "javascript": "g.V().hasId(vid2, null)",
 +                "python": "g.V().has_id(vid2, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXmarkovar_vadasvarX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(vid1, vid2)",
 +                "language": "g.V().hasId(vid1, vid2)",
 +                "canonical": "g.V().hasId(vid1, vid2)",
 +                "anonymized": "g.V().hasId(vid1, vid2)",
 +                "dotnet": "g.V().HasId(vid1, vid2)",
 +                "go": "g.V().HasId(vid1, vid2)",
 +                "groovy": "g.V().hasId(vid1, vid2)",
 +                "java": "g.V().hasId(vid1, vid2)",
 +                "javascript": "g.V().hasId(vid1, vid2)",
 +                "python": "g.V().has_id(vid1, vid2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXmarkovar_vadasvar_petervarX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(vid1, vid2)",
 +                "language": "g.V().hasId(vid1, vid2)",
 +                "canonical": "g.V().hasId(vid1, vid2)",
 +                "anonymized": "g.V().hasId(vid1, vid2)",
 +                "dotnet": "g.V().HasId(vid1, vid2)",
 +                "go": "g.V().HasId(vid1, vid2)",
 +                "groovy": "g.V().hasId(vid1, vid2)",
 +                "java": "g.V().hasId(vid1, vid2)",
 +                "javascript": "g.V().hasId(vid1, vid2)",
 +                "python": "g.V().has_id(vid1, vid2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdX2AsString_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(vid2, null)",
 +                "language": "g.V().hasId(vid2, null)",
 +                "canonical": "g.V().hasId(vid2, null)",
 +                "anonymized": "g.V().hasId(vid2, object0)",
 +                "dotnet": "g.V().HasId(vid2, null)",
 +                "go": "g.V().HasId(vid2, nil)",
 +                "groovy": "g.V().hasId(vid2, null)",
 +                "java": "g.V().hasId(vid2, null)",
 +                "javascript": "g.V().hasId(vid2, null)",
 +                "python": "g.V().has_id(vid2, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdX1AsString_2AsString_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(vid1, vid2, null)",
 +                "language": "g.V().hasId(vid1, vid2, null)",
 +                "canonical": "g.V().hasId(vid1, vid2, null)",
 +                "anonymized": "g.V().hasId(vid1, vid2, object0)",
 +                "dotnet": "g.V().HasId(vid1, vid2, null)",
 +                "go": "g.V().HasId(vid1, vid2, nil)",
 +                "groovy": "g.V().hasId(vid1, vid2, null)",
 +                "java": "g.V().hasId(vid1, vid2, null)",
 +                "javascript": "g.V().hasId(vid1, vid2, null)",
 +                "python": "g.V().has_id(vid1, vid2, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdXnull_2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(null, vid2)",
 +                "language": "g.V().hasId(null, vid2)",
 +                "canonical": "g.V().hasId(null, vid2)",
 +                "anonymized": "g.V().hasId(object0, vid2)",
 +                "dotnet": "g.V().HasId(null, vid2)",
 +                "go": "g.V().HasId(nil, vid2)",
 +                "groovy": "g.V().hasId(null, vid2)",
 +                "java": "g.V().hasId(null, vid2)",
 +                "javascript": "g.V().hasId(null, vid2)",
 +                "python": "g.V().has_id(None, vid2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasIdX1X_hasIdX2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(vid1).hasId(vid2)",
 +                "language": "g.V().hasId(vid1).hasId(vid2)",
 +                "canonical": "g.V().hasId(vid1).hasId(vid2)",
 +                "anonymized": "g.V().hasId(vid1).hasId(vid2)",
 +                "dotnet": "g.V().HasId(vid1).HasId(vid2)",
 +                "go": "g.V().HasId(vid1).HasId(vid2)",
 +                "groovy": "g.V().hasId(vid1).hasId(vid2)",
 +                "java": "g.V().hasId(vid1).hasId(vid2)",
 +                "javascript": "g.V().hasId(vid1).hasId(vid2)",
 +                "python": "g.V().has_id(vid1).has_id(vid2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_in_hasIdXneqX1XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().in().hasId(P.neq(xx1))",
 +                "language": "g.V().in().hasId(P.neq(xx1))",
 +                "canonical": "g.V().in().hasId(P.neq(xx1))",
 +                "anonymized": "g.V().in().hasId(P.neq(xx1))",
 +                "dotnet": "g.V().In().HasId(P.Neq(xx1))",
 +                "go": "g.V().In().HasId(gremlingo.P.Neq(xx1))",
 +                "groovy": "g.V().in().hasId(P.neq(xx1))",
 +                "java": "g.V().in().hasId(P.neq(xx1))",
 +                "javascript": "g.V().in_().hasId(P.neq(xx1))",
 +                "python": "g.V().in_().has_id(P.neq(xx1))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_hasIdX2X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().hasId(vid2)",
 +                "language": "g.V(vid1).out().hasId(vid2)",
 +                "canonical": "g.V(vid1).out().hasId(vid2)",
 +                "anonymized": "g.V(vid1).out().hasId(vid2)",
 +                "dotnet": "g.V(vid1).Out().HasId(vid2)",
 +                "go": "g.V(vid1).Out().HasId(vid2)",
 +                "groovy": "g.V(vid1).out().hasId(vid2)",
 +                "java": "g.V(vid1).out().hasId(vid2)",
 +                "javascript": "g.V(vid1).out().hasId(vid2)",
 +                "python": "g.V(vid1).out().has_id(vid2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_hasXid_2_3X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "language": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "canonical": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "anonymized": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "dotnet": "g.V(vid1).Out().HasId(vid2, vid3)",
 +                "go": "g.V(vid1).Out().HasId(vid2, vid3)",
 +                "groovy": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "java": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "javascript": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "python": "g.V(vid1).out().has_id(vid2, vid3)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_hasXid_2AsString_3AsStringX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "language": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "canonical": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "anonymized": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "dotnet": "g.V(vid1).Out().HasId(vid2, vid3)",
 +                "go": "g.V(vid1).Out().HasId(vid2, vid3)",
 +                "groovy": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "java": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "javascript": "g.V(vid1).out().hasId(vid2, vid3)",
 +                "python": "g.V(vid1).out().has_id(vid2, vid3)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1AsStringX_out_hasXid_2AsStringX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().hasId(vid2)",
 +                "language": "g.V(vid1).out().hasId(vid2)",
 +                "canonical": "g.V(vid1).out().hasId(vid2)",
 +                "anonymized": "g.V(vid1).out().hasId(vid2)",
 +                "dotnet": "g.V(vid1).Out().HasId(vid2)",
 +                "go": "g.V(vid1).Out().HasId(vid2)",
 +                "groovy": "g.V(vid1).out().hasId(vid2)",
 +                "java": "g.V(vid1).out().hasId(vid2)",
 +                "javascript": "g.V(vid1).out().hasId(vid2)",
 +                "python": "g.V(vid1).out().has_id(vid2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_hasXid_2_3X_inList",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().hasId(xx1)",
 +                "language": "g.V(vid1).out().hasId(xx1)",
 +                "canonical": "g.V(vid1).out().hasId(xx1)",
 +                "anonymized": "g.V(vid1).out().hasId(xx1)",
 +                "dotnet": "g.V(vid1).Out().HasId(xx1)",
 +                "go": "g.V(vid1).Out().HasId(xx1)",
 +                "groovy": "g.V(vid1).out().hasId(xx1)",
 +                "java": "g.V(vid1).out().hasId(xx1)",
 +                "javascript": "g.V(vid1).out().hasId(xx1)",
 +                "python": "g.V(vid1).out().has_id(xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXid_1_2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(vid1, vid2)",
 +                "language": "g.V().hasId(vid1, vid2)",
 +                "canonical": "g.V().hasId(vid1, vid2)",
 +                "anonymized": "g.V().hasId(vid1, vid2)",
 +                "dotnet": "g.V().HasId(vid1, vid2)",
 +                "go": "g.V().HasId(vid1, vid2)",
 +                "groovy": "g.V().hasId(vid1, vid2)",
 +                "java": "g.V().hasId(vid1, vid2)",
 +                "javascript": "g.V().hasId(vid1, vid2)",
 +                "python": "g.V().has_id(vid1, vid2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXid_1_2X_inList",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasId(xx1)",
 +                "language": "g.V().hasId(xx1)",
 +                "canonical": "g.V().hasId(xx1)",
 +                "anonymized": "g.V().hasId(xx1)",
 +                "dotnet": "g.V().HasId(xx1)",
 +                "go": "g.V().HasId(xx1)",
 +                "groovy": "g.V().hasId(xx1)",
 +                "java": "g.V().hasId(xx1)",
 +                "javascript": "g.V().hasId(xx1)",
 +                "python": "g.V().has_id(xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_dedup_properties_hasKeyXageX_value",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().properties().dedup().hasKey(\"age\").value()",
 +                "language": "g.V().both().properties().dedup().hasKey(\"age\").value()",
 +                "canonical": "g.V().both().properties().dedup().hasKey(\"age\").value()",
 +                "anonymized": "g.V().both().properties().dedup().hasKey(string0).value()",
 +                "dotnet": "g.V().Both().Properties<object>().Dedup().HasKey(\"age\").Value<object>()",
 +                "go": "g.V().Both().Properties().Dedup().HasKey(\"age\").Value()",
 +                "groovy": "g.V().both().properties().dedup().hasKey(\"age\").value()",
 +                "java": "g.V().both().properties().dedup().hasKey(\"age\").value()",
 +                "javascript": "g.V().both().properties().dedup().hasKey(\"age\").value()",
 +                "python": "g.V().both().properties().dedup().has_key('age').value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_both_properties_dedup_hasKeyXageX_hasValueXgtX30XX_value",
 +        "traversals": [
 +            {
 +                "original": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "language": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "canonical": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "anonymized": "g.V().both().properties().dedup().hasKey(string0).hasValue(P.gt(number0)).value()",
 +                "dotnet": "g.V().Both().Properties<object>().Dedup().HasKey(\"age\").HasValue(P.Gt(30)).Value<object>()",
 +                "go": "g.V().Both().Properties().Dedup().HasKey(\"age\").HasValue(gremlingo.P.Gt(30)).Value()",
 +                "groovy": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "java": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "javascript": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "python": "g.V().both().properties().dedup().has_key('age').has_value(P.gt(30)).value()"
 +            },
 +            {
 +                "original": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "language": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "canonical": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "anonymized": "g.V().both().properties().dedup().hasKey(string0).hasValue(P.gt(number0)).value()",
 +                "dotnet": "g.V().Both().Properties<object>().Dedup().HasKey(\"age\").HasValue(P.Gt(30)).Value<object>()",
 +                "go": "g.V().Both().Properties().Dedup().HasKey(\"age\").HasValue(gremlingo.P.Gt(30)).Value()",
 +                "groovy": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "java": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "javascript": "g.V().both().properties().dedup().hasKey(\"age\").hasValue(P.gt(30)).value()",
 +                "python": "g.V().both().properties().dedup().has_key('age').has_value(P.gt(30)).value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_bothE_properties_dedup_hasKeyXweightX_value",
 +        "traversals": [
 +            {
 +                "original": "g.V().bothE().properties().dedup().hasKey(\"weight\").value()",
 +                "language": "g.V().bothE().properties().dedup().hasKey(\"weight\").value()",
 +                "canonical": "g.V().bothE().properties().dedup().hasKey(\"weight\").value()",
 +                "anonymized": "g.V().bothE().properties().dedup().hasKey(string0).value()",
 +                "dotnet": "g.V().BothE().Properties<object>().Dedup().HasKey(\"weight\").Value<object>()",
 +                "go": "g.V().BothE().Properties().Dedup().HasKey(\"weight\").Value()",
 +                "groovy": "g.V().bothE().properties().dedup().hasKey(\"weight\").value()",
 +                "java": "g.V().bothE().properties().dedup().hasKey(\"weight\").value()",
 +                "javascript": "g.V().bothE().properties().dedup().hasKey(\"weight\").value()",
 +                "python": "g.V().both_e().properties().dedup().has_key('weight').value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_bothE_properties_dedup_hasKeyXweightX_hasValueXltX0d3XX_value",
 +        "traversals": [
 +            {
 +                "original": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "language": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "canonical": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "anonymized": "g.V().bothE().properties().dedup().hasKey(string0).hasValue(P.lt(number0)).value()",
 +                "dotnet": "g.V().BothE().Properties<object>().Dedup().HasKey(\"weight\").HasValue(P.Lt(0.3)).Value<object>()",
 +                "go": "g.V().BothE().Properties().Dedup().HasKey(\"weight\").HasValue(gremlingo.P.Lt(0.3)).Value()",
 +                "groovy": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "java": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "javascript": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "python": "g.V().both_e().properties().dedup().has_key('weight').has_value(P.lt(0.3)).value()"
 +            },
 +            {
 +                "original": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "language": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "canonical": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "anonymized": "g.V().bothE().properties().dedup().hasKey(string0).hasValue(P.lt(number0)).value()",
 +                "dotnet": "g.V().BothE().Properties<object>().Dedup().HasKey(\"weight\").HasValue(P.Lt(0.3)).Value<object>()",
 +                "go": "g.V().BothE().Properties().Dedup().HasKey(\"weight\").HasValue(gremlingo.P.Lt(0.3)).Value()",
 +                "groovy": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "java": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "javascript": "g.V().bothE().properties().dedup().hasKey(\"weight\").hasValue(P.lt(0.3)).value()",
 +                "python": "g.V().both_e().properties().dedup().has_key('weight').has_value(P.lt(0.3)).value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_hasKeyXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().properties().hasKey(null)",
 +                "language": "g.V().properties().hasKey(null)",
 +                "canonical": "g.V().properties().hasKey(null)",
 +                "anonymized": "g.V().properties().hasKey(string0)",
 +                "dotnet": "g.V().Properties<object>().HasKey((string) null)",
 +                "go": "g.V().Properties().HasKey(nil)",
 +                "groovy": "g.V().properties().hasKey(null)",
 +                "java": "g.V().properties().hasKey(null)",
 +                "javascript": "g.V().properties().hasKey(null)",
 +                "python": "g.V().properties().has_key(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_hasKeyXnull_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().properties().hasKey(null,null)",
 +                "language": "g.V().properties().hasKey(null, null)",
 +                "canonical": "g.V().properties().hasKey(null, null)",
 +                "anonymized": "g.V().properties().hasKey(string0, string0)",
 +                "dotnet": "g.V().Properties<object>().HasKey(null, null)",
 +                "go": "g.V().Properties().HasKey(nil, nil)",
 +                "groovy": "g.V().properties().hasKey(null, null)",
 +                "java": "g.V().properties().hasKey(null, null)",
 +                "javascript": "g.V().properties().hasKey(null, null)",
 +                "python": "g.V().properties().has_key(None, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_hasKeyXnull_ageX_value",
 +        "traversals": [
 +            {
 +                "original": "g.V().properties().hasKey(null, \"age\").value()",
 +                "language": "g.V().properties().hasKey(null, \"age\").value()",
 +                "canonical": "g.V().properties().hasKey(null, \"age\").value()",
 +                "anonymized": "g.V().properties().hasKey(string0, string1).value()",
 +                "dotnet": "g.V().Properties<object>().HasKey(null, \"age\").Value<object>()",
 +                "go": "g.V().Properties().HasKey(nil, \"age\").Value()",
 +                "groovy": "g.V().properties().hasKey(null, \"age\").value()",
 +                "java": "g.V().properties().hasKey(null, \"age\").value()",
 +                "javascript": "g.V().properties().hasKey(null, \"age\").value()",
 +                "python": "g.V().properties().has_key(None, 'age').value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_properties_hasKeyXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.E().properties().hasKey(null)",
 +                "language": "g.E().properties().hasKey(null)",
 +                "canonical": "g.E().properties().hasKey(null)",
 +                "anonymized": "g.E().properties().hasKey(string0)",
 +                "dotnet": "g.E().Properties<object>().HasKey((string) null)",
 +                "go": "g.E().Properties().HasKey(nil)",
 +                "groovy": "g.E().properties().hasKey(null)",
 +                "java": "g.E().properties().hasKey(null)",
 +                "javascript": "g.E().properties().hasKey(null)",
 +                "python": "g.E().properties().has_key(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_properties_hasKeyXnull_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.E().properties().hasKey(null,null)",
 +                "language": "g.E().properties().hasKey(null, null)",
 +                "canonical": "g.E().properties().hasKey(null, null)",
 +                "anonymized": "g.E().properties().hasKey(string0, string0)",
 +                "dotnet": "g.E().Properties<object>().HasKey(null, null)",
 +                "go": "g.E().Properties().HasKey(nil, nil)",
 +                "groovy": "g.E().properties().hasKey(null, null)",
 +                "java": "g.E().properties().hasKey(null, null)",
 +                "javascript": "g.E().properties().hasKey(null, null)",
 +                "python": "g.E().properties().has_key(None, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_properties_hasKeyXnull_weightX_value",
 +        "traversals": [
 +            {
 +                "original": "g.E().properties().hasKey(null, \"weight\").value()",
 +                "language": "g.E().properties().hasKey(null, \"weight\").value()",
 +                "canonical": "g.E().properties().hasKey(null, \"weight\").value()",
 +                "anonymized": "g.E().properties().hasKey(string0, string1).value()",
 +                "dotnet": "g.E().Properties<object>().HasKey(null, \"weight\").Value<object>()",
 +                "go": "g.E().Properties().HasKey(nil, \"weight\").Value()",
 +                "groovy": "g.E().properties().hasKey(null, \"weight\").value()",
 +                "java": "g.E().properties().hasKey(null, \"weight\").value()",
 +                "javascript": "g.E().properties().hasKey(null, \"weight\").value()",
 +                "python": "g.E().properties().has_key(None, 'weight').value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_EX7X_hasLabelXknowsX",
 +        "traversals": [
 +            {
 +                "original": "g.E(eid7).hasLabel(\"knows\")",
 +                "language": "g.E(eid7).hasLabel(\"knows\")",
 +                "canonical": "g.E(eid7).hasLabel(\"knows\")",
 +                "anonymized": "g.E(eid7).hasLabel(string0)",
 +                "dotnet": "g.E(eid7).HasLabel(\"knows\")",
 +                "go": "g.E(eid7).HasLabel(\"knows\")",
 +                "groovy": "g.E(eid7).hasLabel(\"knows\")",
 +                "java": "g.E(eid7).hasLabel(\"knows\")",
 +                "javascript": "g.E(eid7).hasLabel(\"knows\")",
 +                "python": "g.E(eid7).has_label('knows')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_hasLabelXknowsX",
 +        "traversals": [
 +            {
 +                "original": "g.E().hasLabel(\"knows\")",
 +                "language": "g.E().hasLabel(\"knows\")",
 +                "canonical": "g.E().hasLabel(\"knows\")",
 +                "anonymized": "g.E().hasLabel(string0)",
 +                "dotnet": "g.E().HasLabel(\"knows\")",
 +                "go": "g.E().HasLabel(\"knows\")",
 +                "groovy": "g.E().hasLabel(\"knows\")",
 +                "java": "g.E().hasLabel(\"knows\")",
 +                "javascript": "g.E().hasLabel(\"knows\")",
 +                "python": "g.E().has_label('knows')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_hasLabelXuses_traversesX",
 +        "traversals": [
 +            {
 +                "original": "g.E().hasLabel(\"uses\", \"traverses\")",
 +                "language": "g.E().hasLabel(\"uses\", \"traverses\")",
 +                "canonical": "g.E().hasLabel(\"uses\", \"traverses\")",
 +                "anonymized": "g.E().hasLabel(string0, string1)",
 +                "dotnet": "g.E().HasLabel(\"uses\", \"traverses\")",
 +                "go": "g.E().HasLabel(\"uses\", \"traverses\")",
 +                "groovy": "g.E().hasLabel(\"uses\", \"traverses\")",
 +                "java": "g.E().hasLabel(\"uses\", \"traverses\")",
 +                "javascript": "g.E().hasLabel(\"uses\", \"traverses\")",
 +                "python": "g.E().has_label('uses', 'traverses')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXperson_software_blahX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\",\"software\", \"blah\")",
 +                "language": "g.V().hasLabel(\"person\", \"software\", \"blah\")",
 +                "canonical": "g.V().hasLabel(\"person\", \"software\", \"blah\")",
 +                "anonymized": "g.V().hasLabel(string0, string1, string2)",
 +                "dotnet": "g.V().HasLabel(\"person\", \"software\", \"blah\")",
 +                "go": "g.V().HasLabel(\"person\", \"software\", \"blah\")",
 +                "groovy": "g.V().hasLabel(\"person\", \"software\", \"blah\")",
 +                "java": "g.V().hasLabel(\"person\", \"software\", \"blah\")",
 +                "javascript": "g.V().hasLabel(\"person\", \"software\", \"blah\")",
 +                "python": "g.V().has_label('person', 'software', 'blah')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXperson_softwarevarX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\",xx1)",
 +                "language": "g.V().hasLabel(\"person\", xx1)",
 +                "canonical": "g.V().hasLabel(\"person\", xx1)",
 +                "anonymized": "g.V().hasLabel(string0, xx1)",
 +                "dotnet": "g.V().HasLabel(\"person\", (string) xx1)",
 +                "go": "g.V().HasLabel(\"person\", xx1)",
 +                "groovy": "g.V().hasLabel(\"person\", xx1)",
 +                "java": "g.V().hasLabel(\"person\", xx1)",
 +                "javascript": "g.V().hasLabel(\"person\", xx1)",
 +                "python": "g.V().has_label('person', xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_hasLabelXsoftwareX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").hasLabel(\"software\")",
 +                "language": "g.V().hasLabel(\"person\").hasLabel(\"software\")",
 +                "canonical": "g.V().hasLabel(\"person\").hasLabel(\"software\")",
 +                "anonymized": "g.V().hasLabel(string0).hasLabel(string1)",
 +                "dotnet": "g.V().HasLabel(\"person\").HasLabel(\"software\")",
 +                "go": "g.V().HasLabel(\"person\").HasLabel(\"software\")",
 +                "groovy": "g.V().hasLabel(\"person\").hasLabel(\"software\")",
 +                "java": "g.V().hasLabel(\"person\").hasLabel(\"software\")",
 +                "javascript": "g.V().hasLabel(\"person\").hasLabel(\"software\")",
 +                "python": "g.V().has_label('person').has_label('software')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonvarX_hasLabelXsoftwareX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(xx1).hasLabel(\"software\")",
 +                "language": "g.V().hasLabel(xx1).hasLabel(\"software\")",
 +                "canonical": "g.V().hasLabel(xx1).hasLabel(\"software\")",
 +                "anonymized": "g.V().hasLabel(xx1).hasLabel(string0)",
 +                "dotnet": "g.V().HasLabel((string) xx1).HasLabel(\"software\")",
 +                "go": "g.V().HasLabel(xx1).HasLabel(\"software\")",
 +                "groovy": "g.V().hasLabel(xx1).hasLabel(\"software\")",
 +                "java": "g.V().hasLabel(xx1).hasLabel(\"software\")",
 +                "javascript": "g.V().hasLabel(xx1).hasLabel(\"software\")",
 +                "python": "g.V().has_label(xx1).has_label('software')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonvar_softwarevarX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(xx1,xx2)",
 +                "language": "g.V().hasLabel(xx1, xx2)",
 +                "canonical": "g.V().hasLabel(xx1, xx2)",
 +                "anonymized": "g.V().hasLabel(xx1, xx2)",
 +                "dotnet": "g.V().HasLabel((string) xx1, (string) xx2)",
 +                "go": "g.V().HasLabel(xx1, xx2)",
 +                "groovy": "g.V().hasLabel(xx1, xx2)",
 +                "java": "g.V().hasLabel(xx1, xx2)",
 +                "javascript": "g.V().hasLabel(xx1, xx2)",
 +                "python": "g.V().has_label(xx1, xx2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20XXXX_andXltX29X_orXeqX35XXXX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").has(\"age\", P.not(P.lte(10).and(P.not(P.between(11, 20)))).and(P.lt(29).or(P.eq(35)))).values(\"name\")",
 +                "language": "g.V().hasLabel(\"person\").has(\"age\", P.not(P.lte(10).and(P.not(P.between(11, 20)))).and(P.lt(29).or(P.eq(35)))).values(\"name\")",
 +                "canonical": "g.V().hasLabel(\"person\").has(\"age\", P.not(P.lte(10).and(P.not(P.between(11, 20)))).and(P.lt(29).or(P.eq(35)))).values(\"name\")",
 +                "anonymized": "g.V().hasLabel(string0).has(string1, P.not(P.lte(number0).and(P.not(P.between(number1, number2)))).and(P.lt(number3).or(P.eq(number4)))).values(string2)",
 +                "dotnet": "g.V().HasLabel(\"person\").Has(\"age\", P.Not(P.Lte(10).And(P.Not(P.Between(11, 20)))).And(P.Lt(29).Or(P.Eq(35)))).Values<object>(\"name\")",
 +                "go": "g.V().HasLabel(\"person\").Has(\"age\", gremlingo.P.Not(gremlingo.P.Lte(10).And(gremlingo.P.Not(gremlingo.P.Between(11, 20)))).And(gremlingo.P.Lt(29).Or(gremlingo.P.Eq(35)))).Values(\"name\")",
 +                "groovy": "g.V().hasLabel(\"person\").has(\"age\", P.not(P.lte(10).and(P.not(P.between(11, 20)))).and(P.lt(29).or(P.eq(35)))).values(\"name\")",
 +                "java": "g.V().hasLabel(\"person\").has(\"age\", P.not(P.lte(10).and(P.not(P.between(11, 20)))).and(P.lt(29).or(P.eq(35)))).values(\"name\")",
 +                "javascript": "g.V().hasLabel(\"person\").has(\"age\", P.not(P.lte(10).and(P.not(P.between(11, 20)))).and(P.lt(29).or(P.eq(35)))).values(\"name\")",
 +                "python": "g.V().has_label('person').has('age', P.not_(P.lte(10).and_(P.not_(P.between(11, 20)))).and_(P.lt(29).or_(P.eq(35)))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(null)",
 +                "language": "g.V().hasLabel(null)",
 +                "canonical": "g.V().hasLabel(null)",
 +                "anonymized": "g.V().hasLabel(string0)",
 +                "dotnet": "g.V().HasLabel((string) null)",
 +                "go": "g.V().HasLabel(nil)",
 +                "groovy": "g.V().hasLabel(null)",
 +                "java": "g.V().hasLabel(null)",
 +                "javascript": "g.V().hasLabel(null)",
 +                "python": "g.V().has_label(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasXlabel_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().has(T.label, null)",
 +                "language": "g.V().has(T.label, null)",
 +                "canonical": "g.V().has(T.label, null)",
 +                "anonymized": "g.V().has(T.label, object0)",
 +                "dotnet": "g.V().Has(T.Label, (object) null)",
 +                "go": "g.V().Has(gremlingo.T.Label, nil)",
 +                "groovy": "g.V().has(T.label, null)",
 +                "java": "g.V().has(T.label, null)",
 +                "javascript": "g.V().has(T.label, null)",
 +                "python": "g.V().has(T.label, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXnull_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(null, null)",
 +                "language": "g.V().hasLabel(null, null)",
 +                "canonical": "g.V().hasLabel(null, null)",
 +                "anonymized": "g.V().hasLabel(string0, string0)",
 +                "dotnet": "g.V().HasLabel((string) null, (string) null)",
 +                "go": "g.V().HasLabel(nil, nil)",
 +                "groovy": "g.V().hasLabel((String) null, (String) null)",
 +                "java": "g.V().hasLabel(null, null)",
 +                "javascript": "g.V().hasLabel(null, null)",
 +                "python": "g.V().has_label(None, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXnull_personX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(null, \"person\")",
 +                "language": "g.V().hasLabel(null, \"person\")",
 +                "canonical": "g.V().hasLabel(null, \"person\")",
 +                "anonymized": "g.V().hasLabel(string0, string1)",
 +                "dotnet": "g.V().HasLabel((string) null, \"person\")",
 +                "go": "g.V().HasLabel(nil, \"person\")",
 +                "groovy": "g.V().hasLabel((String) null, \"person\")",
 +                "java": "g.V().hasLabel(null, \"person\")",
 +                "javascript": "g.V().hasLabel(null, \"person\")",
 +                "python": "g.V().has_label(None, 'person')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_hasLabelXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.E().hasLabel(null)",
 +                "language": "g.E().hasLabel(null)",
 +                "canonical": "g.E().hasLabel(null)",
 +                "anonymized": "g.E().hasLabel(string0)",
 +                "dotnet": "g.E().HasLabel((string) null)",
 +                "go": "g.E().HasLabel(nil)",
 +                "groovy": "g.E().hasLabel(null)",
 +                "java": "g.E().hasLabel(null)",
 +                "javascript": "g.E().hasLabel(null)",
 +                "python": "g.E().has_label(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_E_hasXlabel_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.E().has(T.label, null)",
 +                "language": "g.E().has(T.label, null)",
 +                "canonical": "g.E().has(T.label, null)",
 +                "anonymized": "g.E().has(T.label, object0)",
 +                "dotnet": "g.E().Has(T.Label, (object) null)",
 +                "go": "g.E().Has(gremlingo.T.Label, nil)",
 +                "groovy": "g.E().has(T.label, null)",
 +                "java": "g.E().has(T.label, null)",
 +                "javascript": "g.E().has(T.label, null)",
 +                "python": "g.E().has(T.label, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_hasLabelXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().properties().hasLabel(null)",
 +                "language": "g.V().properties().hasLabel(null)",
 +                "canonical": "g.V().properties().hasLabel(null)",
 +                "anonymized": "g.V().properties().hasLabel(string0)",
 +                "dotnet": "g.V().Properties<object>().HasLabel((string) null)",
 +                "go": "g.V().Properties().HasLabel(nil)",
 +                "groovy": "g.V().properties().hasLabel(null)",
 +                "java": "g.V().properties().hasLabel(null)",
 +                "javascript": "g.V().properties().hasLabel(null)",
 +                "python": "g.V().properties().has_label(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasNotXageX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasNot(\"age\").values(\"name\")",
 +                "language": "g.V().hasNot(\"age\").values(\"name\")",
 +                "canonical": "g.V().hasNot(\"age\").values(\"name\")",
 +                "anonymized": "g.V().hasNot(string0).values(string1)",
 +                "dotnet": "g.V().HasNot(\"age\").Values<object>(\"name\")",
 +                "go": "g.V().HasNot(\"age\").Values(\"name\")",
 +                "groovy": "g.V().hasNot(\"age\").values(\"name\")",
 +                "java": "g.V().hasNot(\"age\").values(\"name\")",
 +                "javascript": "g.V().hasNot(\"age\").values(\"name\")",
 +                "python": "g.V().has_not('age').values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_hasValueXnullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().properties().hasValue(null)",
 +                "language": "g.V().properties().hasValue(null)",
 +                "canonical": "g.V().properties().hasValue(null)",
 +                "anonymized": "g.V().properties().hasValue(object0)",
 +                "dotnet": "g.V().Properties<object>().HasValue((object) null)",
 +                "go": "g.V().Properties().HasValue(nil)",
 +                "groovy": "g.V().properties().hasValue(null)",
 +                "java": "g.V().properties().hasValue(null)",
 +                "javascript": "g.V().properties().hasValue(null)",
 +                "python": "g.V().properties().has_value(None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_hasValueXnull_nullX",
 +        "traversals": [
 +            {
 +                "original": "g.V().properties().hasValue(null,null)",
 +                "language": "g.V().properties().hasValue(null, null)",
 +                "canonical": "g.V().properties().hasValue(null, null)",
 +                "anonymized": "g.V().properties().hasValue(object0, object0)",
 +                "dotnet": "g.V().Properties<object>().HasValue(null, null)",
 +                "go": "g.V().Properties().HasValue(nil, nil)",
 +                "groovy": "g.V().properties().hasValue(null, null)",
 +                "java": "g.V().properties().hasValue(null, null)",
 +                "javascript": "g.V().properties().hasValue(null, null)",
 +                "python": "g.V().properties().has_value(None, None)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_properties_hasValueXnull_joshX_value",
 +        "traversals": [
 +            {
 +                "original": "g.V().properties().hasValue(null, \"josh\").value()",
 +                "language": "g.V().properties().hasValue(null, \"josh\").value()",
 +                "canonical": "g.V().properties().hasValue(null, \"josh\").value()",
 +                "anonymized": "g.V().properties().hasValue(object0, string0).value()",
 +                "dotnet": "g.V().Properties<object>().HasValue(null, \"josh\").Value<object>()",
 +                "go": "g.V().Properties().HasValue(nil, \"josh\").Value()",
 +                "groovy": "g.V().properties().hasValue(null, \"josh\").value()",
 +                "java": "g.V().properties().hasValue(null, \"josh\").value()",
 +                "javascript": "g.V().properties().hasValue(null, \"josh\").value()",
 +                "python": "g.V().properties().has_value(None, 'josh').value()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isX32X",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(32)",
 +                "language": "g.V().values(\"age\").is(32)",
 +                "canonical": "g.V().values(\"age\").is(32)",
 +                "anonymized": "g.V().values(string0).is(number0)",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(32)",
 +                "go": "g.V().Values(\"age\").Is(32)",
 +                "groovy": "g.V().values(\"age\").is(32)",
 +                "java": "g.V().values(\"age\").is(32)",
 +                "javascript": "g.V().values(\"age\").is(32)",
 +                "python": "g.V().values('age').is_(32)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isX32varX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(xx1)",
 +                "language": "g.V().values(\"age\").is(xx1)",
 +                "canonical": "g.V().values(\"age\").is(xx1)",
 +                "anonymized": "g.V().values(string0).is(xx1)",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(xx1)",
 +                "go": "g.V().Values(\"age\").Is(xx1)",
 +                "groovy": "g.V().values(\"age\").is(xx1)",
 +                "java": "g.V().values(\"age\").is(xx1)",
 +                "javascript": "g.V().values(\"age\").is(xx1)",
 +                "python": "g.V().values('age').is_(xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXlte_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.lte(30))",
 +                "language": "g.V().values(\"age\").is(P.lte(30))",
 +                "canonical": "g.V().values(\"age\").is(P.lte(30))",
 +                "anonymized": "g.V().values(string0).is(P.lte(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.Lte(30))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.Lte(30))",
 +                "groovy": "g.V().values(\"age\").is(P.lte(30))",
 +                "java": "g.V().values(\"age\").is(P.lte(30))",
 +                "javascript": "g.V().values(\"age\").is(P.lte(30))",
 +                "python": "g.V().values('age').is_(P.lte(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXlte_30varX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.lte(xx1))",
 +                "language": "g.V().values(\"age\").is(P.lte(xx1))",
 +                "canonical": "g.V().values(\"age\").is(P.lte(xx1))",
 +                "anonymized": "g.V().values(string0).is(P.lte(xx1))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.Lte(xx1))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.Lte(xx1))",
 +                "groovy": "g.V().values(\"age\").is(P.lte(xx1))",
 +                "java": "g.V().values(\"age\").is(P.lte(xx1))",
 +                "javascript": "g.V().values(\"age\").is(P.lte(xx1))",
 +                "python": "g.V().values('age').is_(P.lte(xx1))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXgte_29X_isXlt_34X",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.gte(29)).is(P.lt(34))",
 +                "language": "g.V().values(\"age\").is(P.gte(29)).is(P.lt(34))",
 +                "canonical": "g.V().values(\"age\").is(P.gte(29)).is(P.lt(34))",
 +                "anonymized": "g.V().values(string0).is(P.gte(number0)).is(P.lt(number1))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.Gte(29)).Is(P.Lt(34))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.Gte(29)).Is(gremlingo.P.Lt(34))",
 +                "groovy": "g.V().values(\"age\").is(P.gte(29)).is(P.lt(34))",
 +                "java": "g.V().values(\"age\").is(P.gte(29)).is(P.lt(34))",
 +                "javascript": "g.V().values(\"age\").is(P.gte(29)).is(P.lt(34))",
 +                "python": "g.V().values('age').is_(P.gte(29)).is_(P.lt(34))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_isXgte_29vaarX_isXlt_34varX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").is(P.gte(xx1)).is(P.lt(xx2))",
 +                "language": "g.V().values(\"age\").is(P.gte(xx1)).is(P.lt(xx2))",
 +                "canonical": "g.V().values(\"age\").is(P.gte(xx1)).is(P.lt(xx2))",
 +                "anonymized": "g.V().values(string0).is(P.gte(xx1)).is(P.lt(xx2))",
 +                "dotnet": "g.V().Values<object>(\"age\").Is(P.Gte(xx1)).Is(P.Lt(xx2))",
 +                "go": "g.V().Values(\"age\").Is(gremlingo.P.Gte(xx1)).Is(gremlingo.P.Lt(xx2))",
 +                "groovy": "g.V().values(\"age\").is(P.gte(xx1)).is(P.lt(xx2))",
 +                "java": "g.V().values(\"age\").is(P.gte(xx1)).is(P.lt(xx2))",
 +                "javascript": "g.V().values(\"age\").is(P.gte(xx1)).is(P.lt(xx2))",
 +                "python": "g.V().values('age').is_(P.gte(xx1)).is_(P.lt(xx2))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_whereXinXcreatedX_count_isX1XX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().where(__.in(\"created\").count().is(1)).values(\"name\")",
 +                "language": "g.V().where(__.in(\"created\").count().is(1)).values(\"name\")",
 +                "canonical": "g.V().where(__.in(\"created\").count().is(1)).values(\"name\")",
 +                "anonymized": "g.V().where(__.in(string0).count().is(number0)).values(string1)",
 +                "dotnet": "g.V().Where(__.In(\"created\").Count().Is(1)).Values<object>(\"name\")",
 +                "go": "g.V().Where(gremlingo.T__.In(\"created\").Count().Is(1)).Values(\"name\")",
 +                "groovy": "g.V().where(__.in(\"created\").count().is(1)).values(\"name\")",
 +                "java": "g.V().where(__.in(\"created\").count().is(1)).values(\"name\")",
 +                "javascript": "g.V().where(__.in_(\"created\").count().is(1)).values(\"name\")",
 +                "python": "g.V().where(__.in_('created').count().is_(1)).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_whereXinXcreatedX_count_isXgte_2XX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().where(__.in(\"created\").count().is(P.gte(2))).values(\"name\")",
 +                "language": "g.V().where(__.in(\"created\").count().is(P.gte(2))).values(\"name\")",
 +                "canonical": "g.V().where(__.in(\"created\").count().is(P.gte(2))).values(\"name\")",
 +                "anonymized": "g.V().where(__.in(string0).count().is(P.gte(number0))).values(string1)",
 +                "dotnet": "g.V().Where(__.In(\"created\").Count().Is(P.Gte(2))).Values<object>(\"name\")",
 +                "go": "g.V().Where(gremlingo.T__.In(\"created\").Count().Is(gremlingo.P.Gte(2))).Values(\"name\")",
 +                "groovy": "g.V().where(__.in(\"created\").count().is(P.gte(2))).values(\"name\")",
 +                "java": "g.V().where(__.in(\"created\").count().is(P.gte(2))).values(\"name\")",
 +                "javascript": "g.V().where(__.in_(\"created\").count().is(P.gte(2))).values(\"name\")",
 +                "python": "g.V().where(__.in_('created').count().is_(P.gte(2))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_noneXgtX32XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").none(P.gt(32))",
 +                "language": "g.V().values(\"age\").none(P.gt(32))",
 +                "canonical": "g.V().values(\"age\").none(P.gt(32))",
 +                "anonymized": "g.V().values(string0).none(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").None(P.Gt(32))",
 +                "go": "g.V().Values(\"age\").None(gremlingo.P.Gt(32))",
 +                "groovy": "g.V().values(\"age\").none(P.gt(32))",
 +                "java": "g.V().values(\"age\").none(P.gt(32))",
 +                "javascript": "g.V().values(\"age\").none(P.gt(32))",
 +                "python": "g.V().values('age').none(P.gt(32))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_whereXisXP_gtX33XXX_fold_noneXlteX33XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().none(P.lte(33))",
 +                "language": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().none(P.lte(33))",
 +                "canonical": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().none(P.lte(33))",
 +                "anonymized": "g.V().values(string0).where(__.is(P.gt(number0))).fold().none(P.lte(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Where(__.Is(P.Gt(33))).Fold().None(P.Lte(33))",
 +                "go": "g.V().Values(\"age\").Where(gremlingo.T__.Is(gremlingo.P.Gt(33))).Fold().None(gremlingo.P.Lte(33))",
 +                "groovy": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().none(P.lte(33))",
 +                "java": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().none(P.lte(33))",
 +                "javascript": "g.V().values(\"age\").where(__.is(P.gt(33))).fold().none(P.lte(33))",
 +                "python": "g.V().values('age').where(__.is_(P.gt(33))).fold().none(P.lte(33))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_order_byXdescX_fold_noneXltX10XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").order().by(desc).fold().none(P.lt(10))",
 +                "language": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.lt(10))",
 +                "canonical": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.lt(10))",
 +                "anonymized": "g.V().values(string0).order().by(Order.desc).fold().none(P.lt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Order().By(Order.Desc).Fold().None(P.Lt(10))",
 +                "go": "g.V().Values(\"age\").Order().By(gremlingo.Order.Desc).Fold().None(gremlingo.P.Lt(10))",
 +                "groovy": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.lt(10))",
 +                "java": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.lt(10))",
 +                "javascript": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.lt(10))",
 +                "python": "g.V().values('age').order().by(Order.desc).fold().none(P.lt(10))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_valuesXageX_order_byXdescX_fold_noneXgtX30XX",
 +        "traversals": [
 +            {
 +                "original": "g.V().values(\"age\").order().by(desc).fold().none(P.gt(30))",
 +                "language": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.gt(30))",
 +                "canonical": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.gt(30))",
 +                "anonymized": "g.V().values(string0).order().by(Order.desc).fold().none(P.gt(number0))",
 +                "dotnet": "g.V().Values<object>(\"age\").Order().By(Order.Desc).Fold().None(P.Gt(30))",
 +                "go": "g.V().Values(\"age\").Order().By(gremlingo.Order.Desc).Fold().None(gremlingo.P.Gt(30))",
 +                "groovy": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.gt(30))",
 +                "java": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.gt(30))",
 +                "javascript": "g.V().values(\"age\").order().by(Order.desc).fold().none(P.gt(30))",
 +                "python": "g.V().values('age').order().by(Order.desc).fold().none(P.gt(30))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXabc_bcdX_noneXeqXbcdXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([\"abc\",\"bcd\"]).none(P.eq(\"bcd\"))",
 +                "language": "g.inject([\"abc\", \"bcd\"]).none(P.eq(\"bcd\"))",
 +                "canonical": "g.inject([\"abc\", \"bcd\"]).none(P.eq(\"bcd\"))",
 +                "anonymized": "g.inject(list0).none(P.eq(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { \"abc\", \"bcd\" }).None(P.Eq(\"bcd\"))",
 +                "go": "g.Inject([]interface{}{\"abc\", \"bcd\"}).None(gremlingo.P.Eq(\"bcd\"))",
 +                "groovy": "g.inject([\"abc\", \"bcd\"]).none(P.eq(\"bcd\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(\"abc\"); add(\"bcd\"); }}).none(P.eq(\"bcd\"))",
 +                "javascript": "g.inject([\"abc\", \"bcd\"]).none(P.eq(\"bcd\"))",
 +                "python": "g.inject(['abc', 'bcd']).none(P.eq('bcd'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXbcd_bcdX_noneXeqXabcXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([\"bcd\",\"bcd\"]).none(P.eq(\"abc\"))",
 +                "language": "g.inject([\"bcd\", \"bcd\"]).none(P.eq(\"abc\"))",
 +                "canonical": "g.inject([\"bcd\", \"bcd\"]).none(P.eq(\"abc\"))",
 +                "anonymized": "g.inject(list0).none(P.eq(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { \"bcd\", \"bcd\" }).None(P.Eq(\"abc\"))",
 +                "go": "g.Inject([]interface{}{\"bcd\", \"bcd\"}).None(gremlingo.P.Eq(\"abc\"))",
 +                "groovy": "g.inject([\"bcd\", \"bcd\"]).none(P.eq(\"abc\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(\"bcd\"); add(\"bcd\"); }}).none(P.eq(\"abc\"))",
 +                "javascript": "g.inject([\"bcd\", \"bcd\"]).none(P.eq(\"abc\"))",
 +                "python": "g.inject(['bcd', 'bcd']).none(P.eq('abc'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnull_bcdX_noneXP_eqXabcXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([null,\"bcd\"]).none(P.eq(\"abc\"))",
 +                "language": "g.inject([null, \"bcd\"]).none(P.eq(\"abc\"))",
 +                "canonical": "g.inject([null, \"bcd\"]).none(P.eq(\"abc\"))",
 +                "anonymized": "g.inject(list0).none(P.eq(string0))",
 +                "dotnet": "g.Inject<object>(new List<object> { null, \"bcd\" }).None(P.Eq(\"abc\"))",
 +                "go": "g.Inject([]interface{}{nil, \"bcd\"}).None(gremlingo.P.Eq(\"abc\"))",
 +                "groovy": "g.inject([null, \"bcd\"]).none(P.eq(\"abc\"))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(null); add(\"bcd\"); }}).none(P.eq(\"abc\"))",
 +                "javascript": "g.inject([null, \"bcd\"]).none(P.eq(\"abc\"))",
 +                "python": "g.inject([None, 'bcd']).none(P.eq('abc'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX5_8_10_10_7X_noneXltX7XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([5,8,10],[10,7]).none(P.lt(7))",
 +                "language": "g.inject([5, 8, 10], [10, 7]).none(P.lt(7))",
 +                "canonical": "g.inject([5, 8, 10], [10, 7]).none(P.lt(7))",
 +                "anonymized": "g.inject(list0, list1).none(P.lt(number0))",
 +                "dotnet": "g.Inject<object>(new List<object> { 5, 8, 10 }, new List<object> { 10, 7 }).None(P.Lt(7))",
 +                "go": "g.Inject([]interface{}{5, 8, 10}, []interface{}{10, 7}).None(gremlingo.P.Lt(7))",
 +                "groovy": "g.inject([5, 8, 10], [10, 7]).none(P.lt(7))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(5); add(8); add(10); }}, new ArrayList<Object>() {{ add(10); add(7); }}).none(P.lt(7))",
 +                "javascript": "g.inject([5, 8, 10], [10, 7]).none(P.lt(7))",
 +                "python": "g.inject([5, 8, 10], [10, 7]).none(P.lt(7))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnullX_noneXeqXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(null).none(P.eq(null))",
 +                "language": "g.inject(null).none(P.eq(null))",
 +                "canonical": "g.inject(null).none(P.eq(null))",
 +                "anonymized": "g.inject(object0).none(P.eq(object0))",
 +                "dotnet": "g.Inject<object>(null).None(P.Eq(null))",
 +                "go": "g.Inject(nil).None(gremlingo.P.Eq(nil))",
 +                "groovy": "g.inject(null).none(P.eq(null))",
 +                "java": "g.inject(null).none(P.eq(null))",
 +                "javascript": "g.inject(null).none(P.eq(null))",
 +                "python": "g.inject(None).none(P.eq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX7X_noneXeqX7XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject(7).none(P.eq(7))",
 +                "language": "g.inject(7).none(P.eq(7))",
 +                "canonical": "g.inject(7).none(P.eq(7))",
 +                "anonymized": "g.inject(number0).none(P.eq(number0))",
 +                "dotnet": "g.Inject<object>(7).None(P.Eq(7))",
 +                "go": "g.Inject(7).None(gremlingo.P.Eq(7))",
 +                "groovy": "g.inject(7).none(P.eq(7))",
 +                "java": "g.inject(7).none(P.eq(7))",
 +                "javascript": "g.inject(7).none(P.eq(7))",
 +                "python": "g.inject(7).none(P.eq(7))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnull_1_emptyX_noneXeqXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([null,1],[]).none(P.eq(null))",
 +                "language": "g.inject([null, 1], []).none(P.eq(null))",
 +                "canonical": "g.inject([null, 1], []).none(P.eq(null))",
 +                "anonymized": "g.inject(list0, list1).none(P.eq(object0))",
 +                "dotnet": "g.Inject<object>(new List<object> { null, 1 }, new List<object> {  }).None(P.Eq(null))",
 +                "go": "g.Inject([]interface{}{nil, 1}, []interface{}{}).None(gremlingo.P.Eq(nil))",
 +                "groovy": "g.inject([null, 1], []).none(P.eq(null))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(null); add(1); }}, new ArrayList<Object>() {{  }}).none(P.eq(null))",
 +                "javascript": "g.inject([null, 1], []).none(P.eq(null))",
 +                "python": "g.inject([None, 1], []).none(P.eq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectXnull_nullX_noneXnotXnullXX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([null,null]).none(P.neq(null))",
 +                "language": "g.inject([null, null]).none(P.neq(null))",
 +                "canonical": "g.inject([null, null]).none(P.neq(null))",
 +                "anonymized": "g.inject(list0).none(P.neq(object0))",
 +                "dotnet": "g.Inject<object>(new List<object> { null, null }).None(P.Neq(null))",
 +                "go": "g.Inject([]interface{}{nil, nil}).None(gremlingo.P.Neq(nil))",
 +                "groovy": "g.inject([null, null]).none(P.neq(null))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(null); add(null); }}).none(P.neq(null))",
 +                "javascript": "g.inject([null, null]).none(P.neq(null))",
 +                "python": "g.inject([None, None]).none(P.neq(None))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_injectX3_threeX_noneXeqX3XX",
 +        "traversals": [
 +            {
 +                "original": "g.inject([3i,\"three\"]).none(P.eq(3))",
 +                "language": "g.inject([3i, \"three\"]).none(P.eq(3))",
 +                "canonical": "g.inject([3i, \"three\"]).none(P.eq(3))",
 +                "anonymized": "g.inject(list0).none(P.eq(number0))",
 +                "dotnet": "g.Inject<object>(new List<object> { 3, \"three\" }).None(P.Eq(3))",
 +                "go": "g.Inject([]interface{}{int32(3), \"three\"}).None(gremlingo.P.Eq(3))",
 +                "groovy": "g.inject([3i, \"three\"]).none(P.eq(3))",
 +                "java": "g.inject(new ArrayList<Object>() {{ add(3); add(\"three\"); }}).none(P.eq(3))",
 +                "javascript": "g.inject([3, \"three\"]).none(P.eq(3))",
 +                "python": "g.inject([3, 'three']).none(P.eq(3))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_notXhasXage_gt_27XX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().not(__.has(\"age\", P.gt(27))).values(\"name\")",
 +                "language": "g.V().not(__.has(\"age\", P.gt(27))).values(\"name\")",
 +                "canonical": "g.V().not(__.has(\"age\", P.gt(27))).values(\"name\")",
 +                "anonymized": "g.V().not(__.has(string0, P.gt(number0))).values(string1)",
 +                "dotnet": "g.V().Not(__.Has(\"age\", P.Gt(27))).Values<object>(\"name\")",
 +                "go": "g.V().Not(gremlingo.T__.Has(\"age\", gremlingo.P.Gt(27))).Values(\"name\")",
 +                "groovy": "g.V().not(__.has(\"age\", P.gt(27))).values(\"name\")",
 +                "java": "g.V().not(__.has(\"age\", P.gt(27))).values(\"name\")",
 +                "javascript": "g.V().not(__.has(\"age\", P.gt(27))).values(\"name\")",
 +                "python": "g.V().not_(__.has('age', P.gt(27))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_notXnotXhasXage_gt_27XXX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().not(__.not(__.has(\"age\", P.gt(27)))).values(\"name\")",
 +                "language": "g.V().not(__.not(__.has(\"age\", P.gt(27)))).values(\"name\")",
 +                "canonical": "g.V().not(__.not(__.has(\"age\", P.gt(27)))).values(\"name\")",
 +                "anonymized": "g.V().not(__.not(__.has(string0, P.gt(number0)))).values(string1)",
 +                "dotnet": "g.V().Not(__.Not(__.Has(\"age\", P.Gt(27)))).Values<object>(\"name\")",
 +                "go": "g.V().Not(gremlingo.T__.Not(gremlingo.T__.Has(\"age\", gremlingo.P.Gt(27)))).Values(\"name\")",
 +                "groovy": "g.V().not(__.not(__.has(\"age\", P.gt(27)))).values(\"name\")",
 +                "java": "g.V().not(__.not(__.has(\"age\", P.gt(27)))).values(\"name\")",
 +                "javascript": "g.V().not(__.not(__.has(\"age\", P.gt(27)))).values(\"name\")",
 +                "python": "g.V().not_(__.not_(__.has('age', P.gt(27)))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_notXhasXname_gt_27XX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().not(__.has(\"name\", P.gt(27))).values(\"name\")",
 +                "language": "g.V().not(__.has(\"name\", P.gt(27))).values(\"name\")",
 +                "canonical": "g.V().not(__.has(\"name\", P.gt(27))).values(\"name\")",
 +                "anonymized": "g.V().not(__.has(string0, P.gt(number0))).values(string0)",
 +                "dotnet": "g.V().Not(__.Has(\"name\", P.Gt(27))).Values<object>(\"name\")",
 +                "go": "g.V().Not(gremlingo.T__.Has(\"name\", gremlingo.P.Gt(27))).Values(\"name\")",
 +                "groovy": "g.V().not(__.has(\"name\", P.gt(27))).values(\"name\")",
 +                "java": "g.V().not(__.has(\"name\", P.gt(27))).values(\"name\")",
 +                "javascript": "g.V().not(__.has(\"name\", P.gt(27))).values(\"name\")",
 +                "python": "g.V().not_(__.has('name', P.gt(27))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_orXhasXage_gt_27X__outE_count_gte_2X_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().or(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "language": "g.V().or(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "canonical": "g.V().or(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "anonymized": "g.V().or(__.has(string0, P.gt(number0)), __.outE().count().is(P.gte(number1))).values(string1)",
 +                "dotnet": "g.V().Or(__.Has(\"age\", P.Gt(27)), __.OutE().Count().Is(P.Gte(2))).Values<object>(\"name\")",
 +                "go": "g.V().Or(gremlingo.T__.Has(\"age\", gremlingo.P.Gt(27)), gremlingo.T__.OutE().Count().Is(gremlingo.P.Gte(2))).Values(\"name\")",
 +                "groovy": "g.V().or(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "java": "g.V().or(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "javascript": "g.V().or(__.has(\"age\", P.gt(27)), __.outE().count().is(P.gte(2))).values(\"name\")",
 +                "python": "g.V().or_(__.has('age', P.gt(27)), __.out_e().count().is_(P.gte(2))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_orXoutEXknowsX__hasXlabel_softwareX_or_hasXage_gte_35XX_name",
 +        "traversals": [
 +            {
 +                "original": "g.V().or(__.outE(\"knows\"), __.has(T.label, \"software\").or().has(\"age\", P.gte(35))).values(\"name\")",
 +                "language": "g.V().or(__.outE(\"knows\"), __.has(T.label, \"software\").or().has(\"age\", P.gte(35))).values(\"name\")",
 +                "canonical": "g.V().or(__.outE(\"knows\"), __.has(T.label, \"software\").or().has(\"age\", P.gte(35))).values(\"name\")",
 +                "anonymized": "g.V().or(__.outE(string0), __.has(T.label, string1).or().has(string2, P.gte(number0))).values(string3)",
 +                "dotnet": "g.V().Or(__.OutE(\"knows\"), __.Has(T.Label, \"software\").Or().Has(\"age\", P.Gte(35))).Values<object>(\"name\")",
 +                "go": "g.V().Or(gremlingo.T__.OutE(\"knows\"), gremlingo.T__.Has(gremlingo.T.Label, \"software\").Or().Has(\"age\", gremlingo.P.Gte(35))).Values(\"name\")",
 +                "groovy": "g.V().or(__.outE(\"knows\"), __.has(T.label, \"software\").or().has(\"age\", P.gte(35))).values(\"name\")",
 +                "java": "g.V().or(__.outE(\"knows\"), __.has(T.label, \"software\").or().has(\"age\", P.gte(35))).values(\"name\")",
 +                "javascript": "g.V().or(__.outE(\"knows\"), __.has(T.label, \"software\").or().has(\"age\", P.gte(35))).values(\"name\")",
 +                "python": "g.V().or_(__.out_e('knows'), __.has(T.label, 'software').or_().has('age', P.gte(35))).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_orXselectXaX_selectXaXX",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").or(__.select(\"a\"), __.select(\"a\"))",
 +                "language": "g.V().as(\"a\").or(__.select(\"a\"), __.select(\"a\"))",
 +                "canonical": "g.V().as(\"a\").or(__.select(\"a\"), __.select(\"a\"))",
 +                "anonymized": "g.V().as(string0).or(__.select(string0), __.select(string0))",
 +                "dotnet": "g.V().As(\"a\").Or(__.Select<object>(\"a\"), __.Select<object>(\"a\"))",
 +                "go": "g.V().As(\"a\").Or(gremlingo.T__.Select(\"a\"), gremlingo.T__.Select(\"a\"))",
 +                "groovy": "g.V().as(\"a\").or(__.select(\"a\"), __.select(\"a\"))",
 +                "java": "g.V().as(\"a\").or(__.select(\"a\"), __.select(\"a\"))",
 +                "javascript": "g.V().as(\"a\").or(__.select(\"a\"), __.select(\"a\"))",
 +                "python": "g.V().as_('a').or_(__.select('a'), __.select('a'))"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_limitX2X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().limit(2)",
 +                "language": "g.V(vid1).out().limit(2)",
 +                "canonical": "g.V(vid1).out().limit(2)",
 +                "anonymized": "g.V(vid1).out().limit(number0)",
 +                "dotnet": "g.V(vid1).Out().Limit<object>(2)",
 +                "go": "g.V(vid1).Out().Limit(2)",
 +                "groovy": "g.V(vid1).out().limit(2)",
 +                "java": "g.V(vid1).out().limit(2)",
 +                "javascript": "g.V(vid1).out().limit(2)",
 +                "python": "g.V(vid1).out().limit(2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_out_limitX2varX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out().limit(xx1)",
 +                "language": "g.V(vid1).out().limit(xx1)",
 +                "canonical": "g.V(vid1).out().limit(xx1)",
 +                "anonymized": "g.V(vid1).out().limit(xx1)",
 +                "dotnet": "g.V(vid1).Out().Limit<object>((long) xx1)",
 +                "go": "g.V(vid1).Out().Limit(xx1)",
 +                "groovy": "g.V(vid1).out().limit(xx1)",
 +                "java": "g.V(vid1).out().limit(xx1)",
 +                "javascript": "g.V(vid1).out().limit(xx1)",
 +                "python": "g.V(vid1).out().limit(xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_localXoutE_limitX1X_inVX_limitX3X",
 +        "traversals": [
 +            {
 +                "original": "g.V().local(__.outE().limit(1)).inV().limit(3)",
 +                "language": "g.V().local(__.outE().limit(1)).inV().limit(3)",
 +                "canonical": "g.V().local(__.outE().limit(1)).inV().limit(3)",
 +                "anonymized": "g.V().local(__.outE().limit(number0)).inV().limit(number1)",
 +                "dotnet": "g.V().Local<object>(__.OutE().Limit<object>(1)).InV().Limit<object>(3)",
 +                "go": "g.V().Local(gremlingo.T__.OutE().Limit(1)).InV().Limit(3)",
 +                "groovy": "g.V().local(__.outE().limit(1)).inV().limit(3)",
 +                "java": "g.V().local(__.outE().limit(1)).inV().limit(3)",
 +                "javascript": "g.V().local(__.outE().limit(1)).inV().limit(3)",
 +                "python": "g.V().local(__.out_e().limit(1)).in_v().limit(3)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXknowsX_outEXcreatedX_rangeX0_1X_inV",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"knows\").outE(\"created\").range(0, 1).inV()",
 +                "language": "g.V(vid1).out(\"knows\").outE(\"created\").range(0, 1).inV()",
 +                "canonical": "g.V(vid1).out(\"knows\").outE(\"created\").range(0, 1).inV()",
 +                "anonymized": "g.V(vid1).out(string0).outE(string1).range(number0, number1).inV()",
 +                "dotnet": "g.V(vid1).Out(\"knows\").OutE(\"created\").Range<object>(0, 1).InV()",
 +                "go": "g.V(vid1).Out(\"knows\").OutE(\"created\").Range(0, 1).InV()",
 +                "groovy": "g.V(vid1).out(\"knows\").outE(\"created\").range(0, 1).inV()",
 +                "java": "g.V(vid1).out(\"knows\").outE(\"created\").range(0, 1).inV()",
 +                "javascript": "g.V(vid1).out(\"knows\").outE(\"created\").range(0, 1).inV()",
 +                "python": "g.V(vid1).out('knows').out_e('created').range_(0, 1).in_v()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXknowsX_outXcreatedX_rangeX0_1X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"knows\").out(\"created\").range(0, 1)",
 +                "language": "g.V(vid1).out(\"knows\").out(\"created\").range(0, 1)",
 +                "canonical": "g.V(vid1).out(\"knows\").out(\"created\").range(0, 1)",
 +                "anonymized": "g.V(vid1).out(string0).out(string1).range(number0, number1)",
 +                "dotnet": "g.V(vid1).Out(\"knows\").Out(\"created\").Range<object>(0, 1)",
 +                "go": "g.V(vid1).Out(\"knows\").Out(\"created\").Range(0, 1)",
 +                "groovy": "g.V(vid1).out(\"knows\").out(\"created\").range(0, 1)",
 +                "java": "g.V(vid1).out(\"knows\").out(\"created\").range(0, 1)",
 +                "javascript": "g.V(vid1).out(\"knows\").out(\"created\").range(0, 1)",
 +                "python": "g.V(vid1).out('knows').out('created').range_(0, 1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXcreatedX_inXcreatedX_rangeX1_3X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"created\").in(\"created\").range(1, 3)",
 +                "language": "g.V(vid1).out(\"created\").in(\"created\").range(1, 3)",
 +                "canonical": "g.V(vid1).out(\"created\").in(\"created\").range(1, 3)",
 +                "anonymized": "g.V(vid1).out(string0).in(string0).range(number0, number1)",
 +                "dotnet": "g.V(vid1).Out(\"created\").In(\"created\").Range<object>(1, 3)",
 +                "go": "g.V(vid1).Out(\"created\").In(\"created\").Range(1, 3)",
 +                "groovy": "g.V(vid1).out(\"created\").in(\"created\").range(1, 3)",
 +                "java": "g.V(vid1).out(\"created\").in(\"created\").range(1, 3)",
 +                "javascript": "g.V(vid1).out(\"created\").in_(\"created\").range(1, 3)",
 +                "python": "g.V(vid1).out('created').in_('created').range_(1, 3)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXcreatedX_inXcreatedX_rangeX1var_3varX",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"created\").in(\"created\").range(xx1, xx2)",
 +                "language": "g.V(vid1).out(\"created\").in(\"created\").range(xx1, xx2)",
 +                "canonical": "g.V(vid1).out(\"created\").in(\"created\").range(xx1, xx2)",
 +                "anonymized": "g.V(vid1).out(string0).in(string0).range(xx1, xx2)",
 +                "dotnet": "g.V(vid1).Out(\"created\").In(\"created\").Range<object>((long) xx1, (long) xx2)",
 +                "go": "g.V(vid1).Out(\"created\").In(\"created\").Range(xx1, xx2)",
 +                "groovy": "g.V(vid1).out(\"created\").in(\"created\").range(xx1, xx2)",
 +                "java": "g.V(vid1).out(\"created\").in(\"created\").range(xx1, xx2)",
 +                "javascript": "g.V(vid1).out(\"created\").in_(\"created\").range(xx1, xx2)",
 +                "python": "g.V(vid1).out('created').in_('created').range_(xx1, xx2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_outXcreatedX_inEXcreatedX_rangeX1_3X_outV",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).out(\"created\").inE(\"created\").range(1, 3).outV()",
 +                "language": "g.V(vid1).out(\"created\").inE(\"created\").range(1, 3).outV()",
 +                "canonical": "g.V(vid1).out(\"created\").inE(\"created\").range(1, 3).outV()",
 +                "anonymized": "g.V(vid1).out(string0).inE(string0).range(number0, number1).outV()",
 +                "dotnet": "g.V(vid1).Out(\"created\").InE(\"created\").Range<object>(1, 3).OutV()",
 +                "go": "g.V(vid1).Out(\"created\").InE(\"created\").Range(1, 3).OutV()",
 +                "groovy": "g.V(vid1).out(\"created\").inE(\"created\").range(1, 3).outV()",
 +                "java": "g.V(vid1).out(\"created\").inE(\"created\").range(1, 3).outV()",
 +                "javascript": "g.V(vid1).out(\"created\").inE(\"created\").range(1, 3).outV()",
 +                "python": "g.V(vid1).out('created').in_e('created').range_(1, 3).out_v()"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_repeatXbothX_timesX3X_rangeX5_11X",
 +        "traversals": [
 +            {
 +                "original": "g.V().repeat(__.both()).times(3).range(5, 11)",
 +                "language": "g.V().repeat(__.both()).times(3).range(5, 11)",
 +                "canonical": "g.V().repeat(__.both()).times(3).range(5, 11)",
 +                "anonymized": "g.V().repeat(__.both()).times(number0).range(number1, number2)",
 +                "dotnet": "g.V().Repeat(__.Both()).Times(3).Range<object>(5, 11)",
 +                "go": "g.V().Repeat(gremlingo.T__.Both()).Times(3).Range(5, 11)",
 +                "groovy": "g.V().repeat(__.both()).times(3).range(5, 11)",
 +                "java": "g.V().repeat(__.both()).times(3).range(5, 11)",
 +                "javascript": "g.V().repeat(__.both()).times(3).range(5, 11)",
 +                "python": "g.V().repeat(__.both()).times(3).range_(5, 11)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_in_asXbX_in_asXcX_selectXa_b_cX_byXnameX_limitXlocal_2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\",\"b\",\"c\").by(\"name\").limit(Scope.local, 2)",
 +                "language": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 2)",
 +                "canonical": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 2)",
 +                "anonymized": "g.V().as(string0).in().as(string1).in().as(string2).select(string0, string1, string2).by(string3).limit(Scope.local, number0)",
 +                "dotnet": "g.V().As(\"a\").In().As(\"b\").In().As(\"c\").Select<object>(\"a\", \"b\", \"c\").By(\"name\").Limit<object>(Scope.Local, 2)",
 +                "go": "g.V().As(\"a\").In().As(\"b\").In().As(\"c\").Select(\"a\", \"b\", \"c\").By(\"name\").Limit(gremlingo.Scope.Local, 2)",
 +                "groovy": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 2)",
 +                "java": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 2)",
 +                "javascript": "g.V().as(\"a\").in_().as(\"b\").in_().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 2)",
 +                "python": "g.V().as_('a').in_().as_('b').in_().as_('c').select('a', 'b', 'c').by('name').limit(Scope.local, 2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_in_asXbX_in_asXcX_selectXa_b_cX_byXnameX_limitXlocal_2varX",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\",\"b\",\"c\").by(\"name\").limit(Scope.local, xx1)",
 +                "language": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, xx1)",
 +                "canonical": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, xx1)",
 +                "anonymized": "g.V().as(string0).in().as(string1).in().as(string2).select(string0, string1, string2).by(string3).limit(Scope.local, xx1)",
 +                "dotnet": "g.V().As(\"a\").In().As(\"b\").In().As(\"c\").Select<object>(\"a\", \"b\", \"c\").By(\"name\").Limit<object>(Scope.Local, (long) xx1)",
 +                "go": "g.V().As(\"a\").In().As(\"b\").In().As(\"c\").Select(\"a\", \"b\", \"c\").By(\"name\").Limit(gremlingo.Scope.Local, xx1)",
 +                "groovy": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, xx1)",
 +                "java": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, xx1)",
 +                "javascript": "g.V().as(\"a\").in_().as(\"b\").in_().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, xx1)",
 +                "python": "g.V().as_('a').in_().as_('b').in_().as_('c').select('a', 'b', 'c').by('name').limit(Scope.local, xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_in_asXbX_in_asXcX_selectXa_b_cX_byXnameX_limitXlocal_1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\",\"b\",\"c\").by(\"name\").limit(Scope.local, 1)",
 +                "language": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 1)",
 +                "canonical": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 1)",
 +                "anonymized": "g.V().as(string0).in().as(string1).in().as(string2).select(string0, string1, string2).by(string3).limit(Scope.local, number0)",
 +                "dotnet": "g.V().As(\"a\").In().As(\"b\").In().As(\"c\").Select<object>(\"a\", \"b\", \"c\").By(\"name\").Limit<object>(Scope.Local, 1)",
 +                "go": "g.V().As(\"a\").In().As(\"b\").In().As(\"c\").Select(\"a\", \"b\", \"c\").By(\"name\").Limit(gremlingo.Scope.Local, 1)",
 +                "groovy": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 1)",
 +                "java": "g.V().as(\"a\").in().as(\"b\").in().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 1)",
 +                "javascript": "g.V().as(\"a\").in_().as(\"b\").in_().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").limit(Scope.local, 1)",
 +                "python": "g.V().as_('a').in_().as_('b').in_().as_('c').select('a', 'b', 'c').by('name').limit(Scope.local, 1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_rangeXlocal_1_3X",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\",\"b\",\"c\").by(\"name\").range(Scope.local, 1, 3)",
 +                "language": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 3)",
 +                "canonical": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 3)",
 +                "anonymized": "g.V().as(string0).out().as(string1).out().as(string2).select(string0, string1, string2).by(string3).range(Scope.local, number0, number1)",
 +                "dotnet": "g.V().As(\"a\").Out().As(\"b\").Out().As(\"c\").Select<object>(\"a\", \"b\", \"c\").By(\"name\").Range<object>(Scope.Local, 1, 3)",
 +                "go": "g.V().As(\"a\").Out().As(\"b\").Out().As(\"c\").Select(\"a\", \"b\", \"c\").By(\"name\").Range(gremlingo.Scope.Local, 1, 3)",
 +                "groovy": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 3)",
 +                "java": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 3)",
 +                "javascript": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 3)",
 +                "python": "g.V().as_('a').out().as_('b').out().as_('c').select('a', 'b', 'c').by('name').range_(Scope.local, 1, 3)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_rangeXlocal_1var_3varX",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\",\"b\",\"c\").by(\"name\").range(Scope.local, xx1, xx2)",
 +                "language": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, xx1, xx2)",
 +                "canonical": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, xx1, xx2)",
 +                "anonymized": "g.V().as(string0).out().as(string1).out().as(string2).select(string0, string1, string2).by(string3).range(Scope.local, xx1, xx2)",
 +                "dotnet": "g.V().As(\"a\").Out().As(\"b\").Out().As(\"c\").Select<object>(\"a\", \"b\", \"c\").By(\"name\").Range<object>(Scope.Local, (long) xx1, (long) xx2)",
 +                "go": "g.V().As(\"a\").Out().As(\"b\").Out().As(\"c\").Select(\"a\", \"b\", \"c\").By(\"name\").Range(gremlingo.Scope.Local, xx1, xx2)",
 +                "groovy": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, xx1, xx2)",
 +                "java": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, xx1, xx2)",
 +                "javascript": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, xx1, xx2)",
 +                "python": "g.V().as_('a').out().as_('b').out().as_('c').select('a', 'b', 'c').by('name').range_(Scope.local, xx1, xx2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_rangeXlocal_1_2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\",\"b\",\"c\").by(\"name\").range(Scope.local, 1, 2)",
 +                "language": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 2)",
 +                "canonical": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 2)",
 +                "anonymized": "g.V().as(string0).out().as(string1).out().as(string2).select(string0, string1, string2).by(string3).range(Scope.local, number0, number1)",
 +                "dotnet": "g.V().As(\"a\").Out().As(\"b\").Out().As(\"c\").Select<object>(\"a\", \"b\", \"c\").By(\"name\").Range<object>(Scope.Local, 1, 2)",
 +                "go": "g.V().As(\"a\").Out().As(\"b\").Out().As(\"c\").Select(\"a\", \"b\", \"c\").By(\"name\").Range(gremlingo.Scope.Local, 1, 2)",
 +                "groovy": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 2)",
 +                "java": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 2)",
 +                "javascript": "g.V().as(\"a\").out().as(\"b\").out().as(\"c\").select(\"a\", \"b\", \"c\").by(\"name\").range(Scope.local, 1, 2)",
 +                "python": "g.V().as_('a').out().as_('b').out().as_('c').select('a', 'b', 'c').by('name').range_(Scope.local, 1, 2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_order_byXageX_skipX1X_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").order().by(\"age\").skip(1).values(\"name\")",
 +                "language": "g.V().hasLabel(\"person\").order().by(\"age\").skip(1).values(\"name\")",
 +                "canonical": "g.V().hasLabel(\"person\").order().by(\"age\").skip(1).values(\"name\")",
 +                "anonymized": "g.V().hasLabel(string0).order().by(string1).skip(number0).values(string2)",
 +                "dotnet": "g.V().HasLabel(\"person\").Order().By(\"age\").Skip<object>(1).Values<object>(\"name\")",
 +                "go": "g.V().HasLabel(\"person\").Order().By(\"age\").Skip(1).Values(\"name\")",
 +                "groovy": "g.V().hasLabel(\"person\").order().by(\"age\").skip(1).values(\"name\")",
 +                "java": "g.V().hasLabel(\"person\").order().by(\"age\").skip(1).values(\"name\")",
 +                "javascript": "g.V().hasLabel(\"person\").order().by(\"age\").skip(1).values(\"name\")",
 +                "python": "g.V().has_label('person').order().by('age').skip(1).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_order_byXageX_skipX1varX_valuesXnameX",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").order().by(\"age\").skip(xx1).values(\"name\")",
 +                "language": "g.V().hasLabel(\"person\").order().by(\"age\").skip(xx1).values(\"name\")",
 +                "canonical": "g.V().hasLabel(\"person\").order().by(\"age\").skip(xx1).values(\"name\")",
 +                "anonymized": "g.V().hasLabel(string0).order().by(string1).skip(xx1).values(string2)",
 +                "dotnet": "g.V().HasLabel(\"person\").Order().By(\"age\").Skip<object>((long) xx1).Values<object>(\"name\")",
 +                "go": "g.V().HasLabel(\"person\").Order().By(\"age\").Skip(xx1).Values(\"name\")",
 +                "groovy": "g.V().hasLabel(\"person\").order().by(\"age\").skip(xx1).values(\"name\")",
 +                "java": "g.V().hasLabel(\"person\").order().by(\"age\").skip(xx1).values(\"name\")",
 +                "javascript": "g.V().hasLabel(\"person\").order().by(\"age\").skip(xx1).values(\"name\")",
 +                "python": "g.V().has_label('person').order().by('age').skip(xx1).values('name')"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_foldX_rangeXlocal_6_7X",
 +        "traversals": [
 +            {
 +                "original": "g.V().fold().range(Scope.local, 6, 7)",
 +                "language": "g.V().fold().range(Scope.local, 6, 7)",
 +                "canonical": "g.V().fold().range(Scope.local, 6, 7)",
 +                "anonymized": "g.V().fold().range(Scope.local, number0, number1)",
 +                "dotnet": "g.V().Fold().Range<object>(Scope.Local, 6, 7)",
 +                "go": "g.V().Fold().Range(gremlingo.Scope.Local, 6, 7)",
 +                "groovy": "g.V().fold().range(Scope.local, 6, 7)",
 +                "java": "g.V().fold().range(Scope.local, 6, 7)",
 +                "javascript": "g.V().fold().range(Scope.local, 6, 7)",
 +                "python": "g.V().fold().range_(Scope.local, 6, 7)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_outE_valuesXweightX_fold_orderXlocalX_skipXlocal_2X",
 +        "traversals": [
 +            {
 +                "original": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, 2)",
 +                "language": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, 2)",
 +                "canonical": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, 2)",
 +                "anonymized": "g.V().outE().values(string0).fold().order(Scope.local).skip(Scope.local, number0)",
 +                "dotnet": "g.V().OutE().Values<object>(\"weight\").Fold().Order(Scope.Local).Skip<object>(Scope.Local, 2)",
 +                "go": "g.V().OutE().Values(\"weight\").Fold().Order(gremlingo.Scope.Local).Skip(gremlingo.Scope.Local, 2)",
 +                "groovy": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, 2)",
 +                "java": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, 2)",
 +                "javascript": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, 2)",
 +                "python": "g.V().out_e().values('weight').fold().order(Scope.local).skip(Scope.local, 2)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_outE_valuesXweightX_fold_orderXlocalX_skipXlocal_2varX",
 +        "traversals": [
 +            {
 +                "original": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, xx1)",
 +                "language": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, xx1)",
 +                "canonical": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, xx1)",
 +                "anonymized": "g.V().outE().values(string0).fold().order(Scope.local).skip(Scope.local, xx1)",
 +                "dotnet": "g.V().OutE().Values<object>(\"weight\").Fold().Order(Scope.Local).Skip<object>(Scope.Local, (long) xx1)",
 +                "go": "g.V().OutE().Values(\"weight\").Fold().Order(gremlingo.Scope.Local).Skip(gremlingo.Scope.Local, xx1)",
 +                "groovy": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, xx1)",
 +                "java": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, xx1)",
 +                "javascript": "g.V().outE().values(\"weight\").fold().order(Scope.local).skip(Scope.local, xx1)",
 +                "python": "g.V().out_e().values('weight').fold().order(Scope.local).skip(Scope.local, xx1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_V_hasLabelXpersonX_order_byXageX_valuesXnameX_skipX1X",
 +        "traversals": [
 +            {
 +                "original": "g.V().hasLabel(\"person\").order().by(\"age\").values(\"name\").skip(1)",
 +                "language": "g.V().hasLabel(\"person\").order().by(\"age\").values(\"name\").skip(1)",
 +                "canonical": "g.V().hasLabel(\"person\").order().by(\"age\").values(\"name\").skip(1)",
 +                "anonymized": "g.V().hasLabel(string0).order().by(string1).values(string2).skip(number0)",
 +                "dotnet": "g.V().HasLabel(\"person\").Order().By(\"age\").Values<object>(\"name\").Skip<object>(1)",
 +                "go": "g.V().HasLabel(\"person\").Order().By(\"age\").Values(\"name\").Skip(1)",
 +                "groovy": "g.V().hasLabel(\"person\").order().by(\"age\").values(\"name\").skip(1)",
 +                "java": "g.V().hasLabel(\"person\").order().by(\"age\").values(\"name\").skip(1)",
 +                "javascript": "g.V().hasLabel(\"person\").order().by(\"age\").values(\"name\").skip(1)",
 +                "python": "g.V().has_label('person').order().by('age').values('name').skip(1)"
 +            }
 +        ]
 +    },
 +    {
 +        "scenario": "g_VX1X_valuesXageX_rangeXlocal_20_30X",
 +        "traversals": [
 +            {
 +                "original": "g.V(vid1).values(\"age\").range(Scope.local, 20, 30)",
 +                "language": "g.V(vid1).values(\"age\").range(Scope.local, 20, 30)",
 +                "canonical": "g.V(vid1).values(\"age\").range(Scope.local, 20, 30)",
 +                "anonymized": "g.V(vid1).values(string0).range(Scope.local, number0, number1)",
 +                "dotnet": "g.V(vid1).Values<object>(\"age\").Range<object>(Scope.Local, 20, 30)",
 +                "go": "g.V(vid1).Values(\"age\").Range(gremlingo.Scope.Local, 20, 30)",
 +                "groovy": "g.V(vid1).values(\"age\").range(Scope.local, 20, 30)",
 +                "java": "g.V(vid1).values(\"age\").range(Scope.local, 20, 30)",
 +                "javascript": "g.V(vid1).values(\"age\").range(Scope.local, 20, 30)",
... 34313 lines suppressed ...