<<<<< Input Tree (Top_node = 29) >>>>>

( seq0020{28}:0.1529, ( seq0018{26}:0.1741, ( ( seq0015{23}:0.1492, ( seq0013{20}:0.1827, seq0014{21}:0.1659 ){22}:0.0049 ){24}:0.0297, ( ( seq0008{16}:0.0865, seq0009{17}:0.1286 ){18}:0.0335, ( ( seq0005{10}:0.0368, ( seq0006{11}:0.0286, seq0007{12}:0.0362 ){13}:0.0065 ){14}:0.0368, ( ( seq0000{1}:0.0054, seq0001{2}:0.0081 ){3}:0.0232, ( seq0002{4}:0.0189, ( seq0003{5}:0.0124, seq0004{6}:0.0108 ){7}:0.0070 ){8}:0.0270 ){9}:0.0205 ){15}:0.0703 ){19}:0.0383 ){25}:0.0314 ){27}:0.0130 ){29};


<<<<< Input MSA >>>>>

#{Sequences} = 15 .
#{Sites in the segment}_ref = 73 ,
#{Sites in the segment}_rec = 56 .


<< Correspondence between sequence IDs and sequence indices >>

Indx:	Seq_ID

0:	seq0000
1:	seq0001
2:	seq0002
3:	seq0003
4:	seq0004
5:	seq0005
6:	seq0006
7:	seq0007
8:	seq0008
9:	seq0009
10:	seq0013
11:	seq0014
12:	seq0015
13:	seq0018
14:	seq0020


<< Original Segment of the Reference Alignment: >>

(position)     000000000011111111112222222222333333333344444444445555555555
               012345678901234567890123456789012345678901234567890123456789
                                                                           
seq0000        --------------TTGTGGCA-CGACGGTCGAC--------------------------
seq0001        --------------TTGTGGCA-CGACGGTCGAC--------------------------
seq0002        --------------TTGGGGCA-CGACGGTCGAC--------------------------
seq0003        --------------TTGTGGCA-CGACGGTCGAC--------------------------
seq0004        --------------TTGTGGCA-CGACGGTCGAC--------------------------
seq0005        --------------TTGTGGCA-CGACGGTCGAC--------------------------
seq0006        --------------T-GTGGCT-CGACGGTCGAC--------------------------
seq0007        --------------TTGTGGCA-CGACGGTCGAC--------------------------
seq0008        --------------CTGTGGCAGCGACTGTAGGC--------------------------
seq0009        --------------CTGTGGCA-CTACGGTCGGC--------------------------
seq0013        TCATGTCGTGAGTGGTGTGATA-CAACGGTCGGC--------------------------
seq0014        TGATGGCGGGAGTCGGGTAGCA-TTACCGCTGGC--------------------------
seq0015        TCAGGCCGTGAGTCGTGTGGCA-CGACGGTCGGC--------------------------
seq0018        --------------TTGTGGC---AGGGGTCGGCGTGGTTCGCCACGGTACGCTACTCAA
seq0020        --------------TTGTGGCA-GGGGGGTCGGA--------------------------

(position)     6666666666777
               0123456789012
                            
seq0000        ---------AGCC
seq0001        ---------AGCC
seq0002        ---------AGCC
seq0003        ---------AGCC
seq0004        ---------AGCC
seq0005        ---------AGCC
seq0006        ---------AGCC
seq0007        ---------AGCA
seq0008        ---------AGCC
seq0009        ---------AGCC
seq0013        ---------CG-C
seq0014        ---------CACC
seq0015        ---------AGCC
seq0018        CTATATTTCAGC-
seq0020        ---------AGC-


<< Original Segment of the Reconstructed Alignment: >>

(position)     00000000001111111111222222222233333333334444444444555555
               01234567890123456789012345678901234567890123456789012345
                                                                       
seq0000        T--------------T-GTGG--CA-CGACGGTCGACAGC---------------C
seq0001        T--------------T-GTGG--CA-CGACGGTCGACAGC---------------C
seq0002        T--------------T-GGGG--CA-CGACGGTCGACAGC---------------C
seq0003        T--------------T-GTGG--CA-CGACGGTCGACAGC---------------C
seq0004        T--------------T-GTGG--CA-CGACGGTCGACAGC---------------C
seq0005        T--------------T-GTGG--CA-CGACGGTCGACAGC---------------C
seq0006        ---------------T-GTGG--CT-CGACGGTCGACAGC---------------C
seq0007        T--------------T-GTGG--CA-CGACGGTCGACAGC---------------A
seq0008        C--------------T-GTGG--CAGCGACTGTAGGCAGC---------------C
seq0009        C--------------T-GTGG--CA-CTACGGTCGGCAGC---------------C
seq0013        TCATGTCGTGAGTGGT-GTGA--TA-CAACGGTCGGCCG----------------C
seq0014        TGATGGCGGGAGTCGG-GTAG--CA-TTACCGCTGGCCAC---------------C
seq0015        TCAGGCCGTGAGTCGT-GTGG--CA-CGACGGTCGGCAGC---------------C
seq0018        TTGTGGCAGGGGTCGGCGTGGTTCG-CCACGGTACGCTACTCAACTATATTTCAGC
seq0020        TTGTGGCAGGGG------------------GGTCGGAAG----------------C


<<<<< Preliminary (0): Map the residue numbers onto the reference & reconstructed MSAs... >>>>>

<<<<< Preliminary (1): Map the position shifts (from reference to reconstructed) onto the Reconstructed MSA... >>>>>

<< Output of 'map_shifts_respos_bw_2msas' >>

($shift_lf, $shift_rf) = (0, -17) .

[ Shifts in the Reconstructed MSA ]

(position)	    0    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   33   34   35   36   37   38   39   40   41   42   43   44   45   46   47   48   49

seq0000   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0001   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0002   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0003   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0004   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0005   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0006   	    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -    1    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0007   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0008   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    3    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0009   	  -14    -    -    -    -    -    -    -    -    -    -    -    -    -    -    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0013   	    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32    -    -    -    -    -    -    -    -    -    -    -
seq0014   	    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0015   	    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    -    1    1    1    1    -    -    3    3    -    3    3    3    3    3    3    3    3    3    3    3  -32  -32  -32    -    -    -    -    -    -    -    -    -    -
seq0018   	  -14  -14  -14  -14  -14  -14  -14  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17  -17    -  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16  -16
seq0020   	  -14  -14  -14  -14  -14  -14  -14  -14  -15  -15  -15  -15    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -    -    3    3    3    3    3    3    3  -32  -32    -    -    -    -    -    -    -    -    -    -    -



(position)	   50   51   52   53   54   55

seq0000   	    -    -    -    -    -  -17
seq0001   	    -    -    -    -    -  -17
seq0002   	    -    -    -    -    -  -17
seq0003   	    -    -    -    -    -  -17
seq0004   	    -    -    -    -    -  -17
seq0005   	    -    -    -    -    -  -17
seq0006   	    -    -    -    -    -  -17
seq0007   	    -    -    -    -    -  -17
seq0008   	    -    -    -    -    -  -17
seq0009   	    -    -    -    -    -  -17
seq0013   	    -    -    -    -    -  -17
seq0014   	    -    -    -    -    -  -17
seq0015   	    -    -    -    -    -  -17
seq0018   	  -16  -16  -16  -16  -16  -16
seq0020   	    -    -    -    -    -  -16



<<<<< Preliminary (2): Put together the mapped position shifts into some Classes ... >>>>>

<< Output of 'br_list_classes_shift_respos' >>

$commoner_shift_flank = 0 .


<<<<< Preliminary (3'): For each MINI-class of shifts, parsimoniously infer the branch(es) separating the affected sequences from the rest. >>>>>

<<<<< ADDITIONAL Preliminary Process (3.5'): Split mini-classes each of which consists of unnaturally remote sequences... >>>>>

... The MINI-classes increased by 1 compared to the old set!! ...


<<<<< Preliminary (4): Merge the MINI-classes of shifts. >>>>>

<<<<< Preliminary (5'): Identify 'trivial' MINI-blocks. >>>>>

<<<<< Preliminary (6): Identify gap-pattern blocks, calculate their Dollo parsimony scenarios, and the initial parsimony candidate scenario of each gapped segment in the segmental MSAs (reference & reconstructed). >>>>>

<<<<< Preliminary (7'): Lump together some neighboring MINI-blocks affecting the identical set of sequences. >>>>>

<< Output of 'lump_together_similar_blocks': Content of @{$composite_miniblocks} (#{composite_miniblocks} = 12) >>

Indx_cmp_miniblock	beg_cmb	end_cmb	mrca	indices,constituent,miniblocks	list,position,shifts	merger,types	indices,involved,seqs

0	0	0	19	10	-14	n/a	0,1,2,3,4,5,7,8,9
1	0	6	26	9	-14	n/a	13
2	0	11	28	8,7	-14,-15	0	14
3	7	55	26	4,6	-17,-16	0	13
4	15	20	11	13	1	n/a	6
5	17	20	25	12	1	n/a	0,1,2,3,4,5,7,8,9,10,11,12
6	23	36	25	15	3	n/a	0,1,2,3,4,5,6,7,8,9,10,11,12
7	30	38	28	14,0	3,-32	0	14
8	37	39	25	1	-32	n/a	0,1,2,3,4,5,6,7,8,9,11,12
9	37	38	20	2	-32	n/a	10
10	55	55	25	3	-17	n/a	0,1,2,3,4,5,6,7,8,9,10,11,12
11	55	55	28	5	-16	n/a	14



<<<<< Preliminary (8): Reorganize the list of insertions/deletions in the initial candidate of parsimonious scenarios, for reference and reconstructed MSAs. >>>>>

<<< (1) For Reference MSA >>>

<<< (2) For Reconstructed MSA >>>

<<<<< Preliminary (9): Identify the pairs of 'equivalent' indel events in the reference & reconstructed MSAs...  >>>>>

<<<<< (i) MAIN PROCESS (1st Round)!!!: Associate each Composite 'MINI-Block' with (an) appropriate type(s) of MSA error(s)... (#{composite blocks} = 12) >>>>>


[[ Results of the Main Process (1st Round) ]]

[ Contents of @cblk_wise_cts_invlvd_indels ]

Indx_cmp_blk	#{rlv_indels}_ref	#{rlv_indels}_rec	#{rltd_indels}_ref	#{rltd_indels}_rec	#{other_involved}_ref	#{other_involved}_rec

0	0	1	1	0	0	0
1	1	0	0	0	0	0
2	0	1	0	0	0	0
3	2	3	1	0	0	0
4	1	1	0	0	0	0
5	0	0	0	2	0	0
6	0	0	1	1	0	0
7	0	2	0	0	0	0
8	1	0	1	2	0	0
9	0	0	0	0	0	0
10	1	0	0	1	0	0
11	0	0	1	1	0	0


[ Skipped Composite-Blocks (#{cblocks} = 1): 9 . ]


[ Contents of @cblk_wise_msa_errors ]

Indx_cmp_blk	Indx_error	len_cblk_ref	len_cblk_rec	Type	br1:beg1:end1:stat_ue1/br2:beg2:end2:stat_ue2/...(ref)	br1:beg1:end1:stat_ue1/br2:beg2:end2:stat_ue2/...(rec)

0	0	1	1	Complex(???)	24:0:13:-	19:1:14:X
1	0	7	7	Complex(???)	26:21:23:X	None
2	0	13	12	Complex(???)	None	27:12:29:-
3	0	48	49	Complex	26:21:23:X/26:34:68:-/25:72:72:-	26:16:16:-/26:21:22:-/26:40:54:-
4	0	6	6	Shift(???)	11:15:15:X	11:0:0:X
5	0	4	4	Complex	None	26:16:16:-/26:21:22:-
6	0	14	14	Complex(???)	26:34:68:-	26:21:22:-
7	0	44	9	Complex(???)	None	27:12:29:-/27:39:39:-
8	0	3	3	Complex(???)	25:72:72:-/26:34:68:-	26:40:54:-/27:39:39:-
9	Skipped!!(NO_ASSOCIATED_EVENT(???))
10	0	1	1	Complex(???)	25:72:72:-	26:40:54:-
11	0	1	1	Complex(???)	25:72:72:-	26:40:54:-


[ Contents of %indel_ref2assoc_cblks ]

Br:beg:end(ref)	indices,of,associated,composite-blocks

24:0:13	0
11:15:15	4
26:21:23	1,3
16:22:22	{Equivalent to '16:25:25'(rec)}
26:34:68	3,6,8
20:71:71	{Equivalent to '20:39:39'(rec)}
25:72:72	3,8,10,11


[ Contents of %indel_rec2assoc_cblks ]

Br:beg:end(rec)	indices,of,associated,composite-blocks

11:0:0	4
19:1:14	0
27:12:29	2,7
26:16:16	3,5
26:21:22	3,5,6
16:25:25	{Equivalent to '16:22:22'(ref)}
27:39:39	7,8
20:39:39	{Equivalent to '20:71:71'(ref)}
26:40:54	3,8,10,11


<<<< (ii) MAIN PROCESS (2nd Round)!!: Attempt to 'hard-link' skipped composite 'MINI-Block's to non-skipped ones, and to resolve Composite 'MINI-Block's associated with 'Complex' errors... >>>>

[[ Interim Results ]]

[ Contents of %cb2hard_linked (#{keys} = 2) ]

Indx_cmp_blk	=> [indices,cblks,hard,linked,by,the,key]

9	=> [8],
11	=> [3],


[ Contents of %cb2hard_linking (#{keys} = 2) ]

Indx_cmp_blk	=> [indices,cblks,hard,linking,the,key]

3	=> [11],
8	=> [9],


[ 'Soft-linked' pairs of composite-blocks (#{pairs} = 0) ]

Indx_cblk_A	indx_cblk_B



[[ Results of the Main Process (2nd Round) ]]

