or download this
my %quantity=(YEAR => 5, MONTH => 4, WEEK => 3, DAY => 2, HOUR =>1);
...
@vals = map{$_->[0]} sort{$quantity{$b->[1]} <=> $quantity{$a->[1]}} s
+ort{$b->[2] <=> $a->[2]} sort{$b->[3] <=> $a->[3]} map{[$_, /(YEAR|MO
+NTH|WEEK|DAY|HOUR),([^,]*),([^,]*)$/i]} @vals;
print join("\n",@vals);
or download this
B,Unlim60,YEAR,1000,6000
B,Unlim60,MONTH,1000,6000
...
D,,MONTH,500,8000
C,Unlim,DAY,50,6000
C,Unlim,HOUR,50,6000