Help for this page
__PACKAGE__->has_many_direct( abcds => [ a => 'b.ab' => 'c.bc' => 'd.c +d' ] );
package A; __PACKAGE__->direct_join( b => 'b.ab' ); package B; __PACKAGE__->direct_join( c => 'c.bc' ); # ... and so on