diff --git a/CpG_annotations.R b/CpG_annotations.R
new file mode 100644
index 0000000000000000000000000000000000000000..860f335822ecd62d02a7d7f1a837598d9b79018f
--- /dev/null
+++ b/CpG_annotations.R
@@ -0,0 +1,17 @@
+library(BSgenome.Ggallus.UCSC.galGal6)
+library(AnnotationHub)
+
+# all CpG sites ---------
+# https://support.bioconductor.org/p/95239/
+chrs <- names(Ggallus)[c(1:32, 34, 35)] # chr1-33, chrW, chrZ
+cgs <- lapply(chrs, function(x) start(matchPattern("CG", Ggallus[[x]])))
+cgs <- do.call(c, lapply(seq_along(chrs), function(x) GRanges(chrs[x], IRanges(cgs[[x]], width = 2))))
+
+# CpG islands ----------
+# https://support.bioconductor.org/p/95239/
+hub <- AnnotationHub()
+query(hub, c("cpg","gal"))
+cgi <- hub[["AH7135"]]
+
+cgis <- intersect(cgs, cgi)
+