Today we began our independent data research. First step - Install DESeq2- I will have to this every time I restart this R project to get access to the library.

We are going to compare mutant auxin to WT auxin In order to do this we are going to use many different R functions and then GoTerm analysis

The purpose of this investigation is to understand which genes are regulated by NHR-25 within C. elegans, and which tissues these genes are expressed in so that we may decipher phenotypic associations. We are going to investigate gene expression differentiation between C. elegans that had transient knockdown of NHR-25 and wildtype C. elegans using DESeq2. Differentially expressed genes will then be run through GO Term enrichment analysis to identify conserved pathways and the top 50 regulated genes will be selected for further investigation. The genes will then run through a tissue and phenotypic enrichment analysis to locate the gene expression and phenotypic associations.

The command below must be run each time to download the DESeq2 package in order to look at our data

plot(cars)
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("DESeq2", version = "3.8")
library("DESeq2")

After downloading DESeq2 we wanted to create a project table with our data in it,we decided to first run the data with all 6 of our data sets

AllProject_table <- read.table("Ourdatatable.txt", header = TRUE, sep= '\t')
AllProject_data <- DESeqDataSetFromHTSeqCount(sampleTable = AllProject_table, directory = 'Alldata', design =  ~ Condition)
Normal_AllProject_Data_In_R <- vst(AllProject_data, blind = FALSE)
-- note: fitType='parametric', but the dispersion trend was not well captured by the
   function: y = a/x + b, and a local regression fit was automatically substituted.
   specify fitType='local' or 'mean' to avoid this message next time.
plotPCA(Normal_AllProject_Data_In_R, intgroup=c("Condition", "Replicate"))

This plot shows that MUT1 has a lot of variation comparedd to the other mut data sets, may be a problem with it.

Can find the plot over by plots, we can clearly see that Mut 1 is not similar to the other mutation data sets, which may cause problems in the future, also use the view feature in order to see the plot that was made

Deseq_Allproject_analysis_data <- DESeq(AllProject_data)
estimating size factors
estimating dispersions
gene-wise dispersion estimates
mean-dispersion relationship
final dispersion estimates
fitting model and testing
Results_for_AllProject <- results(Deseq_Allproject_analysis_data,             contrast = c("Condition", "mut", "norm"))
summary(Results_for_AllProject)

out of 26103 with nonzero total read count
adjusted p-value < 0.1
LFC > 0 (up)       : 102, 0.39%
LFC < 0 (down)     : 97, 0.37%
outliers [1]       : 1674, 6.4%
low counts [2]     : 13225, 51%
(mean count < 5)
[1] see 'cooksCutoff' argument of ?results
[2] see 'independentFiltering' argument of ?results

These are the summaries for the DESeq analysis. We can see theat 102 genes are upregulated and 97 are downregulated.

Next we want to make a plot to see if some genes are being over/underexpressed look at fold changes

RNAi_N2_res_ordered <- Results_for_AllProject [order(Results_for_AllProject$pvalue),]
RNAi_N2_res_sig <- subset(RNAi_N2_res_ordered, padj < .05)
write.table(as.data.frame(RNAi_N2_res_sig), file="Final_AllData_for_GOTERM.txt", sep = "\t")
plotMA(Results_for_AllProject)

View(plotMA(Results_for_AllProject))

To view the plot do View(plotMA(Results_for_AllProject)) also taking screen shots of the plots

Summary-this plot shows us that the red are outliers that are either upregulated or downregulated-a visual representation

Next we wanted to create a pheatmap to see which genes are being overexpressed

install.packages("pheatmap") 
trying URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.5/pheatmap_1.0.12.tgz'
Content type 'application/x-gzip' length 75564 bytes (73 KB)
==================================================
downloaded 73 KB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
library("pheatmap")
subset_first_25_genes <- order(rowMeans(counts(Deseq_Allproject_analysis_data, normalized = TRUE)), decreasing = TRUE)[1:25]
pheatmap_aux_analysis <- normTransform(AllProject_data)
pheatmap(assay(pheatmap_aux_analysis)[subset_first_25_genes,])

since we can see that there is a problem with KRY85_1_aux (all of the red on the pheatmap) we have decided that we are going to try and see what the results are like if we do not use this data Therefore I am going to run everything again but without that one data set

since we can see that there is a problem with KRY85_1_aux we have decided that we are going to try and see what the results are like if we do not use this data Therefore I am going to run everything again but without that one data set Furthermore we wanted to run Glimma–which is a new tool that Dr. TS showed us

plot(cars)

if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("DESeq2", version = "3.8")
Bioconductor version 3.8 (BiocManager 1.30.4), R 3.5.2 (2018-12-20)
Installing package(s) 'DESeq2'
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'trying URL 'https://bioconductor.org/packages/3.8/bioc/bin/macosx/el-capitan/contrib/3.5/DESeq2_1.22.2.tgz'
Content type 'application/x-gzip' length 4063874 bytes (3.9 MB)
==================================================
downloaded 3.9 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
Update old packages: 'mgcv'
Update all/some/none? [a/s/n]: 
a
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'

  There is a binary version available but the source version is later:
no
trying URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.5/mgcv_1.8-27.tgz'
Content type 'application/x-gzip' length 3110086 bytes (3.0 MB)
==================================================
downloaded 3.0 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
library("DESeq2")
OneProject_table <- read.table("Ourdatatableonegone.txt", header = TRUE, sep= '\t')
OneProject_data <- DESeqDataSetFromHTSeqCount(sampleTable = OneProject_table, directory = 'Onedata', design =  ~ Condition)
Normal_OneProject_Data_In_R <- vst(OneProject_data, blind = FALSE)
plotPCA(Normal_OneProject_Data_In_R, intgroup=c("Condition", "Replicate"))

Deseq_Oneproject_analysis_data <- DESeq(OneProject_data)
estimating size factors
estimating dispersions
gene-wise dispersion estimates
mean-dispersion relationship
final dispersion estimates
fitting model and testing
Results_for_OneProject <- results(Deseq_Oneproject_analysis_data,             contrast = c("Condition", "mut", "norm"))
summary(Results_for_OneProject)

out of 26089 with nonzero total read count
adjusted p-value < 0.1
LFC > 0 (up)       : 229, 0.88%
LFC < 0 (down)     : 336, 1.3%
outliers [1]       : 1, 0.0038%
low counts [2]     : 11259, 43%
(mean count < 4)
[1] see 'cooksCutoff' argument of ?results
[2] see 'independentFiltering' argument of ?results
RNAi_N2_oneres_ordered <- Results_for_OneProject [order(Results_for_OneProject$pvalue),]
RNAi_N2_oneres_sig <- subset(RNAi_N2_oneres_ordered, padj < .05)
write.table(as.data.frame(RNAi_N2_oneres_sig), file="Final_OneData_for_GOTERM.txt", sep = "\t")
plotMA(Results_for_OneProject)

View(plotMA(Results_for_OneProject))

install.packages("pheatmap") 
Error in install.packages : Updating loaded packages
library("pheatmap")
subset_onefirst_25_genes <- order(rowMeans(counts(Deseq_Oneproject_analysis_data, normalized = TRUE)), decreasing = TRUE)[1:25]
pheatmap_auxone_analysis <- normTransform(OneProject_data)
pheatmap(assay(pheatmap_auxone_analysis)[subset_onefirst_25_genes,])

if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("GenomeInfoDb", version = "3.8")
Bioconductor version 3.8 (BiocManager 1.30.4), R 3.5.2 (2018-12-20)
Installing package(s) 'GenomeInfoDb'
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'trying URL 'https://bioconductor.org/packages/3.8/bioc/bin/macosx/el-capitan/contrib/3.5/GenomeInfoDb_1.18.2.tgz'
Content type 'application/x-gzip' length 3801774 bytes (3.6 MB)
==================================================
downloaded 3.6 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
Update old packages: 'mgcv'
Update all/some/none? [a/s/n]: 
install.packages("pheatmap")
Update all/some/none? [a/s/n]: 
a
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'

  There is a binary version available but the source version is later:
no
trying URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.5/mgcv_1.8-27.tgz'
Content type 'application/x-gzip' length 3110086 bytes (3.0 MB)
==================================================
downloaded 3.0 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
library("GenomeInfoDb")
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("Glimma", version = "3.8")
Bioconductor version 3.8 (BiocManager 1.30.4), R 3.5.2 (2018-12-20)
Installing package(s) 'Glimma'
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'trying URL 'https://bioconductor.org/packages/3.8/bioc/bin/macosx/el-capitan/contrib/3.5/Glimma_1.10.1.tgz'
Content type 'application/x-gzip' length 3483591 bytes (3.3 MB)
==================================================
downloaded 3.3 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
Update old packages: 'mgcv'
Update all/some/none? [a/s/n]: 
a
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'

  There is a binary version available but the source version is later:
no
trying URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.5/mgcv_1.8-27.tgz'
Content type 'application/x-gzip' length 3110086 bytes (3.0 MB)
==================================================
downloaded 3.0 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
library(Glimma)
status <- as.numeric(Results_for_OneProject$padj < .1)
anno_onegene <- data.frame(GeneID=rownames(Results_for_OneProject), symbol = rownames(Results_for_OneProject)) 
glMDPlot(Results_for_OneProject, status = status, counts = counts(Deseq_Oneproject_analysis_data, normalized = TRUE), groups= Deseq_Oneproject_analysis_data$Condition,transform = TRUE, samples = colnames(Deseq_Oneproject_analysis_data), anno = anno_onegene, path = './', folder = "glimma_MD", launch = FALSE)

Data is in all of the plots above and the DESeq results are below showing over/underexpression

out of 26089 with nonzero total read count adjusted p-value < 0.1 LFC > 0 (up) : 229, 0.88% LFC < 0 (down) : 336, 1.3% outliers [1] : 1, 0.0038% low counts [2] : 11259, 43% (mean count < 4)

Interesting that taking out the one file, leasds to more upregulated genes and downregulated Clearing the one data set was causing a lot of problems, however we can also see that mut 2 and 3 are still quite different and norm 3 is very different from norm 1 and 2 from our PCA plot.

Glimma link file:///Users/mhunter/Desktop/Genomics%20Lab%20Methods/glimma_MD/MD-Plot.html

Plot is saved on desktop names onedata

Class note 3/14/19 chipSeq data-chromatin precipitation, where transcription factor binds to the geneome and freeze those associations and then sequence where transpriction binds–this is on the galaxy organism—how to use modERN-ce10–wormby gene—-most useful are the peaks and called where it is binding–lots of different data sets and look how it is in the paper–where a transcription factor is binding—unzip it—region peak fine–use IGV and download it,

ALSO WE NEED TO USE THE EXCEL link on moodle to find the tissues HiSeq–number of bases in each gene and number of transcripts also there is a Jaspar–a place where peoaple ahve catalouged, >and then past the sequence from IGV- use to see if there are patterns

Brooke is having problems with her data set, so I have decided to run her data (which was taking out both KRY85_1_aux and N2_1_auxin to see whether by removing both data sets we have a difference in the genes that are over/underexpressed. I previously used the data that brooke sent me and tried to do a GENE Venn diagram however, found that her data and alldata were the same, however using my data there were many differnces–This venndiagram was saved in ourdata folder on my computer–Also going to try to find a way to run a venndiagram on my R

TwoProject_table <- read.table("Ourdatatabletwo.txt", header = TRUE, sep= '\t')
incomplete final line found by readTableHeader on 'Ourdatatabletwo.txt'
TwoProject_data <- DESeqDataSetFromHTSeqCount(sampleTable = TwoProject_table, directory = 'Twodata', design =  ~ Condition)
Normal_TwoProject_Data_In_R <- vst(TwoProject_data, blind = FALSE)
plotPCA(Normal_TwoProject_Data_In_R, intgroup=c("Condition", "Replicate"))

Deseq_Twoproject_analysis_data <- DESeq(TwoProject_data)
estimating size factors
estimating dispersions
gene-wise dispersion estimates
mean-dispersion relationship
final dispersion estimates
fitting model and testing
Results_for_TwoProject <- results(Deseq_Twoproject_analysis_data,             contrast = c("Condition", "mut", "norm"))
summary(Results_for_TwoProject)

out of 23647 with nonzero total read count
adjusted p-value < 0.1
LFC > 0 (up)       : 67, 0.28%
LFC < 0 (down)     : 125, 0.53%
outliers [1]       : 0, 0%
low counts [2]     : 11871, 50%
(mean count < 9)
[1] see 'cooksCutoff' argument of ?results
[2] see 'independentFiltering' argument of ?results
RNAi_N2_resTwo_ordered <- Results_for_TwoProject [order(Results_for_TwoProject$pvalue),]
RNAi_N2_resTwo_sig <- subset(RNAi_N2_resTwo_ordered, padj < .05)
write.table(as.data.frame(RNAi_N2_resTwo_sig), file="Final_TwoData_for_GOTERM.txt", sep = "\t")
plotMA(Results_for_TwoProject)

View(plotMA(Results_for_TwoProject))

subset_first_25Two_genes <- order(rowMeans(counts(Deseq_Twoproject_analysis_data, normalized = TRUE)), decreasing = TRUE)[1:25]
pheatmap_auxTwo_analysis <- normTransform(TwoProject_data)
pheatmap(assay(pheatmap_auxTwo_analysis)[subset_first_25Two_genes,])

BiocManager::install("GenomeInfoDb", version = "3.8")
Bioconductor version 3.8 (BiocManager 1.30.4), R 3.5.2 (2018-12-20)
Installing package(s) 'GenomeInfoDb'
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'trying URL 'https://bioconductor.org/packages/3.8/bioc/bin/macosx/el-capitan/contrib/3.5/GenomeInfoDb_1.18.2.tgz'
Content type 'application/x-gzip' length 3801774 bytes (3.6 MB)
==================================================
downloaded 3.6 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
Update old packages: 'mgcv'
Update all/some/none? [a/s/n]: 
a
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'

  There is a binary version available but the source version is later:
no
trying URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.5/mgcv_1.8-27.tgz'
Content type 'application/x-gzip' length 3110086 bytes (3.0 MB)
==================================================
downloaded 3.0 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
library("GenomeInfoDb")
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("Glimma", version = "3.8")
Bioconductor version 3.8 (BiocManager 1.30.4), R 3.5.2 (2018-12-20)
Installing package(s) 'Glimma'
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'trying URL 'https://bioconductor.org/packages/3.8/bioc/bin/macosx/el-capitan/contrib/3.5/Glimma_1.10.1.tgz'
Content type 'application/x-gzip' length 3483591 bytes (3.3 MB)
==================================================
downloaded 3.3 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
Update old packages: 'mgcv'
Update all/some/none? [a/s/n]: 
a
cannot open URL 'https://bioconductor.org/packages/3.8/data/experiment/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'cannot open URL 'https://bioconductor.org/packages/3.8/workflows/bin/macosx/el-capitan/contrib/3.5/PACKAGES.rds': HTTP status was '404 Not Found'

  There is a binary version available but the source version is later:
no
trying URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.5/mgcv_1.8-27.tgz'
Content type 'application/x-gzip' length 3110086 bytes (3.0 MB)
==================================================
downloaded 3.0 MB

The downloaded binary packages are in
    /var/folders/r4/rf1jhdcd3szb7m4lswmzhk740000gn/T//Rtmp8BR6vx/downloaded_packages
library(Glimma)
status <- as.numeric(Results_for_TwoProject$padj < .1)
anno_twogene <- data.frame(GeneID=rownames(Results_for_TwoProject), symbol = rownames(Results_for_TwoProject)) 
glMDPlot(Results_for_TwoProject, status = status, counts = counts(Deseq_Twoproject_analysis_data, normalized = TRUE), groups= Deseq_Twoproject_analysis_data$Condition,transform = TRUE, samples = colnames(Deseq_Twoproject_analysis_data), anno = anno_twogene, path = './', folder = "glimma_twoMD", launch = FALSE)

DESeq-data out of 23647 with nonzero total read count adjusted p-value < 0.1 LFC > 0 (up) : 67, 0.28% LFC < 0 (down) : 125, 0.53% outliers [1] : 0, 0% low counts [2] : 11871, 50% (mean count < 9)

If we take out two we have less under/overexpression of genes when we do with one gone

Below are my attempts to run a new R package VennDiagram This program would be so useful bc it would allow us ro title and change the color of the venndiagram, furthermore we would be able to do analysis on more than three data sets and would be able to change the size to correspond wiht the data sets size.

We are going to present on this data in class on Tuesday Struggling to get the data to work in the VennDiagram, might just keep using the GeneVenn Diagram

install.packages('VennDiagram')
library(VennDiagram)

 draw.pairwise.venn(area1, area2, cross.area, category = rep("", 2),
euler.d = TRUE, scaled = TRUE, inverted = FALSE,
ext.text = TRUE, ext.percent = rep(0.05, 3), lwd =
rep(2, 2), lty = rep("solid", 2), col = rep("black",
2), fill = NULL, alpha = rep(0.5, 2), label.col =
rep("black", 3), cex = rep(1, 3), fontface =
rep("plain", 3), fontfamily = rep("serif", 3), cat.pos
= c(-50, 50), cat.dist = rep(0.025, 2), cat.cex =
rep(1, 2), cat.col = rep("black", 2), cat.fontface =
rep("plain", 2), cat.fontfamily = rep("serif", 2),
cat.just = rep(list(c(0.5, 0.5)), 2), cat.default.pos
= "outer", cat.prompts = FALSE, ext.pos = rep(0, 2),
ext.dist = rep(0, 2), ext.line.lty = "solid",
ext.length = rep(0.95, 2), ext.line.lwd = 1,
rotation.degree = 0, rotation.centre = c(0.5, 0.5),
ind = TRUE, sep.dist = 0.05, offset = 0, cex.prop =
NULL, print.mode = "raw", sigdigs = 3, ...)

Today I am going to begin examining the actual genes that are being up/down regulated! Going to use GennVenn-the red circle is AllData, the yellow circle is OneData, and green is TwoData sets There are 75 genes that are expressed differently than all the data, and so we are going to focus on those data sets. Below are the gene names that are similar. It is interesting to not that the TwoData sets shares no similarity with the AllData set on its own. Overall all three share 45 of the same up/downregulated genes.

I am going to spend the next few classes making notes on these genes and what we know of them. I am saving the places that I cite in Zotero

Most of these genes we know nothing about–these top 20 or so B0218.7 C04F12.8 C08F8.6 C10G11.8 C13A2.1 C13A2.3 C30H6.12 C34F11.5 C34H4.2 C38D9.2 D1007.13 E01G6.1 F01G10.5 F07G11.3 F11D11.3 F15B9.6 F20D6.2 F21F3.3 F26D2.10 F27E5.3 F33H12.7 F35E2.5 F37A4.4 F37A4.5 F42G8.8 F53B6.4 F55F8.7 K08D9.2 K08D9.6 R04B5.6 T03F7.7 T05A7.1 T16G12.7 T22C1.8 T24E12.5 T25B9.6 W01B6.2 W02A2.8 W03F11.4 Y106G6G.4 Y113G7C.1 Y37H2A.14 Y47H10A.5 Y49E10.10 Y57G11C.42 Y6E2A.10 ZK484.7 ZK616.61 ZK849.1 ZK970.7

Cut off of what we know

acp-6 alh-9 cbl-1 clec-42 cnp-2 col-163 col-38 col-45 col-49

cutl-16-Brooke is looking into cyn-6-Brooke is looking into dmd-10-Brooke is looking into dod-20-Brooke is looking into

dpy-1 dumPY–shorter than WT Process: body morphogenesis IMP PubMed positive regulation of multicellular organism growth

fer-1 Human orthologs:DYSF-LOOK INTO THIS LATER ON****** Sperm vesicle fusion protein-THERE ARE A TON OF PAPERS ON THIS ONE Function: calcium-dependent phospholipid binding Process: cell differentiation IEA
flagellated sperm motility IMP PubMed membrane fusion IMP PubMed multicellular organism development IEA
plasma membrane organization IMP PubMed pseudopodium organization IMP PubMed spermatogenesis IEA
spermatogenesis

gipc-1 gene expression in material anatomical entity

gipc-2

igeg-2 immunoglobulin, intergral protein of membrane

mltn-7- intergral portein of membrane

pgp-8-ATP binding, transmembrane transport

rab-11.2*********** GTP binding Rab-protein signal transduction

sams-5-ATP binding,ATP binding IEA
metal ion binding IEA
methionine adenosyltransferase activity IBA PubMed methionine adenosyltransferase activity IEA
nucleotide binding IEA
transferase activity tba-8-GTP binding-mitotic cell cycle, nucleotide binding, exoskeleton, structural constitute of
cytoskeleton

Process: S-adenosylmethionine biosynthetic process IEA
one-carbon metabolic process

MAT2A- Human ortholog, The protein encoded by this gene catalyzes the production of
S-adenosylmethionine from methionine and ATP. AdoMet is the key methyl donor in cellular processes. Expression Ubiquitous expression in thyroid (RPKM 234.0), adrenal (RPKM 141.3) and 25 other tissues

tsp-10

wrt-7– Found in Hedgehog-like family–look into this one

Going to look at these genes specfically to see what is exactly going on.

While looking at these genes, i have found that a lot of them them are found on the X Chromosome–which is helpful for sex orientation LOOK FOR GENES WITH ********** to look into them more later on

LS0tCnRpdGxlOiAiRmluYWxOb3RlQm9va2Zvck1CIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tClRvZGF5IHdlIGJlZ2FuIG91ciBpbmRlcGVuZGVudCBkYXRhIHJlc2VhcmNoLiBGaXJzdCBzdGVwIC0gSW5zdGFsbCBERVNlcTItIEkgd2lsbCBoYXZlIHRvIHRoaXMgZXZlcnkgdGltZSBJIHJlc3RhcnQgdGhpcyBSIHByb2plY3QgdG8gZ2V0IGFjY2VzcyB0byB0aGUgbGlicmFyeS4KCldlIGFyZSBnb2luZyB0byBjb21wYXJlIG11dGFudCBhdXhpbiB0byBXVCBhdXhpbiAKSW4gb3JkZXIgdG8gZG8gdGhpcyB3ZSBhcmUgZ29pbmcgdG8gdXNlIG1hbnkgZGlmZmVyZW50IFIgZnVuY3Rpb25zIGFuZCB0aGVuIEdvVGVybSBhbmFseXNpcwogClRoZSBwdXJwb3NlIG9mIHRoaXMgaW52ZXN0aWdhdGlvbiBpcyB0byB1bmRlcnN0YW5kIHdoaWNoIGdlbmVzIGFyZSByZWd1bGF0ZWQgYnkgTkhSLTI1IHdpdGhpbiBDLiBlbGVnYW5zLCBhbmQgd2hpY2ggdGlzc3VlcyB0aGVzZSBnZW5lcyBhcmUgZXhwcmVzc2VkIGluIHNvIHRoYXQgd2UgbWF5IGRlY2lwaGVyIHBoZW5vdHlwaWMgYXNzb2NpYXRpb25zLiAgV2UgYXJlIGdvaW5nIHRvIGludmVzdGlnYXRlIGdlbmUgZXhwcmVzc2lvbiBkaWZmZXJlbnRpYXRpb24gYmV0d2VlbiBDLiBlbGVnYW5zIHRoYXQgaGFkIHRyYW5zaWVudCBrbm9ja2Rvd24gb2YgTkhSLTI1IGFuZCB3aWxkdHlwZSBDLiBlbGVnYW5zIHVzaW5nIERFU2VxMi4gIERpZmZlcmVudGlhbGx5IGV4cHJlc3NlZCBnZW5lcyB3aWxsIHRoZW4gYmUgcnVuIHRocm91Z2ggR08gVGVybSBlbnJpY2htZW50IGFuYWx5c2lzIHRvIGlkZW50aWZ5IGNvbnNlcnZlZCBwYXRod2F5cyBhbmQgdGhlIHRvcCA1MCByZWd1bGF0ZWQgZ2VuZXMgd2lsbCBiZSBzZWxlY3RlZCBmb3IgZnVydGhlciBpbnZlc3RpZ2F0aW9uLiAgVGhlIGdlbmVzIHdpbGwgdGhlbiBydW4gdGhyb3VnaCBhICB0aXNzdWUgYW5kIHBoZW5vdHlwaWMgZW5yaWNobWVudCBhbmFseXNpcyB0byBsb2NhdGUgdGhlIGdlbmUgZXhwcmVzc2lvbiBhbmQgcGhlbm90eXBpYyBhc3NvY2lhdGlvbnMuICAgICAKClRoZSBjb21tYW5kIGJlbG93IG11c3QgYmUgcnVuIGVhY2ggdGltZSB0byBkb3dubG9hZCB0aGUgREVTZXEyIHBhY2thZ2UgaW4gb3JkZXIgdG8gbG9vayBhdCBvdXIgZGF0YQpgYGB7cn0KcGxvdChjYXJzKQppZiAoIXJlcXVpcmVOYW1lc3BhY2UoIkJpb2NNYW5hZ2VyIiwgcXVpZXRseSA9IFRSVUUpKQogICAgaW5zdGFsbC5wYWNrYWdlcygiQmlvY01hbmFnZXIiKQpCaW9jTWFuYWdlcjo6aW5zdGFsbCgiREVTZXEyIiwgdmVyc2lvbiA9ICIzLjgiKQpsaWJyYXJ5KCJERVNlcTIiKQpgYGAKQWZ0ZXIgZG93bmxvYWRpbmcgREVTZXEyIHdlIHdhbnRlZCB0byBjcmVhdGUgYSBwcm9qZWN0IHRhYmxlIHdpdGggb3VyIGRhdGEgaW4gaXQsd2UgZGVjaWRlZCB0byBmaXJzdCBydW4gdGhlIGRhdGEgd2l0aCBhbGwgNiBvZiBvdXIgZGF0YSBzZXRzCmBgYHtyfQpBbGxQcm9qZWN0X3RhYmxlIDwtIHJlYWQudGFibGUoIk91cmRhdGF0YWJsZS50eHQiLCBoZWFkZXIgPSBUUlVFLCBzZXA9ICdcdCcpCkFsbFByb2plY3RfZGF0YSA8LSBERVNlcURhdGFTZXRGcm9tSFRTZXFDb3VudChzYW1wbGVUYWJsZSA9IEFsbFByb2plY3RfdGFibGUsIGRpcmVjdG9yeSA9ICdBbGxkYXRhJywgZGVzaWduID0gIH4gQ29uZGl0aW9uKQpOb3JtYWxfQWxsUHJvamVjdF9EYXRhX0luX1IgPC0gdnN0KEFsbFByb2plY3RfZGF0YSwgYmxpbmQgPSBGQUxTRSkKcGxvdFBDQShOb3JtYWxfQWxsUHJvamVjdF9EYXRhX0luX1IsIGludGdyb3VwPWMoIkNvbmRpdGlvbiIsICJSZXBsaWNhdGUiKSkKYGBgCgpUaGlzIHBsb3Qgc2hvd3MgdGhhdCBNVVQxIGhhcyBhIGxvdCBvZiB2YXJpYXRpb24gY29tcGFyZWRkIHRvIHRoZSBvdGhlciBtdXQgZGF0YSBzZXRzLCBtYXkgYmUgYSBwcm9ibGVtIHdpdGggaXQuCgpDYW4gZmluZCB0aGUgcGxvdCBvdmVyIGJ5IHBsb3RzLCB3ZSBjYW4gY2xlYXJseSBzZWUgdGhhdCBNdXQgMSBpcyBub3Qgc2ltaWxhciB0byB0aGUgb3RoZXIgbXV0YXRpb24gZGF0YSBzZXRzLCB3aGljaCBtYXkgY2F1c2UgcHJvYmxlbXMgaW4gdGhlIGZ1dHVyZSwgYWxzbyB1c2UgdGhlIHZpZXcgZmVhdHVyZSBpbiBvcmRlciB0byBzZWUgdGhlIHBsb3QgdGhhdCB3YXMgbWFkZQpgYGB7cn0KRGVzZXFfQWxscHJvamVjdF9hbmFseXNpc19kYXRhIDwtIERFU2VxKEFsbFByb2plY3RfZGF0YSkKUmVzdWx0c19mb3JfQWxsUHJvamVjdCA8LSByZXN1bHRzKERlc2VxX0FsbHByb2plY3RfYW5hbHlzaXNfZGF0YSwgICAgICAgICAgICAgY29udHJhc3QgPSBjKCJDb25kaXRpb24iLCAibXV0IiwgIm5vcm0iKSkKc3VtbWFyeShSZXN1bHRzX2Zvcl9BbGxQcm9qZWN0KQoKYGBgCgpUaGVzZSBhcmUgdGhlIHN1bW1hcmllcyBmb3IgdGhlIERFU2VxIGFuYWx5c2lzLiBXZSBjYW4gc2VlIHRoZWF0IDEwMiBnZW5lcyBhcmUgdXByZWd1bGF0ZWQgYW5kIDk3IGFyZSBkb3ducmVndWxhdGVkLgoKTmV4dCB3ZSB3YW50IHRvIG1ha2UgYSBwbG90IHRvIHNlZSBpZiBzb21lIGdlbmVzIGFyZSBiZWluZyBvdmVyL3VuZGVyZXhwcmVzc2VkCmxvb2sgYXQgZm9sZCBjaGFuZ2VzCmBgYHtyfQpSTkFpX04yX3Jlc19vcmRlcmVkIDwtIFJlc3VsdHNfZm9yX0FsbFByb2plY3QgW29yZGVyKFJlc3VsdHNfZm9yX0FsbFByb2plY3QkcHZhbHVlKSxdClJOQWlfTjJfcmVzX3NpZyA8LSBzdWJzZXQoUk5BaV9OMl9yZXNfb3JkZXJlZCwgcGFkaiA8IC4wNSkKd3JpdGUudGFibGUoYXMuZGF0YS5mcmFtZShSTkFpX04yX3Jlc19zaWcpLCBmaWxlPSJGaW5hbF9BbGxEYXRhX2Zvcl9HT1RFUk0udHh0Iiwgc2VwID0gIlx0IikKcGxvdE1BKFJlc3VsdHNfZm9yX0FsbFByb2plY3QpClZpZXcocGxvdE1BKFJlc3VsdHNfZm9yX0FsbFByb2plY3QpKQpgYGAKVG8gdmlldyB0aGUgcGxvdCBkbyBWaWV3KHBsb3RNQShSZXN1bHRzX2Zvcl9BbGxQcm9qZWN0KSkKYWxzbyB0YWtpbmcgc2NyZWVuIHNob3RzIG9mIHRoZSBwbG90cwoKU3VtbWFyeS10aGlzIHBsb3Qgc2hvd3MgdXMgdGhhdCB0aGUgcmVkIGFyZSBvdXRsaWVycyB0aGF0IGFyZSBlaXRoZXIgdXByZWd1bGF0ZWQgb3IgZG93bnJlZ3VsYXRlZC1hIHZpc3VhbCByZXByZXNlbnRhdGlvbgoKTmV4dCB3ZSB3YW50ZWQgdG8gY3JlYXRlIGEgcGhlYXRtYXAgdG8gc2VlIHdoaWNoIGdlbmVzIGFyZSBiZWluZyBvdmVyZXhwcmVzc2VkCmBgYHtyfQppbnN0YWxsLnBhY2thZ2VzKCJwaGVhdG1hcCIpIApsaWJyYXJ5KCJwaGVhdG1hcCIpCnN1YnNldF9maXJzdF8yNV9nZW5lcyA8LSBvcmRlcihyb3dNZWFucyhjb3VudHMoRGVzZXFfQWxscHJvamVjdF9hbmFseXNpc19kYXRhLCBub3JtYWxpemVkID0gVFJVRSkpLCBkZWNyZWFzaW5nID0gVFJVRSlbMToyNV0KCnBoZWF0bWFwX2F1eF9hbmFseXNpcyA8LSBub3JtVHJhbnNmb3JtKEFsbFByb2plY3RfZGF0YSkKcGhlYXRtYXAoYXNzYXkocGhlYXRtYXBfYXV4X2FuYWx5c2lzKVtzdWJzZXRfZmlyc3RfMjVfZ2VuZXMsXSkKCmBgYAoKc2luY2Ugd2UgY2FuIHNlZSB0aGF0IHRoZXJlIGlzIGEgcHJvYmxlbSB3aXRoIEtSWTg1XzFfYXV4IChhbGwgb2YgdGhlIHJlZCBvbiB0aGUgcGhlYXRtYXApIHdlIGhhdmUgZGVjaWRlZCB0aGF0IHdlIGFyZSBnb2luZyB0byB0cnkgYW5kIHNlZSB3aGF0IHRoZSByZXN1bHRzIGFyZSBsaWtlIGlmIHdlIGRvIG5vdCB1c2UgdGhpcyBkYXRhClRoZXJlZm9yZSBJIGFtIGdvaW5nIHRvIHJ1biBldmVyeXRoaW5nIGFnYWluIGJ1dCB3aXRob3V0IHRoYXQgb25lIGRhdGEgc2V0CgpzaW5jZSB3ZSBjYW4gc2VlIHRoYXQgdGhlcmUgaXMgYSBwcm9ibGVtIHdpdGggS1JZODVfMV9hdXggd2UgaGF2ZSBkZWNpZGVkIHRoYXQgd2UgYXJlIGdvaW5nIHRvIHRyeSBhbmQgc2VlIHdoYXQgdGhlIHJlc3VsdHMgYXJlIGxpa2UgaWYgd2UgZG8gbm90IHVzZSB0aGlzIGRhdGEKVGhlcmVmb3JlIEkgYW0gZ29pbmcgdG8gcnVuIGV2ZXJ5dGhpbmcgYWdhaW4gYnV0IHdpdGhvdXQgdGhhdCBvbmUgZGF0YSBzZXQKRnVydGhlcm1vcmUgd2Ugd2FudGVkIHRvIHJ1biBHbGltbWEtLXdoaWNoIGlzIGEgbmV3IHRvb2wgdGhhdCBEci4gVFMgc2hvd2VkIHVzCgpgYGB7cn0KcGxvdChjYXJzKQppZiAoIXJlcXVpcmVOYW1lc3BhY2UoIkJpb2NNYW5hZ2VyIiwgcXVpZXRseSA9IFRSVUUpKQogICAgaW5zdGFsbC5wYWNrYWdlcygiQmlvY01hbmFnZXIiKQpCaW9jTWFuYWdlcjo6aW5zdGFsbCgiREVTZXEyIiwgdmVyc2lvbiA9ICIzLjgiKQpsaWJyYXJ5KCJERVNlcTIiKQpPbmVQcm9qZWN0X3RhYmxlIDwtIHJlYWQudGFibGUoIk91cmRhdGF0YWJsZW9uZWdvbmUudHh0IiwgaGVhZGVyID0gVFJVRSwgc2VwPSAnXHQnKQpPbmVQcm9qZWN0X2RhdGEgPC0gREVTZXFEYXRhU2V0RnJvbUhUU2VxQ291bnQoc2FtcGxlVGFibGUgPSBPbmVQcm9qZWN0X3RhYmxlLCBkaXJlY3RvcnkgPSAnT25lZGF0YScsIGRlc2lnbiA9ICB+IENvbmRpdGlvbikKTm9ybWFsX09uZVByb2plY3RfRGF0YV9Jbl9SIDwtIHZzdChPbmVQcm9qZWN0X2RhdGEsIGJsaW5kID0gRkFMU0UpCnBsb3RQQ0EoTm9ybWFsX09uZVByb2plY3RfRGF0YV9Jbl9SLCBpbnRncm91cD1jKCJDb25kaXRpb24iLCAiUmVwbGljYXRlIikpCkRlc2VxX09uZXByb2plY3RfYW5hbHlzaXNfZGF0YSA8LSBERVNlcShPbmVQcm9qZWN0X2RhdGEpClJlc3VsdHNfZm9yX09uZVByb2plY3QgPC0gcmVzdWx0cyhEZXNlcV9PbmVwcm9qZWN0X2FuYWx5c2lzX2RhdGEsICAgICAgICAgICAgIGNvbnRyYXN0ID0gYygiQ29uZGl0aW9uIiwgIm11dCIsICJub3JtIikpCnN1bW1hcnkoUmVzdWx0c19mb3JfT25lUHJvamVjdCkKUk5BaV9OMl9vbmVyZXNfb3JkZXJlZCA8LSBSZXN1bHRzX2Zvcl9PbmVQcm9qZWN0IFtvcmRlcihSZXN1bHRzX2Zvcl9PbmVQcm9qZWN0JHB2YWx1ZSksXQpSTkFpX04yX29uZXJlc19zaWcgPC0gc3Vic2V0KFJOQWlfTjJfb25lcmVzX29yZGVyZWQsIHBhZGogPCAuMDUpCndyaXRlLnRhYmxlKGFzLmRhdGEuZnJhbWUoUk5BaV9OMl9vbmVyZXNfc2lnKSwgZmlsZT0iRmluYWxfT25lRGF0YV9mb3JfR09URVJNLnR4dCIsIHNlcCA9ICJcdCIpCnBsb3RNQShSZXN1bHRzX2Zvcl9PbmVQcm9qZWN0KQpWaWV3KHBsb3RNQShSZXN1bHRzX2Zvcl9PbmVQcm9qZWN0KSkKaW5zdGFsbC5wYWNrYWdlcygicGhlYXRtYXAiKSAKbGlicmFyeSgicGhlYXRtYXAiKQpzdWJzZXRfb25lZmlyc3RfMjVfZ2VuZXMgPC0gb3JkZXIocm93TWVhbnMoY291bnRzKERlc2VxX09uZXByb2plY3RfYW5hbHlzaXNfZGF0YSwgbm9ybWFsaXplZCA9IFRSVUUpKSwgZGVjcmVhc2luZyA9IFRSVUUpWzE6MjVdCgpwaGVhdG1hcF9hdXhvbmVfYW5hbHlzaXMgPC0gbm9ybVRyYW5zZm9ybShPbmVQcm9qZWN0X2RhdGEpCnBoZWF0bWFwKGFzc2F5KHBoZWF0bWFwX2F1eG9uZV9hbmFseXNpcylbc3Vic2V0X29uZWZpcnN0XzI1X2dlbmVzLF0pCmlmICghcmVxdWlyZU5hbWVzcGFjZSgiQmlvY01hbmFnZXIiLCBxdWlldGx5ID0gVFJVRSkpCiAgICBpbnN0YWxsLnBhY2thZ2VzKCJCaW9jTWFuYWdlciIpCkJpb2NNYW5hZ2VyOjppbnN0YWxsKCJHZW5vbWVJbmZvRGIiLCB2ZXJzaW9uID0gIjMuOCIpCmxpYnJhcnkoIkdlbm9tZUluZm9EYiIpCmlmICghcmVxdWlyZU5hbWVzcGFjZSgiQmlvY01hbmFnZXIiLCBxdWlldGx5ID0gVFJVRSkpCiAgICBpbnN0YWxsLnBhY2thZ2VzKCJCaW9jTWFuYWdlciIpCkJpb2NNYW5hZ2VyOjppbnN0YWxsKCJHbGltbWEiLCB2ZXJzaW9uID0gIjMuOCIpCmxpYnJhcnkoR2xpbW1hKQpzdGF0dXMgPC0gYXMubnVtZXJpYyhSZXN1bHRzX2Zvcl9PbmVQcm9qZWN0JHBhZGogPCAuMSkKYW5ub19vbmVnZW5lIDwtIGRhdGEuZnJhbWUoR2VuZUlEPXJvd25hbWVzKFJlc3VsdHNfZm9yX09uZVByb2plY3QpLCBzeW1ib2wgPSByb3duYW1lcyhSZXN1bHRzX2Zvcl9PbmVQcm9qZWN0KSkgCmdsTURQbG90KFJlc3VsdHNfZm9yX09uZVByb2plY3QsIHN0YXR1cyA9IHN0YXR1cywgY291bnRzID0gY291bnRzKERlc2VxX09uZXByb2plY3RfYW5hbHlzaXNfZGF0YSwgbm9ybWFsaXplZCA9IFRSVUUpLCBncm91cHM9IERlc2VxX09uZXByb2plY3RfYW5hbHlzaXNfZGF0YSRDb25kaXRpb24sdHJhbnNmb3JtID0gVFJVRSwgc2FtcGxlcyA9IGNvbG5hbWVzKERlc2VxX09uZXByb2plY3RfYW5hbHlzaXNfZGF0YSksIGFubm8gPSBhbm5vX29uZWdlbmUsIHBhdGggPSAnLi8nLCBmb2xkZXIgPSAiZ2xpbW1hX01EIiwgbGF1bmNoID0gRkFMU0UpCmBgYAoKRGF0YSBpcyBpbiBhbGwgb2YgdGhlIHBsb3RzIGFib3ZlIGFuZCB0aGUgREVTZXEgcmVzdWx0cyBhcmUgYmVsb3cgc2hvd2luZyBvdmVyL3VuZGVyZXhwcmVzc2lvbgoKCm91dCBvZiAyNjA4OSB3aXRoIG5vbnplcm8gdG90YWwgcmVhZCBjb3VudAphZGp1c3RlZCBwLXZhbHVlIDwgMC4xCkxGQyA+IDAgKHVwKSAgICAgICA6IDIyOSwgMC44OCUKTEZDIDwgMCAoZG93bikgICAgIDogMzM2LCAxLjMlCm91dGxpZXJzIFsxXSAgICAgICA6IDEsIDAuMDAzOCUKbG93IGNvdW50cyBbMl0gICAgIDogMTEyNTksIDQzJQoobWVhbiBjb3VudCA8IDQpCgpJbnRlcmVzdGluZyB0aGF0IHRha2luZyBvdXQgdGhlIG9uZSBmaWxlLCBsZWFzZHMgdG8gbW9yZSB1cHJlZ3VsYXRlZCBnZW5lcyBhbmQgZG93bnJlZ3VsYXRlZApDbGVhcmluZyB0aGUgb25lIGRhdGEgc2V0IHdhcyBjYXVzaW5nIGEgbG90IG9mIHByb2JsZW1zLCBob3dldmVyIHdlIGNhbiBhbHNvIHNlZSB0aGF0IG11dCAyIGFuZCAzIGFyZSBzdGlsbCBxdWl0ZSBkaWZmZXJlbnQgYW5kIG5vcm0gMyBpcyB2ZXJ5IGRpZmZlcmVudCBmcm9tIG5vcm0gMSBhbmQgMiBmcm9tIG91ciBQQ0EgcGxvdC4KCkdsaW1tYSBsaW5rIGZpbGU6Ly8vVXNlcnMvbWh1bnRlci9EZXNrdG9wL0dlbm9taWNzJTIwTGFiJTIwTWV0aG9kcy9nbGltbWFfTUQvTUQtUGxvdC5odG1sCgpQbG90IGlzIHNhdmVkIG9uIGRlc2t0b3AgbmFtZXMgb25lZGF0YQoKQ2xhc3Mgbm90ZSAzLzE0LzE5IGNoaXBTZXEgZGF0YS1jaHJvbWF0aW4gcHJlY2lwaXRhdGlvbiwgd2hlcmUgdHJhbnNjcmlwdGlvbiBmYWN0b3IgYmluZHMgdG8gdGhlIGdlbmVvbWUgYW5kIGZyZWV6ZSB0aG9zZSBhc3NvY2lhdGlvbnMgYW5kIHRoZW4gc2VxdWVuY2Ugd2hlcmUgdHJhbnNwcmljdGlvbiBiaW5kcy0tdGhpcyBpcyBvbiB0aGUgZ2FsYXh5IG9yZ2FuaXNtLS0taG93IHRvIHVzZSBtb2RFUk4tY2UxMC0td29ybWJ5IGdlbmUtLS0tbW9zdCB1c2VmdWwgYXJlIHRoZSBwZWFrcyBhbmQgY2FsbGVkIHdoZXJlIGl0IGlzIGJpbmRpbmctLWxvdHMgb2YgZGlmZmVyZW50IGRhdGEgc2V0cyBhbmQgbG9vayBob3cgaXQgaXMgaW4gdGhlIHBhcGVyLS13aGVyZSBhIHRyYW5zY3JpcHRpb24gZmFjdG9yIGlzIGJpbmRpbmctLS11bnppcCBpdC0tLXJlZ2lvbiBwZWFrIGZpbmUtLXVzZSBJR1YgYW5kIGRvd25sb2FkIGl0LAoKQUxTTyBXRSBORUVEIFRPIFVTRSBUSEUgRVhDRUwgbGluayBvbiBtb29kbGUgdG8gZmluZCB0aGUgdGlzc3VlcwpIaVNlcS0tbnVtYmVyIG9mIGJhc2VzIGluIGVhY2ggZ2VuZSBhbmQgbnVtYmVyIG9mIHRyYW5zY3JpcHRzCmFsc28gdGhlcmUgaXMgYSBKYXNwYXItLWEgcGxhY2Ugd2hlcmUgcGVvYXBsZSBhaHZlIGNhdGFsb3VnZWQsIAo+YW5kIHRoZW4gcGFzdCB0aGUgc2VxdWVuY2UgZnJvbSBJR1YtIHVzZSB0byBzZWUgaWYgdGhlcmUgYXJlIHBhdHRlcm5zCgpCcm9va2UgaXMgaGF2aW5nIHByb2JsZW1zIHdpdGggaGVyIGRhdGEgc2V0LCBzbyBJIGhhdmUgZGVjaWRlZCB0byBydW4gaGVyIGRhdGEgKHdoaWNoIHdhcyB0YWtpbmcgb3V0IGJvdGggS1JZODVfMV9hdXggYW5kIE4yXzFfYXV4aW4gdG8gc2VlIHdoZXRoZXIgYnkgcmVtb3ZpbmcgYm90aCBkYXRhIHNldHMgd2UgaGF2ZSBhIGRpZmZlcmVuY2UgaW4gdGhlIGdlbmVzIHRoYXQgYXJlIG92ZXIvdW5kZXJleHByZXNzZWQuIEkgcHJldmlvdXNseSB1c2VkIHRoZSBkYXRhIHRoYXQgYnJvb2tlIHNlbnQgbWUgYW5kIHRyaWVkIHRvIGRvIGEgR0VORSBWZW5uIGRpYWdyYW0gaG93ZXZlciwgZm91bmQgdGhhdCBoZXIgZGF0YSBhbmQgYWxsZGF0YSB3ZXJlIHRoZSBzYW1lLCBob3dldmVyIHVzaW5nIG15IGRhdGEgdGhlcmUgd2VyZSBtYW55IGRpZmZlcm5jZXMtLVRoaXMgdmVubmRpYWdyYW0gd2FzIHNhdmVkIGluIG91cmRhdGEgZm9sZGVyIG9uIG15IGNvbXB1dGVyLS1BbHNvIGdvaW5nIHRvIHRyeSB0byBmaW5kIGEgd2F5IHRvIHJ1biBhIHZlbm5kaWFncmFtIG9uIG15IFIKCmBgYHtyfQoKYGBgCgoKYGBge3J9ClR3b1Byb2plY3RfdGFibGUgPC0gcmVhZC50YWJsZSgiT3VyZGF0YXRhYmxldHdvLnR4dCIsIGhlYWRlciA9IFRSVUUsIHNlcD0gJ1x0JykKVHdvUHJvamVjdF9kYXRhIDwtIERFU2VxRGF0YVNldEZyb21IVFNlcUNvdW50KHNhbXBsZVRhYmxlID0gVHdvUHJvamVjdF90YWJsZSwgZGlyZWN0b3J5ID0gJ1R3b2RhdGEnLCBkZXNpZ24gPSAgfiBDb25kaXRpb24pCk5vcm1hbF9Ud29Qcm9qZWN0X0RhdGFfSW5fUiA8LSB2c3QoVHdvUHJvamVjdF9kYXRhLCBibGluZCA9IEZBTFNFKQpwbG90UENBKE5vcm1hbF9Ud29Qcm9qZWN0X0RhdGFfSW5fUiwgaW50Z3JvdXA9YygiQ29uZGl0aW9uIiwgIlJlcGxpY2F0ZSIpKQpEZXNlcV9Ud29wcm9qZWN0X2FuYWx5c2lzX2RhdGEgPC0gREVTZXEoVHdvUHJvamVjdF9kYXRhKQpSZXN1bHRzX2Zvcl9Ud29Qcm9qZWN0IDwtIHJlc3VsdHMoRGVzZXFfVHdvcHJvamVjdF9hbmFseXNpc19kYXRhLCAgICAgICAgICAgICBjb250cmFzdCA9IGMoIkNvbmRpdGlvbiIsICJtdXQiLCAibm9ybSIpKQpzdW1tYXJ5KFJlc3VsdHNfZm9yX1R3b1Byb2plY3QpClJOQWlfTjJfcmVzVHdvX29yZGVyZWQgPC0gUmVzdWx0c19mb3JfVHdvUHJvamVjdCBbb3JkZXIoUmVzdWx0c19mb3JfVHdvUHJvamVjdCRwdmFsdWUpLF0KUk5BaV9OMl9yZXNUd29fc2lnIDwtIHN1YnNldChSTkFpX04yX3Jlc1R3b19vcmRlcmVkLCBwYWRqIDwgLjA1KQp3cml0ZS50YWJsZShhcy5kYXRhLmZyYW1lKFJOQWlfTjJfcmVzVHdvX3NpZyksIGZpbGU9IkZpbmFsX1R3b0RhdGFfZm9yX0dPVEVSTS50eHQiLCBzZXAgPSAiXHQiKQpwbG90TUEoUmVzdWx0c19mb3JfVHdvUHJvamVjdCkKVmlldyhwbG90TUEoUmVzdWx0c19mb3JfVHdvUHJvamVjdCkpCnN1YnNldF9maXJzdF8yNVR3b19nZW5lcyA8LSBvcmRlcihyb3dNZWFucyhjb3VudHMoRGVzZXFfVHdvcHJvamVjdF9hbmFseXNpc19kYXRhLCBub3JtYWxpemVkID0gVFJVRSkpLCBkZWNyZWFzaW5nID0gVFJVRSlbMToyNV0KCnBoZWF0bWFwX2F1eFR3b19hbmFseXNpcyA8LSBub3JtVHJhbnNmb3JtKFR3b1Byb2plY3RfZGF0YSkKcGhlYXRtYXAoYXNzYXkocGhlYXRtYXBfYXV4VHdvX2FuYWx5c2lzKVtzdWJzZXRfZmlyc3RfMjVUd29fZ2VuZXMsXSkKCkJpb2NNYW5hZ2VyOjppbnN0YWxsKCJHZW5vbWVJbmZvRGIiLCB2ZXJzaW9uID0gIjMuOCIpCmxpYnJhcnkoIkdlbm9tZUluZm9EYiIpCmlmICghcmVxdWlyZU5hbWVzcGFjZSgiQmlvY01hbmFnZXIiLCBxdWlldGx5ID0gVFJVRSkpCiAgICBpbnN0YWxsLnBhY2thZ2VzKCJCaW9jTWFuYWdlciIpCkJpb2NNYW5hZ2VyOjppbnN0YWxsKCJHbGltbWEiLCB2ZXJzaW9uID0gIjMuOCIpCmxpYnJhcnkoR2xpbW1hKQpzdGF0dXMgPC0gYXMubnVtZXJpYyhSZXN1bHRzX2Zvcl9Ud29Qcm9qZWN0JHBhZGogPCAuMSkKYW5ub190d29nZW5lIDwtIGRhdGEuZnJhbWUoR2VuZUlEPXJvd25hbWVzKFJlc3VsdHNfZm9yX1R3b1Byb2plY3QpLCBzeW1ib2wgPSByb3duYW1lcyhSZXN1bHRzX2Zvcl9Ud29Qcm9qZWN0KSkgCmdsTURQbG90KFJlc3VsdHNfZm9yX1R3b1Byb2plY3QsIHN0YXR1cyA9IHN0YXR1cywgY291bnRzID0gY291bnRzKERlc2VxX1R3b3Byb2plY3RfYW5hbHlzaXNfZGF0YSwgbm9ybWFsaXplZCA9IFRSVUUpLCBncm91cHM9IERlc2VxX1R3b3Byb2plY3RfYW5hbHlzaXNfZGF0YSRDb25kaXRpb24sdHJhbnNmb3JtID0gVFJVRSwgc2FtcGxlcyA9IGNvbG5hbWVzKERlc2VxX1R3b3Byb2plY3RfYW5hbHlzaXNfZGF0YSksIGFubm8gPSBhbm5vX3R3b2dlbmUsIHBhdGggPSAnLi8nLCBmb2xkZXIgPSAiZ2xpbW1hX3R3b01EIiwgbGF1bmNoID0gRkFMU0UpCmBgYAoKREVTZXEtZGF0YSAKb3V0IG9mIDIzNjQ3IHdpdGggbm9uemVybyB0b3RhbCByZWFkIGNvdW50CmFkanVzdGVkIHAtdmFsdWUgPCAwLjEKTEZDID4gMCAodXApICAgICAgIDogNjcsIDAuMjglCkxGQyA8IDAgKGRvd24pICAgICA6IDEyNSwgMC41MyUKb3V0bGllcnMgWzFdICAgICAgIDogMCwgMCUKbG93IGNvdW50cyBbMl0gICAgIDogMTE4NzEsIDUwJQoobWVhbiBjb3VudCA8IDkpCgpJZiB3ZSB0YWtlIG91dCB0d28gd2UgaGF2ZSBsZXNzIHVuZGVyL292ZXJleHByZXNzaW9uIG9mIGdlbmVzIHdoZW4gd2UgZG8gd2l0aCBvbmUgZ29uZQoKQmVsb3cgYXJlIG15IGF0dGVtcHRzIHRvIHJ1biBhIG5ldyBSIHBhY2thZ2UgVmVubkRpYWdyYW0KVGhpcyBwcm9ncmFtIHdvdWxkIGJlIHNvIHVzZWZ1bCBiYyBpdCB3b3VsZCBhbGxvdyB1cyBybyB0aXRsZSBhbmQgY2hhbmdlIHRoZSBjb2xvciBvZiB0aGUgdmVubmRpYWdyYW0sIGZ1cnRoZXJtb3JlIHdlIHdvdWxkIGJlIGFibGUgdG8gZG8gYW5hbHlzaXMgb24gbW9yZSB0aGFuIHRocmVlIGRhdGEgc2V0cyBhbmQgd291bGQgYmUgYWJsZSB0byBjaGFuZ2UgdGhlIHNpemUgdG8gY29ycmVzcG9uZCB3aWh0IHRoZSBkYXRhIHNldHMgc2l6ZS4gCgogIFdlIGFyZSBnb2luZyB0byBwcmVzZW50IG9uIHRoaXMgZGF0YSBpbiBjbGFzcyBvbiBUdWVzZGF5CiAgU3RydWdnbGluZyB0byBnZXQgdGhlIGRhdGEgdG8gd29yayBpbiB0aGUgVmVubkRpYWdyYW0sIG1pZ2h0IGp1c3Qga2VlcCB1c2luZyB0aGUgR2VuZVZlbm4gRGlhZ3JhbQpgYGB7cn0KaW5zdGFsbC5wYWNrYWdlcygnVmVubkRpYWdyYW0nKQpsaWJyYXJ5KFZlbm5EaWFncmFtKQoKIGRyYXcucGFpcndpc2UudmVubihhcmVhMSwgYXJlYTIsIGNyb3NzLmFyZWEsIGNhdGVnb3J5ID0gcmVwKCIiLCAyKSwKZXVsZXIuZCA9IFRSVUUsIHNjYWxlZCA9IFRSVUUsIGludmVydGVkID0gRkFMU0UsCmV4dC50ZXh0ID0gVFJVRSwgZXh0LnBlcmNlbnQgPSByZXAoMC4wNSwgMyksIGx3ZCA9CnJlcCgyLCAyKSwgbHR5ID0gcmVwKCJzb2xpZCIsIDIpLCBjb2wgPSByZXAoImJsYWNrIiwKMiksIGZpbGwgPSBOVUxMLCBhbHBoYSA9IHJlcCgwLjUsIDIpLCBsYWJlbC5jb2wgPQpyZXAoImJsYWNrIiwgMyksIGNleCA9IHJlcCgxLCAzKSwgZm9udGZhY2UgPQpyZXAoInBsYWluIiwgMyksIGZvbnRmYW1pbHkgPSByZXAoInNlcmlmIiwgMyksIGNhdC5wb3MKPSBjKC01MCwgNTApLCBjYXQuZGlzdCA9IHJlcCgwLjAyNSwgMiksIGNhdC5jZXggPQpyZXAoMSwgMiksIGNhdC5jb2wgPSByZXAoImJsYWNrIiwgMiksIGNhdC5mb250ZmFjZSA9CnJlcCgicGxhaW4iLCAyKSwgY2F0LmZvbnRmYW1pbHkgPSByZXAoInNlcmlmIiwgMiksCmNhdC5qdXN0ID0gcmVwKGxpc3QoYygwLjUsIDAuNSkpLCAyKSwgY2F0LmRlZmF1bHQucG9zCj0gIm91dGVyIiwgY2F0LnByb21wdHMgPSBGQUxTRSwgZXh0LnBvcyA9IHJlcCgwLCAyKSwKZXh0LmRpc3QgPSByZXAoMCwgMiksIGV4dC5saW5lLmx0eSA9ICJzb2xpZCIsCmV4dC5sZW5ndGggPSByZXAoMC45NSwgMiksIGV4dC5saW5lLmx3ZCA9IDEsCnJvdGF0aW9uLmRlZ3JlZSA9IDAsIHJvdGF0aW9uLmNlbnRyZSA9IGMoMC41LCAwLjUpLAppbmQgPSBUUlVFLCBzZXAuZGlzdCA9IDAuMDUsIG9mZnNldCA9IDAsIGNleC5wcm9wID0KTlVMTCwgcHJpbnQubW9kZSA9ICJyYXciLCBzaWdkaWdzID0gMywgLi4uKQpgYGAKVG9kYXkgSSBhbSBnb2luZyB0byBiZWdpbiBleGFtaW5pbmcgdGhlIGFjdHVhbCBnZW5lcyB0aGF0IGFyZSBiZWluZyB1cC9kb3duIHJlZ3VsYXRlZCEgR29pbmcgdG8gdXNlIEdlbm5WZW5uLXRoZSByZWQgY2lyY2xlIGlzIEFsbERhdGEsIHRoZSB5ZWxsb3cgY2lyY2xlIGlzIE9uZURhdGEsIGFuZCBncmVlbiBpcyBUd29EYXRhIHNldHMKVGhlcmUgYXJlIDc1IGdlbmVzIHRoYXQgYXJlIGV4cHJlc3NlZCBkaWZmZXJlbnRseSB0aGFuIGFsbCB0aGUgZGF0YSwgYW5kIHNvIHdlIGFyZSBnb2luZyB0byBmb2N1cyBvbiB0aG9zZSBkYXRhIHNldHMuIApCZWxvdyBhcmUgdGhlIGdlbmUgbmFtZXMgdGhhdCBhcmUgc2ltaWxhci4gIEl0IGlzIGludGVyZXN0aW5nIHRvIG5vdCB0aGF0IHRoZSBUd29EYXRhIHNldHMgc2hhcmVzIG5vIHNpbWlsYXJpdHkgd2l0aCB0aGUgQWxsRGF0YSBzZXQgb24gaXRzIG93bi4gIE92ZXJhbGwgYWxsIHRocmVlIHNoYXJlIDQ1IG9mIHRoZSBzYW1lIHVwL2Rvd25yZWd1bGF0ZWQgZ2VuZXMuIAoKSSBhbSBnb2luZyB0byBzcGVuZCB0aGUgbmV4dCBmZXcgY2xhc3NlcyBtYWtpbmcgbm90ZXMgb24gdGhlc2UgZ2VuZXMgYW5kIHdoYXQgd2Uga25vdyBvZiB0aGVtLiBJIGFtIHNhdmluZyB0aGUgcGxhY2VzIHRoYXQgSSBjaXRlIGluIFpvdGVybwoKTW9zdCBvZiB0aGVzZSBnZW5lcyB3ZSBrbm93IG5vdGhpbmcgYWJvdXQtLXRoZXNlIHRvcCAyMCBvciBzbwpCMDIxOC43CkMwNEYxMi44CkMwOEY4LjYKQzEwRzExLjgKQzEzQTIuMQpDMTNBMi4zCkMzMEg2LjEyCkMzNEYxMS41CkMzNEg0LjIKQzM4RDkuMgpEMTAwNy4xMwpFMDFHNi4xCkYwMUcxMC41CkYwN0cxMS4zCkYxMUQxMS4zCkYxNUI5LjYKRjIwRDYuMgpGMjFGMy4zCkYyNkQyLjEwCkYyN0U1LjMKRjMzSDEyLjcKRjM1RTIuNQpGMzdBNC40CkYzN0E0LjUKRjQyRzguOApGNTNCNi40CkY1NUY4LjcKSzA4RDkuMgpLMDhEOS42ClIwNEI1LjYKVDAzRjcuNwpUMDVBNy4xClQxNkcxMi43ClQyMkMxLjgKVDI0RTEyLjUKVDI1QjkuNgpXMDFCNi4yClcwMkEyLjgKVzAzRjExLjQKWTEwNkc2Ry40ClkxMTNHN0MuMQpZMzdIMkEuMTQKWTQ3SDEwQS41Clk0OUUxMC4xMApZNTdHMTFDLjQyClk2RTJBLjEwClpLNDg0LjcKWks2MTYuNjEKWks4NDkuMQpaSzk3MC43CgpDdXQgb2ZmIG9mIHdoYXQgd2Uga25vdwoKYWNwLTYKYWxoLTkKY2JsLTEKY2xlYy00MgpjbnAtMgpjb2wtMTYzCmNvbC0zOApjb2wtNDUKY29sLTQ5CgpjdXRsLTE2LUJyb29rZSBpcyBsb29raW5nIGludG8KY3luLTYtQnJvb2tlIGlzIGxvb2tpbmcgaW50bwpkbWQtMTAtQnJvb2tlIGlzIGxvb2tpbmcgaW50bwpkb2QtMjAtQnJvb2tlIGlzIGxvb2tpbmcgaW50bwoKZHB5LTEKICBkdW1QWS0tc2hvcnRlciB0aGFuIFdUCiAgUHJvY2VzczogYm9keSBtb3JwaG9nZW5lc2lzCUlNUAlQdWJNZWQgCiAgcG9zaXRpdmUgcmVndWxhdGlvbiBvZiBtdWx0aWNlbGx1bGFyIG9yZ2FuaXNtIGdyb3d0aAogIApmZXItMQogIEh1bWFuIG9ydGhvbG9nczpEWVNGLUxPT0sgSU5UTyBUSElTIExBVEVSIE9OKioqKioqCiAgU3Blcm0gdmVzaWNsZSBmdXNpb24gcHJvdGVpbi1USEVSRSBBUkUgQSBUT04gT0YgUEFQRVJTIE9OIFRISVMgT05FCiAgRnVuY3Rpb246IGNhbGNpdW0tZGVwZW5kZW50IHBob3NwaG9saXBpZCBiaW5kaW5nCiAgUHJvY2VzczogY2VsbCBkaWZmZXJlbnRpYXRpb24JSUVBCSAKICAgICBmbGFnZWxsYXRlZCBzcGVybSBtb3RpbGl0eQlJTVAJUHViTWVkIAogICAgIG1lbWJyYW5lIGZ1c2lvbglJTVAJUHViTWVkIAogICAgIG11bHRpY2VsbHVsYXIgb3JnYW5pc20gZGV2ZWxvcG1lbnQJSUVBCSAKICAgIHBsYXNtYSBtZW1icmFuZSBvcmdhbml6YXRpb24JSU1QCVB1Yk1lZCAKICAgIHBzZXVkb3BvZGl1bSBvcmdhbml6YXRpb24JSU1QCVB1Yk1lZCAKICAgIHNwZXJtYXRvZ2VuZXNpcwlJRUEJIAogICAgc3Blcm1hdG9nZW5lc2lzCiAgICAKZ2lwYy0xIGdlbmUgZXhwcmVzc2lvbiBpbiAgbWF0ZXJpYWwgYW5hdG9taWNhbCBlbnRpdHkKCmdpcGMtMgoKaWdlZy0yICBpbW11bm9nbG9idWxpbiwgaW50ZXJncmFsIHByb3RlaW4gb2YgbWVtYnJhbmUgCgptbHRuLTctIGludGVyZ3JhbCBwb3J0ZWluIG9mIG1lbWJyYW5lCgpwZ3AtOC1BVFAgYmluZGluZywgdHJhbnNtZW1icmFuZSB0cmFuc3BvcnQKCnJhYi0xMS4yKioqKioqKioqKioKICBHVFAgYmluZGluZwogICAgUmFiLXByb3RlaW4gc2lnbmFsIHRyYW5zZHVjdGlvbgoKICBzYW1zLTUtQVRQIGJpbmRpbmcsQVRQIGJpbmRpbmcJSUVBCSAKICBtZXRhbCBpb24gYmluZGluZwlJRUEJIAogIG1ldGhpb25pbmUgYWRlbm9zeWx0cmFuc2ZlcmFzZSBhY3Rpdml0eQlJQkEJUHViTWVkIAogIG1ldGhpb25pbmUgYWRlbm9zeWx0cmFuc2ZlcmFzZSBhY3Rpdml0eQlJRUEJIAogIG51Y2xlb3RpZGUgYmluZGluZwlJRUEJIAogIHRyYW5zZmVyYXNlIGFjdGl2aXR5CiAgdGJhLTgtR1RQIGJpbmRpbmctbWl0b3RpYyBjZWxsIGN5Y2xlLCBudWNsZW90aWRlIGJpbmRpbmcsIGV4b3NrZWxldG9uLCBzdHJ1Y3R1cmFsIGNvbnN0aXR1dGUgb2YgICAgCiAgY3l0b3NrZWxldG9uCgogIFByb2Nlc3M6CiAgUy1hZGVub3N5bG1ldGhpb25pbmUgYmlvc3ludGhldGljIHByb2Nlc3MJSUVBCSAKICBvbmUtY2FyYm9uIG1ldGFib2xpYyBwcm9jZXNzCgogIE1BVDJBLSBIdW1hbiBvcnRob2xvZywgVGhlIHByb3RlaW4gZW5jb2RlZCBieSB0aGlzIGdlbmUgY2F0YWx5emVzIHRoZSBwcm9kdWN0aW9uIG9mICAgCiAgUy1hZGVub3N5bG1ldGhpb25pbmUgZnJvbSBtZXRoaW9uaW5lIGFuZCBBVFAuIEFkb01ldCBpcyB0aGUga2V5IG1ldGh5bCBkb25vciBpbiBjZWxsdWxhciBwcm9jZXNzZXMuCiAgRXhwcmVzc2lvbgogIFViaXF1aXRvdXMgZXhwcmVzc2lvbiBpbiB0aHlyb2lkIChSUEtNIDIzNC4wKSwgYWRyZW5hbCAoUlBLTSAxNDEuMykgYW5kIDI1IG90aGVyIHRpc3N1ZXMgCgoKdHNwLTEwCiAgCndydC03LS0KICBGb3VuZCBpbiBIZWRnZWhvZy1saWtlIGZhbWlseS0tbG9vayBpbnRvIHRoaXMgb25lCgpHb2luZyB0byBsb29rIGF0IHRoZXNlIGdlbmVzIHNwZWNmaWNhbGx5IHRvIHNlZSB3aGF0IGlzIGV4YWN0bHkgZ29pbmcgb24uCgpXaGlsZSBsb29raW5nIGF0IHRoZXNlIGdlbmVzLCBpIGhhdmUgZm91bmQgdGhhdCBhIGxvdCBvZiB0aGVtIHRoZW0gYXJlIGZvdW5kIG9uIHRoZSBYIENocm9tb3NvbWUtLXdoaWNoIGlzIGhlbHBmdWwgZm9yIHNleCBvcmllbnRhdGlvbgpMT09LIEZPUiBHRU5FUyBXSVRIICoqKioqKioqKiogdG8gbG9vayBpbnRvIHRoZW0gbW9yZSBsYXRlciBvbgoK