# # Variables, throughout run # # Read line 1 $_ = '100-233',MA,150:250 @initialparts = ( '100-233', 'MA', '150:250' ) @leadparts = ( '100', '233' ) %data = { '100' => { 'MA' => { 'items' => ( '233' ) }}} @tailparts = ( '150', '250' ) $data = { '100' => { 'MA' => { 'items' => ( '233' ), 'data' => ( '150', '250' ) }}} # Read line 2 $_ = '100-344,MA,350:' @initialparts = ( '100-344', 'MA', '350:' ) @leadparts = ( '100', '344' ) %data = { '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250' ) }}} @tailparts = ( '350' ) %data = { '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350' ) }}} # Read line 3 $_ = '200-400,ER,' @initialparts = ( '200-400', 'ER' ) @leadparts = ( '200', '400' ) %data = { '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350' ) }}, '200' => { 'ER' => { 'items' => ( '400' ) }}} # Read line 4 $_ = '200-300,ER,576' @initialparts = ( '200-300', 'ER', '576' ) @leadparts = ( '200', '300' ) %data = { '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350' ) }}, '200' => { 'ER' => { 'items' => ( '400', '300' ) }}} @tailparts = ( '576' ) %data = { '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350' ) }}, '200' => { 'ER' => { 'items' => ( '400', '300' ), 'data' => ( '576' ) }}} # Read line 5 $_ = '100-250,MA,150' @initialparts = ( '100-250', 'MA', '150' ) @leadparts = ( '100', '250' ) %data = { '100' => { 'MA' => { 'items' => ( '233', '344', '250' ), 'data' => ( '150', '250', '350' ) }}, '200' => { 'ER' => { 'items' => ( '400', '300' ), 'data' => ( '576' ) }}} @tailparts = ( '150' ) %data = { '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350', '150' ) }}, '200' => { 'ER' => { 'items' => ( '400', '300' ), 'data' => ( '576' ) }}} # Read line 6 $_ = '75-300,MA,350' @initialparts = ( '75-300', 'MA', '350' ) @leadparts = ( '75', '300' ) %data = { '75' => { 'MA' => { 'items' => ( '300' ) } }, '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350', '150' ) }}, '200' => { 'ER' => { 'items' => ( '400', '300' ), 'data' => ( '576' ) }}} @tailparts = ( '350' ) %data = { '75' => { 'MA' => { 'items' => ( '300' ), 'data' => ( '350' ) }}, '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350', '150' ) }}, '200' => { 'ER' => { 'items' => ( '400', '300' ), 'data' => ( '576' ) }}} # In loop %data = { '75' => { 'MA' => { 'items' => ( '300' ), 'data' => ( '350' ) }}, '100' => { 'MA' => { 'items' => ( '233', '344' ), 'data' => ( '150', '250', '350', '150' ) }}, '200' => { 'ER' => { 'items' => ( '400', '300' ), 'data' => ( '576' ) }}} $f1 = '75' $f2 = 'MA' $v4 = '|350' $v3 = '300' $f1 = '100' $f2 = 'MA' $v4 = '|150:150:250:350' $v3 = '233' $v3 = '344' $f1 = '200' $f2 = 'ER' $v4 = '|576' $v3 = '300' $v3 = '400' # # Output, from run # 75 MA 300|350 100 MA 233|150:150:250:350 344|150:250:350 200 ER 300|576 400|576