#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
# 
# http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
#



#######################################################################################
## Do NOT edit this file directly - generated by build/generate.groovy
#######################################################################################


from radish import world
from gremlin_python.process.anonymous_traversal import traversal
from gremlin_python.process.traversal import TraversalStrategy
from gremlin_python.process.graph_traversal import __
from gremlin_python.structure.graph import Graph
from gremlin_python.process.traversal import Barrier, Cardinality, P, TextP, Pop, Scope, Column, Order, Direction, Merge, T, Pick, Operator, IO, WithOptions

world.gremlins = {
    'g_V_branchXlabel_eq_person__a_bX_optionXa__ageX_optionXb__langX_optionXb__nameX': [(lambda g, l1=None:g.V().branch(l1).option('a',__.age).option('b',__.lang).option('b',__.name))], 
    'g_V_branchXlabel_isXpersonX_countX_optionX1__ageX_optionX0__langX_optionX0__nameX': [(lambda g, xx1=None,xx2=None:g.V().branch(__.label().is_('person').count()).option(xx1,__.age).option(xx2,__.lang).option(xx2,__.name))], 
    'g_V_branchXlabel_isXpersonX_countX_optionX1__ageX_optionX0__langX_optionX0__nameX_optionXany__labelX': [(lambda g, xx1=None,xx2=None:g.V().branch(__.label().is_('person').count()).option(xx1,__.age).option(xx2,__.lang).option(xx2,__.name).option(Pick.any,__.label()))], 
    'g_V_branchXageX_optionXltX30X__youngX_optionXgtX30X__oldX_optionXnone__on_the_edgeX': [(lambda g:g.V().hasLabel('person').branch(__.age).option(P.lt(30),__.constant('young')).option(P.gt(30),__.constant('old')).option(Pick.none,__.constant('on the edge')))], 
    'g_V_branchXidentityX_optionXhasLabelXsoftwareX__inXcreatedX_name_order_foldX_optionXhasXname_vadasX__ageX_optionXneqX123X__bothE_countX': [(lambda g:g.V().branch(__.identity()).option(__.hasLabel('software'),__.in_('created').name.order().fold()).option(__.has('name','vadas'),__.age).option(P.neq(123),__.bothE().count()))], 
    'g_V_chooseXout_countX_optionX2L_nameX_optionX3L_ageX': [(lambda g, xx1=None,xx2=None:g.V().choose(__.out().count()).option(xx1,__.name).option(xx2,__.age))], 
    'g_V_chooseXlabel_eqXpersonX__outXknowsX__inXcreatedXX_name': [(lambda g, pred1=None:g.V().choose(pred1,__.out('knows'),__.in_('created')).name)], 
    'g_V_chooseXhasLabelXpersonX_and_outXcreatedX__outXknowsX__identityX_name': [(lambda g:g.V().choose(__.hasLabel('person').and_().out('created'),__.out('knows'),__.identity()).name)], 
    'g_V_chooseXlabelX_optionXblah__outXknowsXX_optionXbleep__outXcreatedXX_optionXnone__identityX_name': [(lambda g:g.V().choose(__.label()).option('blah',__.out('knows')).option('bleep',__.out('created')).option(Pick.none,__.identity()).name)], 
    'g_V_chooseXoutXknowsX_count_isXgtX0XX__outXknowsXX_name': [(lambda g:g.V().choose(__.out('knows').count().is_(P.gt(0)),__.out('knows')).name)], 
    'g_V_hasLabelXpersonX_asXp1X_chooseXoutEXknowsX__outXknowsXX_asXp2X_selectXp1_p2X_byXnameX': [(lambda g:g.V().hasLabel('person').as_('p1').choose(__.outE('knows'),__.out('knows')).as_('p2').select('p1','p2').by('name'))], 
    'g_V_hasLabelXpersonX_chooseXageX__optionX27L__constantXyoungXX_optionXnone__constantXoldXX_groupCount': [(lambda g, xx1=None:g.V().hasLabel('person').choose(__.age).option(xx1,__.constant('young')).option(Pick.none,__.constant('old')).groupCount())], 
    'g_injectX1X_chooseXisX1X__constantX10Xfold__foldX': [(lambda g, xx1=None,xx2=None:g.inject(xx2).choose(__.is_(xx2),__.constant(xx1).fold(),__.fold()))], 
    'g_injectX2X_chooseXisX1X__constantX10Xfold__foldX': [(lambda g, xx1=None,xx3=None,xx2=None:g.inject(xx3).choose(__.is_(xx2),__.constant(xx1).fold(),__.fold()))], 
    'g_V_localXpropertiesXlocationX_order_byXvalueX_limitX2XX_value': [(lambda g:g.V().local(__.properties('location').order().by(T.value,Order.asc)[0:2]).value())], 
    'g_V_hasXlabel_personX_asXaX_localXoutXcreatedX_asXbXX_selectXa_bX_byXnameX_byXidX': [(lambda g:g.V().has(T.label,'person').as_('a').local(__.out('created').as_('b')).select('a','b').by('name').by(T.id_))], 
    'g_V_localXoutE_countX': [(lambda g:g.V().local(__.outE().count()))], 
    'g_VX1X_localXoutEXknowsX_limitX1XX_inV_name': [(lambda g, vid1=None:g.V(vid1).local(__.outE('knows')[0:1]).in_v().name)], 
    'g_V_localXbothEXcreatedX_limitX1XX_otherV_name': [(lambda g:g.V().local(__.bothE('created')[0:1]).otherV().name)], 
    'g_VX4X_localXbothEX1_createdX_limitX1XX': [(lambda g, vid4=None:g.V(vid4).local(__.bothE('created')[0:1]))], 
    'g_VX4X_localXbothEXknows_createdX_limitX1XX': [(lambda g, vid4=None:g.V(vid4).local(__.bothE('knows','created')[0:1]))], 
    'g_VX4X_localXbothE_limitX1XX_otherV_name': [(lambda g, vid4=None:g.V(vid4).local(__.bothE()[0:1]).otherV().name)], 
    'g_VX4X_localXbothE_limitX2XX_otherV_name': [(lambda g, vid4=None:g.V(vid4).local(__.bothE()[0:2]).otherV().name)], 
    'g_V_localXinEXknowsX_limitX2XX_outV_name': [(lambda g:g.V().local(__.inE('knows')[0:2]).out_v().name)], 
    'g_V_localXmatchXproject__created_person__person_name_nameX_selectXname_projectX_by_byXnameX': [(lambda g:g.V().local(__.match(__.as_('project').in_('created').as_('person'),__.as_('person').name.as_('name'))).select('name','project').by().by('name'))], 
    'g_VX2X_optionalXoutXknowsXX': [(lambda g, vid2=None:g.V(vid2).optional(__.out('knows')))], 
    'g_VX2X_optionalXinXknowsXX': [(lambda g, vid2=None:g.V(vid2).optional(__.in_('knows')))], 
    'g_V_hasLabelXpersonX_optionalXoutXknowsX_optionalXoutXcreatedXXX_path': [(lambda g:g.V().hasLabel('person').optional(__.out('knows').optional(__.out('created'))).path())], 
    'g_V_optionalXout_optionalXoutXX_path': [(lambda g:g.V().optional(__.out().optional(__.out())).path())], 
    'g_VX1X_optionalXaddVXdogXX_label': [(lambda g, vid1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid1=None:g.V(vid1).optional(__.addV('dog')).label()), (lambda g, vid1=None:g.V())], 
    'g_V_repeatXoutX_timesX2X_emit_path': [(lambda g:g.V().repeat(__.out()).times(2).emit().path())], 
    'g_V_repeatXoutX_timesX2X_repeatXinX_timesX2X_name': [(lambda g:g.V().repeat(__.out()).times(2).repeat(__.in_()).times(2).name)], 
    'g_V_repeatXoutE_inVX_timesX2X_path_by_name_by_label': [(lambda g:g.V().repeat(__.outE().in_v()).times(2).path().by('name').by(T.label))], 
    'g_V_repeatXoutX_timesX2X': [(lambda g:g.V().repeat(__.out()).times(2))], 
    'g_V_repeatXoutX_timesX2X_emit': [(lambda g:g.V().repeat(__.out()).times(2).emit())], 
    'g_VX1X_timesX2X_repeatXoutX_name': [(lambda g, vid1=None:g.V(vid1).times(2).repeat(__.out()).name)], 
    'g_V_emit_timesX2X_repeatXoutX_path': [(lambda g:g.V().emit().times(2).repeat(__.out()).path())], 
    'g_V_emit_repeatXoutX_timesX2X_path': [(lambda g:g.V().emit().repeat(__.out()).times(2).path())], 
    'g_VX1X_emitXhasXlabel_personXX_repeatXoutX_name': [(lambda g, vid1=None:g.V(vid1).emit(__.has(T.label,'person')).repeat(__.out()).name)], 
    'g_V_repeatXgroupCountXmX_byXnameX_outX_timesX2X_capXmX': [(lambda g:g.V().repeat(__.groupCount('m').by('name').out()).times(2).cap('m'))], 
    'g_VX1X_repeatXgroupCountXmX_byXloopsX_outX_timesX3X_capXmX': [(lambda g, vid1=None:g.V(vid1).repeat(__.groupCount('m').by(__.loops()).out()).times(3).cap('m'))], 
    'g_V_repeatXbothX_timesX10X_asXaX_out_asXbX_selectXa_bX': [(lambda g:g.V().repeat(__.both()).times(10).as_('a').out().as_('b').select('a','b').count())], 
    'g_VX1X_repeatXoutX_untilXoutE_count_isX0XX_name': [(lambda g, vid1=None:g.V(vid1).repeat(__.out()).until(__.outE().count().is_(0)).name)], 
    'g_V_repeatXbothX_untilXname_eq_marko_or_loops_gt_1X_groupCount_byXnameX': [(lambda g, pred1=None:g.V().repeat(__.both()).until(pred1).groupCount().by('name'))], 
    'g_V_hasXname_markoX_repeatXoutE_inV_simplePathX_untilXhasXname_rippleXX_path_byXnameX_byXlabelX': [(lambda g:g.V().has('name','marko').repeat(__.outE().in_v().simplePath()).until(__.has('name','ripple')).path().by('name').by(T.label))], 
    'g_V_hasXloop_name_loopX_repeatXinX_timesX5X_path_by_name': [(lambda g:g.V().has('loops','name','loop').repeat(__.in_()).times(5).path().by('name'))], 
    'g_V_repeatXout_repeatXout_order_byXname_descXX_timesX1XX_timesX1X_limitX1X_path_byXnameX': [(lambda g:g.V().repeat(__.out().repeat(__.out().order().by('name',Order.desc)).times(1)).times(1)[0:1].path().by('name'))], 
    'g_V_repeatXoutXknowsXX_untilXrepeatXoutXcreatedXX_emitXhasXname_lopXXX_path_byXnameX': [(lambda g:g.V().repeat(__.out('knows')).until(__.repeat(__.out('created')).emit(__.has('name','lop'))).path().by('name'))], 
    'g_V_repeatXrepeatXout_createdXX_untilXhasXname_rippleXXXemit_lang': [(lambda g:g.V().repeat(__.repeat(__.out('created')).until(__.has('name','ripple'))).emit().lang)], 
    'g_V_untilXconstantXtrueXX_repeatXrepeatXout_createdXX_untilXhasXname_rippleXXXemit_lang': [(lambda g:g.V().until(__.constant(True)).repeat(__.repeat(__.out('created')).until(__.has('name','ripple'))).emit().lang)], 
    'g_V_emit_repeatXa_outXknows_filterXloops_isX0XX_lang': [(lambda g:g.V().emit().repeat('a',__.out('knows').filter_(__.loops('a').is_(0))).lang)], 
    'g_VX3X_repeatXbothX_createdXX_untilXloops_is_40XXemit_repeatXin_knowsXX_emit_loopsXisX1Xdedup_values': [(lambda g, vid3=None:g.V(vid3).repeat(__.both('created')).until(__.loops().is_(40)).emit(__.repeat(__.in_('knows')).emit(__.loops().is_(1))).dedup().name)], 
    'g_VX1X_repeatXrepeatXunionXout_uses_out_traversesXX_whereXloops_isX0X_timesX1X_timeX2X_name': [(lambda g, vid1=None:g.V(vid1).repeat(__.repeat(__.union(__.out('uses'),__.out('traverses')).where(__.loops().is_(0))).times(1)).times(2).name)], 
    'g_V_repeatXa_outXknows_repeatXb_outXcreatedX_filterXloops_isX0XX_emit_lang': [(lambda g:g.V().repeat('a',__.out('knows').repeat('b',__.out('created').filter_(__.loops('a').is_(0))).emit()).emit().lang)], 
    'g_VX6X_repeatXa_bothXcreatedX_simplePathX_emitXrepeatXb_bothXknowsXX_untilXloopsXbX_asXb_whereXloopsXaX_asXbX_hasXname_vadasXX_dedup_name': [(lambda g, vid6=None: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().name)], 
    'g_V_unionXout__inX_name': [(lambda g:g.V().union(__.out(),__.in_()).name)], 
    'g_VX1X_unionXrepeatXoutX_timesX2X__outX_name': [(lambda g, vid1=None:g.V(vid1).union(__.repeat(__.out()).times(2),__.out()).name)], 
    'g_V_chooseXlabel_is_person__unionX__out_lang__out_nameX__in_labelX': [(lambda g:g.V().choose(__.label().is_('person'),__.union(__.out().lang,__.out().name),__.in_().label()))], 
    'g_V_chooseXlabel_is_person__unionX__out_lang__out_nameX__in_labelX_groupCount': [(lambda g:g.V().choose(__.label().is_('person'),__.union(__.out().lang,__.out().name),__.in_().label()).groupCount())], 
    'g_V_unionXrepeatXunionXoutXcreatedX__inXcreatedXX_timesX2X__repeatXunionXinXcreatedX__outXcreatedXX_timesX2XX_label_groupCount': [(lambda g:g.V().union(__.repeat(__.union(__.out('created'),__.in_('created'))).times(2),__.repeat(__.union(__.in_('created'),__.out('created'))).times(2)).label().groupCount())], 
    'g_VX1_2X_unionXoutE_count__inE_count__outE_weight_sumX': [(lambda g, vid2=None,vid1=None:g.V(vid1,vid2).union(__.outE().count(),__.inE().count(),__.outE().weight.sum_()))], 
    'g_VX1_2X_localXunionXoutE_count__inE_count__outE_weight_sumXX': [(lambda g, vid2=None,vid1=None:g.V(vid1,vid2).local(__.union(__.outE().count(),__.inE().count(),__.outE().weight.sum_())))], 
    'g_VX1_2X_localXunionXcountXX': [(lambda g, vid2=None,vid1=None:g.V(vid1,vid2).local(__.union(__.count())))], 
    'g_V_andXhasXage_gt_27X__outE_count_gte_2X_name': [(lambda g:g.V().and_(__.has('age',P.gt(27)),__.outE().count().is_(P.gte(2))).name)], 
    'g_V_andXoutE__hasXlabel_personX_and_hasXage_gte_32XX_name': [(lambda g:g.V().and_(__.outE(),__.has(T.label,'person').and_().has('age',P.gte(32))).name)], 
    'g_V_asXaX_outXknowsX_and_outXcreatedX_inXcreatedX_asXaX_name': [(lambda g:g.V().as_('a').out('knows').and_().out('created').in_('created').as_('a').name)], 
    'g_V_asXaX_andXselectXaX_selectXaXX': [(lambda g:g.V().as_('a').and_(__.select('a'),__.select('a')))], 
    'g_V_hasXname_markoX_and_hasXname_markoX_and_hasXname_markoX': [(lambda g:g.V().has('name','marko').and_().has('name','marko').and_().has('name','marko'))], 
    'g_V_coinX1X': [(lambda g:g.V().coin(float(1.0)))], 
    'g_V_coinX0X': [(lambda g:g.V().coin(float(0.0)))], 
    'g_withStrategiesXSeedStrategyX_V_order_byXnameX_coinX50X': [(lambda g:g.withStrategies(*[TraversalStrategy('SeedStrategy',{'seed':999999,'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy')]).V().order().by('name').coin(float(0.5)))], 
    'g_VX1X_outXcreatedX_inXcreatedX_cyclicPath': [(lambda g, vid1=None:g.V(vid1).out('created').in_('created').cyclicPath())], 
    'g_VX1X_both_both_cyclicPath_byXageX': [(lambda g, vid1=None:g.V(vid1).both().both().cyclicPath().by('age'))], 
    'g_VX1X_outXcreatedX_inXcreatedX_cyclicPath_path': [(lambda g, vid1=None:g.V(vid1).out('created').in_('created').cyclicPath().path())], 
    'g_VX1X_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_cyclicPath_fromXaX_toXbX_path': [(lambda g, vid1=None:g.V(vid1).as_('a').out('created').as_('b').in_('created').as_('c').cyclicPath().from_('a').to('b').path())], 
    'g_injectX0X_V_both_coalesceXhasXname_markoX_both_constantX0XX_cyclicPath_path': [(lambda g:g.inject(0).V().both().coalesce(__.has('name','marko').both(),__.constant(0)).cyclicPath().path())], 
    'g_V_out_in_valuesXnameX_fold_dedupXlocalX_unfold': [(lambda g:g.V().out().in_().name.fold().dedup(Scope.local).unfold())], 
    'g_V_out_asXxX_in_asXyX_selectXx_yX_byXnameX_fold_dedupXlocal_x_yX_unfold': [(lambda g:g.V().out().as_('x').in_().as_('y').select('x','y').by('name').fold().dedup(Scope.local,'x','y').unfold())], 
    'g_V_both_dedup_name': [(lambda g:g.V().both().dedup().name)], 
    'g_V_both_hasXlabel_softwareX_dedup_byXlangX_name': [(lambda g:g.V().both().has(T.label,'software').dedup().by('lang').name)], 
    'g_V_both_name_order_byXa_bX_dedup_value': [(lambda g, c1=None:g.V().both().properties('name').order().by(c1).dedup().value())], 
    'g_V_both_both_name_dedup': [(lambda g:g.V().both().both().name.dedup())], 
    'g_V_both_both_dedup': [(lambda g:g.V().both().both().dedup())], 
    'g_V_both_both_dedup_byXlabelX': [(lambda g:g.V().both().both().dedup().by(T.label))], 
    'g_V_group_byXlabelX_byXbothE_weight_dedup_foldX': [(lambda g:g.V().group().by(T.label).by(__.bothE().weight.dedup().order().by(Order.asc).fold()))], 
    'g_V_asXaX_both_asXbX_dedupXa_bX_byXlabelX_selectXa_bX': [(lambda g:g.V().as_('a').both().as_('b').dedup('a','b').by(T.label).select('a','b'))], 
    'g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_dedupXa_bX_path': [(lambda g:g.V().as_('a').out('created').as_('b').in_('created').as_('c').dedup('a','b').path())], 
    'g_V_outE_asXeX_inV_asXvX_selectXeX_order_byXweight_ascX_selectXvX_valuesXnameX_dedup': [(lambda g:g.V().outE().as_('e').in_v().as_('v').select('e').order().by('weight',Order.asc).select('v').name.dedup())], 
    'g_V_both_both_dedup_byXoutE_countX_name': [(lambda g:g.V().both().both().dedup().by(__.outE().count()).name)], 
    'g_V_groupCount_selectXvaluesX_unfold_dedup': [(lambda g:g.V().groupCount().select(Column.values).unfold().dedup())], 
    'g_V_asXaX_repeatXbothX_timesX3X_emit_name_asXbX_group_byXselectXaXX_byXselectXbX_dedup_order_foldX_selectXvaluesX_unfold_dedup': [(lambda g:g.V().as_('a').repeat(__.both()).times(3).emit().name.as_('b').group().by(__.select('a')).by(__.select('b').dedup().order().fold()).select(Column.values).unfold().dedup())], 
    'g_V_repeatXdedupX_timesX2X_count': [(lambda g:g.V().repeat(__.dedup()).times(2).count())], 
    'g_V_both_group_by_byXout_dedup_foldX_unfold_selectXvaluesX_unfold_out_order_byXnameX_limitX1X_valuesXnameX': [(lambda g:g.V().both().group().by().by(__.out().dedup().fold()).unfold().select(Column.values).unfold().out().order().by('name')[0:1].name)], 
    'g_V_bothE_properties_dedup_count': [(lambda g:g.V().bothE().properties().dedup().count())], 
    'g_V_both_properties_dedup_count': [(lambda g:g.V().both().properties().dedup().count())], 
    'g_V_both_properties_properties_dedup_count': [(lambda g:g.V().both().properties().properties().dedup().count())], 
    'g_V_order_byXname_descX_barrier_dedup_age_name': [(lambda g:g.V().order().by('name',Order.desc).barrier().dedup().by('age').name)], 
    'g_withStrategiesXProductiveByStrategyX_V_order_byXname_descX_barrier_dedup_age_name': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().order().by('name',Order.desc).barrier().dedup().by('age').name)], 
    'g_V_both_dedup_age_name': [(lambda g:g.V().both().dedup().by('age').name)], 
    'g_VX1X_asXaX_both_asXbX_both_asXcX_dedupXa_bX_age_selectXa_b_cX_name': [(lambda g, vid1=None:g.V(vid1).as_('a').both().as_('b').both().as_('c').dedup('a','b').by('age').select('a','b','c').by('name'))], 
    'g_VX1X_valuesXageX_dedupXlocalX_unfold': [(lambda g, vid1=None:g.V(vid1).age.dedup(Scope.local).unfold())], 
    'g_V_drop': [(lambda g:g.addV().as_('a').addV().as_('b').addE('knows').to('a')), (lambda g:g.V().drop()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_V_outE_drop': [(lambda g:g.addV().as_('a').addV().as_('b').addE('knows').to('a')), (lambda g:g.V().outE().drop()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_V_properties_drop': [(lambda g:g.addV().property('name','bob').addV().property('name','alice')), (lambda g:g.V().properties().drop()), (lambda g:g.V()), (lambda g:g.V().properties())], 
    'g_E_propertiesXweightX_drop': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.E().properties('weight').drop()), (lambda g:g.E().properties())], 
    'g_V_properties_propertiesXstartTimeX_drop': [(lambda g: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)), (lambda g:g.V().properties().properties('startTime').drop()), (lambda g:g.V().properties().properties()), (lambda g:g.V().properties().properties('startTime'))], 
    'g_V_filterXfalseX': [(lambda g, pred1=None:g.V().filter_(pred1))], 
    'g_V_filterXtrueX': [(lambda g, pred1=None:g.V().filter_(pred1))], 
    'g_V_filterXlang_eq_javaX': [(lambda g, pred1=None:g.V().filter_(pred1))], 
    'g_VX1X_filterXage_gt_30X': [(lambda g, vid1=None,pred1=None:g.V(vid1).filter_(pred1))], 
    'g_VX2X_filterXage_gt_30X': [(lambda g, vid2=None,pred1=None:g.V(vid2).filter_(pred1))], 
    'g_VX1X_out_filterXage_gt_30X': [(lambda g, vid1=None,pred1=None:g.V(vid1).out().filter_(pred1))], 
    'g_V_filterXname_startsWith_m_OR_name_startsWith_pX': [(lambda g, pred1=None:g.V().filter_(pred1))], 
    'g_E_filterXfalseX': [(lambda g, pred1=None:g.E().filter_(pred1))], 
    'g_E_filterXtrueX': [(lambda g, pred1=None:g.E().filter_(pred1))], 
    'g_V_outXcreatedX_hasXname__mapXlengthX_isXgtX3XXX_name': [(lambda g, l1=None:g.V().out('created').has('name',__.map(l1).is_(P.gt(3))).name)], 
    'g_VX1X_hasXnameX': [(lambda g, vid1=None:g.V(vid1).has('name'))], 
    'g_VX1X_hasXcircumferenceX': [(lambda g, vid1=None:g.V(vid1).has('circumference'))], 
    'g_VX1X_hasXname_markoX': [(lambda g, vid1=None:g.V(vid1).has('name','marko'))], 
    'g_VX2X_hasXname_markoX': [(lambda g, vid1=None:g.V(vid1).has('name','marko'))], 
    'g_V_hasXname_markoX': [(lambda g:g.V().has('name','marko'))], 
    'g_V_hasXname_blahX': [(lambda g:g.V().has('name','blah'))], 
    'g_V_hasXage_gt_30X': [(lambda g:g.V().has('age',P.gt(30)))], 
    'g_V_hasXage_isXgt_30XX': [(lambda g:g.V().has('age',__.is_(P.gt(30))))], 
    'g_V_hasXlabel_isXsoftwareXX': [(lambda g:g.V().has(T.label,__.is_('software')))], 
    'g_VX1X_hasXage_gt_30X': [(lambda g, vid1=None:g.V(vid1).has('age',P.gt(30)))], 
    'g_VX4X_hasXage_gt_30X': [(lambda g, vid4=None:g.V(vid4).has('age',P.gt(30)))], 
    'g_VXv1X_hasXage_gt_30X': [(lambda g, v1=None:g.V(v1).has('age',P.gt(30)))], 
    'g_VXv4X_hasXage_gt_30X': [(lambda g, v4=None:g.V(v4).has('age',P.gt(30)))], 
    'g_VX1X_out_hasXid_2X': [(lambda g, v2=None:g.V(v2).has('age',P.gt(30)))], 
    'g_V_hasXblahX': [(lambda g:g.V().has('blah'))], 
    'g_V_hasXperson_name_markoX_age': [(lambda g:g.V().has('person','name','marko').age)], 
    'g_VX1X_outE_hasXweight_inside_0_06X_inV': [(lambda g, vid1=None:g.V(vid1).outE().has('weight',P.gt(float(0.0)).and_(P.lt(float(0.6)))).in_v())], 
    'g_EX11X_outV_outE_hasXid_10X': [(lambda g, eid11=None,eid10=None:g.E(eid11).out_v().outE().has(T.id_,eid10))], 
    'g_EX11X_outV_outE_hasXid_10AsStringX': [(lambda g, eid11=None,eid10=None:g.E(eid11).out_v().outE().has(T.id_,eid10))], 
    'g_V_hasXlocationX': [(lambda g:g.V().has('location'))], 
    'g_V_hasXage_withinX27X_count': [(lambda g:g.V().has('age',P.within([27])).count())], 
    'g_V_hasXage_withinX27_nullX_count': [(lambda g:g.V().has('age',P.within([27,None])).count())], 
    'g_V_hasXage_withinX27_29X_count': [(lambda g:g.V().has('age',P.within([27,29])).count())], 
    'g_V_hasXage_withoutX27X_count': [(lambda g:g.V().has('age',P.without([27])).count())], 
    'g_V_hasXage_withoutX27_29X_count': [(lambda g:g.V().has('age',P.without([27,29])).count())], 
    'g_V_hasXperson_age_withinX': [(lambda g:g.V().has('person','age',P.within([])))], 
    'g_V_hasXperson_age_withoutX': [(lambda g:g.V().has('person','age',P.without([])))], 
    'g_V_hasXname_containingXarkXX': [(lambda g:g.V().has('name',TextP.containing('ark')))], 
    'g_V_hasXname_startingWithXmarXX': [(lambda g:g.V().has('name',TextP.startingWith('mar')))], 
    'g_V_hasXname_endingWithXasXX': [(lambda g:g.V().has('name',TextP.endingWith('as')))], 
    'g_V_hasXperson_name_containingXoX_andXltXmXXX': [(lambda g:g.V().has('person','name',TextP.containing('o').and_(P.lt('m'))))], 
    'g_V_hasXname_gtXmX_andXcontainingXoXXX': [(lambda g:g.V().has('name',P.gt('m').and_(TextP.containing('o'))))], 
    'g_V_hasXname_not_containingXarkXX': [(lambda g:g.V().has('name',TextP.notContaining('ark')))], 
    'g_V_hasXname_not_startingWithXmarXX': [(lambda g:g.V().has('name',TextP.notStartingWith('mar')))], 
    'g_V_hasXname_not_endingWithXasXX': [(lambda g:g.V().has('name',TextP.notEndingWith('as')))], 
    'g_V_hasXname_regexXrMarXX': [(lambda g:g.V().has('name',TextP.regex('^mar')))], 
    'g_V_hasXname_notRegexXrMarXX': [(lambda g:g.V().has('name',TextP.not_regex('^mar')))], 
    'g_V_hasXname_regexXTinkerXX': [(lambda g:g.addV('software').property('name','Apache TinkerPop©')), (lambda g:g.V().has('name',TextP.regex('Tinker')).name)], 
    'g_V_hasXname_regexXTinkerUnicodeXX': [(lambda g:g.addV('software').property('name','Apache TinkerPop©')), (lambda g:g.V().has('name',TextP.regex('Tinker.*©')).name)], 
    'g_V_hasXp_neqXvXX': [(lambda g:g.V().has('p',P.neq('v')))], 
    'g_V_hasXage_gtX18X_andXltX30XXorXgtx35XXX': [(lambda g:g.V().has('age',P.gt(18).and_(P.lt(30)).or_(P.gt(35))))], 
    'g_V_hasXage_gtX18X_andXltX30XXorXltx35XXX': [(lambda g:g.V().has('age',P.gt(18).and_(P.lt(30)).and_(P.lt(35))))], 
    'g_V_hasXk_withinXcXX_valuesXkX': [(lambda g:g.addV().property('k','轉注').addV().property('k','✦').addV().property('k','♠').addV().property('k','A')), (lambda g:g.V().has('k',P.within(['轉注','✦','♠'])).k)], 
    'g_V_hasXnullX': [(lambda g:g.V().has(None))], 
    'g_V_hasXnull_testnullkeyX': [(lambda g:g.V().has(None,'test-null-key'))], 
    'g_E_hasXnullX': [(lambda g:g.E().has(None))], 
    'g_V_hasXlabel_personX': [(lambda g:g.V().has(T.label,'person'))], 
    'g_V_hasXlabel_eqXpersonXX': [(lambda g:g.V().has(T.label,P.eq('person')))], 
    'g_V_hasXlabel_isXpersonXX': [(lambda g:g.V().has(T.label,__.is_('person')))], 
    'g_V_hasIdXemptyX_count': [(lambda g, xx1=None:g.V().hasId(xx1).count())], 
    'g_V_hasIdXwithinXemptyXX_count': [(lambda g, xx1=None:g.V().hasId(xx1).count())], 
    'g_V_hasIdXwithoutXemptyXX_count': [(lambda g, xx1=None:g.V().hasId(xx1).count())], 
    'g_V_notXhasIdXwithinXemptyXXX_count': [(lambda g, xx1=None:g.V().not_(__.hasId(xx1)).count())], 
    'g_V_hasIdXnullX': [(lambda g:g.V().hasId(None))], 
    'g_V_hasIdXeqXnullXX': [(lambda g:g.V().hasId(P.eq(None)))], 
    'g_V_hasIdX2_nullX': [(lambda g, vid2=None:g.V().hasId(vid2,None))], 
    'g_V_hasIdX2AsString_nullX': [(lambda g, vid2=None:g.V().hasId(vid2,None))], 
    'g_V_hasIdX1AsString_2AsString_nullX': [(lambda g, vid2=None,vid1=None:g.V().hasId(vid1,vid2,None))], 
    'g_V_hasIdXnull_2X': [(lambda g, vid2=None:g.V().hasId(None,vid2))], 
    'g_V_hasIdX1X_hasIdX2X': [(lambda g, vid2=None,vid1=None:g.V().hasId(vid1).hasId(vid2))], 
    'g_V_in_hasIdXneqX1XX': [(lambda g, xx1=None:g.V().in_().hasId(xx1))], 
    'g_VX1X_out_hasIdX2X': [(lambda g, vid2=None,vid1=None:g.V(vid1).out().hasId(vid2))], 
    'g_VX1X_out_hasXid_2_3X': [(lambda g, vid3=None,vid2=None,vid1=None:g.V(vid1).out().hasId(vid2,vid3))], 
    'g_VX1X_out_hasXid_2AsString_3AsStringX': [(lambda g, vid3=None,vid2=None,vid1=None:g.V(vid1).out().hasId(vid2,vid3))], 
    'g_VX1AsStringX_out_hasXid_2AsStringX': [(lambda g, vid2=None,vid1=None:g.V(vid1).out().hasId(vid2))], 
    'g_VX1X_out_hasXid_2_3X_inList': [(lambda g, xx1=None,vid1=None:g.V(vid1).out().hasId(xx1))], 
    'g_V_hasXid_1_2X': [(lambda g, vid2=None,vid1=None:g.V().hasId(vid1,vid2))], 
    'g_V_hasXid_1_2X_inList': [(lambda g, xx1=None:g.V().hasId(xx1))], 
    'g_V_both_dedup_properties_hasKeyXageX_value': [(lambda g:g.V().both().properties().dedup().hasKey('age').value())], 
    'g_V_both_properties_dedup_hasKeyXageX_hasValueXgtX30XX_value': [(lambda g:g.V().both().properties().dedup().hasKey('age').hasValue(P.gt(30)).value()), (lambda g:g.V().both().properties().dedup().hasKey('age').hasValue(P.gt(30)).value())], 
    'g_V_bothE_properties_dedup_hasKeyXweightX_value': [(lambda g:g.V().bothE().properties().dedup().hasKey('weight').value())], 
    'g_V_bothE_properties_dedup_hasKeyXweightX_hasValueXltX0d3XX_value': [(lambda g:g.V().bothE().properties().dedup().hasKey('weight').hasValue(P.lt(float(0.3))).value()), (lambda g:g.V().bothE().properties().dedup().hasKey('weight').hasValue(P.lt(float(0.3))).value())], 
    'g_V_properties_hasKeyXnullX': [(lambda g:g.V().properties().hasKey(None))], 
    'g_V_properties_hasKeyXnull_nullX': [(lambda g:g.V().properties().hasKey(None,None))], 
    'g_V_properties_hasKeyXnull_ageX_value': [(lambda g:g.V().properties().hasKey(None,'age').value())], 
    'g_E_properties_hasKeyXnullX': [(lambda g:g.E().properties().hasKey(None))], 
    'g_E_properties_hasKeyXnull_nullX': [(lambda g:g.E().properties().hasKey(None,None))], 
    'g_E_properties_hasKeyXnull_weightX_value': [(lambda g:g.E().properties().hasKey(None,'weight').value())], 
    'g_EX7X_hasLabelXknowsX': [(lambda g, eid7=None:g.E(eid7).hasLabel('knows'))], 
    'g_E_hasLabelXknowsX': [(lambda g:g.E().hasLabel('knows'))], 
    'g_E_hasLabelXuses_traversesX': [(lambda g:g.E().hasLabel('uses','traverses'))], 
    'g_V_hasLabelXperson_software_blahX': [(lambda g:g.V().hasLabel('person','software','blah'))], 
    'g_V_hasLabelXpersonX_hasLabelXsoftwareX': [(lambda g:g.V().hasLabel('person').hasLabel('software'))], 
    'g_V_hasLabelXpersonX_hasXage_notXlteX10X_andXnotXbetweenX11_20XXXX_andXltX29X_orXeqX35XXXX_name': [(lambda g:g.V().hasLabel('person').has('age',P.gt(10).or_(P.gte(11).and_(P.lt(20))).and_(P.lt(29).or_(P.eq(35)))).name)], 
    'g_V_hasLabelXnullX': [(lambda g:g.V().hasLabel(None))], 
    'g_V_hasXlabel_nullX': [(lambda g:g.V().has(T.label,None))], 
    'g_V_hasLabelXnull_nullX': [(lambda g:g.V().hasLabel(None,None))], 
    'g_V_hasLabelXnull_personX': [(lambda g:g.V().hasLabel(None,'person'))], 
    'g_E_hasLabelXnullX': [(lambda g:g.E().hasLabel(None))], 
    'g_E_hasXlabel_nullX': [(lambda g:g.E().has(T.label,None))], 
    'g_V_properties_hasLabelXnullX': [(lambda g:g.V().properties().hasLabel(None))], 
    'g_V_hasNotXageX_name': [(lambda g:g.V().hasNot('age').name)], 
    'g_V_properties_hasValueXnullX': [(lambda g:g.V().properties().hasValue(None))], 
    'g_V_properties_hasValueXnull_nullX': [(lambda g:g.V().properties().hasValue(None,None))], 
    'g_V_properties_hasValueXnull_joshX_value': [(lambda g:g.V().properties().hasValue(None,'josh').value())], 
    'g_V_valuesXageX_isX32X': [(lambda g:g.V().age.is_(32))], 
    'g_V_valuesXageX_isXlte_30X': [(lambda g:g.V().age.is_(P.lte(30)))], 
    'g_V_valuesXageX_isXgte_29X_isXlt_34X': [(lambda g:g.V().age.is_(P.gte(29)).is_(P.lt(34)))], 
    'g_V_whereXinXcreatedX_count_isX1XX_valuesXnameX': [(lambda g:g.V().where(__.in_('created').count().is_(1)).name)], 
    'g_V_whereXinXcreatedX_count_isXgte_2XX_valuesXnameX': [(lambda g:g.V().where(__.in_('created').count().is_(P.gte(2))).name)], 
    'g_V_orXhasXage_gt_27X__outE_count_gte_2X_name': [(lambda g:g.V().or_(__.has('age',P.gt(27)),__.outE().count().is_(P.gte(2))).name)], 
    'g_V_orXoutEXknowsX__hasXlabel_softwareX_or_hasXage_gte_35XX_name': [(lambda g:g.V().or_(__.outE('knows'),__.has(T.label,'software').or_().has('age',P.gte(35))).name)], 
    'g_V_asXaX_orXselectXaX_selectXaXX': [(lambda g:g.V().as_('a').or_(__.select('a'),__.select('a')))], 
    'g_VX1X_out_limitX2X': [(lambda g, vid1=None:g.V(vid1).out()[0:2])], 
    'g_V_localXoutE_limitX1X_inVX_limitX3X': [(lambda g:g.V().local(__.outE()[0:1]).in_v()[0:3])], 
    'g_VX1X_outXknowsX_outEXcreatedX_rangeX0_1X_inV': [(lambda g, vid1=None:g.V(vid1).out('knows').outE('created')[0].in_v())], 
    'g_VX1X_outXknowsX_outXcreatedX_rangeX0_1X': [(lambda g, vid1=None:g.V(vid1).out('knows').out('created')[0])], 
    'g_VX1X_outXcreatedX_inXcreatedX_rangeX1_3X': [(lambda g, vid1=None:g.V(vid1).out('created').in_('created')[1:3])], 
    'g_VX1X_outXcreatedX_inEXcreatedX_rangeX1_3X_outV': [(lambda g, vid1=None:g.V(vid1).out('created').inE('created')[1:3].out_v())], 
    'g_V_repeatXbothX_timesX3X_rangeX5_11X': [(lambda g:g.V().repeat(__.both()).times(3)[5:11])], 
    'g_V_asXaX_in_asXbX_in_asXcX_selectXa_b_cX_byXnameX_limitXlocal_2X': [(lambda g:g.V().as_('a').in_().as_('b').in_().as_('c').select('a','b','c').by('name').limit(Scope.local,2))], 
    'g_V_asXaX_in_asXbX_in_asXcX_selectXa_b_cX_byXnameX_limitXlocal_1X': [(lambda g:g.V().as_('a').in_().as_('b').in_().as_('c').select('a','b','c').by('name').limit(Scope.local,1))], 
    'g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_rangeXlocal_1_3X': [(lambda g:g.V().as_('a').out().as_('b').out().as_('c').select('a','b','c').by('name').range_(Scope.local,1,3))], 
    'g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_rangeXlocal_1_2X': [(lambda g:g.V().as_('a').out().as_('b').out().as_('c').select('a','b','c').by('name').range_(Scope.local,1,2))], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_rangeXlocal_1_3X': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).range_(Scope.local,1,3))], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_rangeXlocal_1_2X': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).range_(Scope.local,1,2))], 
    'g_V_hasLabelXpersonX_order_byXageX_skipX1X_valuesXnameX': [(lambda g:g.V().hasLabel('person').order().by('age').skip(1).name)], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_rangeXlocal_4_5X': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).range_(Scope.local,4,5))], 
    'g_V_outE_valuesXweightX_fold_orderXlocalX_skipXlocal_2X': [(lambda g:g.V().outE().weight.fold().order(Scope.local).skip(Scope.local,2))], 
    'g_V_asXaX_in_asXaX_in_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_limitXlocal_1X': [(lambda g:g.V().as_('a').in_().as_('a').in_().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).limit(Scope.local,1))], 
    'g_V_asXaX_in_asXaX_in_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_limitXlocal_2X': [(lambda g:g.V().as_('a').in_().as_('a').in_().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).limit(Scope.local,2))], 
    'g_V_hasLabelXpersonX_order_byXageX_valuesXnameX_skipX1X': [(lambda g:g.V().hasLabel('person').order().by('age').name.skip(1))], 
    'g_VX1X_valuesXageX_rangeXlocal_20_30X': [(lambda g, vid1=None:g.V(vid1).age.range_(Scope.local,20,30))], 
    'g_E_sampleX1X': [(lambda g:g.E().sample(1))], 
    'g_E_sampleX2X_byXweightX': [(lambda g:g.E().sample(2).by('weight'))], 
    'g_V_localXoutE_sampleX1X_byXweightXX': [(lambda g:g.V().local(__.outE().sample(1).by('weight')))], 
    'g_withStrategiesXSeedStrategyX_V_group_byXlabelX_byXbothE_weight_order_sampleX2X_foldXunfold': [(lambda g:g.withStrategies(*[TraversalStrategy('SeedStrategy',{'seed':999999,'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy')]).V().group().by(T.label).by(__.bothE().weight.order().sample(2).fold()).unfold())], 
    'g_withStrategiesXSeedStrategyX_V_group_byXlabelX_byXbothE_weight_order_fold_sampleXlocal_5XXunfold': [(lambda g:g.withStrategies(*[TraversalStrategy('SeedStrategy',{'seed':999999,'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy')]).V().group().by(T.label).by(__.bothE().weight.order().fold().sample(Scope.local,5)).unfold())], 
    'g_withStrategiesXSeedStrategyX_V_order_byXlabel_descX_sampleX1X_byXageX': [(lambda g:g.withStrategies(*[TraversalStrategy('SeedStrategy',{'seed':999999,'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy')]).V().order().by(T.label,Order.desc).sample(1).by('age'))], 
    'g_VX1X_valuesXageX_sampleXlocal_5X': [(lambda g, vid1=None:g.V(vid1).age.sample(Scope.local,5))], 
    'g_VX1X_outXcreatedX_inXcreatedX_simplePath': [(lambda g, vid1=None:g.V(vid1).out('created').in_('created').simplePath())], 
    'g_V_repeatXboth_simplePathX_timesX3X_path': [(lambda g:g.V().repeat(__.both().simplePath()).times(3).path())], 
    'g_V_asXaX_out_asXbX_out_asXcX_simplePath_byXlabelX_fromXbX_toXcX_path_byXnameX': [(lambda g:g.V().as_('a').out().as_('b').out().as_('c').simplePath().by(T.label).from_('b').to('c').path().by('name'))], 
    'g_injectX0X_V_both_coalesceXhasXname_markoX_both_constantX0XX_simplePath_path': [(lambda g:g.inject(0).V().both().coalesce(__.has('name','marko').both(),__.constant(0)).simplePath().path())], 
    'g_V_both_asXaX_both_asXbX_simplePath_path_byXageX__fromXaX_toXbX': [(lambda g:g.V().both().as_('a').both().as_('b').simplePath().path().by('age').from_('a').to('b'))], 
    'g_V_valuesXnameX_order_tailXglobal_2X': [(lambda g:g.V().name.order().tail(Scope.global_,2))], 
    'g_V_valuesXnameX_order_tailX2X': [(lambda g:g.V().name.order().tail(2))], 
    'g_V_valuesXnameX_order_tail': [(lambda g:g.V().name.order().tail())], 
    'g_V_valuesXnameX_order_tailX7X': [(lambda g:g.V().name.order().tail(7))], 
    'g_V_repeatXbothX_timesX3X_tailX7X': [(lambda g:g.V().repeat(__.both()).times(3).tail(7))], 
    'g_V_repeatXin_outX_timesX3X_tailX7X_count': [(lambda g:g.V().repeat(__.in_().out()).times(3).tail(7).count())], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXaX_byXunfold_valuesXnameX_foldX_tailXlocal_1X': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select('a').by(__.unfold().name.fold()).tail(Scope.local,1))], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXaX_byXunfold_valuesXnameX_foldX_tailXlocalX': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select('a').by(__.unfold().name.fold()).tail(Scope.local))], 
    'g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_tailXlocal_2X': [(lambda g:g.V().as_('a').out().as_('b').out().as_('c').select('a','b','c').by('name').tail(Scope.local,2))], 
    'g_V_asXaX_out_asXbX_out_asXcX_selectXa_b_cX_byXnameX_tailXlocal_1X': [(lambda g:g.V().as_('a').out().as_('b').out().as_('c').select('a','b','c').by('name').tail(Scope.local,1))], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_tailXlocal_1X': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).tail(Scope.local,1))], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_tailXlocalX': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).tail(Scope.local))], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXlimitXlocal_0XX_tailXlocal_1X': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select(Pop.mixed,'a').by(__.limit(Scope.local,0)).tail(Scope.local,1))], 
    'g_V_asXaX_out_asXaX_out_asXaX_selectXmixed_aX_byXunfold_valuesXnameX_foldX_tailXlocal_2X': [(lambda g:g.V().as_('a').out().as_('a').out().as_('a').select(Pop.mixed,'a').by(__.unfold().name.fold()).tail(Scope.local,2))], 
    'g_VX1X_valuesXageX_tailXlocal_5X': [(lambda g, vid1=None:g.V(vid1).age.tail(Scope.local,50))], 
    'g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_selectXa_bX_whereXa_eqXbXX': [(lambda g:g.V().has('age').as_('a').out().in_().has('age').as_('b').select('a','b').where('a',P.eq('b')))], 
    'g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_selectXa_bX_whereXa_neqXbXX': [(lambda g:g.V().has('age').as_('a').out().in_().has('age').as_('b').select('a','b').where('a',P.neq('b')))], 
    'g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_selectXa_bX_whereXb_hasXname_markoXX': [(lambda g:g.V().has('age').as_('a').out().in_().has('age').as_('b').select('a','b').where(__.as_('b').has('name','marko')))], 
    'g_V_hasXageX_asXaX_out_in_hasXageX_asXbX_selectXa_bX_whereXa_outXknowsX_bX': [(lambda g:g.V().has('age').as_('a').out().in_().has('age').as_('b').select('a','b').where(__.as_('a').out('knows').as_('b')))], 
    'g_V_asXaX_outXcreatedX_whereXasXaX_name_isXjoshXX_inXcreatedX_name': [(lambda g:g.V().as_('a').out('created').where(__.as_('a').name.is_('josh')).in_('created').name)], 
    'g_withSideEffectXa_josh_peterX_VX1X_outXcreatedX_inXcreatedX_name_whereXwithinXaXX': [(lambda g, xx1=None,vid1=None:g.withSideEffect('a',xx1).V(vid1).out('created').in_('created').name.where(P.within(['a'])))], 
    'g_VX1X_asXaX_outXcreatedX_inXcreatedX_asXbX_whereXa_neqXbXX_name': [(lambda g, vid1=None:g.V(vid1).as_('a').out('created').in_('created').as_('b').where('a',P.neq('b')).name)], 
    'g_VX1X_asXaX_outXcreatedX_inXcreatedX_asXbX_whereXasXbX_outXcreatedX_hasXname_rippleXX_valuesXage_nameX': [(lambda g, vid1=None:g.V(vid1).as_('a').out('created').in_('created').as_('b').where(__.as_('b').out('created').has('name','ripple')).values('age','name'))], 
    'g_VX1X_asXaX_outXcreatedX_inXcreatedX_whereXeqXaXX_name': [(lambda g, vid1=None:g.V(vid1).as_('a').out('created').in_('created').where(P.eq('a')).name)], 
    'g_VX1X_asXaX_outXcreatedX_inXcreatedX_whereXneqXaXX_name': [(lambda g, vid1=None:g.V(vid1).as_('a').out('created').in_('created').where(P.neq('a')).name)], 
    'g_VX1X_out_aggregateXxX_out_whereXnotXwithinXaXXX': [(lambda g, vid1=None:g.V(vid1).out().aggregate('x').out().where(P.without(['x'])))], 
    'g_withSideEffectXa_g_VX2XX_VX1X_out_whereXneqXaXX': [(lambda g, vid1=None,v2=None:g.withSideEffect('a',v2).V(vid1).out().where(P.neq('a')))], 
    'g_VX1X_repeatXbothEXcreatedX_whereXwithoutXeXX_aggregateXeX_otherVX_emit_path': [(lambda g, vid1=None:g.V(vid1).repeat(__.bothE('created').where(P.without(['e'])).aggregate('e').otherV()).emit().path())], 
    'g_V_whereXnotXoutXcreatedXXX_name': [(lambda g:g.V().where(__.not_(__.out('created'))).name)], 
    'g_V_asXaX_out_asXbX_whereXandXasXaX_outXknowsX_asXbX__orXasXbX_outXcreatedX_hasXname_rippleX__asXbX_inXknowsX_count_isXnotXeqX0XXXXX_selectXa_bX': [(lambda g:g.V().as_('a').out().as_('b').where(__.and_(__.as_('a').out('knows').as_('b'),__.or_(__.as_('b').out('created').has('name','ripple'),__.as_('b').in_('knows').count().is_(P.neq(0))))).select('a','b'))], 
    'g_V_whereXoutXcreatedX_and_outXknowsX_or_inXknowsXX_valuesXnameX': [(lambda g:g.V().where(__.out('created').and_().out('knows').or_().in_('knows')).name)], 
    'g_V_asXaX_outXcreatedX_asXbX_whereXandXasXbX_in__notXasXaX_outXcreatedX_hasXname_rippleXXX_selectXa_bX': [(lambda g:g.V().as_('a').out('created').as_('b').where(__.and_(__.as_('b').in_(),__.not_(__.as_('a').out('created').has('name','ripple')))).select('a','b'))], 
    'g_V_asXaX_outXcreatedX_asXbX_inXcreatedX_asXcX_bothXknowsX_bothXknowsX_asXdX_whereXc__notXeqXaX_orXeqXdXXXX_selectXa_b_c_dX': [(lambda g:g.V().as_('a').out('created').as_('b').in_('created').as_('c').both('knows').both('knows').as_('d').where('c',P.neq('a').and_(P.neq('d'))).select('a','b','c','d'))], 
    'g_V_asXaX_out_asXbX_whereXin_count_isXeqX3XX_or_whereXoutXcreatedX_and_hasXlabel_personXXX_selectXa_bX': [(lambda g:g.V().as_('a').out().as_('b').where(__.as_('b').in_().count().is_(P.eq(3)).or_().where(__.as_('b').out('created').and_().as_('b').has(T.label,'person'))).select('a','b'))], 
    'g_V_asXaX_outXcreatedX_inXcreatedX_asXbX_whereXa_gtXbXX_byXageX_selectXa_bX_byXnameX': [(lambda g:g.V().as_('a').out('created').in_('created').as_('b').where('a',P.gt('b')).by('age').select('a','b').by('name'))], 
    'g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_whereXa_gtXbX_orXeqXbXXX_byXageX_byXweightX_byXweightX_selectXa_cX_byXnameX': [(lambda g:g.V().as_('a').outE('created').as_('b').in_v().as_('c').where('a',P.gt('b').or_(P.eq('b'))).by('age').by('weight').by('weight').select('a','c').by('name'))], 
    'g_V_asXaX_outEXcreatedX_asXbX_inV_asXcX_inXcreatedX_asXdX_whereXa_ltXbX_orXgtXcXX_andXneqXdXXX_byXageX_byXweightX_byXinXcreatedX_valuesXageX_minX_selectXa_c_dX': [(lambda g:g.V().as_('a').outE('created').as_('b').in_v().as_('c').in_('created').as_('d').where('a',P.lt('b').or_(P.gt('c')).and_(P.neq('d'))).by('age').by('weight').by(__.in_('created').age.min_()).select('a','c','d').by('name'))], 
    'g_VX1X_asXaX_out_hasXageX_whereXgtXaXX_byXageX_name': [(lambda g, vid1=None:g.V(vid1).as_('a').out().has('age').where(P.gt('a')).by('age').name)], 
    'g_VX3X_asXaX_in_out_asXbX_whereXa_eqXbXX_byXageX_name': [(lambda g, vid3=None:g.V(vid3).as_('a').in_().out().as_('b').where('a',P.eq('b')).by('age').name)], 
    'g_withStrategiesXProductiveByStrategyX_VX3X_asXaX_in_out_asXbX_whereXa_eqXbXX_byXageX_name': [(lambda g, vid3=None:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V(vid3).as_('a').in_().out().as_('b').where('a',P.eq('b')).by('age').name)], 
    'g_V_coworker': [(lambda g, xx1=None:g.V().hasLabel('person').filter_(__.outE('created')).aggregate('p').as_('p1').name.as_('p1n').select('p').unfold().where(P.neq('p1')).as_('p2').name.as_('p2n').select('p2').out('created').choose(__.in_('created').where(P.eq('p1')),__.name,__.constant(xx1)).group().by(__.select('p1n')).by(__.group().by(__.select('p2n')).by(__.unfold().fold().project('numCoCreated','coCreated').by(__.count(Scope.local)).by())).unfold())], 
    'g_V_coworker_with_midV': [(lambda g:g.V().hasLabel('person').filter_(__.outE('created')).as_('p1').V().hasLabel('person').where(P.neq('p1')).filter_(__.outE('created')).as_('p2').map(__.out('created').where(__.in_('created').as_('p1')).name.fold()).group().by(__.select('p1').by('name')).by(__.group().by(__.select('p2').by('name')).by(__.project('numCoCreated','coCreated').by(__.count(Scope.local)).by())).unfold())], 
    'g_V_shortestpath': [(lambda g:g.V().as_('v').both().as_('v').project('src','tgt','p').by(__.select(Pop.first,'v')).by(__.select(Pop.last,'v')).by(__.select(Pop.all_,'v')).as_('triple').group('x').by(__.select('src','tgt')).by(__.select('p').fold()).select('tgt').barrier().repeat(__.both().as_('v').project('src','tgt','p').by(__.select(Pop.first,'v')).by(__.select(Pop.last,'v')).by(__.select(Pop.all_,'v')).as_('t').filter_(__.select(Pop.all_,'p').count(Scope.local).as_('l').select(Pop.last,'t').select(Pop.all_,'p').dedup(Scope.local).count(Scope.local).where(P.eq('l'))).select(Pop.last,'t').not_(__.select(Pop.all_,'p').as_('p').count(Scope.local).as_('l').select(Pop.all_,'x').unfold().filter_(__.select(Column.keys).where(P.eq('t')).by(__.select('src','tgt'))).filter_(__.select(Column.values).unfold().or_(__.count(Scope.local).where(P.lt('l')),__.where(P.eq('p'))))).barrier().group('x').by(__.select('src','tgt')).by(__.select(Pop.all_,'p').fold()).select('tgt').barrier()).cap('x').select(Column.values).unfold().unfold().map(__.unfold().name.fold()))], 
    'g_withStrategiesXReadOnlyStrategyX_V': [(lambda g:g.withStrategies(*[TraversalStrategy('ReadOnlyStrategy', None, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy')]).V())], 
    'g_withStrategiesXReadOnlyStrategyX_V_outXknowsX_name': [(lambda g:g.withStrategies(*[TraversalStrategy('ReadOnlyStrategy', None, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy')]).V().out('knows').name)], 
    'g_withStrategiesXReadOnlyStrategyX_addVXpersonX': [(lambda g:g.withStrategies(*[TraversalStrategy('ReadOnlyStrategy', None, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy')]).addV('person'))], 
    'g_withStrategiesXReadOnlyStrategyX_addVXpersonX_fromXVX1XX_toXVX2XX': [(lambda g, vid2=None,vid1=None:g.withStrategies(*[TraversalStrategy('ReadOnlyStrategy', None, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy')]).addE('link').from_(__.V(vid1)).to(__.V(vid2)))], 
    'g_withStrategiesXReadOnlyStrategyX_V_addVXpersonX_fromXVX1XX': [(lambda g, vid1=None:g.withStrategies(*[TraversalStrategy('ReadOnlyStrategy', None, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy')]).V().addE('link').from_(__.V(vid1)))], 
    'g_withStrategiesXReadOnlyStrategyX_V_propertyXname_joshX': [(lambda g:g.withStrategies(*[TraversalStrategy('ReadOnlyStrategy', None, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy')]).V().property('name','josh'))], 
    'g_withStrategiesXReadOnlyStrategyX_E_propertyXweight_0X': [(lambda g:g.withStrategies(*[TraversalStrategy('ReadOnlyStrategy', None, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReadOnlyStrategy')]).E().property('weight',0))], 
    'g_V_classic_recommendation': [(lambda g:g.V().has('name','DARK STAR').as_('a').out('followedBy').aggregate('stash').in_('followedBy').where(P.neq('a').and_(P.without(['stash']))).groupCount().unfold().project('x','y','z').by(__.select(Column.keys).name).by(__.select(Column.keys).performances).by(__.select(Column.values)).order().by(__.select('z'),Order.desc).by(__.select('y'),Order.asc)[0:5].aggregate(Scope.local,'m').select('x'))], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_V': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_E': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_VX4X_outE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).outE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_VX4X_inE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).inE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_VX4X_out': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).out())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_VX4X_in': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).in_())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_VX4X_both': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).both())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_VX4X_bothE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).bothE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_VX4X_localXbothE_limitX1XX': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).local(__.bothE()[0:1]))], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_EX11X_bothV': [(lambda g, eid11=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid11).bothV())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphAXX_EX12X_bothV': [(lambda g, eid12=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['josh','lop','ripple']))),__.out_v().filter_(__.has('name',P.within(['josh','lop','ripple']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid12).bothV())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_V': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_E': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX1X_outE': [(lambda g, vid1=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid1).outE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX1X_out': [(lambda g, vid1=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid1).out())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX1X_outXcreatedX': [(lambda g, vid1=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid1).out('knows'))], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX4X_outXcreatedX': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).out('created'))], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX4X_outE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).outE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX4X_out': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).out())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX4X_bothE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).bothE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX4X_both': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).both())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphBXX_VX4X_outV_outE': [(lambda g, eid8=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.or_(__.has('weight',float(1.0)).hasLabel('knows'),__.has('weight',float(0.4)).hasLabel('created').out_v().has('name','marko'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid8).out_v().outE())], 
    'g_withStrategiesXSubgraphStrategyXvertices_inXknowsX_hasXname_markoXXX_V_name': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.in_('knows').has('name','marko'),'edges':__.and_(__.in_v().filter_(__.in_('knows').has('name','marko')),__.out_v().filter_(__.in_('knows').has('name','marko')))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().name)], 
    'g_withStrategiesXSubgraphStrategyXvertices_in_hasXname_markoXXX_V_name': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.in_().has('name','marko'),'edges':__.and_(__.in_v().filter_(__.in_().has('name','marko')),__.out_v().filter_(__.in_().has('name','marko')))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().name)], 
    'g_withStrategiesXSubgraphStrategyXvertices_inXknowsX_whereXoutXcreatedX_hasXname_lopXXXX_V_name': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.in_('knows').where(__.out('created').has('name','lop')),'edges':__.and_(__.in_v().filter_(__.in_('knows').where(__.out('created').has('name','lop'))),__.out_v().filter_(__.in_('knows').where(__.out('created').has('name','lop'))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().name)], 
    'g_withStrategiesXSubgraphStrategyXvertices_in_hasXname_markoX_outXcreatedX_hasXname_lopXXXX_V_name': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.in_().where(__.has('name','marko').out('created').has('name','lop')),'edges':__.and_(__.in_v().filter_(__.in_().where(__.has('name','marko').out('created').has('name','lop'))),__.out_v().filter_(__.in_().where(__.has('name','marko').out('created').has('name','lop'))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().name)], 
    'g_withStrategiesXSubgraphStrategyXvertices_orXboth_hasXname_markoX_hasXname_markoXXXX_V_name': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.or_(__.both().has('name','marko'),__.has('name','marko')),'edges':__.and_(__.in_v().filter_(__.or_(__.both().has('name','marko'),__.has('name','marko'))),__.out_v().filter_(__.or_(__.both().has('name','marko'),__.has('name','marko'))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().where(__.bothE().count().is_(P.neq(0))).name)], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_V': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_E': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_VX4X_outE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).outE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_VX4X_inE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).inE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_VX4X_out': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).out())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_VX4X_in': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).in_())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_VX4X_both': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).both())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_VX4X_bothE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).bothE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_VX4X_localXbothE_limitX1XX': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).local(__.bothE()[0:1]))], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_EX11X_bothV': [(lambda g, eid11=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid11).bothV())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_EX12X_bothV': [(lambda g, eid12=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid12).bothV())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphCXX_EX9X_bothV': [(lambda g, eid9=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid9).bothV())], 
    'g_withStrategiesXSubgraphStrategyXvertices_hasXname_withinXripple_josh_markoXXX_V_asXaX_out_in_asXbX_dedupXa_bX_name': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.within(['ripple','josh','marko'])),'edges':__.and_(__.in_v().filter_(__.has('name',P.within(['ripple','josh','marko']))),__.out_v().filter_(__.has('name',P.within(['ripple','josh','marko']))))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().as_('a').out().in_().as_('b').dedup('a','b').name)], 
    'g_withStrategiesXSubgraphStrategyXvertexProperties_hasXstartTime_gtX2005XXXX_V_propertiesXlocationX_value': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertexProperties':__.has('startTime',P.gt(2005))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().properties('location').value())], 
    'g_withStrategiesXSubgraphStrategyXvertexProperties_hasXstartTime_gtX2005XXXX_V_valuesXlocationX': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertexProperties':__.has('startTime',P.gt(2005))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().location)], 
    'g_withStrategiesXSubgraphStrategyXvertexProperties_hasXstartTime_gtX2005XXXX_V_asXaX_propertiesXlocationX_asXbX_selectXaX_outE_properties_selectXbX_value_dedup': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertexProperties':__.has('startTime',P.gt(2005))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().as_('a').properties('location').as_('b').select('a').outE().properties().select('b').value().dedup())], 
    'g_withStrategiesXSubgraphStrategyXvertexProperties_hasXstartTime_gtX2005XXXX_V_asXaX_valuesXlocationX_asXbX_selectXaX_outE_properties_selectXbX_dedup': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertexProperties':__.has('startTime',P.gt(2005))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().as_('a').location.as_('b').select('a').outE().properties().select('b').dedup())], 
    'g_withStrategiesXSubgraphStrategyXvertices_hasXname_neqXstephenXX_vertexProperties_hasXstartTime_gtX2005XXXX_V_propertiesXlocationX_value': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.neq('stephen')),'edges':__.and_(__.in_v().filter_(__.has('name',P.neq('stephen'))),__.out_v().filter_(__.has('name',P.neq('stephen')))),'vertexProperties':__.has('startTime',P.gt(2005))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().properties('location').value())], 
    'g_withStrategiesXSubgraphStrategyXvertices_hasXname_neqXstephenXX_vertexProperties_hasXstartTime_gtX2005XXXX_V_valuesXlocationX': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'vertices':__.has('name',P.neq('stephen')),'edges':__.and_(__.in_v().filter_(__.has('name',P.neq('stephen'))),__.out_v().filter_(__.has('name',P.neq('stephen')))),'vertexProperties':__.has('startTime',P.gt(2005))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().location)], 
    'g_withStrategiesXSubgraphStrategyXedges_hasLabelXusesX_hasXskill_5XXX_V_outE_valueMap_selectXvaluesX_unfold': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':True,'edges':__.hasLabel('uses').has('skill',5)}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V().outE().valueMap().select(Column.values).unfold())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_V': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_E': [(lambda g:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_outE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).outE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_inE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).inE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_out': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).out())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_in': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).in_())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_both': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).both())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_bothE': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).bothE())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_VX4X_localXbothE_limitX1XX': [(lambda g, vid4=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).V(vid4).local(__.bothE()[0:1]))], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX11X_bothV': [(lambda g, eid11=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid11).bothV())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX12X_bothV': [(lambda g, eid12=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid12).bothV())], 
    'g_withStrategiesXSubgraphStrategyXsubgraphDXX_EX9X_bothV': [(lambda g, eid9=None:g.withStrategies(*[TraversalStrategy('SubgraphStrategy',{'checkAdjacentVertices':False,'vertices':__.has('name',P.within(['josh','lop','ripple'])),'edges':__.or_(__.has('weight',float(0.4)).hasLabel('created'),__.has('weight',float(1.0)).hasLabel('created'))}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SubgraphStrategy')]).E(eid9).bothV())], 
    'g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX': [(lambda g, vid1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid1=None:g.V(vid1).as_('a').out('created').addE('createdBy').to('a')), (lambda g, vid1=None:g.E()), (lambda g, vid1=None:g.V(vid1).inE())], 
    'g_VX1X_asXaX_outXcreatedX_addEXcreatedByX_toXaX_propertyXweight_2X': [(lambda g, vid1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid1=None:g.V(vid1).as_('a').out('created').addE('createdBy').to('a').property('weight',float(2.0))), (lambda g, vid1=None:g.E()), (lambda g, vid1=None:g.V(vid1).bothE()), (lambda g, vid1=None:g.V(vid1).inE().has('weight',float(2.0)))], 
    'g_V_outE_propertyXweight_nullX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.V().outE().property('weight',None)), (lambda g:g.E().properties('weight'))], 
    'g_V_aggregateXxX_asXaX_selectXxX_unfold_addEXexistsWithX_toXaX_propertyXtime_nowX': [(lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V().aggregate('x').as_('a').select('x').unfold().addE('existsWith').to('a').property('time','now')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.E()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).inE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).outE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).bothE('existsWith').has('time','now')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid2).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid2).inE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid2).outE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid2).bothE('existsWith').has('time','now')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).inE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).outE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).bothE('existsWith').has('time','now')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).inE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).outE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).bothE('existsWith').has('time','now')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).inE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).outE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).bothE('existsWith').has('time','now')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).inE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).outE('existsWith')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).bothE('existsWith').has('time','now'))], 
    'g_V_asXaX_outXcreatedX_inXcreatedX_whereXneqXaXX_asXbX_addEXcodeveloperX_fromXaX_toXbX_propertyXyear_2009X': [(lambda g, vid1=None,vid2=None,vid4=None,vid6=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V().as_('a').out('created').in_('created').where(P.neq('a')).as_('b').addE('codeveloper').from_('a').to('b').property('year',2009)), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.E()), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid1).bothE()), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid1).inE('codeveloper')), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid1).outE('codeveloper')), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid1).bothE('codeveloper').has('year',2009)), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid2).bothE()), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid4).bothE()), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid4).inE('codeveloper')), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid4).outE('codeveloper')), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid4).bothE('codeveloper').has('year',2009)), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid6).bothE()), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid6).inE('codeveloper')), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid6).outE('codeveloper')), (lambda g, vid1=None,vid2=None,vid4=None,vid6=None:g.V(vid6).bothE('codeveloper').has('year',2009))], 
    'g_V_asXaX_inXcreatedX_addEXcreatedByX_fromXaX_propertyXyear_2009X_propertyXacl_publicX': [(lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V().as_('a').in_('created').addE('createdBy').from_('a').property('year',2009).property('acl','public')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.E()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).inE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).outE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).bothE('createdBy').has('year',2009).has('acl','public')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid2).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).inE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).outE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).bothE('createdBy').has('year',2009).has('acl','public')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).inE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).outE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).bothE('createdBy').has('year',2009).has('acl','public')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).inE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).outE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).bothE('createdBy').has('year',2009).has('acl','public')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).bothE()), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).inE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).outE('createdBy')), (lambda g, vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).bothE('createdBy').has('year',2009).has('acl','public'))], 
    'g_withSideEffectXb_bX_VXaX_addEXknowsX_toXbX_propertyXweight_0_5X': [(lambda g, v6=None,v1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, v6=None,v1=None:g.withSideEffect('b',v6).V(v1).addE('knows').to('b').property('weight',float(0.5))), (lambda g, v6=None,v1=None:g.E()), (lambda g, v6=None,v1=None:g.V(v1).bothE()), (lambda g, v6=None,v1=None:g.V(v1).inE('knows')), (lambda g, v6=None,v1=None:g.V(v1).outE('knows')), (lambda g, v6=None,v1=None:g.V(v1).bothE('knows').has('weight',float(0.5))), (lambda g, v6=None,v1=None:g.V(v6).bothE()), (lambda g, v6=None,v1=None:g.V(v6).inE('knows')), (lambda g, v6=None,v1=None:g.V(v6).outE('knows')), (lambda g, v6=None,v1=None:g.V(v6).bothE('knows').has('weight',float(0.5)))], 
    'g_addV_asXfirstX_repeatXaddEXnextX_toXaddVX_inVX_timesX5X_addEXnextX_toXselectXfirstXX': [(lambda g:g.addV().as_('first').repeat(__.addE('next').to(__.addV()).in_v()).times(5).addE('next').to(__.select('first'))), (lambda g:g.V()), (lambda g:g.E()), (lambda g:g.E().hasLabel('next')), (lambda g:g.V()[0:1].bothE()), (lambda g:g.V()[0:1].inE()), (lambda g:g.V()[0:1].outE())], 
    'g_V_hasXname_markoX_asXaX_outEXcreatedX_asXbX_inV_addEXselectXbX_labelX_toXaX': [(lambda g, v1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, v1=None:g.V().has('name','marko').as_('a').outE('created').as_('b').in_v().addE(__.select('b').label()).to('a')), (lambda g, v1=None:g.E()), (lambda g, v1=None:g.V(v1).bothE()), (lambda g, v1=None:g.V(v1).inE('created')), (lambda g, v1=None:g.V(v1).in_('created').has('name','lop')), (lambda g, v1=None:g.V(v1).outE('created'))], 
    'g_addEXV_outE_label_groupCount_orderXlocalX_byXvalues_descX_selectXkeysX_unfold_limitX1XX_fromXV_hasXname_vadasXX_toXV_hasXname_lopXX': [(lambda g, v2=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, v2=None:g.addE(__.V().outE().label().groupCount().order(Scope.local).by(Column.values,Order.desc).select(Column.keys).unfold()[0:1]).from_(__.V().has('name','vadas')).to(__.V().has('name','lop'))), (lambda g, v2=None:g.E()), (lambda g, v2=None:g.V(v2).bothE()), (lambda g, v2=None:g.V(v2).inE('knows')), (lambda g, v2=None:g.V(v2).outE('created')), (lambda g, v2=None:g.V(v2).out('created').has('name','lop'))], 
    'g_addEXknowsX_fromXaX_toXbX_propertyXweight_0_1X': [(lambda g, v6=None,xx1=None,v1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, v6=None,xx1=None,v1=None:g.addE('knows').from_(v1).to(v6).property('weight',xx1)), (lambda g, v6=None,xx1=None,v1=None:g.E()), (lambda g, v6=None,xx1=None,v1=None:g.V(v1).outE('knows')), (lambda g, v6=None,xx1=None,v1=None:g.V(v1).out('knows').has('name','peter'))], 
    'g_VXaX_addEXknowsX_toXbX_propertyXweight_0_1X': [(lambda g, v6=None,xx1=None,v1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, v6=None,xx1=None,v1=None:g.V(v1).addE('knows').to(v6).property('weight',xx1)), (lambda g, v6=None,xx1=None,v1=None:g.E()), (lambda g, v6=None,xx1=None,v1=None:g.V(v1).outE('knows')), (lambda g, v6=None,xx1=None,v1=None:g.V(v1).out('knows').has('name','peter'))], 
    'g_addEXknowsXpropertyXweight_nullXfromXV_hasXname_markoXX_toXV_hasXname_vadasXX': [(lambda g:g.addV('person').property('name','marko').property('age',29).addV('person').property('name','vadas').property('age',27)), (lambda g:g.addE('knows').property('weight',None).from_(__.V().has('name','marko')).to(__.V().has('name','vadas'))), (lambda g:g.E().has('knows','weight',None))], 
    'g_VX1X_addVXanimalX_propertyXage_selectXaX_byXageXX_propertyXname_puppyX': [(lambda g, vid1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid1=None:g.V(vid1).as_('a').addV('animal').property('age',__.select('a').by('age')).property('name','puppy')), (lambda g, vid1=None:g.V().has('animal','age',29))], 
    'g_V_addVXanimalX_propertyXage_0X': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.V().addV('animal').property('age',0)), (lambda g:g.V().has('animal','age',0))], 
    'g_addVXpersonX_propertyXname_stephenX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.addV('person').property('name','stephen')), (lambda g:g.V().has('person','name','stephen'))], 
    'g_V_hasLabelXpersonX_propertyXname_nullX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.V().hasLabel('person').property(Cardinality.single,'name',None)), (lambda g:g.V().properties('name'))], 
    'g_addVXpersonX_propertyXsingle_name_stephenX_propertyXsingle_name_stephenmX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.addV('person').property(Cardinality.single,'name','stephen').property(Cardinality.single,'name','stephenm')), (lambda g:g.V().has('person','name','stephen')), (lambda g:g.V().has('person','name','stephenm'))], 
    'get_g_addVXpersonX_propertyXsingle_name_stephenX_propertyXsingle_name_stephenm_since_2010X': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.addV('person').property(Cardinality.single,'name','stephen').property(Cardinality.single,'name','stephenm','since',2010)), (lambda g:g.V().has('person','name','stephen')), (lambda g:g.V().has('person','name','stephenm')), (lambda g:g.V().has('person','name','stephenm').properties('name').has('since',2010))], 
    'g_V_hasXname_markoX_propertyXfriendWeight_outEXknowsX_weight_sum__acl_privateX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.V().has('name','marko').property('friendWeight',__.outE('knows').weight.sum_(),'acl','private')), (lambda g:g.V().has('person','name','marko').has('friendWeight',float(1.5))), (lambda g:g.V().has('person','name','marko').properties('friendWeight').has('acl','private')), (lambda g:g.V().has('person','name','marko').properties('friendWeight').count())], 
    'g_addVXanimalX_propertyXname_mateoX_propertyXname_gateoX_propertyXname_cateoX_propertyXage_5X': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.addV('animal').property('name','mateo').property('name','gateo').property('name','cateo').property('age',5)), (lambda g:g.V().hasLabel('animal').has('name','mateo').has('name','gateo').has('name','cateo').has('age',5))], 
    'g_withSideEffectXa_markoX_addV_propertyXname_selectXaXX_name': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.withSideEffect('a','marko').addV().property('name',__.select('a')).name), (lambda g:g.V().has('name','marko'))], 
    'g_addVXpersonX_propertyXsingle_name_stephenX_propertyXsingle_name_stephenm_since_2010X': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.addV('person').property(Cardinality.single,'name','stephen').property(Cardinality.single,'name','stephenm','since',2010)), (lambda g:g.V().has('name','stephen')), (lambda g:g.V().has('name','stephenm')), (lambda g:g.V().has('name','stephenm').properties('name').has('since',2010))], 
    'g_V_addVXanimalX_propertyXname_valuesXnameXX_propertyXname_an_animalX_propertyXvaluesXnameX_labelX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.V().addV('animal').property('name',__.name).property('name','an animal').property(__.name,__.label())), (lambda g:g.V().hasLabel('animal').has('name','marko').has('name','an animal').has('marko','person')), (lambda g:g.V().hasLabel('animal').has('name','vadas').has('name','an animal').has('vadas','person')), (lambda g:g.V().hasLabel('animal').has('name','lop').has('name','an animal').has('lop','software')), (lambda g:g.V().hasLabel('animal').has('name','josh').has('name','an animal').has('josh','person')), (lambda g:g.V().hasLabel('animal').has('name','ripple').has('name','an animal').has('ripple','software')), (lambda g:g.V().hasLabel('animal').has('name','peter').has('name','an animal').has('peter','person'))], 
    'g_withSideEffectXa_testX_V_hasLabelXsoftwareX_propertyXtemp_selectXaXX_valueMapXname_tempX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.withSideEffect('a','test').V().hasLabel('software').property('temp',__.select('a')).valueMap('name','temp'))], 
    'g_withSideEffectXa_nameX_addV_propertyXselectXaX_markoX_name': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.withSideEffect('a','name').addV().property(__.select('a'),'marko').name), (lambda g:g.V().has('name','marko'))], 
    'g_V_asXaX_hasXname_markoX_outXcreatedX_asXbX_addVXselectXaX_labelX_propertyXtest_selectXbX_labelX_valueMap_withXtokensX': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.V().as_('a').has('name','marko').out('created').as_('b').addV(__.select('a').label()).property('test',__.select('b').label()).valueMap().with_('~tinkerpop.valueMap.tokens')), (lambda g:g.V().has('person','test','software'))], 
    'g_addVXV_hasXname_markoX_propertiesXnameX_keyX_label': [(lambda g: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g:g.addV(__.V().has('name','marko').properties('name').key()).label())], 
    'g_addV_propertyXlabel_personX': [(lambda g:g.addV().property(T.label,'person')), (lambda g:g.V().hasLabel('person'))], 
    'g_addV_propertyXmapX': [(lambda g:g.addV().property('name','foo').property('age',42)), (lambda g:g.V().has('name','foo'))], 
    'g_addV_propertyXsingle_mapX': [(lambda g:g.addV().property(Cardinality.single,'name','foo').property(Cardinality.single,'age',42)), (lambda g:g.V().has('name','foo'))], 
    'g_addV_propertyXnullX': [(lambda g:g.addV('person')), (lambda g:g.V().hasLabel('person').values())], 
    'g_addV_propertyXemptyX': [(lambda g:g.addV('person')), (lambda g:g.V().hasLabel('person').values())], 
    'g_addV_propertyXset_nullX': [(lambda g:g.addV('foo')), (lambda g:g.V().hasLabel('foo').values())], 
    'g_addV_propertyXset_emptyX': [(lambda g:g.addV('foo')), (lambda g:g.V().hasLabel('person').values())], 
    'g_addVXpersonX_propertyXname_joshX_propertyXage_nullX': [(lambda g:g.addV('person').property('name','josh').property('age',None)), (lambda g:g.V().has('person','age',None))], 
    'g_addVXpersonX_propertyXname_markoX_propertyXfriendWeight_null_acl_nullX': [(lambda g:g.addV('person').property('name','marko').property('friendWeight',None,'acl',None)), (lambda g:g.V().has('person','name','marko').has('friendWeight',None)), (lambda g:g.V().has('person','name','marko').properties('friendWeight').has('acl',None)), (lambda g:g.V().has('person','name','marko').properties('friendWeight').count())], 
    'g_call': [(lambda g:g.call())], 
    'g_callXlistX': [(lambda g:g.call('--list'))], 
    'g_callXlistX_withXstring_stringX': [(lambda g:g.call('--list').with_('service','tinker.search'))], 
    'g_callXlistX_withXstring_traversalX': [(lambda g:g.call('--list').with_('service',__.constant('tinker.search')))], 
    'g_callXlist_mapX': [(lambda g, xx1=None:g.call('--list',xx1))], 
    'g_callXlist_traversalX': [(lambda g:g.call('--list',__.project('service').by(__.constant('tinker.search'))))], 
    'g_callXlist_map_traversalX': [(lambda g, xx1=None:g.call('--list',xx1,__.project('service').by(__.constant('tinker.search'))))], 
    'g_callXsearch_mapX': [(lambda g, xx1=None:g.call('tinker.search',xx1).element())], 
    'g_callXsearch_traversalX': [(lambda g:g.call('tinker.search',__.project('search').by(__.constant('vada'))).element())], 
    'g_callXsearchX_withXstring_stringX': [(lambda g:g.call('tinker.search').with_('search','vada').element())], 
    'g_callXsearchX_withXstring_traversalX': [(lambda g:g.call('tinker.search').with_('search',__.constant('vada')).element())], 
    'g_callXsearch_mapX_withXstring_VertexX': [(lambda g, xx1=None:g.call('tinker.search',xx1).with_('type','Vertex').element())], 
    'g_callXsearch_mapX_withXstring_EdgeX': [(lambda g, xx1=None:g.call('tinker.search',xx1).with_('type','Edge').element())], 
    'g_callXsearch_mapX_withXstring_VertexPropertyX': [(lambda g, xx1=None:g.call('tinker.search',xx1).with_('type','VertexProperty').element())], 
    'g_V_callXdcX': [(lambda g:g.V().as_('v').call('tinker.degree.centrality').project('vertex','degree').by(__.select('v')).by())], 
    'g_V_whereXcallXdcXX': [(lambda g:g.V().where(__.call('tinker.degree.centrality').is_(3)))], 
    'g_V_callXdcX_withXdirection_OUTX': [(lambda g:g.V().as_('v').call('tinker.degree.centrality').with_('direction',Direction.OUT).project('vertex','degree').by(__.select('v')).by())], 
    'g_V_callXdc_mapX_withXdirection_OUTX': [(lambda g, xx1=None:g.V().as_('v').call('tinker.degree.centrality',xx1).with_('direction',Direction.OUT).project('vertex','degree').by(__.select('v')).by())], 
    'g_V_callXdc_traversalX': [(lambda g:g.V().as_('v').call('tinker.degree.centrality',__.project('direction').by(__.constant(Direction.OUT))).project('vertex','degree').by(__.select('v')).by())], 
    'g_V_callXdc_map_traversalX': [(lambda g, xx1=None:g.V().as_('v').call('tinker.degree.centrality',xx1,__.project('direction').by(__.constant(Direction.OUT))).project('vertex','degree').by(__.select('v')).by())], 
    'g_V_coalesceXoutXfooX_outXbarXX': [(lambda g:g.V().coalesce(__.out('foo'),__.out('bar')))], 
    'g_VX1X_coalesceXoutXknowsX_outXcreatedXX_valuesXnameX': [(lambda g, vid1=None:g.V(vid1).coalesce(__.out('knows'),__.out('created')).name)], 
    'g_VX1X_coalesceXoutXcreatedX_outXknowsXX_valuesXnameX': [(lambda g, vid1=None:g.V(vid1).coalesce(__.out('created'),__.out('knows')).name)], 
    'g_V_coalesceXoutXlikesX_outXknowsX_inXcreatedXX_groupCount_byXnameX': [(lambda g:g.V().coalesce(__.out('likes'),__.out('knows'),__.out('created')).groupCount().by('name'))], 
    'g_V_coalesceXoutEXknowsX_outEXcreatedXX_otherV_path_byXnameX_byXlabelX': [(lambda g:g.V().coalesce(__.outE('knows'),__.outE('created')).otherV().path().by('name').by(T.label))], 
    'g_V_outXcreatedX_order_byXnameX_coalesceXname_constantXxXX': [(lambda g:g.V().out('created').order().by('name').coalesce(__.name,__.constant('x')))], 
    'g_V_connectedComponent_hasXcomponentX': [(lambda g:g.V().connectedComponent().has('gremlin.connectedComponentVertexProgram.component'))], 
    'g_V_dedup_connectedComponent_hasXcomponentX': [(lambda g:g.V().dedup().connectedComponent().has('gremlin.connectedComponentVertexProgram.component'))], 
    'g_V_hasLabelXsoftwareX_connectedComponent_project_byXnameX_byXcomponentX': [(lambda g:g.V().hasLabel('software').connectedComponent().project('name','component').by('name').by('gremlin.connectedComponentVertexProgram.component'))], 
    'g_V_connectedComponent_withXEDGES_bothEXknowsXX_withXPROPERTY_NAME_clusterX_project_byXnameX_byXclusterX': [(lambda g:g.V().hasLabel('person').connectedComponent().with_('~tinkerpop.connectedComponent.edges',__.bothE('knows')).with_('~tinkerpop.connectedComponent.propertyName','cluster').project('name','cluster').by('name').by('cluster'))], 
    'g_V_constantX123X': [(lambda g:g.V().constant(123))], 
    'g_V_constantXnullX': [(lambda g:g.V().constant(None))], 
    'g_V_chooseXhasLabelXpersonX_valuesXnameX_constantXinhumanXX': [(lambda g:g.V().choose(__.hasLabel('person'),__.name,__.constant('inhuman')))], 
    'g_V_count': [(lambda g:g.V().count())], 
    'g_V_out_count': [(lambda g:g.V().out().count())], 
    'g_V_both_both_count': [(lambda g:g.V().both().both().count())], 
    'g_V_fold_countXlocalX': [(lambda g:g.V().fold().count(Scope.local))], 
    'g_V_hasXnoX_count': [(lambda g:g.V().has('no').count())], 
    'g_V_whereXinXkknowsX_outXcreatedX_count_is_0XX_name': [(lambda g:g.V().where(__.in_('knows').out('created').count().is_(0)).name)], 
    'g_V_repeatXoutX_timesX8X_count': [(lambda g:g.V().repeat(__.out()).times(8).count())], 
    'g_V_repeatXoutX_timesX5X_asXaX_outXwrittenByX_asXbX_selectXa_bX_count': [(lambda g:g.V().repeat(__.out()).times(5).as_('a').out('writtenBy').as_('b').select('a','b').count())], 
    'g_V_repeatXoutX_timesX3X_count': [(lambda g:g.V().repeat(__.out()).times(3).count())], 
    'g_V_order_byXlangX_count': [(lambda g:g.V().order().by('lang').count())], 
    'g_E_sampleX1X_count': [(lambda g:g.E().sample(1).count())], 
    'g_V_sampleX1X_byXageX_count': [(lambda g:g.V().sample(1).by('age').count())], 
    'g_V_order_byXnoX_count': [(lambda g:g.V().order().by('no').count())], 
    'g_V_EX11X': [(lambda g, eid11=None:g.V().E(eid11))], 
    'g_EX11X_E': [(lambda g, eid11=None:g.E(eid11).E())], 
    'g_V_EXnullX': [(lambda g:g.V().E(None))], 
    'g_V_EXlistXnullXX': [(lambda g, xx1=None:g.V().E(xx1))], 
    'g_injectX1X_EX11_nullX': [(lambda g, eid11=None:g.inject(1).E(eid11,None))], 
    'g_injectX1X_coalesceXEX_hasLabelXtestsX_addEXtestsX_from_V_hasXnameX_XjoshXX_toXV_hasXnameX_XvadasXXX': [(lambda g:g.addV('person').property('name','josh').addV('person').property('name','vadas')), (lambda g:g.inject(1).coalesce(__.E().hasLabel('tests'),__.addE('tests').from_(__.V().has('name','josh')).to(__.V().has('name','vadas')))), (lambda g:g.E().hasLabel('tests'))], 
    'g_VX1X_properties_element': [(lambda g, v2=None:g.V(v2).properties().element()[0:1])], 
    'g_V_properties_element': [(lambda g:g.V().properties().element())], 
    'g_V_propertiesXageX_element': [(lambda g:g.V().properties('age').element())], 
    'g_EX_properties_element': [(lambda g, eid11=None:g.E(eid11).properties().element()[0:1])], 
    'g_E_properties_element': [(lambda g:g.E().properties().element())], 
    'g_VXv7_properties_properties_element_element': [(lambda g, v7=None:g.V(v7).properties().properties().element().element()[0:1])], 
    'g_V_properties_properties_element_element': [(lambda g, v7=None:g.V(v7).properties().properties().element().element())], 
    'g_V_elementMap': [(lambda g:g.V().elementMap())], 
    'g_V_elementMapXname_ageX': [(lambda g:g.V().elementMap('name','age'))], 
    'g_EX11X_elementMap': [(lambda g, eid11=None:g.E(eid11).elementMap())], 
    'g_V_elementMapXname_age_nullX': [(lambda g:g.V().elementMap('name','age',None))], 
    'g_V_asXaX_flatMapXselectXaXX': [(lambda g:g.V().as_('a').flatMap(__.select('a')))], 
    'g_V_fold': [(lambda g:g.V().fold())], 
    'g_V_fold_unfold': [(lambda g:g.V().fold().unfold())], 
    'g_V_age_foldX0_plusX': [(lambda g:g.V().age.fold(0,Operator.sum_))], 
    'g_injectXa1_b2X_foldXm_addAllX': [(lambda g:g.inject({'a':1},{'b':2}).fold({},Operator.addAll))], 
    'g_injectXa1_b2_b4X_foldXm_addAllX': [(lambda g:g.inject({'a':1},{'b':2},{'b':4}).fold({},Operator.addAll))], 
    'g_VX1X_V_valuesXnameX': [(lambda g, vid1=None:g.V(vid1).V().name)], 
    'g_V_outXknowsX_V_name': [(lambda g:g.V().out('knows').V().name)], 
    'g_V_hasXname_GarciaX_inXsungByX_asXsongX_V_hasXname_Willie_DixonX_inXwrittenByX_whereXeqXsongXX_name': [(lambda g:g.V().has('artist','name','Garcia').in_('sungBy').as_('song').V().has('artist','name','Willie_Dixon').in_('writtenBy').where(P.eq('song')).name)], 
    'g_V_hasLabelXpersonX_asXpX_VXsoftwareX_addInEXuses_pX': [(lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V().hasLabel('person').as_('p').V(xx1).addE('uses').from_('p')), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.E().hasLabel('uses')), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid1).outE('uses')), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid2).outE('uses')), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid3).inE('uses')), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid4).outE('uses')), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid5).inE('uses')), (lambda g, xx1=None,vid1=None,vid2=None,vid3=None,vid4=None,vid5=None,vid6=None:g.V(vid6).outE('uses'))], 
    'g_V_hasLabelXsoftwareX_index_unfold': [(lambda g:g.V().hasLabel('software').index().unfold())], 
    'g_V_hasLabelXsoftwareX_order_byXnameX_index_withXmapX': [(lambda g:g.V().hasLabel('software').order().by('name').index().with_('~tinkerpop.index.indexer',1))], 
    'g_V_hasLabelXsoftwareX_name_fold_orderXlocalX_index_unfold_order_byXtailXlocal_1XX': [(lambda g:g.V().hasLabel('software').name.fold().order(Scope.local).index().unfold().order().by(__.tail(Scope.local,1)))], 
    'g_V_hasLabelXpersonX_name_fold_orderXlocalX_index_withXmapX': [(lambda g:g.V().hasLabel('person').name.fold().order(Scope.local).index().with_('~tinkerpop.index.indexer',1))], 
    'g_VX1X_valuesXageX_index_unfold_unfold': [(lambda g, vid1=None:g.V(vid1).age.index().unfold().unfold())], 
    'g_VX1X_repeatXboth_simplePathX_untilXhasXname_peterX_or_loops_isX3XX_hasXname_peterX_path_byXnameX': [(lambda g, vid1=None:g.V(vid1).repeat(__.both().simplePath()).until(__.has('name','peter').or_().loops().is_(3)).has('name','peter').path().by('name'))], 
    'g_VX1X_repeatXboth_simplePathX_untilXhasXname_peterX_or_loops_isX2XX_hasXname_peterX_path_byXnameX': [(lambda g, vid1=None:g.V(vid1).repeat(__.both().simplePath()).until(__.has('name','peter').or_().loops().is_(2)).has('name','peter').path().by('name'))], 
    'g_VX1X_repeatXboth_simplePathX_untilXhasXname_peterX_and_loops_isX3XX_hasXname_peterX_path_byXnameX': [(lambda g, vid1=None:g.V(vid1).repeat(__.both().simplePath()).until(__.has('name','peter').and_().loops().is_(3)).has('name','peter').path().by('name'))], 
    'g_V_emitXhasXname_markoX_or_loops_isX2XX_repeatXoutX_valuesXnameX': [(lambda g:g.V().emit(__.has('name','marko').or_().loops().is_(2)).repeat(__.out()).name)], 
    'g_VX1X_mapXnameX': [(lambda g, l1=None,vid1=None:g.V(vid1).map(l1))], 
    'g_VX1X_outE_label_mapXlengthX': [(lambda g, l1=None,vid1=None:g.V(vid1).outE().label().map(l1))], 
    'g_VX1X_out_mapXnameX_mapXlengthX': [(lambda g, l1=None,l2=None,vid1=None:g.V(vid1).out().map(l1).map(l2))], 
    'g_VX1X_out_mapXlambdaXnameXX_mapXlambdaXlengthXX': [(lambda g, vid1=None:g.V(vid1).out().map(lambda: "it.get().value('name')").map(lambda: "it.get().toString().length()"))], 
    'g_withPath_V_asXaX_out_mapXa_nameX': [(lambda g, l1=None:g.withPath().V().as_('a').out().map(l1))], 
    'g_withPath_V_asXaX_out_out_mapXa_name_it_nameX': [(lambda g, l1=None:g.withPath().V().as_('a').out().out().map(l1))], 
    'g_V_mapXselectXaXX': [(lambda g:g.V().as_('a').map(__.select('a')))], 
    'g_V_mapXconstantXnullXX': [(lambda g:g.V().map(__.constant(None)))], 
    'g_V_valueMap_matchXa_selectXnameX_bX': [(lambda g:g.V().valueMap().match(__.as_('a').select('name').as_('b')))], 
    'g_V_matchXa_out_bX': [(lambda g:g.V().match(__.as_('a').out().as_('b')))], 
    'g_V_matchXa_out_bX_selectXb_idX': [(lambda g:g.V().match(__.as_('a').out().as_('b')).select('b').by(T.id_))], 
    'g_V_matchXa_knows_b__b_created_cX': [(lambda g:g.V().match(__.as_('a').out('knows').as_('b'),__.as_('b').out('created').as_('c')))], 
    'g_V_matchXb_created_c__a_knows_bX': [(lambda g:g.V().match(__.as_('b').out('created').as_('c'),__.as_('a').out('knows').as_('b')))], 
    'g_V_matchXa_created_b__b_0created_cX_whereXa_neq_cX_selectXa_cX': [(lambda g:g.V().match(__.as_('a').out('created').as_('b'),__.as_('b').in_('created').as_('c')).where('a',P.neq('c')).select('a','c'))], 
    'g_V_matchXd_0knows_a__d_hasXname_vadasX__a_knows_b__b_created_cX': [(lambda g:g.V().match(__.as_('d').in_('knows').as_('a'),__.as_('d').has('name','vadas'),__.as_('a').out('knows').as_('b'),__.as_('b').out('created').as_('c')))], 
    'g_V_matchXa_created_lop_b__b_0created_29_c__c_whereXrepeatXoutX_timesX2XXX': [(lambda g:g.V().match(__.as_('a').out('created').has('name','lop').as_('b'),__.as_('b').in_('created').has('age',29).as_('c'),__.as_('c').where(__.repeat(__.out()).times(2))))], 
    'g_V_asXaX_out_asXbX_matchXa_out_count_c__b_in_count_cX': [(lambda g:g.V().as_('a').out().as_('b').match(__.as_('a').out().count().as_('c'),__.as_('b').in_().count().as_('c')))], 
    'g_V_matchXa__a_out_b__notXa_created_bXX': [(lambda g:g.V().match(__.as_('a').out().as_('b'),__.not_(__.as_('a').out('created').as_('b'))))], 
    'g_V_matchXa_created_lop_b__b_0created_29_cX_whereXc_repeatXoutX_timesX2XX_selectXa_b_cX': [(lambda g:g.V().match(__.as_('a').out('created').has('name','lop').as_('b'),__.as_('b').in_('created').has('age',29).as_('c')).where(__.as_('c').repeat(__.out()).times(2)).select('a','b','c'))], 
    'g_V_out_out_matchXa_0created_b__b_0knows_cX_selectXcX_outXcreatedX_name': [(lambda g:g.V().out().out().match(__.as_('a').in_('created').as_('b'),__.as_('b').in_('knows').as_('c')).select('c').out('created').name)], 
    'g_V_matchXa_knows_b__b_created_c__a_created_cX_dedupXa_b_cX_selectXaX_byXnameX': [(lambda g:g.V().match(__.as_('a').out('knows').as_('b'),__.as_('b').out('created').as_('c'),__.as_('a').out('created').as_('c')).dedup('a','b','c').select('a').by('name'))], 
    'g_V_matchXa_created_b__a_repeatXoutX_timesX2XX_selectXa_bX': [(lambda g:g.V().match(__.as_('a').out('created').as_('b'),__.as_('a').repeat(__.out()).times(2).as_('b')).select('a','b'))], 
    'g_V_notXmatchXa_age_b__a_name_cX_whereXb_eqXcXX_selectXaXX_name': [(lambda g:g.V().not_(__.match(__.as_('a').age.as_('b'),__.as_('a').name.as_('c')).where('b',P.eq('c')).select('a')).name)], 
    'g_V_matchXa_knows_b__andXa_created_c__b_created_c__andXb_created_count_d__a_knows_count_dXXX': [(lambda g:g.V().match(__.as_('a').out('knows').as_('b'),__.and_(__.as_('a').out('created').as_('c'),__.as_('b').out('created').as_('c'),__.and_(__.as_('b').out('created').count().as_('d'),__.as_('a').out('knows').count().as_('d')))))], 
    'g_V_matchXa_whereXa_neqXcXX__a_created_b__orXa_knows_vadas__a_0knows_and_a_hasXlabel_personXX__b_0created_c__b_0created_count_isXgtX1XXX_selectXa_b_cX_byXidX': [(lambda g:g.V().match(__.where('a',P.neq('c')),__.as_('a').out('created').as_('b'),__.or_(__.as_('a').out('knows').has('name','vadas'),__.as_('a').in_('knows').and_().as_('a').has(T.label,'person')),__.as_('b').in_('created').as_('c'),__.as_('b').in_('created').count().is_(P.gt(1))).select('a','b','c').by(T.id_))], 
    'g_V_matchXa__a_both_b__b_both_cX_dedupXa_bX': [(lambda g:g.V().match(__.as_('a').both().as_('b'),__.as_('b').both().as_('c')).dedup('a','b'))], 
    'g_V_matchXa_knows_b__b_created_lop__b_matchXb_created_d__d_0created_cX_selectXcX_cX_selectXa_b_cX': [(lambda g:g.V().match(__.as_('a').out('knows').as_('b'),__.as_('b').out('created').has('name','lop'),__.as_('b').match(__.as_('b').out('created').as_('d'),__.as_('d').in_('created').as_('c')).select('c').as_('c')).select('a','b','c'))], 
    'g_V_matchXa_knows_b__a_created_cX': [(lambda g:g.V().match(__.as_('a').out('knows').as_('b'),__.as_('a').out('created').as_('c')))], 
    'g_V_matchXwhereXandXa_created_b__b_0created_count_isXeqX3XXXX__a_both_b__whereXb_inXX': [(lambda g:g.V().match(__.where(__.and_(__.as_('a').out('created').as_('b'),__.as_('b').in_('created').count().is_(P.eq(3)))),__.as_('a').both().as_('b'),__.where(__.as_('b').in_())))], 
    'g_V_matchXa_outEXcreatedX_order_byXweight_descX_limitX1X_inV_b__b_hasXlang_javaXX_selectXa_bX_byXnameX': [(lambda g:g.V().match(__.as_('a').outE('created').order().by('weight',Order.desc)[0:1].in_v().as_('b'),__.as_('b').has('lang','java')).select('a','b').by('name'))], 
    'g_V_matchXa_both_b__b_both_cX_dedupXa_bX_byXlabelX': [(lambda g:g.V().match(__.as_('a').both().as_('b'),__.as_('b').both().as_('c')).dedup('a','b').by(T.label))], 
    'g_V_matchXa_created_b__b_0created_aX': [(lambda g:g.V().match(__.as_('a').out('created').as_('b'),__.as_('b').in_('created').as_('a')))], 
    'g_V_asXaX_out_asXbX_matchXa_out_count_c__orXa_knows_b__b_in_count_c__and__c_isXgtX2XXXX': [(lambda g:g.V().as_('a').out().as_('b').match(__.as_('a').out().count().as_('c'),__.or_(__.as_('a').out('knows').as_('b'),__.as_('b').in_().count().as_('c').and_().as_('c').is_(P.gt(2)))))], 
    'g_V_matchXa_knows_count_bX_selectXbX': [(lambda g:g.V().match(__.as_('a').out('knows').count().as_('b')).select('b'))], 
    'g_V_matchXa_0sungBy_b__a_0writtenBy_c__b_writtenBy_d__c_sungBy_d__d_hasXname_GarciaXX': [(lambda g:g.V().match(__.as_('a').in_('sungBy').as_('b'),__.as_('a').in_('writtenBy').as_('c'),__.as_('b').out('writtenBy').as_('d'),__.as_('c').out('sungBy').as_('d'),__.as_('d').has('name','Garcia')))], 
    'g_V_matchXa_hasXsong_name_sunshineX__a_mapX0followedBy_weight_meanX_b__a_0followedBy_c__c_filterXweight_whereXgteXbXXX_outV_dX_selectXdX_byXnameX': [(lambda g:g.V().match(__.as_('a').has('song','name','HERE COMES SUNSHINE'),__.as_('a').map(__.inE('followedBy').weight.mean()).as_('b'),__.as_('a').inE('followedBy').as_('c'),__.as_('c').filter_(__.weight.where(P.gte('b'))).out_v().as_('d')).select('d').by('name'))], 
    'g_V_matchXa_0sungBy_b__a_0sungBy_c__b_writtenBy_d__c_writtenBy_e__d_hasXname_George_HarisonX__e_hasXname_Bob_MarleyXX': [(lambda g:g.V().match(__.as_('a').in_('sungBy').as_('b'),__.as_('a').in_('sungBy').as_('c'),__.as_('b').out('writtenBy').as_('d'),__.as_('c').out('writtenBy').as_('e'),__.as_('d').has('name','George_Harrison'),__.as_('e').has('name','Bob_Marley')))], 
    'g_V_matchXa_hasXname_GarciaX__a_0writtenBy_b__a_0sungBy_bX': [(lambda g:g.V().match(__.as_('a').has('name','Garcia'),__.as_('a').in_('writtenBy').as_('b'),__.as_('a').in_('sungBy').as_('b')))], 
    'g_V_hasLabelXsongsX_matchXa_name_b__a_performances_cX_selectXb_cX_count': [(lambda g:g.V().hasLabel('song').match(__.as_('a').name.as_('b'),__.as_('a').performances.as_('c')).select('b','c').count())], 
    'g_V_matchXa_followedBy_count_isXgtX10XX_b__a_0followedBy_count_isXgtX10XX_bX_count': [(lambda g:g.V().match(__.as_('a').out('followedBy').count().is_(P.gt(10)).as_('b'),__.as_('a').in_('followedBy').count().is_(P.gt(10)).as_('b')).count())], 
    'g_V_matchXa_0sungBy_b__a_0writtenBy_c__b_writtenBy_dX_whereXc_sungBy_dX_whereXd_hasXname_GarciaXX': [(lambda g:g.V().match(__.as_('a').in_('sungBy').as_('b'),__.as_('a').in_('writtenBy').as_('c'),__.as_('b').out('writtenBy').as_('d')).where(__.as_('c').out('sungBy').as_('d')).where(__.as_('d').has('name','Garcia')))], 
    'g_V_matchXa_hasXname_GarciaX__a_0writtenBy_b__b_followedBy_c__c_writtenBy_d__whereXd_neqXaXXX': [(lambda g:g.V().match(__.as_('a').has('name','Garcia'),__.as_('a').in_('writtenBy').as_('b'),__.as_('b').out('followedBy').as_('c'),__.as_('c').out('writtenBy').as_('d'),__.where('d',P.neq('a'))))], 
    'g_V_matchXa_outXknowsX_name_bX_identity': [(lambda g:g.V().match(__.as_('a').out('knows').name.as_('b')).identity())], 
    'g_V_outE_mathX0_minus_itX_byXweightX': [(lambda g:g.V().outE().math('0-_').by('weight'))], 
    'g_V_hasXageX_valueMap_mathXit_plus_itXbyXselectXageX_unfoldXX': [(lambda g:g.V().has('age').valueMap().math('_+_').by(__.select('age').unfold()))], 
    'g_V_asXaX_outXknowsX_asXbX_mathXa_plus_bX_byXageX': [(lambda g:g.V().as_('a').out('knows').as_('b').math('a + b').by('age'))], 
    'g_withSideEffectXx_100X_V_age_mathX__plus_xX': [(lambda g, xx1=None:g.withSideEffect('x',xx1).V().age.math('_ + x'))], 
    'g_V_asXaX_outXcreatedX_asXbX_mathXb_plus_aX_byXinXcreatedX_countX_byXageX': [(lambda g:g.V().as_('a').out('created').as_('b').math('b + a').by(__.in_('created').count()).by('age'))], 
    'g_withSackX1X_injectX1X_repeatXsackXsumX_byXconstantX1XXX_timesX5X_emit_mathXsin__X_byXsackX': [(lambda g:g.withSack(1).inject(1).repeat(__.sack(Operator.sum_).by(__.constant(1))).times(5).emit().math('sin _').by(__.sack()))], 
    'g_V_projectXa_b_cX_byXbothE_weight_sumX_byXbothE_countX_byXnameX_order_byXmathXa_div_bX_descX_selectXcX': [(lambda g:g.V().project('a','b','c').by(__.bothE().weight.sum_()).by(__.bothE().count()).by('name').order().by(__.math('a / b'),Order.desc).select('c'))], 
    'g_V_mathXit_plus_itXbyXageX': [(lambda g:g.V().math('_+_').by('age'))], 
    'g_V_valueMap_mathXit_plus_itXbyXselectXageX_unfoldXX': [(lambda g:g.V().valueMap().math('_+_').by(__.select('age').unfold()))], 
    'g_VX1X_outE_asXexpectedWeightX_mathXexpectedWeightPlusOneXbyXweightX': [(lambda g, v1=None:g.V(v1).outE().as_('expectedWeight').math('expectedWeight + 1').by('weight'))], 
    'g_V_age_max': [(lambda g:g.V().age.max_())], 
    'g_V_foo_max': [(lambda g:g.V().foo.max_())], 
    'g_V_name_max': [(lambda g:g.V().name.max_())], 
    'g_V_age_fold_maxXlocalX': [(lambda g:g.V().age.fold().max_(Scope.local))], 
    'g_V_aggregateXaX_byXageX_capXaX_maxXlocalX': [(lambda g:g.V().aggregate('a').by('age').cap('a').max_(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_capXaX_maxXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').max_(Scope.local))], 
    'g_V_aggregateXaX_byXageX_capXaX_unfold_max': [(lambda g:g.V().aggregate('a').by('age').cap('a').unfold().max_())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_capXaX_unfold_max': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').unfold().max_())], 
    'g_V_aggregateXaX_byXfooX_capXaX_maxXlocalX': [(lambda g:g.V().aggregate('a').by('foo').cap('a').max_(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_capXaX_maxXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').max_(Scope.local))], 
    'g_V_aggregateXaX_byXfooX_capXaX_unfold_max': [(lambda g:g.V().aggregate('a').by('foo').cap('a').unfold().max_())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_capXaX_unfold_max': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').unfold().max_())], 
    'g_V_foo_fold_maxXlocalX': [(lambda g:g.V().foo.fold().max_(Scope.local))], 
    'g_V_name_fold_maxXlocalX': [(lambda g:g.V().name.fold().max_(Scope.local))], 
    'g_V_repeatXbothX_timesX5X_age_max': [(lambda g:g.V().repeat(__.both()).times(5).age.max_())], 
    'g_V_hasLabelXsoftwareX_group_byXnameX_byXbothE_weight_maxX': [(lambda g:g.V().hasLabel('software').group().by('name').by(__.bothE().weight.max_()))], 
    'g_VX1X_valuesXageX_maxXlocalX': [(lambda g, vid1=None:g.V(vid1).age.max_(Scope.local))], 
    'g_V_age_mean': [(lambda g:g.V().age.mean())], 
    'g_V_foo_mean': [(lambda g:g.V().foo.mean())], 
    'g_V_age_fold_meanXlocalX': [(lambda g:g.V().age.fold().mean(Scope.local))], 
    'g_V_foo_fold_meanXlocalX': [(lambda g:g.V().foo.fold().mean(Scope.local))], 
    'g_V_hasLabelXsoftwareX_group_byXnameX_byXbothE_weight_meanX': [(lambda g:g.V().hasLabel('software').group().by('name').by(__.bothE().weight.mean()))], 
    'g_V_aggregateXaX_byXageX_meanXlocalX': [(lambda g:g.V().aggregate('a').by('age').cap('a').mean(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_meanXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').mean(Scope.local))], 
    'g_V_aggregateXaX_byXageX_capXaX_unfold_mean': [(lambda g:g.V().aggregate('a').by('age').cap('a').unfold().mean())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_capXaX_unfold_mean': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').unfold().mean())], 
    'g_V_aggregateXaX_byXfooX_meanXlocalX': [(lambda g:g.V().aggregate('a').by('foo').cap('a').mean(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_meanXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').mean(Scope.local))], 
    'g_V_aggregateXaX_byXfooX_capXaX_unfold_mean': [(lambda g:g.V().aggregate('a').by('foo').cap('a').unfold().mean())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_capXaX_unfold_mean': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').unfold().mean())], 
    'g_injectXnull_10_20_nullX_mean': [(lambda g, xx1=None,xx2=None:g.inject(None,xx1,xx2,None).mean())], 
    'g_injectXlistXnull_10_20_nullXX_meanXlocalX': [(lambda g, xx1=None:g.inject(xx1).mean(Scope.local))], 
    'g_VX1X_valuesXageX_meanXlocalX': [(lambda g, vid1=None:g.V(vid1).age.mean(Scope.local))], 
    'g_V_mergeEXlabel_selfX_optionXonMatch_emptyX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29).addE('self')), (lambda g, xx1=None:g.V().merge_e(xx1).option(Merge.on_match,{})), (lambda g, xx1=None:g.E()), (lambda g, xx1=None:g.E().properties()), (lambda g, xx1=None:g.V())], 
    'g_V_mergeEXlabel_selfX_optionXonMatch_nullX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29).addE('self')), (lambda g, xx1=None:g.V().merge_e(xx1).option(Merge.on_match,None)), (lambda g, xx1=None:g.E()), (lambda g, xx1=None:g.E().properties()), (lambda g, xx1=None:g.V())], 
    'g_V_mergeEXemptyX_optionXonCreate_nullX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.V().as_('v').merge_e(xx1).option(Merge.on_create,None).option(Merge.out_v,__.select('v')).option(Merge.in_v,__.select('v'))), (lambda g, xx1=None:g.E()), (lambda g, xx1=None:g.V())], 
    'g_mergeEXemptyX_exists': [(lambda g:g.addV('person').property('name','marko').property('age',29).addE('self')), (lambda g:g.merge_e({})), (lambda g:g.E()), (lambda g:g.V())], 
    'g_mergeEXemptyX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.merge_e({}))], 
    'g_V_mergeEXemptyX_two_exist': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29).addV('person').property('name','vadas').property('age',27)), (lambda g, xx1=None:g.V().as_('v').merge_e(xx1).option(Merge.out_v,__.select('v')).option(Merge.in_v,__.select('v'))), (lambda g, xx1=None:g.E()), (lambda g, xx1=None:g.V())], 
    'g_mergeEXnullX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.merge_e(None))], 
    'g_V_mergeEXnullX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.V().merge_e(None))], 
    'g_mergeEXlabel_knows_out_marko_in_vadasX': [(lambda g, xx1=None:g.addV('person').property(T.id_,100).property('name','marko').addV('person').property(T.id_,101).property('name','vadas')), (lambda g, xx1=None:g.merge_e(xx1)), (lambda g, xx1=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas'))], 
    'g_withSideEffectXa_label_knows_out_marko_in_vadasX_mergeEXselectXaXX': [(lambda g, xx1=None:g.addV('person').property(T.id_,100).property('name','marko').addV('person').property(T.id_,101).property('name','vadas')), (lambda g, xx1=None:g.withSideEffect('a',xx1).merge_e(__.select('a'))), (lambda g, xx1=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas'))], 
    'g_mergeEXlabel_knows_out_marko1_in_vadas1X': [(lambda g, xx1=None:g.addV('person').property(T.id_,100).property('name','marko').addV('person').property(T.id_,101).property('name','vadas')), (lambda g, xx1=None:g.merge_e(xx1)), (lambda g, xx1=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas'))], 
    'g_mergeEXlabel_knows_out_marko_in_vadas_weight_05X_exists': [(lambda g, xx1=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b')), (lambda g, xx1=None:g.merge_e(xx1)), (lambda g, xx1=None:g.V().has('person','name','marko').outE('knows').has('weight',float(0.5)).in_v().has('person','name','vadas')), (lambda g, xx1=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas'))], 
    'g_mergeEXlabel_knows_out_marko_in_vadas_weight_05X': [(lambda g, xx1=None:g.merge_e(xx1))], 
    'g_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX': [(lambda g, xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2).option(Merge.on_match,xx3))], 
    'g_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b')), (lambda g, xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2).option(Merge.on_match,xx3)), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N'))], 
    'g_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists_updated': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b').property('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2).option(Merge.on_match,xx3)), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N'))], 
    'g_V_hasXperson_name_marko_X_mergeEXlabel_knowsX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists_updated': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b').property('created','Y').addE('knows').from_('a').to('b')), (lambda g, xx1=None,xx3=None,xx2=None:g.V().has('person','name','marko').merge_e(xx1).option(Merge.on_create,xx2).option(Merge.on_match,xx3)), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N'))], 
    'g_injectXlabel_knows_out_marko_in_vadasX_mergeE': [(lambda g, xx1=None:g.addV('person').property(T.id_,100).property('name','marko').addV('person').property(T.id_,101).property('name','vadas')), (lambda g, xx1=None:g.inject(xx1).merge_e()), (lambda g, xx1=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas'))], 
    'g_mergeEXlabel_knows_in_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists_updated': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b').property('created','Y').addE('knows').from_('b').to('a').property('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2).option(Merge.on_match,xx3)), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N').in_v().has('name','vadas'))], 
    'g_mergeEXlabel_knows_out_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists_updated': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b').property('created','Y').addE('knows').from_('b').to('a').property('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2).option(Merge.on_match,xx3)), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N').out_v().has('name','vadas'))], 
    'g_mergeEXout_vadasX_optionXonCreate_created_YX_optionXonMatch_created_NX_exists_updated': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b').property('created','Y').addE('knows').from_('b').to('a').property('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2).option(Merge.on_match,xx3)), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N').out_v().has('name','vadas'))], 
    'g_V_hasXperson_name_marko_X_mergeEXlabel_self_out_vadas1_in_vadas1X': [(lambda g, xx1=None:g.addV('person').property(T.id_,100).property('name','marko').addV('person').property(T.id_,101).property('name','vadas')), (lambda g, xx1=None:g.V().has('person','name','marko').merge_e(xx1)), (lambda g, xx1=None:g.V()), (lambda g, xx1=None:g.E()), (lambda g, xx1=None:g.E().hasLabel('self').bothV().has('name','vadas'))], 
    'g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_selectXmXX_exists': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').from_('a').to('b')), (lambda g, xx1=None,xx3=None,xx2=None:g.withSideEffect('c',xx2).withSideEffect('m',xx3).merge_e(xx1).option(Merge.on_create,__.select('c')).option(Merge.on_match,__.select('m'))), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N'))], 
    'g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_selectXmXX': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b')), (lambda g, xx1=None,xx3=None,xx2=None:g.withSideEffect('c',xx2).withSideEffect('m',xx3).merge_e(xx1).option(Merge.on_create,__.select('c')).option(Merge.on_match,__.select('m'))), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N'))], 
    'g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko1_in_vadas1X_optionXonCreate_selectXcXX_optionXonMatch_selectXmXX': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b')), (lambda g, xx1=None,xx3=None,xx2=None:g.withSideEffect('c',xx2).withSideEffect('m',xx3).merge_e(xx1).option(Merge.on_create,__.select('c')).option(Merge.on_match,__.select('m'))), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N'))], 
    'g_mergeEXlabel_knows_out_marko_in_vadasX_aliased_direction': [(lambda g, xx1=None:g.addV('person').property(T.id_,100).property('name','marko').addV('person').property(T.id_,101).property('name','vadas')), (lambda g, xx1=None:g.merge_e(xx1)), (lambda g, xx1=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas'))], 
    'g_injectXlabel_knows_out_marko_in_vadas_label_self_out_vadas_in_vadasX': [(lambda g, xx1=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').addV('person').property(T.id_,101).property('name','vadas')), (lambda g, xx1=None,xx2=None:g.inject(xx1,xx2).merge_e()), (lambda g, xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.E()), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko').out('knows').has('person','name','vadas')), (lambda g, xx1=None,xx2=None:g.V().has('person','name','vadas').out('self').has('person','name','vadas'))], 
    'g_withSideEffectXc_created_YX_withSideEffectXm_matchedX_mergeEXlabel_knows_out_marko_in_vadasX_optionXonCreate_selectXcXX_optionXonMatch_sideEffectXpropertiesXweightX_dropX_selectXmXX_exists': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,100).property('name','marko').as_('a').addV('person').property(T.id_,101).property('name','vadas').as_('b').addE('knows').property('weight',float(0.5)).from_('a').to('b')), (lambda g, xx1=None,xx3=None,xx2=None:g.withSideEffect('c',xx2).withSideEffect('m',xx3).merge_e(xx1).option(Merge.on_create,__.select('c')).option(Merge.on_match,__.sideEffect(__.properties('weight').drop()).select('m'))), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','Y')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('created','N')), (lambda g, xx1=None,xx3=None,xx2=None:g.E().hasLabel('knows').has('weight'))], 
    'g_mergeE_with_outVinV_options_map': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None,xx3=None,xx2=None:g.merge_e(xx1).option(Merge.out_v,xx2).option(Merge.in_v,xx3)), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.V(1).out('knows').hasId(2))], 
    'g_mergeE_with_outVinV_options_select': [(lambda g, xx1=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None:g.V(1).as_('x').V(2).as_('y').merge_e(xx1).option(Merge.out_v,__.select('x')).option(Merge.in_v,__.select('y'))), (lambda g, xx1=None:g.V()), (lambda g, xx1=None:g.V(1).out('knows').hasId(2))], 
    'g_mergeE_with_eid_specified_and_inheritance_1': [(lambda g, xx1=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2)), (lambda g, xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.E()), (lambda g, xx1=None,xx2=None:g.E(201)), (lambda g, xx1=None,xx2=None:g.V(1).out('knows').hasId(2))], 
    'g_mergeE_with_eid_specified_and_inheritance_2': [(lambda g, xx1=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2)), (lambda g, xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.E()), (lambda g, xx1=None,xx2=None:g.E(201)), (lambda g, xx1=None,xx2=None:g.V(1).out('knows').hasId(2))], 
    'g_mergeE_outV_override_prohibited': [(lambda g, xx1=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2))], 
    'g_mergeE_inV_override_prohibited': [(lambda g, xx1=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2))], 
    'g_mergeE_label_override_prohibited': [(lambda g, xx1=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2))], 
    'g_mergeE_id_override_prohibited': [(lambda g, xx1=None,xx2=None:g.addV('person').property(T.id_,1).property('name','a').addV('person').property(T.id_,2).property('name','b')), (lambda g, xx1=None,xx2=None:g.merge_e(xx1).option(Merge.on_create,xx2))], 
    'g_mergeV_mergeE_combination_new_vertices': [(lambda g, xx1=None,xx3=None,xx2=None:g.merge_v(xx1).as_('outV').merge_v(xx2).as_('inV').merge_e(xx3).option(Merge.out_v,__.select('outV')).option(Merge.in_v,__.select('inV'))), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.V(1).out('knows').hasId(2))], 
    'g_mergeV_mergeE_combination_existing_vertices': [(lambda g, xx1=None,xx3=None,xx2=None:g.addV('person').property(T.id_,1).addV('person').property(T.id_,2)), (lambda g, xx1=None,xx3=None,xx2=None:g.merge_v(xx1).as_('outV').merge_v(xx2).as_('inV').merge_e(xx3).option(Merge.out_v,__.select('outV')).option(Merge.in_v,__.select('inV'))), (lambda g, xx1=None,xx3=None,xx2=None:g.V()), (lambda g, xx1=None,xx3=None,xx2=None:g.E()), (lambda g, xx1=None,xx3=None,xx2=None:g.V(1).out('knows').hasId(2))], 
    'g_mergeVXemptyX_optionXonMatch_nullX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.merge_v({}).option(Merge.on_match,None)), (lambda g:g.V().has('person','name','marko').has('age',29))], 
    'g_V_mergeVXemptyX_optionXonMatch_nullX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.V().merge_v({}).option(Merge.on_match,None)), (lambda g:g.V().has('person','name','marko').has('age',29))], 
    'g_mergeVXnullX_optionXonCreate_label_null_name_markoX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.merge_v(xx1))], 
    'g_V_mergeVXnullX_optionXonCreate_label_null_name_markoX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.V().merge_v(xx1))], 
    'g_mergeVXlabel_person_name_stephenX_optionXonCreate_nullX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.merge_v(xx1).option(Merge.on_create,None)), (lambda g, xx1=None:g.V()), (lambda g, xx1=None:g.V().has('person','name','marko')), (lambda g, xx1=None:g.V().has('person','name','stephen'))], 
    'g_V_mergeVXlabel_person_name_stephenX_optionXonCreate_nullX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.V().merge_v(xx1).option(Merge.on_create,None)), (lambda g, xx1=None:g.V()), (lambda g, xx1=None:g.V().has('person','name','marko')), (lambda g, xx1=None:g.V().has('person','name','stephen'))], 
    'g_mergeVXnullX_optionXonCreate_emptyX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.merge_v(None).option(Merge.on_create,{})), (lambda g:g.V())], 
    'g_V_mergeVXnullX_optionXonCreate_emptyX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.V().merge_v(None).option(Merge.on_create,{})), (lambda g:g.V())], 
    'g_mergeVXemptyX_no_existing': [(lambda g:g.merge_v({})), (lambda g:g.V())], 
    'g_injectX0X_mergeVXemptyX_no_existing': [(lambda g:g.inject(0).merge_v({})), (lambda g:g.V())], 
    'g_mergeVXemptyX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.merge_v({})), (lambda g:g.V().has('person','name','marko').has('age',29))], 
    'g_V_mergeVXemptyX_two_exist': [(lambda g:g.addV('person').property('name','marko').property('age',29).addV('person').property('name','vadas').property('age',27)), (lambda g:g.V().merge_v({})), (lambda g:g.V()), (lambda g:g.V().has('person','name','marko').has('age',29)), (lambda g:g.V().has('person','name','vadas').has('age',27))], 
    'g_mergeVXnullX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.merge_v(None)), (lambda g:g.V())], 
    'g_V_mergeVXnullX': [(lambda g:g.addV('person').property('name','marko').property('age',29)), (lambda g:g.V().merge_v(None)), (lambda g:g.V())], 
    'g_mergeVXlabel_person_name_stephenX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.merge_v(xx1)), (lambda g, xx1=None:g.V().has('person','name','stephen'))], 
    'g_mergeVXlabel_person_name_markoX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.merge_v(xx1)), (lambda g, xx1=None:g.V().has('person','name','marko'))], 
    'g_mergeVXlabel_person_name_stephenX_optionXonCreate_label_person_name_stephen_age_19X_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_create,xx2)), (lambda g, xx1=None,xx2=None:g.V().has('person','name','stephen').has('age',19))], 
    'g_mergeVXlabel_person_name_markoX_optionXonMatch_age_19X_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_match,xx2)), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko').has('age',19))], 
    'g_withSideEffectXc_label_person_name_stephenX_withSideEffectXm_label_person_name_stephen_age_19X_mergeVXselectXcXX_optionXonCreate_selectXmXX_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.withSideEffect('c',xx1).withSideEffect('m',xx2).merge_v(__.select('c')).option(Merge.on_create,__.select('m'))), (lambda g, xx1=None,xx2=None:g.V().has('person','name','stephen').has('age',19))], 
    'g_withSideEffectXc_label_person_name_markoX_withSideEffectXm_age_19X_mergeVXselectXcXX_optionXonMatch_selectXmXX_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.withSideEffect('c',xx1).withSideEffect('m',xx2).merge_v(__.select('c')).option(Merge.on_match,__.select('m'))), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko').has('age',19))], 
    'g_mergeVXlabel_person_name_markoX_propertyXname_vadas_acl_publicX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.merge_v(xx1).property('name','vadas','acl','public')), (lambda g, xx1=None:g.V().properties('name').hasValue('vadas').has('acl','public'))], 
    'g_injectX0X_mergeVXlabel_person_name_stephenX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.inject(0).merge_v(xx1)), (lambda g, xx1=None:g.V().has('person','name','stephen'))], 
    'g_injectX0X_mergeVXlabel_person_name_markoX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.inject(0).merge_v(xx1)), (lambda g, xx1=None:g.V().has('person','name','marko'))], 
    'g_injectX0X_mergeVXlabel_person_name_stephenX_optionXonCreate_label_person_name_stephen_age_19X_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.inject(0).merge_v(xx1).option(Merge.on_create,xx2)), (lambda g, xx1=None,xx2=None:g.V().has('person','name','stephen').has('age',19))], 
    'g_injectX0X_mergeVXlabel_person_name_markoX_optionXonMatch_age_19X_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.inject(0).merge_v(xx1).option(Merge.on_match,xx2)), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko').has('age',19))], 
    'g_withSideEffectXc_label_person_name_stephenX_withSideEffectXm_label_person_name_stephen_age_19X_injectX0X_mergeVXselectXcXX_optionXonCreate_selectXmXX_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.withSideEffect('c',xx1).withSideEffect('m',xx2).inject(0).merge_v(__.select('c')).option(Merge.on_create,__.select('m'))), (lambda g, xx1=None,xx2=None:g.V().has('person','name','stephen').has('age',19))], 
    'g_withSideEffectXc_label_person_name_markoX_withSideEffectXm_age_19X_injectX0X_mergeVXselectXcXX_optionXonMatch_selectXmXX_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.withSideEffect('c',xx1).withSideEffect('m',xx2).inject(0).merge_v(__.select('c')).option(Merge.on_match,__.select('m'))), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko').has('age',19))], 
    'g_injectX0X_mergeVXlabel_person_name_markoX_propertyXname_vadas_acl_publicX': [(lambda g, xx1=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None:g.inject(0).merge_v(xx1).property('name','vadas','acl','public')), (lambda g, xx1=None:g.V().properties('name').hasValue('vadas').has('acl','public'))], 
    'g_injectXlabel_person_name_marko_label_person_name_stephenX_mergeVXidentityX': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.inject(xx1,xx2).merge_v(__.identity())), (lambda g, xx1=None,xx2=None:g.V().has('person','name','stephen')), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko')), (lambda g, xx1=None,xx2=None:g.V())], 
    'g_injectXlabel_person_name_marko_label_person_name_stephenX_mergeV': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property('age',29)), (lambda g, xx1=None,xx2=None:g.inject(xx1,xx2).merge_v()), (lambda g, xx1=None,xx2=None:g.V().has('person','name','stephen')), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko')), (lambda g, xx1=None,xx2=None:g.V())], 
    'g_mergeVXlabel_person_name_stephenX_propertyXlist_name_steveX': [(lambda g, xx1=None:g.addV('person').property(Cardinality.list_,'name','stephen')), (lambda g, xx1=None:g.merge_v(xx1).property(Cardinality.list_,'name','steve')), (lambda g, xx1=None:g.V()), (lambda g, xx1=None:g.V().properties('name').hasValue('steve')), (lambda g, xx1=None:g.V().properties('name').hasValue('stephen')), (lambda g, xx1=None:g.V().properties('name'))], 
    'g_mergeXlabel_person_name_vadasX_optionXonMatch_age_35X': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','vadas').property('age',29).addV('person').property('name','vadas').property('age',27)), (lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_match,xx2)), (lambda g, xx1=None,xx2=None:g.V().has('age',35)), (lambda g, xx1=None,xx2=None:g.V())], 
    'g_V_mapXmergeXlabel_person_name_joshXX': [(lambda g, xx1=None:g.addV('person').property('name','vadas').property('age',29).addV('person').property('name','stephen').property('age',27)), (lambda g, xx1=None:g.V().map(__.merge_v(xx1))), (lambda g, xx1=None:g.V().has('person','name','josh')), (lambda g, xx1=None:g.V())], 
    'g_withSideEffectXc_label_person_name_markoX_withSideEffectXm_age_19X_mergeVXselectXcXX_optionXonMatch_sideEffectXpropertiesXageX_dropX_selectXmXX_option': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','marko').property(Cardinality.list_,'age',29).property(Cardinality.list_,'age',31).property(Cardinality.list_,'age',32)), (lambda g, xx1=None,xx2=None:g.withSideEffect('c',xx1).withSideEffect('m',xx2).merge_v(__.select('c')).option(Merge.on_match,__.sideEffect(__.properties('age').drop()).select('m'))), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko').has('age',19)), (lambda g, xx1=None,xx2=None:g.V().has('person','name','marko').has('age'))], 
    'g_withSideEffectXm_age_19X_V_hasXperson_name_markoX_mergeVXselectXcXX_optionXonMatch_sideEffectXpropertiesXageX_dropX_selectXmXX_option': [(lambda g, xx1=None:g.addV('person').property('name','marko').property(Cardinality.list_,'age',29).property(Cardinality.list_,'age',31).property(Cardinality.list_,'age',32)), (lambda g, xx1=None:g.withSideEffect('m',xx1).V().has('person','name','marko').merge_v({}).option(Merge.on_match,__.sideEffect(__.properties('age').drop()).select('m'))), (lambda g, xx1=None:g.V().has('person','name','marko').has('age',19)), (lambda g, xx1=None:g.V().has('person','name','marko').has('age'))], 
    'g_mergeV_onCreate_inheritance_existing': [(lambda g, xx1=None,xx2=None:g.addV('person').property('name','mike').property(T.id_,1)), (lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_create,xx2)), (lambda g, xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.V(1).has('person','name','mike'))], 
    'g_mergeV_onCreate_inheritance_new_1': [(lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_create,xx2)), (lambda g, xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.V(1).has('person','name','mike'))], 
    'g_mergeV_onCreate_inheritance_new_2': [(lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_create,xx2)), (lambda g, xx1=None,xx2=None:g.V()), (lambda g, xx1=None,xx2=None:g.V(1).has('person','name','mike'))], 
    'g_mergeV_label_override_prohibited': [(lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_create,xx2))], 
    'g_mergeV_id_override_prohibited': [(lambda g, xx1=None,xx2=None:g.merge_v(xx1).option(Merge.on_create,xx2))], 
    'g_mergeV_hidden_id_key_prohibited': [(lambda g, xx1=None:g.merge_v(xx1))], 
    'g_mergeV_hidden_label_key_prohibited': [(lambda g, xx1=None:g.merge_v(xx1))], 
    'g_mergeV_hidden_label_value_prohibited': [(lambda g, xx1=None:g.merge_v(xx1))], 
    'g_mergeV_hidden_id_key_onCreate_prohibited': [(lambda g, xx1=None:g.merge_v({}).option(Merge.on_create,xx1))], 
    'g_mergeV_hidden_label_key_onCreate_prohibited': [(lambda g, xx1=None:g.merge_v({}).option(Merge.on_create,xx1))], 
    'g_mergeV_hidden_label_value_onCreate_prohibited': [(lambda g, xx1=None:g.merge_v({}).option(Merge.on_create,xx1))], 
    'g_mergeV_hidden_id_key_onMatch_matched_prohibited': [(lambda g, xx1=None:g.addV('vertex')), (lambda g, xx1=None:g.merge_v({}).option(Merge.on_match,xx1))], 
    'g_mergeV_hidden_label_key_matched_onMatch_matched_prohibited': [(lambda g, xx1=None:g.addV('vertex')), (lambda g, xx1=None:g.merge_v({}).option(Merge.on_match,xx1))], 
    'g_mergeV_hidden_label_value_onMatch_matched_prohibited': [(lambda g, xx1=None:g.addV('vertex')), (lambda g, xx1=None:g.merge_v({}).option(Merge.on_match,xx1))], 
    'g_V_age_min': [(lambda g:g.V().age.min_())], 
    'g_V_foo_min': [(lambda g:g.V().foo.min_())], 
    'g_V_name_min': [(lambda g:g.V().name.min_())], 
    'g_V_age_fold_minXlocalX': [(lambda g:g.V().age.fold().min_(Scope.local))], 
    'g_V_aggregateXaX_byXageX_capXaX_minXlocalX': [(lambda g:g.V().aggregate('a').by('age').cap('a').min_(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_capXaX_minXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').min_(Scope.local))], 
    'g_V_aggregateXaX_byXageX_capXaX_unfold_min': [(lambda g:g.V().aggregate('a').by('age').cap('a').unfold().min_())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_capXaX_unfold_min': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').unfold().min_())], 
    'g_V_aggregateXaX_byXfooX_capXaX_minXlocalX': [(lambda g:g.V().aggregate('a').by('foo').cap('a').min_(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_capXaX_minXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').min_(Scope.local))], 
    'g_V_aggregateXaX_byXfooX_capXaX_unfold_min': [(lambda g:g.V().aggregate('a').by('foo').cap('a').unfold().min_())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_capXaX_unfold_min': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').unfold().min_())], 
    'g_V_foo_fold_minXlocalX': [(lambda g:g.V().foo.fold().min_(Scope.local))], 
    'g_V_name_fold_minXlocalX': [(lambda g:g.V().name.fold().min_(Scope.local))], 
    'g_V_repeatXbothX_timesX5X_age_min': [(lambda g:g.V().repeat(__.both()).times(5).age.min_())], 
    'g_V_hasLabelXsoftwareX_group_byXnameX_byXbothE_weight_minX': [(lambda g:g.V().hasLabel('software').group().by('name').by(__.bothE().weight.min_()))], 
    'g_V_foo_injectX9999999999X_min': [(lambda g, xx1=None:g.V().foo.inject(xx1).min_())], 
    'g_VX1X_valuesXageX_minXlocalX': [(lambda g, vid1=None:g.V(vid1).age.min_(Scope.local))], 
    'g_V_name_order': [(lambda g:g.V().name.order())], 
    'g_V_name_order_byXa1_b1X_byXb2_a2X': [(lambda g, c1=None,c2=None:g.V().name.order().by(c1).by(c2))], 
    'g_V_order_byXname_ascX_name': [(lambda g:g.V().order().by('name',Order.asc).name)], 
    'g_V_order_byXnameX_name': [(lambda g:g.V().order().by('name').name)], 
    'g_V_outE_order_byXweight_descX_weight': [(lambda g:g.V().outE().order().by('weight',Order.desc).weight)], 
    'g_V_order_byXname_a1_b1X_byXname_b2_a2X_name': [(lambda g, c1=None,c2=None:g.V().order().by('name',c1).by('name',c2).name)], 
    'g_V_asXaX_outXcreatedX_asXbX_order_byXshuffleX_selectXa_bX': [(lambda g:g.V().as_('a').out('created').as_('b').order().by(Order.shuffle).select('a','b'))], 
    'g_V_both_hasLabelXpersonX_order_byXage_descX_limitX5X_name': [(lambda g:g.V().both().hasLabel('person').order().by('age',Order.desc)[0:5].name)], 
    'g_V_properties_order_byXkey_descX_key': [(lambda g:g.V().properties().order().by(T.key,Order.desc).key())], 
    'g_V_hasLabelXpersonX_order_byXvalueXageX_descX_name': [(lambda g, l1=None:g.V().hasLabel('person').order().by(l1,Order.desc).name)], 
    'g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_orderXlocalX_byXvaluesX': [(lambda g:g.V().hasLabel('person').group().by('name').by(__.outE().weight.sum_()).order(Scope.local).by(Column.values))], 
    'g_V_mapXbothE_weight_foldX_order_byXsumXlocalX_descX_byXcountXlocalX_descX': [(lambda g:g.V().map(__.bothE().weight.order().by(Order.asc).fold()).order().by(__.sum_(Scope.local),Order.desc).by(__.count(Scope.local),Order.desc))], 
    'g_V_group_byXlabelX_byXname_order_byXdescX_foldX': [(lambda g:g.V().group().by(T.label).by(__.name.order().by(Order.desc).fold()))], 
    'g_V_hasLabelXpersonX_group_byXnameX_byXoutE_weight_sumX_unfold_order_byXvalues_descX': [(lambda g:g.V().hasLabel('person').group().by('name').by(__.outE().weight.sum_()).unfold().order().by(Column.values,Order.desc))], 
    'g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_descX_byXselectXvX_nameX': [(lambda g:g.V().as_('v').map(__.bothE().weight.fold()).sum_(Scope.local).as_('s').select('v','s').order().by(__.select('s'),Order.desc).by(__.select('v').name))], 
    'g_V_hasLabelXpersonX_fold_orderXlocalX_byXageX': [(lambda g:g.V().hasLabel('person').fold().order(Scope.local).by('age'))], 
    'g_V_both_hasLabelXpersonX_order_byXage_descX_name': [(lambda g:g.V().both().hasLabel('person').order().by('age',Order.desc).name)], 
    'g_V_order_byXoutE_count_descX_byXnameX': [(lambda g:g.V().order().by(__.outE().count(),Order.desc).by('name'))], 
    'g_V_hasLabelXpersonX_order_byXageX': [(lambda g:g.V().hasLabel('person').order().by('age'))], 
    'g_V_order_byXageX': [(lambda g:g.V().order().by('age'))], 
    'g_V_fold_orderXlocalX_byXageX': [(lambda g:g.V().fold().order(Scope.local).by('age'))], 
    'g_V_fold_orderXlocalX_byXage_descX': [(lambda g:g.V().fold().order(Scope.local).by('age',Order.desc))], 
    'g_V_orXhasLabelXpersonX_hasXsoftware_name_lopXX_order_byXageX': [(lambda g:g.V().or_(__.hasLabel('person'),__.has('software','name','lop')).order().by('age'))], 
    'g_withStrategiesXProductiveByStrategyX_V_orXhasLabelXpersonX_hasXsoftware_name_lopXX_order_byXageX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().or_(__.hasLabel('person'),__.has('software','name','lop')).order().by('age'))], 
    'g_VX1X_hasXlabel_personX_mapXmapXint_ageXX_orderXlocalX_byXvalues_descX_byXkeys_ascX': [(lambda g, l1=None,v1=None:g.V(v1).hasLabel('person').map(l1).order(Scope.local).by(Column.values,Order.desc).by(Column.keys,Order.asc))], 
    'g_V_hasXsong_name_OHBOYX_outXfollowedByX_outXfollowedByX_order_byXperformancesX_byXsongType_descX': [(lambda g:g.V().has('song','name','OH BOY').out('followedBy').out('followedBy').order().by('performances').by('songType',Order.desc).by('name'))], 
    'g_V_hasLabelXsongX_order_byXperformances_descX_byXnameX_rangeX110_120X_name': [(lambda g:g.V().hasLabel('song').order().by('performances',Order.desc).by('name')[110:120].name)], 
    'g_VX1X_elementMap_orderXlocalX_byXkeys_descXunfold': [(lambda g, vid1=None:g.V(vid1).elementMap().order(Scope.local).by(Column.keys,Order.desc).unfold())], 
    'g_VX1X_elementMap_orderXlocalX_byXkeys_ascXunfold': [(lambda g, vid1=None:g.V(vid1).elementMap().order(Scope.local).by(Column.keys,Order.asc).unfold())], 
    'g_VX1X_valuesXageX_orderXlocalX': [(lambda g, vid1=None:g.V(vid1).age.order(Scope.local))], 
    'g_V_pageRank_hasXpageRankX': [(lambda g:g.V().pageRank().has('gremlin.pageRankVertexProgram.pageRank'))], 
    'g_V_outXcreatedX_pageRank_withXedges_bothEX_withXpropertyName_projectRankX_withXtimes_0X_valueMapXname_projectRankX': [(lambda g:g.V().out('created').pageRank().with_('~tinkerpop.pageRank.edges',__.bothE()).with_('~tinkerpop.pageRank.propertyName','projectRank').with_('~tinkerpop.pageRank.times',0).valueMap('name','projectRank'))], 
    'g_V_pageRank_order_byXpageRank_descX_byXnameX_name': [(lambda g:g.V().pageRank().order().by('gremlin.pageRankVertexProgram.pageRank',Order.desc).by('name').name)], 
    'g_V_pageRank_order_byXpageRank_descX_name_limitX2X': [(lambda g:g.V().pageRank().order().by('gremlin.pageRankVertexProgram.pageRank',Order.desc).name[0:2])], 
    'g_V_pageRank_withXedges_outEXknowsXX_withXpropertyName_friendRankX_project_byXnameX_byXvaluesXfriendRankX_mathX': [(lambda g:g.V().pageRank().with_('~tinkerpop.pageRank.edges',__.outE('knows')).with_('~tinkerpop.pageRank.propertyName','friendRank').project('name','friendRank').by('name').by(__.friendRank.math('ceil(_ * 100)')))], 
    'g_V_hasLabelXpersonX_pageRank_withXpropertyName_kpageRankX_project_byXnameX_byXvaluesXpageRankX_mathX': [(lambda g:g.V().hasLabel('person').pageRank().with_('~tinkerpop.pageRank.propertyName','pageRank').project('name','pageRank').by('name').by(__.values('pageRank').math('ceil(_ * 100)')))], 
    'g_V_pageRank_withXpropertyName_pageRankX_asXaX_outXknowsX_pageRank_asXbX_selectXa_bX_by_byXmathX': [(lambda g:g.V().pageRank().with_('~tinkerpop.pageRank.propertyName','pageRank').as_('a').out('knows').values('pageRank').as_('b').select('a','b').by().by(__.math('ceil(_ * 100)')))], 
    'g_V_hasLabelXsoftwareX_hasXname_rippleX_pageRankX1X_withXedges_inEXcreatedX_withXtimes_1X_withXpropertyName_priorsX_inXcreatedX_unionXboth__identityX_valueMapXname_priorsX': [(lambda g:g.V().hasLabel('software').has('name','ripple').pageRank(float(1.0)).with_('~tinkerpop.pageRank.edges',__.inE('created')).with_('~tinkerpop.pageRank.times',1).with_('~tinkerpop.pageRank.propertyName','priors').in_('created').union(__.both(),__.identity()).valueMap('name','priors'))], 
    'g_V_outXcreatedX_groupXmX_byXlabelX_pageRankX1X_withXpropertyName_pageRankX_withXedges_inEX_withXtimes_1X_inXcreatedX_groupXmX_byXpageRankX_capXmX': [(lambda g:g.V().out('created').group('m').by(T.label).pageRank(float(1.0)).with_('~tinkerpop.pageRank.propertyName','pageRank').with_('~tinkerpop.pageRank.edges',__.inE()).with_('~tinkerpop.pageRank.times',1).in_('created').group('m').by('pageRank').cap('m'))], 
    'g_VX1X_name_path': [(lambda g, vid1=None:g.V(vid1).name.path())], 
    'g_VX1X_out_path_byXageX_byXnameX': [(lambda g, vid1=None:g.V(vid1).out().path().by('age').by('name'))], 
    'g_V_repeatXoutX_timesX2X_path_byXitX_byXnameX_byXlangX': [(lambda g:g.V().repeat(__.out()).times(2).path().by().by('name').by('lang'))], 
    'g_V_out_out_path_byXnameX_byXageX': [(lambda g:g.V().out().out().path().by('name').by('age'))], 
    'g_V_asXaX_hasXname_markoX_asXbX_hasXage_29X_asXcX_path': [(lambda g:g.V().as_('a').has('name','marko').as_('b').has('age',29).as_('c').path())], 
    'g_VX1X_outEXcreatedX_inV_inE_outV_path': [(lambda g, vid1=None:g.V(vid1).outE('created').in_v().inE().out_v().path())], 
    'g_V_asXaX_out_asXbX_out_asXcX_path_fromXbX_toXcX_byXnameX': [(lambda g:g.V().as_('a').out().as_('b').out().as_('c').path().from_('b').to('c').by('name'))], 
    'g_VX1X_out_path_byXageX': [(lambda g, vid1=None:g.V(vid1).out().path().by('age'))], 
    'g_withStrategiesXProductiveByStrategyX_VX1X_out_path_byXageX': [(lambda g, vid1=None:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V(vid1).out().path().by('age'))], 
    'g_injectX1_null_nullX_path': [(lambda g:g.inject(1,None,None).path())], 
    'g_injectX1_null_nullX_path_dedup': [(lambda g:g.inject(1,None,None).path().dedup())], 
    'g_V_peerPressure_hasXclusterX': [(lambda g:g.V().peerPressure().has('gremlin.peerPressureVertexProgram.cluster'))], 
    'g_V_peerPressure_withXpropertyName_clusterX_withXedges_outEXknowsXX_pageRankX1X_byXrankX_withXedges_outEXknowsX_withXtimes_2X_group_byXclusterX_byXrank_sumX_limitX100X': [(lambda g:g.V().peerPressure().with_('~tinkerpop.peerPressure.propertyName','cluster').with_('~tinkerpop.peerPressure.edges',__.outE('knows')).pageRank(float(1.0)).with_('~tinkerpop.pageRank.propertyName','rank').with_('~tinkerpop.pageRank.edges',__.outE('knows')).with_('~tinkerpop.pageRank.times',1).group().by('cluster').by(__.rank.sum_())[0:100])], 
    'g_V_hasXname_rippleX_inXcreatedX_peerPressure_withXedges_outEX_withyXpropertyName_clusterX_repeatXunionXidentity__bothX_timesX2X_dedup_valueMapXname_clusterX': [(lambda g:g.V().has('name','ripple').in_('created').peerPressure().with_('~tinkerpop.peerPressure.edges',__.outE()).with_('~tinkerpop.peerPressure.propertyName','cluster').repeat(__.union(__.identity(),__.both())).times(2).dedup().valueMap('name','cluster'))], 
    'g_V_hasLabelXpersonX_projectXa_bX_byXoutE_countX_byXageX': [(lambda g:g.V().hasLabel('person').project('a','b').by(__.outE().count()).by('age'))], 
    'g_V_outXcreatedX_projectXa_bX_byXnameX_byXinXcreatedX_countX_order_byXselectXbX__descX_selectXaX': [(lambda g:g.V().out('created').project('a','b').by('name').by(__.in_('created').count()).order().by(__.select('b'),Order.desc).select('a'))], 
    'g_V_valueMap_projectXxX_byXselectXnameXX': [(lambda g:g.V().valueMap().project('x').by(__.select('name')))], 
    'g_V_projectXa_bX_byXinE_countX_byXageX': [(lambda g:g.V().project('a','b').by(__.inE().count()).by('age'))], 
    'g_withStrategiesXProductiveByStrategyX_V_projectXa_bX_byXinE_countX_byXageX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().project('a','b').by(__.inE().count()).by('age'))], 
    'g_V_hasXageX_propertiesXnameX': [(lambda g:g.V().has('age').properties('name').value())], 
    'g_V_hasXageX_propertiesXname_ageX_value': [(lambda g:g.V().has('age').properties('name','age').value())], 
    'g_V_hasXageX_propertiesXage_nameX_value': [(lambda g:g.V().has('age').properties('age','name').value())], 
    'g_V_propertiesXname_age_nullX_value': [(lambda g:g.V().properties('name','age',None).value())], 
    'g_V_valuesXname_age_nullX': [(lambda g:g.V().values('name','age',None))], 
    'g_VX1X_asXaX_outXknowsX_asXbX_selectXa_bX': [(lambda g, vid1=None:g.V(vid1).as_('a').out('knows').as_('b').select('a','b'))], 
    'g_VX1X_asXaX_outXknowsX_asXbX_selectXa_bX_byXnameX': [(lambda g, vid1=None:g.V(vid1).as_('a').out('knows').as_('b').select('a','b').by('name'))], 
    'g_VX1X_asXaX_outXknowsX_asXbX_selectXaX': [(lambda g, vid1=None:g.V(vid1).as_('a').out('knows').as_('b').select('a'))], 
    'g_VX1X_asXaX_outXknowsX_asXbX_selectXaX_byXnameX': [(lambda g, vid1=None:g.V(vid1).as_('a').out('knows').as_('b').select('a').by('name'))], 
    'g_V_asXaX_out_asXbX_selectXa_bX_byXnameX': [(lambda g:g.V().as_('a').out().as_('b').select('a','b').by('name'))], 
    'g_V_asXaX_out_aggregateXxX_asXbX_selectXa_bX_byXnameX': [(lambda g:g.V().as_('a').out().aggregate('x').as_('b').select('a','b').by('name'))], 
    'g_V_asXaX_name_order_asXbX_selectXa_bX_byXnameX_by_XitX': [(lambda g:g.V().as_('a').name.order().as_('b').select('a','b').by('name').by())], 
    'g_V_hasXname_gremlinX_inEXusesX_order_byXskill_ascX_asXaX_outV_asXbX_selectXa_bX_byXskillX_byXnameX': [(lambda g:g.V().has('name','gremlin').inE('uses').order().by('skill',Order.asc).as_('a').out_v().as_('b').select('a','b').by('skill').by('name'))], 
    'g_V_hasXname_isXmarkoXX_asXaX_selectXaX': [(lambda g:g.V().has('name',__.is_('marko')).as_('a').select('a'))], 
    'g_V_label_groupCount_asXxX_selectXxX': [(lambda g:g.V().label().groupCount().as_('x').select('x'))], 
    'g_V_hasLabelXpersonX_asXpX_mapXbothE_label_groupCountX_asXrX_selectXp_rX': [(lambda g:g.V().hasLabel('person').as_('p').map(__.bothE().label().groupCount()).as_('r').select('p','r'))], 
    'g_V_chooseXoutE_count_isX0X__asXaX__asXbXX_chooseXselectXaX__selectXaX__selectXbXX': [(lambda g, xx1=None:g.V().choose(__.outE().count().is_(xx1),__.as_('a'),__.as_('b')).choose(__.select('a'),__.select('a'),__.select('b')))], 
    'g_VX1X_groupXaX_byXconstantXaXX_byXnameX_selectXaX_selectXaX': [(lambda g, vid1=None:g.V(vid1).group('a').by(__.constant('a')).by(__.name).barrier().select('a').select('a'))], 
    'g_VX1X_asXhereX_out_selectXhereX': [(lambda g, vid1=None:g.V(vid1).as_('here').out().select('here'))], 
    'g_VX4X_out_asXhereX_hasXlang_javaX_selectXhereX': [(lambda g, vid4=None:g.V(vid4).as_('here').out().select('here'))], 
    'g_VX4X_out_asXhereX_hasXlang_javaX_selectXhereX_name': [(lambda g, vid4=None:g.V(vid4).out().as_('here').has('lang','java').select('here').name)], 
    'g_VX1X_outE_asXhereX_inV_hasXname_vadasX_selectXhereX': [(lambda g, vid1=None:g.V(vid1).outE().as_('here').in_v().has('name','vadas').select('here'))], 
    'g_VX1X_outEXknowsX_hasXweight_1X_asXhereX_inV_hasXname_joshX_selectXhereX': [(lambda g, vid1=None:g.V(vid1).outE('knows').has('weight',float(1.0)).as_('here').in_v().has('name','josh').select('here'))], 
    'g_VX1X_outEXknowsX_asXhereX_hasXweight_1X_asXfakeX_inV_hasXname_joshX_selectXhereX': [(lambda g, vid1=None:g.V(vid1).outE('knows').as_('here').has('weight',float(1.0)).as_('fake').in_v().has('name','josh').select('here'))], 
    'g_V_asXhereXout_name_selectXhereX': [(lambda g:g.V().as_('here').out().name.select('here'))], 
    'g_V_outXcreatedX_unionXasXprojectX_inXcreatedX_hasXname_markoX_selectXprojectX__asXprojectX_inXcreatedX_inXknowsX_hasXname_markoX_selectXprojectXX_groupCount_byXnameX': [(lambda g:g.V().out('created').union(__.as_('project').in_('created').has('name','marko').select('project'),__.as_('project').in_('created').in_('knows').has('name','marko').select('project')).groupCount().by('name'))], 
    'g_V_untilXout_outX_repeatXin_asXaXX_selectXaX_byXtailXlocalX_nameX': [(lambda g:g.V().until(__.out().out()).repeat(__.in_().as_('a')).select('a').by(__.tail(Scope.local).name))], 
    'g_V_outE_weight_groupCount_selectXkeysX_unfold': [(lambda g:g.V().outE().weight.groupCount().select(Column.keys).unfold())], 
    'g_V_hasLabelXsoftwareX_asXnameX_asXlanguageX_asXcreatorsX_selectXname_language_creatorsX_byXnameX_byXlangX_byXinXcreatedX_name_fold_orderXlocalXX': [(lambda g:g.V().hasLabel('software').as_('name').as_('language').as_('creators').select('name','language','creators').by('name').by('lang').by(__.in_('created').name.fold().order(Scope.local)))], 
    'g_V_outE_weight_groupCount_unfold_selectXkeysX_unfold': [(lambda g:g.V().outE().weight.groupCount().unfold().select(Column.keys).unfold())], 
    'g_V_outE_weight_groupCount_unfold_selectXvaluesX_unfold': [(lambda g:g.V().outE().weight.groupCount().unfold().select(Column.values).unfold())], 
    'g_V_untilXout_outX_repeatXin_asXaX_in_asXbXX_selectXa_bX_byXnameX': [(lambda g:g.V().until(__.out().out()).repeat(__.in_().as_('a').in_().as_('b')).select('a','b').by('name'))], 
    'g_V_outE_weight_groupCount_selectXvaluesX_unfold': [(lambda g:g.V().outE().weight.groupCount().select(Column.values).unfold())], 
    'g_V_asXaX_whereXoutXknowsXX_selectXaX': [(lambda g:g.V().as_('a').where(__.out('knows')).select('a'))], 
    'g_VX1X_asXaX_repeatXout_asXaXX_timesX2X_selectXfirst_aX': [(lambda g, vid1=None:g.V(vid1).as_('a').repeat(__.out().as_('a')).times(2).select(Pop.first,'a'))], 
    'g_V_asXaX_outXknowsX_asXbX_localXselectXa_bX_byXnameXX': [(lambda g:g.V().as_('a').out('knows').as_('b').local(__.select('a','b').by('name')))], 
    'g_VX1X_asXaX_repeatXout_asXaXX_timesX2X_selectXlast_aX': [(lambda g, vid1=None:g.V(vid1).as_('a').repeat(__.out().as_('a')).times(2).select(Pop.last,'a'))], 
    'g_VX1X_outEXknowsX_asXhereX_hasXweight_1X_inV_hasXname_joshX_selectXhereX': [(lambda g, vid1=None:g.V(vid1).outE('knows').as_('here').has('weight',float(1.0)).in_v().has('name','josh').select('here'))], 
    'g_V_asXaX_hasXname_markoX_asXbX_asXcX_selectXa_b_cX_by_byXnameX_byXageX': [(lambda g:g.V().as_('a').has('name','marko').as_('b').as_('c').select('a','b','c').by().by('name').by('age'))], 
    'g_V_outE_weight_groupCount_selectXvaluesX_unfold_groupCount_selectXvaluesX_unfold': [(lambda g:g.V().outE().weight.groupCount().select(Column.values).unfold().groupCount().select(Column.values).unfold())], 
    'g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX': [(lambda g:g.V().as_('a').group('m').by().by(__.bothE().count()).barrier().select('m').select(__.select('a')))], 
    'g_V_asXaX_groupXmX_by_byXbothE_countX_barrier_selectXmX_selectXselectXaXX_byXmathX_plus_XX': [(lambda g:g.V().as_('a').group('m').by().by(__.bothE().count()).barrier().select('m').select(__.select('a')).by(__.math('_+_')))], 
    'g_V_asXaX_outXknowsX_asXaX_selectXall_constantXaXX': [(lambda g:g.V().as_('a').out('knows').as_('a').select(Pop.all_,__.constant('a')))], 
    'g_V_selectXaX': [(lambda g:g.V().select('a'))], 
    'g_V_selectXaX_count': [(lambda g:g.V().select('a').count())], 
    'g_V_selectXa_bX': [(lambda g:g.V().select('a','b'))], 
    'g_V_valueMap_selectXaX': [(lambda g:g.V().valueMap().select('a'))], 
    'g_V_valueMap_selectXa_bX': [(lambda g:g.V().valueMap().select('a','b'))], 
    'g_V_selectXfirst_aX': [(lambda g:g.V().select(Pop.first,'a'))], 
    'g_V_selectXfirst_a_bX': [(lambda g:g.V().select(Pop.first,'a','b'))], 
    'g_V_valueMap_selectXfirst_aX': [(lambda g:g.V().valueMap().select(Pop.first,'a'))], 
    'g_V_valueMap_selectXfirst_a_bX': [(lambda g:g.V().valueMap().select(Pop.first,'a','b'))], 
    'g_V_selectXlast_aX': [(lambda g:g.V().select(Pop.last,'a'))], 
    'g_V_selectXlast_a_bX': [(lambda g:g.V().select(Pop.last,'a','b'))], 
    'g_V_valueMap_selectXlast_aX': [(lambda g:g.V().valueMap().select(Pop.last,'a'))], 
    'g_V_valueMap_selectXlast_a_bX': [(lambda g:g.V().valueMap().select(Pop.last,'a','b'))], 
    'g_V_selectXall_aX': [(lambda g:g.V().select(Pop.all_,'a'))], 
    'g_V_selectXall_a_bX': [(lambda g:g.V().select(Pop.all_,'a','b'))], 
    'g_V_valueMap_selectXall_aX': [(lambda g:g.V().valueMap().select(Pop.all_,'a'))], 
    'g_V_valueMap_selectXall_a_bX': [(lambda g:g.V().valueMap().select(Pop.all_,'a','b'))], 
    'g_V_asXa_bX_out_asXcX_path_selectXkeysX': [(lambda g:g.V().as_('a','b').out().as_('c').path().select(Column.keys)), (lambda g:g.V().as_('a','b').out().as_('c').path().select(Column.keys))], 
    'g_V_hasXperson_name_markoX_barrier_asXaX_outXknows_selectXaX': [(lambda g:g.V().has('person','name','marko').barrier().as_('a').out('knows').select('a'))], 
    'g_V_hasXperson_name_markoX_elementMapXnameX_asXaX_unionXidentity_identityX_selectXaX_selectXnameX': [(lambda g:g.V().has('person','name','marko').elementMap('name').as_('a').union(__.identity(),__.identity()).select('a').select('name'))], 
    'g_V_hasXperson_name_markoX_count_asXaX_unionXidentity_identityX_selectXaX': [(lambda g:g.V().has('person','name','marko').count().as_('a').union(__.identity(),__.identity()).select('a'))], 
    'g_V_hasXperson_name_markoX_path_asXaX_unionXidentity_identityX_selectXaX_unfold': [(lambda g:g.V().has('person','name','marko').path().as_('a').union(__.identity(),__.identity()).select('a').unfold())], 
    'g_EX11X_propertiesXweightX_asXaX_selectXaX_byXkeyX': [(lambda g, eid11=None:g.E(eid11).properties('weight').as_('a').select('a').by(T.key))], 
    'g_EX11X_propertiesXweightX_asXaX_selectXaX_byXvalueX': [(lambda g, eid11=None:g.E(eid11).properties('weight').as_('a').select('a').by(T.value))], 
    'g_V_asXaX_selectXaX_byXageX': [(lambda g:g.V().as_('a').select('a').by('age'))], 
    'g_V_asXa_nX_selectXa_nX_byXageX_byXnameX': [(lambda g:g.V().as_('a','n').select('a','n').by('age').by('name'))], 
    'g_withStrategiesXProductiveByStrategyX_V_asXaX_selectXaX_byXageX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().as_('a').select('a').by('age'))], 
    'g_withSideEffectXk_nullX_injectXxX_selectXkX': [(lambda g:g.withSideEffect('k',None).inject('x').select('k'))], 
    'g_V_out_in_selectXall_a_a_aX_byXunfold_name_foldX': [(lambda g:g.addV('A').property('name','a1').as_('a1').addV('A').property('name','a2').as_('a2').addV('A').property('name','a3').as_('a3').addV('B').property('name','b1').as_('b1').addV('B').property('name','b2').as_('b2').addV('B').property('name','b3').as_('b3').addE('ab').from_('a1').to('b1').addE('ab').from_('a2').to('b2').addE('ab').from_('a3').to('b3')), (lambda g:g.V().as_('a').out().as_('a').in_().as_('a').select(Pop.all_,'a','a','a').by(__.unfold().name.fold()))], 
    'g_V_shortestPath': [(lambda g:g.V().identity().shortestPath())], 
    'g_V_both_dedup_shortestPath': [(lambda g:g.V().both().dedup().shortestPath())], 
    'g_V_shortestPath_edgesIncluded': [(lambda g:g.V().identity().shortestPath().with_('~tinkerpop.shortestPath.includeEdges'))], 
    'g_V_shortestPath_directionXINX': [(lambda g:g.V().identity().shortestPath().with_('~tinkerpop.shortestPath.edges',Direction.IN))], 
    'g_V_shortestPath_edgesXoutEX': [(lambda g:g.V().identity().shortestPath().with_('~tinkerpop.shortestPath.edges',__.outE()))], 
    'g_V_shortestPath_edgesIncluded_edgesXoutEX': [(lambda g:g.V().identity().shortestPath().with_('~tinkerpop.shortestPath.includeEdges').with_('~tinkerpop.shortestPath.edges',__.outE()))], 
    'g_V_hasXname_markoX_shortestPath': [(lambda g:g.V().has('name','marko').shortestPath())], 
    'g_V_shortestPath_targetXhasXname_markoXX': [(lambda g:g.V().identity().shortestPath().with_('~tinkerpop.shortestPath.target',__.has('name','marko')))], 
    'g_V_shortestPath_targetXvaluesXnameX_isXmarkoXX': [(lambda g:g.V().identity().shortestPath().with_('~tinkerpop.shortestPath.target',__.name.is_('marko')))], 
    'g_V_hasXname_markoX_shortestPath_targetXhasLabelXsoftwareXX': [(lambda g:g.V().has('name','marko').shortestPath().with_('~tinkerpop.shortestPath.target',__.hasLabel('software')))], 
    'g_V_hasXname_markoX_shortestPath_targetXhasXname_joshXX_distanceXweightX': [(lambda g:g.V().has('name','marko').shortestPath().with_('~tinkerpop.shortestPath.target',__.has('name','josh')).with_('~tinkerpop.shortestPath.distance','weight'))], 
    'g_V_hasXname_danielX_shortestPath_targetXhasXname_stephenXX_edgesXbothEXusesXX': [(lambda g:g.V().has('name','daniel').shortestPath().with_('~tinkerpop.shortestPath.target',__.has('name','stephen')).with_('~tinkerpop.shortestPath.edges',__.bothE('uses')))], 
    'g_V_hasXsong_name_MIGHT_AS_WELLX_shortestPath_targetXhasXsong_name_MAYBE_YOU_KNOW_HOW_I_FEELXX_edgesXoutEXfollowedByXX_distanceXweightX': [(lambda g:g.V().has('song','name','MIGHT AS WELL').shortestPath().with_('~tinkerpop.shortestPath.target',__.has('song','name','MAYBE YOU KNOW HOW I FEEL')).with_('~tinkerpop.shortestPath.edges',__.outE('followedBy')).with_('~tinkerpop.shortestPath.distance','weight'))], 
    'g_V_hasXname_markoX_shortestPath_maxDistanceX1X': [(lambda g:g.V().has('name','marko').shortestPath().with_('~tinkerpop.shortestPath.maxDistance',1))], 
    'g_V_hasXname_vadasX_shortestPath_distanceXweightX_maxDistanceX1_3X': [(lambda g:g.V().has('name','vadas').shortestPath().with_('~tinkerpop.shortestPath.distance','weight').with_('~tinkerpop.shortestPath.maxDistance',float(1.3)))], 
    'g_V_age_sum': [(lambda g:g.V().age.sum_())], 
    'g_V_foo_sum': [(lambda g:g.V().foo.sum_())], 
    'g_V_age_fold_sumXlocalX': [(lambda g:g.V().age.fold().sum_(Scope.local))], 
    'g_V_foo_fold_sumXlocalX': [(lambda g:g.V().foo.fold().sum_(Scope.local))], 
    'g_V_hasLabelXsoftwareX_group_byXnameX_byXbothE_weight_sumX': [(lambda g:g.V().hasLabel('software').group().by('name').by(__.bothE().weight.sum_()))], 
    'g_V_aggregateXaX_byXageX_sumXlocalX': [(lambda g:g.V().aggregate('a').by('age').cap('a').sum_(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_sumXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').sum_(Scope.local))], 
    'g_V_aggregateXaX_byXageX_capXaX_unfold_sum': [(lambda g:g.V().aggregate('a').by('age').cap('a').unfold().sum_())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXageX_capXaX_unfold_sum': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('age').cap('a').unfold().sum_())], 
    'g_V_aggregateXaX_byXfooX_sumXlocalX': [(lambda g:g.V().aggregate('a').by('foo').cap('a').sum_(Scope.local))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_sumXlocalX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').sum_(Scope.local))], 
    'g_V_aggregateXaX_byXfooX_capXaX_unfold_sum': [(lambda g:g.V().aggregate('a').by('foo').cap('a').unfold().sum_())], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXaX_byXfooX_capXaX_unfold_sum': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('a').by('foo').cap('a').unfold().sum_())], 
    'g_injectXnull_10_5_nullX_sum': [(lambda g, xx1=None,xx2=None:g.inject(None,xx1,xx2,None).sum_())], 
    'g_injectXlistXnull_10_5_nullXX_sumXlocalX': [(lambda g, xx1=None:g.inject(xx1).sum_(Scope.local))], 
    'g_VX1X_valuesXageX_sumXlocalX': [(lambda g, vid1=None:g.V(vid1).age.sum_(Scope.local))], 
    'g_V_localXoutE_foldX_unfold': [(lambda g:g.V().local(__.outE().fold()).unfold())], 
    'g_V_valueMap_unfold_mapXkeyX': [(lambda g, l1=None:g.V().valueMap().unfold().map(l1))], 
    'g_VX1X_repeatXboth_simplePathX_untilXhasIdX6XX_path_byXnameX_unfold': [(lambda g, vid6=None,vid1=None:g.V(vid1).repeat(__.both().simplePath()).until(__.hasId(vid6)).path().by('name').unfold())], 
    'g_V_valueMap': [(lambda g:g.V().valueMap())], 
    'g_V_valueMapXtrueX': [(lambda g:g.V().valueMap(True))], 
    'g_V_valueMap_withXtokensX': [(lambda g:g.V().valueMap().with_('~tinkerpop.valueMap.tokens'))], 
    'g_V_valueMapXname_ageX': [(lambda g:g.V().valueMap('name','age'))], 
    'g_V_valueMapXtrue_name_ageX': [(lambda g:g.V().valueMap(True,'name','age'))], 
    'g_V_valueMapXname_ageX_withXtokensX': [(lambda g:g.V().valueMap('name','age').with_('~tinkerpop.valueMap.tokens'))], 
    'g_V_valueMapXname_ageX_withXtokens_labelsX_byXunfoldX': [(lambda g:g.V().valueMap('name','age').with_('~tinkerpop.valueMap.tokens',2).by(__.unfold()))], 
    'g_V_valueMapXname_ageX_withXtokens_idsX_byXunfoldX': [(lambda g:g.V().valueMap('name','age').with_('~tinkerpop.valueMap.tokens',1).by(__.unfold()))], 
    'g_VX1X_outXcreatedX_valueMap': [(lambda g, vid1=None:g.V(vid1).out('created').valueMap())], 
    'g_V_hasLabelXpersonX_filterXoutEXcreatedXX_valueMapXtrueX': [(lambda g:g.V().hasLabel('person').filter_(__.outE('created')).valueMap(True))], 
    'g_V_hasLabelXpersonX_filterXoutEXcreatedXX_valueMap_withXtokensX': [(lambda g:g.V().hasLabel('person').filter_(__.outE('created')).valueMap().with_('~tinkerpop.valueMap.tokens'))], 
    'g_VX1X_valueMapXname_locationX_byXunfoldX_by': [(lambda g, vid1=None:g.V(vid1).valueMap('name','location').by(__.unfold()).by())], 
    'g_V_valueMapXname_age_nullX': [(lambda g:g.V().valueMap('name','age',None))], 
    'g_V_valueMapXname_ageX_byXisXxXXbyXunfoldX': [(lambda g:g.V().valueMap('name','age').by(__.is_('x')).by(__.unfold()))], 
    'g_VXnullX': [(lambda g:g.V(None))], 
    'g_VXlistXnullXX': [(lambda g, xx1=None:g.V(xx1))], 
    'g_VX1_nullX': [(lambda g, vid1=None:g.V(vid1,None))], 
    'g_VXlistX1_2_3XX_name': [(lambda g, xx1=None:g.V(xx1).name)], 
    'g_VXlistXv1_v2_v3XX_name': [(lambda g, xx1=None:g.V(xx1).name)], 
    'g_V': [(lambda g:g.V())], 
    'g_VXv1X_out': [(lambda g, v1=None:g.V(v1).out())], 
    'g_VX1X_out': [(lambda g, vid1=None:g.V(vid1).out())], 
    'g_VX2X_in': [(lambda g, vid2=None:g.V(vid2).in_())], 
    'g_VX4X_both': [(lambda g, vid4=None:g.V(vid4).both())], 
    'g_E': [(lambda g:g.E())], 
    'g_EX11X': [(lambda g, eid11=None:g.E(eid11))], 
    'g_EX11AsStringX': [(lambda g, eid11=None:g.E(eid11))], 
    'g_EXe11X': [(lambda g, e11=None:g.E(e11))], 
    'g_EXe7_e11X': [(lambda g, e7=None,e11=None:g.E(e7,e11))], 
    'g_EXlistXe7_e11XX': [(lambda g, xx1=None:g.E(xx1))], 
    'g_EXnullX': [(lambda g:g.E(None))], 
    'g_EXlistXnullXX': [(lambda g, xx1=None:g.E(xx1))], 
    'g_EX11_nullX': [(lambda g, eid11=None:g.E(eid11,None))], 
    'g_VX1X_outE': [(lambda g, vid1=None:g.V(vid1).outE())], 
    'g_VX2X_outE': [(lambda g, vid2=None:g.V(vid2).inE())], 
    'g_VX4X_bothEXcreatedX': [(lambda g, vid4=None:g.V(vid4).bothE('created'))], 
    'g_VX4X_bothE': [(lambda g, vid4=None:g.V(vid4).bothE())], 
    'g_VX1X_outE_inV': [(lambda g, vid1=None:g.V(vid1).both())], 
    'g_VX2X_inE_outV': [(lambda g, vid2=None:g.V(vid2).inE().out_v())], 
    'g_V_outE_hasXweight_1X_outV': [(lambda g:g.V().outE().has('weight',float(1.0)).out_v())], 
    'g_V_out_outE_inV_inE_inV_both_name': [(lambda g:g.V().out().outE().in_v().inE().in_v().both().name)], 
    'g_VX1X_outEXknowsX_bothV_name': [(lambda g, vid1=None:g.V(vid1).outE('knows').bothV().name)], 
    'g_VX1X_outE_otherV': [(lambda g, vid1=None:g.V(vid1).outE().otherV())], 
    'g_VX4X_bothE_otherV': [(lambda g, vid4=None:g.V(vid4).bothE().otherV())], 
    'g_VX4X_bothE_hasXweight_lt_1X_otherV': [(lambda g, vid4=None:g.V(vid4).bothE().has('weight',P.lt(float(1.0))).otherV())], 
    'g_VX2X_inE': [(lambda g, vid2=None:g.V(vid2).bothE())], 
    'get_g_VX1X_outE_otherV': [(lambda g, vid1=None:g.V(vid1).outE().otherV())], 
    'g_VX1X_outXknowsX': [(lambda g, vid1=None:g.V(vid1).out('knows'))], 
    'g_VX1AsStringX_outXknowsX': [(lambda g, vid1=None:g.V(vid1).out('knows'))], 
    'g_VX1X_outXknows_createdX': [(lambda g, vid1=None:g.V(vid1).out('knows','created'))], 
    'g_VX1X_outEXknowsX_inV': [(lambda g, vid1=None:g.V(vid1).outE('knows').in_v())], 
    'g_VX1X_outEXknows_createdX_inV': [(lambda g, vid1=None:g.V(vid1).outE('knows','created').in_v())], 
    'g_V_out_out': [(lambda g:g.V().out().out())], 
    'g_VX1X_out_out_out': [(lambda g, vid1=None:g.V(vid1).out().out().out())], 
    'g_VX1X_out_name': [(lambda g, vid1=None:g.V(vid1).out().name)], 
    'g_VX1X_to_XOUT_knowsX': [(lambda g, vid1=None:g.V(vid1).to(Direction.OUT,'knows'))], 
    'g_VX1_2_3_4X_name': [(lambda g, vid4=None,vid3=None,vid2=None,vid1=None: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','peter').property('age',35).as_('peter').addE('knows').from_('marko').to('vadas').property('weight',float(0.5)).addE('knows').from_('marko').to('josh').property('weight',float(1.0)).addE('created').from_('marko').to('lop').property('weight',float(0.4)).addE('created').from_('josh').to('ripple').property('weight',float(1.0)).addE('created').from_('josh').to('lop').property('weight',float(0.4)).addE('created').from_('peter').to('lop').property('weight',float(0.2))), (lambda g, vid4=None,vid3=None,vid2=None,vid1=None:g.V().has('software','name','lop').drop()), (lambda g, vid4=None,vid3=None,vid2=None,vid1=None:g.V(vid1,vid2,vid3,vid4))], 
    'g_V_hasLabelXpersonX_V_hasLabelXsoftwareX_name': [(lambda g:g.V().hasLabel('person').V().hasLabel('software').name)], 
    'g_V_hasLabelXloopsX_bothEXselfX': [(lambda g:g.V().hasLabel('loops').bothE('self'))], 
    'g_V_hasLabelXloopsX_bothXselfX': [(lambda g:g.V().hasLabel('loops').both('self'))], 
    'g_injectX1X_VXnullX': [(lambda g:g.inject(1).V(None))], 
    'g_injectX1X_VX1_nullX': [(lambda g, vid1=None:g.inject(1).V(vid1,None))], 
    'InjectXnullX_eqXnullX': [(lambda g:g.inject(None).is_(P.eq(None)))], 
    'InjectXnullX_neqXnullX': [(lambda g:g.inject(None).is_(P.neq(None)))], 
    'InjectXnullX_ltXnullX': [(lambda g:g.inject(None).is_(P.lt(None)))], 
    'InjectXnullX_lteXnullX': [(lambda g:g.inject(None).is_(P.lte(None)))], 
    'InjectXnullX_gtXnullX': [(lambda g:g.inject(None).is_(P.gt(None)))], 
    'InjectXnullX_gteXnullX': [(lambda g:g.inject(None).is_(P.gte(None)))], 
    'InjectXNaNX_eqXNaNX': [(lambda g, xx1=None:g.inject(xx1).is_(P.eq(float('nan'))))], 
    'InjectXNaNX_neqXNaNX': [(lambda g, xx1=None:g.inject(xx1).is_(P.neq(float('nan'))))], 
    'InjectXNaNX_ltXNaNX': [(lambda g, xx1=None:g.inject(xx1).is_(P.lt(float('nan'))))], 
    'InjectXNaNX_lteXNaNX': [(lambda g, xx1=None:g.inject(xx1).is_(P.lte(float('nan'))))], 
    'InjectXNaNX_gtXNaNX': [(lambda g, xx1=None:g.inject(xx1).is_(P.gt(float('nan'))))], 
    'InjectXNaNX_gteXNaNX': [(lambda g, xx1=None:g.inject(xx1).is_(P.gte(float('nan'))))], 
    'InjectX1dX_eqXNaNX': [(lambda g:g.inject(float(1.0)).is_(P.eq(float('nan'))))], 
    'InjectX1dX_neqXNaNX': [(lambda g:g.inject(float(1.0)).is_(P.neq(float('nan'))))], 
    'InjectX1dX_ltXNaNX': [(lambda g:g.inject(float(1.0)).is_(P.lt(float('nan'))))], 
    'InjectX1dX_lteXNaNX': [(lambda g:g.inject(float(1.0)).is_(P.lte(float('nan'))))], 
    'InjectX1dX_gtXNaNX': [(lambda g:g.inject(float(1.0)).is_(P.gt(float('nan'))))], 
    'InjectX1dX_gteXNaNX': [(lambda g:g.inject(float(1.0)).is_(P.gte(float('nan'))))], 
    'InjectXNaNX_eqXnullX': [(lambda g:g.inject(float('nan')).is_(P.eq(None)))], 
    'InjectXNaNX_neqXnullX': [(lambda g:g.inject(float('nan')).is_(P.neq(None)))], 
    'InjectXNaNX_ltXnullX': [(lambda g:g.inject(float('nan')).is_(P.lt(None)))], 
    'InjectXNaNX_lteXnullX': [(lambda g:g.inject(float('nan')).is_(P.lte(None)))], 
    'InjectXNaNX_gtXnullX': [(lambda g:g.inject(float('nan')).is_(P.gt(None)))], 
    'InjectXNaNX_gteXnullX': [(lambda g:g.inject(float('nan')).is_(P.gte(None)))], 
    'InjectXfooX_eqX1dX': [(lambda g:g.inject('foo').is_(P.eq(float(1.0))))], 
    'InjectXfooX_neqX1dX': [(lambda g:g.inject('foo').is_(P.neq(float(1.0))))], 
    'InjectXfooX_ltX1dX': [(lambda g:g.inject('foo').is_(P.lt(float(1.0))))], 
    'InjectXfooX_lteX1dX': [(lambda g:g.inject('foo').is_(P.lte(float(1.0))))], 
    'InjectXfooX_gtX1dX': [(lambda g:g.inject('foo').is_(P.gt(float(1.0))))], 
    'InjectXfooX_gteX1dX': [(lambda g:g.inject('foo').is_(P.gte(float(1.0))))], 
    'InjectX1dX_eqXfooX': [(lambda g:g.inject(float(1.0)).is_(P.eq('foo')))], 
    'InjectX1dX_neqXfooX': [(lambda g:g.inject(float(1.0)).is_(P.neq('foo')))], 
    'InjectX1dX_ltXfooX': [(lambda g:g.inject(float(1.0)).is_(P.lt('foo')))], 
    'InjectX1dX_lteXfooX': [(lambda g:g.inject(float(1.0)).is_(P.lte('foo')))], 
    'InjectX1dX_gtXfooX': [(lambda g:g.inject(float(1.0)).is_(P.gt('foo')))], 
    'InjectX1dX_gteXfooX': [(lambda g:g.inject(float(1.0)).is_(P.gte('foo')))], 
    'InjectX1dX_andXtrue_trueX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.eq(1)),__.is_(P.gt(0))))], 
    'InjectX1dX_isXtrue_trueX': [(lambda g:g.inject(float(1.0)).is_(P.eq(1).and_(P.gt(0))))], 
    'InjectX1dX_andXtrue_falseX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.eq(1)),__.is_(P.lt(0))))], 
    'InjectX1dX_isXtrue_falseX': [(lambda g:g.inject(float(1.0)).is_(P.eq(1).and_(P.lt(0))))], 
    'InjectX1dX_andXtrue_errorX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.eq(1)),__.is_(P.lt(float('nan')))))], 
    'InjectX1dX_isXtrue_errorX': [(lambda g:g.inject(float(1.0)).is_(P.eq(1).and_(P.lt(float('nan')))))], 
    'InjectX1dX_andXfalse_trueX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.neq(1)),__.is_(P.gt(0))))], 
    'InjectX1dX_isXfalse_trueX': [(lambda g:g.inject(float(1.0)).is_(P.neq(1).and_(P.gt(0))))], 
    'InjectX1dX_andXfalse_falseX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.neq(1)),__.is_(P.lt(0))))], 
    'InjectX1dX_isXfalse_falseX': [(lambda g:g.inject(float(1.0)).is_(P.neq(1).and_(P.lt(0))))], 
    'InjectX1dX_andXfalse_errorX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.neq(1)),__.is_(P.lt(float('nan')))))], 
    'InjectX1dX_isXfalse_errorX': [(lambda g:g.inject(float(1.0)).is_(P.neq(1).and_(P.lt(float('nan')))))], 
    'InjectX1dX_andXerror_trueX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.lt(float('nan'))),__.is_(P.gt(0))))], 
    'InjectX1dX_isXerror_trueX': [(lambda g:g.inject(float(1.0)).is_(P.lt(float('nan')).and_(P.gt(0))))], 
    'InjectX1dX_andXerror_falseX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.lt(float('nan'))),__.is_(P.gt(2))))], 
    'InjectX1dX_isXerror_falseX': [(lambda g:g.inject(float(1.0)).is_(P.lt(float('nan')).and_(P.gt(2))))], 
    'InjectX1dX_andXerror_errorX': [(lambda g:g.inject(float(1.0)).and_(__.is_(P.lt(float('nan'))),__.is_(P.gt(float('nan')))))], 
    'InjectX1dX_isXerror_errorX': [(lambda g:g.inject(float(1.0)).is_(P.lt(float('nan')).and_(P.gt(float('nan')))))], 
    'InjectX1dX_orXtrue_trueX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.eq(1)),__.is_(P.gt(0))))], 
    'InjectX1dX_isXtrue_or_trueX': [(lambda g:g.inject(float(1.0)).is_(P.eq(1).or_(P.gt(0))))], 
    'InjectX1dX_orXtrue_falseX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.eq(1)),__.is_(P.lt(0))))], 
    'InjectX1dX_isXtrue_or_falseX': [(lambda g:g.inject(float(1.0)).is_(P.eq(1).or_(P.lt(0))))], 
    'InjectX1dX_orXtrue_errorX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.eq(1)),__.is_(P.lt(float('nan')))))], 
    'InjectX1dX_isXtrue_or_errorX': [(lambda g:g.inject(float(1.0)).is_(P.eq(1).or_(P.lt(float('nan')))))], 
    'InjectX1dX_orXfalse_trueX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.neq(1)),__.is_(P.gt(0))))], 
    'InjectX1dX_isXfalse_or_trueX': [(lambda g:g.inject(float(1.0)).is_(P.neq(1).or_(P.gt(0))))], 
    'InjectX1dX_orXfalse_falseX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.neq(1)),__.is_(P.lt(0))))], 
    'InjectX1dX_isXfalse_or_falseX': [(lambda g:g.inject(float(1.0)).is_(P.neq(1).or_(P.lt(0))))], 
    'InjectX1dX_orXfalse_errorX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.neq(1)),__.is_(P.lt(float('nan')))))], 
    'InjectX1dX_isXfalse_or_errorX': [(lambda g:g.inject(float(1.0)).is_(P.neq(1).or_(P.lt(float('nan')))))], 
    'InjectX1dX_orXerror_trueX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.lt(float('nan'))),__.is_(P.gt(0))))], 
    'InjectX1dX_isXerror_or_trueX': [(lambda g:g.inject(float(1.0)).is_(P.lt(float('nan')).or_(P.gt(0))))], 
    'InjectX1dX_orXerror_falseX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.lt(float('nan'))),__.is_(P.gt(2))))], 
    'InjectX1dX_isXerror_or_falseX': [(lambda g:g.inject(float(1.0)).is_(P.lt(float('nan')).or_(P.gt(2))))], 
    'InjectX1dX_orXerror_errorX': [(lambda g:g.inject(float(1.0)).or_(__.is_(P.lt(float('nan'))),__.is_(P.gt(float('nan')))))], 
    'InjectX1dX_isXerror_or_errorX': [(lambda g:g.inject(float(1.0)).is_(P.lt(float('nan')).or_(P.gt(float('nan')))))], 
    'InjectX1dX_notXtrueX': [(lambda g:g.inject(float(1.0)).not_(__.is_(P.gt(0))))], 
    'InjectX1dX_notXfalseX': [(lambda g:g.inject(float(1.0)).not_(__.is_(P.lt(0))))], 
    'InjectX1dX_notXerrorX': [(lambda g:g.inject(float(1.0)).not_(__.is_(P.gt(float('nan')))))], 
    'InjectX1dX_notXisXeqXNaNXXX': [(lambda g:g.inject(float(1.0)).not_(__.is_(P.eq(float('nan')))))], 
    'InjectXInfX_eqXInfX': [(lambda g:g.inject(float('inf')).is_(P.eq(float('inf'))))], 
    'InjectXInfArgX_eqXInfX': [(lambda g, xx1=None:g.inject(xx1).is_(P.eq(float('inf'))))], 
    'InjectXInfX_neqXInfX': [(lambda g:g.inject(float('inf')).is_(P.neq(float('inf'))))], 
    'InjectXInfArgX_neqXInfX': [(lambda g, xx1=None:g.inject(xx1).is_(P.neq(float('inf'))))], 
    'InjectXNegInfX_eqXNegInfX': [(lambda g:g.inject(float('-inf')).is_(P.eq(float('-inf'))))], 
    'InjectXNegInfArgX_eqXNegInfX': [(lambda g, xx1=None:g.inject(xx1).is_(P.eq(float('-inf'))))], 
    'InjectXNegInfX_neqXNegInfX': [(lambda g:g.inject(float('-inf')).is_(P.neq(float('-inf'))))], 
    'InjectXNegInfArgX_neqXNegInfX': [(lambda g, xx1=None:g.inject(xx1).is_(P.neq(float('-inf'))))], 
    'InjectXInfX_gtXNegInfX': [(lambda g:g.inject(float('inf')).is_(P.gt(float('-inf'))))], 
    'InjectXInfX_ltXNegInfX': [(lambda g:g.inject(float('inf')).is_(P.lt(float('-inf'))))], 
    'InjectXNegInfX_ltXInfX': [(lambda g:g.inject(float('-inf')).is_(P.lt(float('inf'))))], 
    'InjectXNegInfX_gtXInfX': [(lambda g:g.inject(float('-inf')).is_(P.gt(float('inf'))))], 
    'Primitives_Number_eqXbyteX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'Primitives_Number_eqXshortX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'Primitives_Number_eqXintX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'Primitives_Number_eqXlongX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'Primitives_Number_eqXbigintX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'Primitives_Number_eqXfloatX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'Primitives_Number_eqXdoubleX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'Primitives_Number_eqXbigdecimalX': [(lambda g, xx1=None,xx2=None:g.inject(xx1).unfold().where(__.is_(xx2)))], 
    'g_V_values_order': [(lambda g:g.V().values().order())], 
    'g_V_properties_order': [(lambda g:g.V().properties().order())], 
    'g_V_properties_order_id': [(lambda g:g.V().properties().order().id_())], 
    'g_E_properties_order_value': [(lambda g:g.E().properties().order().value())], 
    'g_E_properties_order_byXdescX_value': [(lambda g:g.E().properties().order().by(Order.desc).value())], 
    'g_inject_order': [(lambda g, xx10=None,xx1=None,xx3=None,xx2=None,xx5=None,xx4=None,xx7=None,xx6=None,xx9=None,xx11=None,xx8=None,xx12=None,xx13=None,xx14=None,xx15=None:g.inject(xx8,xx7,xx10,xx4,xx9,xx12,xx1,xx5,xx11,xx6,xx3,xx2,xx13,xx14,xx15).order())], 
    'g_inject_order_byXdescX': [(lambda g, xx10=None,xx1=None,xx3=None,xx2=None,xx5=None,xx4=None,xx7=None,xx6=None,xx9=None,xx11=None,xx8=None,xx12=None,xx13=None,xx14=None,xx15=None:g.inject(xx8,xx7,xx10,xx4,xx9,xx12,xx1,xx5,xx11,xx6,xx3,xx2,xx13,xx14,xx15).order().by(Order.desc))], 
    'g_V_out_out_order_byXascX': [(lambda g:g.V().out().out().order().by(Order.asc))], 
    'g_V_out_out_order_byXdescX': [(lambda g:g.V().out().out().order().by(Order.desc))], 
    'g_V_out_out_asXheadX_path_order_byXascX_selectXheadX': [(lambda g:g.V().out().out().as_('head').path().order().by(Order.asc).select('head'))], 
    'g_V_out_out_asXheadX_path_order_byXdescX_selectXheadX': [(lambda g:g.V().out().out().as_('head').path().order().by(Order.desc).select('head'))], 
    'g_V_out_outE_order_byXascX': [(lambda g:g.V().out().outE().order().by(Order.asc))], 
    'g_V_out_outE_order_byXdescX': [(lambda g:g.V().out().outE().order().by(Order.desc))], 
    'g_V_out_outE_asXheadX_path_order_byXascX_selectXheadX': [(lambda g:g.V().out().outE().as_('head').path().order().by(Order.asc).select('head'))], 
    'g_V_out_outE_asXheadX_path_order_byXdescX_selectXheadX': [(lambda g:g.V().out().outE().as_('head').path().order().by(Order.desc).select('head'))], 
    'g_V_out_out_properties_asXheadX_path_order_byXascX_selectXheadX_value': [(lambda g:g.V().out().out().properties().as_('head').path().order().by(Order.asc).select('head').value())], 
    'g_V_out_out_properties_asXheadX_path_order_byXdescX_selectXheadX_value': [(lambda g:g.V().out().out().properties().as_('head').path().order().by(Order.desc).select('head').value())], 
    'g_V_out_out_values_asXheadX_path_order_byXascX_selectXheadX': [(lambda g:g.V().out().out().values().as_('head').path().order().by(Order.asc).select('head'))], 
    'g_V_out_out_values_asXheadX_path_order_byXdescX_selectXheadX': [(lambda g:g.V().out().out().values().as_('head').path().order().by(Order.desc).select('head'))], 
    'g_V_valueXnameX_aggregateXxX_capXxX': [(lambda g:g.V().name.aggregate('x').cap('x'))], 
    'g_V_valueXnameX_aggregateXglobal_xX_capXxX': [(lambda g:g.V().name.aggregate(Scope.global_,'x').cap('x'))], 
    'g_V_aggregateXxX_byXnameX_capXxX': [(lambda g:g.V().aggregate('x').by('name').cap('x'))], 
    'g_V_out_aggregateXaX_path': [(lambda g:g.V().out().aggregate('a').path())], 
    'g_V_hasLabelXpersonX_aggregateXxX_byXageX_capXxX_asXyX_selectXyX': [(lambda g:g.V().hasLabel('person').aggregate('x').by('age').cap('x').as_('y').select('y'))], 
    'g_V_aggregateXxX_byXageX_capXxX': [(lambda g:g.V().aggregate('x').by('age').cap('x'))], 
    'g_V_aggregateXlocal_xX_byXageX_capXxX': [(lambda g:g.V().aggregate(Scope.local,'x').by('age').cap('x'))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXlocal_xX_byXageX_capXxX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate(Scope.local,'x').by('age').cap('x'))], 
    'g_V_aggregateXlocal_a_nameX_out_capXaX': [(lambda g:g.V().aggregate(Scope.local,'a').by('name').out().cap('a'))], 
    'g_VX1X_aggregateXlocal_aX_byXnameX_out_aggregateXlocal_aX_byXnameX_name_capXaX': [(lambda g, vid1=None:g.V(vid1).aggregate(Scope.local,'a').by('name').out().aggregate(Scope.local,'a').by('name').name.cap('a'))], 
    'g_withSideEffectXa_setX_V_both_name_aggregateXlocal_aX_capXaX': [(lambda g, xx1=None:g.withSideEffect('a',xx1).V().both().name.aggregate(Scope.local,'a').cap('a'))], 
    'g_V_aggregateXlocal_aX_byXoutEXcreatedX_countX_out_out_aggregateXlocal_aX_byXinEXcreatedX_weight_sumX': [(lambda g:g.V().aggregate(Scope.local,'a').by(__.outE('created').count()).out().out().aggregate(Scope.local,'a').by(__.inE('created').weight.sum_()).cap('a'))], 
    'g_V_aggregateXxX_byXvaluesXageX_isXgtX29XXX_capXxX': [(lambda g:g.V().aggregate('x').by(__.age.is_(P.gt(29))).cap('x'))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXxX_byXvaluesXageX_isXgtX29XXX_capXxX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('x').by(__.age.is_(P.gt(29))).cap('x'))], 
    'g_V_aggregateXxX_byXout_order_byXnameXX_capXxX': [(lambda g:g.V().aggregate('x').by(__.out().order().by('name')).cap('x'))], 
    'g_withStrategiesXProductiveByStrategyX_V_aggregateXxX_byXout_order_byXnameXX_capXxX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().aggregate('x').by(__.out().order().by('name')).cap('x'))], 
    'g_V_fail': [(lambda g:g.V().fail())], 
    'g_V_failXmsgX': [(lambda g:g.V().fail('msg'))], 
    'g_V_unionXout_failX': [(lambda g:g.V().union(__.out(),__.fail()))], 
    'g_V_group_byXnameX': [(lambda g:g.V().group().by('name'))], 
    'g_V_group_byXageX': [(lambda g:g.V().group().by('age'))], 
    'g_withStrategiesXProductiveByStrategyX_V_group_byXageX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().group().by('age'))], 
    'g_V_group_byXnameX_byXageX': [(lambda g:g.V().group().by('name').by('age'))], 
    'g_V_group_byXnameX_by': [(lambda g:g.V().group().by('name').by())], 
    'g_V_groupXaX_byXnameX_capXaX': [(lambda g:g.V().group('a').by('name').cap('a'))], 
    'g_V_hasXlangX_groupXaX_byXlangX_byXnameX_out_capXaX': [(lambda g:g.V().has('lang').group('a').by('lang').by('name').out().cap('a'))], 
    'g_V_hasXlangX_group_byXlangX_byXcountX': [(lambda g:g.V().has('lang').group().by('lang').by(__.count()))], 
    'g_V_repeatXout_groupXaX_byXnameX_byXcountX_timesX2X_capXaX': [(lambda g:g.V().repeat(__.out().group('a').by('name').by(__.count())).times(2).cap('a'))], 
    'g_V_group_byXoutE_countX_byXnameX': [(lambda g:g.V().order().by('name').group().by(__.outE().count()).by('name'))], 
    'g_V_groupXaX_byXlabelX_byXoutE_weight_sumX_capXaX': [(lambda g:g.V().group('a').by(T.label).by(__.outE().weight.sum_()).cap('a'))], 
    'g_V_repeatXbothXfollowedByXX_timesX2X_group_byXsongTypeX_byXcountX': [(lambda g:g.V().repeat(__.both('followedBy')).times(2).group().by('songType').by(__.count()))], 
    'g_V_repeatXbothXfollowedByXX_timesX2X_groupXaX_byXsongTypeX_byXcountX_capXaX': [(lambda g:g.V().repeat(__.both('followedBy')).times(2).group('a').by('songType').by(__.count()).cap('a'))], 
    'g_V_group_byXname_substring_1X_byXconstantX1XX': [(lambda g, l1=None:g.V().group().by(l1).by(__.constant(1)))], 
    'g_V_groupXaX_byXname_substring_1X_byXconstantX1XX_capXaX': [(lambda g, l1=None:g.V().group('a').by(l1).by(__.constant(1)).cap('a'))], 
    'g_V_out_group_byXlabelX_selectXpersonX_unfold_outXcreatedX_name_limitX2X': [(lambda g:g.V().out().group().by(T.label).select('person').unfold().out('created').name[0:2])], 
    'g_V_hasLabelXsongX_group_byXnameX_byXproperties_groupCount_byXlabelXX': [(lambda g:g.V().hasLabel('song').group().by('name').by(__.properties().groupCount().by(T.label)))], 
    'g_V_hasLabelXsongX_groupXaX_byXnameX_byXproperties_groupCount_byXlabelXX_out_capXaX': [(lambda g:g.V().hasLabel('song').group('a').by('name').by(__.properties().groupCount().by(T.label)).out().cap('a'))], 
    'g_V_outXfollowedByX_group_byXsongTypeX_byXbothE_group_byXlabelX_byXweight_sumXX': [(lambda g:g.V().out('followedBy').group().by('songType').by(__.bothE().group().by(T.label).by(__.weight.sum_())))], 
    'g_V_groupXmX_byXnameX_byXinXknowsX_nameX_capXmX': [(lambda g:g.V().group('m').by('name').by(__.in_('knows').name).cap('m'))], 
    'g_V_group_byXlabelX_byXbothE_groupXaX_byXlabelX_byXweight_sumX_weight_sumX': [(lambda g:g.V().group().by(T.label).by(__.bothE().group('a').by(T.label).by(__.weight.sum_()).weight.sum_()))], 
    'g_V_hasLabelXpersonX_asXpX_outXcreatedX_group_byXnameX_byXselectXpX_valuesXageX_sumX': [(lambda g:g.V().hasLabel('person').as_('p').out('created').group().by('name').by(__.select('p').age.sum_()))], 
    'g_V_hasLabelXpersonX_asXpX_outXcreatedX_groupXaX_byXnameX_byXselectXpX_valuesXageX_sumX_capXaX': [(lambda g:g.V().hasLabel('person').as_('p').out('created').group('a').by('name').by(__.select('p').age.sum_()).cap('a'))], 
    'g_V_group_byXlabelX_byXlabel_countX': [(lambda g:g.V().group().by(__.label()).by(__.label().count()))], 
    'g_V_groupXmX_byXlabelX_byXlabel_countX_capXmX': [(lambda g:g.V().group('m').by(__.label()).by(__.label().count()).cap('m'))], 
    'g_V_outXcreatedX_groupCount_byXnameX': [(lambda g:g.V().out('created').groupCount().by('name'))], 
    'g_V_groupCount_byXageX': [(lambda g:g.V().groupCount().by('age'))], 
    'g_withStrategiesXProductiveByStrategyX_V_groupCount_byXageX': [(lambda g:g.withStrategies(*[TraversalStrategy('ProductiveByStrategy',{'productiveKeys':[],'strategy':'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy'}, 'org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy')]).V().groupCount().by('age'))], 
    'g_V_outXcreatedX_name_groupCount': [(lambda g:g.V().out('created').name.groupCount())], 
    'g_V_outXcreatedX_groupCountXaX_byXnameX_capXaX': [(lambda g:g.V().out('created').groupCount('a').by('name').cap('a'))], 
    'g_V_outXcreatedX_name_groupCountXaX_capXaX': [(lambda g:g.V().out('created').name.groupCount('a').cap('a'))], 
    'g_V_repeatXout_groupCountXaX_byXnameXX_timesX2X_capXaX': [(lambda g:g.V().repeat(__.out().groupCount('a').by('name')).times(2).cap('a'))], 
    'g_V_both_groupCountXaX_byXlabelX_asXbX_barrier_whereXselectXaX_selectXsoftwareX_isXgtX2XXX_selectXbX_name': [(lambda g:g.V().both().groupCount('a').by(T.label).as_('b').barrier().where(__.select('a').select('software').is_(P.gt(2))).select('b').name)], 
    'g_V_unionXoutXknowsX__outXcreatedX_inXcreatedXX_groupCount_selectXvaluesX_unfold_sum': [(lambda g:g.V().union(__.out('knows'),__.out('created').in_('created')).groupCount().select(Column.values).unfold().sum_())], 
    'g_V_hasXnoX_groupCount': [(lambda g:g.V().has('no').groupCount())], 
    'g_V_hasXnoX_groupCountXaX_capXaX': [(lambda g:g.V().has('no').groupCount('a').cap('a'))], 
    'g_V_unionXrepeatXoutX_timesX2X_groupCountXmX_byXlangXX__repeatXinX_timesX2X_groupCountXmX_byXnameXX_capXmX': [(lambda g:g.V().union(__.repeat(__.out()).times(2).groupCount('m').by('lang'),__.repeat(__.in_()).times(2).groupCount('m').by('name')).cap('m'))], 
    'g_V_outXcreatedX_groupCountXxX_capXxX': [(lambda g:g.V().out('created').groupCount('x').cap('x'))], 
    'g_V_groupCount_byXbothE_countX': [(lambda g:g.V().groupCount().by(__.bothE().count()))], 
    'g_V_both_groupCountXaX_out_capXaX_selectXkeysX_unfold_both_groupCountXaX_capXaX': [(lambda g:g.V().both().groupCount('a').out().cap('a').select(Column.keys).unfold().both().groupCount('a').cap('a'))], 
    'g_V_hasXperson_name_markoX_bothXknowsX_groupCount_byXvaluesXnameX_foldX': [(lambda g:g.V().has('person','name','marko').both('knows').groupCount().by(__.name.fold()))], 
    'g_VX1X_out_injectXv2X_name': [(lambda g, vid1=None,v2=None:g.V(vid1).out().inject(v2).name)], 
    'g_VX1X_out_name_injectXdanielX_asXaX_mapXlengthX_path': [(lambda g, l1=None,vid1=None:g.V(vid1).out().name.inject('daniel').as_('a').map(l1).path())], 
    'g_VX1X_injectXg_VX4XX_out_name': [(lambda g, vid1=None,v2=None:g.V(vid1).inject(v2).out().name)], 
    'g_injectXnull_1_3_nullX': [(lambda g:g.inject(None,1,3,None))], 
    'g_injectX10_20_null_20_10_10X_groupCountXxX_dedup_asXyX_projectXa_bX_by_byXselectXxX_selectXselectXyXXX': [(lambda g:g.inject(10,20,None,20,10,10).groupCount('x').dedup().as_('y').project('a','b').by().by(__.select('x').select(__.select('y'))))], 
    'g_injectXname_marko_age_nullX_selectXname_ageX': [(lambda g, xx1=None:g.inject(xx1).select('name','age'))], 
    'g_injectXnull_nullX': [(lambda g:g.inject(None,None))], 
    'g_injectXnullX': [(lambda g:g.inject(None))], 
    'g_inject': [(lambda g:g.inject())], 
    'g_VX1X_valuesXageX_injectXnull_nullX': [(lambda g, xx1=None:g.V(xx1).age.inject(None,None))], 
    'g_VX1X_valuesXageX_injectXnullX': [(lambda g, xx1=None:g.V(xx1).age.inject(None))], 
    'g_VX1X_valuesXageX_inject': [(lambda g, xx1=None:g.V(xx1).age.inject())], 
    'g_injectXnull_1_3_nullX_asXaX_selectXaX': [(lambda g:g.inject(None,1,3,None).as_('a').select('a'))], 
    'g_io_readXkryoX': [(lambda g:g.io('data/tinkerpop-modern.kryo').read()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_io_read_withXreader_gryoX': [(lambda g:g.io('data/tinkerpop-modern.kryo').with_('~tinkerpop.io.reader','gryo').read()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_io_readXgraphsonX': [(lambda g:g.io('data/tinkerpop-modern.json').read()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_io_read_withXreader_graphsonX': [(lambda g:g.io('data/tinkerpop-modern.json').with_('~tinkerpop.io.reader','graphson').read()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_io_readXgraphmlX': [(lambda g:g.io('data/tinkerpop-modern.xml').read()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_io_read_withXreader_graphmlX': [(lambda g:g.io('data/tinkerpop-modern.xml').with_('~tinkerpop.io.reader','graphml').read()), (lambda g:g.V()), (lambda g:g.E())], 
    'g_withSackXhelloX_V_outE_sackXassignX_byXlabelX_inV_sack': [(lambda g:g.withSack('hello').V().outE().sack(Operator.assign).by(T.label).in_v().sack())], 
    'g_withSackX0X_V_outE_sackXsumX_byXweightX_inV_sack_sum': [(lambda g:g.withSack(float(0.0)).V().outE().sack(Operator.sum_).by('weight').in_v().sack().sum_())], 
    'g_withSackX0X_V_repeatXoutE_sackXsumX_byXweightX_inVX_timesX2X_sack': [(lambda g:g.withSack(float(0.0)).V().repeat(__.outE().sack(Operator.sum_).by('weight').in_v()).times(2).sack())], 
    'g_withBulkXfalseX_withSackX1_sumX_VX1X_localXoutEXknowsX_barrierXnormSackX_inVX_inXknowsX_barrier_sack': [(lambda g, vid1=None:g.withBulk(False).withSack(float(1.0),Operator.sum_).V(vid1).local(__.outE('knows').barrier(Barrier.normSack).in_v()).in_('knows').barrier().sack())], 
    'g_withBulkXfalseX_withSackX1_sumX_V_out_barrier_sack': [(lambda g:g.withBulk(False).withSack(1,Operator.sum_).V().out().barrier().sack())], 
    'g_withSackX1_sumX_VX1X_localXoutXknowsX_barrierXnormSackXX_inXknowsX_barrier_sack': [(lambda g, vid1=None:g.withSack(float(1.0),Operator.sum_).V(vid1).local(__.out('knows').barrier(Barrier.normSack)).in_('knows').barrier().sack())], 
    'g_V_sackXassignX_byXageX_sack': [(lambda g:g.V().sack(Operator.assign).by('age').sack())], 
    'g_V_hasXageX_groupCountXaX_byXnameX_out_capXaX': [(lambda g:g.V().has('age').groupCount('a').by('name').out().cap('a'))], 
    'g_V_storeXa_nameX_out_capXaX': [(lambda g:g.V().store('a').by('name').out().cap('a'))], 
    'g_VX1X_storeXaX_byXnameX_out_storeXaX_byXnameX_name_capXaX': [(lambda g, vid1=None:g.V(vid1).store('a').by('name').out().store('a').by('name').name.cap('a'))], 
    'g_withSideEffectXa_setX_V_both_name_storeXaX_capXaX': [(lambda g, xx1=None:g.withSideEffect('a',xx1).V().both().name.store('a').cap('a'))], 
    'g_V_storeXaX_byXoutEXcreatedX_countX_out_out_storeXaX_byXinEXcreatedX_weight_sumX': [(lambda g:g.V().store('a').by(__.outE('created').count()).out().out().store('a').by(__.inE('created').weight.sum_()).cap('a'))], 
}
