%semantic token 'c' 
%{
use Data::Dumper;
$Data::Dumper::Indent = 1;
%}
%%
S:  'c'+  D+ 
      { 
         print Dumper($_[1]);
         print Dumper($_[2]);
      } 
;

D: 'd'
     {
       bless { attr => $_[1], children =>[]}, 'DES';
     }
;

%%

sub Run {
  my ($self) = shift;
  return $self->YYParse( yybuildingtree => 1 );
}