/**
 * CT format (e.g., generated by Mfold and RNAfold) is accepted.
 */


/**
 * FASTA format with dot-bracket notation.
 *
 * Name line starting with `>`.
 *
 * Second line is the sequence.
 *
 * Third line is dot-bracket notation.
 */
>Name
AAAGGGGAAAAACCCCAAA
...((((.....))))...


/**
 * Dot-bracket notation doesn't have to be as long as the sequence.
 */
>Name
AAAGGGGAAAAACCCCAAA
...((((.....))))


/**
 * Extra trailing dot-bracket notation is ignored.
 */
>Name
AAAGGGGAAAAACCCCAAA
...((((.....)))).....((((.......)))).


/**
 * A delta-G value may be included after dot-bracket notation (separated by whitespace).
 *
 * Some structure prediction programs (e.g., RNAfold, Mfold) may include a delta-G value in this way.
 */
>Name
AAAGGGGAAAAACCCCAAA
...((((.....))))... ( -6.80)


/**
 * The name line is optional.
 */
AAAGGGGAAAAACCCCAAA
...((((.....))))...


/**
 * No name line (but with a delta-G value).
 *
 * This is a format used by ".vienna" and ".b" files produced by ViennaRNA and Mfold, respectively.
 */
AAAGGGGAAAAACCCCAAA
...((((.....))))... ( -6.80)


/**
 * Structures may be multi-line.
 */
>Name
AAAGGGGAAAAACCCCAAA
AAACCCCAAAAAGGGGAAA
AAAGGGGAAAAACCCCAAA
...((((.....))))...
...((((.....))))...
...((((.....))))...


/**
 * Lines may be numbered
 */
>Name
1  AAAGGGGAAAAACCCCAAA
20 AAACCCCAAAAAGGGGAAA
39 AAAGGGGAAAAACCCCAAA
1  ...((((.....))))...
20 ...((((.....))))...
39 ...((((.....))))...


/**
 * With intervening whitespace.
 */
>Name
1  AAAGG GGAAA AACCC CAAA
20 AAACC CCAAA AAGGG GAAA
39 AAAGG GGAAA AACCC CAAA
1  ...(( ((... ..))) )...
20 ...(( ((... ..))) )...
39 ...(( ((... ..))) )...


/**
 * The name line is still optional.
 */
AAAGGGGAAAAACCCCAAA
AAACCCCAAAAAGGGGAAA
AAAGGGGAAAAACCCCAAA
...((((.....))))...
...((((.....))))...
...((((.....))))...


/**
 * No name line (but still with numbered lines).
 *
 * This is a format used by the RNAfold results page, for instance.
 */
1  AAAGGGGAAAAACCCCAAA
20 AAACCCCAAAAAGGGGAAA
39 AAAGGGGAAAAACCCCAAA
1  ...((((.....))))...
20 ...((((.....))))...
39 ...((((.....))))...


/**
 * The numbering on the first line is optional
 * (e.g., when copying and pasting from the RNAfold results page,
 * you don't have to make sure to highlight the numbering on the first line).
 *
 * The first line of dot-bracket notation must still be numbered, though.
 */
   AAAGGGGAAAAACCCCAAA
20 AAACCCCAAAAAGGGGAAA
39 AAAGGGGAAAAACCCCAAA
1  ...((((.....))))...
20 ...((((.....))))...
39 ...((((.....))))...


/**
 * A delta-G value may also be included at the end of multi-line dot-bracket notation (separated by whitespace).
 */
AAAGGGGAAAAACCCCAAA
AAACCCCAAAAAGGGGAAA
AAAGGGGAAAAACCCCAAA
...((((.....))))...
...((((.....))))...
...((((.....))))... (-21.80)


/**
 * Numbered lines, intervening whitespace, the first line is missing a numbering, and a delta-G value.
 */
   AAAGG GGAAA AACCC CAAA
20 AAACC CCAAA AAGGG GAAA
39 AAAGG GGAAA AACCC CAAA
1  ...(( ((... ..))) )...
20 ...(( ((... ..))) )...
39 ...(( ((... ..))) )... (-21.80)


/**
 * Dot-bracket notation is optional.
 *
 * Below is classic FASTA format.
 */
>Name
AAAGGGGAAAAACCCCAAA
AAACCCCAAAAAGGGGAAA
AAAGGGGAAAAACCCCAAA


/**
 * Lines may be numbered.
 */
>Name
1  AAAGGGGAAAAACCCCAAA
20 AAACCCCAAAAAGGGGAAA
39 AAAGGGGAAAAACCCCAAA


/**
 * And the name line is still optional.
 */
AAAGGGGAAAAACCCCAAA
AAACCCCAAAAAGGGGAAA
AAAGGGGAAAAACCCCAAA


/**
 * Indeed, the default behavior of RNAcanvas is to interpret text input as a sequence.
 *
 * RNAcanvas would interpret the following input as a sequence (ignoring all whitespace).
 */
Mdudq fnmmz fhud xnt to
Mdudq fnmmz kds xnt cnvm
Mdudq fnmmz qtm zqntmc zmc cdrdqs xnt


/**
 * No name line (but with numbered lines and intervening whitespace).
 *
 * This is the sequence format of GenBank.
 */
  1 gggtaaatat ggatccttca tctttgcccc gtgcctgttg gcatcatgcc agacaggtgt
 61 ttcgagcatc aactagcttc tcaagagagg tggttcgcgc tgctcgtaga tgggttacca
121 tgcccaccag tcgccatgca tatgactttt caacgagtct aggcattgtg attgctgagc
181 ctgcagctcg tttacgacgc cgtctgccct ctgtacgaaa gtgcgcagag aagttagtag


/**
 * Including a numbering on the first line is still optional
 * (e.g., when copying and pasting a sequence from GenBank).
 */
    gggtaaatat ggatccttca tctttgcccc gtgcctgttg gcatcatgcc agacaggtgt
 61 ttcgagcatc aactagcttc tcaagagagg tggttcgcgc tgctcgtaga tgggttacca
121 tgcccaccag tcgccatgca tatgactttt caacgagtct aggcattgtg attgctgagc
181 ctgcagctcg tttacgacgc cgtctgccct ctgtacgaaa gtgcgcagag aagttagtag
