diff --git a/.RData b/.RData
index 6b5a568..7620761 100644
--- a/.RData
+++ b/.RData
Binary files differ
diff --git a/.Rhistory b/.Rhistory
index 6ab0764..262eac1 100644
--- a/.Rhistory
+++ b/.Rhistory
@@ -1,18 +1,3 @@
-ggplot() +
-ggspatial::layer_spatial(canada, fill = "grey") +
-coord_sf() +
-theme_solarized() +
-NULL
-library(ggplot2)
-library(ggspatial)
-library(ggthemes)
-library(sf)
-canada <- read_sf("data/Canada.geojson")
-ggplot() +
-ggspatial::layer_spatial(canada, fill = "grey") +
-coord_sf() +
-theme_solarized() +
-theme(plot.margin = unit(0,1,1,0), "in") +
 NULL
 library(ggplot2)
 library(ggspatial)
@@ -510,3 +495,18 @@
 roxygen2::roxygenize()
 library(posterdown)
 library(posterdown)
+library("Cairo", lib.loc="~/R/x86_64-pc-linux-gnu-library/3.5")
+remove.packages("Cairo", lib="~/R/x86_64-pc-linux-gnu-library/3.5")
+roxygen2::roxygenize()
+library(posterdown)
+roxygen2::roxygenise()
+install.packages("Cairo")
+roxygen2::roxygenise()
+library(posterdown)
+plot(iris$Sepal.Length,iris$Sepal.Width)
+plot(iris$Sepal.Length,iris$Sepal.Width, shape = 4)
+plot(iris$Sepal.Length,iris$Sepal.Width, pch = 19)
+plot(iris$Sepal.Length,iris$Sepal.Width, pch = 19)
+library(posterdown)
+library(posterdown)
+library(posterdown)
diff --git a/.Rproj.user/441ADA46/persistent-state b/.Rproj.user/441ADA46/persistent-state
index 431a782..f0a00bc 100644
--- a/.Rproj.user/441ADA46/persistent-state
+++ b/.Rproj.user/441ADA46/persistent-state
@@ -1,6 +1,6 @@
 build-last-errors="[]"
 build-last-errors-base-dir="~/Documents/GitHub/posterdown/"
-build-last-outputs="[{\"output\":\"==> R CMD INSTALL --preclean --no-multiarch --with-keep.source posterdown\\n\\n\",\"type\":0},{\"output\":\"* installing to library ‘/home/thornux/R/x86_64-pc-linux-gnu-library/3.5’\\n\",\"type\":1},{\"output\":\"* installing *source* package ‘posterdown’ ...\\n\",\"type\":1},{\"output\":\"** R\\n\",\"type\":1},{\"output\":\"** inst\\n\",\"type\":1},{\"output\":\"** byte-compile and prepare package for lazy loading\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** help\\n\",\"type\":1},{\"output\":\"*** installing help indices\\n\",\"type\":1},{\"output\":\"** building package indices\\n\",\"type\":1},{\"output\":\"** testing if installed package can be loaded\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"* DONE (posterdown)\\n\",\"type\":1},{\"output\":\"\",\"type\":1}]"
+build-last-outputs="[{\"output\":\"==> R CMD INSTALL --preclean --no-multiarch --with-keep.source posterdown\\n\\n\",\"type\":0},{\"output\":\"* installing to library ‘/home/thornux/R/x86_64-pc-linux-gnu-library/3.5’\\n\",\"type\":1},{\"output\":\"* installing *source* package ‘posterdown’ ...\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** R\\n\",\"type\":1},{\"output\":\"** inst\\n\",\"type\":1},{\"output\":\"** byte-compile and prepare package for lazy loading\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** help\\n\",\"type\":1},{\"output\":\"*** installing help indices\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** building package indices\\n\",\"type\":1},{\"output\":\"** testing if installed package can be loaded\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"* DONE (posterdown)\\n\",\"type\":1},{\"output\":\"\",\"type\":1}]"
 compile_pdf_state="{\"errors\":[],\"output\":\"\",\"running\":false,\"tab_visible\":false,\"target_file\":\"\"}"
 files.monitored-path=""
 find-in-files-state="{\"handle\":\"\",\"input\":\"\",\"path\":\"\",\"regex\":true,\"results\":{\"file\":[],\"line\":[],\"lineValue\":[],\"matchOff\":[],\"matchOn\":[]},\"running\":false}"
diff --git a/.Rproj.user/441ADA46/rmd-outputs b/.Rproj.user/441ADA46/rmd-outputs
index cbe9550..4ef23e4 100644
--- a/.Rproj.user/441ADA46/rmd-outputs
+++ b/.Rproj.user/441ADA46/rmd-outputs
@@ -1,9 +1,8 @@
 ~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.pdf
 ~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.pdf
 ~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.pdf
+
 ~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.pdf
 
 
 
-
-
diff --git a/.Rproj.user/441ADA46/sources/per/t/12A15D18 b/.Rproj.user/441ADA46/sources/per/t/12A15D18
deleted file mode 100644
index 40be70d..0000000
--- a/.Rproj.user/441ADA46/sources/per/t/12A15D18
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "collab_server" : "",
-    "contents" : "",
-    "created" : 1546910268699.000,
-    "dirty" : false,
-    "encoding" : "UTF-8",
-    "folds" : "",
-    "hash" : "3374608670",
-    "id" : "12A15D18",
-    "lastKnownWriteTime" : 1546912355,
-    "last_content_update" : 1546912355541,
-    "path" : "~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex",
-    "project_path" : "inst/rmarkdown/templates/posterdown_pdf/resources/template.tex",
-    "properties" : {
-        "cursorPosition" : "83,65",
-        "scrollLine" : "76"
-    },
-    "relative_order" : 2,
-    "source_on_save" : false,
-    "source_window" : "",
-    "type" : "tex"
-}
\ No newline at end of file
diff --git a/.Rproj.user/441ADA46/sources/per/t/12A15D18-contents b/.Rproj.user/441ADA46/sources/per/t/12A15D18-contents
deleted file mode 100644
index 811d8dc..0000000
--- a/.Rproj.user/441ADA46/sources/per/t/12A15D18-contents
+++ /dev/null
@@ -1,176 +0,0 @@
-%brent's poster layout :)
-
-\documentclass[article,$font_size$,extrafontsizes]{memoir}
-
-%utf-8 seems to be important
-\usepackage[utf8]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage{multicol}
-\usepackage{graphicx}
-\usepackage{blindtext}
-\usepackage[svgnames,table]{xcolor}
-\usepackage[framemethod=tikz]{mdframed}
-\usepackage{color}
-\usepackage{geometry}
-\usepackage{adjmulticol}
-
-%For kable extra package :)
-\usepackage{booktabs}
-\usepackage{longtable}
-\usepackage{array}
-\usepackage{multirow}
-\usepackage{wrapfig}
-\usepackage{float}
-\usepackage{colortbl}
-\usepackage{pdflscape}
-\usepackage{pagecolor}
-\usepackage{tabu}
-\usepackage{threeparttable}
-\usepackage{threeparttablex}
-\usepackage[normalem]{ulem}
-\usepackage{makecell}
-
-\usepackage{hyperref}
-\hypersetup{
-    colorlinks=true,
-    linkcolor=$link_col$,
-    citecolor=$cite_col$,
-    filecolor=magenta,
-    urlcolor=$url_col$,
-}
-
-
-%For figure and table placement
-\usepackage{float}
-\floatplacement{figure}{H}
-\floatplacement{table}{H}
-
-%spacing between figure/ table and caption
-\setlength{\abovecaptionskip}{0.4in}
-\setlength{\belowcaptionskip}{0.2in}
-\captionnamefont{\footnotesize\sffamily\bfseries}
-\captiontitlefont{\footnotesize\sffamily}
-
-%define column options
-\setlength{\columnseprule}{1pt}
-\def\columnseprulecolor{\color{$columnline_col$}}
-\setsubsubsecheadstyle{\small\color{$header_textcol$}\textbf}% Set \section style
-\setsecheadstyle{\small\color{$header_textcol$}}
-\setsecnumformat{}
-\def\sectionmark#1{\markboth{#1}{#1}}
-
-%-----------------------------------------------------
-
-\thispagestyle{empty}
-\definecolor{light-gray}{gray}{0.9}
-
-%biblatex options
-\usepackage[sorting=none,backend=biber]{biblatex}
-\renewcommand*{\bibfont}{\tiny}
-\bibliography{$bibliography$}
-\defbibheading{bibliography}[\bibname]{%
-\section*{#1}%
-\markboth{#1}{#1}}
-\AtBeginDocument{%
-  \renewcommand{\bibname}{References}
-}
-
-%bring in the users information
-\author{$author$}
-\title{$title$}
-\counterwithout{section}{chapter}
-\makechapterstyle{mydefault}{
-\addtocounter{secnumdepth}{2}
-\setsecheadstyle{\centering\Large\color{$header_textcol$}\textbf}
-\setsubsecheadstyle{\itshape}
-\setsubsubsecheadstyle{\itshape}
-}
-
-\chapterstyle{mydefault}
-
-%define column spacing
-\setlength\columnsep{1in}
-
-\setlength\parindent{1em}
-\setlength\parskip{1em}
-\setlength\hangparas{0}
-
-%spacing after section head title
-\setaftersecskip{0.3in}
-\setbeforesecskip{1in}
-\setlength\textfloatsep{0.3in}
-\setlength\floatsep{0.3in}
-\setlength\intextsep{0.3in}
-
-\setstocksize{$poster_height$}{$poster_width$}
-\settrimmedsize{\stockheight}{\stockwidth}{*}
-\settypeblocksize{$poster_height$}{$poster_width$}{*}
-\setlrmargins{*}{*}{1}
-\setulmarginsandblock{2.5cm}{*}{*}
-\setmarginnotes{0em}{0cm}{0cm}
-\setlength{\footskip}{0cm}
-\setlength{\footnotesep}{0cm}
-\setlength{\headheight}{0pt}
-\setlength{\headsep}{0pt}
-\setlength{\trimtop}{0pt}
-\setlength{\trimedge}{0pt}
-\setlength{\uppermargin}{0pt}
-\checkandfixthelayout
-
-\definecolor{myframecolour}{HTML}{$title_bgcol$}
-
-\mdfdefinestyle{brentsmdfstyle}{%
-  backgroundcolor=myframecolour,
-  linecolor= $columnline_col$,
-  topline=false,
-  leftline=false,
-  rightline=false,
-  linewidth=2mm,
-  settings={\definecolor{linkcolor}{RGB}{255,255,255}}}
-
-%Footnote to white
-\usepackage{footmisc}
-\def\footnotelayout{\centering\color{white}}
-
-% see https://stackoverflow.com/a/47122900
-$if(highlighting-macros)$
-$highlighting-macros$
-$endif$
-
-% choose font family
-\usepackage{$font_family$}
-\renewcommand*\familydefault{\sfdefault}
-\newpagecolor{$poster_bgcol$}
-%begin the document
-\begin{document}
-
-\begin{mdframed}[style=brentsmdfstyle]
-%sets footnote to be white hopefully
-\renewcommand\footnoterule{}
-\renewcommand{\thempfootnote}{\footnotesize\color{red}{\arabic{mpfootnote}}}
-
-% group which adds title author and other infor
-% Used instead of \maketitle for better spacing options
-\begingroup
-  \centering
-  \color{$title_textcol$}
-\vspace{0.5in}
-  \Huge{$title$} \\[0.3in]
-  \color{cyan} \Large{$author$} \\[0.2in]
-  \color{white} \large{$affiliation$} \par
-  \vspace{0.2in}
-
-% end title section -------------------
-  \endgroup
-\end{mdframed}
-
-% Brgin body of poster
-\begin{adjmulticols*}{$column_numbers$}{10mm}{10mm}
-\normalsize{
-\color{black}
-$body$
-\printbibliography
-}
-\end{adjmulticols*}
-%end the poster
-\end{document}
diff --git a/.Rproj.user/441ADA46/sources/per/t/25D73910 b/.Rproj.user/441ADA46/sources/per/t/25D73910
index d690598..0b2c21b 100644
--- a/.Rproj.user/441ADA46/sources/per/t/25D73910
+++ b/.Rproj.user/441ADA46/sources/per/t/25D73910
@@ -5,15 +5,15 @@
     "dirty" : false,
     "encoding" : "UTF-8",
     "folds" : "",
-    "hash" : "4025009362",
+    "hash" : "1024572153",
     "id" : "25D73910",
-    "lastKnownWriteTime" : 1546912566,
-    "last_content_update" : 1546912566249,
+    "lastKnownWriteTime" : 1546958791,
+    "last_content_update" : 1546958791517,
     "path" : "~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd",
     "project_path" : "inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd",
     "properties" : {
-        "cursorPosition" : "32,0",
-        "scrollLine" : "26"
+        "cursorPosition" : "28,3",
+        "scrollLine" : "22"
     },
     "relative_order" : 1,
     "source_on_save" : false,
diff --git a/.Rproj.user/441ADA46/sources/per/t/25D73910-contents b/.Rproj.user/441ADA46/sources/per/t/25D73910-contents
index 4f27cd8..bd506d7 100644
--- a/.Rproj.user/441ADA46/sources/per/t/25D73910-contents
+++ b/.Rproj.user/441ADA46/sources/per/t/25D73910-contents
@@ -46,21 +46,9 @@
 
 Here is a map made to show the study site using `ggplot2`, `ggspatial`, and `sf`. Lorem ipsum dolor sit amet, [@middleton_geological_nodate] consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Phasellus vestibulum lorem sed risus ultricies tristique nulla. Mauris vitae ultricies leo integer malesuada nunc vel risus commodo. Suspendisse potenti nullam ac tortor vitae. Enim nunc faucibus a pellentesque sit amet porttitor eget.  \vspace{15mm}
 
-```{r, fig.width=4.5, out.width="80%", fig.cap='This is a map of Canada, the ggspatial package is great for GIS folks in R!', cache=TRUE}
-library(ggplot2)
-library(ggspatial)
-library(ggthemes)
-library(sf)
+```{r, fig.width=4.5, out.width="100%", fig.cap='Here is an example of a firgure using the iris dataset and ggplot2', cache=TRUE}
 
-canada <- read_sf("data/Canada.geojson")
-
-
-ggplot() +
-  ggspatial::layer_spatial(canada, fill = "grey") +
-  ggspatial::annotation_north_arrow(location = "br", which_north = "true", style = north_arrow_nautical()) +
-  coord_sf() +
-  theme_solarized() +
-  NULL
+plot(iris$Sepal.Length,iris$Sepal.Width, pch = 19)
 
 ```
 
diff --git a/.Rproj.user/441ADA46/sources/prop/60EAAA4E b/.Rproj.user/441ADA46/sources/prop/60EAAA4E
index c8a6372..c60513c 100644
--- a/.Rproj.user/441ADA46/sources/prop/60EAAA4E
+++ b/.Rproj.user/441ADA46/sources/prop/60EAAA4E
@@ -1,4 +1,4 @@
 {
-    "cursorPosition" : "32,0",
-    "scrollLine" : "26"
+    "cursorPosition" : "28,3",
+    "scrollLine" : "22"
 }
\ No newline at end of file
diff --git a/.Rproj.user/441ADA46/sources/prop/AE6C9F23 b/.Rproj.user/441ADA46/sources/prop/AE6C9F23
index 7d1ed6b..716ca65 100644
--- a/.Rproj.user/441ADA46/sources/prop/AE6C9F23
+++ b/.Rproj.user/441ADA46/sources/prop/AE6C9F23
@@ -1,4 +1,4 @@
 {
-    "cursorPosition" : "15,14",
-    "scrollLine" : "0"
+    "cursorPosition" : "14,17",
+    "scrollLine" : "4"
 }
\ No newline at end of file
diff --git a/.Rproj.user/441ADA46/sources/prop/B68389EB b/.Rproj.user/441ADA46/sources/prop/B68389EB
index 1c34024..c14f033 100644
--- a/.Rproj.user/441ADA46/sources/prop/B68389EB
+++ b/.Rproj.user/441ADA46/sources/prop/B68389EB
@@ -1,4 +1,4 @@
 {
-    "cursorPosition" : "83,65",
-    "scrollLine" : "76"
+    "cursorPosition" : "18,20",
+    "scrollLine" : "8"
 }
\ No newline at end of file
diff --git a/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/441ADA46D225C28B/chunks.json b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/441ADA46D225C28B/chunks.json
new file mode 100644
index 0000000..d40080d
--- /dev/null
+++ b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/441ADA46D225C28B/chunks.json
@@ -0,0 +1 @@
+{"chunk_definitions":[{"chunk_id":"c7w8u24vujzhr","chunk_label":"unnamed-chunk-2","document_id":"25D73910","expansion_state":0,"options":{"cache":true,"engine":"r","fig.cap":"Here is an example of a firgure using the iris dataset and ggplot2","fig.width":4.500000000000000,"label":"unnamed-chunk-4","out.width":"100%"},"row":52,"row_count":1,"visible":true}],"doc_write_time":1546954165}
\ No newline at end of file
diff --git a/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000008.csv b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000008.csv
new file mode 100644
index 0000000..d226aa8
--- /dev/null
+++ b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000008.csv
@@ -0,0 +1 @@
+"0","plot(iris$Sepal.Length,iris$Sepal.Width, pch = 19)"
diff --git a/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000009.metadata b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000009.metadata
new file mode 100644
index 0000000..6698a3c
--- /dev/null
+++ b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000009.metadata
@@ -0,0 +1 @@
+{"conditions":[],"height":2.781211372064277,"size_behavior":1,"width":4.500000000000000}
\ No newline at end of file
diff --git a/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000009.png b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000009.png
new file mode 100644
index 0000000..8b27212
--- /dev/null
+++ b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/c7w8u24vujzhr/000009.png
Binary files differ
diff --git a/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/chunks.json b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/chunks.json
index ad816db..d40080d 100644
--- a/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/chunks.json
+++ b/.Rproj.user/shared/notebooks/A381DD33-skeleton/1/s/chunks.json
@@ -1 +1 @@
-{"chunk_definitions":[],"doc_write_time":1546872959}
\ No newline at end of file
+{"chunk_definitions":[{"chunk_id":"c7w8u24vujzhr","chunk_label":"unnamed-chunk-2","document_id":"25D73910","expansion_state":0,"options":{"cache":true,"engine":"r","fig.cap":"Here is an example of a firgure using the iris dataset and ggplot2","fig.width":4.500000000000000,"label":"unnamed-chunk-4","out.width":"100%"},"row":52,"row_count":1,"visible":true}],"doc_write_time":1546954165}
\ No newline at end of file
diff --git a/DESCRIPTION b/DESCRIPTION
index 23d1dda..10e853b 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -7,13 +7,15 @@
 License: MIT + file LICENSE
 Encoding: UTF-8
 LazyData: true
-Imports: utils, rmarkdown, knitr, yaml, tinytex, xfun
+URL: https://github.com/brentthorne/posterdown
+BugReports: https://github.com/brentthorne/posterdown/issues
+Imports: utils, rmarkdown, knitr, yaml, tinytex, xfun, ggplot2, rticles, kableExtra, Cairo
+SystemRequirements: GNU make
 Depends:
     R (>= 3.3.0),
     devtools,
     dplyr,
     ggplot2,
     rmarkdown,
-    Cairo,
-    knitr
+    rticles
 RoxygenNote: 6.1.0.9000
diff --git a/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex b/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex
index 811d8dc..e035922 100644
--- a/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex
+++ b/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex
@@ -1,36 +1,44 @@
-%brent's poster layout :)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% %%	Posterdown PDF class for LaTeX files	 08-JAN-2019
+%% %%	For any information please send an e-mail to:
+%% %%		brentthonre18@gmail.com (Brent Thorne)
+%% %%
+%% %%	Initial class provided by:
+%% %%		Brent Thorne
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \documentclass[article,$font_size$,extrafontsizes]{memoir}
 
 %utf-8 seems to be important
-\usepackage[utf8]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage{multicol}
-\usepackage{graphicx}
-\usepackage{blindtext}
-\usepackage[svgnames,table]{xcolor}
-\usepackage[framemethod=tikz]{mdframed}
-\usepackage{color}
-\usepackage{geometry}
-\usepackage{adjmulticol}
+\RequirePackage[utf8]{inputenc}
+\RequirePackage[T1]{fontenc}
+\RequirePackage{multicol}
+\RequirePackage{graphicx}
+\RequirePackage{blindtext}
+\RequirePackage[svgnames,table]{xcolor}
+\RequirePackage{tikz}
+\RequirePackage[framemethod=tikz]{mdframed}
+\RequirePackage{color}
+\RequirePackage{geometry}
+\RequirePackage{adjmulticol}
 
 %For kable extra package :)
-\usepackage{booktabs}
-\usepackage{longtable}
-\usepackage{array}
-\usepackage{multirow}
-\usepackage{wrapfig}
-\usepackage{float}
-\usepackage{colortbl}
-\usepackage{pdflscape}
-\usepackage{pagecolor}
-\usepackage{tabu}
-\usepackage{threeparttable}
-\usepackage{threeparttablex}
-\usepackage[normalem]{ulem}
-\usepackage{makecell}
+\RequirePackage{booktabs}
+\RequirePackage{longtable}
+\RequirePackage{array}
+\RequirePackage{multirow}
+\RequirePackage{wrapfig}
+\RequirePackage{float}
+\RequirePackage{colortbl}
+\RequirePackage{pdflscape}
+\RequirePackage{pagecolor}
+\RequirePackage{tabu}
+\RequirePackage{threeparttable}
+\RequirePackage{threeparttablex}
+\RequirePackage[normalem]{ulem}
+\RequirePackage{makecell}
 
-\usepackage{hyperref}
+\RequirePackage{hyperref}
 \hypersetup{
     colorlinks=true,
     linkcolor=$link_col$,
@@ -41,7 +49,7 @@
 
 
 %For figure and table placement
-\usepackage{float}
+\RequirePackage{float}
 \floatplacement{figure}{H}
 \floatplacement{table}{H}
 
@@ -65,7 +73,7 @@
 \definecolor{light-gray}{gray}{0.9}
 
 %biblatex options
-\usepackage[sorting=none,backend=biber]{biblatex}
+\RequirePackage[sorting=none,backend=biber]{biblatex}
 \renewcommand*{\bibfont}{\tiny}
 \bibliography{$bibliography$}
 \defbibheading{bibliography}[\bibname]{%
@@ -129,7 +137,7 @@
   settings={\definecolor{linkcolor}{RGB}{255,255,255}}}
 
 %Footnote to white
-\usepackage{footmisc}
+\RequirePackage{footmisc}
 \def\footnotelayout{\centering\color{white}}
 
 % see https://stackoverflow.com/a/47122900
@@ -138,7 +146,7 @@
 $endif$
 
 % choose font family
-\usepackage{$font_family$}
+\RequirePackage{$font_family$}
 \renewcommand*\familydefault{\sfdefault}
 \newpagecolor{$poster_bgcol$}
 %begin the document
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd
index 4f27cd8..bd506d7 100644
--- a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd
@@ -46,21 +46,9 @@
 
 Here is a map made to show the study site using `ggplot2`, `ggspatial`, and `sf`. Lorem ipsum dolor sit amet, [@middleton_geological_nodate] consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Phasellus vestibulum lorem sed risus ultricies tristique nulla. Mauris vitae ultricies leo integer malesuada nunc vel risus commodo. Suspendisse potenti nullam ac tortor vitae. Enim nunc faucibus a pellentesque sit amet porttitor eget.  \vspace{15mm}
 
-```{r, fig.width=4.5, out.width="80%", fig.cap='This is a map of Canada, the ggspatial package is great for GIS folks in R!', cache=TRUE}
-library(ggplot2)
-library(ggspatial)
-library(ggthemes)
-library(sf)
+```{r, fig.width=4.5, out.width="100%", fig.cap='Here is an example of a firgure using the iris dataset and ggplot2', cache=TRUE}
 
-canada <- read_sf("data/Canada.geojson")
-
-
-ggplot() +
-  ggspatial::layer_spatial(canada, fill = "grey") +
-  ggspatial::annotation_north_arrow(location = "br", which_north = "true", style = north_arrow_nautical()) +
-  coord_sf() +
-  theme_solarized() +
-  NULL
+plot(iris$Sepal.Length,iris$Sepal.Width, pch = 19)
 
 ```
 
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.pdf b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.pdf
new file mode 100644
index 0000000..60c9aa9
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.pdf
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.tex b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.tex
new file mode 100644
index 0000000..2b968d6
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.tex
@@ -0,0 +1,389 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% %%	Posterdown PDF class for LaTeX files	 08-JAN-2019
+%% %%	For any information please send an e-mail to:
+%% %%		brentthonre18@gmail.com (Brent Thorne)
+%% %%
+%% %%	Initial class provided by:
+%% %%		Brent Thorne
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\documentclass[article,30pt,extrafontsizes]{memoir}
+
+%utf-8 seems to be important
+\RequirePackage[utf8]{inputenc}
+\RequirePackage[T1]{fontenc}
+\RequirePackage{multicol}
+\RequirePackage{graphicx}
+\RequirePackage{blindtext}
+\RequirePackage[svgnames,table]{xcolor}
+\RequirePackage{tikz}
+\RequirePackage[framemethod=tikz]{mdframed}
+\RequirePackage{color}
+\RequirePackage{geometry}
+\RequirePackage{adjmulticol}
+
+%For kable extra package :)
+\RequirePackage{booktabs}
+\RequirePackage{longtable}
+\RequirePackage{array}
+\RequirePackage{multirow}
+\RequirePackage{wrapfig}
+\RequirePackage{float}
+\RequirePackage{colortbl}
+\RequirePackage{pdflscape}
+\RequirePackage{pagecolor}
+\RequirePackage{tabu}
+\RequirePackage{threeparttable}
+\RequirePackage{threeparttablex}
+\RequirePackage[normalem]{ulem}
+\RequirePackage{makecell}
+
+\RequirePackage{hyperref}
+\hypersetup{
+    colorlinks=true,
+    linkcolor=cyan,
+    citecolor=green,
+    filecolor=magenta,
+    urlcolor=cyan,
+}
+
+
+%For figure and table placement
+\RequirePackage{float}
+\floatplacement{figure}{H}
+\floatplacement{table}{H}
+
+%spacing between figure/ table and caption
+\setlength{\abovecaptionskip}{0.4in}
+\setlength{\belowcaptionskip}{0.2in}
+\captionnamefont{\footnotesize\sffamily\bfseries}
+\captiontitlefont{\footnotesize\sffamily}
+
+%define column options
+\setlength{\columnseprule}{1pt}
+\def\columnseprulecolor{\color{blue}}
+\setsubsubsecheadstyle{\small\color{red}\textbf}% Set \section style
+\setsecheadstyle{\small\color{red}}
+\setsecnumformat{}
+\def\sectionmark#1{\markboth{#1}{#1}}
+
+%-----------------------------------------------------
+
+\thispagestyle{empty}
+\definecolor{light-gray}{gray}{0.9}
+
+%biblatex options
+\RequirePackage[sorting=none,backend=biber]{biblatex}
+\renewcommand*{\bibfont}{\tiny}
+\bibliography{MyLibrary}
+\defbibheading{bibliography}[\bibname]{%
+\section*{#1}%
+\markboth{#1}{#1}}
+\AtBeginDocument{%
+  \renewcommand{\bibname}{References}
+}
+
+%bring in the users information
+\author{Author One\textsuperscript{1} Author Two\textsuperscript{2}}
+\title{Using \texttt{posterdown} to generate reproducible conference posters
+via RMarkdown \textgreater{} Knitr \textgreater{} Markdown
+\textgreater{} Pandoc \textgreater{} Latex \textgreater{} PDF workflow}
+\counterwithout{section}{chapter}
+\makechapterstyle{mydefault}{
+\addtocounter{secnumdepth}{2}
+\setsecheadstyle{\centering\Large\color{red}\textbf}
+\setsubsecheadstyle{\itshape}
+\setsubsubsecheadstyle{\itshape}
+}
+
+\chapterstyle{mydefault}
+
+%define column spacing
+\setlength\columnsep{1in}
+
+\setlength\parindent{1em}
+\setlength\parskip{1em}
+\setlength\hangparas{0}
+
+%spacing after section head title
+\setaftersecskip{0.3in}
+\setbeforesecskip{1in}
+\setlength\textfloatsep{0.3in}
+\setlength\floatsep{0.3in}
+\setlength\intextsep{0.3in}
+
+\setstocksize{38in}{45in}
+\settrimmedsize{\stockheight}{\stockwidth}{*}
+\settypeblocksize{38in}{45in}{*}
+\setlrmargins{*}{*}{1}
+\setulmarginsandblock{2.5cm}{*}{*}
+\setmarginnotes{0em}{0cm}{0cm}
+\setlength{\footskip}{0cm}
+\setlength{\footnotesep}{0cm}
+\setlength{\headheight}{0pt}
+\setlength{\headsep}{0pt}
+\setlength{\trimtop}{0pt}
+\setlength{\trimedge}{0pt}
+\setlength{\uppermargin}{0pt}
+\checkandfixthelayout
+
+\definecolor{myframecolour}{HTML}{000000}
+
+\mdfdefinestyle{brentsmdfstyle}{%
+  backgroundcolor=myframecolour,
+  linecolor= blue,
+  topline=false,
+  leftline=false,
+  rightline=false,
+  linewidth=2mm,
+  settings={\definecolor{linkcolor}{RGB}{255,255,255}}}
+
+%Footnote to white
+\RequirePackage{footmisc}
+\def\footnotelayout{\centering\color{white}}
+
+% see https://stackoverflow.com/a/47122900
+\usepackage{color}
+\usepackage{fancyvrb}
+\newcommand{\VerbBar}{|}
+\newcommand{\VERB}{\Verb[commandchars=\\\{\}]}
+\DefineVerbatimEnvironment{Highlighting}{Verbatim}{commandchars=\\\{\}}
+% Add ',fontsize=\small' for more characters per line
+\usepackage{framed}
+\definecolor{shadecolor}{RGB}{248,248,248}
+\newenvironment{Shaded}{\begin{snugshade}}{\end{snugshade}}
+\newcommand{\KeywordTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{\textbf{#1}}}
+\newcommand{\DataTypeTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{#1}}
+\newcommand{\DecValTok}[1]{\textcolor[rgb]{0.00,0.00,0.81}{#1}}
+\newcommand{\BaseNTok}[1]{\textcolor[rgb]{0.00,0.00,0.81}{#1}}
+\newcommand{\FloatTok}[1]{\textcolor[rgb]{0.00,0.00,0.81}{#1}}
+\newcommand{\ConstantTok}[1]{\textcolor[rgb]{0.00,0.00,0.00}{#1}}
+\newcommand{\CharTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}}
+\newcommand{\SpecialCharTok}[1]{\textcolor[rgb]{0.00,0.00,0.00}{#1}}
+\newcommand{\StringTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}}
+\newcommand{\VerbatimStringTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}}
+\newcommand{\SpecialStringTok}[1]{\textcolor[rgb]{0.31,0.60,0.02}{#1}}
+\newcommand{\ImportTok}[1]{#1}
+\newcommand{\CommentTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textit{#1}}}
+\newcommand{\DocumentationTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}}
+\newcommand{\AnnotationTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}}
+\newcommand{\CommentVarTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}}
+\newcommand{\OtherTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{#1}}
+\newcommand{\FunctionTok}[1]{\textcolor[rgb]{0.00,0.00,0.00}{#1}}
+\newcommand{\VariableTok}[1]{\textcolor[rgb]{0.00,0.00,0.00}{#1}}
+\newcommand{\ControlFlowTok}[1]{\textcolor[rgb]{0.13,0.29,0.53}{\textbf{#1}}}
+\newcommand{\OperatorTok}[1]{\textcolor[rgb]{0.81,0.36,0.00}{\textbf{#1}}}
+\newcommand{\BuiltInTok}[1]{#1}
+\newcommand{\ExtensionTok}[1]{#1}
+\newcommand{\PreprocessorTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textit{#1}}}
+\newcommand{\AttributeTok}[1]{\textcolor[rgb]{0.77,0.63,0.00}{#1}}
+\newcommand{\RegionMarkerTok}[1]{#1}
+\newcommand{\InformationTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}}
+\newcommand{\WarningTok}[1]{\textcolor[rgb]{0.56,0.35,0.01}{\textbf{\textit{#1}}}}
+\newcommand{\AlertTok}[1]{\textcolor[rgb]{0.94,0.16,0.16}{#1}}
+\newcommand{\ErrorTok}[1]{\textcolor[rgb]{0.64,0.00,0.00}{\textbf{#1}}}
+\newcommand{\NormalTok}[1]{#1}
+
+% choose font family
+\RequirePackage{courier}
+\renewcommand*\familydefault{\sfdefault}
+\newpagecolor{white}
+%begin the document
+\begin{document}
+
+\begin{mdframed}[style=brentsmdfstyle]
+%sets footnote to be white hopefully
+\renewcommand\footnoterule{}
+\renewcommand{\thempfootnote}{\footnotesize\color{red}{\arabic{mpfootnote}}}
+
+% group which adds title author and other infor
+% Used instead of \maketitle for better spacing options
+\begingroup
+  \centering
+  \color{red}
+\vspace{0.5in}
+  \Huge{Using \texttt{posterdown} to generate reproducible conference posters
+via RMarkdown \textgreater{} Knitr \textgreater{} Markdown
+\textgreater{} Pandoc \textgreater{} Latex \textgreater{} PDF workflow} \\[0.3in]
+  \color{cyan} \Large{Author One\textsuperscript{1} Author Two\textsuperscript{2}} \\[0.2in]
+  \color{white} \large{\textsuperscript{1}Department of Poster Layouts, University of Markdown;
+\textsuperscript{2}Deparment of Another Institution, Institution
+University} \par
+  \vspace{0.2in}
+
+% end title section -------------------
+  \endgroup
+\end{mdframed}
+
+% Brgin body of poster
+\begin{adjmulticols*}{3}{10mm}{10mm}
+\normalsize{
+\color{black}
+\section{Introduction}\label{introduction}
+
+Welcome to \texttt{posterdown} ! This is my attempt to provide a
+semi-smooth workflow for those who wish to take their \texttt{RMarkdown}
+skills to the conference world. Many creature comforts from
+\texttt{RMarkdown} are available in this package such as
+\texttt{Markdown} section notation, figure captioning, and even
+citations like this one \autocite{holden_identifying_2012} The rest of
+this example poster will show how you can insert typical conference
+poster features into your own document.
+
+\section{Study Site}\label{study-site}
+
+Here is a map made to show the study site using \texttt{ggplot2},
+\texttt{ggspatial}, and \texttt{sf}. Lorem ipsum dolor sit amet,
+\autocite{middleton_geological_nodate} consectetur adipiscing elit, sed
+do eiusmod tempor incididunt ut labore et dolore magna aliqua. Phasellus
+vestibulum lorem sed risus ultricies tristique nulla. Mauris vitae
+ultricies leo integer malesuada nunc vel risus commodo. Suspendisse
+potenti nullam ac tortor vitae. Enim nunc faucibus a pellentesque sit
+amet porttitor eget. \vspace{15mm}
+
+\begin{figure}
+
+{\centering \includegraphics[width=1\linewidth]{skeleton_files/figure-latex/unnamed-chunk-2-1} 
+
+}
+
+\caption{Here is an example of a firgure using the iris dataset and ggplot2}\label{fig:unnamed-chunk-2}
+\end{figure}
+
+\section{Objectives}\label{objectives}
+
+\large
+
+\begin{enumerate}
+\def\labelenumi{\arabic{enumi}.}
+\tightlist
+\item
+  Easy to use reproducible poster design.
+\item
+  Integration with \texttt{RMarkdown}.
+\item
+  Easy transition from \texttt{posterdown} to \texttt{thesisdown} or
+  \texttt{rticles}
+\end{enumerate}
+
+\small
+
+\section{Methods}\label{methods}
+
+This package uses the same workflow approach as the \texttt{RMarkdown}
+you know and love. Basically it goes from RMarkdown \textgreater{} Knitr
+\textgreater{} Markdown \textgreater{} Pandoc \textgreater{} Latex
+\textgreater{} PDF
+
+\section{Results}\label{results}
+
+Usually you want to have a nice table displaying some important results
+that you have calcualated. In posterdown this is as easy as using the
+\texttt{kable} table formatting you are probably use to as per typical
+\texttt{RMarkdown} formatting. I suggesting checking out the
+\texttt{kableExtra} package and its in depth documentation on
+customizing these tables found
+\href{https://haozhu233.github.io/kableExtra/awesome_table_in_pdf.pdf}{here}.
+
+\rowcolors{2}{gray!6}{white}
+
+\begin{table}
+
+\caption{\label{tab:unnamed-chunk-3}Tables are a breeze with Kable and Kable extra package!}
+\centering
+\fontsize{25}{27}\selectfont
+\begin{tabu} to \linewidth {>{\centering}X>{\centering}X>{\centering}X>{\centering}X>{\centering}X}
+\hiderowcolors
+\toprule
+Sepal.Length & Sepal.Width & Petal.Length & Petal.Width & Species\\
+\midrule
+\showrowcolors
+5.1 & 3.5 & 1.4 & 0.2 & setosa\\
+4.9 & 3.0 & 1.4 & 0.2 & setosa\\
+4.7 & 3.2 & 1.3 & 0.2 & setosa\\
+4.6 & 3.1 & 1.5 & 0.2 & setosa\\
+\bottomrule
+\end{tabu}
+\end{table}
+
+\rowcolors{2}{white}{white}
+
+\vspace{1in}
+
+\begin{figure}
+
+{\centering \includegraphics[width=0.75\linewidth]{skeleton_files/figure-latex/unnamed-chunk-4-1} 
+
+}
+
+\caption{A typical plot using ggplot using the classic iris dataset.}\label{fig:unnamed-chunk-4}
+\end{figure}
+
+\vspace{1in}
+
+\begin{figure}
+
+{\centering \includegraphics[width=0.85\linewidth]{skeleton_files/figure-latex/unnamed-chunk-5-1} 
+
+}
+
+\caption{Another typical plot using ggplot, this time with a different theme and r code chunk options for fig.width and fig.height.}\label{fig:unnamed-chunk-5}
+\end{figure}
+
+\vspace{1in}
+
+\begin{Shaded}
+\begin{Highlighting}[]
+\CommentTok{# Here is some code for people}
+\CommentTok{# to look at and be in awe of!!!!}
+\KeywordTok{library}\NormalTok{(ggplot2)}
+\KeywordTok{library}\NormalTok{(ggthemes)}
+
+\KeywordTok{ggplot}\NormalTok{(}\DataTypeTok{data=}\NormalTok{iris,}
+       \KeywordTok{aes}\NormalTok{(}\DataTypeTok{x =}\NormalTok{ Sepal.Width,}
+           \DataTypeTok{y =}\NormalTok{ Sepal.Length,}
+           \DataTypeTok{colour =}\NormalTok{ Species)) }\OperatorTok{+}
+\StringTok{  }\KeywordTok{geom_point}\NormalTok{() }\OperatorTok{+}
+\StringTok{  }\KeywordTok{theme_stata}\NormalTok{() }\OperatorTok{+}
+\StringTok{  }\OtherTok{NULL}
+\end{Highlighting}
+\end{Shaded}
+
+\begin{figure}
+
+{\centering \includegraphics[width=0.8\linewidth]{skeleton_files/figure-latex/unnamed-chunk-6-1} 
+
+}
+
+\caption{Another figure showing how base R plots might look on this poster!}\label{fig:unnamed-chunk-6}
+\end{figure}
+
+\section{Next Steps}\label{next-steps}
+
+There is still \textbf{A LOT} of work to do on this package which
+include (but are note limited to):
+
+\begin{itemize}
+\tightlist
+\item
+  Better softcoding for front end user options in YAML
+\item
+  Images in the title section for logo placement which is a common
+  attribut to posters as far as I have come to know.
+\item
+  Figure out compatiability with \texttt{natbib} which wasn't working
+  during the initial set up.
+\item
+  MUCH BETTER PACKAGE DOCUMENTATION. For example, there is nothing in
+  the README\ldots{}
+\item
+  Include References section only if initiated by the user like in
+  RMarkdown.
+\end{itemize}
+
+\small
+\printbibliography
+}
+\end{adjmulticols*}
+%end the poster
+\end{document}
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/__packages b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/__packages
new file mode 100644
index 0000000..d44ddce
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/__packages
@@ -0,0 +1,7 @@
+base
+methods
+datasets
+utils
+grDevices
+graphics
+stats
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.RData b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.RData
new file mode 100644
index 0000000..ed82349
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.RData
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.rdb b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.rdb
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.rdb
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.rdx b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.rdx
new file mode 100644
index 0000000..c9ab0df
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_cache/latex/unnamed-chunk-2_4842138fc201a3e8a60faa572fee2db3.rdx
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-2-1.pdf b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-2-1.pdf
new file mode 100644
index 0000000..667216f
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-2-1.pdf
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-4-1.pdf b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-4-1.pdf
new file mode 100644
index 0000000..39de761
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-4-1.pdf
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-5-1.pdf b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-5-1.pdf
new file mode 100644
index 0000000..743ad13
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-5-1.pdf
Binary files differ
diff --git a/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-6-1.pdf b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-6-1.pdf
new file mode 100644
index 0000000..ec78dca
--- /dev/null
+++ b/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton_files/figure-latex/unnamed-chunk-6-1.pdf
Binary files differ
