updated encoding and mutation section