gitextract_mptrfmw2/ ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── issue.md │ └── workflows/ │ └── tests.yml ├── .gitignore ├── .travis.yml ├── CMakeLists.txt ├── CONTENTS.txt ├── CONTRIBUTING.md ├── EidosSLiMTests/ │ ├── EidosTests.mm │ ├── Info.plist │ └── SLiMTests.mm ├── EidosScribe/ │ ├── Base.lproj/ │ │ ├── EidosAboutWindow.xib │ │ ├── EidosConsoleWindow.xib │ │ ├── EidosHelpWindow.xib │ │ └── MainMenu.xib │ ├── EidosAppDelegate.h │ ├── EidosAppDelegate.mm │ ├── EidosCocoaExtra.h │ ├── EidosCocoaExtra.mm │ ├── EidosConsoleTextView.h │ ├── EidosConsoleTextView.mm │ ├── EidosConsoleTextViewDelegate.h │ ├── EidosConsoleWindowController.h │ ├── EidosConsoleWindowController.mm │ ├── EidosConsoleWindowControllerDelegate.h │ ├── EidosHelpClasses.rtf │ ├── EidosHelpController.h │ ├── EidosHelpController.mm │ ├── EidosHelpFunctions.rtf │ ├── EidosHelpOperators.rtf │ ├── EidosHelpStatements.rtf │ ├── EidosHelpTypes.rtf │ ├── EidosPrettyprinter.h │ ├── EidosPrettyprinter.mm │ ├── EidosScribe-Info.plist │ ├── EidosScribe.entitlements │ ├── EidosScribe_multi-Info.plist │ ├── EidosScribe_multi.entitlements │ ├── EidosTextView.h │ ├── EidosTextView.mm │ ├── EidosTextViewDelegate.h │ ├── EidosValueWrapper.h │ ├── EidosValueWrapper.mm │ ├── EidosVariableBrowserController.h │ ├── EidosVariableBrowserController.mm │ ├── EidosVariableBrowserControllerDelegate.h │ ├── Images.xcassets/ │ │ └── AppIcon.appiconset/ │ │ └── Contents.json │ └── main.m ├── LICENSE ├── PARALLEL ├── QtSLiM/ │ ├── QtSLiM.pro │ ├── QtSLiMAbout.cpp │ ├── QtSLiMAbout.h │ ├── QtSLiMAbout.ui │ ├── QtSLiMAppDelegate.cpp │ ├── QtSLiMAppDelegate.h │ ├── QtSLiMChromosomeWidget.cpp │ ├── QtSLiMChromosomeWidget.h │ ├── QtSLiMChromosomeWidget_GL.cpp │ ├── QtSLiMChromosomeWidget_QT.cpp │ ├── QtSLiMConsoleTextEdit.cpp │ ├── QtSLiMConsoleTextEdit.h │ ├── QtSLiMDebugOutputWindow.cpp │ ├── QtSLiMDebugOutputWindow.h │ ├── QtSLiMDebugOutputWindow.ui │ ├── QtSLiMEidosConsole.cpp │ ├── QtSLiMEidosConsole.h │ ├── QtSLiMEidosConsole.ui │ ├── QtSLiMEidosConsole_glue.cpp │ ├── QtSLiMEidosPrettyprinter.cpp │ ├── QtSLiMEidosPrettyprinter.h │ ├── QtSLiMExtras.cpp │ ├── QtSLiMExtras.h │ ├── QtSLiMFindPanel.cpp │ ├── QtSLiMFindPanel.h │ ├── QtSLiMFindPanel.ui │ ├── QtSLiMFindRecipe.cpp │ ├── QtSLiMFindRecipe.h │ ├── QtSLiMFindRecipe.ui │ ├── QtSLiMGraphView.cpp │ ├── QtSLiMGraphView.h │ ├── QtSLiMGraphView_1DPopulationSFS.cpp │ ├── QtSLiMGraphView_1DPopulationSFS.h │ ├── QtSLiMGraphView_1DSampleSFS.cpp │ ├── QtSLiMGraphView_1DSampleSFS.h │ ├── QtSLiMGraphView_2DPopulationSFS.cpp │ ├── QtSLiMGraphView_2DPopulationSFS.h │ ├── QtSLiMGraphView_2DSampleSFS.cpp │ ├── QtSLiMGraphView_2DSampleSFS.h │ ├── QtSLiMGraphView_AgeDistribution.cpp │ ├── QtSLiMGraphView_AgeDistribution.h │ ├── QtSLiMGraphView_CustomPlot.cpp │ ├── QtSLiMGraphView_CustomPlot.h │ ├── QtSLiMGraphView_FitnessOverTime.cpp │ ├── QtSLiMGraphView_FitnessOverTime.h │ ├── QtSLiMGraphView_FixationTimeHistogram.cpp │ ├── QtSLiMGraphView_FixationTimeHistogram.h │ ├── QtSLiMGraphView_FrequencyTrajectory.cpp │ ├── QtSLiMGraphView_FrequencyTrajectory.h │ ├── QtSLiMGraphView_LifetimeReproduction.cpp │ ├── QtSLiMGraphView_LifetimeReproduction.h │ ├── QtSLiMGraphView_LossTimeHistogram.cpp │ ├── QtSLiMGraphView_LossTimeHistogram.h │ ├── QtSLiMGraphView_MultispeciesPopSizeOverTime.cpp │ ├── QtSLiMGraphView_MultispeciesPopSizeOverTime.h │ ├── QtSLiMGraphView_PopFitnessDist.cpp │ ├── QtSLiMGraphView_PopFitnessDist.h │ ├── QtSLiMGraphView_PopSizeOverTime.cpp │ ├── QtSLiMGraphView_PopSizeOverTime.h │ ├── QtSLiMGraphView_PopulationVisualization.cpp │ ├── QtSLiMGraphView_PopulationVisualization.h │ ├── QtSLiMGraphView_SubpopFitnessDists.cpp │ ├── QtSLiMGraphView_SubpopFitnessDists.h │ ├── QtSLiMHaplotypeManager.cpp │ ├── QtSLiMHaplotypeManager.h │ ├── QtSLiMHaplotypeManager_GL.cpp │ ├── QtSLiMHaplotypeManager_QT.cpp │ ├── QtSLiMHaplotypeOptions.cpp │ ├── QtSLiMHaplotypeOptions.h │ ├── QtSLiMHaplotypeOptions.ui │ ├── QtSLiMHaplotypeProgress.cpp │ ├── QtSLiMHaplotypeProgress.h │ ├── QtSLiMHaplotypeProgress.ui │ ├── QtSLiMHelpWindow.cpp │ ├── QtSLiMHelpWindow.h │ ├── QtSLiMHelpWindow.ui │ ├── QtSLiMIndividualsWidget.cpp │ ├── QtSLiMIndividualsWidget.h │ ├── QtSLiMIndividualsWidget_GL.cpp │ ├── QtSLiMIndividualsWidget_QT.cpp │ ├── QtSLiMOpenGL.cpp │ ├── QtSLiMOpenGL.h │ ├── QtSLiMOpenGL_Emulation.h │ ├── QtSLiMPopulationTable.cpp │ ├── QtSLiMPopulationTable.h │ ├── QtSLiMPreferences.cpp │ ├── QtSLiMPreferences.h │ ├── QtSLiMPreferences.ui │ ├── QtSLiMScriptTextEdit.cpp │ ├── QtSLiMScriptTextEdit.h │ ├── QtSLiMSyntaxHighlighting.cpp │ ├── QtSLiMSyntaxHighlighting.h │ ├── QtSLiMTablesDrawer.cpp │ ├── QtSLiMTablesDrawer.h │ ├── QtSLiMTablesDrawer.ui │ ├── QtSLiMVariableBrowser.cpp │ ├── QtSLiMVariableBrowser.h │ ├── QtSLiMVariableBrowser.ui │ ├── QtSLiMWindow.cpp │ ├── QtSLiMWindow.h │ ├── QtSLiMWindow.ui │ ├── QtSLiMWindow_glue.cpp │ ├── QtSLiM_AppIcon.icns │ ├── QtSLiM_DocIcon.icns │ ├── QtSLiM_Info.plist │ ├── QtSLiM_Plot.cpp │ ├── QtSLiM_Plot.h │ ├── QtSLiM_SLiMgui.cpp │ ├── QtSLiM_SLiMgui.h │ ├── buttons.qrc │ ├── buttons_DARK.qrc │ ├── help/ │ │ ├── EidosHelpClasses.html │ │ ├── EidosHelpFunctions.html │ │ ├── EidosHelpOperators.html │ │ ├── EidosHelpStatements.html │ │ ├── EidosHelpTypes.html │ │ ├── SLiMHelpCallbacks.html │ │ ├── SLiMHelpClasses.html │ │ └── SLiMHelpFunctions.html │ ├── help.qrc │ ├── icons.qrc │ ├── main.cpp │ ├── recipes/ │ │ ├── Recipe 10.1 - Temporally varying selection.txt │ │ ├── Recipe 10.2 - Spatially varying selection.txt │ │ ├── Recipe 10.3.1 - Fitness as a function of genomic background, Epistasis I.txt │ │ ├── Recipe 10.3.1 - Fitness as a function of genomic background, Epistasis II.txt │ │ ├── Recipe 10.4.1 - Fitness as a function of population composition, Frequency-dependent selection I.txt │ │ ├── Recipe 10.4.1 - Fitness as a function of population composition, Frequency-dependent selection II.txt │ │ ├── Recipe 10.4.1 - Fitness as a function of population composition, Frequency-dependent selection III.txt │ │ ├── Recipe 10.4.2 - Fitness as a function of population composition, Cultural effects on fitness.txt │ │ ├── Recipe 10.4.3 - Fitness as a function of population composition, Kin selection and the green-beard effect.txt │ │ ├── Recipe 10.5 - Changing selection coefficients with setSelectionCoeff().txt │ │ ├── Recipe 10.6 - Varying the dominance coefficient among mutations I.txt │ │ ├── Recipe 10.6 - Varying the dominance coefficient among mutations II.txt │ │ ├── Recipe 11.1 - Assortative mating.txt │ │ ├── Recipe 11.2 - Sequential mate search I.txt │ │ ├── Recipe 11.2 - Sequential mate search II.txt │ │ ├── Recipe 11.3 - Gametophytic self-incompatibility.txt │ │ ├── Recipe 12.1 - Social learning of cultural traits.txt │ │ ├── Recipe 12.2 - Lethal epistasis I.txt │ │ ├── Recipe 12.2 - Lethal epistasis II.txt │ │ ├── Recipe 12.3 - Simulating gene drive.txt │ │ ├── Recipe 12.4 - Suppressing hermaphroditic selfing.txt │ │ ├── Recipe 12.5 - Tracking separate sexes in script.txt │ │ ├── Recipe 13.1 - Polygenic selection.txt │ │ ├── Recipe 13.2 - A simple model of variable QTL effect sizes.txt │ │ ├── Recipe 13.3 - A model of discrete QTL effects across multiple chromosomes.txt │ │ ├── Recipe 13.4 - A quantitative genetics model with heritability.txt │ │ ├── Recipe 13.5 - A QTL-based model with two quantitative phenotypic traits and pleiotropy.txt │ │ ├── Recipe 13.6 - A variety of fitness functions I (stabilizing selection).txt │ │ ├── Recipe 13.6 - A variety of fitness functions II (directional selection).txt │ │ ├── Recipe 13.6 - A variety of fitness functions III (disruptive selection).txt │ │ ├── Recipe 13.6 - A variety of fitness functions IV (truncation selection).txt │ │ ├── Recipe 13.7 - Negative frequency-dependence on a quantitative trait.txt │ │ ├── Recipe 14.1 - Relatedness, inbreeding, and heterozygosity.txt │ │ ├── Recipe 14.10 - Modeling transposable elements.txt │ │ ├── Recipe 14.11 - Modeling opposite ends of a chromosome I.txt │ │ ├── Recipe 14.11 - Modeling opposite ends of a chromosome II.txt │ │ ├── Recipe 14.12 - Visualizing ancestry and admixture with mutation() callbacks.txt │ │ ├── Recipe 14.13 - Modeling biallelic loci with a mutation() callback I.txt │ │ ├── Recipe 14.13 - Modeling biallelic loci with a mutation() callback II.txt │ │ ├── Recipe 14.14 - Modeling biallelic loci in script.txt │ │ ├── Recipe 14.15 - Using runs of homozygosity (ROH) to track inbreeding.txt │ │ ├── Recipe 14.16 - Visualizing linkage disequilibrium.txt │ │ ├── Recipe 14.2 - Mortality-based fitness I.txt │ │ ├── Recipe 14.2 - Mortality-based fitness II.txt │ │ ├── Recipe 14.2 - Mortality-based fitness III.txt │ │ ├── Recipe 14.3 - Reading initial simulation state from an MS output file I.txt │ │ ├── Recipe 14.3 - Reading initial simulation state from an MS output file II.txt │ │ ├── Recipe 14.4 - Modeling chromosomal inversions with a recombination() callback.txt │ │ ├── Recipe 14.5 - Estimating model parameters with ABC.txt │ │ ├── Recipe 14.6 - Tracking local ancestry along the chromosome.txt │ │ ├── Recipe 14.7 - Live plotting with R using system().txt │ │ ├── Recipe 14.8 - Using mutation rate variation to model varying functional density.txt │ │ ├── Recipe 14.9 - Modeling microsatellites.txt │ │ ├── Recipe 15.1 - A minimal nonWF model.txt │ │ ├── Recipe 15.10 - Recording a pedigree.txt │ │ ├── Recipe 15.11 - Dynamic population structure in nonWF models.txt │ │ ├── Recipe 15.12 - Implementing a Wright-Fisher model with a nonWF model I.txt │ │ ├── Recipe 15.12 - Implementing a Wright-Fisher model with a nonWF model II.txt │ │ ├── Recipe 15.13 - Range expansion in a stepping-stone model I.txt │ │ ├── Recipe 15.13 - Range expansion in a stepping-stone model II.txt │ │ ├── Recipe 15.14 - Logistic population growth with the Beverton-Holt model.txt │ │ ├── Recipe 15.2 - Age structure (a life table model).txt │ │ ├── Recipe 15.3 - Handling all reproduction at once with big bang reproduction.txt │ │ ├── Recipe 15.4 - Monogamous mating and variation in litter size.txt │ │ ├── Recipe 15.5 - Beneficial mutations and absolute fitness.txt │ │ ├── Recipe 15.6 - A metapopulation extinction-colonization model.txt │ │ ├── Recipe 15.7 - Habitat choice.txt │ │ ├── Recipe 15.8 - Evolutionary rescue after environmental change.txt │ │ ├── Recipe 15.9 - Litter size and parental investment.txt │ │ ├── Recipe 16.1 - Pollen flow.txt │ │ ├── Recipe 16.10 - Modeling pseudo-autosomal regions (PARs) with addMultiRecombinant().txt │ │ ├── Recipe 16.11 - Life-long monogamous mating.txt │ │ ├── Recipe 16.2 - Following a pedigree.txt │ │ ├── Recipe 16.3 - Modeling clonal haploid bacteria with horizontal gene transfer.txt │ │ ├── Recipe 16.4 - Alternation of generations.txt │ │ ├── Recipe 16.5 - Meiotic drive.txt │ │ ├── Recipe 16.6 - Sperm storage with a survival() callback.txt │ │ ├── Recipe 16.7 - Tracking separate sexes in script, nonWF style.txt │ │ ├── Recipe 16.8 - Modeling haplodiploidy with addRecombinant().txt │ │ ├── Recipe 16.9 - Complex multi-chromosome inheritance with addMultiRecombinant().txt │ │ ├── Recipe 17.1 - A simple 2D continuous-space model.txt │ │ ├── Recipe 17.10 - A simple biogeographic landscape model.txt │ │ ├── Recipe 17.11 - Local adaptation on a heterogeneous landscape map.txt │ │ ├── Recipe 17.12 - Periodic spatial boundaries.txt │ │ ├── Recipe 17.13 - Density-dependent fecundity with summarizeIndividuals().txt │ │ ├── Recipe 17.14 - Directed dispersal with the SpatialMap class.txt │ │ ├── Recipe 17.15 - Spatial competition and spatial mate choice in a nonWF model.txt │ │ ├── Recipe 17.16 - A spatial model with carrying-capacity density.txt │ │ ├── Recipe 17.17 - A spatial epidemiological S-I-R model.txt │ │ ├── Recipe 17.18 - A sexual, age-structured spatial model.txt │ │ ├── Recipe 17.19 - Modeling indirect competition mediated by resource availability.txt │ │ ├── Recipe 17.2 - Spatial competition.txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions I (stopping boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions II (reflecting boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions III (absorbing boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions IV (reprising boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions V (dispersal kernels).txt │ │ ├── Recipe 17.4 - Mate choice with a spatial kernel.txt │ │ ├── Recipe 17.5 - Mate choice with a nearest-neighbor search.txt │ │ ├── Recipe 17.6 - Divergence due to phenotypic competition with an interaction() callback.txt │ │ ├── Recipe 17.7 - Modeling phenotype as a spatial dimension.txt │ │ ├── Recipe 17.8 - Sympatric speciation facilitated by assortative mating.txt │ │ ├── Recipe 17.9 - Speciation due to spatial variation in selection.txt │ │ ├── Recipe 18.1 - A minimal tree-seq model.txt │ │ ├── Recipe 18.10 - Adding a neutral burn-in after simulation with recapitation I.txt │ │ ├── Recipe 18.10 - Adding a neutral burn-in after simulation with recapitation II.py │ │ ├── Recipe 18.11 - Optimizing tree-sequence simplification.txt │ │ ├── Recipe 18.2 - Overlaying neutral mutations.py │ │ ├── Recipe 18.3 - Simulation conditional upon fixation of a sweep, preserving ancestry I.txt │ │ ├── Recipe 18.3 - Simulation conditional upon fixation of a sweep, preserving ancestry II.txt │ │ ├── Recipe 18.4 - Detecting the dip in diversity (analyzing tree heights in Python) I.txt │ │ ├── Recipe 18.4 - Detecting the dip in diversity (analyzing tree heights in Python) II.py │ │ ├── Recipe 18.5 - Mapping admixture (analyzing ancestry in Python) I.txt │ │ ├── Recipe 18.5 - Mapping admixture (analyzing ancestry in Python) II.py │ │ ├── Recipe 18.6 - Measuring the coalescence time of a model I.txt │ │ ├── Recipe 18.6 - Measuring the coalescence time of a model II.txt │ │ ├── Recipe 18.7 - Analyzing selection coefficients in Python with tskit I.txt │ │ ├── Recipe 18.7 - Analyzing selection coefficients in Python with tskit II.py │ │ ├── Recipe 18.8 - Starting a hermaphroditic WF model with a coalescent history I.py │ │ ├── Recipe 18.8 - Starting a hermaphroditic WF model with a coalescent history II.txt │ │ ├── Recipe 18.8 - Starting a hermaphroditic WF model with a coalescent history III.py │ │ ├── Recipe 18.9 - Starting a sexual nonWF model with a coalescent history I.py │ │ ├── Recipe 18.9 - Starting a sexual nonWF model with a coalescent history II.txt │ │ ├── Recipe 19.1 - A simple neutral nucleotide-based model.txt │ │ ├── Recipe 19.10 - Varying the mutation rate along the chromosome in a nucleotide-based model.txt │ │ ├── Recipe 19.11 - Modeling GC-biased gene conversion (gBGC).txt │ │ ├── Recipe 19.12 - Reading VCF files to create nucleotide-based SNPs.txt │ │ ├── Recipe 19.13 - Tree-sequence recording and nucleotide-based models I.txt │ │ ├── Recipe 19.13 - Tree-sequence recording and nucleotide-based models II.py │ │ ├── Recipe 19.13 - Tree-sequence recording and nucleotide-based models III.py │ │ ├── Recipe 19.14 - Modeling identity by state (IBS) (uniquing mutations with a mutation() callback).txt │ │ ├── Recipe 19.15 - Modeling identity by state (IBS) (uniquing back-mutations to the ancestral state).txt │ │ ├── Recipe 19.2 - Reading an ancestral nucleotide sequence from a FASTA file.txt │ │ ├── Recipe 19.3 - Sequence output from nucleotide-based models.txt │ │ ├── Recipe 19.4 - Back-mutations, independent mutational lineages, and VCF output.txt │ │ ├── Recipe 19.5 - Modeling elevated CpG mutation rates and equilibrium nucleotide frequencies.txt │ │ ├── Recipe 19.6 - A nucleotide-based model with introduced non-nucleotide-based mutations.txt │ │ ├── Recipe 19.7 - Using standard SLiM fitness effects with nucleotides (modeling synonymous sites).txt │ │ ├── Recipe 19.8 - Defining sequence-based fitness effects at the nucleotide level.txt │ │ ├── Recipe 19.9 - Defining sequence-based fitness effects at the amino acid level.txt │ │ ├── Recipe 20.1 - A simple multispecies model.txt │ │ ├── Recipe 20.2 - A two-species model.txt │ │ ├── Recipe 20.3 - A deterministic host-parasitoid model.txt │ │ ├── Recipe 20.4 - An individual-based host-parasitoid model I.txt │ │ ├── Recipe 20.4 - An individual-based host-parasitoid model II.txt │ │ ├── Recipe 20.5 - A continuous-space host-parasitoid model.txt │ │ ├── Recipe 20.6 - A coevolutionary host-parasitoid trait-matching model.txt │ │ ├── Recipe 20.7 - A coevolutionary host-parasite matching-allele model.txt │ │ ├── Recipe 20.8 - Within-host reproduction in a host-pathogen model.txt │ │ ├── Recipe 4.1 - A basic neutral simulation.txt │ │ ├── Recipe 4.1.10 - Using symbolic constants for model parameters.txt │ │ ├── Recipe 4.2.1 - Basic output, Entire population.txt │ │ ├── Recipe 4.2.2 - Basic output, Random population sample.txt │ │ ├── Recipe 4.2.3 - Basic output, Sampling individuals for output.txt │ │ ├── Recipe 4.2.4 - Basic output, Substitutions.txt │ │ ├── Recipe 4.2.5 - Basic output, Automatic logging with LogFile.txt │ │ ├── Recipe 4.2.6 - Basic output, Custom output with Eidos.txt │ │ ├── Recipe 5.1.1 - Subpopulation size, Instantaneous changes.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth I.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth II.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth III.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth IV.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth V.txt │ │ ├── Recipe 5.1.4 - Subpopulation size, Cyclical changes.txt │ │ ├── Recipe 5.1.5 - Subpopulation size, Context-dependent changes (Muller's Ratchet).txt │ │ ├── Recipe 5.2.1 - Population structure, Adding subpopulations.txt │ │ ├── Recipe 5.2.2 - Population structure, Removing subpopulations.txt │ │ ├── Recipe 5.2.3 - Population structure, Splitting subpopulations.txt │ │ ├── Recipe 5.2.4 - Population structure, Joining subpopulations.txt │ │ ├── Recipe 5.3.1 - Migration and admixture, A linear stepping-stone model.txt │ │ ├── Recipe 5.3.2 - Migration and admixture, A non-spatial metapopulation.txt │ │ ├── Recipe 5.3.3 - Migration and admixture, A two-dimensional subpopulation matrix.txt │ │ ├── Recipe 5.3.4 - Migration and admixture, A random, sparse spatial metapopulation.txt │ │ ├── Recipe 5.3.5 - Migration and admixture, Reading a migration matrix from a file.txt │ │ ├── Recipe 5.4 - The Gravel et al. (2011) model of human evolution I.txt │ │ ├── Recipe 5.4 - The Gravel et al. (2011) model of human evolution II.txt │ │ ├── Recipe 5.5 - Rescaling population sizes to improve simulation performance I.txt │ │ ├── Recipe 5.5 - Rescaling population sizes to improve simulation performance II.txt │ │ ├── Recipe 6.1 - Genomic structure, Part I (Mutation types and fitness effects).txt │ │ ├── Recipe 6.2 - Genomic structure, Part II (Genomic element types).txt │ │ ├── Recipe 6.3 - Genomic structure, Part III (Chromosome organization).txt │ │ ├── Recipe 6.4 - Genomic structure, Part IV (Custom display colors in SLiMgui).txt │ │ ├── Recipe 8.1.1 - Reproduction, Enabling separate sexes.txt │ │ ├── Recipe 8.1.2 - Reproduction, Sex ratios I.txt │ │ ├── Recipe 8.1.2 - Reproduction, Sex ratios II.txt │ │ ├── Recipe 8.1.3 - Reproduction, Selfing in hermaphroditic populations.txt │ │ ├── Recipe 8.1.4 - Reproduction, Cloning I.txt │ │ ├── Recipe 8.1.4 - Reproduction, Cloning II.txt │ │ ├── Recipe 8.2.1 - Recombination, Making a random recombination map.txt │ │ ├── Recipe 8.2.2 - Recombination, Reading a recombination map from a file.txt │ │ ├── Recipe 8.2.3 - Recombination, Unlinked loci.txt │ │ ├── Recipe 8.2.4 - Recombination, Gene conversion.txt │ │ ├── Recipe 8.3.1 - Multiple diploid autosomes.txt │ │ ├── Recipe 8.3.2 - Clonal haploids and chromosome types.txt │ │ ├── Recipe 8.3.3 - Haploids with recombination.txt │ │ ├── Recipe 8.3.4 - Sex-chromosome evolution and null haplosomes.txt │ │ ├── Recipe 8.3.5 - Modeling the full human genome.txt │ │ ├── Recipe 8.3.6 - A model of bryophytes with UV sex determination.txt │ │ ├── Recipe 8.3.7 - Output from multiple-chromosome models.txt │ │ ├── Recipe 9.1 - Introducing adaptive mutations.txt │ │ ├── Recipe 9.10 - Tracking the fate of background mutations.txt │ │ ├── Recipe 9.11 - Effective population size versus census population size.txt │ │ ├── Recipe 9.12 - Observing the site frequency spectrum (SFS) during selective sweeps.txt │ │ ├── Recipe 9.2 - Making sweeps conditional on fixation.txt │ │ ├── Recipe 9.3 - Making sweeps conditional on establishment.txt │ │ ├── Recipe 9.4 - Partial sweeps.txt │ │ ├── Recipe 9.5.1 - A soft sweep from recurrent de novo mutations in a large population.txt │ │ ├── Recipe 9.5.2 - A soft sweep with a fixed de novo mutation schedule.txt │ │ ├── Recipe 9.5.3 - A soft sweep with a random de novo mutation schedule.txt │ │ ├── Recipe 9.6.1 - A sweep from standing variation at a random locus.txt │ │ ├── Recipe 9.6.2 - A sweep from standing variation at a predetermined locus.txt │ │ ├── Recipe 9.7 - Adaptive introgression.txt │ │ ├── Recipe 9.8 - Fixation probabilities under Hill-Robertson interference.txt │ │ ├── Recipe 9.9 - Keeping a reference to a sweep mutation.txt │ │ └── _README.txt │ └── recipes.qrc ├── README.md ├── SLiM.pro ├── SLiM.spec ├── SLiM.xcodeproj/ │ ├── project.pbxproj │ ├── project.xcworkspace/ │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata/ │ │ ├── IDEWorkspaceChecks.plist │ │ └── WorkspaceSettings.xcsettings │ └── xcshareddata/ │ └── xcschemes/ │ ├── EidosScribe.xcscheme │ ├── EidosScribe_multi.xcscheme │ ├── SLiM.xcscheme │ ├── SLiM_multi.xcscheme │ ├── SLiMguiLegacy.xcscheme │ ├── SLiMguiLegacy_multi.xcscheme │ ├── eidos.xcscheme │ └── eidos_multi.xcscheme ├── SLiMgui/ │ ├── AppDelegate.h │ ├── AppDelegate.mm │ ├── Base.lproj/ │ │ ├── AboutWindow.xib │ │ ├── FindRecipePanel.xib │ │ ├── GraphAxisRescaleSheet.xib │ │ ├── GraphBarRescaleSheet.xib │ │ ├── GraphWindow.xib │ │ ├── HelpWindow.xib │ │ ├── MainMenu.xib │ │ ├── ProfileReport.xib │ │ ├── SLiMWindow.xib │ │ ├── ScriptModSheet.xib │ │ ├── ScriptMod_AddGenomicElement.xib │ │ ├── ScriptMod_AddGenomicElementType.xib │ │ ├── ScriptMod_AddMutationType.xib │ │ ├── ScriptMod_AddRecombinationRate.xib │ │ ├── ScriptMod_AddSexConfiguration.xib │ │ ├── ScriptMod_AddSubpop.xib │ │ ├── ScriptMod_ChangeCloning.xib │ │ ├── ScriptMod_ChangeMigration.xib │ │ ├── ScriptMod_ChangeSelfing.xib │ │ ├── ScriptMod_ChangeSexRatio.xib │ │ ├── ScriptMod_ChangeSubpopSize.xib │ │ ├── ScriptMod_OutputFixedMutations.xib │ │ ├── ScriptMod_OutputFullPopulation.xib │ │ ├── ScriptMod_OutputSubpopSample.xib │ │ ├── ScriptMod_RemoveSubpop.xib │ │ ├── ScriptMod_SplitSubpop.xib │ │ └── TipsWindow.xib │ ├── ChromosomeView.h │ ├── ChromosomeView.mm │ ├── CocoaExtra.h │ ├── CocoaExtra.mm │ ├── FindRecipeController.h │ ├── FindRecipeController.mm │ ├── GraphView.h │ ├── GraphView.mm │ ├── GraphView_FitnessOverTime.h │ ├── GraphView_FitnessOverTime.mm │ ├── GraphView_MutationFixationTimeHistogram.h │ ├── GraphView_MutationFixationTimeHistogram.mm │ ├── GraphView_MutationFrequencySpectra.h │ ├── GraphView_MutationFrequencySpectra.mm │ ├── GraphView_MutationFrequencyTrajectory.h │ ├── GraphView_MutationFrequencyTrajectory.mm │ ├── GraphView_MutationLossTimeHistogram.h │ ├── GraphView_MutationLossTimeHistogram.mm │ ├── GraphView_PopulationVisualization.h │ ├── GraphView_PopulationVisualization.mm │ ├── Images.xcassets/ │ │ └── AppIcon.appiconset/ │ │ └── Contents.json │ ├── PopulationView.h │ ├── PopulationView.mm │ ├── Recipes/ │ │ ├── Recipe 10.1 - Temporally varying selection.txt │ │ ├── Recipe 10.2 - Spatially varying selection.txt │ │ ├── Recipe 10.3.1 - Fitness as a function of genomic background, Epistasis I.txt │ │ ├── Recipe 10.3.1 - Fitness as a function of genomic background, Epistasis II.txt │ │ ├── Recipe 10.4.1 - Fitness as a function of population composition, Frequency-dependent selection I.txt │ │ ├── Recipe 10.4.1 - Fitness as a function of population composition, Frequency-dependent selection II.txt │ │ ├── Recipe 10.4.1 - Fitness as a function of population composition, Frequency-dependent selection III.txt │ │ ├── Recipe 10.4.2 - Fitness as a function of population composition, Cultural effects on fitness.txt │ │ ├── Recipe 10.4.3 - Fitness as a function of population composition, Kin selection and the green-beard effect.txt │ │ ├── Recipe 10.5 - Changing selection coefficients with setSelectionCoeff().txt │ │ ├── Recipe 10.6 - Varying the dominance coefficient among mutations I.txt │ │ ├── Recipe 10.6 - Varying the dominance coefficient among mutations II.txt │ │ ├── Recipe 11.1 - Assortative mating.txt │ │ ├── Recipe 11.2 - Sequential mate search I.txt │ │ ├── Recipe 11.2 - Sequential mate search II.txt │ │ ├── Recipe 11.3 - Gametophytic self-incompatibility.txt │ │ ├── Recipe 12.1 - Social learning of cultural traits.txt │ │ ├── Recipe 12.2 - Lethal epistasis I.txt │ │ ├── Recipe 12.2 - Lethal epistasis II.txt │ │ ├── Recipe 12.3 - Simulating gene drive.txt │ │ ├── Recipe 12.4 - Suppressing hermaphroditic selfing.txt │ │ ├── Recipe 12.5 - Tracking separate sexes in script.txt │ │ ├── Recipe 13.1 - Polygenic selection.txt │ │ ├── Recipe 13.2 - A simple model of variable QTL effect sizes.txt │ │ ├── Recipe 13.3 - A model of discrete QTL effects across multiple chromosomes.txt │ │ ├── Recipe 13.4 - A quantitative genetics model with heritability.txt │ │ ├── Recipe 13.5 - A QTL-based model with two quantitative phenotypic traits and pleiotropy.txt │ │ ├── Recipe 13.6 - A variety of fitness functions I (stabilizing selection).txt │ │ ├── Recipe 13.6 - A variety of fitness functions II (directional selection).txt │ │ ├── Recipe 13.6 - A variety of fitness functions III (disruptive selection).txt │ │ ├── Recipe 13.6 - A variety of fitness functions IV (truncation selection).txt │ │ ├── Recipe 13.7 - Negative frequency-dependence on a quantitative trait.txt │ │ ├── Recipe 14.1 - Relatedness, inbreeding, and heterozygosity.txt │ │ ├── Recipe 14.10 - Modeling transposable elements.txt │ │ ├── Recipe 14.11 - Modeling opposite ends of a chromosome I.txt │ │ ├── Recipe 14.11 - Modeling opposite ends of a chromosome II.txt │ │ ├── Recipe 14.12 - Visualizing ancestry and admixture with mutation() callbacks.txt │ │ ├── Recipe 14.13 - Modeling biallelic loci with a mutation() callback I.txt │ │ ├── Recipe 14.13 - Modeling biallelic loci with a mutation() callback II.txt │ │ ├── Recipe 14.14 - Modeling biallelic loci in script.txt │ │ ├── Recipe 14.15 - Using runs of homozygosity (ROH) to track inbreeding.txt │ │ ├── Recipe 14.16 - Visualizing linkage disequilibrium.txt │ │ ├── Recipe 14.2 - Mortality-based fitness I.txt │ │ ├── Recipe 14.2 - Mortality-based fitness II.txt │ │ ├── Recipe 14.2 - Mortality-based fitness III.txt │ │ ├── Recipe 14.3 - Reading initial simulation state from an MS output file I.txt │ │ ├── Recipe 14.3 - Reading initial simulation state from an MS output file II.txt │ │ ├── Recipe 14.4 - Modeling chromosomal inversions with a recombination() callback.txt │ │ ├── Recipe 14.5 - Estimating model parameters with ABC.txt │ │ ├── Recipe 14.6 - Tracking local ancestry along the chromosome.txt │ │ ├── Recipe 14.7 - Live plotting with R using system().txt │ │ ├── Recipe 14.8 - Using mutation rate variation to model varying functional density.txt │ │ ├── Recipe 14.9 - Modeling microsatellites.txt │ │ ├── Recipe 15.1 - A minimal nonWF model.txt │ │ ├── Recipe 15.10 - Recording a pedigree.txt │ │ ├── Recipe 15.11 - Dynamic population structure in nonWF models.txt │ │ ├── Recipe 15.12 - Implementing a Wright-Fisher model with a nonWF model I.txt │ │ ├── Recipe 15.12 - Implementing a Wright-Fisher model with a nonWF model II.txt │ │ ├── Recipe 15.13 - Range expansion in a stepping-stone model I.txt │ │ ├── Recipe 15.13 - Range expansion in a stepping-stone model II.txt │ │ ├── Recipe 15.14 - Logistic population growth with the Beverton-Holt model.txt │ │ ├── Recipe 15.2 - Age structure (a life table model).txt │ │ ├── Recipe 15.3 - Handling all reproduction at once with big bang reproduction.txt │ │ ├── Recipe 15.4 - Monogamous mating and variation in litter size.txt │ │ ├── Recipe 15.5 - Beneficial mutations and absolute fitness.txt │ │ ├── Recipe 15.6 - A metapopulation extinction-colonization model.txt │ │ ├── Recipe 15.7 - Habitat choice.txt │ │ ├── Recipe 15.8 - Evolutionary rescue after environmental change.txt │ │ ├── Recipe 15.9 - Litter size and parental investment.txt │ │ ├── Recipe 16.1 - Pollen flow.txt │ │ ├── Recipe 16.10 - Modeling pseudo-autosomal regions (PARs) with addMultiRecombinant().txt │ │ ├── Recipe 16.11 - Life-long monogamous mating.txt │ │ ├── Recipe 16.2 - Following a pedigree.txt │ │ ├── Recipe 16.3 - Modeling clonal haploid bacteria with horizontal gene transfer.txt │ │ ├── Recipe 16.4 - Alternation of generations.txt │ │ ├── Recipe 16.5 - Meiotic drive.txt │ │ ├── Recipe 16.6 - Sperm storage with a survival() callback.txt │ │ ├── Recipe 16.7 - Tracking separate sexes in script, nonWF style.txt │ │ ├── Recipe 16.8 - Modeling haplodiploidy with addRecombinant().txt │ │ ├── Recipe 16.9 - Complex multi-chromosome inheritance with addMultiRecombinant().txt │ │ ├── Recipe 17.1 - A simple 2D continuous-space model.txt │ │ ├── Recipe 17.10 - A simple biogeographic landscape model.txt │ │ ├── Recipe 17.11 - Local adaptation on a heterogeneous landscape map.txt │ │ ├── Recipe 17.12 - Periodic spatial boundaries.txt │ │ ├── Recipe 17.13 - Density-dependent fecundity with summarizeIndividuals().txt │ │ ├── Recipe 17.14 - Directed dispersal with the SpatialMap class.txt │ │ ├── Recipe 17.15 - Spatial competition and spatial mate choice in a nonWF model.txt │ │ ├── Recipe 17.16 - A spatial model with carrying-capacity density.txt │ │ ├── Recipe 17.17 - A spatial epidemiological S-I-R model.txt │ │ ├── Recipe 17.18 - A sexual, age-structured spatial model.txt │ │ ├── Recipe 17.19 - Modeling indirect competition mediated by resource availability.txt │ │ ├── Recipe 17.2 - Spatial competition.txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions I (stopping boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions II (reflecting boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions III (absorbing boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions IV (reprising boundaries).txt │ │ ├── Recipe 17.3 - Boundaries and boundary conditions V (dispersal kernels).txt │ │ ├── Recipe 17.4 - Mate choice with a spatial kernel.txt │ │ ├── Recipe 17.5 - Mate choice with a nearest-neighbor search.txt │ │ ├── Recipe 17.6 - Divergence due to phenotypic competition with an interaction() callback.txt │ │ ├── Recipe 17.7 - Modeling phenotype as a spatial dimension.txt │ │ ├── Recipe 17.8 - Sympatric speciation facilitated by assortative mating.txt │ │ ├── Recipe 17.9 - Speciation due to spatial variation in selection.txt │ │ ├── Recipe 18.1 - A minimal tree-seq model.txt │ │ ├── Recipe 18.10 - Adding a neutral burn-in after simulation with recapitation I.txt │ │ ├── Recipe 18.10 - Adding a neutral burn-in after simulation with recapitation II.py │ │ ├── Recipe 18.11 - Optimizing tree-sequence simplification.txt │ │ ├── Recipe 18.2 - Overlaying neutral mutations.py │ │ ├── Recipe 18.3 - Simulation conditional upon fixation of a sweep, preserving ancestry I.txt │ │ ├── Recipe 18.3 - Simulation conditional upon fixation of a sweep, preserving ancestry II.txt │ │ ├── Recipe 18.4 - Detecting the dip in diversity (analyzing tree heights in Python) I.txt │ │ ├── Recipe 18.4 - Detecting the dip in diversity (analyzing tree heights in Python) II.py │ │ ├── Recipe 18.5 - Mapping admixture (analyzing ancestry in Python) I.txt │ │ ├── Recipe 18.5 - Mapping admixture (analyzing ancestry in Python) II.py │ │ ├── Recipe 18.6 - Measuring the coalescence time of a model I.txt │ │ ├── Recipe 18.6 - Measuring the coalescence time of a model II.txt │ │ ├── Recipe 18.7 - Analyzing selection coefficients in Python with tskit I.txt │ │ ├── Recipe 18.7 - Analyzing selection coefficients in Python with tskit II.py │ │ ├── Recipe 18.8 - Starting a hermaphroditic WF model with a coalescent history I.py │ │ ├── Recipe 18.8 - Starting a hermaphroditic WF model with a coalescent history II.txt │ │ ├── Recipe 18.8 - Starting a hermaphroditic WF model with a coalescent history III.py │ │ ├── Recipe 18.9 - Starting a sexual nonWF model with a coalescent history I.py │ │ ├── Recipe 18.9 - Starting a sexual nonWF model with a coalescent history II.txt │ │ ├── Recipe 19.1 - A simple neutral nucleotide-based model.txt │ │ ├── Recipe 19.10 - Varying the mutation rate along the chromosome in a nucleotide-based model.txt │ │ ├── Recipe 19.11 - Modeling GC-biased gene conversion (gBGC).txt │ │ ├── Recipe 19.12 - Reading VCF files to create nucleotide-based SNPs.txt │ │ ├── Recipe 19.13 - Tree-sequence recording and nucleotide-based models I.txt │ │ ├── Recipe 19.13 - Tree-sequence recording and nucleotide-based models II.py │ │ ├── Recipe 19.13 - Tree-sequence recording and nucleotide-based models III.py │ │ ├── Recipe 19.14 - Modeling identity by state (IBS) (uniquing mutations with a mutation() callback).txt │ │ ├── Recipe 19.15 - Modeling identity by state (IBS) (uniquing back-mutations to the ancestral state).txt │ │ ├── Recipe 19.2 - Reading an ancestral nucleotide sequence from a FASTA file.txt │ │ ├── Recipe 19.3 - Sequence output from nucleotide-based models.txt │ │ ├── Recipe 19.4 - Back-mutations, independent mutational lineages, and VCF output.txt │ │ ├── Recipe 19.5 - Modeling elevated CpG mutation rates and equilibrium nucleotide frequencies.txt │ │ ├── Recipe 19.6 - A nucleotide-based model with introduced non-nucleotide-based mutations.txt │ │ ├── Recipe 19.7 - Using standard SLiM fitness effects with nucleotides (modeling synonymous sites).txt │ │ ├── Recipe 19.8 - Defining sequence-based fitness effects at the nucleotide level.txt │ │ ├── Recipe 19.9 - Defining sequence-based fitness effects at the amino acid level.txt │ │ ├── Recipe 20.1 - A simple multispecies model.txt │ │ ├── Recipe 20.2 - A two-species model.txt │ │ ├── Recipe 20.3 - A deterministic host-parasitoid model.txt │ │ ├── Recipe 20.4 - An individual-based host-parasitoid model I.txt │ │ ├── Recipe 20.4 - An individual-based host-parasitoid model II.txt │ │ ├── Recipe 20.5 - A continuous-space host-parasitoid model.txt │ │ ├── Recipe 20.6 - A coevolutionary host-parasitoid trait-matching model.txt │ │ ├── Recipe 20.7 - A coevolutionary host-parasite matching-allele model.txt │ │ ├── Recipe 20.8 - Within-host reproduction in a host-pathogen model.txt │ │ ├── Recipe 4.1 - A basic neutral simulation.txt │ │ ├── Recipe 4.1.10 - Using symbolic constants for model parameters.txt │ │ ├── Recipe 4.2.1 - Basic output, Entire population.txt │ │ ├── Recipe 4.2.2 - Basic output, Random population sample.txt │ │ ├── Recipe 4.2.3 - Basic output, Sampling individuals for output.txt │ │ ├── Recipe 4.2.4 - Basic output, Substitutions.txt │ │ ├── Recipe 4.2.5 - Basic output, Automatic logging with LogFile.txt │ │ ├── Recipe 4.2.6 - Basic output, Custom output with Eidos.txt │ │ ├── Recipe 5.1.1 - Subpopulation size, Instantaneous changes.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth I.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth II.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth III.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth IV.txt │ │ ├── Recipe 5.1.2 - Subpopulation size, Exponential growth V.txt │ │ ├── Recipe 5.1.4 - Subpopulation size, Cyclical changes.txt │ │ ├── Recipe 5.1.5 - Subpopulation size, Context-dependent changes (Muller's Ratchet).txt │ │ ├── Recipe 5.2.1 - Population structure, Adding subpopulations.txt │ │ ├── Recipe 5.2.2 - Population structure, Removing subpopulations.txt │ │ ├── Recipe 5.2.3 - Population structure, Splitting subpopulations.txt │ │ ├── Recipe 5.2.4 - Population structure, Joining subpopulations.txt │ │ ├── Recipe 5.3.1 - Migration and admixture, A linear stepping-stone model.txt │ │ ├── Recipe 5.3.2 - Migration and admixture, A non-spatial metapopulation.txt │ │ ├── Recipe 5.3.3 - Migration and admixture, A two-dimensional subpopulation matrix.txt │ │ ├── Recipe 5.3.4 - Migration and admixture, A random, sparse spatial metapopulation.txt │ │ ├── Recipe 5.3.5 - Migration and admixture, Reading a migration matrix from a file.txt │ │ ├── Recipe 5.4 - The Gravel et al. (2011) model of human evolution I.txt │ │ ├── Recipe 5.4 - The Gravel et al. (2011) model of human evolution II.txt │ │ ├── Recipe 5.5 - Rescaling population sizes to improve simulation performance I.txt │ │ ├── Recipe 5.5 - Rescaling population sizes to improve simulation performance II.txt │ │ ├── Recipe 6.1 - Genomic structure, Part I (Mutation types and fitness effects).txt │ │ ├── Recipe 6.2 - Genomic structure, Part II (Genomic element types).txt │ │ ├── Recipe 6.3 - Genomic structure, Part III (Chromosome organization).txt │ │ ├── Recipe 6.4 - Genomic structure, Part IV (Custom display colors in SLiMgui).txt │ │ ├── Recipe 8.1.1 - Reproduction, Enabling separate sexes.txt │ │ ├── Recipe 8.1.2 - Reproduction, Sex ratios I.txt │ │ ├── Recipe 8.1.2 - Reproduction, Sex ratios II.txt │ │ ├── Recipe 8.1.3 - Reproduction, Selfing in hermaphroditic populations.txt │ │ ├── Recipe 8.1.4 - Reproduction, Cloning I.txt │ │ ├── Recipe 8.1.4 - Reproduction, Cloning II.txt │ │ ├── Recipe 8.2.1 - Recombination, Making a random recombination map.txt │ │ ├── Recipe 8.2.2 - Recombination, Reading a recombination map from a file.txt │ │ ├── Recipe 8.2.3 - Recombination, Unlinked loci.txt │ │ ├── Recipe 8.2.4 - Recombination, Gene conversion.txt │ │ ├── Recipe 8.3.1 - Multiple diploid autosomes.txt │ │ ├── Recipe 8.3.2 - Clonal haploids and chromosome types.txt │ │ ├── Recipe 8.3.3 - Haploids with recombination.txt │ │ ├── Recipe 8.3.4 - Sex-chromosome evolution and null haplosomes.txt │ │ ├── Recipe 8.3.5 - Modeling the full human genome.txt │ │ ├── Recipe 8.3.6 - A model of bryophytes with UV sex determination.txt │ │ ├── Recipe 8.3.7 - Output from multiple-chromosome models.txt │ │ ├── Recipe 9.1 - Introducing adaptive mutations.txt │ │ ├── Recipe 9.10 - Tracking the fate of background mutations.txt │ │ ├── Recipe 9.11 - Effective population size versus census population size.txt │ │ ├── Recipe 9.12 - Observing the site frequency spectrum (SFS) during selective sweeps.txt │ │ ├── Recipe 9.2 - Making sweeps conditional on fixation.txt │ │ ├── Recipe 9.3 - Making sweeps conditional on establishment.txt │ │ ├── Recipe 9.4 - Partial sweeps.txt │ │ ├── Recipe 9.5.1 - A soft sweep from recurrent de novo mutations in a large population.txt │ │ ├── Recipe 9.5.2 - A soft sweep with a fixed de novo mutation schedule.txt │ │ ├── Recipe 9.5.3 - A soft sweep with a random de novo mutation schedule.txt │ │ ├── Recipe 9.6.1 - A sweep from standing variation at a random locus.txt │ │ ├── Recipe 9.6.2 - A sweep from standing variation at a predetermined locus.txt │ │ ├── Recipe 9.7 - Adaptive introgression.txt │ │ ├── Recipe 9.8 - Fixation probabilities under Hill-Robertson interference.txt │ │ ├── Recipe 9.9 - Keeping a reference to a sweep mutation.txt │ │ └── _README.txt │ ├── SLiMDocument.h │ ├── SLiMDocument.mm │ ├── SLiMDocumentController.h │ ├── SLiMDocumentController.mm │ ├── SLiMHelpCallbacks.rtf │ ├── SLiMHelpClasses.rtf │ ├── SLiMHelpFunctions.rtf │ ├── SLiMPDFDocument.h │ ├── SLiMPDFDocument.mm │ ├── SLiMPDFView.h │ ├── SLiMPDFView.mm │ ├── SLiMPDFWindow.xib │ ├── SLiMPDFWindowController.h │ ├── SLiMPDFWindowController.mm │ ├── SLiMWindowController.h │ ├── SLiMWindowController.mm │ ├── SLiMgui.entitlements │ ├── SLiMguiLegacy-Info.plist │ ├── SLiMguiLegacy_multi-Info.plist │ ├── SLiMguiLegacy_multi.entitlements │ ├── Tip_END.rtfd/ │ │ ├── Pasted Graphic.tiff │ │ └── TXT.rtf │ ├── Tips/ │ │ ├── Tip 1 optclick for help.rtfd/ │ │ │ ├── Pasted Graphic 5.tiff │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 10 generation textfield.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ ├── Pasted Graphic 2.tiff │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 11 chromosome subrange.rtfd/ │ │ │ ├── Pasted Graphic 2.tiff │ │ │ ├── Pasted Graphic 3.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 12 see script object text.rtfd/ │ │ │ ├── Pasted Graphic 2.tiff │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 13 speed slider.rtfd/ │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 14 console window.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 15 variable browser.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ ├── Pasted Graphic 2.tiff │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 16 chromosome muttypes.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ ├── Pasted Graphic 2.tiff │ │ │ ├── Pasted Graphic 4.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 17 population display options.rtfd/ │ │ │ ├── Pasted Graphic 6.tiff │ │ │ ├── Pasted Graphic 7.tiff │ │ │ ├── Pasted Graphic 8.tiff │ │ │ ├── Pasted Graphic 9.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 18 profiling simulations.rtfd/ │ │ │ └── TXT.rtf │ │ ├── Tip 19 chromosome haplotypes.rtfd/ │ │ │ └── TXT.rtf │ │ ├── Tip 2 autogen script.rtfd/ │ │ │ ├── Pasted Graphic 2.tiff │ │ │ ├── Pasted Graphic 3.tiff │ │ │ ├── Pasted Graphic 4.tiff │ │ │ ├── Pasted Graphic 5.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 20 script prettyprinting.rtfd/ │ │ │ └── TXT.rtf │ │ ├── Tip 21 MutationType DFE visualization.rtfd/ │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 3 see prototypes.rtfd/ │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 4 code completion.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ ├── Pasted Graphic 4.tiff │ │ │ ├── Pasted Graphic 5.tiff │ │ │ ├── Pasted Graphic 6.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 5 config chromosome view.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 6 fast recipe access.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 7 comment in out.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ ├── Tip 8 shift left right.rtfd/ │ │ │ ├── Pasted Graphic 1.tiff │ │ │ ├── Pasted Graphic.tiff │ │ │ └── TXT.rtf │ │ └── Tip 9 help by title or content.rtfd/ │ │ ├── Pasted Graphic 1.tiff │ │ └── TXT.rtf │ ├── TipsWindowController.h │ ├── TipsWindowController.m │ ├── main.m │ ├── plot.h │ ├── plot.mm │ ├── slim_gui.h │ └── slim_gui.mm ├── TO_DO ├── VERSIONS ├── cmake/ │ ├── AboutTheseModules.cmake │ ├── GetGitRevisionDescription.cmake │ ├── GetGitRevisionDescription.cmake.in │ ├── GitSHA1.cpp.in │ ├── GitSHA1.h │ ├── GitSHA1_Xcode.cpp │ ├── GitSHA1_qmake.cpp │ ├── LICENSE_1_0.txt │ ├── README.markdown │ ├── _README.txt │ └── toolchain-mingw64.cmake ├── codecov.yml ├── core/ │ ├── chromosome.cpp │ ├── chromosome.h │ ├── community.cpp │ ├── community.h │ ├── community_eidos.cpp │ ├── core.pro │ ├── genomic_element.cpp │ ├── genomic_element.h │ ├── genomic_element_type.cpp │ ├── genomic_element_type.h │ ├── haplosome.cpp │ ├── haplosome.h │ ├── individual.cpp │ ├── individual.h │ ├── interaction_type.cpp │ ├── interaction_type.h │ ├── log_file.cpp │ ├── log_file.h │ ├── main.cpp │ ├── mutation.cpp │ ├── mutation.h │ ├── mutation_run.cpp │ ├── mutation_run.h │ ├── mutation_type.cpp │ ├── mutation_type.h │ ├── polymorphism.cpp │ ├── polymorphism.h │ ├── population.cpp │ ├── population.h │ ├── slim_eidos_block.cpp │ ├── slim_eidos_block.h │ ├── slim_functions.cpp │ ├── slim_functions.h │ ├── slim_globals.cpp │ ├── slim_globals.h │ ├── slim_test.cpp │ ├── slim_test.h │ ├── slim_test_core.cpp │ ├── slim_test_genetics.cpp │ ├── slim_test_other.cpp │ ├── slim_test_parallel.h │ ├── sparse_vector.cpp │ ├── sparse_vector.h │ ├── spatial_kernel.cpp │ ├── spatial_kernel.h │ ├── spatial_map.cpp │ ├── spatial_map.h │ ├── species.cpp │ ├── species.h │ ├── species_eidos.cpp │ ├── subpopulation.cpp │ ├── subpopulation.h │ ├── substitution.cpp │ └── substitution.h ├── data/ │ ├── applications/ │ │ └── org.messerlab.slimgui.desktop │ ├── metainfo/ │ │ ├── org.messerlab.slimgui.appdata.xml │ │ └── org.messerlab.slimgui.metainfo.xml │ └── mime/ │ └── packages/ │ └── org.messerlab.slimgui-mime.xml ├── debian/ │ ├── changelog │ ├── compat │ ├── control │ ├── copyright │ ├── rules │ ├── slimsim.install │ └── source/ │ └── format ├── eidos/ │ ├── eidos.pro │ ├── eidos_ast_node.cpp │ ├── eidos_ast_node.h │ ├── eidos_beep.cpp │ ├── eidos_beep.h │ ├── eidos_call_signature.cpp │ ├── eidos_call_signature.h │ ├── eidos_class_DataFrame.cpp │ ├── eidos_class_DataFrame.h │ ├── eidos_class_Dictionary.cpp │ ├── eidos_class_Dictionary.h │ ├── eidos_class_Image.cpp │ ├── eidos_class_Image.h │ ├── eidos_class_Object.cpp │ ├── eidos_class_Object.h │ ├── eidos_class_TestElement.cpp │ ├── eidos_class_TestElement.h │ ├── eidos_functions.cpp │ ├── eidos_functions.h │ ├── eidos_functions_colors.cpp │ ├── eidos_functions_distributions.cpp │ ├── eidos_functions_files.cpp │ ├── eidos_functions_math.cpp │ ├── eidos_functions_matrices.cpp │ ├── eidos_functions_other.cpp │ ├── eidos_functions_stats.cpp │ ├── eidos_functions_strings.cpp │ ├── eidos_functions_values.cpp │ ├── eidos_globals.cpp │ ├── eidos_globals.h │ ├── eidos_interpreter.cpp │ ├── eidos_interpreter.h │ ├── eidos_intrusive_ptr.h │ ├── eidos_object_pool.h │ ├── eidos_openmp.h │ ├── eidos_property_signature.cpp │ ├── eidos_property_signature.h │ ├── eidos_rng.cpp │ ├── eidos_rng.h │ ├── eidos_script.cpp │ ├── eidos_script.h │ ├── eidos_simd.h │ ├── eidos_sorting.cpp │ ├── eidos_sorting.h │ ├── eidos_sorting.inc │ ├── eidos_symbol_table.cpp │ ├── eidos_symbol_table.h │ ├── eidos_test.cpp │ ├── eidos_test.h │ ├── eidos_test_builtins.h │ ├── eidos_test_functions_math.cpp │ ├── eidos_test_functions_other.cpp │ ├── eidos_test_functions_statistics.cpp │ ├── eidos_test_functions_vector.cpp │ ├── eidos_test_operators_arithmetic.cpp │ ├── eidos_test_operators_comparison.cpp │ ├── eidos_test_operators_other.cpp │ ├── eidos_test_parallel.h │ ├── eidos_tinycolormap.h │ ├── eidos_token.cpp │ ├── eidos_token.h │ ├── eidos_type_interpreter.cpp │ ├── eidos_type_interpreter.h │ ├── eidos_type_table.cpp │ ├── eidos_type_table.h │ ├── eidos_value.cpp │ ├── eidos_value.h │ ├── json.hpp │ ├── json_fwd.hpp │ ├── lodepng.cpp │ ├── lodepng.h │ ├── pcg_extras.hpp │ ├── pcg_random.hpp │ ├── robin_hood.h │ └── sleef/ │ ├── LICENSE │ ├── SLEEF_HEADER_GENERATION.md │ ├── generate_arm_sleef.sh │ ├── generate_avx2_sleef.sh │ ├── sleef_config.h │ ├── sleefinline_advsimd.h │ └── sleefinline_avx2.h ├── eidos_multi.entitlements ├── eidos_zlib/ │ ├── ChangeLog │ ├── README │ ├── adler32.c │ ├── compress.c │ ├── crc32.c │ ├── crc32.h │ ├── deflate.c │ ├── deflate.h │ ├── eidos_zlib.pro │ ├── gzguts.h │ ├── gzlib.c │ ├── gzwrite.c │ ├── trees.c │ ├── trees.h │ ├── zconf.h │ ├── zlib.h │ ├── zutil.c │ └── zutil.h ├── eidostool/ │ └── main.cpp ├── gsl/ │ ├── AUTHORS │ ├── COPYING │ ├── README │ ├── THANKS │ ├── _README │ ├── blas/ │ │ ├── blas.c │ │ ├── gsl_blas.h │ │ └── gsl_blas_types.h │ ├── block/ │ │ ├── gsl_block.h │ │ ├── gsl_block_double.h │ │ ├── gsl_check_range.h │ │ ├── init.c │ │ └── init_source.inc │ ├── build.h │ ├── cblas/ │ │ ├── cblas.h │ │ ├── daxpy.c │ │ ├── ddot.c │ │ ├── dgemv.c │ │ ├── dtrmv.c │ │ ├── dtrsv.c │ │ ├── error_cblas.h │ │ ├── error_cblas_l2.h │ │ ├── gsl_cblas.h │ │ ├── source_axpy_r.h │ │ ├── source_dot_r.h │ │ ├── source_gemv_r.h │ │ ├── source_trmv_r.h │ │ ├── source_trsv_r.h │ │ └── xerbla.c │ ├── cdf/ │ │ ├── beta_inc.inc │ │ ├── gauss.c │ │ ├── gaussinv.c │ │ ├── gsl_cdf.h │ │ ├── rat_eval.h │ │ └── tdist.c │ ├── complex/ │ │ ├── gsl_complex.h │ │ ├── gsl_complex_math.h │ │ ├── inline.c │ │ └── math.c │ ├── config.h │ ├── err/ │ │ ├── error.c │ │ ├── gsl_message.h │ │ ├── message.c │ │ └── stream.c │ ├── gsl.pro │ ├── gsl_errno.h │ ├── gsl_inline.h │ ├── gsl_machine.h │ ├── gsl_math.h │ ├── gsl_minmax.h │ ├── gsl_nan.h │ ├── gsl_pow_int.h │ ├── gsl_precision.h │ ├── gsl_types.h │ ├── gsl_version.h │ ├── interpolation/ │ │ ├── accel.c │ │ ├── akima.c │ │ ├── bicubic.c │ │ ├── bilinear.c │ │ ├── cspline.c │ │ ├── gsl_interp.h │ │ ├── gsl_interp2d.h │ │ ├── gsl_spline.h │ │ ├── gsl_spline2d.h │ │ ├── inline.c │ │ ├── integ_eval.h │ │ ├── interp.c │ │ ├── interp2d.c │ │ ├── linear.c │ │ ├── spline.c │ │ └── spline2d.c │ ├── linalg/ │ │ ├── cholesky.c │ │ ├── gsl_linalg.h │ │ ├── lu.c │ │ ├── tridiag.c │ │ └── tridiag.h │ ├── matrix/ │ │ ├── copy.c │ │ ├── copy_source.inc │ │ ├── gsl_matrix.h │ │ ├── gsl_matrix_double.h │ │ ├── init.c │ │ ├── init_source.inc │ │ ├── matrix.c │ │ ├── rowcol.c │ │ ├── rowcol_source.inc │ │ ├── submatrix.c │ │ ├── submatrix_source.inc │ │ ├── swap.c │ │ ├── swap_source.inc │ │ └── view.h │ ├── permutation/ │ │ ├── gsl_permutation.h │ │ ├── gsl_permute.h │ │ ├── gsl_permute_double.h │ │ ├── gsl_permute_matrix.h │ │ ├── gsl_permute_matrix_double.h │ │ ├── gsl_permute_vector.h │ │ ├── gsl_permute_vector_double.h │ │ ├── init.c │ │ ├── permutation.c │ │ ├── permute.c │ │ └── permute_source.inc │ ├── randist/ │ │ ├── beta.c │ │ ├── binomial_tpe.c │ │ ├── cauchy.c │ │ ├── chisq.c │ │ ├── dirichlet.c │ │ ├── discrete.c │ │ ├── exponential.c │ │ ├── fdist.c │ │ ├── gamma.c │ │ ├── gauss.c │ │ ├── gausszig.c │ │ ├── geometric.c │ │ ├── gsl_randist.h │ │ ├── laplace.c │ │ ├── lognormal.c │ │ ├── multinomial.c │ │ ├── mvgauss.c │ │ ├── nbinomial.c │ │ ├── poisson.c │ │ ├── shuffle.c │ │ ├── tdist.c │ │ └── weibull.c │ ├── rng/ │ │ ├── gsl_rng.h │ │ ├── inline.c │ │ ├── mt.c │ │ ├── rng.c │ │ └── taus.c │ ├── specfunc/ │ │ ├── beta.c │ │ ├── cheb_eval.inc │ │ ├── chebyshev.h │ │ ├── check.h │ │ ├── elementary.c │ │ ├── erfc.c │ │ ├── error.h │ │ ├── eval.h │ │ ├── exp.c │ │ ├── expint.c │ │ ├── gamma.c │ │ ├── gamma_inc.c │ │ ├── gsl_sf_elementary.h │ │ ├── gsl_sf_erf.h │ │ ├── gsl_sf_exp.h │ │ ├── gsl_sf_expint.h │ │ ├── gsl_sf_gamma.h │ │ ├── gsl_sf_log.h │ │ ├── gsl_sf_pow_int.h │ │ ├── gsl_sf_psi.h │ │ ├── gsl_sf_result.h │ │ ├── gsl_sf_trig.h │ │ ├── gsl_sf_zeta.h │ │ ├── log.c │ │ ├── pow_int.c │ │ ├── psi.c │ │ ├── trig.c │ │ └── zeta.c │ ├── sys/ │ │ ├── coerce.c │ │ ├── fdiv.c │ │ ├── gsl_sys.h │ │ ├── infnan.c │ │ ├── minmax.c │ │ └── pow_int.c │ ├── templates_off.h │ ├── templates_on.h │ └── vector/ │ ├── copy.c │ ├── copy_source.inc │ ├── gsl_vector.h │ ├── gsl_vector_double.h │ ├── init.c │ ├── init_source.inc │ ├── oper.c │ ├── oper_source.inc │ ├── vector.c │ ├── view.c │ ├── view.h │ └── view_source.inc ├── simd_benchmarks/ │ ├── README.md │ ├── SIMD_BUILD_FLAGS.md │ ├── benchmark_all_kernels.slim │ ├── dnorm_benchmark.eidos │ ├── run_benchmarks.sh │ ├── simd_benchmark.eidos │ ├── sleef_benchmark.slim │ └── slim_benchmark.slim ├── slim_multi.entitlements ├── sonar-project.properties ├── treerec/ │ ├── _README │ ├── implementation.md │ ├── tests/ │ │ ├── .gitignore │ │ ├── README.md │ │ ├── conda-requirements.txt │ │ ├── conftest.py │ │ ├── environment.yml │ │ ├── init.slim │ │ ├── init_marked_mutations.slim │ │ ├── pip-requirements.txt │ │ ├── recipe_specs.py │ │ ├── test_consistency.py │ │ ├── test_metadata_schemas.py │ │ ├── test_recipes/ │ │ │ ├── dont_test_recapitation.py │ │ │ ├── dont_test_recapitation.slim │ │ │ ├── test_000_ancestral_marks.slim │ │ │ ├── test_000_ongoing_muts.slim │ │ │ ├── test_000_sexual_WF.slim │ │ │ ├── test_000_sexual_nonwf.slim │ │ │ ├── test_000_simple_nonwf.slim │ │ │ ├── test_000_withdraw_indivs.slim │ │ │ ├── test_002_quick_neutral.slim │ │ │ ├── test_004 simple sexual A.slim │ │ │ ├── test_005 simple sexual X.slim │ │ │ ├── test_006 simple sexual Y.slim │ │ │ ├── test_007 cloning and selfing.slim │ │ │ ├── test_008 cyclical subpop.slim │ │ │ ├── test_009 linear island.slim │ │ │ ├── test_013 gene conversion.slim │ │ │ ├── test_024 gene drive.slim │ │ │ ├── test_038 pure cloning.slim │ │ │ ├── test_039 pure selfing.slim │ │ │ ├── test_040 pure cloning sexual.slim │ │ │ ├── test_042 haploid clonals.slim │ │ │ ├── test_097 modeling nucleotides.slim │ │ │ ├── test_1610_modeling pseudo-autosomal regions.slim │ │ │ ├── test_169_complex multi-chromosome inheritance.slim │ │ │ ├── test_831_multiple diploid autosomes.slim │ │ │ ├── test_832_clonal haploids and chromosome types.slim │ │ │ ├── test_833_haploids with recombination.slim │ │ │ ├── test_834_sex-chromosome evolution and null haplosomes.slim │ │ │ ├── test_836_output from multiple-chromosome models.slim │ │ │ ├── test_____H-_chromosome.slim │ │ │ ├── test_____all_the_chromosome_types.slim │ │ │ ├── test_____all_the_chromosomes.slim │ │ │ ├── test_____ancestral_marks.slim │ │ │ ├── test_____multipops.slim │ │ │ ├── test_____no_generations.slim │ │ │ ├── test_____pop_names_nondefault.slim │ │ │ ├── test_____pop_names_pX.slim │ │ │ ├── test_____remember_individuals.slim │ │ │ ├── test_____retain_and_remember_individuals.slim │ │ │ ├── test_____retain_individuals_nonWF.slim │ │ │ ├── test_____retain_individuals_nonWF_unary.slim │ │ │ ├── test_____retain_individuals_unary.slim │ │ │ ├── test_____sexual_WF.slim │ │ │ ├── test_____sexual_nonwf.slim │ │ │ ├── test_____simple_none.slim │ │ │ ├── test_____simple_nonwf.slim │ │ │ ├── test_____simple_not_perm.slim │ │ │ ├── test_____simple_perm.slim │ │ │ └── test_____withdraw_indivs.slim │ │ └── test_specific_recipes.py │ └── tskit/ │ ├── convert.c │ ├── convert.h │ ├── core.c │ ├── core.h │ ├── genotypes.c │ ├── genotypes.h │ ├── haplotype_matching.c │ ├── haplotype_matching.h │ ├── kastore/ │ │ ├── kastore.c │ │ └── kastore.h │ ├── stats.c │ ├── stats.h │ ├── tables.c │ ├── tables.h │ ├── text_input.c │ ├── text_input.h │ ├── trees.c │ ├── trees.h │ └── tskit.pro └── windows_compat/ ├── gnulib/ │ ├── Makefile.am │ ├── Makefile.in │ ├── aclocal.m4 │ ├── build-aux/ │ │ ├── compile │ │ ├── config.guess │ │ ├── config.sub │ │ ├── depcomp │ │ ├── install-sh │ │ └── missing │ ├── config.h.in │ ├── configure │ ├── configure.ac │ ├── gllib/ │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── _Noreturn.h │ │ ├── arg-nonnull.h │ │ ├── c++defs.h │ │ ├── cdefs.h │ │ ├── errno.in.h │ │ ├── execinfo.c │ │ ├── execinfo.in.h │ │ ├── fd-hook.c │ │ ├── fd-hook.h │ │ ├── getdelim.c │ │ ├── gethostname.c │ │ ├── getline.c │ │ ├── gettimeofday.c │ │ ├── libc-config.h │ │ ├── limits.in.h │ │ ├── msvc-inval.c │ │ ├── msvc-inval.h │ │ ├── msvc-nothrow.c │ │ ├── msvc-nothrow.h │ │ ├── random.c │ │ ├── random_r.c │ │ ├── sockets.c │ │ ├── sockets.h │ │ ├── stdalign.in.h │ │ ├── stddef.in.h │ │ ├── stdint.in.h │ │ ├── stdio.in.h │ │ ├── stdlib.in.h │ │ ├── sys_resource.in.h │ │ ├── sys_socket.c │ │ ├── sys_socket.in.h │ │ ├── sys_stat.in.h │ │ ├── sys_time.in.h │ │ ├── sys_types.in.h │ │ ├── sys_uio.in.h │ │ ├── sys_utsname.in.h │ │ ├── time.in.h │ │ ├── time_r.c │ │ ├── uname.c │ │ ├── unistd.c │ │ ├── unistd.in.h │ │ ├── w32sock.h │ │ └── warn-on-use.h │ └── glm4/ │ ├── 00gnulib.m4 │ ├── Makefile.am │ ├── Makefile.in │ ├── __inline.m4 │ ├── absolute-header.m4 │ ├── errno_h.m4 │ ├── execinfo.m4 │ ├── extensions.m4 │ ├── extern-inline.m4 │ ├── getdelim.m4 │ ├── gethostname.m4 │ ├── getline.m4 │ ├── gettimeofday.m4 │ ├── gnulib-common.m4 │ ├── include_next.m4 │ ├── limits-h.m4 │ ├── msvc-inval.m4 │ ├── msvc-nothrow.m4 │ ├── multiarch.m4 │ ├── off_t.m4 │ ├── pid_t.m4 │ ├── random.m4 │ ├── random_r.m4 │ ├── socketlib.m4 │ ├── sockets.m4 │ ├── socklen.m4 │ ├── sockpfaf.m4 │ ├── ssize_t.m4 │ ├── std-gnu11.m4 │ ├── stdalign.m4 │ ├── stddef_h.m4 │ ├── stdint.m4 │ ├── stdio_h.m4 │ ├── stdlib_h.m4 │ ├── sys_resource_h.m4 │ ├── sys_socket_h.m4 │ ├── sys_stat_h.m4 │ ├── sys_time_h.m4 │ ├── sys_types_h.m4 │ ├── sys_uio_h.m4 │ ├── sys_utsname_h.m4 │ ├── time_h.m4 │ ├── time_r.m4 │ ├── uname.m4 │ ├── unistd_h.m4 │ ├── warn-on-use.m4 │ ├── wchar_t.m4 │ ├── wint_t.m4 │ └── zzgnulib.m4 └── notes.txt