$atten = build_pad(10);
$atten->dump("PAD 10dB");
my $atten2 = build_pad(20);
$atten2->dump("PAD 20dB");
$term = build_impedance(50);
$term->dump("TERM 50ohm");
$g = $atten2->attach($term, [qw( out_pos in_pos )], [qw( out_neg in_neg )]);
delete $g->{nodes}{out_neg};
delete $g->{nodes}{out_pos};
$g->dump("PAD 20dB + TERM 50ohm");
$h = $atten->attach($atten2, [qw( out_pos in_pos )], [qw( out_neg in_neg )]);
delete $h->{nodes}{out_neg};
delete $h->{nodes}{out_pos};
$h->dump("PAD 10dB + PAD 20dB + TERM 50ohm");
my $i = $h->simplify();
$i->dump("RESULT!");
####
$atten = Gr->new(pad => 10);
$atten->dump("PAD 10dB");
my $atten2 = Gr->new(pad => 20);
$atten2->dump("PAD 20dB");
$term = Gr->new(impedance => 50);
$term->dump("TERM 50ohm");
$atten2->attach($term, [qw( out_pos in_pos )], [qw( out_neg in_neg )]);
$atten2->delete('nodes', 'out_neg');
$atten2->delete('nodes', 'out_pos');
$atten2->dump("PAD 20dB + TERM 50ohm");
$atten->attach($atten2, [qw( out_pos in_pos )], [qw( out_neg in_neg )]);
$atten->delete('nodes', 'out_neg');
$atten->delete('nodes', 'out_pos');
$atten->dump("PAD 10dB + PAD 20dB + TERM 50ohm");
$atten->simplify();
$atten->dump("RESULT!");
####
my ($in_neg, $in_pos, $out_neg, $out_pos) = (node(), node(), node(), node());
####
$$_ = node() for \my ($in_neg, $in_pos, $out_neg, $out_pos);