The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
PPI::Document
  PPI::Statement::Compound
    PPI::Token::Word  	'while'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Condition  	( ... )
      PPI::Statement::Expression
        PPI::Token::Number  	'1'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'while'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Condition  	( ... )
      PPI::Statement::Expression
        PPI::Token::Number  	'1'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'continue'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Label  	'LABEL:'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'while'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Condition  	( ... )
      PPI::Statement::Expression
        PPI::Token::Number  	'1'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Label  	'LABEL:'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'while'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Condition  	( ... )
      PPI::Statement::Expression
        PPI::Token::Number  	'1'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'continue'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'until'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Condition  	( ... )
      PPI::Statement::Expression
        PPI::Token::Number  	'1'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Label  	'LABEL:'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'until'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Condition  	( ... )
      PPI::Statement::Expression
        PPI::Token::Number  	'1'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'foreach'
    PPI::Token::Whitespace  	' '
    PPI::Token::QuoteLike::Words  	'qw{}'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'foreach'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Label  	'LABEL:'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'foreach'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
      PPI::Token::Whitespace  	' '
      PPI::Statement
        PPI::Token::Number  	'1'
        PPI::Token::Whitespace  	' '
        PPI::Token::Operator  	'..'
        PPI::Token::Whitespace  	' '
        PPI::Token::Number  	'20'
      PPI::Token::Whitespace  	' '
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
      PPI::Token::Whitespace  	'\n'
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'foreach'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'my'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'foreach'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'state'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'for'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'my'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'for'
    PPI::Token::Whitespace  	' '
    PPI::Token::Word  	'state'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'foreach'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'for'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Structure::List  	( ... )
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'for'
    PPI::Token::Whitespace  	' '
    PPI::Token::Symbol  	'$foo'
    PPI::Token::Whitespace  	' '
    PPI::Token::QuoteLike::Words  	'qw<blah>'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
  PPI::Token::Whitespace  	'\n'
  PPI::Statement::Compound
    PPI::Token::Word  	'for'
    PPI::Token::Whitespace  	' '
    PPI::Structure::For  	( ... )
      PPI::Statement::Variable
        PPI::Token::Word  	'my'
        PPI::Token::Whitespace  	' '
        PPI::Token::Symbol  	'$a'
        PPI::Token::Whitespace  	' '
        PPI::Token::Operator  	'='
        PPI::Token::Whitespace  	' '
        PPI::Token::Number  	'0'
        PPI::Token::Structure  	';'
      PPI::Token::Whitespace  	' '
      PPI::Statement
        PPI::Token::Symbol  	'$a'
        PPI::Token::Whitespace  	' '
        PPI::Token::Operator  	'<'
        PPI::Token::Whitespace  	' '
        PPI::Token::Number  	'10'
        PPI::Token::Structure  	';'
      PPI::Token::Whitespace  	' '
      PPI::Statement
        PPI::Token::Symbol  	'$a'
        PPI::Token::Operator  	'++'
    PPI::Token::Whitespace  	' '
    PPI::Structure::Block  	{ ... }
      PPI::Token::Whitespace  	'\n'
  PPI::Token::Whitespace  	'\n'