PMC:5615240 JSONTXT

Annnotations TAB JSON ListView MergeView

{"target":"https://pubannotation.org/docs/sourcedb/PMC/sourceid/5615240","sourcedb":"PMC","sourceid":"5615240","source_url":"https://www.ncbi.nlm.nih.gov/pmc/5615240","text":"Improvement of phylogenetic method to analyze compositional heterogeneity \n\nAbstract\nBackground\nPhylogenetic analysis is a key way to understand current research in the biological processes and detect theory in evolution of natural selection. The evolutionary relationship between species is generally reflected in the form of phylogenetic trees. Many methods for constructing phylogenetic trees, are based on the optimization criteria. We extract the biological data via modeling features, and then compare these characteristics to study the biological evolution between species.\n\nResults\nHere, we use maximum likelihood and Bayesian inference method to establish phylogenetic trees; multi-chain Markov chain Monte Carlo sampling method can be used to select optimal phylogenetic tree, resolving local optimum problem. The correlation model of phylogenetic analysis assumes that phylogenetic trees are built on homogeneous data, however there exists a large deviation in the presence of heterogeneous data. We use conscious detection to solve compositional heterogeneity. Our method is evaluated on two sets of experimental data, a group of bacterial 16S ribosomal RNA gene data, and a group of genetic data with five homologous species.\n\nConclusions\nOur method can obtain accurate phylogenetic trees on the homologous data, and also detect the compositional heterogeneity of experimental data. We provide an efficient method to enhance the accuracy of generated phylogenetic tree. \n\nBackground\nPhylogenetic analysis keeps an important role to understand current research in the biological processes and detect theory in evolution of natural selection. We extract the biological data via modeling features, and then compare these characteristics to study the biological evolution between species. The evolutionary relationship between species is generally reflected in the form of phylogenetic trees. Phylogenetic analysis can help to understand the evolutionary history of biological process, and become important data source for the development of large scale genomic data [1].\n\\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$\\begin{aligned} Q = \\left(\\begin{array}{cccc} -\\mu(a\\pi_{C} + b\\pi_{G} + c\\pi_{T}) \u0026 \\mu a\\pi_{C} \u0026 \\mu b\\pi_{G} \u0026 \\mu c\\pi_{T}\\\\ \\mu g\\pi_{A} \u0026 -\\mu(g\\pi_{A} + d\\pi_{G} + e\\pi_{T}) \u0026 \\mu d\\pi_{G} \u0026 \\mu e\\pi_{T}\\\\ \\mu h\\pi_{A} \u0026 \\mu j\\pi_{C} \u0026 -\\mu(h\\pi_{A} + j\\pi_{C} + f\\pi_{T}) \u0026 \\mu f\\pi_{T}\\\\ \\mu i\\pi_{A} \u0026 \\mu k\\pi_{C} \u0026 \\mu l\\pi_{G} \u0026 -\\mu(i\\pi_{A} + k\\pi_{C} + l\\pi_{G}) \\end{array}\\right) \\end{aligned} $$ \\end{document}Q=−μ(aπC+bπG+cπT)μaπCμbπGμcπTμgπA−μ(gπA+dπG+eπT)μdπGμeπTμhπAμjπC−μ(hπA+jπC+fπT)μfπTμiπAμkπCμlπG−μ(iπA+kπC+lπG) \nMany methods for constructing the phylogenetic tree, are based on optimization criteria, such as maximum parsimony, maximum likelihood and minimum evolution. Maximum parsimony (MP) approach [2, 3] examines all possible topologies or a certain number of topologies, which are likely to choose real phylogenetic tree or approximate phylogenetic tree with fewest evolutionary changes. Maximum likelihood (ML) approach [4, 5] tries to estimate trees by formulating a probabilistic model of evolution and applying known statistical method. It involves that phylogenetic tree yields the highest probability of evolutionary relationship. Minimum evolution (ME) approach [6] searches for the phylogenetic tree that minimizes total branch lengths. It is based on the assumption that the phylogenetic tree with smallest branch lengths is most likely to be the true one.\nThe correlation model of phylogenetic analysis assumes that phylogenetic trees are built on homogeneous data [7–10]. However, there exists a large deviation in the presence of heterogeneous data. As early as twenty years ago, there is first computational method [11] to detect heterogeneity problem, which makes people to doubt the credibility of phylogenetic analysis. Later, Markov model [12] of DNA sequence is used in the system development. Jukes-Cantor model [13] has been improved and taken into account unequal nucleotide compositions, different rates of changes from one nucleotide to another, variations in the form of invariant sites, and discrete gamma-distributed rates of variable sites. At the same time, researchers realize that the process of evolution would be different because of various evolutionary trees. It is obvious that the global rate can be often observed in fast and slow evolutionary species.\nIn this paper, we use maximum likelihood and Bayesian inference method to establish phylogenetic trees; multi-chain Markov chain Monte Carlo sampling method can be used to select optimal phylogenetic tree, resolving local optimum problem. We use two different instantaneous rate matrices, which is symmetrical and implies time-reversibility. We allow more than one composition vector to model compositional heterogeneity, because the overall model is tree-heterogeneous. The analysis is not reversible, and the likelihood depends the position of root. Compared to bootstrapping, Markov chain Monte Carlo yields a much larger sample of trees in the same computational time.\nThe correlation model of phylogenetic analysis assumes that phylogenetic trees are built on homogeneous data, however there exists a large deviation in the presence of heterogeneous data. The sample of trees produced by Markov chain Monte Carlo is highly auto-correlated, whereas many fewer bootstrapping replicates are sufficient. We make a conscious detection of phylogenetic tree produced by multi-chain Markov chain Monte Carlo sampling, analyzing multiple sampling and comparing different samples obtained from estimated values. We use conscious detection to solve compositional heterogeneity. Our method is evaluated on two sets of experimental data, a group of bacterial 16S ribosomal RNA gene data, and a group of genetic data with five homologous species. Our method can obtain accurate phylogenetic tree on the homologous data, and also detect the compositional heterogeneity of experimental data. We provide an efficient method to enhance the accuracy of generated phylogenetic tree.\n\nMethod\nWe construct a phylogenetic tree for a set of DNA sequences. Our method generally contains following processes: aligning sequence [14–16], building phylogenetic trees, and selecting phylogenetic tree.\n\nAligning sequence\nThe genetic information storage location has some differences on distinct species, such as information length and carrier of genetic information. These differences will affect our subsequent analysis. Therefore, we should arrange all possible similar sites in the same position, via a progressive algorithm of multiple sequence alignment. We adopt representational evolutionary multiple sequence alignment algorithm, called ClustalW [17–19]. It displays the alignment score, in form of identities, similarities and differences, and a guide tree of evolutionary relationship between aligned sequences.\n\nBuilding phylogenetic trees\nThe phylogenetic tree consists of many nodes and branches, where the node represents a taxon, namely species or sequence; the branch represents the evolutionary relationship between species [20, 21]. All nodes are divided into external nodes and internal nodes. In general, the external node represents actual observed taxon, the internal node represents location of evolutionary event.\n\nPhylogeny model\nGiven the genetic information, we need the specific phylogeny model to predict evolutionary tree. First, we use the substitution model in terms of conversion rate. In general, the instantaneous conversion matrix is expressed as follows.\nwhere this matrix specifies the rate of change from nucleotide i-row to nucleotide j-column. The nucleotides are in the order A,C,G,T. The stationary frequencies of nucleotides (π A, π C, π G, π g) are obtained by letting the substitution process run for a very long time.\nThe instantaneous conversion rate matrix describes the ratio of substitutions in a short period of time, but we need to calculate probabilities of changes in a certain period of time. Then, the probability matrix can be calculated as follows. \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$ P(t) = e^{Qt} $$ \\end{document}P(t)=eQt where Q is the instantaneous rate matrix, t is the branch length.\nFor a variety of evolutionary trees, we can calculate the likelihood of each phylogenetic tree. We need to consider the transformation between one external node and one internal node, and also consider the transformation between two internal nodes. For a specific site, we can calculate the likelihood of phylogenetic tree as follows. \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$L = \\sum_{y}\\pi_{y_{2s-1}}\\prod_{k=1}^{s}p_{y_{\\sigma(k)},x_{k}}(v_{k})\\prod_{k=s+1}^{2s-2}p_{y_{\\sigma(k)},y_{k}}(v_{k}) $$ \\end{document}L=∑yπy2s−1∏k=1spyσ(k),xk(vk)∏k=s+12s−2pyσ(k),yk(vk) where x and y are the external node and the internal node, respectively. σ(k) is the prefix index of k, v k is the branch length between y σ(k) and x k/y k. External nodes are s input sequences, that is, s species; according to the graph theory, we can get a total of 2s−1 internal nodes.\n\nLog-likelihood\nWe assume that all sites are independent with each other. We can calculate the likelihood of each site [22], and then multiply them together to get final likelihood of phylogenetic tree.\nWe put all possible permutations, and then calculate the likelihood of all possibilities. For a specific site, the likelihood is the sum possibility of all internal nodes, denoted by L j. The likelihood of all sites can be calculated as follows. \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$\\ln L = \\sum_{j=1}^{N}L_{j} $$ \\end{document}lnL=∑j=1NLj where N refers to the length of sequence and the total number of sites.\n\nBayesian inference\nWe can use Bayesian inference [23] to produce the posterior probability of i-th phylogenetic tree, τ i, as follows. \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$f(\\tau_{i}|X) = \\frac{f(X|\\tau_{i})f(\\tau_{i})}{\\sum_{j=1}^{B(s)}f(X|\\tau_{j})f(\\tau_{j})} $$ \\end{document}f(τi|X)=f(X|τi)f(τi)∑j=1B(s)f(X|τj)f(τj) where f(τ i|X) is the posterior probability of τ i, f(X|τ i) is the likelihood of τ i, and f(τ i) is the prior probability of τ i. B(s) is the number of all possible trees.\n\nSelecting phylogenetic tree\nTypically, the posterior probability of phylogenies cannot be calculated analytically, but it can be approximated by sampling phylogenetic trees from the posterior probability distribution.\n\nMarkov chain Monte Carlo\nMarkov chain Monte Carlo (MCMC) [24] can be used to sample phylogenies according to their posterior probabilities. The Metropolis-Hastings-Green (MHG) algorithm is an MCMC method that has been used successfully to approximate posterior probabilities of trees. MHG algorithm constructs a Markov chain with the stationary frequency of posterior probability. The current state is denoted as τ, and a new state is proposed as \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document}$\\tau ^{'}\\phantom {\\dot {i}\\!}$\\end{document}τ′. The new state is accepted with probability as follows. \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$\\begin{aligned} R \u0026 = min\\left(1, \\frac{f(\\tau^{'}|X)}{f(\\tau|X)} \\times \\frac{f(\\tau|\\tau^{'})}{f(\\tau^{'}|\\tau)} \\right) \\\\ \u0026 = min\\left(1, \\frac{f(X|\\tau^{'})f(\\tau^{'})/f(X)}{f(X|\\tau)f(\\tau)/f(X)} \\times \\frac{f(\\tau|\\tau^{'})}{f(\\tau^{'}|\\tau)}\\right) \\\\ \u0026 = min\\left(1, \\frac{f(X|\\tau^{'})}{f(X|\\tau)} \\times \\frac{f(\\tau^{'})}{f(\\tau)} \\times \\frac{f(\\tau|\\tau^{'})}{f(\\tau^{'}|\\tau)}\\right) \\end{aligned} $$ \\end{document}R=min1,f(τ′|X)f(τ|X)×f(τ|τ′)f(τ′|τ)=min1,f(X|τ′)f(τ′)/f(X)f(X|τ)f(τ)/f(X)×f(τ|τ′)f(τ′|τ)=min1,f(X|τ′)f(X|τ)×f(τ′)f(τ)×f(τ|τ′)f(τ′|τ) \nOne important problem of MCMC method is that we can only get the local optimal result, but not the global optimum. As shown in Fig. 1, if the current state is at the peak of T 1, because of the jump decision, the probability of next state must be less than one of current state, so MCMC method may get T 1, but miss better T 2.\nFig. 1 Markov Chain Monte Carlo method can only get the local optimal result in range T 1 or T 3\n\nMulti-chain Markov chain Monte Carlo\nWhen the distribution becomes flat, Multi-Chain Markov Chain Monte Carlo (MCMCMC) is easy to get down from the peak of local optimum, and then try to get more states. We set a cold chain, and rest of heat chains obtained by heat values. The heat value is obtained as follows. \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$ \\beta_{i} = \\frac{1}{1 + c(i-1)} $$ \\end{document}βi=11+c(i−1) where c is the heat coefficient according to the specific experimental data, i is the chain number. The state value of i-chain is calculated as \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document}$\\phantom {\\dot {i}\\!}f_{i}(s) = f_{1}(s)^{\\beta _{i}}$\\end{document}fi(s)=f1(s)βi. Easy to see, the distribution is more gentle, as shown in Fig. 2.\nFig. 2 Cold Chain and Heat Chain for obtaining the global optimum: red point is used for heat status and blue point is used for cold status \nExchange occurs between two selected chains, and the exchange rate is determined as follows. \\documentclass[12pt]{minimal} \t\t\t\t\\usepackage{amsmath} \t\t\t\t\\usepackage{wasysym} \t\t\t\t\\usepackage{amsfonts} \t\t\t\t\\usepackage{amssymb} \t\t\t\t\\usepackage{amsbsy} \t\t\t\t\\usepackage{mathrsfs} \t\t\t\t\\usepackage{upgreek} \t\t\t\t\\setlength{\\oddsidemargin}{-69pt} \t\t\t\t\\begin{document} $$ R = \\frac{f_{i}(s_{j})f_{j}(s_{i})}{f_{i}(s_{i})f_{j}(s_{j})} $$ \\end{document}R=fi(sj)fj(si)fi(si)fj(sj) where s is the state of chain, f(s) is the state s corresponding to the state value in the special chain. When R is more than or equal to 1, it must be exchanged; when R is less than 1, it may be exchanged with probability value.\n\nConscious detection\nThe correlation model of phylogenetic analysis [9] assumes that phylogenetic tree is built on homogeneous data, therefore there exists a large deviation in the presence of heterogeneous data. We use conscious detection to solve compositional heterogeneity. We make a conscious detection of phylogenetic tree, analyze multiple sampling, and compare different samples obtained from estimated values. We extract the partial data from original data and form a new data set. Hundreds of data sets are used to generate different phylogenetic trees, and then get the support rate of different branches in the phylogenetic tree generated by actual data.\nFor m×n data set matrix, we select a random number from 1 to n, and obtain the column corresponding to this random number as re-sampling data for the first column; then repeat the above step to obtain re-sampling data of the second column, and so on. After N-loops selection, we get the final data set with same length of the original data set. For obtained data set, we analyze the phylogenetic tree according to phylogenetic analysis. Finally, we get N phylogenetic trees and their posterior probabilities, and analyze the genetic information.\n\nResults and discussion\nOur method is evaluated on two sets of experimental data, a group of bacterial 16S ribosomal RNA gene data, and a group of genetic data with five homologous species.\n\nExperimental environment\nWe use Think Station S30 Workstation, and all programs are carried out on Ubuntu 14.04 64bit operating system, Intel Xeon E5-2620, 6 core 12 threads A-2 processor, 32G DDR3 1333MHz memory. We also use experiment softwares, such as multiple sequence alignment on CLUSTALX 2.0 [25, 26] and simulation test on JMODELTEST 2.17. The experimental data source is from National Center for Biotechnology Information (NCBI) database.\n\nCompositional heterogeneity in bacterial 16S genes\nOur development system is applied to a problematic data set of bacterial 16S genes [27]: Deinococcus, Thermus, Bacillus, Thermotoga, and Aquifex. Specific information is shown in Table 1.\nTable 1 Bacterial 16S genes: Deinococcus, Thermus, Bacillus, Thermotoga, and Aquifex \nOur method produces the phylogenetic tree on 16S genes. We get prediction result with a tree (Deinococcus, (Aquifex, Thermotoga), (Thermus), Bacillus), as shown in Fig. 3. As we can see, Thermotoga and Aquifex are connected together, Bacillus and Deinococcus are connected together.\nFig. 3 Predicted evolutionary tree on Bacterial 16S Genes \nHowever, other biological evidence, according to their actual evolutionary relationship, should introduce actual phylogenetic tree ((Aquifex, Thermotoga), (Deinococcus, Thermus), Bacillus), as shown in Fig. 4.\nFig. 4 Actual evolutionary tree on Bacterial 16S Genes\n\nConscious detection\nHere, we re-sample 100 groups of data set, and construct one phylogenetic tree for each group of data set. Experiment results on 67 groups of data set are the same with their actual evolutionary relationship, as shown in Table 2. Based on conscious detection, we can correct the experimental data, in order to get the actual phylogenetic tree.\nTable 2 Experiment results of our method with conscious detection on bacterial 16S genes\n\nHomologous experiment\nWe adopt homologous gene sequences to construct the evolutionary tree, and find out evolutionary relationship. We use five species of albumin and c-myc mRNA genes [28]: fish(Actinoptergyii, Salmo salar), frogs(Amphibia, Xenopus laevis), birds(Aves, Gallus gallus), rodents(Rodentia, Rattus norvegicus) and humans(Primates, Homo sapiens), as listed in Table 3.\nTable 3 Homologous data of albumin genes and c-myc mRNA genes \nOur method produces similar experiment results on albumin and c-myc mRNA genes. We get result with a tree (frog, (human, rodent), (bird), fish), as shown in Fig. 5. As we can see, human and rodent are connected together, frog and fish are connected together. Experiment results on albumin and c-myc mRNA genes are the same with their actual evolutionary relationship.\nFig. 5 Evolutionary tree on albumin and c-myc mRNA genes\n\nXanthine dehydrogenase from drosophila\nWe analyze the root of Drosophila saltans and Drosophila willistoni groups, as outgroup rooting with the Xdh gene [29]. Based on morphology, we got the most credible root as shown in the root position r 1 in Fig. 6, as well as based on deletion of an intron in the willistoni group-specific Adh gene. The outgroup is D. virilis, D. pseudoobscura and D. melanogaster. When only the ingroup is used, an acceptable phylogeny can be generated, which is consistent with the known relationships derived from morphological characters. When outgroup taxa are used in the analysis, depending on different model or method, the ingroup’s root position became unstable. This situation is resulted by the compositional differences, especially the ones between ingroup and outgroup taxa.\nFig. 6 Rooting Drosophila saltans and willistoni groups \nFour different roots indicated by positions r 1- r 4 in Fig. 6, the points where the outgroup attach to the ingroup on, are found by various methods. Here, the entire analysis’s overall root and the outgroup root position can be distinguished from each other, numbered as in Fig. 6. When accommodating the heterogeneous composition, this model can recover the outgroup root position r 1. A distance-based analysis can overcome compositional heterogeneity, finding the preferred root position r 1. We produce on these data to choose a model using the tree rooted at position r 1, with the expectation that our choice of model is independent on other roots. A search for the GTR+SS model using PAUP finds a tree rooted at position r 2. A Bayesian analysis using MrBayes also finds a tree rooted at position r 2.\n\nConclusions\nIn our paper, maximum likelihood, Bayesian inference method and multi-chain Markov chain Monte Carlo sampling are used to build and select global optimal phylogenetic tree. And also, compositional heterogeneity problem is solved by using conscious detection. When evaluated on two sets of experimental data, our method is efficient and accurate to generate phylogenetic tree and detect the compositional heterogeneity. ","divisions":[{"label":"Title","span":{"begin":0,"end":74}},{"label":"Abstract","span":{"begin":85,"end":1483}},{"label":"Section","span":{"begin":85,"end":580}},{"label":"Title","span":{"begin":85,"end":95}},{"label":"Section","span":{"begin":582,"end":1238}},{"label":"Title","span":{"begin":582,"end":589}},{"label":"Section","span":{"begin":1240,"end":1482}},{"label":"Title","span":{"begin":1240,"end":1251}},{"label":"Body","span":{"begin":1485,"end":21942}},{"label":"Section","span":{"begin":1485,"end":6341}},{"label":"Title","span":{"begin":1485,"end":1495}},{"label":"Section","span":{"begin":6343,"end":16931}},{"label":"Title","span":{"begin":6343,"end":6349}},{"label":"Section","span":{"begin":6552,"end":7170}},{"label":"Title","span":{"begin":6552,"end":6569}},{"label":"Section","span":{"begin":7172,"end":11383}},{"label":"Title","span":{"begin":7172,"end":7199}},{"label":"Section","span":{"begin":7588,"end":9812}},{"label":"Title","span":{"begin":7588,"end":7603}},{"label":"Section","span":{"begin":9814,"end":10657}},{"label":"Title","span":{"begin":9814,"end":9828}},{"label":"Section","span":{"begin":10659,"end":11382}},{"label":"Title","span":{"begin":10659,"end":10677}},{"label":"Section","span":{"begin":11384,"end":16930}},{"label":"Title","span":{"begin":11384,"end":11411}},{"label":"Section","span":{"begin":11603,"end":13677}},{"label":"Title","span":{"begin":11603,"end":11627}},{"label":"Figure caption","span":{"begin":13579,"end":13676}},{"label":"Section","span":{"begin":13677,"end":15716}},{"label":"Title","span":{"begin":13677,"end":13713}},{"label":"Figure caption","span":{"begin":14879,"end":15018}},{"label":"Section","span":{"begin":15718,"end":16929}},{"label":"Title","span":{"begin":15718,"end":15737}},{"label":"Section","span":{"begin":16931,"end":21510}},{"label":"Title","span":{"begin":16931,"end":16953}},{"label":"Section","span":{"begin":17121,"end":17569}},{"label":"Title","span":{"begin":17121,"end":17145}},{"label":"Section","span":{"begin":17571,"end":18959}},{"label":"Title","span":{"begin":17571,"end":17621}},{"label":"Table caption","span":{"begin":17810,"end":17895}},{"label":"Figure caption","span":{"begin":18180,"end":18237}},{"label":"Figure caption","span":{"begin":18449,"end":18503}},{"label":"Section","span":{"begin":18505,"end":18958}},{"label":"Title","span":{"begin":18505,"end":18524}},{"label":"Table caption","span":{"begin":18869,"end":18957}},{"label":"Section","span":{"begin":18959,"end":19829}},{"label":"Title","span":{"begin":18959,"end":18980}},{"label":"Table caption","span":{"begin":19341,"end":19402}},{"label":"Figure caption","span":{"begin":19772,"end":19828}},{"label":"Section","span":{"begin":19830,"end":21509}},{"label":"Title","span":{"begin":19830,"end":19868}},{"label":"Figure caption","span":{"begin":20643,"end":20698}},{"label":"Section","span":{"begin":21511,"end":21941}},{"label":"Title","span":{"begin":21511,"end":21522}}],"tracks":[{"project":"2_test","denotations":[{"id":"28950863-7288891-14911352","span":{"begin":3306,"end":3307},"obj":"7288891"},{"id":"28950863-7932792-14911353","span":{"begin":3309,"end":3310},"obj":"7932792"},{"id":"28950863-3447015-14911354","span":{"begin":3860,"end":3861},"obj":"3447015"},{"id":"28950863-21546353-14911354","span":{"begin":3860,"end":3861},"obj":"21546353"},{"id":"28950863-12912839-14911354","span":{"begin":3860,"end":3861},"obj":"12912839"},{"id":"28950863-16928733-14911354","span":{"begin":3860,"end":3861},"obj":"16928733"},{"id":"28950863-19391266-14911355","span":{"begin":4013,"end":4015},"obj":"19391266"},{"id":"28950863-5456129-14911356","span":{"begin":6481,"end":6483},"obj":"5456129"},{"id":"28950863-7265238-14911356","span":{"begin":6481,"end":6483},"obj":"7265238"},{"id":"28950863-5420325-14911356","span":{"begin":6481,"end":6483},"obj":"5420325"},{"id":"28950863-3243435-14911357","span":{"begin":7004,"end":7006},"obj":"3243435"},{"id":"28950863-1591615-14911357","span":{"begin":7004,"end":7006},"obj":"1591615"},{"id":"28950863-17846036-14911357","span":{"begin":7004,"end":7006},"obj":"17846036"},{"id":"28950863-12411604-14911358","span":{"begin":7391,"end":7393},"obj":"12411604"},{"id":"28950863-5334057-14911359","span":{"begin":7395,"end":7397},"obj":"5334057"},{"id":"28950863-12116640-14911360","span":{"begin":9933,"end":9935},"obj":"12116640"},{"id":"28950863-12912839-14911361","span":{"begin":15786,"end":15787},"obj":"12912839"},{"id":"28950863-9810230-14911362","span":{"begin":17422,"end":17424},"obj":"9810230"},{"id":"28950863-9396791-14911363","span":{"begin":17426,"end":17428},"obj":"9396791"},{"id":"28950863-15503675-14911364","span":{"begin":17706,"end":17708},"obj":"15503675"},{"id":"28950863-10991788-14911365","span":{"begin":19984,"end":19986},"obj":"10991788"}],"attributes":[{"subj":"28950863-7288891-14911352","pred":"source","obj":"2_test"},{"subj":"28950863-7932792-14911353","pred":"source","obj":"2_test"},{"subj":"28950863-3447015-14911354","pred":"source","obj":"2_test"},{"subj":"28950863-21546353-14911354","pred":"source","obj":"2_test"},{"subj":"28950863-12912839-14911354","pred":"source","obj":"2_test"},{"subj":"28950863-16928733-14911354","pred":"source","obj":"2_test"},{"subj":"28950863-19391266-14911355","pred":"source","obj":"2_test"},{"subj":"28950863-5456129-14911356","pred":"source","obj":"2_test"},{"subj":"28950863-7265238-14911356","pred":"source","obj":"2_test"},{"subj":"28950863-5420325-14911356","pred":"source","obj":"2_test"},{"subj":"28950863-3243435-14911357","pred":"source","obj":"2_test"},{"subj":"28950863-1591615-14911357","pred":"source","obj":"2_test"},{"subj":"28950863-17846036-14911357","pred":"source","obj":"2_test"},{"subj":"28950863-12411604-14911358","pred":"source","obj":"2_test"},{"subj":"28950863-5334057-14911359","pred":"source","obj":"2_test"},{"subj":"28950863-12116640-14911360","pred":"source","obj":"2_test"},{"subj":"28950863-12912839-14911361","pred":"source","obj":"2_test"},{"subj":"28950863-9810230-14911362","pred":"source","obj":"2_test"},{"subj":"28950863-9396791-14911363","pred":"source","obj":"2_test"},{"subj":"28950863-15503675-14911364","pred":"source","obj":"2_test"},{"subj":"28950863-10991788-14911365","pred":"source","obj":"2_test"}]}],"config":{"attribute types":[{"pred":"source","value type":"selection","values":[{"id":"2_test","color":"#93ecc6","default":true}]}]}}