[
  bless( {
    'P6C::directive::args' => undef,
    'P6C::directive::thing' => 'strict',
    'P6C::directive::name' => 'use'
  }, 'P6C::directive' ),
  bless( {
    'P6C::directive::args' => undef,
    'P6C::directive::thing' => 'warnings',
    'P6C::directive::name' => 'use'
  }, 'P6C::directive' ),
  bless( {
    'P6C::decl::qual' => bless( {
      'P6C::scope_class::scope' => 'my',
      'P6C::scope_class::class' => undef
    }, 'P6C::scope_class' ),
    'P6C::decl::vars' => [
      bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$root',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' ),
      bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$n',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' )
    ],
    'P6C::decl::props' => []
  }, 'P6C::decl' ),
  bless( {
    'P6C::prefix::name' => 'while',
    'P6C::prefix::args' => bless( {
      'P6C::ValueList::vals' => [
        bless( {
          'P6C::compare::seq' => [
            bless( {
              'P6C::incr::op' => '++',
              'P6C::incr::post' => 1,
              'P6C::incr::thing' => bless( {
                'P6C::variable::type' => 'PerlUndef',
                'P6C::variable::topical' => '',
                'P6C::variable::name' => '$n',
                'P6C::variable::global' => '',
                'P6C::variable::implicit' => 0
              }, 'P6C::variable' )
            }, 'P6C::incr' ),
            '<',
            bless( {
              'P6C::sv_literal::lval' => '20',
              'P6C::sv_literal::type' => 'PerlInt'
            }, 'P6C::sv_literal' )
          ]
        }, 'P6C::compare' ),
        bless( {
          'P6C::closure::params' => undef,
          'P6C::closure::block' => [
            bless( {
              'P6C::prefix::name' => 'insert',
              'P6C::prefix::args' => bless( {
                'P6C::Binop::r' => bless( {
                  'P6C::prefix::name' => 'int',
                  'P6C::prefix::args' => bless( {
                    'P6C::prefix::name' => 'rand',
                    'P6C::prefix::args' => bless( {
                      'P6C::sv_literal::lval' => '1000',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::prefix' )
                }, 'P6C::prefix' ),
                'P6C::Binop::op' => ',',
                'P6C::Binop::l' => bless( {
                  'P6C::variable::type' => 'PerlUndef',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '$root',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::Binop' )
            }, 'P6C::prefix' )
          ]
        }, 'P6C::closure' )
      ]
    }, 'P6C::ValueList' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'print',
    'P6C::prefix::args' => bless( {
      'P6C::sv_literal::lval' => '"Pre order:  "',
      'P6C::sv_literal::type' => 'PerlString'
    }, 'P6C::sv_literal' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'show',
    'P6C::prefix::args' => bless( {
      'P6C::Binop::r' => bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$pre',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' ),
      'P6C::Binop::op' => ',',
      'P6C::Binop::l' => bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$root',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' )
    }, 'P6C::Binop' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'print',
    'P6C::prefix::args' => bless( {
      'P6C::sv_literal::lval' => '"\\n"',
      'P6C::sv_literal::type' => 'PerlString'
    }, 'P6C::sv_literal' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'print',
    'P6C::prefix::args' => bless( {
      'P6C::sv_literal::lval' => '"In order:   "',
      'P6C::sv_literal::type' => 'PerlString'
    }, 'P6C::sv_literal' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'show',
    'P6C::prefix::args' => bless( {
      'P6C::Binop::r' => bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$in',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' ),
      'P6C::Binop::op' => ',',
      'P6C::Binop::l' => bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$root',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' )
    }, 'P6C::Binop' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'print',
    'P6C::prefix::args' => bless( {
      'P6C::sv_literal::lval' => '"\\n"',
      'P6C::sv_literal::type' => 'PerlString'
    }, 'P6C::sv_literal' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'print',
    'P6C::prefix::args' => bless( {
      'P6C::sv_literal::lval' => '"Post order: "',
      'P6C::sv_literal::type' => 'PerlString'
    }, 'P6C::sv_literal' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'show',
    'P6C::prefix::args' => bless( {
      'P6C::Binop::r' => bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$post',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' ),
      'P6C::Binop::op' => ',',
      'P6C::Binop::l' => bless( {
        'P6C::variable::type' => 'PerlUndef',
        'P6C::variable::topical' => '',
        'P6C::variable::name' => '$root',
        'P6C::variable::global' => '',
        'P6C::variable::implicit' => 0
      }, 'P6C::variable' )
    }, 'P6C::Binop' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'print',
    'P6C::prefix::args' => bless( {
      'P6C::sv_literal::lval' => '"\\n"',
      'P6C::sv_literal::type' => 'PerlString'
    }, 'P6C::sv_literal' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::prefix::name' => 'while',
    'P6C::prefix::args' => bless( {
      'P6C::ValueList::vals' => [
        bless( {
          'P6C::prefix::name' => 'readline',
          'P6C::prefix::args' => bless( {
            'P6C::variable::type' => 'PerlUndef',
            'P6C::variable::topical' => '',
            'P6C::variable::name' => '$ARGS',
            'P6C::variable::global' => '',
            'P6C::variable::implicit' => 0
          }, 'P6C::variable' )
        }, 'P6C::prefix' ),
        bless( {
          'P6C::closure::params' => undef,
          'P6C::closure::block' => [
            bless( {
              'P6C::prefix::name' => 'if',
              'P6C::prefix::args' => [
                [
                  undef,
                  bless( {
                    'P6C::Binop::r' => bless( {
                      'P6C::prefix::name' => 'search',
                      'P6C::prefix::args' => bless( {
                        'P6C::Binop::r' => bless( {
                          'P6C::variable::type' => 'PerlUndef',
                          'P6C::variable::topical' => '',
                          'P6C::variable::name' => '$_',
                          'P6C::variable::global' => '',
                          'P6C::variable::implicit' => 0
                        }, 'P6C::variable' ),
                        'P6C::Binop::op' => ',',
                        'P6C::Binop::l' => bless( {
                          'P6C::variable::type' => 'PerlUndef',
                          'P6C::variable::topical' => '',
                          'P6C::variable::name' => '$root',
                          'P6C::variable::global' => '',
                          'P6C::variable::implicit' => 0
                        }, 'P6C::variable' )
                      }, 'P6C::Binop' )
                    }, 'P6C::prefix' ),
                    'P6C::Binop::op' => '=',
                    'P6C::Binop::l' => bless( {
                      'P6C::decl::qual' => bless( {
                        'P6C::scope_class::scope' => 'my',
                        'P6C::scope_class::class' => undef
                      }, 'P6C::scope_class' ),
                      'P6C::decl::vars' => bless( {
                        'P6C::variable::type' => 'PerlUndef',
                        'P6C::variable::topical' => '',
                        'P6C::variable::name' => '$node',
                        'P6C::variable::global' => '',
                        'P6C::variable::implicit' => 0
                      }, 'P6C::variable' ),
                      'P6C::decl::props' => []
                    }, 'P6C::decl' )
                  }, 'P6C::Binop' ),
                  bless( {
                    'P6C::closure::params' => undef,
                    'P6C::closure::block' => [
                      bless( {
                        'P6C::prefix::name' => 'print',
                        'P6C::prefix::args' => bless( {
                          'P6C::sv_literal::lval' => '"Found $_ at $node: $node{VALUE}\\n"',
                          'P6C::sv_literal::type' => 'PerlString'
                        }, 'P6C::sv_literal' )
                      }, 'P6C::prefix' ),
                      bless( {
                        'P6C::guard::expr' => bless( {
                          'P6C::prefix::name' => 'print',
                          'P6C::prefix::args' => bless( {
                            'P6C::sv_literal::lval' => '"(again!)\\n"',
                            'P6C::sv_literal::type' => 'PerlString'
                          }, 'P6C::sv_literal' )
                        }, 'P6C::prefix' ),
                        'P6C::guard::name' => 'if',
                        'P6C::guard::test' => bless( {
                          'P6C::compare::seq' => [
                            bless( {
                              'P6C::Binop::r' => bless( {
                                'P6C::apply_rhs::subscripts' => [],
                                'P6C::apply_rhs::prop' => 'Found'
                              }, 'P6C::apply_rhs' ),
                              'P6C::Binop::op' => '.',
                              'P6C::Binop::l' => bless( {
                                'P6C::subscript_exp::subscripts' => [
                                  bless( {
                                    'P6C::indices::type' => 'PerlHash',
                                    'P6C::indices::indices' => bless( {
                                      'P6C::sv_literal::lval' => '"VALUE"',
                                      'P6C::sv_literal::type' => 'PerlString'
                                    }, 'P6C::sv_literal' )
                                  }, 'P6C::indices' )
                                ],
                                'P6C::subscript_exp::thing' => bless( {
                                  'P6C::variable::type' => 'PerlUndef',
                                  'P6C::variable::topical' => '',
                                  'P6C::variable::name' => '$node',
                                  'P6C::variable::global' => '',
                                  'P6C::variable::implicit' => 0
                                }, 'P6C::variable' )
                              }, 'P6C::subscript_exp' )
                            }, 'P6C::Binop' ),
                            '>',
                            bless( {
                              'P6C::sv_literal::lval' => '1',
                              'P6C::sv_literal::type' => 'PerlInt'
                            }, 'P6C::sv_literal' )
                          ]
                        }, 'P6C::compare' )
                      }, 'P6C::guard' )
                    ]
                  }, 'P6C::closure' )
                ],
                [
                  'else',
                  1,
                  bless( {
                    'P6C::closure::params' => undef,
                    'P6C::closure::block' => [
                      bless( {
                        'P6C::prefix::name' => 'print',
                        'P6C::prefix::args' => bless( {
                          'P6C::sv_literal::lval' => '"No $_ in tree\\n"',
                          'P6C::sv_literal::type' => 'PerlString'
                        }, 'P6C::sv_literal' )
                      }, 'P6C::prefix' )
                    ]
                  }, 'P6C::closure' )
                ]
              ]
            }, 'P6C::prefix' )
          ]
        }, 'P6C::closure' )
      ]
    }, 'P6C::ValueList' )
  }, 'P6C::prefix' ),
  bless( {
    'P6C::sub_def::props' => [],
    'P6C::sub_def::qual' => undef,
    'P6C::sub_def::name' => 'insert',
    'P6C::sub_def::closure' => bless( {
      'P6C::closure::params' => bless( {
        'P6C::params::req' => [
          bless( {
            'P6C::param::init' => undef,
            'P6C::param::props' => [
              bless( {
                'P6C::property::name' => 'rw',
                'P6C::property::args' => undef
              }, 'P6C::property' )
            ],
            'P6C::param::qual' => bless( {
              'P6C::scope_class::scope' => undef,
              'P6C::scope_class::class' => 'HASH'
            }, 'P6C::scope_class' ),
            'P6C::param::var' => bless( {
              'P6C::variable::type' => 'PerlUndef',
              'P6C::variable::topical' => '',
              'P6C::variable::name' => '$tree',
              'P6C::variable::global' => '',
              'P6C::variable::implicit' => 0
            }, 'P6C::variable' )
          }, 'P6C::param' ),
          bless( {
            'P6C::param::init' => undef,
            'P6C::param::props' => [],
            'P6C::param::qual' => bless( {
              'P6C::scope_class::scope' => undef,
              'P6C::scope_class::class' => 'int'
            }, 'P6C::scope_class' ),
            'P6C::param::var' => bless( {
              'P6C::variable::type' => 'PerlUndef',
              'P6C::variable::topical' => '',
              'P6C::variable::name' => '$val',
              'P6C::variable::global' => '',
              'P6C::variable::implicit' => 0
            }, 'P6C::variable' )
          }, 'P6C::param' )
        ],
        'P6C::params::rest' => undef,
        'P6C::params::opt' => []
      }, 'P6C::params' ),
      'P6C::closure::block' => [
        bless( {
          'P6C::prefix::name' => 'unless',
          'P6C::prefix::args' => [
            [
              undef,
              bless( {
                'P6C::variable::type' => 'PerlUndef',
                'P6C::variable::topical' => '',
                'P6C::variable::name' => '$tree',
                'P6C::variable::global' => '',
                'P6C::variable::implicit' => 0
              }, 'P6C::variable' ),
              bless( {
                'P6C::closure::params' => undef,
                'P6C::closure::block' => [
                  bless( {
                    'P6C::decl::qual' => bless( {
                      'P6C::scope_class::scope' => 'my',
                      'P6C::scope_class::class' => undef
                    }, 'P6C::scope_class' ),
                    'P6C::decl::vars' => bless( {
                      'P6C::variable::type' => 'PerlHash',
                      'P6C::variable::topical' => '',
                      'P6C::variable::name' => '%node',
                      'P6C::variable::global' => '',
                      'P6C::variable::implicit' => 0
                    }, 'P6C::variable' ),
                    'P6C::decl::props' => []
                  }, 'P6C::decl' ),
                  bless( {
                    'P6C::Binop::r' => bless( {
                      'P6C::variable::type' => 'PerlHash',
                      'P6C::variable::topical' => '',
                      'P6C::variable::name' => '%node',
                      'P6C::variable::global' => '',
                      'P6C::variable::implicit' => 0
                    }, 'P6C::variable' ),
                    'P6C::Binop::op' => '=',
                    'P6C::Binop::l' => bless( {
                      'P6C::variable::type' => 'PerlUndef',
                      'P6C::variable::topical' => '',
                      'P6C::variable::name' => '$tree',
                      'P6C::variable::global' => '',
                      'P6C::variable::implicit' => 0
                    }, 'P6C::variable' )
                  }, 'P6C::Binop' ),
                  bless( {
                    'P6C::prefix::name' => 'return',
                    'P6C::prefix::args' => bless( {
                      'P6C::ValueList::vals' => []
                    }, 'P6C::ValueList' )
                  }, 'P6C::prefix' )
                ]
              }, 'P6C::closure' )
            ]
          ]
        }, 'P6C::prefix' ),
        bless( {
          'P6C::prefix::name' => 'if',
          'P6C::prefix::args' => [
            [
              undef,
              bless( {
                'P6C::compare::seq' => [
                  bless( {
                    'P6C::subscript_exp::subscripts' => [
                      bless( {
                        'P6C::indices::type' => 'PerlHash',
                        'P6C::indices::indices' => bless( {
                          'P6C::sv_literal::lval' => '"VALUE"',
                          'P6C::sv_literal::type' => 'PerlString'
                        }, 'P6C::sv_literal' )
                      }, 'P6C::indices' )
                    ],
                    'P6C::subscript_exp::thing' => bless( {
                      'P6C::variable::type' => 'PerlUndef',
                      'P6C::variable::topical' => '',
                      'P6C::variable::name' => '$tree',
                      'P6C::variable::global' => '',
                      'P6C::variable::implicit' => 0
                    }, 'P6C::variable' )
                  }, 'P6C::subscript_exp' ),
                  '>',
                  bless( {
                    'P6C::variable::type' => 'PerlUndef',
                    'P6C::variable::topical' => '',
                    'P6C::variable::name' => '$val',
                    'P6C::variable::global' => '',
                    'P6C::variable::implicit' => 0
                  }, 'P6C::variable' )
                ]
              }, 'P6C::compare' ),
              bless( {
                'P6C::closure::params' => undef,
                'P6C::closure::block' => [
                  bless( {
                    'P6C::prefix::name' => 'insert',
                    'P6C::prefix::args' => bless( {
                      'P6C::Binop::r' => bless( {
                        'P6C::variable::type' => 'PerlUndef',
                        'P6C::variable::topical' => '',
                        'P6C::variable::name' => '$val',
                        'P6C::variable::global' => '',
                        'P6C::variable::implicit' => 0
                      }, 'P6C::variable' ),
                      'P6C::Binop::op' => ',',
                      'P6C::Binop::l' => bless( {
                        'P6C::subscript_exp::subscripts' => [
                          bless( {
                            'P6C::indices::type' => 'PerlHash',
                            'P6C::indices::indices' => bless( {
                              'P6C::sv_literal::lval' => '"LEFT"',
                              'P6C::sv_literal::type' => 'PerlString'
                            }, 'P6C::sv_literal' )
                          }, 'P6C::indices' )
                        ],
                        'P6C::subscript_exp::thing' => bless( {
                          'P6C::variable::type' => 'PerlUndef',
                          'P6C::variable::topical' => '',
                          'P6C::variable::name' => '$tree',
                          'P6C::variable::global' => '',
                          'P6C::variable::implicit' => 0
                        }, 'P6C::variable' )
                      }, 'P6C::subscript_exp' )
                    }, 'P6C::Binop' )
                  }, 'P6C::prefix' )
                ]
              }, 'P6C::closure' )
            ],
            [
              'elsif',
              bless( {
                'P6C::compare::seq' => [
                  bless( {
                    'P6C::subscript_exp::subscripts' => [
                      bless( {
                        'P6C::indices::type' => 'PerlHash',
                        'P6C::indices::indices' => bless( {
                          'P6C::sv_literal::lval' => '"VALUE"',
                          'P6C::sv_literal::type' => 'PerlString'
                        }, 'P6C::sv_literal' )
                      }, 'P6C::indices' )
                    ],
                    'P6C::subscript_exp::thing' => bless( {
                      'P6C::variable::type' => 'PerlUndef',
                      'P6C::variable::topical' => '',
                      'P6C::variable::name' => '$tree',
                      'P6C::variable::global' => '',
                      'P6C::variable::implicit' => 0
                    }, 'P6C::variable' )
                  }, 'P6C::subscript_exp' ),
                  '<',
                  bless( {
                    'P6C::variable::type' => 'PerlUndef',
                    'P6C::variable::topical' => '',
                    'P6C::variable::name' => '$val',
                    'P6C::variable::global' => '',
                    'P6C::variable::implicit' => 0
                  }, 'P6C::variable' )
                ]
              }, 'P6C::compare' ),
              bless( {
                'P6C::closure::params' => undef,
                'P6C::closure::block' => [
                  bless( {
                    'P6C::prefix::name' => 'insert',
                    'P6C::prefix::args' => bless( {
                      'P6C::Binop::r' => bless( {
                        'P6C::variable::type' => 'PerlUndef',
                        'P6C::variable::topical' => '',
                        'P6C::variable::name' => '$val',
                        'P6C::variable::global' => '',
                        'P6C::variable::implicit' => 0
                      }, 'P6C::variable' ),
                      'P6C::Binop::op' => ',',
                      'P6C::Binop::l' => bless( {
                        'P6C::subscript_exp::subscripts' => [
                          bless( {
                            'P6C::indices::type' => 'PerlHash',
                            'P6C::indices::indices' => bless( {
                              'P6C::sv_literal::lval' => '"RIGHT"',
                              'P6C::sv_literal::type' => 'PerlString'
                            }, 'P6C::sv_literal' )
                          }, 'P6C::indices' )
                        ],
                        'P6C::subscript_exp::thing' => bless( {
                          'P6C::variable::type' => 'PerlUndef',
                          'P6C::variable::topical' => '',
                          'P6C::variable::name' => '$tree',
                          'P6C::variable::global' => '',
                          'P6C::variable::implicit' => 0
                        }, 'P6C::variable' )
                      }, 'P6C::subscript_exp' )
                    }, 'P6C::Binop' )
                  }, 'P6C::prefix' )
                ]
              }, 'P6C::closure' )
            ],
            [
              'else',
              1,
              bless( {
                'P6C::closure::params' => undef,
                'P6C::closure::block' => [
                  bless( {
                    'P6C::prefix::name' => 'warn',
                    'P6C::prefix::args' => bless( {
                      'P6C::sv_literal::lval' => '"dup insert of $val\\n"',
                      'P6C::sv_literal::type' => 'PerlString'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::prefix' )
                ]
              }, 'P6C::closure' )
            ]
          ]
        }, 'P6C::prefix' )
      ]
    }, 'P6C::closure' )
  }, 'P6C::sub_def' ),
  bless( {
    'P6C::sub_def::props' => [],
    'P6C::sub_def::qual' => undef,
    'P6C::sub_def::name' => 'show',
    'P6C::sub_def::closure' => bless( {
      'P6C::closure::params' => undef,
      'P6C::closure::block' => [
        bless( {
          'P6C::guard::expr' => bless( {
            'P6C::prefix::name' => 'return',
            'P6C::prefix::args' => bless( {
              'P6C::ValueList::vals' => []
            }, 'P6C::ValueList' )
          }, 'P6C::prefix' ),
          'P6C::guard::name' => 'unless',
          'P6C::guard::test' => bless( {
            'P6C::subscript_exp::subscripts' => [
              bless( {
                'P6C::indices::type' => 'PerlArray',
                'P6C::indices::indices' => bless( {
                  'P6C::sv_literal::lval' => '0',
                  'P6C::sv_literal::type' => 'PerlInt'
                }, 'P6C::sv_literal' )
              }, 'P6C::indices' )
            ],
            'P6C::subscript_exp::thing' => bless( {
              'P6C::variable::type' => 'PerlArray',
              'P6C::variable::topical' => '',
              'P6C::variable::name' => '@_',
              'P6C::variable::global' => '',
              'P6C::variable::implicit' => 0
            }, 'P6C::variable' )
          }, 'P6C::subscript_exp' )
        }, 'P6C::guard' ),
        bless( {
          'P6C::guard::expr' => bless( {
            'P6C::prefix::name' => 'show',
            'P6C::prefix::args' => bless( {
              'P6C::Binop::r' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              'P6C::Binop::op' => ',',
              'P6C::Binop::l' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '0',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' ),
                  bless( {
                    'P6C::indices::type' => 'PerlHash',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '"LEFT"',
                      'P6C::sv_literal::type' => 'PerlString'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' )
            }, 'P6C::Binop' )
          }, 'P6C::prefix' ),
          'P6C::guard::name' => 'unless',
          'P6C::guard::test' => bless( {
            'P6C::compare::seq' => [
              bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              '==',
              bless( {
                'P6C::variable::type' => 'PerlUndef',
                'P6C::variable::topical' => '',
                'P6C::variable::name' => '$post',
                'P6C::variable::global' => '',
                'P6C::variable::implicit' => 0
              }, 'P6C::variable' )
            ]
          }, 'P6C::compare' )
        }, 'P6C::guard' ),
        bless( {
          'P6C::guard::expr' => bless( {
            'P6C::prefix::name' => 'show',
            'P6C::prefix::args' => bless( {
              'P6C::Binop::r' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              'P6C::Binop::op' => ',',
              'P6C::Binop::l' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '0',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' ),
                  bless( {
                    'P6C::indices::type' => 'PerlHash',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '"RIGHT"',
                      'P6C::sv_literal::type' => 'PerlString'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' )
            }, 'P6C::Binop' )
          }, 'P6C::prefix' ),
          'P6C::guard::name' => 'if',
          'P6C::guard::test' => bless( {
            'P6C::compare::seq' => [
              bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              '==',
              bless( {
                'P6C::variable::type' => 'PerlUndef',
                'P6C::variable::topical' => '',
                'P6C::variable::name' => '$pre',
                'P6C::variable::global' => '',
                'P6C::variable::implicit' => 0
              }, 'P6C::variable' )
            ]
          }, 'P6C::compare' )
        }, 'P6C::guard' ),
        bless( {
          'P6C::prefix::name' => 'print',
          'P6C::prefix::args' => bless( {
            'P6C::subscript_exp::subscripts' => [
              bless( {
                'P6C::indices::type' => 'PerlArray',
                'P6C::indices::indices' => bless( {
                  'P6C::sv_literal::lval' => '0',
                  'P6C::sv_literal::type' => 'PerlInt'
                }, 'P6C::sv_literal' )
              }, 'P6C::indices' ),
              bless( {
                'P6C::indices::type' => 'PerlHash',
                'P6C::indices::indices' => bless( {
                  'P6C::sv_literal::lval' => '"VALUE"',
                  'P6C::sv_literal::type' => 'PerlString'
                }, 'P6C::sv_literal' )
              }, 'P6C::indices' )
            ],
            'P6C::subscript_exp::thing' => bless( {
              'P6C::variable::type' => 'PerlArray',
              'P6C::variable::topical' => '',
              'P6C::variable::name' => '@_',
              'P6C::variable::global' => '',
              'P6C::variable::implicit' => 0
            }, 'P6C::variable' )
          }, 'P6C::subscript_exp' )
        }, 'P6C::prefix' ),
        bless( {
          'P6C::guard::expr' => bless( {
            'P6C::prefix::name' => 'show',
            'P6C::prefix::args' => bless( {
              'P6C::Binop::r' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              'P6C::Binop::op' => ',',
              'P6C::Binop::l' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '0',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' ),
                  bless( {
                    'P6C::indices::type' => 'PerlHash',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '"LEFT"',
                      'P6C::sv_literal::type' => 'PerlString'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' )
            }, 'P6C::Binop' )
          }, 'P6C::prefix' ),
          'P6C::guard::name' => 'if',
          'P6C::guard::test' => bless( {
            'P6C::compare::seq' => [
              bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              '==',
              bless( {
                'P6C::variable::type' => 'PerlUndef',
                'P6C::variable::topical' => '',
                'P6C::variable::name' => '$post',
                'P6C::variable::global' => '',
                'P6C::variable::implicit' => 0
              }, 'P6C::variable' )
            ]
          }, 'P6C::compare' )
        }, 'P6C::guard' ),
        bless( {
          'P6C::guard::expr' => bless( {
            'P6C::prefix::name' => 'show',
            'P6C::prefix::args' => bless( {
              'P6C::Binop::r' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              'P6C::Binop::op' => ',',
              'P6C::Binop::l' => bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '0',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' ),
                  bless( {
                    'P6C::indices::type' => 'PerlHash',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '"RIGHT"',
                      'P6C::sv_literal::type' => 'PerlString'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' )
            }, 'P6C::Binop' )
          }, 'P6C::prefix' ),
          'P6C::guard::name' => 'unless',
          'P6C::guard::test' => bless( {
            'P6C::compare::seq' => [
              bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '1',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              '==',
              bless( {
                'P6C::variable::type' => 'PerlUndef',
                'P6C::variable::topical' => '',
                'P6C::variable::name' => '$pre',
                'P6C::variable::global' => '',
                'P6C::variable::implicit' => 0
              }, 'P6C::variable' )
            ]
          }, 'P6C::compare' )
        }, 'P6C::guard' )
      ]
    }, 'P6C::closure' )
  }, 'P6C::sub_def' ),
  bless( {
    'P6C::sub_def::props' => [],
    'P6C::sub_def::qual' => undef,
    'P6C::sub_def::name' => 'search',
    'P6C::sub_def::closure' => bless( {
      'P6C::closure::params' => bless( {
        'P6C::params::req' => [
          bless( {
            'P6C::param::init' => undef,
            'P6C::param::props' => [
              bless( {
                'P6C::property::name' => 'rw',
                'P6C::property::args' => undef
              }, 'P6C::property' )
            ],
            'P6C::param::qual' => bless( {
              'P6C::scope_class::scope' => undef,
              'P6C::scope_class::class' => 'HASH'
            }, 'P6C::scope_class' ),
            'P6C::param::var' => bless( {
              'P6C::variable::type' => 'PerlUndef',
              'P6C::variable::topical' => '',
              'P6C::variable::name' => '$tree',
              'P6C::variable::global' => '',
              'P6C::variable::implicit' => 0
            }, 'P6C::variable' )
          }, 'P6C::param' )
        ],
        'P6C::params::rest' => bless( {
          'P6C::param::init' => undef,
          'P6C::param::props' => [],
          'P6C::param::qual' => undef,
          'P6C::param::var' => bless( {
            'P6C::variable::type' => 'PerlArray',
            'P6C::variable::topical' => undef,
            'P6C::variable::name' => '@_',
            'P6C::variable::global' => undef,
            'P6C::variable::implicit' => undef
          }, 'P6C::variable' )
        }, 'P6C::param' ),
        'P6C::params::opt' => []
      }, 'P6C::params' ),
      'P6C::closure::block' => [
        bless( {
          'P6C::guard::expr' => bless( {
            'P6C::prefix::name' => 'return',
            'P6C::prefix::args' => bless( {
              'P6C::ValueList::vals' => []
            }, 'P6C::ValueList' )
          }, 'P6C::prefix' ),
          'P6C::guard::name' => 'unless',
          'P6C::guard::test' => bless( {
            'P6C::variable::type' => 'PerlUndef',
            'P6C::variable::topical' => '',
            'P6C::variable::name' => '$tree',
            'P6C::variable::global' => '',
            'P6C::variable::implicit' => 0
          }, 'P6C::variable' )
        }, 'P6C::guard' ),
        bless( {
          'P6C::guard::expr' => bless( {
            'P6C::prefix::name' => 'return',
            'P6C::prefix::args' => bless( {
              'P6C::prefix::name' => 'search',
              'P6C::prefix::args' => bless( {
                'P6C::ValueList::vals' => [
                  bless( {
                    'P6C::Binop::r' => bless( {
                      'P6C::subscript_exp::subscripts' => [
                        bless( {
                          'P6C::indices::type' => 'PerlArray',
                          'P6C::indices::indices' => bless( {
                            'P6C::sv_literal::lval' => '0',
                            'P6C::sv_literal::type' => 'PerlInt'
                          }, 'P6C::sv_literal' )
                        }, 'P6C::indices' )
                      ],
                      'P6C::subscript_exp::thing' => bless( {
                        'P6C::variable::type' => 'PerlArray',
                        'P6C::variable::topical' => '',
                        'P6C::variable::name' => '@_',
                        'P6C::variable::global' => '',
                        'P6C::variable::implicit' => 0
                      }, 'P6C::variable' )
                    }, 'P6C::subscript_exp' ),
                    'P6C::Binop::op' => ',',
                    'P6C::Binop::l' => bless( {
                      'P6C::subscript_exp::subscripts' => [
                        bless( {
                          'P6C::indices::type' => 'PerlHash',
                          'P6C::indices::indices' => bless( {
                            'P6C::Binop::r' => bless( {
                              'P6C::sv_literal::lval' => '"RIGHT"',
                              'P6C::sv_literal::type' => 'PerlString'
                            }, 'P6C::sv_literal' ),
                            'P6C::Binop::op' => '||',
                            'P6C::Binop::l' => bless( {
                              'P6C::Binop::r' => bless( {
                                'P6C::sv_literal::lval' => '"LEFT"',
                                'P6C::sv_literal::type' => 'PerlString'
                              }, 'P6C::sv_literal' ),
                              'P6C::Binop::op' => '&&',
                              'P6C::Binop::l' => bless( {
                                'P6C::compare::seq' => [
                                  bless( {
                                    'P6C::subscript_exp::subscripts' => [
                                      bless( {
                                        'P6C::indices::type' => 'PerlArray',
                                        'P6C::indices::indices' => bless( {
                                          'P6C::sv_literal::lval' => '0',
                                          'P6C::sv_literal::type' => 'PerlInt'
                                        }, 'P6C::sv_literal' )
                                      }, 'P6C::indices' )
                                    ],
                                    'P6C::subscript_exp::thing' => bless( {
                                      'P6C::variable::type' => 'PerlArray',
                                      'P6C::variable::topical' => '',
                                      'P6C::variable::name' => '@_',
                                      'P6C::variable::global' => '',
                                      'P6C::variable::implicit' => 0
                                    }, 'P6C::variable' )
                                  }, 'P6C::subscript_exp' ),
                                  '<',
                                  bless( {
                                    'P6C::subscript_exp::subscripts' => [
                                      bless( {
                                        'P6C::indices::type' => 'PerlHash',
                                        'P6C::indices::indices' => bless( {
                                          'P6C::sv_literal::lval' => '"VALUE"',
                                          'P6C::sv_literal::type' => 'PerlString'
                                        }, 'P6C::sv_literal' )
                                      }, 'P6C::indices' )
                                    ],
                                    'P6C::subscript_exp::thing' => bless( {
                                      'P6C::variable::type' => 'PerlUndef',
                                      'P6C::variable::topical' => '',
                                      'P6C::variable::name' => '$tree',
                                      'P6C::variable::global' => '',
                                      'P6C::variable::implicit' => 0
                                    }, 'P6C::variable' )
                                  }, 'P6C::subscript_exp' )
                                ]
                              }, 'P6C::compare' )
                            }, 'P6C::Binop' )
                          }, 'P6C::Binop' )
                        }, 'P6C::indices' )
                      ],
                      'P6C::subscript_exp::thing' => bless( {
                        'P6C::variable::type' => 'PerlUndef',
                        'P6C::variable::topical' => '',
                        'P6C::variable::name' => '$tree',
                        'P6C::variable::global' => '',
                        'P6C::variable::implicit' => 0
                      }, 'P6C::variable' )
                    }, 'P6C::subscript_exp' )
                  }, 'P6C::Binop' )
                ]
              }, 'P6C::ValueList' )
            }, 'P6C::prefix' )
          }, 'P6C::prefix' ),
          'P6C::guard::name' => 'unless',
          'P6C::guard::test' => bless( {
            'P6C::compare::seq' => [
              bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlHash',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '"VALUE"',
                      'P6C::sv_literal::type' => 'PerlString'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlUndef',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '$tree',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' ),
              '==',
              bless( {
                'P6C::subscript_exp::subscripts' => [
                  bless( {
                    'P6C::indices::type' => 'PerlArray',
                    'P6C::indices::indices' => bless( {
                      'P6C::sv_literal::lval' => '0',
                      'P6C::sv_literal::type' => 'PerlInt'
                    }, 'P6C::sv_literal' )
                  }, 'P6C::indices' )
                ],
                'P6C::subscript_exp::thing' => bless( {
                  'P6C::variable::type' => 'PerlArray',
                  'P6C::variable::topical' => '',
                  'P6C::variable::name' => '@_',
                  'P6C::variable::global' => '',
                  'P6C::variable::implicit' => 0
                }, 'P6C::variable' )
              }, 'P6C::subscript_exp' )
            ]
          }, 'P6C::compare' )
        }, 'P6C::guard' ),
        bless( {
          'P6C::prefix::name' => 'return',
          'P6C::prefix::args' => bless( {
            'P6C::variable::type' => 'PerlUndef',
            'P6C::variable::topical' => '',
            'P6C::variable::name' => '$tree',
            'P6C::variable::global' => '',
            'P6C::variable::implicit' => 0
          }, 'P6C::variable' )
        }, 'P6C::prefix' )
      ]
    }, 'P6C::closure' )
  }, 'P6C::sub_def' )
]
