<add-noise-configuration> ::=
   {"input-h5" : <file-name>,
    "output-h5" : <file-name>,
    <output-size-section>,
    "keep-original-data" : <boolean>,
    "sequence-fraction-mutated" : <number>,
    "sequence-distribution-fraction" : <number>,
    "profile-mutation-types" : [<list-of-profile-mutation-types>],
    "num-threads" : <integer>,
    <verbosity-section>}
<output-size-section> ::=
    "num-output-samples" : <integer>
  | "output-size-ratio" : <number>
<list-of-profile-mutation-types> ::=
    <profile-mutation-type>
  | <profile-mutation-type>, <list-of-profile-mutation-types>
<profile-mutation-type> ::=
    <add-mutation-type>
  | <shift-mutation-type>
  | <subtract-mutation-type>
<add-mutation-type> ::=
    {"type" : "add",
     "maximum-reads" : <number-or-null>,
     "minimum-reads" : <integer>,
     "max-change" : <integer>,
     <profile-mutation-common-parameters>}
<shift-mutation-type> ::=
    {"type" : "shift",
     "shift-max-distance" : <integer>,
     "shift-reads-independently" : <boolean>,
     <profile-mutation-common-parameters>}
<subtract-mutation-type> ::=
    {"type" : "subtract",
     "maximum-reads" : <number-or-null>,
     "minimum-reads" : <integer>,
     "max-change" : <integer>,
     <profile-mutation-common-parameters>}
<profile-mutation-common-parameters> ::=
     "fraction-mutated" : <number>,
     "output-distribution-fraction" : <number>