##
## takes 16 bits (= 8 bases = unsigned short) at a time
my @CONV = glob( "{T,C,A,G}" x 8 );
my $dna = join "", @CONV[ unpack "S*", $raw ];
##
##
substr($dna, $_, $mblock{$_}, lc(substr($dna, $_, $mblock{$_})))
##
##
substr($dna, $_, $mblock{$_}) ^= (" " x $mblock{$_});