The output may be closer to what you were wanting (if I’ve understood correctly):
$VAR1 = {
'BAD' => [
bless( [
bless( [
'a ',
bless( do{\(my $o = 'foo')}, 's
+tr' )
], 'str' ),
' a'
], 'str' ),
bless( [
bless( [
$VAR1->{'BAD'}[0][0][1],
' '
], 'str' ),
bless( do{\(my $o = 'bar')}, 'str' )
], 'str' ),
bless( [
bless( [
bless( [
bless( [
'a ',
$VAR1->{'BAD'
+}[0][0][1]
], 'str' ),
' a '
], 'str' ),
$VAR1->{'BAD'}[1][1]
], 'str' ),
' a'
], 'str' )
],
'GOOD' => [
bless( [
bless( [
$VAR1->{'BAD'}[0][0][1],
' '
], 'str' ),
$VAR1->{'BAD'}[1][1]
], 'str' ),
$VAR1->{'GOOD'}[0],
bless( [
$VAR1->{'BAD'}[0][0][1],
' a'
], 'str' )
]
};
$VAR1 = {
'BAD_GOOD' => [
bless( [
'',
bless( [
bless( [
'a ',
bless( do{\(my $o
+ = 'foo')}, 'str' )
], 'str' ),
' a'
], 'str' )
], 'str' ),
bless( [
'',
bless( [
bless( [
$VAR1->{'BAD_GOOD
+'}[0][1][0][1],
' '
], 'str' ),
bless( do{\(my $o = 'bar')
+}, 'str' )
], 'str' )
], 'str' ),
bless( [
'',
bless( [
bless( [
bless( [
bless( [
+ 'a ',
+ $VAR1->{'BAD_GOOD'}[0][1][0][1]
]
+, 'str' ),
' a '
], 'str' )
+,
$VAR1->{'BAD_GOOD
+'}[1][1][1]
], 'str' ),
' a'
], 'str' )
], 'str' )
]
};
17:03 >
I don’t pretend to know exactly what’s going on (I have the ’flu, my head is more than usually woolly), but perhaps this will help you towards a solution.